Ardour
9.0-pre0-582-g084a23a80d
|
#include <action.h>
Public Types | |
typedef sigc::slot< void > | SlotActivate |
For instance, void on_activate();. More... | |
Public Member Functions | |
virtual | ~Action () |
GtkAction * | gobj () |
Provides access to the underlying C GObject. More... | |
const GtkAction * | gobj () const |
Provides access to the underlying C GObject. More... | |
GtkAction * | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More... | |
Glib::ustring | get_name () const |
bool | is_sensitive () const |
bool | get_sensitive () const |
void | set_sensitive (bool sensitive=true) |
bool | is_visible () const |
bool | get_visible () const |
void | set_visible (bool visible=true) |
void | activate () |
Image * | create_icon (IconSize icon_size) |
MenuItem * | create_menu_item () |
ToolItem * | create_tool_item () |
Menu * | create_menu () |
void | connect_proxy (Widget &proxy) |
void | disconnect_proxy (Widget &proxy) |
Glib::SListHandle< Widget * > | get_proxies () |
Glib::SListHandle< const Widget * > | get_proxies () const |
void | connect_accelerator () |
void | disconnect_accelerator () |
Glib::ustring | get_accel_path () const |
Glib::SignalProxy0< void > | signal_activate () |
void | set_accel_path (const Glib::ustring &accel_path) |
void | set_accel_group (const Glib::RefPtr< AccelGroup > &accel_group) |
void | set_label (const Glib::ustring &label) |
Glib::ustring | get_label () const |
void | set_short_label (const Glib::ustring &short_label) |
Glib::ustring | get_short_label () const |
void | set_tooltip (const Glib::ustring &tooltip) |
Glib::ustring | get_tooltip () const |
void | set_stock_id (const StockID &stock_id) |
StockID | get_stock_id () const |
void | set_gicon (const Glib::RefPtr< Gio::Icon > &icon) |
Glib::RefPtr< Gio::Icon > | get_gicon () |
Glib::RefPtr< const Gio::Icon > | get_gicon () const |
void | set_icon_name (const Glib::ustring &icon_name) |
Glib::ustring | get_icon_name () const |
void | set_visible_horizontal (bool visible_horizontal=true) |
bool | get_visible_horizontal () const |
void | set_visible_vertical (bool visible_vertical=true) |
bool | get_visible_vertical () const |
void | set_is_important (bool is_important=true) |
bool | get_is_important () const |
void | set_always_show_image (bool always_show=true) |
bool | get_always_show_image () const |
void | block_activate () |
void | unblock_activate () |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_name () const |
Glib::PropertyProxy< Glib::ustring > | property_label () |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_label () const |
Glib::PropertyProxy< Glib::ustring > | property_short_label () |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_short_label () const |
Glib::PropertyProxy< Glib::ustring > | property_tooltip () |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_tooltip () const |
Glib::PropertyProxy< StockID > | property_stock_id () |
Glib::PropertyProxy_ReadOnly< StockID > | property_stock_id () const |
Glib::PropertyProxy< Glib::RefPtr< Gio::Icon > > | property_gicon () |
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gio::Icon > > | property_gicon () const |
Glib::PropertyProxy< Glib::ustring > | property_icon_name () |
Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_icon_name () const |
Glib::PropertyProxy< bool > | property_visible_horizontal () |
Glib::PropertyProxy_ReadOnly< bool > | property_visible_horizontal () const |
Glib::PropertyProxy< bool > | property_visible_vertical () |
Glib::PropertyProxy_ReadOnly< bool > | property_visible_vertical () const |
Glib::PropertyProxy< bool > | property_visible_overflown () |
Glib::PropertyProxy_ReadOnly< bool > | property_visible_overflown () const |
Glib::PropertyProxy< bool > | property_is_important () |
Glib::PropertyProxy_ReadOnly< bool > | property_is_important () const |
Glib::PropertyProxy< bool > | property_hide_if_empty () |
Glib::PropertyProxy_ReadOnly< bool > | property_hide_if_empty () const |
Glib::PropertyProxy< bool > | property_sensitive () |
Glib::PropertyProxy_ReadOnly< bool > | property_sensitive () const |
Glib::PropertyProxy< bool > | property_visible () |
Glib::PropertyProxy_ReadOnly< bool > | property_visible () const |
Glib::PropertyProxy< Glib::RefPtr< ActionGroup > > | property_action_group () |
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< ActionGroup > > | property_action_group () const |
Glib::PropertyProxy< bool > | property_always_show_image () |
Glib::PropertyProxy_ReadOnly< bool > | property_always_show_image () const |
Static Public Member Functions | |
static GType | get_type () G_GNUC_CONST |
static Glib::RefPtr< Action > | create () |
static Glib::RefPtr< Action > | create (const Glib::ustring &name, const Glib::ustring &label=Glib::ustring(), const Glib::ustring &tooltip=Glib::ustring()) |
static Glib::RefPtr< Action > | create (const Glib::ustring &name, const Gtk::StockID &stock_id, const Glib::ustring &label=Glib::ustring(), const Glib::ustring &tooltip=Glib::ustring()) |
static Glib::RefPtr< Action > | create_with_icon_name (const Glib::ustring &name, const Glib::ustring &icon_name, const Glib::ustring &label, const Glib::ustring &tooltip) |
Protected Member Functions | |
Action () | |
Action (const Glib::ustring &name, const StockID &stock_id=StockID(), const Glib::ustring &label=Glib::ustring(), const Glib::ustring &tooltip=Glib::ustring()) | |
Action (const Glib::ustring &name, const Glib::ustring &icon_name, const Glib::ustring &label=Glib::ustring(), const Glib::ustring &tooltip=Glib::ustring()) | |
void | block_activate_from (Widget &proxy) |
void | unblock_activate_from (Widget &proxy) |
virtual Widget * | create_menu_item_vfunc () |
virtual Widget * | create_tool_item_vfunc () |
virtual void | connect_proxy_vfunc (Widget *proxy) |
virtual void | disconnect_proxy_vfunc (Widget *proxy) |
virtual void | on_activate () |
This is a default handler for the signal signal_activate(). More... | |
Related Functions | |
(Note that these are not member functions.) | |
Glib::RefPtr< Gtk::Action > | wrap (GtkAction *object, bool take_copy=false) |
An action which can be triggered by a menu or toolbar item.
Actions represent operations that the user can perform, along with some information about how it should be presented in the user interface. Each action provides methods to create icons, menu items and toolbar items representing itself.
As well as the callback that is called when the action is activated, the following is also associated with the action:
The action will also have some state information:
Apart from regular actions, there are toggle actions, which can be toggled between two states and radio actions, of which only one in a group can be in the "active" state. Other actions can be implemented as Gtk::Action subclasses.
Each action can have one or more proxy menu item, toolbar button or other proxy widgets. Proxies mirror the state of the action (text label, tooltip, icon, visible, sensitive, etc), and should change when the action's state changes. When the proxy is activated, it should activate its action.
typedef sigc::slot<void> Gtk::Action::SlotActivate |
For instance, void on_activate();.
|
virtual |
|
protected |
Creates an empty action.
|
explicitprotected |
Creates an action with a stock ID. The stock ID is used to set a default icon, text and accelerator for the action.
name | A unique name for the action. |
stock_id | The stock icon to display in widgets representing the action. |
label | The label displayed in menu items and on buttons. |
tooltip | A tooltip for the action. |
|
explicitprotected |
Creates an action with an icon name. The action's icon will reflect the specified icon name in the user's icon theme.
name | A unique name for the action. |
icon_name | An IconTheme icon name used for widgets representing the action. |
label | The label displayed in menu items and on buttons. |
tooltip | A tooltip for the action. |
void Gtk::Action::activate | ( | ) |
Emits the "activate" signal on the specified action, if it isn't insensitive. This gets called by the proxy widgets when they get activated.
It can also be used to manually activate an action.
void Gtk::Action::block_activate | ( | ) |
Disable activation signals from the action
This is needed when updating the state of your proxy Gtk::Activatable widget could result in calling activate(), this is a convenience function to avoid recursing in those cases (updating toggle state for instance).
|
protected |
Disables calls to the activate() function by signals on the given proxy widget. This is used to break notification loops for things like check or radio actions.
This function is intended for use by action implementations.
Deprecated: 2.16: activatables are now responsible for activating the action directly so this doesnt apply anymore.
proxy | A proxy widget. |
void Gtk::Action::connect_accelerator | ( | ) |
Installs the accelerator for action if action has an accel path and group. See set_accel_path() and set_accel_group()
Since multiple proxies may independently trigger the installation of the accelerator, the action counts the number of times this function has been called and doesn't remove the accelerator until disconnect_accelerator() has been called as many times.
void Gtk::Action::connect_proxy | ( | Widget & | proxy | ) |
Connects a widget to an action object as a proxy. Synchronises various properties of the action with the widget (such as label text, icon, tooltip, etc), and attaches a callback so that the action gets activated when the proxy widget does.
If the widget is already connected to an action, it is disconnected first.
Deprecated: 2.16: Use Gtk::Activatable::set_related_action() instead.
proxy | The proxy widget. |
|
protectedvirtual |
|
static |
|
static |
Creates an action.
name | A unique name for the action. |
label | The label displayed in menu items and on buttons. |
tooltip | A tooltip for the action. |
|
static |
Creates an action with a stock ID. The stock ID is used to set a default icon, text and accelerator for the action.
name | A unique name for the action. |
stock_id | The stock icon to display in widgets representing the action. |
label | The label displayed in menu items and on buttons. |
tooltip | A tooltip for the action. |
This function is intended for use by action implementations to create icons displayed in the proxy widgets.
icon_size | The size of the icon that should be created. |
Menu* Gtk::Action::create_menu | ( | ) |
If action provides a Gtk::Menu widget as a submenu for the menu item or the toolbar item it creates, this function returns an instance of that menu.
0
. MenuItem* Gtk::Action::create_menu_item | ( | ) |
Creates a menu item widget that proxies for the given action.
|
protectedvirtual |
ToolItem* Gtk::Action::create_tool_item | ( | ) |
Creates a toolbar item widget that proxies for the given action.
|
protectedvirtual |
|
static |
Create an action with an icon name. The action's icon will reflect the specified icon name in the user's icon theme.
name | A unique name for the action. |
icon_name | An IconTheme icon name used for widgets representing the action. |
label | The label displayed in menu items and on buttons. |
tooltip | A tooltip for the action. |
void Gtk::Action::disconnect_accelerator | ( | ) |
Undoes the effect of one call to connect_accelerator().
void Gtk::Action::disconnect_proxy | ( | Widget & | proxy | ) |
Disconnects a proxy widget from an action.
Does not destroy the widget, however.
Deprecated: 2.16: Use Gtk::Activatable::set_related_action() instead.
proxy | The proxy widget. |
|
protectedvirtual |
Glib::ustring Gtk::Action::get_accel_path | ( | ) | const |
Returns the accel path for this action.
0
if none is set. The returned string is owned by GTK+ and must not be freed or modified. bool Gtk::Action::get_always_show_image | ( | ) | const |
Returns whether action's menu item proxies will ignore the Gtk::Settings::property_gtk_menu_images() setting and always show their image, if available.
true
if the menu item proxies will always show their image. Glib::RefPtr<Gio::Icon> Gtk::Action::get_gicon | ( | ) |
Gets the gicon of action.
Glib::RefPtr<const Gio::Icon> Gtk::Action::get_gicon | ( | ) | const |
Gets the gicon of action.
Glib::ustring Gtk::Action::get_icon_name | ( | ) | const |
Gets the icon name of action.
bool Gtk::Action::get_is_important | ( | ) | const |
Checks whether action is important or not
Glib::ustring Gtk::Action::get_label | ( | ) | const |
Gets the label text of action.
Glib::ustring Gtk::Action::get_name | ( | ) | const |
Returns the name of the action.
Glib::SListHandle<Widget*> Gtk::Action::get_proxies | ( | ) |
Returns the proxy widgets for an action. See also Gtk::Widget::get_action().
Glib::SListHandle<const Widget*> Gtk::Action::get_proxies | ( | ) | const |
Returns the proxy widgets for an action. See also Gtk::Widget::get_action().
bool Gtk::Action::get_sensitive | ( | ) | const |
Returns whether the action itself is sensitive. Note that this doesn't necessarily mean effective sensitivity. See is_sensitive() for that.
true
if the action itself is sensitive. Glib::ustring Gtk::Action::get_short_label | ( | ) | const |
Gets the short label text of action.
StockID Gtk::Action::get_stock_id | ( | ) | const |
Gets the stock id of action.
Glib::ustring Gtk::Action::get_tooltip | ( | ) | const |
Gets the tooltip text of action.
|
static |
Get the GType for this class, for use with the underlying GObject type system.
bool Gtk::Action::get_visible | ( | ) | const |
Returns whether the action itself is visible. Note that this doesn't necessarily mean effective visibility. See is_sensitive() for that.
true
if the action itself is visible. bool Gtk::Action::get_visible_horizontal | ( | ) | const |
Checks whether action is visible when horizontal
bool Gtk::Action::get_visible_vertical | ( | ) | const |
Checks whether action is visible when horizontal
|
inline |
|
inline |
GtkAction* Gtk::Action::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
bool Gtk::Action::is_sensitive | ( | ) | const |
Returns whether the action is effectively sensitive.
true
if the action and its associated action group are both sensitive. bool Gtk::Action::is_visible | ( | ) | const |
Returns whether the action is effectively visible.
true
if the action and its associated action group are both visible.
|
protectedvirtual |
This is a default handler for the signal signal_activate().
Glib::PropertyProxy< Glib::RefPtr<ActionGroup> > Gtk::Action::property_action_group | ( | ) |
The GtkActionGroup this GtkAction is associated with, or NULL (for internal use).
Glib::PropertyProxy_ReadOnly< Glib::RefPtr<ActionGroup> > Gtk::Action::property_action_group | ( | ) | const |
The GtkActionGroup this GtkAction is associated with, or NULL (for internal use).
Glib::PropertyProxy< bool > Gtk::Action::property_always_show_image | ( | ) |
Whether the image will always be shown.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_always_show_image | ( | ) | const |
Whether the image will always be shown.
Glib::PropertyProxy< Glib::RefPtr<Gio::Icon> > Gtk::Action::property_gicon | ( | ) |
The GIcon being displayed.
Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gio::Icon> > Gtk::Action::property_gicon | ( | ) | const |
The GIcon being displayed.
Glib::PropertyProxy< bool > Gtk::Action::property_hide_if_empty | ( | ) |
When TRUE, empty menu proxies for this action are hidden.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_hide_if_empty | ( | ) | const |
When TRUE, empty menu proxies for this action are hidden.
Glib::PropertyProxy< Glib::ustring > Gtk::Action::property_icon_name | ( | ) |
The name of the icon from the icon theme.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Action::property_icon_name | ( | ) | const |
The name of the icon from the icon theme.
Glib::PropertyProxy< bool > Gtk::Action::property_is_important | ( | ) |
Whether the action is considered important. When TRUE, toolitem proxies for this action show text in GTK_TOOLBAR_BOTH_HORIZ mode.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_is_important | ( | ) | const |
Whether the action is considered important. When TRUE, toolitem proxies for this action show text in GTK_TOOLBAR_BOTH_HORIZ mode.
Glib::PropertyProxy< Glib::ustring > Gtk::Action::property_label | ( | ) |
The label used for menu items and buttons that activate this action.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Action::property_label | ( | ) | const |
The label used for menu items and buttons that activate this action.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Action::property_name | ( | ) | const |
A unique name for the action.
Glib::PropertyProxy< bool > Gtk::Action::property_sensitive | ( | ) |
Whether the action is enabled.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_sensitive | ( | ) | const |
Whether the action is enabled.
Glib::PropertyProxy< Glib::ustring > Gtk::Action::property_short_label | ( | ) |
A shorter label that may be used on toolbar buttons.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Action::property_short_label | ( | ) | const |
A shorter label that may be used on toolbar buttons.
Glib::PropertyProxy< StockID > Gtk::Action::property_stock_id | ( | ) |
The stock icon displayed in widgets representing this action.
Glib::PropertyProxy_ReadOnly< StockID > Gtk::Action::property_stock_id | ( | ) | const |
The stock icon displayed in widgets representing this action.
Glib::PropertyProxy< Glib::ustring > Gtk::Action::property_tooltip | ( | ) |
A tooltip for this action.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Action::property_tooltip | ( | ) | const |
A tooltip for this action.
Glib::PropertyProxy< bool > Gtk::Action::property_visible | ( | ) |
Whether the action is visible.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_visible | ( | ) | const |
Whether the action is visible.
Glib::PropertyProxy< bool > Gtk::Action::property_visible_horizontal | ( | ) |
Whether the toolbar item is visible when the toolbar is in a horizontal orientation.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_visible_horizontal | ( | ) | const |
Whether the toolbar item is visible when the toolbar is in a horizontal orientation.
Glib::PropertyProxy< bool > Gtk::Action::property_visible_overflown | ( | ) |
When TRUE, toolitem proxies for this action are represented in the toolbar overflow menu.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_visible_overflown | ( | ) | const |
When TRUE, toolitem proxies for this action are represented in the toolbar overflow menu.
Glib::PropertyProxy< bool > Gtk::Action::property_visible_vertical | ( | ) |
Whether the toolbar item is visible when the toolbar is in a vertical orientation.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Action::property_visible_vertical | ( | ) | const |
Whether the toolbar item is visible when the toolbar is in a vertical orientation.
void Gtk::Action::set_accel_group | ( | const Glib::RefPtr< AccelGroup > & | accel_group | ) |
Sets the Gtk::AccelGroup in which the accelerator for this action will be installed.
accel_group | A Gtk::AccelGroup or 0 . |
void Gtk::Action::set_accel_path | ( | const Glib::ustring & | accel_path | ) |
Sets the accel path for this action. All proxy widgets associated with the action will have this accel path, so that their accelerators are consistent.
Note that accel_path string will be stored in a Quark. Therefore, if you pass a static string, you can save some memory by interning it first with Glib::intern_static_string().
accel_path | The accelerator path. |
void Gtk::Action::set_always_show_image | ( | bool | always_show = true | ) |
Sets whether action's menu item proxies will ignore the Gtk::Settings::property_gtk_menu_images() setting and always show their image, if available.
Use this if the menu item would be useless or hard to use without their image.
always_show | true if menuitem proxies should always show their image. |
void Gtk::Action::set_gicon | ( | const Glib::RefPtr< Gio::Icon > & | icon | ) |
Sets the icon of action.
icon | The Icon to set. |
void Gtk::Action::set_icon_name | ( | const Glib::ustring & | icon_name | ) |
Sets the icon name on action
icon_name | The icon name to set. |
void Gtk::Action::set_is_important | ( | bool | is_important = true | ) |
Sets whether the action is important, this attribute is used primarily by toolbar items to decide whether to show a label or not.
is_important | true to make the action important. |
void Gtk::Action::set_label | ( | const Glib::ustring & | label | ) |
Sets the label of action.
label | The label text to set. |
void Gtk::Action::set_sensitive | ( | bool | sensitive = true | ) |
Sets the property_sensitive() property of the action to sensitive. Note that this doesn't necessarily mean effective sensitivity. See is_sensitive() for that.
sensitive | true to make the action sensitive. |
void Gtk::Action::set_short_label | ( | const Glib::ustring & | short_label | ) |
Sets a shorter label text on action.
short_label | The label text to set. |
void Gtk::Action::set_stock_id | ( | const StockID & | stock_id | ) |
Sets the stock id on action
stock_id | The stock id. |
void Gtk::Action::set_tooltip | ( | const Glib::ustring & | tooltip | ) |
Sets the tooltip text on action
tooltip | The tooltip text. |
void Gtk::Action::set_visible | ( | bool | visible = true | ) |
Sets the property_visible() property of the action to visible. Note that this doesn't necessarily mean effective visibility. See is_visible() for that.
visible | true to make the action visible. |
void Gtk::Action::set_visible_horizontal | ( | bool | visible_horizontal = true | ) |
Sets whether action is visible when horizontal
visible_horizontal | Whether the action is visible horizontally. |
void Gtk::Action::set_visible_vertical | ( | bool | visible_vertical = true | ) |
Sets whether action is visible when vertical
visible_vertical | Whether the action is visible vertically. |
Glib::SignalProxy0< void > Gtk::Action::signal_activate | ( | ) |
The "activate" signal is emitted when the action is activated.
void on_my_activate()
void Gtk::Action::unblock_activate | ( | ) |
Reenable activation signals from the action
|
protected |
Re-enables calls to the activate() function by signals on the given proxy widget. This undoes the blocking done by block_activate_from().
This function is intended for use by action implementations.
Deprecated: 2.16: activatables are now responsible for activating the action directly so this doesnt apply anymore.
proxy | A proxy widget. |
|
related |
A Glib::wrap() method for this object.
object | The C instance. |
take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref. |