|
|
1.1 root 1: //��������������������������������������������������������������������������Ŀ
2: //� Includes �
3: //����������������������������������������������������������������������������
4:
5:
6: #include "perfmon.h"
7: #include "commctrl.h"
8: #include "toolbar.h"
9: #include "status.h" // for StatusLine & StatusLineReady
10:
11: #ifdef ADVANCED_PERFMON
12: TBBUTTON tbButtons[] = {
13: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
14: { 0, IDM_VIEWCHART, TBSTATE_ENABLED, TBSTYLE_CHECKGROUP, 0 },
15: { 1, IDM_VIEWALERT, TBSTATE_ENABLED, TBSTYLE_CHECKGROUP, 0 },
16: { 2, IDM_VIEWLOG, TBSTATE_ENABLED, TBSTYLE_CHECKGROUP, 0 },
17: { 3, IDM_VIEWREPORT, TBSTATE_ENABLED, TBSTYLE_CHECKGROUP, 0 },
18: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
19: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
20: { 4, IDM_TOOLBARADD, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
21: { 5, IDM_TOOLBARMODIFY, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
22: { 6, IDM_TOOLBARDELETE, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
23: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
24: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
25: { 7, IDM_TOOLBARREFRESH, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
26: { 8, IDM_OPTIONSBOOKMARK, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
27: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
28: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
29: { 9, IDM_TOOLBAROPTIONS, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
30: } ;
31: #else
32: TBBUTTON tbButtons[] = {
33: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
34: { 4, IDM_TOOLBARADD, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
35: { 5, IDM_TOOLBARMODIFY, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
36: { 6, IDM_TOOLBARDELETE, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
37: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
38: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
39: { 7, IDM_TOOLBARREFRESH, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
40: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
41: { 0, 0, TBSTATE_ENABLED, TBSTYLE_SEP, 0 },
42: { 9, IDM_TOOLBAROPTIONS, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0 },
43: } ;
44: #endif
45:
46: #define TB_ENTRIES sizeof(tbButtons)/sizeof(tbButtons[0])
47:
48: BOOL CreateToolbarWnd (HWND hWnd)
49: {
50:
51: hWndToolbar = CreateToolbar (hWnd,
52: WS_CHILD | WS_BORDER | WS_VISIBLE,
53: IDM_TOOLBARID,
54: 10, // number of tools inside the bitmap
55: hInstance,
56: idBitmapToolbar, // bitmap resource ID (can't use MAKEINTRESOURCE)
57: tbButtons,
58: TB_ENTRIES) ;
59:
60: return (hWndToolbar ? TRUE : FALSE) ;
61:
62: } // ToolbarInitializeApplication
63:
64: void ToolbarEnableButton (HWND hWndTB, int iButtonNum, BOOL bEnable)
65: {
66: SendMessage (hWndTB, TB_ENABLEBUTTON, iButtonNum, (LONG)bEnable) ;
67: } // ToolbarEnableButton
68:
69: void ToolbarDepressButton (HWND hWndTB, int iButtonNum, BOOL bDepress)
70: {
71: if (iButtonNum >= IDM_TOOLBARADD && iButtonNum <= IDM_TOOLBARBOOKMARK)
72: {
73: // these buttons are push button and will not stay down after
74: // each hit
75: SendMessage (hWndTB, TB_PRESSBUTTON, iButtonNum, (LONG)bDepress) ;
76: }
77: else
78: {
79: // for the four view buttons, have to use CHECKBUTTON so they
80: // will stay down after selected.
81: SendMessage (hWndTB, TB_CHECKBUTTON, iButtonNum, (LONG)bDepress) ;
82: }
83: } // ToolbarDepressButton
84:
85: void OnToolbarHit (WPARAM wParam, LPARAM lParam)
86: {
87:
88: WORD ToolbarHit ;
89:
90: if (HIWORD(wParam) == TBN_ENDDRAG)
91: {
92: StatusLineReady (hWndStatus) ;
93: }
94: else if (HIWORD(wParam) == TBN_BEGINDRAG)
95: {
96: ToolbarHit = LOWORD (lParam) ;
97:
98: if (ToolbarHit >= IDM_TOOLBARADD &&
99: ToolbarHit <= IDM_TOOLBARDELETE)
100: {
101: ToolbarHit -= IDM_TOOLBARADD ;
102:
103: switch (iPerfmonView)
104: {
105: case IDM_VIEWALERT:
106: ToolbarHit += IDM_EDITADDALERT ;
107: break ;
108:
109: case IDM_VIEWLOG:
110: ToolbarHit += IDM_EDITADDLOG ;
111: break ;
112:
113: case IDM_VIEWREPORT:
114: ToolbarHit += IDM_EDITADDREPORT ;
115: break ;
116:
117: case IDM_VIEWCHART:
118: default:
119: ToolbarHit += IDM_EDITADDCHART ;
120: break ;
121: }
122: }
123: else if (ToolbarHit == IDM_TOOLBARBOOKMARK)
124: {
125: ToolbarHit = IDM_OPTIONSBOOKMARK ;
126: }
127: else if (ToolbarHit == IDM_TOOLBARREFRESH)
128: {
129: switch (iPerfmonView)
130: {
131: case IDM_VIEWALERT:
132: ToolbarHit = IDM_OPTIONSREFRESHNOWALERT ;
133: break ;
134:
135: case IDM_VIEWLOG:
136: ToolbarHit = IDM_OPTIONSREFRESHNOWLOG ;
137: break ;
138:
139: case IDM_VIEWREPORT:
140: ToolbarHit = IDM_OPTIONSREFRESHNOWREPORT ;
141: break ;
142:
143: case IDM_VIEWCHART:
144: default:
145: ToolbarHit = IDM_OPTIONSREFRESHNOWCHART ;
146: break ;
147: }
148: }
149: else if (ToolbarHit == IDM_TOOLBAROPTIONS)
150: {
151: switch (iPerfmonView)
152: {
153: case IDM_VIEWALERT:
154: ToolbarHit = IDM_OPTIONSALERT ;
155: break ;
156:
157: case IDM_VIEWLOG:
158: ToolbarHit = IDM_OPTIONSLOG ;
159: break ;
160:
161: case IDM_VIEWREPORT:
162: ToolbarHit = IDM_OPTIONSREPORT ;
163: break ;
164:
165: case IDM_VIEWCHART:
166: default:
167: ToolbarHit = IDM_OPTIONSCHART ;
168: break ;
169: }
170: }
171:
172: StatusLine (hWndStatus, ToolbarHit) ;
173: }
174: } // OnToolBarHit
175:
176:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.