mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2025-12-31 20:36:25 +00:00
libsysprof-ui: more GTK 4 porting changes
This commit is contained in:
@ -53,7 +53,11 @@ typedef struct
|
||||
int nat_below_baseline;
|
||||
} EggThreeGridRowInfo;
|
||||
|
||||
G_DEFINE_TYPE_WITH_PRIVATE (EggThreeGrid, egg_three_grid, GTK_TYPE_WIDGET)
|
||||
static void buildable_iface_init (GtkBuildableIface *iface);
|
||||
|
||||
G_DEFINE_TYPE_WITH_CODE (EggThreeGrid, egg_three_grid, GTK_TYPE_WIDGET,
|
||||
G_ADD_PRIVATE (EggThreeGrid)
|
||||
G_IMPLEMENT_INTERFACE (GTK_TYPE_BUILDABLE, buildable_iface_init))
|
||||
|
||||
enum {
|
||||
PROP_0,
|
||||
@ -695,3 +699,21 @@ egg_three_grid_column_get_type (void)
|
||||
|
||||
return type_id;
|
||||
}
|
||||
|
||||
static void
|
||||
egg_three_grid_add_child (GtkBuildable *buildable,
|
||||
GtkBuilder *builder,
|
||||
GObject *child,
|
||||
const char *type)
|
||||
{
|
||||
if (GTK_IS_WIDGET (child))
|
||||
egg_three_grid_add (EGG_THREE_GRID (buildable), GTK_WIDGET (child), 0, EGG_THREE_GRID_COLUMN_LEFT);
|
||||
else
|
||||
g_warning ("%s cannot be added to %s", G_OBJECT_TYPE_NAME (child), G_OBJECT_TYPE_NAME (buildable));
|
||||
}
|
||||
|
||||
static void
|
||||
buildable_iface_init (GtkBuildableIface *iface)
|
||||
{
|
||||
iface->add_child = egg_three_grid_add_child;
|
||||
}
|
||||
|
||||
@ -50,6 +50,8 @@ typedef struct
|
||||
GtkLabel *end;
|
||||
GtkLabel *duration;
|
||||
GtkTextView *message;
|
||||
GtkWidget *failed;
|
||||
GtkWidget *marks;
|
||||
} SysprofMarksPagePrivate;
|
||||
|
||||
enum {
|
||||
@ -310,9 +312,9 @@ sysprof_marks_page_load_cb (GObject *object,
|
||||
gtk_tree_view_set_model (priv->tree_view, GTK_TREE_MODEL (model));
|
||||
|
||||
if (gtk_tree_model_iter_n_children (GTK_TREE_MODEL (model), NULL) == 0)
|
||||
gtk_stack_set_visible_child_name (priv->stack, "empty-state");
|
||||
gtk_stack_set_visible_child (priv->stack, GTK_WIDGET (priv->failed));
|
||||
else
|
||||
gtk_stack_set_visible_child_name (priv->stack, "marks");
|
||||
gtk_stack_set_visible_child (priv->stack, GTK_WIDGET (priv->marks));
|
||||
|
||||
g_task_return_boolean (task, TRUE);
|
||||
}
|
||||
@ -517,6 +519,8 @@ sysprof_marks_page_class_init (SysprofMarksPageClass *klass)
|
||||
gtk_widget_class_bind_template_child_private (widget_class, SysprofMarksPage, duration);
|
||||
gtk_widget_class_bind_template_child_private (widget_class, SysprofMarksPage, time);
|
||||
gtk_widget_class_bind_template_child_private (widget_class, SysprofMarksPage, message);
|
||||
gtk_widget_class_bind_template_child_private (widget_class, SysprofMarksPage, marks);
|
||||
gtk_widget_class_bind_template_child_private (widget_class, SysprofMarksPage, failed);
|
||||
|
||||
properties [PROP_KIND] =
|
||||
g_param_spec_enum ("kind", NULL, NULL,
|
||||
|
||||
@ -3,10 +3,11 @@
|
||||
<template class="SysprofMarksPage" parent="SysprofPage">
|
||||
<child>
|
||||
<object class="GtkStack" id="stack">
|
||||
<property name="homogeneous">false</property>
|
||||
<property name="hhomogeneous">false</property>
|
||||
<property name="vhomogeneous">false</property>
|
||||
<property name="visible">true</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<object class="GtkBox" id="marks">
|
||||
<property name="orientation">horizontal</property>
|
||||
<property name="visible">true</property>
|
||||
<child>
|
||||
@ -44,11 +45,11 @@
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<layout>
|
||||
<property name="row">0</property>
|
||||
<property name="column">0</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">0</property>
|
||||
<property name="left-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
@ -59,11 +60,11 @@
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<layout>
|
||||
<property name="row">1</property>
|
||||
<property name="column">0</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">1</property>
|
||||
<property name="left-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
@ -73,11 +74,11 @@
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<layout>
|
||||
<property name="row">2</property>
|
||||
<property name="column">0</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">2</property>
|
||||
<property name="left-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
@ -87,11 +88,11 @@
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<layout>
|
||||
<property name="row">3</property>
|
||||
<property name="column">0</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">3</property>
|
||||
<property name="left-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
@ -101,11 +102,11 @@
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<layout>
|
||||
<property name="row">4</property>
|
||||
<property name="column">0</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">4</property>
|
||||
<property name="left-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
@ -116,22 +117,22 @@
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<layout>
|
||||
<property name="row">5</property>
|
||||
<property name="column">0</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">5</property>
|
||||
<property name="left-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="group">
|
||||
<property name="visible">true</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="wrap">true</property>
|
||||
<layout>
|
||||
<property name="row">0</property>
|
||||
<property name="column">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">0</property>
|
||||
<property name="left-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="mark">
|
||||
@ -139,46 +140,45 @@
|
||||
<property name="xalign">0</property>
|
||||
<property name="max-width-chars">5</property>
|
||||
<property name="ellipsize">end</property>
|
||||
<layout>
|
||||
<property name="row">1</property>
|
||||
<property name="column">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">1</property>
|
||||
<property name="left-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="time">
|
||||
<property name="visible">true</property>
|
||||
<property name="xalign">0</property>
|
||||
<layout>
|
||||
<property name="row">2</property>
|
||||
<property name="column">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">2</property>
|
||||
<property name="left-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="end">
|
||||
<property name="visible">true</property>
|
||||
<property name="xalign">0</property>
|
||||
<layout>
|
||||
<property name="row">3</property>
|
||||
<property name="column">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">3</property>
|
||||
<property name="left-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="duration">
|
||||
<property name="visible">true</property>
|
||||
<property name="xalign">0</property>
|
||||
<layout>
|
||||
<property name="row">4</property>
|
||||
<property name="column">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">4</property>
|
||||
<property name="left-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="hexpand">true</property>
|
||||
<property name="shadow-type">in</property>
|
||||
<property name="visible">true</property>
|
||||
<child>
|
||||
<object class="GtkTextView" id="message">
|
||||
@ -186,11 +186,11 @@
|
||||
<property name="visible">true</property>
|
||||
</object>
|
||||
</child>
|
||||
<layout>
|
||||
<property name="row">5</property>
|
||||
<property name="column">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="top-attach">5</property>
|
||||
<property name="left-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
@ -238,20 +238,44 @@
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="name">marks</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="DzlEmptyState">
|
||||
<property name="icon-name">computer-fail-symbolic</property>
|
||||
<property name="title" translatable="yes">No Timings Available</property>
|
||||
<property name="subtitle" translatable="yes">No timing data was found for the current selection</property>
|
||||
<object class="GtkBox" id="failed">
|
||||
<property name="halign">center</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">12</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="visible">true</property>
|
||||
<child>
|
||||
<object class="GtkImage">
|
||||
<property name="icon-name">computer-fail-symbolic</property>
|
||||
<property name="pixel-size">128</property>
|
||||
<property name="visible">true</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="title">
|
||||
<property name="label" translatable="yes">No Timings Available</property>
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
<attributes>
|
||||
<attribute name="scale" value="2.0"/>
|
||||
<attribute name="weight" value="bold"/>
|
||||
</attributes>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="subtitle">
|
||||
<property name="label" translatable="yes">No timing data was found for the current selection</property>
|
||||
<property name="use-markup">true</property>
|
||||
<property name="wrap">true</property>
|
||||
<style>
|
||||
<class name="dim-label"/>
|
||||
</style>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="name">empty-state</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
|
||||
@ -318,3 +318,11 @@ sysprof_scrollmap_set_adjustment (SysprofScrollmap *self,
|
||||
|
||||
gtk_scrollbar_set_adjustment (GTK_SCROLLBAR (self->scrollbar), adjustment);
|
||||
}
|
||||
|
||||
GtkAdjustment *
|
||||
sysprof_scrollmap_get_adjustment (SysprofScrollmap *self)
|
||||
{
|
||||
g_return_val_if_fail (SYSPROF_IS_SCROLLMAP (self), NULL);
|
||||
|
||||
return gtk_scrollbar_get_adjustment (GTK_SCROLLBAR (self->scrollbar));
|
||||
}
|
||||
|
||||
@ -28,12 +28,13 @@ G_BEGIN_DECLS
|
||||
|
||||
G_DECLARE_FINAL_TYPE (SysprofScrollmap, sysprof_scrollmap, SYSPROF, SCROLLMAP, GtkWidget)
|
||||
|
||||
void sysprof_scrollmap_set_adjustment (SysprofScrollmap *self,
|
||||
GtkAdjustment *adjustment);
|
||||
void sysprof_scrollmap_set_timings (SysprofScrollmap *self,
|
||||
GArray *timings);
|
||||
void sysprof_scrollmap_set_time_range (SysprofScrollmap *self,
|
||||
gint64 begin_time,
|
||||
gint64 end_time);
|
||||
GtkAdjustment *sysprof_scrollmap_get_adjustment (SysprofScrollmap *self);
|
||||
void sysprof_scrollmap_set_adjustment (SysprofScrollmap *self,
|
||||
GtkAdjustment *adjustment);
|
||||
void sysprof_scrollmap_set_timings (SysprofScrollmap *self,
|
||||
GArray *timings);
|
||||
void sysprof_scrollmap_set_time_range (SysprofScrollmap *self,
|
||||
gint64 begin_time,
|
||||
gint64 end_time);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
@ -151,12 +151,11 @@ _sysprof_visualizer_group_header_add_row (SysprofVisualizerGroupHeader *self,
|
||||
"icon-name", "view-more-symbolic",
|
||||
"visible", TRUE,
|
||||
NULL),
|
||||
"margin-right", 6,
|
||||
"margin-end", 6,
|
||||
"direction", GTK_ARROW_RIGHT,
|
||||
"halign", GTK_ALIGN_CENTER,
|
||||
"menu-model", menu,
|
||||
"tooltip-text", _("Display supplemental graphs"),
|
||||
"use-popover", FALSE,
|
||||
"valign", GTK_ALIGN_CENTER,
|
||||
"visible", TRUE,
|
||||
NULL);
|
||||
|
||||
@ -706,7 +706,7 @@ sysprof_visualizers_frame_get_hadjustment (SysprofVisualizersFrame *self)
|
||||
{
|
||||
g_return_val_if_fail (SYSPROF_IS_VISUALIZERS_FRAME (self), NULL);
|
||||
|
||||
return gtk_range_get_adjustment (GTK_RANGE (self->hscrollbar));
|
||||
return sysprof_scrollmap_get_adjustment (self->hscrollbar);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
Reference in New Issue
Block a user