f8ecadbf74
Add classes declarations to Doxygen-generated documentation. This doesn't replace the real documentation but is better than nothing. See #10232. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
509 lines
15 KiB
Objective-C
509 lines
15 KiB
Objective-C
///////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/aui/toolbar.h
|
|
// Purpose: Documentation of wxAuiToolBar and related classes.
|
|
// Created: 2011-01-17
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) 2011 wxWidgets development team
|
|
// Licence: wxWindows licence
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
/**
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
enum wxAuiToolBarStyle
|
|
{
|
|
wxAUI_TB_TEXT = 1 << 0,
|
|
wxAUI_TB_NO_TOOLTIPS = 1 << 1,
|
|
wxAUI_TB_NO_AUTORESIZE = 1 << 2,
|
|
wxAUI_TB_GRIPPER = 1 << 3,
|
|
wxAUI_TB_OVERFLOW = 1 << 4,
|
|
/**
|
|
Using this style forces the toolbar to be vertical and be only dockable
|
|
to the left or right sides of the window whereas by default it can be
|
|
horizontal or vertical and be docked anywhere.
|
|
*/
|
|
wxAUI_TB_VERTICAL = 1 << 5,
|
|
wxAUI_TB_HORZ_LAYOUT = 1 << 6,
|
|
/**
|
|
Analogous to wxAUI_TB_VERTICAL, but forces the toolbar
|
|
to be horizontal
|
|
*/
|
|
wxAUI_TB_HORIZONTAL = 1 << 7,
|
|
wxAUI_TB_HORZ_TEXT = (wxAUI_TB_HORZ_LAYOUT | wxAUI_TB_TEXT),
|
|
wxAUI_ORIENTATION_MASK = (wxAUI_TB_VERTICAL | wxAUI_TB_HORIZONTAL),
|
|
wxAUI_TB_DEFAULT_STYLE = 0
|
|
};
|
|
|
|
/**
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
enum wxAuiToolBarArtSetting
|
|
{
|
|
wxAUI_TBART_SEPARATOR_SIZE = 0,
|
|
wxAUI_TBART_GRIPPER_SIZE = 1,
|
|
wxAUI_TBART_OVERFLOW_SIZE = 2
|
|
};
|
|
|
|
/**
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
enum wxAuiToolBarToolTextOrientation
|
|
{
|
|
wxAUI_TBTOOL_TEXT_LEFT = 0, //!< unused/unimplemented
|
|
wxAUI_TBTOOL_TEXT_RIGHT = 1,
|
|
wxAUI_TBTOOL_TEXT_TOP = 2, //!< unused/unimplemented
|
|
wxAUI_TBTOOL_TEXT_BOTTOM = 3
|
|
};
|
|
|
|
|
|
/**
|
|
@class wxAuiToolBarEvent
|
|
|
|
wxAuiToolBarEvent is used for the events generated by @ref wxAuiToolBar.
|
|
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
class wxAuiToolBarEvent : public wxNotifyEvent
|
|
{
|
|
public:
|
|
bool IsDropDownClicked() const;
|
|
|
|
wxPoint GetClickPoint() const;
|
|
|
|
wxRect GetItemRect() const;
|
|
|
|
int GetToolId() const;
|
|
};
|
|
|
|
|
|
/**
|
|
@class wxAuiToolBarItem
|
|
|
|
wxAuiToolBarItem is part of the wxAUI class framework.
|
|
See also @ref wxAuiToolBar and @ref overview_aui.
|
|
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
class wxAuiToolBarItem
|
|
{
|
|
public:
|
|
|
|
wxAuiToolBarItem();
|
|
|
|
wxAuiToolBarItem(const wxAuiToolBarItem& c);
|
|
|
|
wxAuiToolBarItem& operator=(const wxAuiToolBarItem& c);
|
|
|
|
void Assign(const wxAuiToolBarItem& c);
|
|
|
|
void SetWindow(wxWindow* w);
|
|
wxWindow* GetWindow();
|
|
|
|
void SetId(int new_id);
|
|
int GetId() const;
|
|
|
|
void SetKind(int new_kind);
|
|
int GetKind() const;
|
|
|
|
void SetState(int new_state);
|
|
int GetState() const;
|
|
|
|
void SetSizerItem(wxSizerItem* s);
|
|
wxSizerItem* GetSizerItem() const;
|
|
|
|
void SetLabel(const wxString& s);
|
|
const wxString& GetLabel() const;
|
|
|
|
void SetBitmap(const wxBitmap& bmp);
|
|
const wxBitmap& GetBitmap() const;
|
|
|
|
void SetDisabledBitmap(const wxBitmap& bmp);
|
|
const wxBitmap& GetDisabledBitmap() const;
|
|
|
|
void SetHoverBitmap(const wxBitmap& bmp);
|
|
const wxBitmap& GetHoverBitmap() const;
|
|
|
|
void SetShortHelp(const wxString& s);
|
|
const wxString& GetShortHelp() const;
|
|
|
|
void SetLongHelp(const wxString& s);
|
|
const wxString& GetLongHelp() const;
|
|
|
|
void SetMinSize(const wxSize& s);
|
|
const wxSize& GetMinSize() const;
|
|
|
|
void SetSpacerPixels(int s);
|
|
int GetSpacerPixels() const;
|
|
|
|
void SetProportion(int p);
|
|
int GetProportion() const;
|
|
|
|
void SetActive(bool b);
|
|
bool IsActive() const;
|
|
|
|
void SetHasDropDown(bool b);
|
|
bool HasDropDown() const;
|
|
|
|
void SetSticky(bool b);
|
|
bool IsSticky() const;
|
|
|
|
void SetUserData(long l);
|
|
long GetUserData() const;
|
|
|
|
void SetAlignment(int l);
|
|
int GetAlignment() const;
|
|
};
|
|
|
|
/**
|
|
@class wxAuiToolBarArt
|
|
|
|
wxAuiToolBarArt is part of the wxAUI class framework.
|
|
See also @ref wxAuiToolBar and @ref overview_aui.
|
|
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
class wxAuiToolBarArt
|
|
{
|
|
public:
|
|
wxAuiToolBarArt();
|
|
|
|
virtual wxAuiToolBarArt* Clone() = 0;
|
|
virtual void SetFlags(unsigned int flags) = 0;
|
|
virtual unsigned int GetFlags() = 0;
|
|
virtual void SetFont(const wxFont& font) = 0;
|
|
virtual wxFont GetFont() = 0;
|
|
virtual void SetTextOrientation(int orientation) = 0;
|
|
virtual int GetTextOrientation() = 0;
|
|
|
|
virtual void DrawBackground(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawLabel(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawButton(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawDropDownButton(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawControlLabel(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawSeparator(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawGripper(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect) = 0;
|
|
|
|
virtual void DrawOverflowButton(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect,
|
|
int state) = 0;
|
|
|
|
virtual wxSize GetLabelSize(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item) = 0;
|
|
|
|
virtual wxSize GetToolSize(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item) = 0;
|
|
|
|
virtual int GetElementSize(int element_id) = 0;
|
|
virtual void SetElementSize(int element_id, int size) = 0;
|
|
|
|
virtual int ShowDropDown(
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItemArray& items) = 0;
|
|
};
|
|
|
|
|
|
/**
|
|
@class wxAuiDefaultToolBarArt
|
|
|
|
wxAuiDefaultToolBarArt is part of the wxAUI class framework.
|
|
See also @ref wxAuiToolBarArt , @ref wxAuiToolBar and @ref overview_aui.
|
|
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
class wxAuiDefaultToolBarArt : public wxAuiToolBarArt
|
|
{
|
|
public:
|
|
wxAuiDefaultToolBarArt();
|
|
virtual ~wxAuiDefaultToolBarArt();
|
|
|
|
virtual wxAuiToolBarArt* Clone();
|
|
virtual void SetFlags(unsigned int flags);
|
|
virtual unsigned int GetFlags();
|
|
virtual void SetFont(const wxFont& font);
|
|
virtual wxFont GetFont();
|
|
virtual void SetTextOrientation(int orientation);
|
|
virtual int GetTextOrientation();
|
|
|
|
virtual void DrawBackground(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawLabel(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawButton(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawDropDownButton(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawControlLabel(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawSeparator(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawGripper(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect);
|
|
|
|
virtual void DrawOverflowButton(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxRect& rect,
|
|
int state);
|
|
|
|
virtual wxSize GetLabelSize(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item);
|
|
|
|
virtual wxSize GetToolSize(
|
|
wxDC& dc,
|
|
wxWindow* wnd,
|
|
const wxAuiToolBarItem& item);
|
|
|
|
virtual int GetElementSize(int element);
|
|
virtual void SetElementSize(int element_id, int size);
|
|
|
|
virtual int ShowDropDown(wxWindow* wnd,
|
|
const wxAuiToolBarItemArray& items);
|
|
};
|
|
|
|
|
|
|
|
/**
|
|
@class wxAuiToolBar
|
|
|
|
wxAuiToolBar is a dockable toolbar, part of the wxAUI class framework.
|
|
See also @ref overview_aui.
|
|
|
|
@beginStyleTable
|
|
@style{wxAUI_TB_TEXT}
|
|
@style{wxAUI_TB_NO_TOOLTIPS}
|
|
@style{wxAUI_TB_NO_AUTORESIZE}
|
|
@style{wxAUI_TB_GRIPPER}
|
|
@style{wxAUI_TB_OVERFLOW}
|
|
@style{wxAUI_TB_VERTICAL}
|
|
using this style forces the toolbar to be vertical and
|
|
be only dockable to the left or right sides of the window
|
|
whereas by default it can be horizontal or vertical and
|
|
be docked anywhere
|
|
@style{wxAUI_TB_HORZ_LAYOUT}
|
|
@style{wxAUI_TB_HORIZONTAL}
|
|
analogous to wxAUI_TB_VERTICAL, but forces the toolbar
|
|
to be horizontal
|
|
@style{wxAUI_TB_HORZ_TEXT}
|
|
Equivalent to wxAUI_TB_HORZ_LAYOUT | wxAUI_TB_TEXT
|
|
@style{wxAUI_TB_DEFAULT_STYLE}
|
|
The default is to have no styles
|
|
@endStyleTable
|
|
|
|
@beginEventEmissionTable{wxAuiToolBarEvent}
|
|
@event{EVT_AUITOOLBAR_TOOL_DROPDOWN(id, func)}
|
|
Process a wxEVT_COMMAND_AUITOOLBAR_TOOL_DROPDOWN event
|
|
@event{EVT_AUITOOLBAR_OVERFLOW_CLICK(id, func)}
|
|
Process a wxEVT_COMMAND_AUITOOLBAR_OVERFLOW_CLICK event
|
|
@event{EVT_AUITOOLBAR_RIGHT_CLICK(id, func)}
|
|
Process a wxEVT_COMMAND_AUITOOLBAR_RIGHT_CLICK event
|
|
@event{EVT_AUITOOLBAR_MIDDLE_CLICK(id, func)}
|
|
Process a wxEVT_COMMAND_AUITOOLBAR_MIDDLE_CLICK event
|
|
@event{EVT_AUITOOLBAR_BEGIN_DRAG(id, func)}
|
|
Process a wxEVT_COMMAND_AUITOOLBAR_BEGIN_DRAG event
|
|
@endEventTable
|
|
|
|
@library{wxaui}
|
|
@category{aui}
|
|
*/
|
|
class wxAuiToolBar : public wxControl
|
|
{
|
|
public:
|
|
wxAuiToolBar(wxWindow* parent,
|
|
wxWindowID id = -1,
|
|
const wxPoint& position = wxDefaultPosition,
|
|
const wxSize& size = wxDefaultSize,
|
|
long style = wxAUI_TB_DEFAULT_STYLE);
|
|
virtual ~wxAuiToolBar();
|
|
|
|
void SetWindowStyleFlag(long style);
|
|
long GetWindowStyleFlag() const;
|
|
|
|
void SetArtProvider(wxAuiToolBarArt* art);
|
|
wxAuiToolBarArt* GetArtProvider() const;
|
|
|
|
bool SetFont(const wxFont& font);
|
|
|
|
|
|
wxAuiToolBarItem* AddTool(int tool_id,
|
|
const wxString& label,
|
|
const wxBitmap& bitmap,
|
|
const wxString& short_help_string = wxEmptyString,
|
|
wxItemKind kind = wxITEM_NORMAL);
|
|
|
|
wxAuiToolBarItem* AddTool(int tool_id,
|
|
const wxString& label,
|
|
const wxBitmap& bitmap,
|
|
const wxBitmap& disabled_bitmap,
|
|
wxItemKind kind,
|
|
const wxString& short_help_string,
|
|
const wxString& long_help_string,
|
|
wxObject* client_data);
|
|
|
|
wxAuiToolBarItem* AddTool(int tool_id,
|
|
const wxBitmap& bitmap,
|
|
const wxBitmap& disabled_bitmap,
|
|
bool toggle = false,
|
|
wxObject* client_data = NULL,
|
|
const wxString& short_help_string = wxEmptyString,
|
|
const wxString& long_help_string = wxEmptyString);
|
|
|
|
wxAuiToolBarItem* AddLabel(int tool_id,
|
|
const wxString& label = wxEmptyString,
|
|
const int width = -1);
|
|
wxAuiToolBarItem* AddControl(wxControl* control,
|
|
const wxString& label = wxEmptyString);
|
|
wxAuiToolBarItem* AddSeparator();
|
|
wxAuiToolBarItem* AddSpacer(int pixels);
|
|
wxAuiToolBarItem* AddStretchSpacer(int proportion = 1);
|
|
|
|
bool Realize();
|
|
|
|
wxControl* FindControl(int window_id);
|
|
wxAuiToolBarItem* FindToolByPosition(wxCoord x, wxCoord y) const;
|
|
wxAuiToolBarItem* FindToolByIndex(int idx) const;
|
|
wxAuiToolBarItem* FindTool(int tool_id) const;
|
|
|
|
void ClearTools();
|
|
void Clear();
|
|
bool DeleteTool(int tool_id);
|
|
bool DeleteByIndex(int tool_id);
|
|
|
|
size_t GetToolCount() const;
|
|
int GetToolPos(int tool_id) const;
|
|
int GetToolIndex(int tool_id) const;
|
|
bool GetToolFits(int tool_id) const;
|
|
wxRect GetToolRect(int tool_id) const;
|
|
bool GetToolFitsByIndex(int tool_id) const;
|
|
bool GetToolBarFits() const;
|
|
|
|
void SetMargins(const wxSize& size);
|
|
void SetMargins(int x, int y);
|
|
void SetMargins(int left, int right, int top, int bottom);
|
|
|
|
void SetToolBitmapSize(const wxSize& size);
|
|
wxSize GetToolBitmapSize() const;
|
|
|
|
bool GetOverflowVisible() const;
|
|
void SetOverflowVisible(bool visible);
|
|
|
|
bool GetGripperVisible() const;
|
|
void SetGripperVisible(bool visible);
|
|
|
|
void ToggleTool(int tool_id, bool state);
|
|
bool GetToolToggled(int tool_id) const;
|
|
|
|
void EnableTool(int tool_id, bool state);
|
|
bool GetToolEnabled(int tool_id) const;
|
|
|
|
void SetToolDropDown(int tool_id, bool dropdown);
|
|
bool GetToolDropDown(int tool_id) const;
|
|
|
|
void SetToolBorderPadding(int padding);
|
|
int GetToolBorderPadding() const;
|
|
|
|
void SetToolTextOrientation(int orientation);
|
|
int GetToolTextOrientation() const;
|
|
|
|
void SetToolPacking(int packing);
|
|
int GetToolPacking() const;
|
|
|
|
void SetToolProportion(int tool_id, int proportion);
|
|
int GetToolProportion(int tool_id) const;
|
|
|
|
void SetToolSeparation(int separation);
|
|
int GetToolSeparation() const;
|
|
|
|
void SetToolSticky(int tool_id, bool sticky);
|
|
bool GetToolSticky(int tool_id) const;
|
|
|
|
wxString GetToolLabel(int tool_id) const;
|
|
void SetToolLabel(int tool_id, const wxString& label);
|
|
|
|
wxBitmap GetToolBitmap(int tool_id) const;
|
|
void SetToolBitmap(int tool_id, const wxBitmap& bitmap);
|
|
|
|
wxString GetToolShortHelp(int tool_id) const;
|
|
void SetToolShortHelp(int tool_id, const wxString& help_string);
|
|
|
|
wxString GetToolLongHelp(int tool_id) const;
|
|
void SetToolLongHelp(int tool_id, const wxString& help_string);
|
|
|
|
void SetCustomOverflowItems(const wxAuiToolBarItemArray& prepend,
|
|
const wxAuiToolBarItemArray& append);
|
|
|
|
/** get size of hint rectangle for a particular dock location */
|
|
wxSize GetHintSize(int dock_direction) const;
|
|
bool IsPaneValid(const wxAuiPaneInfo& pane) const;
|
|
};
|
|
|