diff options
Diffstat (limited to 'support/dktools/DkClockApp.cpt')
-rw-r--r-- | support/dktools/DkClockApp.cpt | 463 |
1 files changed, 0 insertions, 463 deletions
diff --git a/support/dktools/DkClockApp.cpt b/support/dktools/DkClockApp.cpt deleted file mode 100644 index 7051c5cfb0..0000000000 --- a/support/dktools/DkClockApp.cpt +++ /dev/null @@ -1,463 +0,0 @@ -%% options - -copyright owner = Dirk Krause -copyright year = 2013-xxxx -SPDX-License-Identifier: BSD-3-Clause - - - -%% header - - -/** Application class, derived from wxApp, one instance per program. -*/ -class DkClockApp : public wxApp -{ - protected: - - /** Helper object. - */ - DkWxAppHelper *pHelper; - - /** Controller fr online help. - */ - DkWxHelpController *helpController; - - protected: - - /** Show error message if there is not sufficient memory available. - */ - void - ShowMemoryErrorMessage(void); - - public: - - /** Application initialization. - @return true on success, false on error. - */ - virtual - bool - OnInit(); - - /** Application shutdown. - @return 0 on success, any other value indicates an error. - */ - virtual - int - OnExit(); -}; - - - -/** Declaration as the wxApp object. -*/ - -#if wxCHECK_VERSION(3,0,0) -wxDECLARE_APP(DkClockApp); -#else -DECLARE_APP(DkClockApp) -#endif - - - -%% module - -#include "dk3conf.h" -#include "wxdkclock.h" - - -$!trace-include - - - -/** Localized wxChar texts. -*/ -static wxChar const * wxdkclock_texts[] = { -$!string-table macro=wxT -# -# 0: Menu "File" -# -File -# -# 1: Menu item "File/Exit" -# -Exit -# -# 2: Tool tip text for menu item "File/Exit" -# -Exit the application -# -# 3: Menu "Help" -# -Help -# -# 4: Menu item "Help/About" -# -About -# -# 5: Tooltip text for menu item "Help/About" -# -Show version information -# -# 6: Menu item "Help/Contents" -# -Contents -# -# 7: Tooltip text for menu item "Help/Contents" -# -Open table of contents -# -# 8: Check box in options dialog -# -Alert -# -# 9: Copyright notice. -# -Copyright (c) -# -# 10: Dialog box title "About ..." -# -About -# -# 11: This program uses the following libraries -# -This program uses the following libraries: -# -# 12: See -# -See: -# -# 13: __CHANGE__ 015: Text for dummy label, can be reused if lDummy removed. -# -Options -# -# 14 15: Menu item: Options -# -Alert -Enable/disable alert, set alert time -# -# 16: Dialog box title -# -Options -# -# 17 18: OK button -# -OK -Apply settings and close dialog box. -# -# 19 20: Cancel button -# -Cancel -Close dialog box and discard settings -# -# 21: Minute -# -Minute: -# -# 22: Hour -# -Hour: -# -# 23: Tool tip "Enable or disable alert" -# -Enable or disable alert -# -# 24 25: Tool tips Choose alert time. -# -Choose alert time (hour) -Choose alert time (minute) -# -# 26 27: Task bar icon popup menu entries -# -Restore window -Exit application -# -# 28 29 Menu item: Hide -# -Hide -Hide main window -# -# 30 Menu: Colour -# -Colour -# -# 31 32 Menu item: Normal state -# -Normal -Clock colour in normal state -# -# 33 34 Menu item: Alert state -# -Alert -Clock colour in alert state -$!end -}; - - - -/** Non-localized wxChar texts. -*/ -static wxChar const * wxdkclock_nl_wx[] = { -$!string-table macro=wxT -# -# 0: Program name. -# -WxDkClock -# -# 1: Program version. -# -3.0.6 -# -# 2: Copyright owner name. -# -Dirk Krause -# -# 3: Software vendor name. -# -DKrause -# -# 4: Resource name of Windows icon -# -aaaaa -# -# 5: Windows chm help file name -# -wxdkclock.chm -# -# 6: non-Windows htb help file name -# -wxdkclock.htb -# -# 7: Space -# - -# -# 8: Newline -# -\n -# -# 9 10 11 12 13 14 15: List of libraries used. -# -DK tools, wxWidgets, libpng, libjpeg, libtiff, zlib. -http://sourceforge.net/p/dktools/wiki/Home/ -http://www.wxwidgets.org -http://www.libpng.org/pub/png/libpng.html -http://www.ijg.org -http://www.remotesensing.org/libtiff -http://www.zlib.net -# -# 16 17 -# -Error -Not enough memory (RAM)! -$!end -}; - - - -/** Non-localized dkChar texts. -*/ -static dkChar const * wxdkclock_nl_dk[] = { -$!string-table macro=dkT -# -# 0: Program group name. -# -dktools -# -# 1: String table name. -# -wxdkclock.str -$!end -}; - - - -/** Implementation of the wxApp functionality. -*/ - -#if wxCHECK_VERSION(3,0,0) -wxIMPLEMENT_APP(DkClockApp); -#else -IMPLEMENT_APP(DkClockApp) -#endif - - -bool -DkClockApp::OnInit() -{ - DkClockFrame *frame = NULL; - wxChar const * const *localizedTexts = NULL; - wxPNGHandler *phPng = NULL; - wxXPMHandler *phXpm = NULL; - wxICOHandler *phIco = NULL; - wxArchiveFSHandler *phArchiveFs = NULL; - bool back = false; - -#if USE_WXAPP_ONINIT - if(wxApp::OnInit()) { -#endif - $!trace-init wxdkclock.deb - $? "+ DkClockApp::OnInit" - /* Initialize members. */ - pHelper = NULL; - helpController = NULL; - - /* Set up helper object. */ - pHelper = new DkWxAppHelper( - argv[0], - wxdkclock_nl_wx[3], - wxdkclock_nl_dk[0] - ); - if(!(pHelper)) { ShowMemoryErrorMessage(); goto finished; } - if(!(pHelper->checkSetup())) { goto finished; } - - /* Add image and file system handlers for online help. */ - phPng = new wxPNGHandler(); - if (NULL != phPng) { - wxImage::AddHandler(phPng); - } else { - ShowMemoryErrorMessage(); - goto finished; - } - - /* CLANG STATIC ANALYSIS COMPLAINS ABOUT A POTENTIAL MEMORY LEAK, - because phPng is set using the new operator but there is no - matching delete. - The handler object is deleted from within wxImage destructor, - there is no memory leak. - */ - - phXpm = new wxXPMHandler(); - if (NULL != phXpm) { - wxImage::AddHandler(phXpm); - } else { - ShowMemoryErrorMessage(); - goto finished; - } - - /* CLANG STATIC ANALYSIS COMPLAINS ABOUT A POTENTIAL MEMORY LEAK, - because phXpm is set using the new operator but there is no - matching delete. - The handler object is deleted from within wxImage destructor, - there is no memory leak. - */ - - phIco = new wxICOHandler(); - if (NULL != phIco) { - wxImage::AddHandler(phIco); - } else { - ShowMemoryErrorMessage(); - goto finished; - } - - /* CLANG STATIC ANALYSIS COMPLAINS ABOUT A POTENTIAL MEMORY LEAK, - because phIco is set using the new operator but there is no - matching delete. - The handler object is deleted from within wxImage destructor, - there is no memory leak. - */ - - phArchiveFs = new wxArchiveFSHandler(); - if (NULL != phArchiveFs) { - wxFileSystem::AddHandler(phArchiveFs); - } else { - ShowMemoryErrorMessage(); - goto finished; - } - - /* CLANG STATIC ANALYSIS COMPLAINS ABOUT A POTENTIAL MEMORY LEAK, - because phArchiveFs is set using the new operator but there is no - matching delete. - The handler object is deleted from within wxFileSystem destructor, - there is no memory leak. - */ - - localizedTexts = pHelper->getStringTable( - wxdkclock_texts, wxdkclock_nl_dk[1] - ); - if(!(localizedTexts)) { localizedTexts = wxdkclock_texts; } - - /* Set up online help controller. */ - helpController = new DkWxHelpController( - pHelper, - wxdkclock_nl_wx[5], - wxdkclock_nl_wx[6] - ); - if(!(helpController)) { ShowMemoryErrorMessage(); goto finished; } - - /* Create and show frame. */ - frame = new DkClockFrame( - DkClockFrame_MainWindow, - pHelper, - helpController, - argc, - argv, - localizedTexts, - wxdkclock_nl_wx, - wxdkclock_nl_dk - ); - if(!(frame)) { ShowMemoryErrorMessage(); goto finished; } - frame->restorePosition(); - frame->Show(); - back = true; - - /* Release resources if initialization failed. */ - finished: - if(!(back)) { - if(helpController) { - delete(helpController); - helpController = NULL; - } - if(pHelper) { - delete(pHelper); - pHelper = NULL; - } - } $? "- DkClockApp::OnInit %d", ((back) ? 1 : 0) -#if USE_WXAPP_ONINIT - } -#endif - return back; -} - - - -int -DkClockApp::OnExit() -{ - int back = 0; - $? "+ DkClockApp::OnExit" - /* Release resources. */ - if(helpController) { - delete(helpController); - helpController = NULL; - } - if(pHelper) { - delete(pHelper); - pHelper = NULL; - } - $? "- DkClockApp::OnExit %d", back - $!trace-end - return back; -} - - - -void -DkClockApp::ShowMemoryErrorMessage(void) -{ - const wxChar *s_title = NULL; - const wxChar *s_text = NULL; - - if (NULL != pHelper) { - s_title = pHelper->getBasicString(3); - s_text = pHelper->getBasicString(9); - } - if (NULL == s_title) { - s_title = wxdkclock_nl_wx[16]; - } - if (NULL == s_text) { - s_text = wxdkclock_nl_wx[17]; - } - wxMessageBox(s_text, s_title, (wxOK | wxCENTRE | wxICON_ERROR)); -} - |