Added machinery to Enable/Disable windows. When a window is disabled, it

disables all of its children.  Every window maintains a bool indicating
whether it should be enabled (i.e. Enable() was called on it directly).
When a window is reenabled, it reenables children, but only if they are
actually supposed to be enabled. Override CocoaSetEnabled() in subclasses
to actually enable/disable a Cocoa control.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Elliott
2003-08-19 14:45:54 +00:00
parent 5751dd32c7
commit adb4816c3e
2 changed files with 38 additions and 0 deletions

View File

@@ -68,6 +68,14 @@ public:
void CocoaAddChild(wxWindowCocoa *child);
void CocoaRemoveFromParent(void);
protected:
// enable==false: disables the control
// enable==true: enables the control IF it should be enabled
bool EnableSelfAndChildren(bool enable);
// actually enable/disable the cocoa control, overridden by subclasses
virtual void CocoaSetEnabled(bool enable) { }
// Reflects the state for THIS window (ignoring disables by parents)
bool m_shouldBeEnabled;
void CocoaCreateNSScrollView();
void InitMouseEvent(wxMouseEvent &event, WX_NSEvent cocoaEvent);
virtual void Cocoa_FrameChanged(void);
@@ -164,6 +172,7 @@ public:
// NOTE: typically Close() is not virtual, but we want this for Cocoa
virtual bool Close( bool force = false );
virtual bool Show( bool show = true );
virtual bool Enable( bool enable = true );
};
#endif // __WX_COCOA_WINDOW_H__