GtkLinkButton
GtkLinkButton — Create buttons bound to a URL
Functions
GtkWidget * | gtk_link_button_new () |
GtkWidget * | gtk_link_button_new_with_label () |
const gchar * | gtk_link_button_get_uri () |
void | gtk_link_button_set_uri () |
gboolean | gtk_link_button_get_visited () |
void | gtk_link_button_set_visited () |
Signals
gboolean | activate-link | Run Last |
Types and Values
struct | GtkLinkButton |
struct | GtkLinkButtonClass |
Object Hierarchy
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── GtkButton ╰── GtkLinkButton
Implemented Interfaces
GtkLinkButton implements AtkImplementorIface, GtkBuildable, GtkActionable and GtkActivatable.
Includes
#include <gtk/gtk.h>
Description
A GtkLinkButton is a GtkButton with a hyperlink, similar to the one used by web browsers, which triggers an action when clicked. It is useful to show quick links to resources.
A link button is created by calling either gtk_link_button_new()
or gtk_link_button_new_with_label()
. If using the former, the URI you pass to the constructor is used as a label for the widget.
The URI bound to a GtkLinkButton can be set specifically using gtk_link_button_set_uri()
, and retrieved using gtk_link_button_get_uri()
.
By default, GtkLinkButton calls gtk_show_uri_on_window()
when the button is clicked. This behaviour can be overridden by connecting to the “activate-link” signal and returning TRUE
from the signal handler.
CSS nodes
GtkLinkButton has a single CSS node with name button. To differentiate it from a plain GtkButton, it gets the .link style class.
Functions
gtk_link_button_new ()
GtkWidget *
gtk_link_button_new (const gchar *uri
);
Creates a new GtkLinkButton with the URI as its text.
Parameters
uri | a valid URI |
Returns
a new link button widget.
Since: 2.10
gtk_link_button_new_with_label ()
GtkWidget * gtk_link_button_new_with_label (const gchar *uri
,const gchar *label
);
Creates a new GtkLinkButton containing a label.
Parameters
uri | a valid URI | |
label | the text of the button. | [allow-none] |
Returns
a new link button widget.
[transfer none]
Since: 2.10
gtk_link_button_get_uri ()
const gchar *
gtk_link_button_get_uri (GtkLinkButton *link_button
);
Retrieves the URI set using gtk_link_button_set_uri()
.
Parameters
link_button |
Returns
a valid URI. The returned string is owned by the link button and should not be modified or freed.
Since: 2.10
gtk_link_button_set_uri ()
void gtk_link_button_set_uri (GtkLinkButton *link_button
,const gchar *uri
);
Sets uri
as the URI where the GtkLinkButton points. As a side-effect this unsets the “visited” state of the button.
Parameters
link_button | ||
uri | a valid URI |
Since: 2.10
gtk_link_button_get_visited ()
gboolean
gtk_link_button_get_visited (GtkLinkButton *link_button
);
Retrieves the “visited” state of the URI where the GtkLinkButton points. The button becomes visited when it is clicked. If the URI is changed on the button, the “visited” state is unset again.
The state may also be changed using gtk_link_button_set_visited()
.
Parameters
link_button |
Returns
TRUE
if the link has been visited, FALSE
otherwise
Since: 2.14
gtk_link_button_set_visited ()
void gtk_link_button_set_visited (GtkLinkButton *link_button
,gboolean visited
);
Sets the “visited” state of the URI where the GtkLinkButton points. See gtk_link_button_get_visited()
for more details.
Parameters
link_button | ||
visited | the new “visited” state |
Since: 2.14
Types and Values
struct GtkLinkButton
struct GtkLinkButton;
The GtkLinkButton contains only private data and should be accessed using the provided API.
struct GtkLinkButtonClass
struct GtkLinkButtonClass { gboolean (* activate_link) (GtkLinkButton *button); };
The GtkLinkButtonClass contains only private data.
Members
| class handler for the “activate-link” signal |
Property Details
The “uri”
property
“uri” char *
The URI bound to this button.
Owner: GtkLinkButton
Flags: Read / Write
Default value: NULL
Since: 2.10
The “visited”
property
“visited” gboolean
The 'visited' state of this button. A visited link is drawn in a different color.
Owner: GtkLinkButton
Flags: Read / Write
Default value: FALSE
Since: 2.14
Signal Details
The “activate-link”
signal
gboolean user_function (GtkLinkButton *button, gpointer user_data)
The ::activate-link signal is emitted each time the GtkLinkButton has been clicked.
The default handler will call gtk_show_uri_on_window()
with the URI stored inside the “uri” property.
To override the default behavior, you can connect to the ::activate-link signal and stop the propagation of the signal by returning TRUE
from your handler.
Parameters
button | the GtkLinkButton that emitted the signal | |
user_data | user data set when the signal handler was connected. |
Flags: Run Last
See Also
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkLinkButton.html