/* 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: DkWxTraceFrame.wxc */ /** @file DkWxTraceFrame.h Header file for the DkWxTraceFrame module. */ #ifndef DKWXTRACEFRAME_H_INCLUDED /** Avoid multiple inclusions. */ #define DKWXTRACEFRAME_H_INCLUDED 1 #line 139 "DkWxTraceFrame.wxc" #ifndef DK3CONF_H_INCLUDED #include "dk3conf.h" #endif #ifndef DKCT_H_INCLUDED #include "dkct.h" #endif #line 150 "DkWxTraceFrame.wxc" /** Top level frame of the dkwxtrace program. */ class DkWxTraceFrame : public DkWxFrame { private: /** Event table. */ #if wxCHECK_VERSION(3,0,0) wxDECLARE_EVENT_TABLE(); #else DECLARE_EVENT_TABLE() #endif protected: /** Localized texts. */ wxChar const * const *sTexts; /** Localized dkChar texts. */ dkChar const * const *msg; /** Conversion options. */ DKCT_OPTION_SET options; /** Communication object for main thread and worker thread. */ DkWxCommunicator *pComm; /** Current directory. */ wxChar const *sDirectory; /** Color: Black. */ wxColour *cBlack; /** Color: Dark green. */ wxColour *cGreen; /** Color: Dark red. */ wxColour *cRed; /** Timestamp to close the application. */ dk3_time_t timeClose; /** Directory dialog x position. */ int ddx; /** Directory dialog y position. */ int ddy; /** Options dialog x position. */ int odx; /** Options dialog y position. */ int ody; /** Must save the current settings. */ bool bSaveSettings; /** Must save the current directory. */ bool bSaveDirectory; /** Timestamp for closing the application is scheduled. */ bool bCloseScheduled; /** GUI elements are active, not automatic closing. */ bool bGuiActive; /** The run was started automatically. */ bool bAutoStartRequested; /** Flag: GUI ok. */ bool dkctGUILayoutOK; /** Contents panel. */ wxPanel *dkctGUIContentsPanel; /** GUI element mbMain. */ #line 49 "DkWxTraceFrame.wxc" wxMenuBar *mbMain; /** GUI element mainSizer. */ #line 95 "DkWxTraceFrame.wxc" wxBoxSizer *mainSizer; /** GUI element tbMain. */ #line 19 "DkWxTraceFrame.wxc" wxToolBar *tbMain; /** GUI element bDir. */ #line 25 "DkWxTraceFrame.wxc" wxToolBarToolBase *bDir; /** GUI element bOptions. */ #line 31 "DkWxTraceFrame.wxc" wxToolBarToolBase *bOptions; /** GUI element bRun. */ #line 37 "DkWxTraceFrame.wxc" wxToolBarToolBase *bRun; /** GUI element bExit. */ #line 43 "DkWxTraceFrame.wxc" wxToolBarToolBase *bExit; /** GUI element menuFile. */ #line 53 "DkWxTraceFrame.wxc" wxMenu *menuFile; /** GUI element menuHelp. */ #line 60 "DkWxTraceFrame.wxc" wxMenu *menuHelp; /** GUI element miFileDir. */ #line 65 "DkWxTraceFrame.wxc" wxMenuItem *miFileDir; /** GUI element miFileOptions. */ #line 70 "DkWxTraceFrame.wxc" wxMenuItem *miFileOptions; /** GUI element miFileRun. */ #line 75 "DkWxTraceFrame.wxc" wxMenuItem *miFileRun; /** GUI element miFileExit. */ #line 80 "DkWxTraceFrame.wxc" wxMenuItem *miFileExit; /** GUI element miHelpContents. */ #line 85 "DkWxTraceFrame.wxc" wxMenuItem *miHelpContents; /** GUI element miHelpAbout. */ #line 90 "DkWxTraceFrame.wxc" wxMenuItem *miHelpAbout; /** GUI element verticalSizer. */ #line 101 "DkWxTraceFrame.wxc" wxBoxSizer *verticalSizer; /** GUI element contentsSizer. */ #line 113 "DkWxTraceFrame.wxc" wxGridBagSizer *contentsSizer; /** GUI element tLogmessages. */ #line 128 "DkWxTraceFrame.wxc" wxTextCtrl *tLogmessages; /** GUI element tStatus. */ #line 134 "DkWxTraceFrame.wxc" wxStaticText *tStatus; /** GUI element lDirectory. */ #line 122 "DkWxTraceFrame.wxc" wxStaticText *lDirectory; /** GUI element tDirectory. */ #line 125 "DkWxTraceFrame.wxc" wxStaticText *tDirectory; #line 241 "DkWxTraceFrame.wxc" public: /** Constructor. @param applicationName Application name. @param messageTexts Localized texts. @param ms Message 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. */ DkWxTraceFrame( wxChar const *applicationName, wxChar const * const *messageTexts, dkChar const * const *ms, DkWxAppHelper *applicationHelper, int wxid, DkWxHelpController *hc, int argc, wxChar **argv ); /** Destructor. */ ~DkWxTraceFrame(); /** Find index for splint special character. @param c Character to find index for. @return Index in range 0 to 17. */ int findSplintCharacterIndex(char c); /** Check whether we can close the window. @param isLast Flag: Last top level window. */ bool canClose(bool isLast); /** Menu event handler for File / Quit. @param event Event to process. */ void OnQuit(wxCommandEvent& event); /** Menu event handler for Help / About. */ void OnAbout(wxCommandEvent& event); /** Menu event handler for Help / Contents. */ void OnHelpContents(wxCommandEvent& event); /** Menu event handler for File / Directory. */ void OnChooseDirectory(wxCommandEvent& event); /** Menu event handler for File / Options. */ void OnSetOptions(wxCommandEvent& event); /** Menu event handler for File / Run. */ void OnRunConversion(wxCommandEvent& event); /** Handler for idle events. */ void OnIdle(wxIdleEvent & event); /** Run a conversion. */ void runConversion(); /** Check whether GUI elements are active. @return True if GUI elements can be used, false otherwise (autostart job running). */ bool isGuiActive(); protected: /** Retrieve stored preferences. */ void getData(void); }; #line 331 "DkWxTraceFrame.wxc" #endif