Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

ScriptEditorFrm.h

Go to the documentation of this file.
00001 /* QuestDesigner - Open Zelda's Project
00002    Copyright (C) 2003 Kronuz
00003    Copyright (C) 2001/2003 Open Zelda's Project
00004  
00005    This program is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU General Public License
00007    as published by the Free Software Foundation; either version 2
00008    of the License, or (at your option) any later version.
00009 
00010    This program is distributed in the hope that it will be useful,
00011    but WITHOUT ANY WARRANTY; without even the implied warranty of
00012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013    GNU General Public License for more details.
00014 
00015    You should have received a copy of the GNU General Public License
00016    along with this program; if not, write to the Free Software
00017    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00018 */
00020 
00025 #pragma once
00026 
00027 #include "ChildFrm.h"
00028 #include "ScriptEditorView.h"
00029 
00030 //class CIdleHandlerWithPump;
00031 
00033 // Forward declarations
00034 class CMainFrame;
00035 class CIdleHandlerPump;
00036 
00038 // This class manages the script editor frame
00039 class CScriptEditorFrame :
00040     public CChildFrame, 
00041     public CIdleHandlerPump // (idle stuff usually not required on child frames)
00042 {
00043 protected:
00044 public:
00045     DECLARE_FRAME_WND_CLASS(NULL, IDR_MDICHILD)
00046     virtual BOOL OnIdle();
00047 
00048     // The window's view (the child control)
00049     CScriptEditorView *m_pScriptEditorView;
00050 
00051     // Construction/Destruction:
00052     CScriptEditorFrame(CMainFrame *pMainFrame);
00053 
00054     virtual void OnFinalMessage(HWND /*hWnd*/);
00055     void SetCommandBarCtrlForContextMenu(CTabbedMDICommandBarCtrl* pCmdBar);
00056 
00057     BEGIN_MSG_MAP(CScriptEditorFrame)
00058         MESSAGE_HANDLER(WM_CREATE, OnCreate)
00059         MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
00060         MESSAGE_HANDLER(WM_FORWARDMSG, OnForwardMsg)
00061         MESSAGE_HANDLER(WM_SETTINGCHANGE, OnSettingChange)
00062         MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
00063         
00064         MESSAGE_HANDLER(WMQD_SELECT, OnSelectLine)
00065 
00066         MESSAGE_HANDLER(UWM_MDICHILDSHOWTABCONTEXTMENU, OnShowTabContextMenu)
00067 
00068         CHAIN_MSG_MAP(CChildFrame)
00069         // Pass all unhandled WM_COMMAND messages to the client window or 'view'
00070         CHAIN_CLIENT_COMMANDS ()
00071         // Reflect all the WM_NOTIFY messages to the client window
00072         REFLECT_NOTIFICATIONS()
00073 
00074     END_MSG_MAP()
00075 
00076 // Handler prototypes (uncomment arguments if needed):
00077 //  LRESULT MessageHandler(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
00078 //  LRESULT CommandHandler(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
00079 //  LRESULT NotifyHandler(int /*idCtrl*/, LPNMHDR /*pnmh*/, BOOL& /*bHandled*/)
00080 
00081     LRESULT OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled);
00082     LRESULT OnDestroy(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled);
00083     LRESULT OnForwardMsg(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
00084     LRESULT OnSettingChange(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/);
00085     LRESULT OnSetFocus(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
00086 
00087     LRESULT OnSelectLine(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/);
00088 
00089     // Return the window's child control
00090     CScriptEditorView* GetView() { return m_pScriptEditorView; }
00091     // Return the main frame
00092     CMainFrame* GetMainFrame() { return m_pMainFrame; }
00093 };

Generated on Wed Apr 16 19:12:22 2003 for QuestDesigner by doxygen1.2.18