virtual void AddChild( wxWindowBase *child );
virtual void RemoveChild( wxWindowBase *child );
+ virtual void SetLayoutDirection(wxLayoutDirection dir);
+ virtual wxLayoutDirection GetLayoutDirection() const;
+
// currently wxGTK2-only
void SetDoubleBuffered(bool on);
virtual GtkWidget* GetConnectWidget();
void ConnectWidget( GtkWidget *widget );
- // Called from several event handlers
- bool GTKCallbackCommonPrologue(struct _GdkEventAny *event) const;
+ // Called from several event handlers, if it returns true or false, the
+ // same value should be immediately returned by the handler without doing
+ // anything else. If it returns -1, the handler should continue as usual
+ int GTKCallbackCommonPrologue(struct _GdkEventAny *event) const;
+
+ // override this if some events should never be consumed by wxWidgets but
+ // but have to be left for the native control
+ //
+ // base version just does GetEventHandler()->ProcessEvent()
+ virtual bool GTKProcessEvent(wxEvent& event) const;
+
+ // Map GTK widget direction of the given widget to/from wxLayoutDirection
+ static wxLayoutDirection GTKGetLayout(GtkWidget *widget);
+ static void GTKSetLayout(GtkWidget *widget, wxLayoutDirection dir);
protected:
// Override GTKWidgetNeedsMnemonic and return true if your