4e4833be04a8a1f4e02330244e2faac832ffab63
[tpg/acess2.git] / Usermode / Applications / axwin3_src / Interface / main.c
1 /*
2  * Acess2 GUI v3 User Interface
3  * - By John Hodge (thePowersGang)
4  *
5  * main.c
6  * - Interface core
7  */
8 #include <stdlib.h>
9 #include <axwin3/axwin.h>
10 #include <axwin3/widget.h>
11
12 #define SIDEBAR_WIDTH   36
13
14 // === PROTOTYPES ===
15 void    create_sidebar(void);
16
17 // === GLOBALS ===
18 tHWND   gSidebar;
19 tAxWin3_Widget  *gSidebarRoot;
20
21 // === CODE ===
22 int sidebar_callback(tHWND Window, int Length, void *Data)
23 {
24         return 0;
25 }
26
27 int main(int argc, char *argv[])
28 {
29         // Connect to AxWin3 Server
30         AxWin3_Connect(NULL);
31         
32         create_sidebar();
33         
34         // Idle loop
35         AxWin3_MainLoop();
36         
37         return 0;
38 }
39
40 void create_sidebar(void)
41 {
42         tAxWin3_Widget  *btn, *txt, *ele;
43
44         // Create sidebar
45         // TODO: Get screen dimensions somehow
46         gSidebar = AxWin3_Widget_CreateWindow(NULL, SIDEBAR_WIDTH, 480, ELEFLAG_VERTICAL);
47         AxWin3_MoveWindow(gSidebar, 0, 0);
48         gSidebarRoot = AxWin3_Widget_GetRoot(gSidebar); 
49
50         // - Main menu
51         btn = AxWin3_Widget_AddWidget(gSidebarRoot, ELETYPE_BUTTON, ELEFLAG_NOSTRETCH, "SystemButton");
52         AxWin3_Widget_SetSize(btn, SIDEBAR_WIDTH);
53         txt = AxWin3_Widget_AddWidget(btn, ELETYPE_IMAGE, 0, "SystemLogo");
54         AxWin3_Widget_SetText(txt, "file:///Acess/Apps/AxWin/3.0/AcessLogoSmall.sif");
55         
56         // - Plain <hr/> style spacer
57         ele = AxWin3_Widget_AddWidget(gSidebarRoot, ELETYPE_SPACER, ELEFLAG_NOSTRETCH, "SideBar Spacer Top");
58         AxWin3_Widget_SetSize(ele, 4);
59
60         // TODO: Program list
61         ele = AxWin3_Widget_AddWidget(gSidebarRoot, ELETYPE_BOX, ELEFLAG_VERTICAL, "ProgramList");
62
63         // - Plain <hr/> style spacer
64         ele = AxWin3_Widget_AddWidget(gSidebarRoot, ELETYPE_SPACER, ELEFLAG_NOSTRETCH, "SideBar Spacer Top");
65         AxWin3_Widget_SetSize(ele, 4);
66
67         // > Version/Time
68         ele = AxWin3_Widget_AddWidget(gSidebarRoot, ELETYPE_BOX, ELEFLAG_VERTICAL|ELEFLAG_NOSTRETCH, "Version/Time");
69         txt = AxWin3_Widget_AddWidget(ele, ELETYPE_TEXT, ELEFLAG_NOSTRETCH, "Version String");
70         AxWin3_Widget_SetSize(txt, 20);
71         AxWin3_Widget_SetText(txt, "2.0");
72
73         // Show!
74         AxWin3_ShowWindow(gSidebar, 1); 
75         
76 }
77

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