[gnome-builder] plugins/testui: fix clear/save buttons for test output
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] plugins/testui: fix clear/save buttons for test output
- Date: Thu, 14 Jul 2022 23:47:48 +0000 (UTC)
commit 5677bb06fdd9bee17fa65e3aefd1724a2dce18f0
Author: Christian Hergert <chergert redhat com>
Date: Thu Jul 14 16:47:43 2022 -0700
plugins/testui: fix clear/save buttons for test output
src/plugins/testui/gbp-testui-output-panel.c | 55 ++++++++++++----------------
1 file changed, 23 insertions(+), 32 deletions(-)
---
diff --git a/src/plugins/testui/gbp-testui-output-panel.c b/src/plugins/testui/gbp-testui-output-panel.c
index 18b7114b6..fb025c673 100644
--- a/src/plugins/testui/gbp-testui-output-panel.c
+++ b/src/plugins/testui/gbp-testui-output-panel.c
@@ -36,18 +36,9 @@ struct _GbpTestuiOutputPanel
G_DEFINE_FINAL_TYPE (GbpTestuiOutputPanel, gbp_testui_output_panel, IDE_TYPE_PANE)
static void
-gbp_testui_output_panel_class_init (GbpTestuiOutputPanelClass *klass)
-{
- GtkWidgetClass *widget_class = (GtkWidgetClass*)klass;
-
- gtk_widget_class_set_template_from_resource (widget_class, "/plugins/testui/gbp-testui-output-panel.ui");
- gtk_widget_class_bind_template_child (widget_class, GbpTestuiOutputPanel, terminal);
-}
-
-static void
-gbp_testui_output_panel_save_in_file_cb (GbpTestuiOutputPanel *self,
- int res,
- GtkFileChooserNative *native)
+gbp_testui_output_panel_save_in_file_cb (GbpTestuiOutputPanel *self,
+ int res,
+ GtkFileChooserNative *native)
{
IDE_ENTRY;
@@ -93,17 +84,16 @@ gbp_testui_output_panel_save_in_file_cb (GbpTestuiOutputPanel *self,
}
static void
-gbp_testui_output_panel_save_in_file (GSimpleAction *action,
- GVariant *param,
- gpointer user_data)
+gbp_testui_output_panel_save_in_file (GtkWidget *widget,
+ const char *action_name,
+ GVariant *param)
{
- GbpTestuiOutputPanel *self = user_data;
+ GbpTestuiOutputPanel *self = (GbpTestuiOutputPanel *)widget;
g_autoptr(GtkFileChooserNative) native = NULL;
GtkWidget *window;
IDE_ENTRY;
- g_assert (G_IS_SIMPLE_ACTION (action));
g_assert (GBP_IS_TESTUI_OUTPUT_PANEL (self));
window = gtk_widget_get_ancestor (GTK_WIDGET (self), GTK_TYPE_WINDOW);
@@ -126,35 +116,36 @@ gbp_testui_output_panel_save_in_file (GSimpleAction *action,
}
static void
-gbp_testui_output_panel_clear_activate (GSimpleAction *action,
- GVariant *param,
- gpointer user_data)
+gbp_testui_output_panel_clear_activate (GtkWidget *widget,
+ const char *action_name,
+ GVariant *param)
{
- GbpTestuiOutputPanel *self = user_data;
+ GbpTestuiOutputPanel *self = (GbpTestuiOutputPanel *)widget;
g_assert (GBP_IS_TESTUI_OUTPUT_PANEL (self));
- g_assert (G_IS_SIMPLE_ACTION (action));
vte_terminal_reset (VTE_TERMINAL (self->terminal), TRUE, TRUE);
}
static void
-gbp_testui_output_panel_init (GbpTestuiOutputPanel *self)
+gbp_testui_output_panel_class_init (GbpTestuiOutputPanelClass *klass)
{
- static const GActionEntry entries[] = {
- { "clear", gbp_testui_output_panel_clear_activate },
- { "save", gbp_testui_output_panel_save_in_file },
- };
- g_autoptr(GSimpleActionGroup) actions = NULL;
+ GtkWidgetClass *widget_class = (GtkWidgetClass*)klass;
+
+ gtk_widget_class_set_template_from_resource (widget_class, "/plugins/testui/gbp-testui-output-panel.ui");
+ gtk_widget_class_bind_template_child (widget_class, GbpTestuiOutputPanel, terminal);
+
+ gtk_widget_class_install_action (widget_class, "test-output.clear", NULL,
gbp_testui_output_panel_clear_activate);
+ gtk_widget_class_install_action (widget_class, "test-output.save", NULL,
gbp_testui_output_panel_save_in_file);
+}
+static void
+gbp_testui_output_panel_init (GbpTestuiOutputPanel *self)
+{
gtk_widget_init_template (GTK_WIDGET(self));
panel_widget_set_title (PANEL_WIDGET (self), _("Unit Test Output"));
panel_widget_set_icon_name (PANEL_WIDGET (self), "builder-unit-tests-symbolic");
-
- actions = g_simple_action_group_new ();
- g_action_map_add_action_entries (G_ACTION_MAP (actions), entries, G_N_ELEMENTS (entries), self);
- gtk_widget_insert_action_group (GTK_WIDGET (self), "testui-output", G_ACTION_GROUP (actions));
}
GbpTestuiOutputPanel *
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]