1 #define LAYOUTFILE <SysInfo_demo_gui/SysInfo_demo_gui.lay>
2 #include <CtrlCore/lay.h>
3 
4 #define IMAGEFILE <SysInfo_demo_gui/SysInfo_demo_gui.iml>
5 #include <Draw/iml_header.h>
6 
7 struct SpecialFolders : WithSpecialFolders<StaticRect> {
8 
9 	typedef SpecialFolders CLASSNAME;
10 
SpecialFoldersSpecialFolders11 	SpecialFolders() {
12 		CtrlLayout(*this);
13 	}
14 	void Fill();
15 	void ButInstalledSoftware_Push();
16 };
17 struct SystemInfo : WithSystemInfo<StaticRect> {
18 
19 	typedef SystemInfo CLASSNAME;
20 
SystemInfoSystemInfo21 	SystemInfo() {
22 		CtrlLayout(*this);
23 	}
24 	void Fill();
25 	void ButUpdate_Push();
26 };
27 struct WindowsList_ : WithWindowsList<StaticRect> {
28 
29 	typedef WindowsList_ CLASSNAME;
30 
WindowsList_WindowsList_31 	WindowsList_() {
32 		CtrlLayout(*this);
33 	}
34 	void Fill();
35 	void ButUpdate_Push();
36 #if defined(PLATFORM_WIN32)
37 	void ButTopmost_Push();
38 #endif
39 	void MenuCallback(Bar &bar);
40 	void CbCopy();
41 };
42 struct ProcessList : WithProcessList<StaticRect> {
43 
44 	typedef ProcessList CLASSNAME;
45 
ProcessListProcessList46 	ProcessList() {
47 		CtrlLayout(*this);
48 	}
49 	void Fill();
50 	void ButUpdate_Push();
51 };
52 struct ScreenGrabTab : WithScreenGrabTab<StaticRect> {
53 
54 	typedef ScreenGrabTab CLASSNAME;
55 
ScreenGrabTabScreenGrabTab56 	ScreenGrabTab() {
57 		CtrlLayout(*this);
58 	}
59 	void Fill();
60 	void ButGrab_Push();
61 	void ButSnap_Push();
62 	void SwGrabMode_Action();
63 };
64 struct MouseKeyboard : WithMouseKeyboard<StaticRect> {
65 
66 	typedef MouseKeyboard CLASSNAME;
67 
MouseKeyboardMouseKeyboard68 	MouseKeyboard() {
69 		CtrlLayout(*this);
70 	}
71 	void Fill();
72 	void OnButLock();
73 #ifndef flagNO_XTEST
74 	void OnButKey();
75 	void OnButMouse();
76 #endif
77 	void OnTimer();
78 	void OnRemoveAccents();
79 };
80 
81 class SysInfoDemo : public TopWindow {
82 public:
83 	typedef SysInfoDemo CLASSNAME;
84 
85 	SysInfoDemo();
86 
87 	MenuBar 		menu;
88 	StatusBar  		info;
89 
90 	TabCtrl			filesTab;
91 	SpecialFolders 	specialFolders;
92 	SystemInfo		systemInfo;
93 	ProcessList		processList;
94 	WindowsList_	windowsList;
95 	ScreenGrabTab	screenGrab;
96 	MouseKeyboard	mouseKeyboard;
97 
98 	// Menus
99 	void MainMenu(Bar& bar);
100 	void FileMenu(Bar& bar);
101 	void About();
102 	void TimerFun();
103 
104 	void Exit();
105 
106 private:
107 	TimeCallback timeCallback;
108 };
109 
110 
111