#ifndef _WX_WINDOW_H_BASE_
#define _WX_WINDOW_H_BASE_
+#ifdef __GNUG__
+ #pragma interface "windowbase.h"
+#endif
+
// ----------------------------------------------------------------------------
// headers which we must include here
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxClientData;
class WXDLLEXPORT wxControl;
class WXDLLEXPORT wxCursor;
-class WXDLLEXPORT wxDc;
+class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxDropTarget;
class WXDLLEXPORT wxItemResource;
class WXDLLEXPORT wxLayoutConstraints;
// label is just the same as the title (but for, e.g., buttons it
// makes more sense to speak about labels)
- wxString GetLabel() const { return GetTitle(); }
+ virtual wxString GetLabel() const { return GetTitle(); }
// the window name is used for ressource setting in X, it is not the
// same as the window title/label
// generate a control id for the controls which were not given one by
// user
- static int NewControlId() { return ++ms_lastControlId; }
+ static int NewControlId() { return --ms_lastControlId; }
+ // get the id of the control following the one with the given
+ // (autogenerated) id
+ static int NextControlId(int id) { return id - 1; }
+ // get the id of the control preceding the one with the given
+ // (autogenerated) id
+ static int PrevControlId(int id) { return id + 1; }
// moving/resizing
// ---------------
virtual WXWidget GetHandle() const = 0;
protected:
- // the window id - a number which uniquely identifies a window among
+ // the window id - a number which uniquely identifies a window among
// its siblings unless it is -1
wxWindowID m_windowId;
// contains the last id generated by NewControlId
static int ms_lastControlId;
+ DECLARE_NO_COPY_CLASS(wxWindowBase);
DECLARE_EVENT_TABLE()
};
// global function
// ----------------------------------------------------------------------------
-extern wxWindow* WXDLLEXPORT wxGetActiveWindow();
-inline int WXDLLEXPORT NewControlId() { return wxWindowBase::NewControlId(); }
+WXDLLEXPORT extern wxWindow* wxGetActiveWindow();
+inline WXDLLEXPORT int NewControlId() { return wxWindowBase::NewControlId(); }
#endif
// _WX_WINDOW_H_BASE_