some app.h cleanup: minimize includes, use static cast

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Paul Cornett
2006-09-09 17:29:19 +00:00
parent 916eecaad6
commit 5ff14574fc
9 changed files with 38 additions and 30 deletions

View File

@@ -18,16 +18,9 @@
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
#include "wx/event.h" // for the base class #include "wx/event.h" // for the base class
#if wxUSE_GUI
#include "wx/window.h" // for wxTopLevelWindows
#include "wx/vidmode.h"
#endif // wxUSE_GUI
#include "wx/build.h" #include "wx/build.h"
#include "wx/init.h" // we must declare wxEntry() #include "wx/init.h" // we must declare wxEntry()
#include "wx/intl.h" #include "wx/intl.h" // for wxLayoutDirection
class WXDLLIMPEXP_BASE wxAppConsole; class WXDLLIMPEXP_BASE wxAppConsole;
class WXDLLIMPEXP_BASE wxAppTraits; class WXDLLIMPEXP_BASE wxAppTraits;
@@ -37,6 +30,7 @@ class WXDLLIMPEXP_BASE wxMessageOutput;
#if wxUSE_GUI #if wxUSE_GUI
class WXDLLEXPORT wxEventLoop; class WXDLLEXPORT wxEventLoop;
struct WXDLLIMPEXP_CORE wxVideoMode;
#endif #endif
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
@@ -447,15 +441,7 @@ public:
// return the "main" top level window (if it hadn't been set previously // return the "main" top level window (if it hadn't been set previously
// with SetTopWindow(), will return just some top level window and, if // with SetTopWindow(), will return just some top level window and, if
// there are none, will return NULL) // there are none, will return NULL)
virtual wxWindow *GetTopWindow() const virtual wxWindow *GetTopWindow() const;
{
if (m_topWindow)
return m_topWindow;
else if (wxTopLevelWindows.GetCount() > 0)
return wxTopLevelWindows.GetFirst()->GetData();
else
return (wxWindow *)NULL;
}
// control the exit behaviour: by default, the program will exit the // control the exit behaviour: by default, the program will exit the
// main loop (and so, usually, terminate) when the last top-level // main loop (and so, usually, terminate) when the last top-level
@@ -473,7 +459,7 @@ public:
// Get display mode that is used use. This is only used in framebuffer // Get display mode that is used use. This is only used in framebuffer
// wxWin ports (such as wxMGL or wxDFB). // wxWin ports (such as wxMGL or wxDFB).
virtual wxVideoMode GetDisplayMode() const { return wxVideoMode(); } virtual wxVideoMode GetDisplayMode() const;
// Set display mode to use. This is only used in framebuffer wxWin // Set display mode to use. This is only used in framebuffer wxWin
// ports (such as wxMGL or wxDFB). This method should be called from // ports (such as wxMGL or wxDFB). This method should be called from
// wxApp::OnInitGui // wxApp::OnInitGui
@@ -607,7 +593,7 @@ protected:
// //
// the cast is safe as in GUI build we only use wxApp, not wxAppConsole, and in // the cast is safe as in GUI build we only use wxApp, not wxAppConsole, and in
// console mode it does nothing at all // console mode it does nothing at all
#define wxTheApp ((wxApp *)wxApp::GetInstance()) #define wxTheApp wx_static_cast(wxApp*, wxApp::GetInstance())
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// global functions // global functions
@@ -674,7 +660,7 @@ public:
wxAppInitializer \ wxAppInitializer \
wxTheAppInitializer((wxAppInitializerFunction) wxCreateApp); \ wxTheAppInitializer((wxAppInitializerFunction) wxCreateApp); \
DECLARE_APP(appname) \ DECLARE_APP(appname) \
appname& wxGetApp() { return *(appname *)wxTheApp; } appname& wxGetApp() { return *wx_static_cast(appname*, wxApp::GetInstance()); }
// Same as IMPLEMENT_APP() normally but doesn't include themes support in // Same as IMPLEMENT_APP() normally but doesn't include themes support in
// wxUniversal builds // wxUniversal builds

View File

@@ -12,6 +12,8 @@
#ifndef _WX_MSW_STACKWALK_H_ #ifndef _WX_MSW_STACKWALK_H_
#define _WX_MSW_STACKWALK_H_ #define _WX_MSW_STACKWALK_H_
#include "wx/arrstr.h"
// these structs are declared in windows headers // these structs are declared in windows headers
struct _CONTEXT; struct _CONTEXT;
struct _EXCEPTION_POINTERS; struct _EXCEPTION_POINTERS;

View File

@@ -30,6 +30,7 @@
#include "wx/aui/floatpane.h" #include "wx/aui/floatpane.h"
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#include "wx/panel.h"
#include "wx/settings.h" #include "wx/settings.h"
#include "wx/app.h" #include "wx/app.h"
#include "wx/dcclient.h" #include "wx/dcclient.h"

View File

@@ -25,10 +25,9 @@
#endif #endif
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#include "wx/list.h"
#include "wx/app.h" #include "wx/app.h"
#include "wx/window.h"
#include "wx/bitmap.h" #include "wx/bitmap.h"
#include "wx/intl.h"
#include "wx/log.h" #include "wx/log.h"
#include "wx/msgdlg.h" #include "wx/msgdlg.h"
#include "wx/confbase.h" #include "wx/confbase.h"
@@ -40,6 +39,7 @@
#include "wx/evtloop.h" #include "wx/evtloop.h"
#include "wx/msgout.h" #include "wx/msgout.h"
#include "wx/thread.h" #include "wx/thread.h"
#include "wx/vidmode.h"
#include "wx/ptr_scpd.h" #include "wx/ptr_scpd.h"
#if defined(__WXMSW__) #if defined(__WXMSW__)
@@ -157,6 +157,21 @@ void wxAppBase::CleanUp()
#endif // wxUSE_THREADS #endif // wxUSE_THREADS
} }
// ----------------------------------------------------------------------------
wxWindow* wxAppBase::GetTopWindow() const
{
wxWindow* window = m_topWindow;
if (window == NULL && wxTopLevelWindows.GetCount() > 0)
window = wxTopLevelWindows.GetFirst()->GetData();
return window;
}
wxVideoMode wxAppBase::GetDisplayMode() const
{
return wxVideoMode();
}
#if wxUSE_CMDLINE_PARSER #if wxUSE_CMDLINE_PARSER
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------

View File

@@ -16,6 +16,8 @@
#if wxUSE_IMAGE #if wxUSE_IMAGE
#include "wx/imagbmp.h"
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#ifdef __WXMSW__ #ifdef __WXMSW__
#include "wx/msw/wrapwin.h" #include "wx/msw/wrapwin.h"
@@ -23,13 +25,12 @@
#include "wx/log.h" #include "wx/log.h"
#include "wx/app.h" #include "wx/app.h"
#include "wx/bitmap.h" #include "wx/bitmap.h"
#include "wx/module.h" #include "wx/palette.h"
#include "wx/intl.h"
#endif #endif
#include "wx/imagbmp.h"
#include "wx/filefn.h" #include "wx/filefn.h"
#include "wx/wfstream.h" #include "wx/wfstream.h"
#include "wx/intl.h"
#include "wx/quantize.h" #include "wx/quantize.h"
// For memcpy // For memcpy

View File

@@ -20,17 +20,16 @@
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#include "wx/log.h" #include "wx/log.h"
#include "wx/app.h"
#include "wx/hash.h" #include "wx/hash.h"
#include "wx/utils.h" #include "wx/utils.h"
#include "wx/bitmap.h"
#include "wx/math.h" #include "wx/math.h"
#include "wx/module.h" #include "wx/module.h"
#include "wx/palette.h"
#include "wx/intl.h"
#endif #endif
#include "wx/filefn.h" #include "wx/filefn.h"
#include "wx/wfstream.h" #include "wx/wfstream.h"
#include "wx/intl.h"
#if wxUSE_XPM #if wxUSE_XPM
#include "wx/xpmdecod.h" #include "wx/xpmdecod.h"

View File

@@ -20,6 +20,8 @@
#pragma hdrstop #pragma hdrstop
#endif #endif
#include "wx/wxchar.h"
#define _ISOC9X_SOURCE 1 // to get vsscanf() #define _ISOC9X_SOURCE 1 // to get vsscanf()
#define _BSD_SOURCE 1 // to still get strdup() #define _BSD_SOURCE 1 // to still get strdup()
@@ -35,11 +37,11 @@
#endif #endif
#ifndef WX_PRECOMP #ifndef WX_PRECOMP
#include "wx/wxchar.h"
#include "wx/string.h" #include "wx/string.h"
#include "wx/hash.h" #include "wx/hash.h"
#include "wx/utils.h" // for wxMin and wxMax
#include "wx/log.h"
#endif #endif
#include "wx/utils.h" // for wxMin and wxMax
#if defined(__WIN32__) && defined(wxNEED_WX_CTYPE_H) #if defined(__WIN32__) && defined(wxNEED_WX_CTYPE_H)
#include <windef.h> #include <windef.h>

View File

@@ -18,6 +18,7 @@
#include "wx/icon.h" #include "wx/icon.h"
#include "wx/math.h" #include "wx/math.h"
#include "wx/image.h" #include "wx/image.h"
#include "wx/colour.h"
#endif #endif
#include "wx/rawbmp.h" #include "wx/rawbmp.h"

View File

@@ -16,6 +16,7 @@
#include "wx/app.h" #include "wx/app.h"
#include "wx/utils.h" #include "wx/utils.h"
#include "wx/image.h" #include "wx/image.h"
#include "wx/colour.h"
#endif // WX_PRECOMP #endif // WX_PRECOMP
#include "wx/gtk/private.h" //for idle stuff #include "wx/gtk/private.h" //for idle stuff