/* Copyright (C) 2011-2020, Dirk Krause SPDX-License-Identifier: BSD-3-Clause */ /* WARNING: This file was generated by the dkct program (see http://dktools.sourceforge.net/ for details). Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: DkWxBmepsFrame.wxc */ /** @file DkWxBmepsFrame.h Header file for the DkWxBmepsFrame module. */ #ifndef DKWXBMEPSFRAME_H_INCLUDED /** Avoid multiple inclusions. */ #define DKWXBMEPSFRAME_H_INCLUDED 1 #line 146 "DkWxBmepsFrame.wxc" #line 148 "DkWxBmepsFrame.wxc" /** Top-level frame for the wxbmeps application. */ class DkWxBmepsFrame : public DkWxFrame { private: /** Event table. */ #if wxCHECK_VERSION(3,0,0) wxDECLARE_EVENT_TABLE(); #else DECLARE_EVENT_TABLE() #endif void findPaperSizes(); protected: /** Conversion options. */ dk3_bm_eps_options_t bmeo; /** Timestamp to close the application. */ dk3_time_t timeClose; /** Localized texts. */ wxChar const * const *sTexts; /** Localized dkChar texts. */ dkChar const * const *msg; /** Directory or file nameto process. */ wxChar const *sDirectory; /** Communication object for main thread and worker thread. */ DkWxCommunicator *pComm; /** Color: Black. */ wxColour *cBlack; /** Color: Green. */ wxColour *cGreen; /** Color: Red. */ wxColour *cRed; /** Paper sizes list. */ wxArrayString *asPaperSizes; /** Paper sizes array. */ dk3_paper_size_t *paperSizes; /** Number of paper sizes in the array. */ size_t nPaperSizes; /** Index of current paper size in asPaperSizes and paperSizes. */ size_t currentPaperSize; /** Directory dialog x position. */ int ddx; /** Directory dialog y position. */ int ddy; /** Options dialog x position. */ int odx; /** Options dialog y position. */ int ody; /** Flag: Save settings when the program exits. */ bool bSaveSettings; /** Flag: Command line options require automatic start. */ bool bAutostartWanted; /** Flag: Automatic start initialized. */ bool bAutostartDone; /** Flag: GUI active. */ bool bGuiActive; /** Flag: Close operation scheduled. */ bool bCloseScheduled; /** Flag: Setup was checked. */ bool bSetupChecked; /** Flag: GUI ok. */ bool dkctGUILayoutOK; /** Contents panel. */ wxPanel *dkctGUIContentsPanel; /** GUI element mbMain. */ #line 46 "DkWxBmepsFrame.wxc" wxMenuBar *mbMain; /** GUI element mainSizer. */ #line 104 "DkWxBmepsFrame.wxc" wxBoxSizer *mainSizer; /** GUI element tbMain. */ #line 16 "DkWxBmepsFrame.wxc" wxToolBar *tbMain; /** GUI element bDir. */ #line 22 "DkWxBmepsFrame.wxc" wxToolBarToolBase *bDir; /** GUI element bOptions. */ #line 28 "DkWxBmepsFrame.wxc" wxToolBarToolBase *bOptions; /** GUI element bRun. */ #line 34 "DkWxBmepsFrame.wxc" wxToolBarToolBase *bRun; /** GUI element bExit. */ #line 40 "DkWxBmepsFrame.wxc" wxToolBarToolBase *bExit; /** GUI element menuFile. */ #line 50 "DkWxBmepsFrame.wxc" wxMenu *menuFile; /** GUI element menuHelp. */ #line 57 "DkWxBmepsFrame.wxc" wxMenu *menuHelp; /** GUI element miFileDir. */ #line 62 "DkWxBmepsFrame.wxc" wxMenuItem *miFileDir; /** GUI element miFileOptions. */ #line 67 "DkWxBmepsFrame.wxc" wxMenu *miFileOptions; /** GUI element miFileRun. */ #line 84 "DkWxBmepsFrame.wxc" wxMenuItem *miFileRun; /** GUI element miFileExit. */ #line 89 "DkWxBmepsFrame.wxc" wxMenuItem *miFileExit; /** GUI element miHelpContents. */ #line 94 "DkWxBmepsFrame.wxc" wxMenuItem *miHelpContents; /** GUI element miHelpAbout. */ #line 99 "DkWxBmepsFrame.wxc" wxMenuItem *miHelpAbout; /** GUI element miFileOptionsSetup. */ #line 73 "DkWxBmepsFrame.wxc" wxMenuItem *miFileOptionsSetup; /** GUI element miFileOptionsReset. */ #line 78 "DkWxBmepsFrame.wxc" wxMenuItem *miFileOptionsReset; /** GUI element verticalSizer. */ #line 110 "DkWxBmepsFrame.wxc" wxBoxSizer *verticalSizer; /** GUI element contentsSizer. */ #line 122 "DkWxBmepsFrame.wxc" wxGridBagSizer *contentsSizer; /** GUI element tLogmessages. */ #line 133 "DkWxBmepsFrame.wxc" wxTextCtrl *tLogmessages; /** GUI element tStatus. */ #line 140 "DkWxBmepsFrame.wxc" wxStaticText *tStatus; /** GUI element lDirectory. */ #line 127 "DkWxBmepsFrame.wxc" wxStaticText *lDirectory; /** GUI element tDirectory. */ #line 130 "DkWxBmepsFrame.wxc" wxStaticText *tDirectory; #line 261 "DkWxBmepsFrame.wxc" public: /** Constructor. @param applicationName Application name. @param messageTexts Localized texts. @param ms Localized texts as dkChar strings. @param applicationHelper Application helper. @param wxid Window ID. @param hc Help controller. @param argc Number of command line arguments. @param argv Command line arguments array. */ DkWxBmepsFrame( wxChar const *applicationName, wxChar const * const *messageTexts, dkChar const * const *ms, DkWxAppHelper *applicationHelper, int wxid, DkWxHelpController *hc, int argc, wxChar **argv ); /** Destructor. */ ~DkWxBmepsFrame(); /** Check whether we can close the window. @param isLast Flag: Last top level window. */ bool canClose(bool isLast); /** Retrieve data from wxConfig. */ void retrieveData(); /** Save data to wxConfig. */ void saveData(); /** Menu event handler for File / Quit. @param event Event to process. */ void OnQuit(wxCommandEvent& event); /** Menu event handler for File / Directory. */ void OnChooseDirectory(wxCommandEvent& event); /** Menu event handler for File / Options / Set. */ void OnSetOptions(wxCommandEvent& event); /** Menu event handler for File / Options / Reset. */ void OnResetOptions(wxCommandEvent& event); /** Menu event handler to run a conversion. */ void OnRunConversion(wxCommandEvent& event); /** Menu event handler to show helpt contents. */ void OnHelpContents(wxCommandEvent& event); /** Menu event handler to show version number. */ void OnAbout(wxCommandEvent& event); /** Idle event handler */ void OnIdle(wxIdleEvent & event); /** Run a conversion. */ void runConversion(void); /** Check whether GUI is active. @return Flag, GUI is active. */ bool isGuiActive(); /** Check setup. @return Flag to indicate setup ok or not. */ bool checkSetup(); }; #line 366 "DkWxBmepsFrame.wxc" #endif