// valid values for Show/HideWithEffect()
enum wxShowEffect
{
+ wxSHOW_EFFECT_NONE,
wxSHOW_EFFECT_ROLL_TO_LEFT,
wxSHOW_EFFECT_ROLL_TO_RIGHT,
wxSHOW_EFFECT_ROLL_TO_TOP,
// ----------------------------------------------------------------------------
extern WXDLLIMPEXP_DATA_CORE(wxWindowList) wxTopLevelWindows;
-extern WXDLLIMPEXP_DATA_CORE(wxList) wxPendingDelete;
+
+// declared here for compatibility only, main declaration is in wx/app.h
+extern WXDLLIMPEXP_DATA_BASE(wxList) wxPendingDelete;
// ----------------------------------------------------------------------------
// wxWindowBase is the base class for all GUI controls/widgets, this is the public
// Create()
wxWindowBase() ;
- // pseudo ctor (can't be virtual, called from ctor)
- bool CreateBase(wxWindowBase *parent,
- wxWindowID winid,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize,
- long style = 0,
- const wxValidator& validator = wxDefaultValidator,
- const wxString& name = wxPanelNameStr);
-
virtual ~wxWindowBase();
// deleting the window
// acceptable size using which it will still look "nice" in
// most situations)
wxSize GetBestSize() const;
-
+
void GetBestSize(int *w, int *h) const
{
wxSize s = GetBestSize();
virtual void SetWindowStyleFlag( long style ) { m_windowStyle = style; }
virtual long GetWindowStyleFlag() const { return m_windowStyle; }
- // just some (somewhat shorter) synonims
+ // just some (somewhat shorter) synonyms
void SetWindowStyle( long style ) { SetWindowStyleFlag(style); }
long GetWindowStyle() const { return GetWindowStyleFlag(); }
// scrollbars
// ----------
- // does the window have the scrollbar for this orientation?
- bool HasScrollbar(int orient) const
+ // can the window have the scrollbar in this orientation?
+ bool CanScroll(int orient) const
{
return (m_windowStyle &
(orient == wxHORIZONTAL ? wxHSCROLL : wxVSCROLL)) != 0;
}
+ // does the window have the scrollbar in this orientation?
+ bool HasScrollbar(int orient) const;
+
// configure the window scrollbars
virtual void SetScrollbar( int orient,
int pos,
// used only by Windows
virtual bool CanApplyThemeBorder() const { return true; }
+ // returns the main window of composite control; this is the window
+ // that FindFocus returns if the focus is in one of composite control's
+ // windows
+ virtual wxWindow *GetMainWindowOfCompositeControl()
+ { return (wxWindow*)this; }
+
protected:
+ // helper for the derived class Create() methods: the first overload, with
+ // validator parameter, should be used for child windows while the second
+ // one is used for top level ones
+ bool CreateBase(wxWindowBase *parent,
+ wxWindowID winid,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = 0,
+ const wxValidator& validator = wxDefaultValidator,
+ const wxString& name = wxPanelNameStr);
+
+ bool CreateBase(wxWindowBase *parent,
+ wxWindowID winid,
+ const wxPoint& pos,
+ const wxSize& size,
+ long style,
+ const wxString& name);
+
// event handling specific to wxWindow
virtual bool TryBefore(wxEvent& event);
virtual bool TryAfter(wxEvent& event);
// to true
void SendDestroyEvent();
- // returns the main window of composite control; this is the window
- // that FindFocus returns if the focus is in one of composite control's
- // windows
- virtual wxWindow *GetMainWindowOfCompositeControl()
- { return (wxWindow*)this; }
-
// this method should be implemented to use operating system specific code
// to really enable/disable the widget, it will only be called when we
// really need to enable/disable window and so no additional checks on the
// of the left and the right border in the x component of the returned size
// and the sum of the heights of the top and bottom borders in the y one
//
- // NB: this is new/temporary API only implemented by wxMSW so far and
- // subject to change, don't use
- virtual wxSize DoGetBorderSize() const
- {
- wxFAIL_MSG( "must be overridden if called" );
-
- return wxDefaultSize;
- }
+ // NB: this is currently only implemented by wxMSW and wxUniv so far and
+ // simply asserts in the other ports
+ virtual wxSize DoGetBorderSize() const;
// move the window to the specified location and resize it: this is called
// from both DoSetSize() and DoSetClientSize() and would usually just