X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin4_src%2FUI%2Fmain.c;h=c831558dc40961a32753e8f6288a55f9735fe34a;hb=85362e8a4c919b58cd261345d29f26bae4ad75e2;hp=b00ce261222eab7c2e964d08de563ae7eba64479;hpb=cb37616a62753de8a1b8d28e3c4ec3ad9891de1b;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin4_src/UI/main.c b/Usermode/Applications/axwin4_src/UI/main.c index b00ce261..c831558d 100644 --- a/Usermode/Applications/axwin4_src/UI/main.c +++ b/Usermode/Applications/axwin4_src/UI/main.c @@ -7,20 +7,25 @@ */ #include #include +#include "include/common.h" +#include "include/taskbar.h" +// === PROTOTYPES === tAxWin4_Window *CreateBGWin(int w, int h); -tAxWin4_Window *CreateTaskbar(int w, int h); + +// === GLOABLS === +unsigned int giScreenWidth = 640; +unsigned int giScreenHeight = 480; // === CODE === int main(int argc, const char *argv[]) { assert( AxWin4_Connect("ipcpipe:///Devices/ipcpipe/axwin4") ); - unsigned int w, h; - AxWin4_GetScreenDimensions(0, &w, &h); + AxWin4_GetScreenDimensions(0, &giScreenWidth, &giScreenHeight); - tAxWin4_Window *bgwin = CreateBGWin(w, h); - tAxWin4_Window *menu = CreateTaskbar(w, h); + tAxWin4_Window *bgwin = CreateBGWin(giScreenWidth, giScreenHeight); + Taskbar_Create(); _SysDebug("Beginning queue"); while( AxWin4_WaitEventQueue(0) ) @@ -39,43 +44,26 @@ tAxWin4_Window *CreateBGWin(int w, int h) // Load background image uint32_t *buf = AxWin4_GetWindowBuffer(bgwin); - for( size_t y = 0; y < h; y ++ ) + if( buf ) { - for(size_t x = 0; x < w; x ++ ) + for( size_t y = 0; y < h; y ++ ) { - uint8_t r = y * 256 / h; - uint8_t g = 0; - uint8_t b = x * 256 / w; - buf[y*w+x] = (r << 16) | (g << 8) | b; + for(size_t x = 0; x < w; x ++ ) + { + uint8_t r = y * 256 / h; + uint8_t g = 0; + uint8_t b = x * 256 / w; + buf[y*w+x] = (r << 16) | (g << 8) | b; + } } } + else + { + //AxWin4_FillRect(bgwin, 0, 0, w, h, 0x0000CC); + } //AxWin4_DamageRect(bgwin, 0, 0, w, h); AxWin4_ShowWindow(bgwin, true); return bgwin; } -tAxWin4_Window *CreateTaskbar(int w, int h) -{ - int winheight = 30; - tAxWin4_Window *win = AxWin4_CreateWindow("taskbar"); - AxWin4_MoveWindow(win, 0, 0); - AxWin4_ResizeWindow(win, w, winheight); - - AxWin4_SetWindowFlags(win, AXWIN4_WNDFLAG_NODECORATE); - Taskbar_Redraw(win); - AxWin4_ShowWindow(win, true); - - return win; -} - -void Taskbar_Redraw(tAxWin4_Window *win) -{ - int w = 640; - int h = 30; - AxWin4_DrawControl(win, 0, 0, w, h, 0x01); // Standard button, suitable for a toolbar - AxWin4_DrawControl(win, 5, 5, h-10, h-10, 0x00); // Standard button - - AxWin4_DamageRect(bgwin, 0, 0, w, h); -} -