]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/configtool/src/wxconfigtool.cpp
fixed memory leak in Submit(cmd, false) (bug 1037115)
[wxWidgets.git] / utils / configtool / src / wxconfigtool.cpp
index f667b1b632da609dfcea6958aa54d5a3380ea592..509039926c946ad109f6e6a16400db740adf7a5b 100644 (file)
@@ -9,30 +9,36 @@
 // Licence:
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation wxconfigtool.h
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
+#pragma implementation "wxconfigtool.h"
 #endif
 
-#include "wx/wx.h"
+// For compilers that support precompilation, includes "wx/wx.h".
+#include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
 #pragma hdrstop
 #endif
 
-#include "wx/config.h"
+#ifndef WX_PRECOMP
+
 #include "wx/laywin.h"
-#include "wx/image.h"
 #include "wx/menuitem.h"
 #include "wx/tooltip.h"
+#include "wx/variant.h"
+
+#endif
+
 #include "wx/cshelp.h"
+#include "wx/helphtml.h"
 #include "wx/html/htmprint.h"
 #include "wx/html/htmlwin.h"
+#include "wx/image.h"
 #include "wx/filesys.h"
 #include "wx/fs_mem.h"
 #include "wx/fs_zip.h"
 #include "wx/wfstream.h"
-#include "wx/variant.h"
-
+#include "wx/config.h"
 #include "wxconfigtool.h"
 #include "configtooldoc.h"
 #include "configtoolview.h"
@@ -57,7 +63,10 @@ ctApp::~ctApp()
 
 bool ctApp::OnInit(void)
 {
+
+#if wxUSE_LOG
     wxLog::SetTimestamp(NULL);
+#endif // wxUSE_LOG
     
     wxHelpProvider::Set(new wxSimpleHelpProvider);
 
@@ -73,7 +82,7 @@ bool ctApp::OnInit(void)
     wxImage::AddHandler( new wxGIFHandler );
 #endif
 
-#ifdef __WXMSW__
+#if wxUSE_MS_HTML_HELP && !defined(__WXUNIVERSAL__)
     m_helpController = new wxCHMHelpController;
     m_helpControllerReference = new wxCHMHelpController;
 #else
@@ -89,16 +98,18 @@ bool ctApp::OnInit(void)
     wxString currentDir = wxGetCwd();
 
     // Use argv to get current app directory
-    m_appDir = apFindAppPath(argv[0], currentDir, wxT("WXCONFIGTOOLDIR"));
+    wxString argv0(argv[0]);
+    wxString appVariableName(wxT("WXCONFIGTOOLDIR"));
+    m_appDir = apFindAppPath(argv0, currentDir, appVariableName);
 
 #ifdef __WXMSW__
     // If the development version, go up a directory.
-    if ((m_appDir.Right(5).CmpNoCase("DEBUG") == 0) ||
-        (m_appDir.Right(11).CmpNoCase("DEBUGSTABLE") == 0) ||
-        (m_appDir.Right(7).CmpNoCase("RELEASE") == 0) ||
-        (m_appDir.Right(13).CmpNoCase("RELEASESTABLE") == 0) ||
-        (m_appDir.Right(10).CmpNoCase("RELEASEDEV") == 0) ||
-        (m_appDir.Right(8).CmpNoCase("DEBUGDEV") == 0)
+    if ((m_appDir.Right(5).CmpNoCase(_T("DEBUG")) == 0) ||
+        (m_appDir.Right(11).CmpNoCase(_T("DEBUGSTABLE")) == 0) ||
+        (m_appDir.Right(7).CmpNoCase(_T("RELEASE")) == 0) ||
+        (m_appDir.Right(13).CmpNoCase(_T("RELEASESTABLE")) == 0) ||
+        (m_appDir.Right(10).CmpNoCase(_T("RELEASEDEV")) == 0) ||
+        (m_appDir.Right(8).CmpNoCase(_T("DEBUGDEV")) == 0)
         )
         m_appDir = wxPathOnly(m_appDir);
 #endif
@@ -120,21 +131,21 @@ bool ctApp::OnInit(void)
     wxString helpFilePath(GetFullAppPath(_("configtool")));
     m_helpController->Initialize(helpFilePath);
     
-    ctMainFrame* frame = new ctMainFrame(m_docManager, NULL, -1, wxGetApp().GetSettings().GetAppName(),
+    ctMainFrame* frame = new ctMainFrame(m_docManager, NULL, wxID_ANY, wxGetApp().GetSettings().GetAppName(),
         GetSettings().m_frameSize.GetPosition(), GetSettings().m_frameSize.GetSize(),
-        wxDEFAULT_FRAME_STYLE);
+        wxDEFAULT_FRAME_STYLE|wxNO_FULL_REPAINT_ON_RESIZE|wxCLIP_CHILDREN);
     SetTopWindow(frame);
 
     switch (wxGetApp().GetSettings().m_frameStatus)
     {
     case ctSHOW_STATUS_MAXIMIZED:
         {
-            frame->Maximize(TRUE);
+            frame->Maximize(true);
             break;
         }
     case ctSHOW_STATUS_MINIMIZED:
         {
-            frame->Iconize(TRUE);
+            frame->Iconize(true);
             break;
         }
     default:
@@ -171,7 +182,7 @@ bool ctApp::OnInit(void)
         // Load the file
         wxDocument* doc = m_docManager->CreateDocument(arg, wxDOC_SILENT);
         if (doc)
-            doc->SetDocumentSaved(TRUE);
+            doc->SetDocumentSaved(true);
     }
     else
     {
@@ -180,13 +191,13 @@ bool ctApp::OnInit(void)
             // Load the file that was last loaded
             wxDocument* doc = m_docManager->CreateDocument(GetSettings().m_lastFilename, wxDOC_SILENT);
             if (doc)
-                doc->SetDocumentSaved(TRUE);
+                doc->SetDocumentSaved(true);
         }
     }
     
-    GetTopWindow()->Show(TRUE);
+    GetTopWindow()->Show(true);
     
-    return TRUE;
+    return true;
 }
 
 int ctApp::OnExit(void)