- DECLARE_DYNAMIC_CLASS(wxToolBar95)
- public:
- /*
- * Public interface
- */
-
- wxToolBar95(void);
-
-#if WXWIN_COMPATIBILITY > 0
- inline wxToolBar95(wxWindow *parent, int x, int y, int w, int h,
- long style = wxNO_BORDER, int orientation = wxVERTICAL, int RowsOrColumns = 2,
- const char *name = wxToolBarNameStr)
- {
- Create(parent, -1, wxPoint(x, y), wxSize(w, h), style, orientation, RowsOrColumns, name);
- }
-#endif
- inline wxToolBar95(wxWindow *parent, const wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
- const long style = wxNO_BORDER, const int orientation = wxVERTICAL,
- const int RowsOrColumns = 1, const wxString& name = wxToolBarNameStr)
- {
- Create(parent, id, pos, size, style, orientation, RowsOrColumns, name);
- }
- ~wxToolBar95(void);
-
- bool Create(wxWindow *parent, const wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
- const long style = wxNO_BORDER, const int orientation = wxVERTICAL,
- const int RowsOrColumns = 1, const wxString& name = wxToolBarNameStr);
-
- // Call default behaviour
- void OnPaint(wxPaintEvent& event) { Default() ; }
- void OnSize(wxSizeEvent& event) { Default() ; }
- void OnMouseEvent(wxMouseEvent& event) { Default() ; }
- void OnKillFocus(wxFocusEvent& event) { Default() ; }
-
- // Handle wxToolBar95 events
-
- // If pushedBitmap is NULL, a reversed version of bitmap is
- // created and used as the pushed/toggled image.
- // If toggle is TRUE, the button toggles between the two states.
- wxToolBarTool *AddTool(const int toolIndex, const wxBitmap& bitmap, const wxBitmap& pushedBitmap = wxNullBitmap,
- const bool toggle = FALSE, const long xPos = -1, const long yPos = -1, wxObject *clientData = NULL,
- const wxString& helpString1 = "", const wxString& helpString2 = "");
-
- // New members
- // Set default bitmap size
- void SetDefaultSize(const wxSize& size);
- void EnableTool(const int toolIndex, const bool enable); // additional drawing on enabling
- void ToggleTool(const int toolIndex, const bool toggle); // toggle is TRUE if toggled on
- void ClearTools(void);
-
- // The button size is bigger than the bitmap size
- wxSize GetDefaultButtonSize(void) const;
-
- wxSize GetMaxSize(void) const;
- void GetSize(int *w, int *y) const;
-
- // Add all the buttons: required for Win95.
- virtual bool CreateTools(void);
- virtual void SetRows(const int nRows);
- virtual void Layout(void) {}
-
- // IMPLEMENTATION
- bool MSWCommand(const WXUINT param, const WXWORD id);
- bool MSWNotify(const WXWPARAM wParam, const WXLPARAM lParam);
-
- // Responds to colour changes
- void OnSysColourChanged(wxSysColourChangedEvent& event);
+public:
+ // ctors and dtor
+ wxToolBar() { Init(); }
+
+ wxToolBar(wxWindow *parent,
+ wxWindowID id,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxNO_BORDER | wxTB_HORIZONTAL,
+ const wxString& name = wxToolBarNameStr)
+ {
+ Init();
+
+ Create(parent, id, pos, size, style, name);
+ }
+
+ bool Create(wxWindow *parent,
+ wxWindowID id,
+ const wxPoint& pos = wxDefaultPosition,
+ const wxSize& size = wxDefaultSize,
+ long style = wxNO_BORDER | wxTB_HORIZONTAL,
+ const wxString& name = wxToolBarNameStr);
+
+ virtual ~wxToolBar();
+
+ // override/implement base class virtuals
+ virtual wxToolBarToolBase *FindToolForPosition(wxCoord x, wxCoord y) const;
+
+ virtual bool Realize();
+
+ virtual void SetToolBitmapSize(const wxSize& size);
+ virtual wxSize GetToolSize() const;
+
+ virtual void SetRows(int nRows);
+
+ // implementation only from now on
+ // -------------------------------
+
+ virtual void SetWindowStyleFlag(long style);
+
+ virtual bool MSWCommand(WXUINT param, WXWORD id);
+ virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
+
+ void OnMouseEvent(wxMouseEvent& event);
+ void OnSysColourChanged(wxSysColourChangedEvent& event);
+ void OnEraseBackground(wxEraseEvent& event);
+
+ void SetFocus() {}
+
+ static WXHBITMAP MapBitmap(WXHBITMAP bitmap, int width, int height);