X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3da17724b6a873579628356a92ade9c41f07d5a3..b1f5d087c78df77408b3b2774695b1e0d148e6fb:/include/wx/generic/panelg.h diff --git a/include/wx/generic/panelg.h b/include/wx/generic/panelg.h index 308be49ecb..44ea182c1c 100644 --- a/include/wx/generic/panelg.h +++ b/include/wx/generic/panelg.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: panelg.h -// Purpose: wxPanel: similar to wxWindows but is coloured as for a dialog +// Name: wx/generic/panelg.h +// Purpose: wxPanel: a container for child controls // Author: Julian Smart // Modified by: // Created: 01/02/97 @@ -13,14 +13,23 @@ #define _WX_GENERIC_PANEL_H_ #ifdef __GNUG__ -#pragma interface "panelg.h" + #pragma interface "panelg.h" #endif +// ---------------------------------------------------------------------------- +// headers and forward declarations +// ---------------------------------------------------------------------------- + #include "wx/window.h" -#include "wx/button.h" + +class WXDLLEXPORT wxButton; WXDLLEXPORT_DATA(extern const wxChar*) wxPanelNameStr; +// ---------------------------------------------------------------------------- +// wxPanel contains other controls and implements TAB traversal between them +// ---------------------------------------------------------------------------- + class WXDLLEXPORT wxPanel : public wxWindow { public: @@ -62,9 +71,11 @@ public: // to the dialog via validators. virtual void InitDialog(); +#if wxUSE_BUTTON // a default button is activated when Enter is pressed wxButton *GetDefaultItem() const { return m_btnDefault; } void SetDefaultItem(wxButton *btn) { m_btnDefault = btn; } +#endif // wxUSE_BUTTON // implementation from now on // -------------------------- @@ -88,20 +99,30 @@ public: void SetLastFocus(wxWindow *win) { m_winLastFocused = win; } wxWindow *GetLastFocus() const { return m_winLastFocused; } + virtual void RemoveChild(wxWindowBase *child); + protected: // common part of all ctors void Init(); + // set the focus to the child which had it the last time + bool SetFocusToChild(); + // the child which had the focus last time this panel was activated wxWindow *m_winLastFocused; +#if wxUSE_BUTTON // a default button or NULL wxButton *m_btnDefault; +#endif // wxUSE_BUTTON private: DECLARE_DYNAMIC_CLASS(wxPanel) DECLARE_EVENT_TABLE() }; +// this function is for wxWindows use only +extern bool wxSetFocusToChild(wxWindow *win, wxWindow **child); + #endif // _WX_GENERIC_PANEL_H_