source: dev/trunk/ab5.0/abdev/abdev/include/MainFrame.h@ 829

Last change on this file since 829 was 829, checked in by イグトランス (egtra), 12 years ago

svn:eol-styleとsvn:mime-type(文字コード指定含む)の設定

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/plain; charset=Shift_JIS
File size: 14.9 KB
Line 
1#pragma once
2
3#include <boost/shared_ptr.hpp>
4
5//サイズ変更枠の太さ
6#define LEVER_THICK 5
7
8#define WM_SHOWERROR WM_USER+70 //エラー表示メッセージ
9
10#define WM_SETCOMPILEVIEW WM_USER+71 //コンパイラウィンドウが表示されたとき
11#define WM_DESTROYCOMPILEVIEW WM_USER+72 //コンパイラウィンドウが破棄されたとき
12
13#define WM_SETDEBUGGERBASE WM_USER+73 //デバッガベースウィンドウが表示されたとき
14#define WM_DESTROYDEBUGGERBASE WM_USER+74 //デバッガベースウィンドウが破棄されたとき
15
16#define WM_SETDEBUGGERVIEW WM_USER+75 //デバッガウィンドウが表示されたとき
17#define WM_DESTROYDEBUGGERVIEW WM_USER+76 //デバッガウィンドウが表示されたとき
18
19class TaskbarList;
20
21namespace ActiveBasic{ namespace IDE{
22
23
24class MainFrame
25 : public WindowComponents::MdiWindow
26{
27 WindowAreaManager wam;
28 UINT TaskbarButtonCreated;
29 std::shared_ptr<TaskbarList> taskbarList;
30
31public:
32 MainFrame();
33
34 // リサイズ時のリフレッシュ
35 void Resized();
36
37 // WebブラウザでURLを開く
38 void OpenWebBrowser( const std::string &url );
39
40 // Explorerでパスを開く
41 void OpenExplorer( const std::string &filepath );
42
43 // 生成された
44 ::LRESULT OnCreate( ::CREATESTRUCT const* );
45
46 // OSが終了する
47 BOOL OnQueryEndSession(UINT nSource, UINT uLogOff);
48
49 // 「閉じる」ボタンがクリックされた
50 void OnClose();
51
52 // リサイズされた
53 void OnSize(UINT nType, CSize size);
54
55 // 破棄された
56 void OnDestroy();
57
58 // タイマーイベント
59 void OnTimer( UINT_PTR id );
60
61 // クリップボード内のデータが変更した
62 void OnDrawClipboard();
63
64 // メニューが選択された
65 void OnMenuSelect( UINT nItemID, UINT nFlags, HMENU menu );
66
67 // メニューがアクティブになる直前に送られる
68 void OnInitMenu( HMENU menu );
69
70 // メニューアイテムのサイズが要求された
71 void OnMeasureItem( int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct );
72
73 // メニューアイテムの描画が要求された
74 void OnDrawItem( int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct );
75
76 // 拡張コントロールからメッセージが通知された
77 LRESULT OnNotify( int idCtrl, LPNMHDR pnmh );
78
79 // ファイルがドロップされた
80 void OnDropFiles( HDROP hDropInfo );
81
82 // 再描画
83 void OnPaint( HDC dummy );
84
85 // ソースコード表示メッセージ
86 ::LRESULT OnShowSourceLine( ::UINT msg, ::WPARAM wParam, ::LPARAM lParam, ::BOOL& handled );
87
88 // タスクバーボタンが生成された
89 ::LRESULT OnTaskbarButtonCreated(::UINT msg, ::WPARAM wParam, ::LPARAM lParam);
90
91 // 子ウィンドウが生成された
92 void AddChildWindow( HWND hwndChild );
93
94 // 子ウィンドウが破棄された
95 void DeleteChildWindow( HWND hwndChild );
96
97 // 子ウィンドウがアクティブになった
98 void ActivateChildWindow( HWND hwndChild );
99
100 // タブの順序が変更になった
101 void SetTabOrder( HWND hwndChild, HWND hwndInsertBefore );
102
103 // サムネイル画像が古くなった(ので更新したい)
104 void InvalidateBitmap( HWND hwndChild );
105
106 // 「新規作成」メニューがクリックされた
107 void OnCmdNew( UINT uNotifyCode, int nID, CWindow wndCtl );
108
109 // 「開く」メニューがクリックされた
110 void OnCmdOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
111
112 // 「閉じる」メニューがクリックされた
113 void OnCmdClose( UINT uNotifyCode, int nID, CWindow wndCtl );
114
115 // 「プロジェクトを開く」メニューがクリックされた
116 void OnCmdProjectOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
117
118 // 「プロジェクトを保存」メニューがクリックされた
119 void OnCmdProjectSave( UINT uNotifyCode, int nID, CWindow wndCtl );
120
121 // 「プロジェクトを閉じる」メニューがクリックされた
122 void OnCmdProjectClose( UINT uNotifyCode, int nID, CWindow wndCtl );
123
124 // 「プロジェクト フォルダを開く」メニューがクリックされた
125 void OnCmdProjectFolderOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
126
127 // 「保存」メニューがクリックされた
128 void OnCmdSave( UINT uNotifyCode, int nID, CWindow wndCtl );
129
130 // 「名前を付けて保存」メニューがクリックされた
131 void OnCmdNewSave( UINT uNotifyCode, int nID, CWindow wndCtl );
132
133 // 「文字コードを指定して保存」メニューがクリックされた
134 void OnCmdCodeSave( UINT uNotifyCode, int nID, CWindow wndCtl );
135
136 // 「すべて保存」メニューがクリックされた
137 void OnCmdAllSave( UINT uNotifyCode, int nID, CWindow wndCtl );
138
139 // 「ページ設定」メニューがクリックされた
140 void OnCmdPageSet( UINT uNotifyCode, int nID, CWindow wndCtl );
141
142 // 「印刷プレビュー」メニューがクリックされた
143 void OnCmdPreview( UINT uNotifyCode, int nID, CWindow wndCtl );
144
145 // 「印刷」メニューがクリックされた
146 void OnCmdPrintOut( UINT uNotifyCode, int nID, CWindow wndCtl );
147
148 // 「終了」メニューがクリックされた
149 void OnCmdExit( UINT uNotifyCode, int nID, CWindow wndCtl );
150
151 // 「元に戻す」メニューがクリックされた
152 void OnCmdUndo( UINT uNotifyCode, int nID, CWindow wndCtl );
153
154 // 「やり直し」メニューがクリックされた
155 void OnCmdRedo( UINT uNotifyCode, int nID, CWindow wndCtl );
156
157 // 「切り取り」メニューがクリックされた
158 void OnCmdCut( UINT uNotifyCode, int nID, CWindow wndCtl );
159
160 // 「コピー」メニューがクリックされた
161 void OnCmdCopy( UINT uNotifyCode, int nID, CWindow wndCtl );
162
163 // 「貼り付け」メニューがクリックされた
164 void OnCmdPaste( UINT uNotifyCode, int nID, CWindow wndCtl );
165
166 // 「削除」メニューがクリックされた
167 void OnCmdDelete( UINT uNotifyCode, int nID, CWindow wndCtl );
168
169 // 「すべて選択」メニューがクリックされた
170 void OnCmdAllSelect( UINT uNotifyCode, int nID, CWindow wndCtl );
171
172 // 「検索」メニューがクリックされた
173 void OnCmdFind( UINT uNotifyCode, int nID, CWindow wndCtl );
174
175 // 「置換」メニューがクリックされた
176 void OnCmdPermutation( UINT uNotifyCode, int nID, CWindow wndCtl );
177
178 // 変換メニューのいずれかがクリックされた
179 void OnCmdConvertX( UINT uNotifyCode, int nID, CWindow wndCtl );
180
181 // 「文字カウント」メニューがクリックされた
182 void OnCmdStringCount( UINT uNotifyCode, int nID, CWindow wndCtl );
183
184 // 「選択範囲の文字カウント」メニューがクリックされた
185 void OnCmdSelStringCount( UINT uNotifyCode, int nID, CWindow wndCtl );
186
187 // 「プロジェクトビュー」メニューがクリックされた
188 void OnCmdProjectView( UINT uNotifyCode, int nID, CWindow wndCtl );
189
190 // 「プロジェクトオプション」メニューがクリックされた
191 void OnCmdProjectOption( UINT uNotifyCode, int nID, CWindow wndCtl );
192
193 // 「最前面表示」メニューがクリックされた
194 void OnCmdTopMost( UINT uNotifyCode, int nID, CWindow wndCtl );
195
196 // 「右端で折り返す」メニューがクリックされた
197 void OnCmdRightTurn( UINT uNotifyCode, int nID, CWindow wndCtl );
198
199 // 「オプション」メニューがクリックされた
200 void OnCmdSet( UINT uNotifyCode, int nID, CWindow wndCtl );
201
202 // 「デバッグ実行」メニューがクリックされた
203 void OnCmdDebug( UINT uNotifyCode, int nID, CWindow wndCtl );
204
205 // 「デバッグビルド」メニューがクリックされた
206 void OnCmdDebugCompile( UINT uNotifyCode, int nID, CWindow wndCtl );
207
208 // 「アタッチ」メニューがクリックされた
209 void OnCmdAttach( UINT uNotifyCode, int nID, CWindow wndCtl );
210
211 // 「リリースビルド」メニューがクリックされた
212 void OnCmdReleaseCompile( UINT uNotifyCode, int nID, CWindow wndCtl );
213
214 // 「リリース実行」メニューがクリックされた
215 void OnCmdReleaseRun( UINT uNotifyCode, int nID, CWindow wndCtl );
216
217 // 「ステップイン」メニューがクリックされた
218 void OnCmdStepIn( UINT uNotifyCode, int nID, CWindow wndCtl );
219
220 // 「ステップオーバー」メニューがクリックされた
221 void OnCmdStepOver( UINT uNotifyCode, int nID, CWindow wndCtl );
222
223 // 「カーソル行まで実行」メニューがクリックされた
224 void OnCmdStepCursor( UINT uNotifyCode, int nID, CWindow wndCtl );
225
226 // 「ブレークポイント」メニューがクリックされた
227 void OnCmdBreakPoint( UINT uNotifyCode, int nID, CWindow wndCtl );
228
229 // 「デバッグの停止」メニューがクリックされた
230 void OnCmdDebugStop( UINT uNotifyCode, int nID, CWindow wndCtl );
231
232 // 「デバッグの一時停止」メニューがクリックされた
233 void OnCmdDebugPause( UINT uNotifyCode, int nID, CWindow wndCtl );
234
235 // Webリンクメニューがクリックされた
236 void OnCmdWebLink( UINT uNotifyCode, int nID, CWindow wndCtl );
237
238 // 「トピックス」メニューがクリックされた
239 void OnCmdTopics( UINT uNotifyCode, int nID, CWindow wndCtl );
240
241 // 「バージョン情報」メニューがクリックされた
242 void OnCmdAbout( UINT uNotifyCode, int nID, CWindow wndCtl );
243
244 // レバーの「ドキュメントセレクト」メニューがクリックされた
245 void OnCmdDocSelectBand( UINT uNotifyCode, int nID, CWindow wndCtl );
246
247 // レバーの「標準」メニューがクリックされた
248 void OnCmdStandardBand( UINT uNotifyCode, int nID, CWindow wndCtl );
249
250 // レバーの「リリース」メニューがクリックされた
251 void OnCmdReleaseBand( UINT uNotifyCode, int nID, CWindow wndCtl );
252
253 // レバーの「デバッグ」メニューがクリックされた
254 void OnCmdDebugBand( UINT uNotifyCode, int nID, CWindow wndCtl );
255
256 // レバーの「プラットフォーム選択」メニューがクリックされた
257 void OnCmdSelectCompilerBand( UINT uNotifyCode, int nID, CWindow wndCtl );
258
259 // レバーの「レバーを固定」メニューがクリックされた
260 void OnCmdNoGripper( UINT uNotifyCode, int nID, CWindow wndCtl );
261
262 // レバーの「レバーをリセット」メニューがクリックされた
263 void OnCmdResetRebar( UINT uNotifyCode, int nID, CWindow wndCtl );
264
265 // タブの「自分以外のウィンドウを閉じる」メニューがクリックされた
266 void OnCmdAllCloseOmitMyself( UINT uNotifyCode, int nID, CWindow wndCtl );
267
268 // タブの「絶対パスをコピー」メニューがクリックされた
269 void OnCmdPathCopy( UINT uNotifyCode, int nID, CWindow wndCtl );
270
271 // タブの「フォルダを開く」メニューがクリックされた
272 void OnCmdFolderOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
273
274 // タブの「ファイルを削除」メニューがクリックされた
275 void OnCmdDeleteFile( UINT uNotifyCode, int nID, CWindow wndCtl );
276
277 // タブの「タブの色」メニューがクリックされた
278 void OnCmdColor( UINT uNotifyCode, int nID, CWindow wndCtl );
279
280private:
281 // メッセージマップ
282 BEGIN_MSG_MAP( MainFrame )
283 MSG_WM_CREATE( OnCreate )
284 MSG_WM_SIZE( OnSize )
285 MSG_WM_QUERYENDSESSION( OnQueryEndSession )
286 MSG_WM_CLOSE( OnClose )
287 MSG_WM_DESTROY( OnDestroy )
288 MSG_WM_TIMER( OnTimer )
289 MSG_WM_DRAWCLIPBOARD( OnDrawClipboard )
290 MSG_WM_MENUSELECT( OnMenuSelect )
291 MSG_WM_INITMENU( OnInitMenu )
292 MSG_WM_MEASUREITEM( OnMeasureItem )
293 MSG_WM_DRAWITEM( OnDrawItem )
294 MSG_WM_NOTIFY( OnNotify );
295 MSG_WM_DROPFILES( OnDropFiles )
296 MSG_WM_PAINT( OnPaint )
297 MESSAGE_HANDLER( WM_SHOWERROR, OnShowSourceLine )
298 MESSAGE_HANDLER_EX( TaskbarButtonCreated, OnTaskbarButtonCreated )
299 COMMAND_ID_HANDLER_EX( IDM_NEW, OnCmdNew )
300 COMMAND_ID_HANDLER_EX( IDM_OPEN, OnCmdOpen )
301 COMMAND_ID_HANDLER_EX( IDM_CLOSE, OnCmdClose )
302#ifndef THETEXT
303 COMMAND_ID_HANDLER_EX( IDM_PROJECT_OPEN, OnCmdProjectOpen )
304 COMMAND_ID_HANDLER_EX( IDM_PROJECT_SAVE, OnCmdProjectSave )
305 COMMAND_ID_HANDLER_EX( IDM_PROJECT_CLOSE, OnCmdProjectClose )
306 COMMAND_ID_HANDLER_EX( IDM_PROJECT_FOLDER_OPEN, OnCmdProjectFolderOpen )
307#endif
308 COMMAND_ID_HANDLER_EX( IDM_SAVE, OnCmdSave )
309 COMMAND_ID_HANDLER_EX( IDM_NEWSAVE, OnCmdNewSave )
310 COMMAND_ID_HANDLER_EX( IDM_CODE_SAVE, OnCmdCodeSave )
311 COMMAND_ID_HANDLER_EX( IDM_ALLSAVE, OnCmdAllSave )
312 COMMAND_ID_HANDLER_EX( IDM_PAGESET, OnCmdPageSet )
313 COMMAND_ID_HANDLER_EX( IDM_PREVIEW, OnCmdPreview )
314 COMMAND_ID_HANDLER_EX( IDM_PRINTOUT, OnCmdPrintOut )
315 COMMAND_ID_HANDLER_EX( IDM_EXIT, OnCmdExit )
316 COMMAND_ID_HANDLER_EX( IDM_UNDO, OnCmdUndo )
317 COMMAND_ID_HANDLER_EX( (WORD)IDM_ACCEL_UNDO, OnCmdUndo )
318 COMMAND_ID_HANDLER_EX( IDM_REDO, OnCmdRedo )
319 COMMAND_ID_HANDLER_EX( (WORD)IDM_ACCEL_REDO, OnCmdRedo )
320 COMMAND_ID_HANDLER_EX( IDM_CUT, OnCmdCut )
321 COMMAND_ID_HANDLER_EX( IDM_COPY, OnCmdCopy )
322 COMMAND_ID_HANDLER_EX( IDM_PASTE, OnCmdPaste )
323 COMMAND_ID_HANDLER_EX( IDM_DELETE, OnCmdDelete )
324 COMMAND_ID_HANDLER_EX( IDM_ALLSELECT, OnCmdAllSelect )
325 COMMAND_ID_HANDLER_EX( IDM_FIND, OnCmdFind )
326 COMMAND_ID_HANDLER_EX( IDM_PERMUTATION, OnCmdPermutation )
327 COMMAND_ID_HANDLER_EX( IDM_CONV_ALPHA_SMALL, OnCmdConvertX )
328 COMMAND_ID_HANDLER_EX( IDM_CONV_ALPHA_BIG, OnCmdConvertX )
329 COMMAND_ID_HANDLER_EX( IDM_CONV_HALF, OnCmdConvertX )
330 COMMAND_ID_HANDLER_EX( IDM_CONV_MULTI, OnCmdConvertX )
331 COMMAND_ID_HANDLER_EX( IDM_CONV_KATAKANA, OnCmdConvertX )
332 COMMAND_ID_HANDLER_EX( IDM_CONV_HIRAGANA, OnCmdConvertX )
333 COMMAND_ID_HANDLER_EX( IDM_CONV_SPACE, OnCmdConvertX )
334 COMMAND_ID_HANDLER_EX( IDM_CONV_TAB, OnCmdConvertX )
335#ifdef THETEXT
336 COMMAND_ID_HANDLER_EX( IDM_CONV_HASRETURN, OnCmdConvertX )
337 COMMAND_ID_HANDLER_EX( IDM_CONV_QUOTE, OnCmdConvertX )
338 COMMAND_ID_HANDLER_EX( IDM_STRING_COUNT, OnCmdStringCount )
339 COMMAND_ID_HANDLER_EX( IDM_SEL_STRING_COUNT, OnCmdSelStringCount )
340#else
341 COMMAND_ID_HANDLER_EX( IDM_CODEFORMAT, OnCmdConvertX )
342#endif
343 COMMAND_ID_HANDLER_EX( IDM_PROJECTVIEW, OnCmdProjectView )
344 COMMAND_ID_HANDLER_EX( IDM_PROJECT_OPTION, OnCmdProjectOption )
345 COMMAND_ID_HANDLER_EX( IDM_TOPMOST, OnCmdTopMost )
346#ifdef THETEXT
347 COMMAND_ID_HANDLER_EX( IDM_RIGHT_TURN, OnCmdRightTurn )
348#endif
349 COMMAND_ID_HANDLER_EX( IDM_SET, OnCmdSet )
350#ifndef THETEXT
351 COMMAND_ID_HANDLER_EX( IDM_DEBUG, OnCmdDebug )
352 COMMAND_ID_HANDLER_EX( IDM_DEBUGCOMPILE, OnCmdDebugCompile )
353 COMMAND_ID_HANDLER_EX( IDM_ATTACH, OnCmdAttach )
354 COMMAND_ID_HANDLER_EX( IDM_RELEASECOMPILE, OnCmdReleaseCompile )
355 COMMAND_ID_HANDLER_EX( IDM_RELEASERUN, OnCmdReleaseRun )
356 COMMAND_ID_HANDLER_EX( IDM_STEP_IN, OnCmdStepIn )
357 COMMAND_ID_HANDLER_EX( IDM_STEP_OVER, OnCmdStepOver )
358 COMMAND_ID_HANDLER_EX( IDM_STEP_CURSOR, OnCmdStepCursor )
359 COMMAND_ID_HANDLER_EX( IDM_BREAKPOINT, OnCmdBreakPoint )
360 COMMAND_ID_HANDLER_EX( IDM_DEBUG_STOP, OnCmdDebugStop )
361 COMMAND_ID_HANDLER_EX( IDM_DEBUG_PAUSE, OnCmdDebugPause )
362 COMMAND_ID_HANDLER_EX( IDM_COMMUNITY, OnCmdWebLink )
363 COMMAND_ID_HANDLER_EX( IDM_COMMU_SEARCH, OnCmdWebLink )
364 COMMAND_ID_HANDLER_EX( IDM_COMMU_PM, OnCmdWebLink )
365 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM1, OnCmdWebLink )
366 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM2, OnCmdWebLink )
367 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM3, OnCmdWebLink )
368 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM4, OnCmdWebLink )
369 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM5, OnCmdWebLink )
370 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM6, OnCmdWebLink )
371 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM7, OnCmdWebLink )
372 COMMAND_ID_HANDLER_EX( ID_COMMU_FORUM8, OnCmdWebLink )
373 COMMAND_ID_HANDLER_EX( IDM_AB_WEBSITE, OnCmdWebLink )
374 COMMAND_ID_HANDLER_EX( IDM_ACTBDL, OnCmdWebLink )
375#else
376 COMMAND_ID_HANDLER_EX( IDM_DSHOMEPAGE, OnCmdWebLink )
377#endif
378 COMMAND_ID_HANDLER_EX( IDM_TOPIC, OnCmdTopics )
379 COMMAND_ID_HANDLER_EX( IDM_ABOUT, OnCmdAbout )
380 COMMAND_ID_HANDLER_EX( IDM_DOCSELECTBAND, OnCmdDocSelectBand )
381 COMMAND_ID_HANDLER_EX( IDM_STANDARDBAND, OnCmdStandardBand )
382#ifndef THETEXT
383 COMMAND_ID_HANDLER_EX( IDM_RELEASEBAND, OnCmdReleaseBand )
384 COMMAND_ID_HANDLER_EX( IDM_DEBUGBAND, OnCmdDebugBand )
385 COMMAND_ID_HANDLER_EX( IDM_SELECTCOMPILERBAND, OnCmdSelectCompilerBand )
386#endif
387 COMMAND_ID_HANDLER_EX( IDM_NOGRIPPER, OnCmdNoGripper )
388 COMMAND_ID_HANDLER_EX( IDM_RESET_REBAR, OnCmdResetRebar )
389 COMMAND_ID_HANDLER_EX( IDM_ALLCLOSE_OMIT_MYSELF, OnCmdAllCloseOmitMyself )
390 COMMAND_ID_HANDLER_EX( IDM_PATH_COPY, OnCmdPathCopy )
391 COMMAND_ID_HANDLER_EX( IDM_FOLDER_OPEN, OnCmdFolderOpen )
392 COMMAND_ID_HANDLER_EX( IDM_DELETE_FILE, OnCmdDeleteFile )
393 COMMAND_ID_HANDLER_EX( IDM_USER_COLOR, OnCmdColor )
394 COMMAND_ID_HANDLER_EX( IDM_GRAY, OnCmdColor )
395 COMMAND_ID_HANDLER_EX( IDM_WHITE, OnCmdColor )
396 COMMAND_ID_HANDLER_EX( IDM_RED, OnCmdColor )
397 COMMAND_ID_HANDLER_EX( IDM_GREEN, OnCmdColor )
398 COMMAND_ID_HANDLER_EX( IDM_BLUE, OnCmdColor )
399 COMMAND_ID_HANDLER_EX( IDM_YELLOW, OnCmdColor )
400
401 CHAIN_MSG_MAP(CUpdateUI<WindowComponents::MdiWindow>)
402 CHAIN_MSG_MAP(CMDIFrameWindowImpl<WindowComponents::MdiWindow>)
403 END_MSG_MAP()
404};
405
406
407}}
Note: See TracBrowser for help on using the repository browser.