AxWin - Re-structured to share headers between clients and server
[tpg/acess2.git] / Usermode / Applications / axwin2_src / WM / interface.c
index d4ad424..65632bb 100644 (file)
@@ -6,6 +6,7 @@
  * > Main Overarching UI
  */
 #include "common.h"
+#include "resources/LogoSmall.sif.res.h"
 
 // === GLOBALS ==
  int   giInterface_Width = 0;
@@ -17,6 +18,7 @@ tElement      *gpInterface_MainArea;
 tElement       *gpInterface_HeaderBar;
 tElement       *gpInterface_TabBar;
 tElement       *gpInterface_TabContent;
+const char     csLogoSmall[] = "base64:///"RESOURCE_LogoSmall_sif;
 
 // === CODE ===
 /**
@@ -31,57 +33,57 @@ void Interface_Init(void)
        giInterface_Width = giScreenWidth/16;
        
        // Set root window to no-border
-       WM_SetFlags(NULL, 0);
+       AxWin_SetFlags(NULL, 0);
        
-       // -- Create Sidebar --
-       gpInterface_Sidebar = WM_CreateElement(NULL, ELETYPE_TOOLBAR, ELEFLAG_VERTICAL, "Sidebar");
-       WM_SetSize( gpInterface_Sidebar, giInterface_Width );
+       // -- Create Sidebar (Menu and Window List) --
+       gpInterface_Sidebar = AxWin_CreateElement(NULL, ELETYPE_TOOLBAR, ELEFLAG_VERTICAL, "Sidebar");
+       AxWin_SetSize( gpInterface_Sidebar, giInterface_Width );
        
        // > System Menu Button
-       btn = WM_CreateElement(gpInterface_Sidebar, ELETYPE_BUTTON, ELEFLAG_NOSTRETCH, "SystemMenu");
-       WM_SetSize(btn, giInterface_Width-4);
-       // TODO: Once image loading is implemented, switch to a logo
-       #if 0
-       text = WM_CreateElement(btn, ELETYPE_IMAGE, ELEFLAG_SCALE);
-       WM_SetText(text, "asset://LogoSmall.sif");
-       #else
-       text = WM_CreateElement(btn, ELETYPE_TEXT, 0, NULL);
-       WM_SetText(text, "Acess");
-       #endif
+       btn = AxWin_CreateElement(gpInterface_Sidebar, ELETYPE_BUTTON, ELEFLAG_NOSTRETCH, "SystemMenu");
+       AxWin_SetSize(btn, giInterface_Width-4);
+       //text = AxWin_CreateElement(btn, ELETYPE_IMAGE, ELEFLAG_SCALE, "MenuLogo");
+       text = AxWin_CreateElement(btn, ELETYPE_IMAGE, 0, "MenuLogo");
+       //AxWin_SetText(text, "file:///LogoSmall.sif");
+       AxWin_SetText(text, csLogoSmall);
+       
        // > Plain <hr/> style spacer
-       ele = WM_CreateElement(gpInterface_Sidebar, ELETYPE_SPACER, ELEFLAG_NOSTRETCH, "SideBar Spacer Top");
-       WM_SetSize(ele, 4);
-       // > Application List
-       gpInterface_ProgramList = WM_CreateElement(gpInterface_Sidebar, ELETYPE_BOX, ELEFLAG_VERTICAL, "ProgramList");
+       ele = AxWin_CreateElement(gpInterface_Sidebar, ELETYPE_SPACER, ELEFLAG_NOSTRETCH, "SideBar Spacer Top");
+       AxWin_SetSize(ele, 4);
+       
+       // > Application List (Window list on most OSs)
+       gpInterface_ProgramList = AxWin_CreateElement(gpInterface_Sidebar, ELETYPE_BOX, ELEFLAG_VERTICAL, "ProgramList");
+       
        // > Plain <hr/> style spacer
-       ele = WM_CreateElement(gpInterface_Sidebar, ELETYPE_SPACER, ELEFLAG_NOSTRETCH, "SideBar Spacer Bottom");
-       WM_SetSize(ele, 4);
+       ele = AxWin_CreateElement(gpInterface_Sidebar, ELETYPE_SPACER, ELEFLAG_NOSTRETCH, "SideBar Spacer Bottom");
+       AxWin_SetSize(ele, 4);
+       
        // > Version/Time
-       text = WM_CreateElement(gpInterface_Sidebar, ELETYPE_TEXT, ELEFLAG_NOSTRETCH, "Version String");
-       WM_SetSize(text, 20);
-       WM_SetText(text, "2.0");
+       text = AxWin_CreateElement(gpInterface_Sidebar, ELETYPE_TEXT, ELEFLAG_NOSTRETCH, "Version String");
+       AxWin_SetSize(text, 20);
+       AxWin_SetText(text, "2.0");
        
        // --
        // -- Create Main Area and regions within --
        // --
        // > Righthand Area
-       gpInterface_MainArea = WM_CreateElement(NULL, ELETYPE_BOX, ELEFLAG_VERTICAL, "MainArea");
+       gpInterface_MainArea = AxWin_CreateElement(NULL, ELETYPE_BOX, ELEFLAG_VERTICAL, "MainArea");
        //  > Header Bar (Title)
-       gpInterface_HeaderBar = WM_CreateElement(gpInterface_MainArea, ELETYPE_BOX, 0, "HeaderBar");
-       WM_SetSize(gpInterface_HeaderBar, giInterface_HeaderBarSize);
-       text = WM_CreateElement(gpInterface_HeaderBar, ELETYPE_TEXT, 0, NULL);
-       WM_SetText(text, "Acess2 GUI - By thePowersGang (John Hodge)");
+       gpInterface_HeaderBar = AxWin_CreateElement(gpInterface_MainArea, ELETYPE_BOX, 0, "HeaderBar");
+       AxWin_SetSize(gpInterface_HeaderBar, giInterface_HeaderBarSize);
+       text = AxWin_CreateElement(gpInterface_HeaderBar, ELETYPE_TEXT, 0, NULL);
+       AxWin_SetText(text, "Acess2 GUI - By thePowersGang (John Hodge)");
        //  > Tab Bar (Current windows)
-       gpInterface_TabBar = WM_CreateElement(gpInterface_MainArea, ELETYPE_TABBAR, 0, "TabBar");
-       WM_SetSize(gpInterface_TabBar, giInterface_TabBarSize);
+       gpInterface_TabBar = AxWin_CreateElement(gpInterface_MainArea, ELETYPE_TABBAR, 0, "TabBar");
+       AxWin_SetSize(gpInterface_TabBar, giInterface_TabBarSize);
        //  > Application Space
-       gpInterface_TabContent = WM_CreateElement(gpInterface_MainArea, ELETYPE_BOX, 0, "TabContent");
+       gpInterface_TabContent = AxWin_CreateElement(gpInterface_MainArea, ELETYPE_BOX, 0, "TabContent");
 }
 
 void Interface_Update(void)
 {
        giInterface_Width = giScreenWidth/16;
-       WM_SetSize( gpInterface_Sidebar, giInterface_Width );
+       AxWin_SetSize( gpInterface_Sidebar, giInterface_Width );
 }
 
 void Interface_Render(void)

UCC git Repository :: git.ucc.asn.au