mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2025-12-31 20:36:25 +00:00
libsysprof-gtk: use libpanel for PanelPaned
This responds to expand a bit more like we want.
This commit is contained in:
@ -17,6 +17,7 @@ libsysprof_gtk_public_headers = [
|
||||
|
||||
libsysprof_gtk_deps = [
|
||||
dependency('libadwaita-1'),
|
||||
dependency('libpanel-1'),
|
||||
dependency('gtk4', version: gtk_req_version),
|
||||
|
||||
libsysprof_analyze_dep,
|
||||
|
||||
@ -20,6 +20,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <libpanel.h>
|
||||
|
||||
#include "sysprof-callgraph-view.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
@ -42,6 +44,7 @@ struct _SysprofCallgraphView
|
||||
GtkCustomSorter *descendants_name_sorter;
|
||||
GtkCustomSorter *functions_name_sorter;
|
||||
GtkScrolledWindow *scrolled_window;
|
||||
PanelPaned *right_paned;
|
||||
GtkWidget *paned;
|
||||
|
||||
GCancellable *cancellable;
|
||||
|
||||
@ -20,6 +20,8 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <libpanel.h>
|
||||
|
||||
#include "libsysprof-gtk-resources.h"
|
||||
|
||||
#include "sysprof-callgraph-view-private.h"
|
||||
@ -161,6 +163,9 @@ sysprof_callgraph_view_list_traceables_cb (GObject *object,
|
||||
gtk_column_view_set_model (self->traceables_column_view, GTK_SELECTION_MODEL (single));
|
||||
traceables_selection_changed_cb (self, 0, 0, single);
|
||||
}
|
||||
|
||||
gtk_widget_set_visible (gtk_widget_get_parent (GTK_WIDGET (self->right_paned)),
|
||||
model && g_list_model_get_n_items (model));
|
||||
}
|
||||
|
||||
static void
|
||||
@ -362,7 +367,7 @@ sysprof_callgraph_view_class_init (SysprofCallgraphViewClass *klass)
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, functions_column_view);
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, functions_name_sorter);
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, paned);
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, scrolled_window);
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, right_paned);
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, traceable_column_view);
|
||||
gtk_widget_class_bind_template_child (widget_class, SysprofCallgraphView, traceables_column_view);
|
||||
gtk_widget_class_bind_template_callback (widget_class, format_time_offset);
|
||||
@ -370,12 +375,16 @@ sysprof_callgraph_view_class_init (SysprofCallgraphViewClass *klass)
|
||||
klass->augment_size = GLIB_SIZEOF_VOID_P;
|
||||
|
||||
g_resources_register (libsysprof_gtk_get_resource ());
|
||||
|
||||
g_type_ensure (PANEL_TYPE_PANED);
|
||||
}
|
||||
|
||||
static void
|
||||
sysprof_callgraph_view_init (SysprofCallgraphView *self)
|
||||
{
|
||||
gtk_widget_init_template (GTK_WIDGET (self));
|
||||
|
||||
gtk_widget_set_visible (gtk_widget_get_parent (GTK_WIDGET (self->right_paned)), FALSE);
|
||||
}
|
||||
|
||||
static int
|
||||
|
||||
@ -2,15 +2,15 @@
|
||||
<interface>
|
||||
<template class="SysprofCallgraphView" parent="GtkWidget">
|
||||
<child>
|
||||
<object class="GtkPaned" id="paned">
|
||||
<property name="position">250</property>
|
||||
<property name="start-child">
|
||||
<object class="GtkPaned">
|
||||
<object class="PanelPaned" id="paned">
|
||||
<child>
|
||||
<object class="PanelPaned">
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="start-child">
|
||||
<child>
|
||||
<object class="GtkScrolledWindow" id="functions_scrolled_window">
|
||||
<property name="hscrollbar-policy">never</property>
|
||||
<property name="vexpand">true</property>
|
||||
<property name="propagate-natural-width">true</property>
|
||||
<property name="hscrollbar-policy">never</property>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="functions_column_view">
|
||||
<child>
|
||||
@ -24,25 +24,33 @@
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
<property name="child">
|
||||
<object class="GtkInscription">
|
||||
<property name="text-overflow">ellipsize-start</property>
|
||||
<property name="xalign">.0</property>
|
||||
<binding name="text">
|
||||
<lookup name="name">
|
||||
<lookup name="symbol" type="SysprofCallgraphSymbol">
|
||||
<lookup name="item">GtkListItem</lookup>
|
||||
</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
</object>
|
||||
</property>
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
<property name="child">
|
||||
<object class="GtkInscription">
|
||||
<property name="text-overflow">clip</property>
|
||||
<property name="nat-chars">15</property>
|
||||
<property name="xalign">.0</property>
|
||||
<binding name="text">
|
||||
<lookup name="name">
|
||||
<lookup name="symbol" type="SysprofCallgraphSymbol">
|
||||
<lookup name="item">GtkListItem</lookup>
|
||||
</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
<binding name="tooltip-text">
|
||||
<lookup name="name">
|
||||
<lookup name="symbol" type="SysprofCallgraphSymbol">
|
||||
<lookup name="item">GtkListItem</lookup>
|
||||
</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
</object>
|
||||
</property>
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
@ -51,11 +59,11 @@
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<property name="end-child">
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow" id="callers_scrolled_window">
|
||||
<property name="hscrollbar-policy">never</property>
|
||||
<property name="vexpand">true</property>
|
||||
<property name="min-content-height">150</property>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="callers_column_view">
|
||||
<style>
|
||||
@ -73,7 +81,7 @@
|
||||
<template class="GtkListItem">
|
||||
<property name="child">
|
||||
<object class="GtkInscription">
|
||||
<property name="text-overflow">ellipsize-start</property>
|
||||
<property name="text-overflow">ellipsize-middle</property>
|
||||
<property name="xalign">.0</property>
|
||||
<binding name="text">
|
||||
<lookup name="name">
|
||||
@ -82,6 +90,13 @@
|
||||
</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
<binding name="tooltip-text">
|
||||
<lookup name="name">
|
||||
<lookup name="symbol" type="SysprofCallgraphSymbol">
|
||||
<lookup name="item">GtkListItem</lookup>
|
||||
</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
</object>
|
||||
</property>
|
||||
</template>
|
||||
@ -95,30 +110,29 @@
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<property name="end-child">
|
||||
<object class="GtkPaned">
|
||||
<property name="start-child">
|
||||
<object class="GtkScrolledWindow" id="scrolled_window">
|
||||
<property name="hexpand">true</property>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow" id="descendants_scrolled_window">
|
||||
<property name="hexpand">true</property>
|
||||
<property name="propagate-natural-height">true</property>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="descendants_column_view">
|
||||
<style>
|
||||
<class name="data-table"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="descendants_column_view">
|
||||
<style>
|
||||
<class name="data-table"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="descendants_column">
|
||||
<property name="title" translatable="yes">Descendants</property>
|
||||
<property name="expand">true</property>
|
||||
<property name="sorter">
|
||||
<object class="GtkCustomSorter" id="descendants_name_sorter">
|
||||
</object>
|
||||
</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<object class="GtkColumnViewColumn" id="descendants_column">
|
||||
<property name="title" translatable="yes">Descendants</property>
|
||||
<property name="expand">true</property>
|
||||
<property name="sorter">
|
||||
<object class="GtkCustomSorter" id="descendants_name_sorter">
|
||||
</object>
|
||||
</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
@ -203,32 +217,33 @@
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<property name="end-child">
|
||||
<object class="GtkPaned">
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="end-child">
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="vexpand">false</property>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="PanelPaned" id="right_paned">
|
||||
<property name="hexpand">false</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="vexpand">true</property>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="traceables_column_view">
|
||||
<style>
|
||||
<class name="data-table"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="traceables_column_view">
|
||||
<style>
|
||||
<class name="data-table"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceables_time_column">
|
||||
<property name="title" translatable="yes">Time</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<object class="GtkColumnViewColumn" id="traceables_time_column">
|
||||
<property name="title" translatable="yes">Time</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
@ -248,17 +263,17 @@
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceables_pid_column">
|
||||
<property name="title" translatable="yes">PID</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceables_pid_column">
|
||||
<property name="title" translatable="yes">PID</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
@ -278,18 +293,18 @@
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceables_depth_column">
|
||||
<property name="title" translatable="yes">Depth</property>
|
||||
<property name="expand">true</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceables_depth_column">
|
||||
<property name="title" translatable="yes">Depth</property>
|
||||
<property name="expand">true</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
@ -309,57 +324,64 @@
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<property name="start-child">
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="vexpand">true</property>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="traceable_column_view">
|
||||
<style>
|
||||
<class name="data-table"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceable_symbol_column">
|
||||
<property name="title" translatable="yes">Stack Trace</property>
|
||||
<property name="expand">true</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow">
|
||||
<property name="propagate-natural-width">true</property>
|
||||
<property name="vexpand">true</property>
|
||||
<child>
|
||||
<object class="GtkColumnView" id="traceable_column_view">
|
||||
<style>
|
||||
<class name="data-table"/>
|
||||
</style>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceable_symbol_column">
|
||||
<property name="title" translatable="yes">Stack Trace</property>
|
||||
<property name="expand">true</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
<property name="child">
|
||||
<object class="GtkInscription">
|
||||
<property name="text-overflow">ellipsize-middle</property>
|
||||
<property name="text-overflow">clip</property>
|
||||
<property name="nat-chars">15</property>
|
||||
<binding name="text">
|
||||
<lookup name="name" type="SysprofSymbol">
|
||||
<lookup name="item">GtkListItem</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
<binding name="tooltip-text">
|
||||
<lookup name="name" type="SysprofSymbol">
|
||||
<lookup name="item">GtkListItem</lookup>
|
||||
</lookup>
|
||||
</binding>
|
||||
</object>
|
||||
</property>
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceable_depth_column">
|
||||
<property name="title" translatable="yes">Frame</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkColumnViewColumn" id="traceable_depth_column">
|
||||
<property name="title" translatable="yes">Frame</property>
|
||||
<property name="factory">
|
||||
<object class="GtkBuilderListItemFactory">
|
||||
<property name="bytes"><![CDATA[
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<interface>
|
||||
<template class="GtkListItem">
|
||||
@ -377,19 +399,17 @@
|
||||
</template>
|
||||
</interface>
|
||||
]]>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</template>
|
||||
|
||||
Reference in New Issue
Block a user