#ifndef __GTKWINDOWH__
#define __GTKWINDOWH__
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface
#endif
// OnInternalIdle
virtual void OnInternalIdle();
+ // Internal represention of Update()
+ void GtkUpdate();
+
+ // For delayed background
+ void GtkSetBackgroundColour( const wxColour &colour );
+ void GtkSetForegroundColour( const wxColour &colour );
+
// For compatibility across platforms (not in event table)
void OnIdle(wxIdleEvent& WXUNUSED(event)) {}
// (i.e. in idle time, implemented in OnInternalIdle() ).
void GtkUpdateSize() { m_sizeSet = FALSE; }
+ // fix up the mouse event coords, used by wxListBox only so far
+ virtual void FixUpMouseEvent(GtkWidget * WXUNUSED(widget),
+ wxCoord& WXUNUSED(x),
+ wxCoord& WXUNUSED(y)) { }
+
+ // is this window transparent for the mouse events (as wxStaticBox is)?
+ virtual bool IsTransparentForMouse() const { return FALSE; }
+
+ // is this a radiobutton (used by radiobutton code itself only)?
+ virtual bool IsRadioButton() const { return FALSE; }
+
// position and size of the window
int m_x, m_y;
int m_width, m_height;
GdkICAttr *m_icattr;
#endif
+#ifndef __WXGTK20__
// The area to be cleared (and not just refreshed)
+ // We cannot make this distinction under GTK 2.0.
wxRegion m_clearRegion;
+#endif
// scrolling stuff
GtkAdjustment *m_hAdjust,*m_vAdjust;
bool m_hasVMT:1;
bool m_sizeSet:1;
bool m_resizing:1;
- bool m_isStaticBox:1; // faster than IS_KIND_OF
- bool m_isRadioButton:1; // faster than IS_KIND_OF
- bool m_isListBox:1; // faster than IS_KIND_OF
- bool m_isFrame:1; // faster than IS_KIND_OF
- bool m_acceptsFocus:1; // not wxStaticBox, not wxStaticBitmap etc.
- bool m_isScrolling;
- bool m_clipPaintRegion; // TRUE after ScrollWindow()
- bool m_queuedFullRedraw; // TRUE after DoMoveWindow
+ bool m_acceptsFocus:1; // true if not static
+ bool m_hasFocus:1; // true if == FindFocus()
+ bool m_isScrolling:1; // dragging scrollbar thumb?
+ bool m_clipPaintRegion:1; // TRUE after ScrollWindow()
+ bool m_queuedFullRedraw:1; // TRUE after DoMoveWindow
// These are true if the style were set before the widget was realized
// (typcally in the constructor) but the actual GTK style must not be set
virtual void DoSetToolTip( wxToolTip *tip );
#endif // wxUSE_TOOLTIPS
- // common part of all ctors (can't be virtual because called from ctor)
+protected:
+ // common part of all ctors (not virtual because called from ctor)
void Init();
private: