X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2e992e06a71d90f1df597441af36f69ef390089a..8e77fd8bca165aab9709649d79a7cbc6a172d4e1:/include/wx/gtk1/window.h?ds=sidebyside diff --git a/include/wx/gtk1/window.h b/include/wx/gtk1/window.h index 21adf05d3c..43d8be0524 100644 --- a/include/wx/gtk1/window.h +++ b/include/wx/gtk1/window.h @@ -10,15 +10,17 @@ #ifndef __GTKWINDOWH__ #define __GTKWINDOWH__ -// helper structure that holds class that holds GtkIMContext object and -// some additional data needed for key events processing -struct wxGtkIMData; +typedef struct _GtkTooltips GtkTooltips; +#ifdef HAVE_XIM +typedef struct _GdkIC GdkIC; +typedef struct _GdkICAttr GdkICAttr; +#endif //----------------------------------------------------------------------------- // callback definition for inserting a window (internal) //----------------------------------------------------------------------------- -class WXDLLIMPEXP_CORE wxWindowGTK; +class WXDLLIMPEXP_FWD_CORE wxWindowGTK; typedef void (*wxInsertChildFunction)( wxWindowGTK*, wxWindowGTK* ); //----------------------------------------------------------------------------- @@ -57,7 +59,7 @@ public: virtual void Lower(); virtual bool Show( bool show = true ); - virtual bool Enable( bool enable = true ); + virtual void DoEnable( bool enable ); virtual void SetWindowStyleFlag( long style ); @@ -84,16 +86,6 @@ public: virtual int GetCharHeight() const; virtual int GetCharWidth() const; - virtual void GetTextExtent(const wxString& string, - int *x, int *y, - int *descent = (int *) NULL, - int *externalLeading = (int *) NULL, - const wxFont *theFont = (const wxFont *) NULL) - const; - -#if wxUSE_MENUS_NATIVE - virtual bool DoPopupMenu( wxMenu *menu, int x, int y ); -#endif // wxUSE_MENUS_NATIVE virtual void SetScrollbar( int orient, int pos, int thumbVisible, int range, bool refresh = true ); @@ -102,7 +94,7 @@ public: virtual int GetScrollThumb( int orient ) const; virtual int GetScrollRange( int orient ) const; virtual void ScrollWindow( int dx, int dy, - const wxRect* rect = (wxRect *) NULL ); + const wxRect* rect = NULL ); #if wxUSE_DRAG_AND_DROP virtual void SetDropTarget( wxDropTarget *dropTarget ); @@ -110,6 +102,8 @@ public: virtual bool IsDoubleBuffered() const { return false; } + GdkWindow* GTKGetDrawingWindow() const; + // implementation // -------------- @@ -120,17 +114,12 @@ public: // OnInternalIdle virtual void OnInternalIdle(); - // Internal represention of Update() + // Internal representation of Update() void GtkUpdate(); // For compatibility across platforms (not in event table) void OnIdle(wxIdleEvent& WXUNUSED(event)) {} - // wxGTK-specific: called recursively by Enable, - // to give widgets an opportunity to correct their colours after they - // have been changed by Enable - virtual void OnParentEnable( bool WXUNUSED(enable) ) {} - // Used by all window classes in the widget creation process. bool PreCreation( wxWindowGTK *parent, const wxPoint &pos, const wxSize &size ); void PostCreation(); @@ -166,7 +155,7 @@ public: void GtkUpdateScrollbar(int orient); // Called from GTK signal handlers. it indicates that - // the layouting functions have to be called later on + // the layout functions have to be called later on // (i.e. in idle time, implemented in OnInternalIdle() ). void GtkUpdateSize() { m_sizeSet = false; } @@ -229,6 +218,16 @@ public: wxInsertChildFunction m_insertCallback; // implement the base class pure virtuals + virtual void DoGetTextExtent(const wxString& string, + int *x, int *y, + int *descent = NULL, + int *externalLeading = NULL, + const wxFont *theFont = NULL) const; + +#if wxUSE_MENUS_NATIVE + virtual bool DoPopupMenu( wxMenu *menu, int x, int y ); +#endif // wxUSE_MENUS_NATIVE + virtual void DoClientToScreen( int *x, int *y ) const; virtual void DoScreenToClient( int *x, int *y ) const; virtual void DoGetPosition( int *x, int *y ) const; @@ -267,7 +266,7 @@ protected: private: DECLARE_DYNAMIC_CLASS(wxWindowGTK) - DECLARE_NO_COPY_CLASS(wxWindowGTK) + wxDECLARE_NO_COPY_CLASS(wxWindowGTK); }; extern WXDLLIMPEXP_CORE wxWindow *wxFindFocusedChild(wxWindowGTK *win);