git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
axwin2 - Working on GUI, implemented image loading
[tpg/acess2.git]
/
Usermode
/
Applications
/
axwin2_src
/
WM
/
video.c
diff --git
a/Usermode/Applications/axwin2_src/WM/video.c
b/Usermode/Applications/axwin2_src/WM/video.c
index
7b56df7
..
5c60425
100644
(file)
--- a/
Usermode/Applications/axwin2_src/WM/video.c
+++ b/
Usermode/Applications/axwin2_src/WM/video.c
@@
-11,6
+11,7
@@
void Video_Setup(void);
void Video_Update(void);
void Video_FillRect(short X, short Y, short W, short H, uint32_t Color);
void Video_Setup(void);
void Video_Update(void);
void Video_FillRect(short X, short Y, short W, short H, uint32_t Color);
+void Video_DrawRect(short X, short Y, short W, short H, uint32_t Color);
// === GLOBALS ===
// === GLOBALS ===
@@
-95,14
+96,6
@@
void Video_DrawRect(short X, short Y, short W, short H, uint32_t Color)
Video_FillRect(X+W-1, Y, 1, H, Color);
}
Video_FillRect(X+W-1, Y, 1, H, Color);
}
-/**
- * \brief Draw text to the screen
- */
-void Video_DrawText(short X, short Y, short W, short H, void *Font, int Point, uint32_t Color, char *Text)
-{
- // TODO!
-}
-
/**
* \brief Draw an image to the screen
* \todo Maybe have support for an offset in the image
/**
* \brief Draw an image to the screen
* \todo Maybe have support for an offset in the image
@@
-111,7
+104,11
@@
void Video_DrawImage(short X, short Y, short W, short H, tImage *Image)
{
int x, y;
uint8_t *buf = (uint8_t *)(gpScreenBuffer + Y*giScreenWidth + X);
{
int x, y;
uint8_t *buf = (uint8_t *)(gpScreenBuffer + Y*giScreenWidth + X);
- uint8_t *data = Image->Data;
+ uint8_t *data;
+
+ // Sanity please
+ if( !Image )
+ return ;
// Bounds Check
if( X >= giScreenWidth ) return ;
// Bounds Check
if( X >= giScreenWidth ) return ;
@@
-125,6
+122,8
@@
void Video_DrawImage(short X, short Y, short W, short H, tImage *Image)
if( X + W > giScreenWidth ) W = giScreenWidth - X;
if( Y + H > giScreenHeight ) H = giScreenHeight - Y;
if( X + W > giScreenWidth ) W = giScreenWidth - X;
if( Y + H > giScreenHeight ) H = giScreenHeight - Y;
+ // Do the render
+ data = Image->Data;
switch( Image->Format )
{
case IMGFMT_BGRA:
switch( Image->Format )
{
case IMGFMT_BGRA:
UCC
git Repository :: git.ucc.asn.au