7 const static LPCTSTR NLITE_MAINWINDOW = _T("nlite");
9 class CNliteMainFrame : public CFrameWindowImpl<CNliteMainFrame>,
10 /*public CUpdateUI<CNliteMainFrame>,*/public CMessageFilter, public CIdleHandler
14 typedef CFrameWindowImpl<CNliteMainFrame> baseWindow;
16 //
\83E
\83B
\83\93\83h
\83E
\83N
\83\89\83X
\96¼
\81A
\8b¤
\92Ê
\83\8a\83\
\81[
\83XID
\81A
\83X
\83^
\83C
\83\8b\81A
\94w
\8ci
\90F
\82ð
\93o
\98^
17 //DECLARE_FRAME_WND_CLASS_EX(NLITE_MAINWINDOW, IDC_NLITE,CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS, COLOR_WINDOW)
18 //DECLARE_FRAME_WND_CLASS_EX(NLITE_MAINWINDOW, IDC_NLITE,CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS, COLOR_WINDOW)
19 DECLARE_FRAME_WND_CLASS(NULL,IDC_NLITE);
21 CCommentView commentView;
22 CStatusBarCtrl statusBar;
26 //
\83\81\83b
\83Z
\81[
\83W
\83t
\83B
\83\8b\83^
\8f\88\97\9d
27 virtual BOOL PreTranslateMessage(MSG* pMsg){
28 //
\8aî
\92ê
\83N
\83\89\83X
\82ÌPreTranslateMessage
\82ð
\8cÄ
\82Ñ
\8fo
\82·
29 return CFrameWindowImpl<CNliteMainFrame>::PreTranslateMessage(pMsg);
32 //
\83A
\83C
\83h
\83\8b\8f\88\97\9d
33 virtual BOOL OnIdle(){
34 // UIUpdateStatusBar();
42 BEGIN_UPDATE_UI_MAP(CNliteMainFrame)
43 //
\83G
\83\93\83g
\83\8a\82È
\82µ
46 //
\83\81\83b
\83Z
\81[
\83W
\83}
\83b
\83v
47 BEGIN_MSG_MAP_EX(CNliteMainFrame)
48 MSG_WM_CREATE(OnCreate)
49 MSG_WM_DESTROY(OnDestroy)
50 MSG_WM_SIZING(OnSizing)
51 MESSAGE_HANDLER(WM_SIZE,OnSize);
53 COMMAND_ID_HANDLER_EX(IDM_EXIT, OnMenuExit)
54 COMMAND_ID_HANDLER_EX(IDM_ABOUT,OnMenuAbount)
55 // CFrameWindowImpl
\83N
\83\89\83X
\82Ö
\83`
\83F
\81[
\83\93
56 // CHAIN_MSG_MAP(CUpdateUI<CNliteMainFrame>)
57 CHAIN_MSG_MAP(CFrameWindowImpl<CNliteMainFrame>)
60 //
\83T
\83C
\83Y
\95Ï
\8dX
\92\86
61 VOID OnSizing(UINT wParam,LPRECT lParam){
64 GetClientRect(&client);
66 ChangeSize( _WTYPES_NS::CSize(client.right - client.left,client.bottom - client.top));
75 //
\83T
\83C
\83Y
\95Ï
\8dX
\8cã
76 LRESULT OnSize(UINT uMsg,WPARAM wParam,LPARAM lParam,BOOL& bHandled){
80 clientSize.cx = LOWORD(lParam);
81 clientSize.cy = HIWORD(lParam);
82 ChangeSize(clientSize);
91 VOID ChangeSize(const SIZE& client);
94 LRESULT OnCreate(LPCREATESTRUCT lpcs){
95 //
\83c
\81[
\83\8b\83o
\81[
\82ð
\8dì
\90¬
96 //CreateSimpleToolBar();
98 //
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\82ð
\8dì
\90¬
99 vcverify(CreateSimpleStatusBar(),TEXT("
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\8dì
\90¬
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½"));
100 // vcverify(UIAddStatusBar(m_hWndStatusBar),TEXT("
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\93o
\98^
\82É
\82µ
\83b
\83p
\82µ
\82Ü
\82µ
\82½"));
101 commentView.Create(m_hWnd);
107 //
\83\81\83b
\83Z
\81[
\83W
\83\8b\81[
\83v
\82É
\83\81\83b
\83Z
\81[
\83W
\83t
\83B
\83\8b\83^
\82Æ
\83A
\83C
\83h
\83\8b\83n
\83\93\83h
\83\89\82ð
\92Ç
\89Á
108 CMessageLoop* pLoop = _Module.GetMessageLoop();
109 pLoop->AddMessageFilter(this);
110 pLoop->AddIdleHandler(this);
118 commentView.DestroyWindow();
123 //
\83\81\83j
\83\85\81[
\82©
\82ç
\83t
\83@
\83C
\83\8b\82ð
\8fI
\97¹
\82ð
\91I
\91ð
124 void OnMenuExit(UINT uNotifyCode, int nID, HWND hWndCtl){
125 PostMessage(WM_CLOSE);
128 //
\83\81\83j
\83\85\81[
\82Ì
\83A
\83v
\83\8a\83P
\81[
\83V
\83\87\83\93\83o
\81[
\83W
\83\87\83\93\8fî
\95ñ
\95\
\8e¦
129 void OnMenuAbount(UINT uNotifyCode,int nID,HWND hWndCtl){