| Top |
| gboolean | always-show-image | Read / Write / Construct |
| CtkWidget * | image | Read / Write |
| CtkPositionType | image-position | Read / Write |
| char * | label | Read / Write / Construct |
| CtkReliefStyle | relief | Read / Write |
| gboolean | use-stock | Read / Write / Construct |
| gboolean | use-underline | Read / Write / Construct |
| float | xalign | Read / Write |
| float | yalign | Read / Write |
GObject
╰── GInitiallyUnowned
╰── CtkWidget
╰── CtkContainer
╰── CtkBin
╰── CtkButton
├── CtkToggleButton
├── CtkColorButton
├── CtkFontButton
├── CtkLinkButton
├── CtkLockButton
├── CtkModelButton
╰── CtkScaleButton
CtkButton implements AtkImplementorIface, CtkBuildable, CtkActionable and CtkActivatable.
The CtkButton widget is generally used to trigger a callback function that is called when the button is pressed. The various signals and how to use them are outlined below.
The CtkButton widget can hold any valid child widget. That is, it can hold almost any other standard CtkWidget. The most commonly used child is the CtkLabel.
CtkButton has a single CSS node with name button. The node will get the style classes .image-button or .text-button, if the content is just an image or label, respectively. It may also receive the .flat style class.
Other style classes that are commonly used with CtkButton include .suggested-action and .destructive-action. In special cases, buttons can be made round by adding the .circular style class.
Button-like widgets like CtkToggleButton, CtkMenuButton, CtkVolumeButton, CtkLockButton, CtkColorButton, CtkFontButton or CtkFileChooserButton use style classes such as .toggle, .popup, .scale, .lock, .color, .font, .file to differentiate themselves from a plain CtkButton.
CtkWidget *
ctk_button_new (void);
Creates a new CtkButton widget. To add a child widget to the button,
use ctk_container_add().
CtkWidget *
ctk_button_new_with_label (const gchar *label);
Creates a CtkButton widget with a CtkLabel child containing the given text.
CtkWidget *
ctk_button_new_with_mnemonic (const gchar *label);
Creates a new CtkButton containing a label.
If characters in label
are preceded by an underscore, they are underlined.
If you need a literal underscore character in a label, use “__” (two
underscores). The first underlined character represents a keyboard
accelerator called a mnemonic.
Pressing Alt and that key activates the button.
CtkWidget * ctk_button_new_from_icon_name (const gchar *icon_name,CtkIconSize size);
Creates a new button containing an icon from the current icon theme.
If the icon name isn’t known, a “broken image” icon will be displayed instead. If the current icon theme is changed, the icon will be updated appropriately.
This function is a convenience wrapper around ctk_button_new() and
ctk_button_set_image().
Since: 3.10
CtkWidget *
ctk_button_new_from_stock (const gchar *stock_id);
Creates a new CtkButton containing the image and text from a stock item. Some stock ids have preprocessor macros like CTK_STOCK_OK and CTK_STOCK_APPLY.
If stock_id
is unknown, then it will be treated as a mnemonic
label (as for ctk_button_new_with_mnemonic()).
void
ctk_button_released (CtkButton *button);
Emits a “released” signal to the given CtkButton.
void
ctk_button_enter (CtkButton *button);
ctk_button_enter has been deprecated since version 2.20 and should not be used in newly-written code.
Use the “enter-notify-event” signal.
void
ctk_button_leave (CtkButton *button);
ctk_button_leave has been deprecated since version 2.20 and should not be used in newly-written code.
Use the “leave-notify-event” signal.
void ctk_button_set_relief (CtkButton *button,CtkReliefStyle relief);
Sets the relief style of the edges of the given CtkButton widget.
Two styles exist, CTK_RELIEF_NORMAL and CTK_RELIEF_NONE.
The default style is, as one can guess, CTK_RELIEF_NORMAL.
The deprecated value CTK_RELIEF_HALF behaves the same as
CTK_RELIEF_NORMAL.
button |
The CtkButton you want to set relief styles of |
|
relief |
The CtkReliefStyle as described above |
CtkReliefStyle
ctk_button_get_relief (CtkButton *button);
Returns the current relief style of the given CtkButton.
const gchar *
ctk_button_get_label (CtkButton *button);
Fetches the text from the label of the button, as set by
ctk_button_set_label(). If the label text has not
been set the return value will be NULL. This will be the
case if you create an empty button with ctk_button_new() to
use as a container.
void ctk_button_set_label (CtkButton *button,const gchar *label);
Sets the text of the label of the button to str
. This text is
also used to select the stock item if ctk_button_set_use_stock()
is used.
This will also clear any previously set labels.
gboolean
ctk_button_get_use_stock (CtkButton *button);
ctk_button_get_use_stock has been deprecated since version 3.10 and should not be used in newly-written code.
Returns whether the button label is a stock item.
void ctk_button_set_use_stock (CtkButton *button,gboolean use_stock);
ctk_button_set_use_stock has been deprecated since version 3.10 and should not be used in newly-written code.
If TRUE, the label set on the button is used as a
stock id to select the stock item for the button.
gboolean
ctk_button_get_use_underline (CtkButton *button);
Returns whether an embedded underline in the button label indicates a
mnemonic. See ctk_button_set_use_underline().
void ctk_button_set_use_underline (CtkButton *button,gboolean use_underline);
If true, an underline in the text of the button label indicates the next character should be used for the mnemonic accelerator key.
void ctk_button_set_focus_on_click (CtkButton *button,gboolean focus_on_click);
ctk_button_set_focus_on_click has been deprecated since version 3.20 and should not be used in newly-written code.
Use ctk_widget_set_focus_on_click() instead
Sets whether the button will grab focus when it is clicked with the mouse. Making mouse clicks not grab focus is useful in places like toolbars where you don’t want the keyboard focus removed from the main area of the application.
Since: 2.4
gboolean
ctk_button_get_focus_on_click (CtkButton *button);
ctk_button_get_focus_on_click has been deprecated since version 3.20 and should not be used in newly-written code.
Use ctk_widget_get_focus_on_click() instead
Returns whether the button grabs focus when it is clicked with the mouse.
See ctk_button_set_focus_on_click().
Since: 2.4
void ctk_button_set_alignment (CtkButton *button,gfloat xalign,gfloat yalign);
ctk_button_set_alignment has been deprecated since version 3.14 and should not be used in newly-written code.
Access the child widget directly if you need to control its alignment.
Sets the alignment of the child. This property has no effect unless the child is a CtkMisc or a CtkAlignment.
button |
||
xalign |
the horizontal position of the child, 0.0 is left aligned, 1.0 is right aligned |
|
yalign |
the vertical position of the child, 0.0 is top aligned, 1.0 is bottom aligned |
Since: 2.4
void ctk_button_get_alignment (CtkButton *button,gfloat *xalign,gfloat *yalign);
ctk_button_get_alignment has been deprecated since version 3.14 and should not be used in newly-written code.
Access the child widget directly if you need to control its alignment.
Gets the alignment of the child in the button.
button |
||
xalign |
return location for horizontal alignment. |
[out] |
yalign |
return location for vertical alignment. |
[out] |
Since: 2.4
void ctk_button_set_image (CtkButton *button,CtkWidget *image);
Set the image of button
to the given widget. The image will be
displayed if the label text is NULL or if
“always-show-image” is TRUE. You don’t have to call
ctk_widget_show() on image
yourself.
Since: 2.6
CtkWidget *
ctk_button_get_image (CtkButton *button);
Gets the widget that is currenty set as the image of button
.
This may have been explicitly set by ctk_button_set_image()
or constructed by ctk_button_new_from_stock().
Since: 2.6
void ctk_button_set_image_position (CtkButton *button,CtkPositionType position);
Sets the position of the image relative to the text inside the button.
Since: 2.10
CtkPositionType
ctk_button_get_image_position (CtkButton *button);
Gets the position of the image relative to the text inside the button.
Since: 2.10
void ctk_button_set_always_show_image (CtkButton *button,gboolean always_show);
If TRUE, the button will ignore the “ctk-button-images”
setting and always show the image, if available.
Use this property if the button would be useless or hard to use without the image.
Since: 3.6
gboolean
ctk_button_get_always_show_image (CtkButton *button);
Returns whether the button will ignore the “ctk-button-images” setting and always show the image, if available.
Since: 3.6
struct CtkButtonClass {
CtkBinClass parent_class;
void (* pressed) (CtkButton *button);
void (* released) (CtkButton *button);
void (* clicked) (CtkButton *button);
void (* enter) (CtkButton *button);
void (* leave) (CtkButton *button);
void (* activate) (CtkButton *button);
};
Signal emitted when the button is pressed. |
||
Signal emitted when the button is released. |
||
Signal emitted when the button has been activated (pressed and released). |
||
Signal emitted when the pointer enters the button. Deprecated: 2.8. |
||
Signal emitted when the pointer leaves the button. Deprecated: 2.8. |
||
Signal that causes the button to animate press then
release. Applications should never connect to this signal, but use
the |
“always-show-image” property “always-show-image” gboolean
If TRUE, the button will ignore the “ctk-button-images”
setting and always show the image, if available.
Use this property if the button would be useless or hard to use without the image.
Owner: CtkButton
Flags: Read / Write / Construct
Default value: FALSE
Since: 3.6
“image” property“image” CtkWidget *
The child widget to appear next to the button text.
Owner: CtkButton
Flags: Read / Write
Since: 2.6
“image-position” property“image-position” CtkPositionType
The position of the image relative to the text inside the button.
Owner: CtkButton
Flags: Read / Write
Default value: CTK_POS_LEFT
Since: 2.10
“label” property “label” char *
Text of the label widget inside the button, if the button contains a label widget.
Owner: CtkButton
Flags: Read / Write / Construct
Default value: NULL
“relief” property“relief” CtkReliefStyle
The border relief style.
Owner: CtkButton
Flags: Read / Write
Default value: CTK_RELIEF_NORMAL
“use-stock” property “use-stock” gboolean
If set, the label is used to pick a stock item instead of being displayed.
CtkButton:use-stock has been deprecated since version 3.10 and should not be used in newly-written code.
Owner: CtkButton
Flags: Read / Write / Construct
Default value: FALSE
“use-underline” property “use-underline” gboolean
If set, an underline in the text indicates the next character should be used for the mnemonic accelerator key.
Owner: CtkButton
Flags: Read / Write / Construct
Default value: FALSE
“xalign” property “xalign” float
If the child of the button is a CtkMisc or CtkAlignment, this property can be used to control its horizontal alignment. 0.0 is left aligned, 1.0 is right aligned.
CtkButton:xalign has been deprecated since version 3.14 and should not be used in newly-written code.
Access the child widget directly if you need to control its alignment.
Owner: CtkButton
Flags: Read / Write
Allowed values: [0,1]
Default value: 0.5
Since: 2.4
“yalign” property “yalign” float
If the child of the button is a CtkMisc or CtkAlignment, this property can be used to control its vertical alignment. 0.0 is top aligned, 1.0 is bottom aligned.
CtkButton:yalign has been deprecated since version 3.14 and should not be used in newly-written code.
Access the child widget directly if you need to control its alignment.
Owner: CtkButton
Flags: Read / Write
Allowed values: [0,1]
Default value: 0.5
Since: 2.4
“activate” signalvoid user_function (CtkButton *widget, gpointer user_data)
The ::activate signal on CtkButton is an action signal and emitting it causes the button to animate press then release. Applications should never connect to this signal, but use the “clicked” signal.
widget |
the object which received the signal. |
|
user_data |
user data set when the signal handler was connected. |
Flags: Action
“clicked” signalvoid user_function (CtkButton *button, gpointer user_data)
Emitted when the button has been activated (pressed and released).
button |
the object that received the signal |
|
user_data |
user data set when the signal handler was connected. |
Flags: Action
“enter” signalvoid user_function (CtkButton *button, gpointer user_data)
Emitted when the pointer enters the button.
CtkButton::enter has been deprecated since version 2.8 and should not be used in newly-written code.
Use the “enter-notify-event” signal.
button |
the object that received the signal |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
“leave” signalvoid user_function (CtkButton *button, gpointer user_data)
Emitted when the pointer leaves the button.
CtkButton::leave has been deprecated since version 2.8 and should not be used in newly-written code.
Use the “leave-notify-event” signal.
button |
the object that received the signal |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
“pressed” signalvoid user_function (CtkButton *button, gpointer user_data)
Emitted when the button is pressed.
button |
the object that received the signal |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
“released” signalvoid user_function (CtkButton *button, gpointer user_data)
Emitted when the button is released.
button |
the object that received the signal |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First