[gnome-builder/wip/gtk4-port: 5/7] plugins/buildui: Port GbpBuilduiRuntimeRow to GTK4
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder/wip/gtk4-port: 5/7] plugins/buildui: Port GbpBuilduiRuntimeRow to GTK4
- Date: Tue, 10 May 2022 22:43:16 +0000 (UTC)
commit 0e085f256eab0d9f41b10bbe49050128c379d34e
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date: Sat May 7 19:39:54 2022 -0300
plugins/buildui: Port GbpBuilduiRuntimeRow to GTK4
Switch to AdwActionRow for now, since it allows dropping some code.
Otherwise, an uneventful port.
src/plugins/buildui/gbp-buildui-runtime-row.c | 37 ++++++---------------------
src/plugins/buildui/gbp-buildui-runtime-row.h | 4 +--
src/plugins/buildui/meson.build | 2 +-
3 files changed, 11 insertions(+), 32 deletions(-)
---
diff --git a/src/plugins/buildui/gbp-buildui-runtime-row.c b/src/plugins/buildui/gbp-buildui-runtime-row.c
index 2a3774c35..2599ff0b2 100644
--- a/src/plugins/buildui/gbp-buildui-runtime-row.c
+++ b/src/plugins/buildui/gbp-buildui-runtime-row.c
@@ -26,15 +26,14 @@
struct _GbpBuilduiRuntimeRow
{
- GtkListBoxRow parent_instance;
+ AdwActionRow parent_instance;
gchar *runtime_id;
- GtkLabel *label;
GtkImage *image;
};
-G_DEFINE_FINAL_TYPE (GbpBuilduiRuntimeRow, gbp_buildui_runtime_row, GTK_TYPE_LIST_BOX_ROW)
+G_DEFINE_FINAL_TYPE (GbpBuilduiRuntimeRow, gbp_buildui_runtime_row, ADW_TYPE_ACTION_ROW)
static void
gbp_buildui_runtime_row_finalize (GObject *object)
@@ -57,30 +56,11 @@ gbp_buildui_runtime_row_class_init (GbpBuilduiRuntimeRowClass *klass)
static void
gbp_buildui_runtime_row_init (GbpBuilduiRuntimeRow *self)
{
- GtkWidget *box;
-
- box = g_object_new (GTK_TYPE_BOX,
- "margin", 10,
- "orientation", GTK_ORIENTATION_HORIZONTAL,
- "spacing", 6,
- "visible", TRUE,
- NULL);
- gtk_container_add (GTK_CONTAINER (self), box);
-
- self->label = g_object_new (GTK_TYPE_LABEL,
- "visible", TRUE,
- "use-markup", TRUE,
- "xalign", 0.0f,
- NULL);
- gtk_container_add (GTK_CONTAINER (box), GTK_WIDGET (self->label));
-
self->image = g_object_new (GTK_TYPE_IMAGE,
- "visible", TRUE,
- "halign", GTK_ALIGN_START,
- "hexpand", TRUE,
+ "valign", GTK_ALIGN_CENTER,
"icon-name", "object-select-symbolic",
NULL);
- gtk_container_add (GTK_CONTAINER (box), GTK_WIDGET (self->image));
+ adw_action_row_add_suffix (ADW_ACTION_ROW (self), GTK_WIDGET (self->image));
}
static void
@@ -97,8 +77,8 @@ notify_config_runtime_id (GbpBuilduiRuntimeRow *self,
}
GtkWidget *
-gbp_buildui_runtime_row_new (IdeRuntime *runtime,
- IdeConfig *config)
+gbp_buildui_runtime_row_new (IdeRuntime *runtime,
+ IdeConfig *config)
{
GbpBuilduiRuntimeRow *self;
gboolean sensitive;
@@ -110,11 +90,10 @@ gbp_buildui_runtime_row_new (IdeRuntime *runtime,
self = g_object_new (GBP_TYPE_BUILDUI_RUNTIME_ROW,
"sensitive", sensitive,
- "visible", TRUE,
NULL);
self->runtime_id = g_strdup (ide_runtime_get_id (runtime));
- gtk_label_set_label (self->label,
- ide_runtime_get_display_name (runtime));
+ adw_preferences_row_set_title (ADW_PREFERENCES_ROW (self),
+ ide_runtime_get_display_name (runtime));
g_signal_connect_object (config,
"notify::runtime-id",
diff --git a/src/plugins/buildui/gbp-buildui-runtime-row.h b/src/plugins/buildui/gbp-buildui-runtime-row.h
index c7dfff99f..c646d3a34 100644
--- a/src/plugins/buildui/gbp-buildui-runtime-row.h
+++ b/src/plugins/buildui/gbp-buildui-runtime-row.h
@@ -20,14 +20,14 @@
#pragma once
-#include <gtk/gtk.h>
+#include <adwaita.h>
#include <libide-foundry.h>
G_BEGIN_DECLS
#define GBP_TYPE_BUILDUI_RUNTIME_ROW (gbp_buildui_runtime_row_get_type())
-G_DECLARE_FINAL_TYPE (GbpBuilduiRuntimeRow, gbp_buildui_runtime_row, GBP, BUILDUI_RUNTIME_ROW, GtkListBoxRow)
+G_DECLARE_FINAL_TYPE (GbpBuilduiRuntimeRow, gbp_buildui_runtime_row, GBP, BUILDUI_RUNTIME_ROW, AdwActionRow)
GtkWidget *gbp_buildui_runtime_row_new (IdeRuntime *runtime,
IdeConfig *config);
diff --git a/src/plugins/buildui/meson.build b/src/plugins/buildui/meson.build
index ce335f70f..8fd8957fe 100644
--- a/src/plugins/buildui/meson.build
+++ b/src/plugins/buildui/meson.build
@@ -7,7 +7,7 @@ plugins_sources += files([
'gbp-buildui-omni-bar-section.c',
'gbp-buildui-pane.c',
#'gbp-buildui-runtime-categories.c',
- #'gbp-buildui-runtime-row.c',
+ 'gbp-buildui-runtime-row.c',
'gbp-buildui-stage-row.c',
'gbp-buildui-targets-dialog.c',
'gbp-buildui-tree-addin.c',
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]