📄 auibar.h
字号:
///////////////////////////////////////////////////////////////////////////////// Name: wx/aui/toolbar.h// Purpose: wxaui: wx advanced user interface - docking window manager// Author: Benjamin I. Williams// Modified by:// Created: 2008-08-04// RCS-ID: $Id: auibar.h 55522 2008-09-08 09:54:28Z BIW $// Copyright: (C) Copyright 2005, Kirix Corporation, All Rights Reserved.// Licence: wxWindows Library Licence, Version 3.1///////////////////////////////////////////////////////////////////////////////#ifndef _WX_AUIBAR_H_#define _WX_AUIBAR_H_#include "wx/defs.h"#if wxUSE_AUI#if wxABI_VERSION >= 20809#include "wx/control.h"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, wxAUI_TB_VERTICAL = 1 << 5, wxAUI_TB_HORZ_LAYOUT = 1 << 6, wxAUI_TB_HORZ_TEXT = (wxAUI_TB_HORZ_LAYOUT | wxAUI_TB_TEXT), wxAUI_TB_DEFAULT_STYLE = 0};enum wxAuiToolBarArtSetting{ wxAUI_TBART_SEPARATOR_SIZE = 0, wxAUI_TBART_GRIPPER_SIZE = 1, wxAUI_TBART_OVERFLOW_SIZE = 2};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};// aui toolbar event classclass WXDLLIMPEXP_AUI wxAuiToolBarEvent : public wxNotifyEvent{public: wxAuiToolBarEvent(wxEventType command_type = wxEVT_NULL, int win_id = 0) : wxNotifyEvent(command_type, win_id) { is_dropdown_clicked = false; click_pt = wxPoint(-1, -1); rect = wxRect(-1,-1, 0, 0); tool_id = -1; }#ifndef SWIG wxAuiToolBarEvent(const wxAuiToolBarEvent& c) : wxNotifyEvent(c) { is_dropdown_clicked = c.is_dropdown_clicked; click_pt = c.click_pt; rect = c.rect; tool_id = c.tool_id; }#endif wxEvent *Clone() const { return new wxAuiToolBarEvent(*this); } bool IsDropDownClicked() const { return is_dropdown_clicked; } void SetDropDownClicked(bool c) { is_dropdown_clicked = c; } wxPoint GetClickPoint() const { return click_pt; } void SetClickPoint(const wxPoint& p) { click_pt = p; } wxRect GetItemRect() const { return rect; } void SetItemRect(const wxRect& r) { rect = r; } int GetToolId() const { return tool_id; } void SetToolId(int id) { tool_id = id; }private: bool is_dropdown_clicked; wxPoint click_pt; wxRect rect; int tool_id;#ifndef SWIGprivate: DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxAuiToolBarEvent)#endif};class WXDLLIMPEXP_AUI wxAuiToolBarItem{ friend class wxAuiToolBar; public: wxAuiToolBarItem() { window = NULL; sizer_item = NULL; spacer_pixels = 0; id = 0; kind = wxITEM_NORMAL; state = 0; // normal, enabled proportion = 0; active = true; dropdown = true; sticky = true; user_data = 0; } wxAuiToolBarItem(const wxAuiToolBarItem& c) { Assign(c); } wxAuiToolBarItem& operator=(const wxAuiToolBarItem& c) { Assign(c); return *this; } void Assign(const wxAuiToolBarItem& c) { window = c.window; label = c.label; bitmap = c.bitmap; disabled_bitmap = c.disabled_bitmap; hover_bitmap = c.hover_bitmap; short_help = c.short_help; long_help = c.long_help; sizer_item = c.sizer_item; min_size = c.min_size; spacer_pixels = c.spacer_pixels; id = c.id; kind = c.kind; state = c.state; proportion = c.proportion; active = c.active; dropdown = c.dropdown; sticky = c.sticky; user_data = c.user_data; } void SetWindow(wxWindow* w) { window = w; } wxWindow* GetWindow() { return window; } void SetId(int new_id) { id = new_id; } int GetId() const { return id; } void SetKind(int new_kind) { kind = new_kind; } int GetKind() const { return kind; } void SetState(int new_state) { state = new_state; } int GetState() const { return state; } void SetSizerItem(wxSizerItem* s) { sizer_item = s; } wxSizerItem* GetSizerItem() const { return sizer_item; } void SetLabel(const wxString& s) { label = s; } const wxString& GetLabel() const { return label; } void SetBitmap(const wxBitmap& bmp) { bitmap = bmp; } const wxBitmap& GetBitmap() const { return bitmap; } void SetDisabledBitmap(const wxBitmap& bmp) { disabled_bitmap = bmp; } const wxBitmap& GetDisabledBitmap() const { return disabled_bitmap; } void SetHoverBitmap(const wxBitmap& bmp) { hover_bitmap = bmp; } const wxBitmap& GetHoverBitmap() const { return hover_bitmap; } void SetShortHelp(const wxString& s) { short_help = s; } const wxString& GetShortHelp() const { return short_help; } void SetLongHelp(const wxString& s) { long_help = s; } const wxString& GetLongHelp() const { return long_help; } void SetMinSize(const wxSize& s) { min_size = s; } const wxSize& GetMinSize() const { return min_size; } void SetSpacerPixels(int s) { spacer_pixels = s; } int GetSpacerPixels() const { return spacer_pixels; } void SetProportion(int p) { proportion = p; } int GetProportion() const { return proportion; } void SetActive(bool b) { active = b; } bool IsActive() const { return active; } void SetHasDropDown(bool b) { dropdown = b; } bool HasDropDown() const { return dropdown; } void SetSticky(bool b) { sticky = b; } bool IsSticky() const { return sticky; } void SetUserData(long l) { user_data = l; } long GetUserData() const { return user_data; }private: wxWindow* window; // item's associated window wxString label; // label displayed on the item wxBitmap bitmap; // item's bitmap wxBitmap disabled_bitmap; // item's disabled bitmap wxBitmap hover_bitmap; // item's hover bitmap wxString short_help; // short help (for tooltip) wxString long_help; // long help (for status bar) wxSizerItem* sizer_item; // sizer item wxSize min_size; // item's minimum size int spacer_pixels; // size of a spacer int id; // item's id int kind; // item's kind int state; // state int proportion; // proportion bool active; // true if the item is currently active bool dropdown; // true if the item has a dropdown button bool sticky; // overrides button states if true (always active) long user_data; // user-specified data};#ifndef SWIGWX_DECLARE_USER_EXPORTED_OBJARRAY(wxAuiToolBarItem, wxAuiToolBarItemArray, WXDLLIMPEXP_AUI);#endif// tab art classclass WXDLLIMPEXP_AUI wxAuiToolBarArt{public: wxAuiToolBarArt() { } virtual ~wxAuiToolBarArt() { } virtual wxAuiToolBarArt* Clone() = 0; virtual void SetFlags(unsigned int flags) = 0; virtual void SetFont(const wxFont& font) = 0; virtual void SetTextOrientation(int orientation) = 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 WXDLLIMPEXP_AUI wxAuiDefaultToolBarArt : public wxAuiToolBarArt{public: wxAuiDefaultToolBarArt(); virtual ~wxAuiDefaultToolBarArt(); virtual wxAuiToolBarArt* Clone(); virtual void SetFlags(unsigned int flags); virtual void SetFont(const wxFont& font); virtual void SetTextOrientation(int orientation); virtual void DrawBackground( wxDC& dc, wxWindow* wnd, const wxRect& rect); virtual void DrawLabel( wxDC& dc, wxWindow* wnd, const wxAuiToolBarItem& item, const wxRect& rect);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -