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

Last change on this file since 496 was 496, checked in by dai_9181, 15 years ago

CMenuへのキャストを排除。
いくつかのメニューをMainFrameに実装しなおした

File size: 2.9 KB
Line 
1#pragma once
2
3namespace ActiveBasic{ namespace IDE{
4
5
6class MainFrame
7    : public WindowComponents::BaseWindow
8{
9    WindowAreaManager wam;
10    WindowComponents::MdiWindow *mdiWindow;
11
12public:
13
14    // 生成された
15    ::LRESULT OnCreate( ::UINT msg, ::WPARAM wParam, ::LPARAM lParam, ::BOOL& handled );
16
17    // 「閉じる」ボタンがクリックされた
18    ::LRESULT OnClose( ::UINT msg, ::WPARAM wParam, ::LPARAM lParam, ::BOOL& handled );
19
20    // リサイズされた
21    void OnSize(UINT nType, CSize size);
22
23    // 破棄された
24    ::LRESULT OnDestroy( ::UINT msg, ::WPARAM wParam, ::LPARAM lParam, ::BOOL& handled );
25
26    // タイマーイベント
27    void OnTimer( UINT_PTR id );
28
29    // クリップボード内のデータが変更した
30    void OnDrawClipboard();
31
32    // メニューが選択された
33    void OnMenuSelect( UINT nItemID, UINT nFlags, HMENU menu );
34
35    // メニューがアクティブになる直前に送られる
36    void OnInitMenu( HMENU menu );
37
38    // メニューアイテムのサイズが要求された
39    void OnMeasureItem( int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct );
40
41    // メニューアイテムの描画が要求された
42    void OnDrawItem( int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct );
43
44    // 拡張コントロールからメッセージが通知された
45    LRESULT OnNotify( int idCtrl, LPNMHDR pnmh );
46
47    // 「新規作成」メニューがクリックされた
48    void OnCmdNew( UINT uNotifyCode, int nID, CWindow wndCtl );
49
50    // 「開く」メニューがクリックされた
51    void OnCmdOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
52
53    // 「閉じる」メニューがクリックされた
54    void OnCmdClose( UINT uNotifyCode, int nID, CWindow wndCtl );
55
56    // 「プロジェクトを開く」メニューがクリックされた
57    void OnCmdProjectOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
58
59    // 「プロジェクトを保存」メニューがクリックされた
60    void OnCmdProjectSave( UINT uNotifyCode, int nID, CWindow wndCtl );
61
62    // 「プロジェクトを閉じる」メニューがクリックされた
63    void OnCmdProjectClose( UINT uNotifyCode, int nID, CWindow wndCtl );
64
65    // 「プロジェクト フォルダを開く」メニューがクリックされた
66    void OnCmdProjectFolderOpen( UINT uNotifyCode, int nID, CWindow wndCtl );
67
68private:
69    // メッセージマップ
70    BEGIN_MSG_MAP( MainFrame )
71        MESSAGE_HANDLER( WM_CREATE, OnCreate )
72        MESSAGE_HANDLER( WM_CLOSE, OnClose )
73        MESSAGE_HANDLER( WM_DESTROY, OnDestroy )
74        MSG_WM_TIMER( OnTimer )
75        MSG_WM_DRAWCLIPBOARD( OnDrawClipboard )
76        MSG_WM_MENUSELECT( OnMenuSelect )
77        MSG_WM_INITMENU( OnInitMenu )
78        MSG_WM_MEASUREITEM( OnMeasureItem )
79        MSG_WM_DRAWITEM( OnDrawItem )
80
81        MSG_WM_NOTIFY( OnNotify );
82
83        COMMAND_ID_HANDLER_EX( IDM_NEW, OnCmdNew )
84        COMMAND_ID_HANDLER_EX( IDM_OPEN, OnCmdOpen )
85        COMMAND_ID_HANDLER_EX( IDM_CLOSE, OnCmdClose )
86        COMMAND_ID_HANDLER_EX( IDM_PROJECT_OPEN, OnCmdProjectOpen )
87        COMMAND_ID_HANDLER_EX( IDM_PROJECT_SAVE, OnCmdProjectSave )
88        COMMAND_ID_HANDLER_EX( IDM_PROJECT_CLOSE, OnCmdProjectClose )
89        COMMAND_ID_HANDLER_EX( IDM_PROJECT_FOLDER_OPEN, OnCmdProjectFolderOpen )
90    END_MSG_MAP()
91};
92
93
94}}
Note: See TracBrowser for help on using the repository browser.