InfoBar


Object Hierarchy:

Gtk.InfoBar Gtk.InfoBar Gtk.InfoBar Gtk.Widget Gtk.Widget Gtk.Widget->Gtk.InfoBar GLib.InitiallyUnowned GLib.InitiallyUnowned GLib.InitiallyUnowned->Gtk.Widget GLib.Object GLib.Object GLib.Object->GLib.InitiallyUnowned Gtk.Accessible Gtk.Accessible Gtk.Accessible->Gtk.InfoBar Gtk.Accessible->Gtk.Widget Gtk.Buildable Gtk.Buildable Gtk.Buildable->Gtk.InfoBar Gtk.Buildable->Gtk.Widget Gtk.ConstraintTarget Gtk.ConstraintTarget Gtk.ConstraintTarget->Gtk.InfoBar Gtk.ConstraintTarget->Gtk.Widget

Description:

[ CCode ( type_id = "gtk_info_bar_get_type ()" ) ]
[ Version ( deprecated = true , deprecated_since = "4.10" ) ]
public sealed class InfoBar : Widget, Accessible, Buildable, ConstraintTarget

Warning: InfoBar is deprecated since 4.10.

`GtkInfoBar` can be used to show messages to the user without a dialog.

Note:

There is no replacement in GTK for an "info bar" widget; you can use [class@Gtk.Revealer] with a [class@Gtk.Box] containing a [ class@Gtk.Label] and an optional [class@Gtk.Button], according to your application's design.

![An example GtkInfoBar](info-bar.png)

It is often temporarily shown at the top or bottom of a document. In contrast to [class@Gtk.Dialog], which has an action area at the bottom, `GtkInfoBar` has an action area at the side.

The API of `GtkInfoBar` is very similar to `GtkDialog`, allowing you to add buttons to the action area with [method@Gtk.InfoBar.add_button] or [ctor@Gtk.InfoBar.new_with_buttons]. The sensitivity of action widgets can be controlled with [method@Gtk.InfoBar.set_response_sensitive].

To add widgets to the main content area of a `GtkInfoBar`, use [method@Gtk.InfoBar.add_child].

Similar to [class@Gtk.MessageDialog], the contents of a `GtkInfoBar` can by classified as error message, warning, informational message, etc, by using [method@Gtk.InfoBar.set_message_type]. GTK may use the message type to determine how the message is displayed.

A simple example for using a `GtkInfoBar`: ```c GtkWidget *message_label; GtkWidget *widget; GtkWidget *grid; GtkInfoBar *bar;

// set up info bar widget = gtk_info_bar_new (); bar = GTK_INFO_BAR (widget); grid = gtk_grid_new ();

message_label = gtk_label_new (""); gtk_info_bar_add_child (bar, message_label); gtk_info_bar_add_button (bar, _("_OK"), GTK_RESPONSE_OK); g_signal_connect (bar, "response", G_CALLBACK (gtk_widget_hide), NULL); gtk_grid_attach (GTK_GRID (grid), widget, 0, 2, 1, 1);

// ...

// show an error message gtk_label_set_text (GTK_LABEL (message_label), "An error occurred!"); gtk_info_bar_set_message_type (bar, GTK_MESSAGE_ERROR); gtk_widget_show (bar); ```

GtkInfoBar as GtkBuildable

`GtkInfoBar` supports a custom `<action-widgets>` element, which can contain multiple `<action-widget>` elements. The “response” attribute specifies a numeric response, and the content of the element is the id of widget (which should be a child of the dialogs action_area).

`GtkInfoBar` supports adding action widgets by specifying “action” as the “type” attribute of a `<child>` element. The widget will be added either to the action area. The response id has to be associated with the action widget using the `<action-widgets>` element.

CSS nodes

`GtkInfoBar` has a single CSS node with name infobar. The node may get one of the style classes .info, .warning, .error or .question, depending on the message type. If the info bar shows a close button, that button will have the .close style class applied.


Namespace: Gtk
Package: gtk4

Content:

Properties:

Creation methods:

Methods:

Signals:

Inherited Members:

All known members inherited from class Gtk.Widget