24#ifndef ACTION_TOOLBAR_H
25#define ACTION_TOOLBAR_H
31#include <wx/aui/auibar.h>
32#include <wx/aui/framemanager.h>
33#include <wx/popupwin.h>
55 ACTION_GROUP(
const std::string_view& aName,
const std::vector<const TOOL_ACTION*>& aActions );
89 void SetActions(
const std::vector<const TOOL_ACTION*>& aActions );
163 void Popup( wxWindow* aFocus =
nullptr )
override;
201 const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
202 long style = wxAUI_TB_DEFAULT_STYLE );
236 bool aIsCancellable =
false );
256 void Add( wxControl* aControl,
const wxString& aLabel = wxEmptyString );
279 void AddGroup( std::unique_ptr<ACTION_GROUP> aGroup );
350 static std::list<ACTION_TOOLBAR_CONTROL*> m_controls;
393 void OnCustomRender( wxDC& aDc,
const wxAuiToolBarItem& aItem,
const wxRect& aRect )
override;
435 wxASSERT_MSG( aName.starts_with(
"control" ),
436 wxString::Format(
"Control name \"%s\" must start with \"control\"", aName ) );
A group of actions that will be displayed together on a toolbar palette.
void SetDefaultAction(const TOOL_ACTION &aDefault)
Set the default action to use when first creating the toolbar palette icon.
const std::vector< const TOOL_ACTION * > & GetActions() const
Get a vector of all the actions contained inside this group.
std::vector< const TOOL_ACTION * > m_actions
void SetActions(const std::vector< const TOOL_ACTION * > &aActions)
Set the actions contained in this group.
int GetUIId() const
Get the ID used in the UI to reference this group.
int m_id
< The action ID for this action group
const TOOL_ACTION * m_defaultAction
The actions that compose the group.
const TOOL_ACTION * GetDefaultAction() const
Get the default action to use when first creating this group's toolbar palette icon.
std::string m_name
The default action to display on the toolbar item.
std::string GetName() const
Get the name of the group.
The base frame for deriving all KiCad main window classes.