
We must notify the font and font-desc properties when the list selection changes, and return NULL values for them when there is no selection in the list.
221 lines
10 KiB
XML
221 lines
10 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<interface domain="gtk30">
|
|
<!-- interface-requires gtk+ 3.10 -->
|
|
<object class="GtkListStore" id="model">
|
|
<columns>
|
|
<!-- column-name family -->
|
|
<column type="PangoFontFamily"/>
|
|
<!-- column-name face -->
|
|
<column type="PangoFontFace"/>
|
|
<!-- column-name description -->
|
|
<column type="GtkDelayedFontDescription"/>
|
|
<!-- column-name preview-title -->
|
|
<column type="gchararray"/>
|
|
</columns>
|
|
</object>
|
|
<object class="GtkTreeModelFilter" id="filter_model">
|
|
<property name="child-model">model</property>
|
|
<signal name="row-deleted" handler="row_deleted_cb" swapped="no"/>
|
|
<signal name="row-inserted" handler="row_inserted_cb" swapped="no"/>
|
|
</object>
|
|
<object class="GtkAdjustment" id="slider_adjustment">
|
|
<property name="upper">100</property>
|
|
<property name="step-increment">1</property>
|
|
<property name="page-increment">10</property>
|
|
<signal name="value-changed" handler="size_change_cb" swapped="no"/>
|
|
</object>
|
|
<object class="GtkAdjustment" id="spin_adjustment">
|
|
<property name="upper">100</property>
|
|
<property name="step-increment">1</property>
|
|
<property name="page-increment">10</property>
|
|
<signal name="value-changed" handler="size_change_cb" swapped="no"/>
|
|
</object>
|
|
<template class="GtkFontChooserWidget" parent="GtkBox">
|
|
<child>
|
|
<object class="GtkGrid" id="grid1">
|
|
<property name="visible">1</property>
|
|
<property name="row-spacing">6</property>
|
|
<property name="column-spacing">6</property>
|
|
<child>
|
|
<object class="GtkSearchEntry" id="search_entry">
|
|
<property name="visible">1</property>
|
|
<property name="can-focus">1</property>
|
|
<property name="hexpand">1</property>
|
|
<property name="activates-default">1</property>
|
|
<property name="primary-icon-name">edit-find-symbolic</property>
|
|
<property name="primary-icon-activatable">0</property>
|
|
<property name="secondary-icon-activatable">0</property>
|
|
<property name="primary-icon-sensitive">0</property>
|
|
<property name="secondary-icon-sensitive">0</property>
|
|
<property name="placeholder-text" translatable="yes">Search font name</property>
|
|
<signal name="search-changed" handler="text_changed_cb" swapped="no"/>
|
|
<signal name="stop-search" handler="stop_search_cb" swapped="no"/>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">0</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkStack" id="list_stack">
|
|
<property name="visible">1</property>
|
|
<child>
|
|
<object class="GtkGrid">
|
|
<property name="visible">1</property>
|
|
<property name="row-spacing">6</property>
|
|
<property name="column-spacing">6</property>
|
|
<child>
|
|
<object class="GtkScrolledWindow" id="list_scrolled_window">
|
|
<property name="width-request">400</property>
|
|
<property name="height-request">300</property>
|
|
<property name="visible">1</property>
|
|
<property name="can-focus">1</property>
|
|
<property name="hexpand">1</property>
|
|
<property name="vexpand">1</property>
|
|
<property name="hscrollbar-policy">never</property>
|
|
<property name="shadow-type">etched-in</property>
|
|
<child>
|
|
<object class="GtkTreeView" id="family_face_list">
|
|
<property name="visible">1</property>
|
|
<property name="can-focus">1</property>
|
|
<property name="model">filter_model</property>
|
|
<property name="headers-visible">0</property>
|
|
<property name="enable-search">0</property>
|
|
<property name="fixed-height-mode">1</property>
|
|
<signal name="cursor-changed" handler="cursor_changed_cb" swapped="no"/>
|
|
<signal name="row-activated" handler="row_activated_cb" swapped="no"/>
|
|
<signal name="style-updated" handler="gtk_font_chooser_widget_set_cell_size" object="GtkFontChooserWidget" after="yes" swapped="yes"/>
|
|
<child internal-child="selection">
|
|
<object class="GtkTreeSelection" id="treeview-selection1">
|
|
<property name="mode">browse</property>
|
|
<signal name="changed" handler="selection_changed"/>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkTreeViewColumn" id="family_face_column">
|
|
<property name="sizing">fixed</property>
|
|
<property name="title" translatable="yes">Font Family</property>
|
|
<child>
|
|
<object class="GtkCellRendererText" id="family_face_cell">
|
|
<property name="ellipsize">end</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">1</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="preview">
|
|
<property name="visible">1</property>
|
|
<property name="can-focus">1</property>
|
|
<property name="invisible-char">•</property>
|
|
<property name="placeholder-text" translatable="yes">Preview text</property>
|
|
<signal name="scroll-event" handler="resize_by_scroll_cb" swapped="no"/>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">2</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkScale" id="size_slider">
|
|
<property name="visible">1</property>
|
|
<property name="can-focus">1</property>
|
|
<property name="hexpand">1</property>
|
|
<property name="adjustment">slider_adjustment</property>
|
|
<property name="draw-value">0</property>
|
|
<property name="round-digits">0</property>
|
|
<signal name="scroll-event" handler="resize_by_scroll_cb" swapped="no"/>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">3</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSpinButton" id="size_spin">
|
|
<property name="visible">1</property>
|
|
<property name="can-focus">1</property>
|
|
<property name="invisible-char">•</property>
|
|
<property name="adjustment">spin_adjustment</property>
|
|
<signal name="output" handler="output_cb"/>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">1</property>
|
|
<property name="top-attach">3</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">list</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkGrid">
|
|
<property name="visible">1</property>
|
|
<property name="row-spacing">12</property>
|
|
<property name="hexpand">1</property>
|
|
<property name="vexpand">1</property>
|
|
<property name="halign">center</property>
|
|
<property name="valign">center</property>
|
|
<style>
|
|
<class name="dim-label"/>
|
|
</style>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">1</property>
|
|
<property name="gicon">fonticon</property>
|
|
<property name="pixel-size">64</property>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="visible">1</property>
|
|
<property name="label" translatable="yes">No Fonts Found</property>
|
|
<attributes>
|
|
<attribute name="weight" value="bold"/>
|
|
<attribute name="scale" value="1.2"/>
|
|
</attributes>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">1</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">empty</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">1</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">1</property>
|
|
</packing>
|
|
</child>
|
|
</template>
|
|
<object class="GThemedIcon" id="fonticon">
|
|
<property name="names">font-x-generic-symbolic
|
|
emblem-documents-symbolic</property>
|
|
</object>
|
|
</interface>
|