X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1b0fb34be895a9596131233edd1bf68b10c052b4..ef094fa075bc56bcbc33b12159c395ea28afda3b:/include/wx/x11/app.h diff --git a/include/wx/x11/app.h b/include/wx/x11/app.h index 8d7f62f1d9..80b3eafff0 100644 --- a/include/wx/x11/app.h +++ b/include/wx/x11/app.h @@ -12,7 +12,7 @@ #ifndef _WX_APP_H_ #define _WX_APP_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "app.h" #endif @@ -33,9 +33,10 @@ class WXDLLEXPORT wxApp; class WXDLLEXPORT wxKeyEvent; class WXDLLEXPORT wxLog; class WXDLLEXPORT wxEventLoop; +class WXDLLEXPORT wxXVisualInfo; // ---------------------------------------------------------------------------- -// the wxApp class for Motif - see wxAppBase for more details +// the wxApp class for wxX11 - see wxAppBase for more details // ---------------------------------------------------------------------------- class WXDLLEXPORT wxApp : public wxAppBase @@ -44,7 +45,7 @@ class WXDLLEXPORT wxApp : public wxAppBase public: wxApp(); - ~wxApp() {} + ~wxApp(); // override base class (pure) virtuals // ----------------------------------- @@ -55,11 +56,10 @@ public: virtual bool Pending(); virtual void Dispatch(); virtual bool Yield(bool onlyIfNeeded = FALSE); + virtual bool ProcessIdle(); virtual bool OnInitGui(); - virtual wxIcon GetStdIcon(int which) const; - // implementation from now on // -------------------------- @@ -74,10 +74,11 @@ public: bool SendIdleEvents(wxWindow* win); // Processes an X event. - virtual void ProcessXEvent(WXEvent* event); + virtual bool ProcessXEvent(WXEvent* event); - // Returns TRUE if an accelerator has been processed - virtual bool CheckForAccelerator(WXEvent* event); +#ifdef __WXDEBUG__ + virtual void OnAssert(const wxChar *file, int line, const wxChar* cond, const wxChar *msg); +#endif // __WXDEBUG__ protected: bool m_showOnInit; @@ -88,26 +89,51 @@ public: static void CleanUp(); void DeletePendingObjects(); - bool ProcessIdle(); WXWindow GetTopLevelWidget() const { return m_topLevelWidget; } WXColormap GetMainColormap(WXDisplay* display); - WXDisplay* GetInitialDisplay() const { return m_initialDisplay; } long GetMaxRequestSize() const { return m_maxRequestSize; } // This handler is called when a property change event occurs - virtual void HandlePropertyChange(WXEvent *event); - + virtual bool HandlePropertyChange(WXEvent *event); + + // Values that can be passed on the command line. + // Returns -1, -1 if none specified. + const wxSize& GetInitialSize() const { return m_initialSize; } + bool GetShowIconic() const { return m_showIconic; } + +#if wxUSE_UNICODE + // Global context for Pango layout. Either use X11 + // or use Xft rendering according to GDK_USE_XFT + // environment variable + PangoContext* GetPangoContext(); +#endif + + wxXVisualInfo* GetVisualInfo(WXDisplay* display) + { + // this should be implemented correctly for wxBitmap to work + // with multiple display + return m_visualInfo; + } + + // We need this before creating the app + static WXDisplay* GetDisplay() { return ms_display; } + static WXDisplay* ms_display; + public: - static long sm_lastMessageTime; - int m_nCmdShow; + static long sm_lastMessageTime; + bool m_showIconic; + wxSize m_initialSize; + +#if !wxUSE_NANOX + wxXVisualInfo* m_visualInfo; +#endif protected: bool m_keepGoing; WXWindow m_topLevelWidget; WXColormap m_mainColormap; - WXDisplay* m_initialDisplay; long m_maxRequestSize; wxEventLoop* m_mainLoop;