virtual WXWidget GetWXWidget() const = 0;
virtual void SetBackgroundColour( const wxColour& col ) = 0;
+ virtual bool SetBackgroundStyle(wxBackgroundStyle style) = 0;
// all coordinates in native parent widget relative coordinates
virtual void GetContentArea( int &left , int &top , int &width , int &height ) const = 0;
virtual bool ButtonClickDidStateChange() = 0;
virtual void InstallEventHandler( WXWidget control = NULL ) = 0;
+
+ // Mechanism used to keep track of whether a change should send an event
+ // Do SendEvents(false) when starting actions that would trigger programmatic events
+ // and SendEvents(true) at the end of the block.
+ virtual void SendEvents(bool shouldSendEvents) { m_shouldSendEvents = shouldSendEvents; }
+ virtual bool ShouldSendEvents() { return m_shouldSendEvents; }
// static methods for associating native controls and their implementations
wxWindowMac* m_wxPeer;
bool m_needsFocusRect;
bool m_needsFrame;
+ bool m_shouldSendEvents;
DECLARE_ABSTRACT_CLASS(wxWidgetImpl)
};
wxNonOwnedWindow* GetWXPeer() { return m_wxPeer; }
+ static wxNonOwnedWindowImpl*
+ FindFromWXWindow(WXWindow window);
+
+ static void RemoveAssociations( wxNonOwnedWindowImpl* impl);
+
+ static void Associate( WXWindow window, wxNonOwnedWindowImpl *impl );
+
// static creation methods, must be implemented by all toolkits
+ static wxNonOwnedWindowImpl* CreateNonOwnedWindow( wxNonOwnedWindow* wxpeer, wxWindow* parent, WXWindow native) ;
+
static wxNonOwnedWindowImpl* CreateNonOwnedWindow( wxNonOwnedWindow* wxpeer, wxWindow* parent, const wxPoint& pos, const wxSize& size,
long style, long extraStyle, const wxString& name ) ;