Files
Work/m68hc11/backup/Mainfrm.hpp
2024-08-07 09:16:27 -04:00

111 lines
4.1 KiB
C++

#ifndef _M68HC11_MAINFRAME_HPP_
#define _M68HC11_MAINFRAME_HPP_
#ifndef _COMMON_MDIFRM_HPP_
#include <common/mdifrm.hpp>
#endif
#ifndef _COMMON_STRING_HPP_
#include <common/string.hpp>
#endif
#ifndef _COMMON_SMARTPOINTER_HPP_
#include <common/pointer.hpp>
#endif
#ifndef _STATBAR_STATUSBAREX_HPP_
#include <statbar/statbarx.hpp>
#endif
#ifndef _TOOLBAR_TOOLBAR_HPP_
#include <toolbar/toolbar.hpp>
#endif
#ifndef _M68HC11_COMMCONTROL_HPP_
#include <m68hc11/commctrl.hpp>
#endif
#ifndef _M68HC11_M68HC11_HPP_
#include <m68hc11/m68hc11.hpp>
#endif
#ifndef _AS68HC11_M68ASSEMBLER_HPP_
#include <as68hc11/asm6811.hpp>
#endif
class MainFrame : public FrameWindow
{
public:
MainFrame(void);
virtual ~MainFrame();
static String className(void);
void splash(void);
protected:
virtual void mdiDestroy(MDIWindow &mdiWindow);
virtual void mdiActivate(MDIWindow &mdiWindow);
virtual void mdiDeactivate(MDIWindow &mdiWindow);
private:
enum {StatusBarID=500,ToolBarID=501,StartDynamicID=30000};
enum{SinglePart=1,DoublePart=2,FirstPartWidth=340,SecondPartWidth=420};
enum{MenuFileSave=SBCMENU_FILESAVE,MenuFileQuit=SBCMENU_FILEQUIT,MenuFilePrint=SBCMENU_FILEPRINT,
MenuSettingsSerial=SBCMENU_SETTINGSSERIAL,MenuHelpContents=SBCMENU_HELPCONTENTS,
MenuHelpSearch=SBCMENU_HELPSEARCH,MenuRegistration=SBCMENU_REGISTRATION,MenuFileNew=SBCMENU_FILENEW,
MenuFileOpen=SBCMENU_FILEOPEN,MenuHelpAbout=SBCMENU_HELPABOUT,MenuFileClose=SBCMENU_FILECLOSE,
MenuFileSaveAs=SBCMENU_FILESAVEAS,MenuCascade=IDM_CASCADE,MenuTile=IDM_TILE,MenuArrange=IDM_ARRANGE,
MenuCloseAll=IDM_CLOSEALL,MenuMinimizeAll=IDM_MINIMIZEALL,MenuRestoreAll=IDM_RESTOREALL,
MenuEditCut=SBCMENU_EDITCUT,MenuEditCopy=SBCMENU_EDITCOPY,MenuEditPaste=SBCMENU_EDITPASTE,
MenuEditFind=SBCMENU_EDITFIND,MenuCodeCompile=SBCMENU_CODECOMPILE,
MenuCodeCompileAndLoad=SBCMENU_CODECOMPILEANDLOAD};
CallbackData::ReturnType queryEndSessionHandler(CallbackData &someCallbackData);
CallbackData::ReturnType paintHandler(CallbackData &someCallbackData);
CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData);
CallbackData::ReturnType commandHandler(CallbackData &someCallbackData);
CallbackData::ReturnType keyDownHandler(CallbackData &someCallbackData);
CallbackData::ReturnType sizeHandler(CallbackData &someCallbackData);
CallbackData::ReturnType timerHandler(CallbackData &someCallbackData);
CallbackData::ReturnType createHandler(CallbackData &someCallbackData);
CallbackData::ReturnType activateAppHandler(CallbackData &someCallbackData);
CallbackData::ReturnType displayChangeHandler(CallbackData &someCallbackData);
CallbackData::ReturnType lineHandler(CallbackData &someCallbackData);
void createToolBar(void);
void handleCodeCompile(void);
void handleCodeCompileAndLoad(void);
void handleCommunications(void);
void handleEditCut(void);
void handleEditCopy(void);
void handleEditPaste(void);
void handleEditFind(void);
void handleFileNew(void);
void handleFileOpen(void);
void handleFileOpen(CallbackData &someCallbackData);
void handleFileOpen(const String &strPathFileName);
void handleFileClose(void);
void handleFilePrint(void);
void handleHelp(void);
BOOL handleFileSave(void);
BOOL handleFileSaveAs(void);
BOOL codeLoad(const String &strPathBinary);
void registerClass(void)const;
void insertHandlers(void);
void removeHandlers(void);
void setParts(int numParts);
void applyHistory(PureMenu &pureMenu);
void updateHistory(const String &pathFileName);
void removeHistory(PureMenu &pureMenu);
BOOL bringDocumentToFront(const String &strTitle);
Callback<MainFrame> mQueryEndSessionHandler;
Callback<MainFrame> mPaintHandler;
Callback<MainFrame> mDestroyHandler;
Callback<MainFrame> mCommandHandler;
Callback<MainFrame> mSizeHandler;
Callback<MainFrame> mCreateHandler;
Callback<MainFrame> mLineHandler;
SmartPointer<StatusBarEx> mStatusBar;
CommControl mCommControl;
ToolBar mToolBar;
// SerialSettings mSerialSettings;
M68Assembler m68Assembler;
static char szClassName[];
static char szMenuName[];
};
inline
String MainFrame::className(void)
{
return String(szClassName);
}
#endif