sysprof: add a waterfall to the marks section

This commit is contained in:
Christian Hergert
2023-07-14 12:01:16 -07:00
parent 1ad6f66b9e
commit d5320065c6
4 changed files with 156 additions and 0 deletions

View File

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
height="16px"
viewBox="0 0 16 16"
width="16px"
version="1.1"
id="svg5033"
sodipodi:docname="mark-table-symbolic.svg"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs5037" />
<sodipodi:namedview
id="namedview5035"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="5.6734271"
inkscape:cx="-88.218284"
inkscape:cy="69.446561"
inkscape:window-width="2560"
inkscape:window-height="1371"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg5033" />
<path
d="M 1,1 H 15 V 3 H 1 Z m 0,0"
id="path5029"
style="stroke-width:1.4676" />
<path
d="m 6,5 h 9 V 7 H 6 Z m 0,0"
id="path5029-3"
style="stroke-width:1.17671" />
<path
d="m 8,9 h 7 v 2 H 8 Z m 0,0"
id="path5029-3-6"
style="stroke-width:1.03775" />
<path
d="m 11,13 h 4 v 2 h -4 z m 0,0"
id="path5029-3-6-7"
style="stroke-width:0.784465" />
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -60,6 +60,8 @@ sysprof_marks_section_class_init (SysprofMarksSectionClass *klass)
g_type_ensure (SYSPROF_TYPE_DOCUMENT_MARK);
g_type_ensure (SYSPROF_TYPE_MARK_CHART);
g_type_ensure (SYSPROF_TYPE_MARK_TABLE);
g_type_ensure (SYSPROF_TYPE_SESSION_MODEL);
g_type_ensure (SYSPROF_TYPE_SESSION_MODEL_ITEM);
g_type_ensure (SYSPROF_TYPE_TIME_SERIES);
g_type_ensure (SYSPROF_TYPE_TIME_SPAN_LAYER);
}

View File

@ -84,6 +84,108 @@
</property>
</object>
</child>
<child>
<object class="AdwViewStackPage">
<property name="title" translatable="yes">Mark Waterfall</property>
<property name="icon-name">mark-waterfall-symbolic</property>
<property name="child">
<object class="GtkScrolledWindow">
<child>
<object class="GtkListView">
<property name="model">
<object class="GtkNoSelection">
<property name="model">
<object class="SysprofSessionModel">
<binding name="session">
<lookup name="session">SysprofMarksSection</lookup>
</binding>
<property name="model">
<object class="SysprofTimeFilterModel">
<binding name="time-span">
<lookup name="selected-time" type="SysprofSession">
<lookup name="session">SysprofMarksSection</lookup>
</lookup>
</binding>
<binding name="model">
<lookup name="marks" type="SysprofDocument">
<lookup name="document" type="SysprofSession">
<lookup name="session">SysprofMarksSection</lookup>
</lookup>
</lookup>
</binding>
</object>
</property>
</object>
</property>
</object>
</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="SysprofChart">
<property name="height-request">16</property>
<binding name="tooltip-text">
<lookup name="tooltip" type="SysprofDocumentMark">
<lookup name="item" type="SysprofSessionModelItem">
<lookup name="item">GtkListItem</lookup>
</lookup>
</lookup>
</binding>
<child>
<object class="SysprofTimeSpanLayer">
<binding name="axis">
<lookup name="selected-time-axis" type="SysprofSession">
<lookup name="session" type="SysprofSessionModelItem">
<lookup name="item">GtkListItem</lookup>
</lookup>
</lookup>
</binding>
<property name="series">
<object class="SysprofTimeSeries">
<property name="model">
<object class="SysprofSingleModel">
<binding name="item">
<lookup name="item">GtkListItem</lookup>
</binding>
</object>
</property>
<property name="label-expression">
<lookup name="message" type="SysprofDocumentMark">
<lookup name="item" type="SysprofSessionModelItem"/>
</lookup>
</property>
<property name="begin-time-expression">
<lookup name="time" type="SysprofDocumentMark">
<lookup name="item" type="SysprofSessionModelItem"/>
</lookup>
</property>
<property name="end-time-expression">
<lookup name="end-time" type="SysprofDocumentMark">
<lookup name="item" type="SysprofSessionModelItem"/>
</lookup>
</property>
</object>
</property>
</object>
</child>
</object>
</property>
</template>
</interface>
]]>
</property>
</object>
</property>
</object>
</child>
</object>
</property>
</object>
</child>
</object>
</child>
<child>

View File

@ -28,5 +28,6 @@
<file preprocess="xml-stripblanks">icons/scalable/actions/process-mounts-symbolic.svg</file>
<file preprocess="xml-stripblanks">icons/scalable/actions/storage-symbolic.svg</file>
<file preprocess="xml-stripblanks">icons/scalable/actions/system-log-symbolic.svg</file>
<file preprocess="xml-stripblanks">icons/scalable/actions/mark-waterfall-symbolic.svg</file>
</gresource>
</gresources>