diff options
Diffstat (limited to 'share/ui')
71 files changed, 24852 insertions, 0 deletions
diff --git a/share/ui/Adwaita-dark.css b/share/ui/Adwaita-dark.css new file mode 100644 index 0000000..8abddae --- /dev/null +++ b/share/ui/Adwaita-dark.css @@ -0,0 +1,70 @@ +/* ADWAITA DARK SPECIFIC STYLE */ + +/* + * Keep as small as possible + */ + +.inkswitch slider { + min-width: 18px; + min-height: 18px; +} + +.inkswitch image { + color: transparent; + background-color: transparent; + background-image: image(transparent); + -gtk-icon-style:symbolic; +} + +.inkswitch { + margin: 2px; + padding: 0; + font-size: 8px; +} + +/* Reduce width of +/- buttons. */ +.up, +.down { + padding-left: 0; + padding-right: 0; +} + +notebook notebook header label { + margin:0; +} + +notebook notebook header tab { + min-height:23px; + padding:3px 7px; +} + +notebook notebook header { + padding:0; +} + +notebook notebook header image { + -gtk-icon-transform:scale(0.8); + margin:-3px 0 -3px 0; +} + +#PaintSelector .toggle, +#PaintSelector .radio, +#StrokeSelector .toggle, +#StrokeSelector .radio{ + padding:5px; + min-height:12px; +} +#StrokeSelector{ + padding:0px; + margin:0px; +} + +#AlignDistribute .toggle, +#AlignDistribute .radio, +#AlignDistribute button{ + padding:4px; +} + +#AlignDistribute #align { + margin-top:-15px; +} diff --git a/share/ui/Adwaita.css b/share/ui/Adwaita.css new file mode 100644 index 0000000..a2053e9 --- /dev/null +++ b/share/ui/Adwaita.css @@ -0,0 +1,71 @@ +/* ADWAITA SPECIFIC STYLE */ + + +/* + * Keep as small as possible + */ + +.inkswitch slider { + min-width: 18px; + min-height: 18px; +} + +.inkswitch image { + color: transparent; + background-color: transparent; + background-image: image(transparent); + -gtk-icon-style:symbolic; +} + +.inkswitch { + margin: 2px; + padding: 0; + font-size: 8px; +} + +/* Reduce width of +/- buttons. */ +.up, +.down { + padding-left: 0; + padding-right: 0; +} + +notebook notebook header label { + margin:0; +} + +notebook notebook header tab { + min-height:23px; + padding:3px 7px; +} + +notebook notebook header { + padding:0; +} + +notebook notebook header image { + -gtk-icon-transform:scale(0.8); + margin:-3px 0 -3px 0; +} + +#PaintSelector .toggle, +#PaintSelector .radio, +#StrokeSelector .toggle, +#StrokeSelector .radio{ + padding:5px; + min-height:12px; +} +#StrokeSelector{ + padding:0px; + margin:0px; +} + +#AlignDistribute .toggle, +#AlignDistribute .radio, +#AlignDistribute button{ + padding:4px; +} + +#AlignDistribute #align { + margin-top:-15px; +} diff --git a/share/ui/CMakeLists.txt b/share/ui/CMakeLists.txt new file mode 100644 index 0000000..2a4627b --- /dev/null +++ b/share/ui/CMakeLists.txt @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +file(GLOB _FILES "*.xml" "*.rc" "*.css" "*.ui" "*.glade" "*.svg" "*.ini" "*.lang") +install(FILES ${_FILES} DESTINATION ${INKSCAPE_SHARE_INSTALL}/ui) + +file(GLOB _RESOURCES "resources/*.png" "resources/*.svg") +install(FILES ${_RESOURCES} DESTINATION ${INKSCAPE_SHARE_INSTALL}/ui/resources) + +file(GLOB _SYNTAX_THEMES "syntax-themes/*.xml") +install(FILES ${_SYNTAX_THEMES} DESTINATION ${INKSCAPE_SHARE_INSTALL}/ui/syntax-themes) diff --git a/share/ui/Minwaita-Inkscape.css b/share/ui/Minwaita-Inkscape.css new file mode 100644 index 0000000..0e84cb7 --- /dev/null +++ b/share/ui/Minwaita-Inkscape.css @@ -0,0 +1,164 @@ +/* Minwaita-Inkscape SPECIFIC STYLE */ + + +/* + * Keep as small as possible + */ + +toolbar toolbutton > button:disabled, toolbar toolbutton > button:backdrop:disabled, .toolbar toolbutton > button:disabled, .toolbar toolbutton > button:backdrop:disabled { + -gtk-icon-effect: dim; +} + +scrollbar { + margin: -1px; +} + +filechooser #pathbarbox button { + color: #2e3436; + outline-color: rgba(46, 52, 54, 0.3); + border-color: #c4c4bf; + border-bottom-color: #a0a097; + background-image: linear-gradient(to bottom, #f5f5f4, #ebebe9 60%, #ddddd9); + text-shadow: 0 1px rgba(255, 255, 255, 0.769231); + -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); + box-shadow: inset 0 1px white; +} + +filechooser #pathbarbox button:hover { + color: #2e3436; + outline-color: rgba(46, 52, 54, 0.3); + border-color: #c4c4bf; + border-bottom-color: #a0a097; + text-shadow: 0 1px rgba(255, 255, 255, 0.769231); + -gtk-icon-shadow: 0 1px rgba(255, 255, 255, 0.769231); + box-shadow: inset 0 1px white; + background-image: linear-gradient(to bottom, white, #f5f5f4 60%, #ebebe9); +} + +filechooser #pathbarbox button:active { + color: #2e3436; + outline-color: rgba(46, 52, 54, 0.3); + border-color: #c4c4bf; + background-image: image(#e6e6e4); + box-shadow: inset 0 1px rgba(255, 255, 255, 0); + text-shadow: none; + -gtk-icon-shadow: none; +} + +filechooser #pathbarbox button:disabled { + border-color: #c4c4bf; + background-image: image(#f9f9f8); + text-shadow: none; + -gtk-icon-shadow: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0); +} + +filechooser #pathbarbox button:disabled label, filechooser #pathbarbox button:disabled { + color: #313739; +} + +filechooser #pathbarbox button:backdrop { + border-color: #cecec9; + background-image: image(#f5f5f4); + text-shadow: none; + -gtk-icon-shadow: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0); +} + +filechooser #pathbarbox button:backdrop label, filechooser #pathbarbox button:backdrop { + color: #313739; +} + +filechooser #pathbarbox button:backdrop:disabled { + border-color: #cecec9; + background-image: image(#f9f9f8); + text-shadow: none; + -gtk-icon-shadow: none; + box-shadow: inset 0 1px rgba(255, 255, 255, 0); +} + +filechooser #pathbarbox button:backdrop:disabled label, filechooser #pathbarbox button:backdrop:disabled { + color: #566164; +} + +button.titlebutton { + color:inherit; + border-style: none; + background-position: center; + background-repeat: no-repeat; + background-image: -gtk-scaled(url("assets/window-buttons/titlebutton.png"), url("assets/window-buttons/titlebutton@2.png")); + text-shadow: none; + -gtk-icon-shadow:none; +} + +window.nautilus-desktop-window box.searchbar-container.vertical > searchbar, window.nautilus-desktop-window box.searchbar-container.vertical > searchbar:backdrop { + background-color: transparent; +} + +viewport.frame > list.tweak-categories label:backdrop { + color: #313739; +} + +.primary-toolbar button.raised { + margin: 0px; +} + +scrolledwindow undershoot.top,scrolledwindow undershoot.bottom,scrolledwindow undershoot.left,scrolledwindow undershoot.right { + background-image: none; +} + +#AuxToolbox { + min-height:38px; +} + +notebook notebook header label { + font-weight:normal; +} + +notebook notebook header image { + -gtk-icon-transform:scale(0.75); + margin:-1px 0 -1px -3px; +} + +/* checked buttons: light theme version */ +button.radio:checked, +button.toggle:checked { + background-color: transparent; + background-image: image(linear-gradient(rgba(0,0,0,0.16), rgba(0,0,0,0.04))); +} + +/* checked buttons: dark theme version */ +.dark button.radio:checked, +.dark button.toggle:checked { + background-color: transparent; + background-image: image(@theme_selected_bg_color); +} + +/* scale part without border doesn't match with a spinbutton; add border */ +#InkSpinScale trough { + border: 1px solid alpha(@theme_fg_color, 0.15); +} + +.dark #InkSpinScale trough { + border-color: alpha(black, 0.25); +} + +#LPEEffectItem expander title label { + min-height:21px; +} + +/************* + * Expanders * + *************/ + +expander combobox arrow { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +expander combobox arrow:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} + +expander combobox arrow:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} diff --git a/share/ui/align-and-distribute.ui b/share/ui/align-and-distribute.ui new file mode 100644 index 0000000..63e594f --- /dev/null +++ b/share/ui/align-and-distribute.ui @@ -0,0 +1,1339 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkListStore" id="RelativeToNode"> + <columns> + <!-- column-name RelativeTo --> + <column type="gchararray"/> + <!-- column-name Argument --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Last selected</col> + <col id="1">last</col> + </row> + <row> + <col id="0" translatable="yes">First selected</col> + <col id="1">first</col> + </row> + <row> + <col id="0" translatable="yes">Middle of selection</col> + <col id="1">middle</col> + </row> + <row> + <col id="0" translatable="yes">Min value</col> + <col id="1">min</col> + </row> + <row> + <col id="0" translatable="yes">Max value</col> + <col id="1">max</col> + </row> + </data> + </object> + <object class="GtkListStore" id="RelativeToObject"> + <columns> + <!-- column-name RelativeTo --> + <column type="gchararray"/> + <!-- column-name Argument --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Last selected</col> + <col id="1">last</col> + </row> + <row> + <col id="0" translatable="yes">First selected</col> + <col id="1">first</col> + </row> + <row> + <col id="0" translatable="yes">Biggest object</col> + <col id="1">biggest</col> + </row> + <row> + <col id="0" translatable="yes">Smallest object</col> + <col id="1">smallest</col> + </row> + <row> + <col id="0" translatable="yes">Page</col> + <col id="1">page</col> + </row> + <row> + <col id="0" translatable="yes">Drawing</col> + <col id="1">drawing</col> + </row> + <row> + <col id="0" translatable="yes">Selection Area</col> + <col id="1">selection</col> + </row> + </data> + </object> + <object class="GtkAdjustment" id="RemoveOverlap_HGap"> + <property name="lower">-1000</property> + <property name="upper">1000</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="RemoveOverlap_VGap"> + <property name="lower">-1000</property> + <property name="upper">1000</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkImage" id="image-align-horizontal-baseline"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-baseline</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-horizontal-center"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-center</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-horizontal-left"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-left</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-horizontal-left-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-left-to-anchor</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-horizontal-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-node</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-horizontal-right"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-right</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-horizontal-right-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-right-to-anchor</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-on-canvas"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-on-canvas</property> + </object> + <object class="GtkImage" id="image-align-sel-as-group"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-sel-as-group</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-baseline"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-baseline</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-bottom"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-bottom</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-bottom-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-bottom-to-anchor</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-center"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-center</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-node</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-top"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-top</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-align-vertical-top-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-vertical-top-to-anchor</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-graph"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-graph</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-horizontal-baseline"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-horizontal-baseline</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-horizontal-center"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-horizontal-center</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-horizontal-gaps"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-horizontal-gaps</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-horizontal-left"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-horizontal-left</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-horizontal-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-horizontal-node</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-horizontal-right"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-horizontal-right</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-randomize"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-randomize</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-remove-overlaps"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-remove-overlaps</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-unclump"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-unclump</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-vertical-baseline"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-vertical-baseline</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-vertical-bottom"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-vertical-bottom</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-vertical-center"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-vertical-center</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-vertical-gaps"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-vertical-gaps</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-vertical-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-vertical-node</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-distribute-vertical-top"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">distribute-vertical-top</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-exchange-positions"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">exchange-positions</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-exchange-positions-clockwise"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">exchange-positions-clockwise</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image-exchange-positions-zorder"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">exchange-positions-zorder</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkBox" id="align-and-distribute-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="align-and-distribute-object"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="orientation">vertical</property> + <property name="spacing">4</property> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">4</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="left-padding">12</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <!-- n-columns=2 n-rows=2 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkToggleButton" id="align-on-canvas"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-on-canvas</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Enable on-canvas alignment handles</property> + <property name="action-name">app.object-align-on-canvas</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="align-move-as-group"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-sel-as-group</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Treat selection as group</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="label" translatable="yes">Alignment handles with third click</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="label" translatable="yes">Move/align selection as group</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Relative to:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="align-relative-object"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="model">RelativeToObject</property> + <property name="active">0</property> + <property name="id-column">1</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <!-- n-columns=6 n-rows=2 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="align-horizontal-right-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-right-to-anchor</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align right edges of objects to the left edge of anchor</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-horizontal-left"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-left</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align left edges</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-horizontal-center"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-center</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Center on vertical axis</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-horizontal-right"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-right</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align right edges</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-horizontal-left-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-left-to-anchor</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align left edges of objects to the right edge of anchor</property> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-horizontal-baseline"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-baseline</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align baseline anchors of texts horizontally</property> + </object> + <packing> + <property name="left-attach">5</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-vertical-bottom-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-bottom-to-anchor</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align bottom edges of objects to the top edge of anchor</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-vertical-top"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-top</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align top edges</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-vertical-center"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-center</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Center on horizontal axis</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-vertical-bottom"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-bottom</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align bottom edges</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-vertical-top-to-anchor"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-top-to-anchor</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align top edges of objects to bottom edge of anchor</property> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-vertical-baseline"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-baseline</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align baselines of texts</property> + </object> + <packing> + <property name="left-attach">5</property> + <property name="top-attach">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="ypad">2</property> + <property name="label" translatable="yes">Align</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">4</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="left-padding">12</property> + <child> + <!-- n-columns=5 n-rows=2 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'left'</property> + <property name="image">image-distribute-horizontal-left</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute horizontally with even spacing between left edges</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'hcenter'</property> + <property name="image">image-distribute-horizontal-center</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute horizontally with even spacing between centers</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'right'</property> + <property name="image">image-distribute-horizontal-right</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute horizontally with even spacing between right edges</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'hgap'</property> + <property name="image">image-distribute-horizontal-gaps</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute horizontally with even horizontal gaps</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute-text</property> + <property name="action-target">'horizontal'</property> + <property name="image">image-distribute-horizontal-baseline</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute text anchors horizontally</property> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'top'</property> + <property name="image">image-distribute-vertical-top</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute vertically with even spacing between top edges</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'vcenter'</property> + <property name="image">image-distribute-vertical-center</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute vertically with even spacing between centers</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'bottom'</property> + <property name="image">image-distribute-vertical-bottom</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute vertically with even spacing between bottom edges</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute</property> + <property name="action-target">'vgap'</property> + <property name="image">image-distribute-vertical-gaps</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute vertically with even vertical gaps</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-distribute-text</property> + <property name="action-target">'vertical'</property> + <property name="image">image-distribute-vertical-baseline</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute text anchors vertically</property> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="ypad">2</property> + <property name="label" translatable="yes">Distribute</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">4</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="left-padding">12</property> + <child> + <!-- n-columns=6 n-rows=1 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-rearrange</property> + <property name="action-target">'graph'</property> + <property name="image">image-distribute-graph</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Nicely arrange selected connector network</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-rearrange</property> + <property name="action-target">'exchange'</property> + <property name="image">image-exchange-positions</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Exchange positions of selected objects - selection order</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-rearrange</property> + <property name="action-target">'exchangez'</property> + <property name="image">image-exchange-positions-zorder</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Exchange positions of selected objects - stacking order</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-rearrange</property> + <property name="action-target">'rotate'</property> + <property name="image">image-exchange-positions-clockwise</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Exchange positions of selected objects - rotate around center point</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-rearrange</property> + <property name="action-target">'randomize'</property> + <property name="image">image-distribute-randomize</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Randomize centers in both dimensions</property> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.object-rearrange</property> + <property name="action-target">'unclump'</property> + <property name="image">image-distribute-unclump</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Unclump objects: try to equalize edge-to-edge distances</property> + </object> + <packing> + <property name="left-attach">5</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="ypad">2</property> + <property name="label" translatable="yes">Rearrange</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="left-padding">12</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">H:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="remove-overlap-hgap"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="input-purpose">number</property> + <property name="adjustment">RemoveOverlap_HGap</property> + <property name="numeric">True</property> + <property name="tooltip-text" translatable="yes">Minimum horizontal gap (in pixel units) between bounding boxes</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="label" translatable="yes">V:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="remove-overlap-vgap"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="input-purpose">number</property> + <property name="adjustment">RemoveOverlap_VGap</property> + <property name="numeric">True</property> + <property name="tooltip-text" translatable="yes">Minimum vertical gap (in pixel units) between bounding boxes</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="remove-overlap-button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="margin-start">4</property> + <property name="image">image-distribute-remove-overlaps</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Move objects as little as possible so that their bounding boxes do not overlap</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="ypad">2</property> + <property name="label" translatable="yes">Remove overlaps</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="align-and-distribute-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="orientation">vertical</property> + <property name="spacing">4</property> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">4</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="left-padding">12</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Relative to:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="align-relative-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="model">RelativeToNode</property> + <property name="active">0</property> + <property name="id-column">1</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <!-- n-columns=2 n-rows=1 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="align-node-horizontal"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-vertical-node</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align selected nodes to a common horizontal line</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="align-node-vertical"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image-align-horizontal-node</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Align selected nodes to a common vertical line</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="ypad">2</property> + <property name="label" translatable="yes">Align Nodes</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkAlignment"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="left-padding">12</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <!-- n-columns=2 n-rows=1 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">win.node-distribute-horizontal</property> + <property name="image">image-distribute-horizontal-node</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute selected nodes horizontally</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">win.node-distribute-vertical</property> + <property name="image">image-distribute-vertical-node</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <property name="tooltip-text" translatable="yes">Distribute selected nodes vertically</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="ypad">2</property> + <property name="label" translatable="yes">Distribute Nodes</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/attribute-edit-component.glade b/share/ui/attribute-edit-component.glade new file mode 100644 index 0000000..e952e05 --- /dev/null +++ b/share/ui/attribute-edit-component.glade @@ -0,0 +1,335 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <!-- interface-css-provider-path style.css --> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">rounding</property> + </object> + <object class="GtkBox" id="main-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow" id="scrolled-wnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTreeView" id="tree-view"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="headers-clickable">False</property> + <property name="enable-search">False</property> + <property name="hover-selection">True</property> + <property name="activate-on-single-click">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="content-sw"> + <property name="can-focus">True</property> + <property name="no-show-all">True</property> + <property name="shadow-type">in</property> + <child> + <placeholder/> + </child> + <style> + <class name="mono-font"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkBox" id="status-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="status-label"> + <property name="width-request">1</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="use-markup">True</property> + <property name="wrap">True</property> + <style> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">2</property> + <property name="pack-type">end</property> + <property name="position">2</property> + </packing> + </child> + </object> + <object class="GtkMenu" id="menu1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="reserve-toggle-size">False</property> + <child> + <object class="GtkMenuItem" id="_0"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" context="Precision" comments="This symbolizes precision of 0 digits after the decimal separator." translatable="yes">N</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="_1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" context="Precision" comments="This symbolizes precision of 1 digit after the decimal separator. Please adjust to your language's number format (e.g. N,N)." translatable="yes">N.N</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="_2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" context="Precision" comments="This symbolizes precision of 2 digits after the decimal separator. Please adjust to your language's number format (e.g. N,NN)." translatable="yes">N.NN</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="_3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" context="Precision" comments="This symbolizes precision of 3 digits after the decimal separator. Please adjust to your language's number format (e.g. N,NNN)." translatable="yes">N.NNN</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="_4"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" context="Precision" comments="This symbolizes precision of 4 digits after the decimal separator. Please adjust to your language's number format (e.g. N,NNNN)." translatable="yes">N.NNNN</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="_5"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" context="Precision" comments="This symbolizes precision of 5 digits after the decimal separator. Please adjust to your language's number format (e.g. N,NNNNN)." translatable="yes">N.NNNNN</property> + <property name="use-underline">True</property> + </object> + </child> + </object> + <object class="GtkPopover" id="popup"> + <property name="can-focus">False</property> + <property name="relative-to">tree-view</property> + <property name="position">bottom</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow" id="scroll-wnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">3</property> + <property name="margin-end">3</property> + <property name="margin-top">3</property> + <property name="margin-bottom">4</property> + <property name="vexpand">True</property> + <property name="propagate-natural-width">True</property> + <child> + <placeholder/> + </child> + <style> + <class name="mono-font"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-bottom">4</property> + <property name="spacing">6</property> + <child type="center"> + <object class="GtkBox" id="rounding-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">5</property> + <child> + <object class="GtkButton" id="btn-truncate"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Round selected numbers to n digits</property> + <property name="image">image1</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="btn-menu"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="margin-start">2</property> + <property name="relief">none</property> + <property name="popup">menu1</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="precision"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes" context="Precision" comments="This symbolizes precision of 5 digits after the decimal separator. Please adjust to your language's number format (e.g. N,NNNNN).">N.NNNNN</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <style> + <class name="menu-btn-tight"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">9</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="help"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Shift+Return to close</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="max-width-chars">2</property> + <property name="yalign">0.5</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-ok"> + <property name="label" translatable="yes">OK</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-cancel"> + <property name="label" translatable="yes">Cancel</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">2</property> + </packing> + </child> + <style> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkSizeGroup"> + <widgets> + <widget name="btn-cancel"/> + <widget name="btn-ok"/> + </widgets> + </object> + <object class="GtkListStore" id="store"> + <columns> + <!-- column-name attr-name --> + <column type="gchararray"/> + <!-- column-name attr-value --> + <column type="gchararray"/> + <!-- column-name attr-value-renderer --> + <column type="gchararray"/> + </columns> + </object> +</interface> diff --git a/share/ui/bad-marker.svg b/share/ui/bad-marker.svg new file mode 100644 index 0000000..85fde2d --- /dev/null +++ b/share/ui/bad-marker.svg @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + width="16" height="16" + viewBox="0 0 16 16" + version="1.1" id="svg8" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs2" /> + <path + style="fill:#ff0000;fill-opacity:0.25;stroke:#ff0000;stroke-width:1" + d="M 5.9834892,7.3456354 2.0830116,9.2070762 1.5519342,14.198434 13.484581,15.468061 14.12518,9.4473561 8.8356711,11.95845 Z" + id="path2717" /> + <path + style="fill:#ff0000;stroke:#ff0000;stroke-width:1;fill-opacity:0.25" + d="M 1.4637433,2.0449526 2.1322594,7.4569446 5.7952963,4.5307307 9.6219492,8.3777362 13.91508,4.9604165 13.373228,0.57383395 Z" + id="rect797" /> +</svg> diff --git a/share/ui/canvas-notice.glade b/share/ui/canvas-notice.glade new file mode 100644 index 0000000..16eb224 --- /dev/null +++ b/share/ui/canvas-notice.glade @@ -0,0 +1,84 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkRevealer" id="canvas-notice"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">start</property> + <child> + <object class="GtkFrame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label-xalign">0</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">20</property> + <child> + <object class="GtkImage" id="notice-icon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">6</property> + <property name="margin-end">6</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="icon-name">dialog-information</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="notice-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="hexpand">True</property> + <property name="label">Example text for the notification widget!</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="notice-close"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="relief">none</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">window-close-symbolic</property> + <property name="icon_size">1</property> + </object> + </child> + <style> + <class name="image-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <style> + <class name="app-notification"/> + </style> + </object> + </child> + </object> +</interface> diff --git a/share/ui/color-palette.glade b/share/ui/color-palette.glade new file mode 100644 index 0000000..5ceb2b9 --- /dev/null +++ b/share/ui/color-palette.glade @@ -0,0 +1,473 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkAdjustment" id="adjustment-aspect"> + <property name="lower">-1</property> + <property name="upper">1</property> + <property name="step-increment">0.10</property> + <property name="page-increment">0.20</property> + </object> + <object class="GtkAdjustment" id="adjustment-border"> + <property name="upper">8</property> + <property name="step-increment">1</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="adjustment-rows"> + <property name="lower">1</property> + <property name="upper">5</property> + <property name="value">1</property> + <property name="step-increment">1</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="adjustment-size"> + <property name="lower">4</property> + <property name="upper">32</property> + <property name="value">8</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-up</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-down</property> + </object> + <object class="GtkImage" id="image4"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-next</property> + </object> + <object class="GtkImage" id="image5"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-previous</property> + </object> + <object class="GtkMenu" id="menu"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkSeparatorMenuItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="config"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Configure...</property> + <property name="use-underline">True</property> + </object> + </child> + </object> + <object class="GtkBox" id="palette-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkFlowBox" id="pinned"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">end</property> + <property name="margin-top">1</property> + <property name="margin-bottom">1</property> + <property name="homogeneous">True</property> + <property name="column-spacing">1</property> + <property name="row-spacing">1</property> + <property name="min-children-per-line">1</property> + <property name="selection-mode">none</property> + <style> + <class name="color-palette"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="scroll-wnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">end</property> + <property name="margin-top">1</property> + <property name="margin-bottom">1</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="hscrollbar-policy">external</property> + <property name="vscrollbar-policy">never</property> + <property name="min-content-width">1</property> + <property name="min-content-height">1</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkViewport" id="view-port"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkFlowBox" id="flow-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">end</property> + <property name="homogeneous">True</property> + <property name="column-spacing">1</property> + <property name="row-spacing">1</property> + <property name="min-children-per-line">6</property> + <property name="max-children-per-line">6</property> + <property name="selection-mode">none</property> + <style> + <class name="color-palette"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-left"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="no-show-all">True</property> + <property name="margin-start">1</property> + <property name="margin-end">1</property> + <property name="image">image5</property> + <property name="relief">none</property> + <style> + <class name="small"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-right"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="no-show-all">True</property> + <property name="margin-start">1</property> + <property name="margin-end">1</property> + <property name="image">image4</property> + <property name="relief">none</property> + <style> + <class name="small"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkFlowBox" id="scroll-buttons"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="orientation">vertical</property> + <property name="column-spacing">1</property> + <property name="max-children-per-line">2</property> + <property name="selection-mode">none</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="width-request">10</property> + <property name="height-request">10</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkButton" id="btn-up"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="margin-start">1</property> + <property name="margin-end">1</property> + <property name="image">image1</property> + <property name="relief">none</property> + <style> + <class name="small"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="width-request">10</property> + <property name="height-request">10</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkButton" id="btn-down"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="margin-start">1</property> + <property name="margin-end">1</property> + <property name="image">image2</property> + <property name="relief">none</property> + <style> + <class name="small"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="btn-menu"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <property name="valign">end</property> + <property name="margin-start">1</property> + <property name="margin-end">1</property> + <property name="popup">menu</property> + <property name="direction">none</property> + <property name="use-popover">False</property> + <child> + <placeholder/> + </child> + <style> + <class name="small"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">5</property> + </packing> + </child> + <style> + <class name="color-palette-main-box"/> + </style> + </object> + <object class="GtkPopover" id="config-popup"> + <property name="can-focus">False</property> + <property name="relative-to">btn-menu</property> + <property name="position">top</property> + <child> + <!-- n-columns=2 n-rows=8 --> + <object class="GtkGrid" id="main-grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="border-width">12</property> + <property name="row-spacing">7</property> + <property name="column-spacing">8</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Tile size:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkScale" id="border-slider"> + <property name="width-request">180</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-border</property> + <property name="show-fill-level">True</property> + <property name="fill-level">50</property> + <property name="round-digits">0</property> + <property name="digits">0</property> + <property name="value-pos">right</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Border:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkScale" id="size-slider"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-size</property> + <property name="show-fill-level">True</property> + <property name="fill-level">50</property> + <property name="round-digits">0</property> + <property name="digits">0</property> + <property name="value-pos">right</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="row-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Rows:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkScale" id="row-slider"> + <property name="width-request">180</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-rows</property> + <property name="show-fill-level">True</property> + <property name="fill-level">50</property> + <property name="round-digits">0</property> + <property name="digits">0</property> + <property name="value-pos">right</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="aspect-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Aspect:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkScale" id="aspect-slider"> + <property name="width-request">180</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-aspect</property> + <property name="show-fill-level">True</property> + <property name="fill-level">50</property> + <property name="value-pos">right</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="use-sb"> + <property name="label" translatable="yes">Use scrollbar</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="stretch"> + <property name="label" translatable="yes">Stretch to fill</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="enlarge"> + <property name="label" translatable="yes">Enlarge pinned colors</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="show-labels"> + <property name="label" translatable="yes">Show color labels</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/command-palette-main.glade b/share/ui/command-palette-main.glade new file mode 100644 index 0000000..9666db8 --- /dev/null +++ b/share/ui/command-palette-main.glade @@ -0,0 +1,114 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.22"/> + <object class="GtkBox" id="CPBase"> + <property name="name">CommandPaletteBase</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkSearchBar" id="CPSearchBar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="search-mode-enabled">True</property> + <child> + <object class="GtkBox" id="CPHeader"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkSearchEntry" id="CPFilter"> + <property name="name">CPFilter</property> + <property name="width-request">696</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + <style> + <class name=".cpfilter"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="CPListBase"> + <property name="height-request">300</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkScrolledWindow" id="CPSuggestionsScroll"> + <property name="height-request">300</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkListBox" id="CPSuggestions"> + <property name="name">CPSuggestions</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="CPHistoryScroll"> + <property name="height-request">300</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkListBox" id="CPHistory"> + <property name="visible">True</property> + <property name="can-focus">True</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/command-palette-operation.glade b/share/ui/command-palette-operation.glade new file mode 100644 index 0000000..ea1da5f --- /dev/null +++ b/share/ui/command-palette-operation.glade @@ -0,0 +1,179 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkEventBox" id="CPOperation"> + <property name="name">CPOperation</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="border-width">0</property> + <child> + <object class="GtkBox" id="CPSynapseBox"> + <property name="name">CPSynapseBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="CPName"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text">Untranslated Name</property> + <property name="margin-start">6</property> + <property name="margin-end">6</property> + <property name="margin-top">6</property> + <property name="label">Name</property> + <property name="wrap">True</property> + <property name="wrap-mode">word-char</property> + <property name="xalign">0</property> + <attributes> + <attribute name="weight" value="semibold"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="CPDescription"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">6</property> + <property name="margin-end">6</property> + <property name="margin-bottom">3</property> + <property name="hexpand">True</property> + <property name="label">A very long description to fill empty space until we encounter ellipsis may be wrong spelling</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="CPActionFullButton"> + <property name="sensitive">False</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Click to Copy</property> + <property name="valign">center</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="copy-icon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-right">5</property> + <property name="margin-end">5</property> + <property name="icon-name">edit-copy</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="CPActionFullLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Label </property> + <property name="wrap">True</property> + <property name="wrap-mode">word-char</property> + <property name="width-chars">20</property> + <property name="max-width-chars">20</property> + <property name="xalign">0.10000000149011612</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <style> + <class name="flat"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="CPGroup"> + <property name="name">CPGroup</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label">Group</property> + <property name="wrap">True</property> + <property name="wrap-mode">word-char</property> + <property name="width-chars">20</property> + <property name="max-width-chars">20</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="CPShortcut"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Shortcut</property> + <property name="valign">start</property> + <property name="margin-top">3</property> + <property name="label" translatable="yes">Ctrl+F</property> + <property name="wrap">True</property> + <property name="wrap-mode">word-char</property> + <property name="width-chars">20</property> + <property name="max-width-chars">20</property> + <style> + <class name="inksmall"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/completion-box.glade b/share/ui/completion-box.glade new file mode 100644 index 0000000..c98ad3e --- /dev/null +++ b/share/ui/completion-box.glade @@ -0,0 +1,92 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkListStore" id="list"> + <columns> + <!-- column-name id --> + <column type="gint"/> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name icon --> + <column type="gchararray"/> + <!-- column-name search --> + <column type="gchararray"/> + </columns> + </object> + <object class="GtkEntryCompletion" id="completion"> + <property name="model">list</property> + <property name="text-column">1</property> + <property name="inline-completion">True</property> + <property name="popup-set-width">False</property> + <child> + <object class="GtkCellRendererPixbuf" id="icon-cell"> + <property name="stock_size">3</property> + </object> + <attributes> + <attribute name="icon-name">2</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText" id="name-cell"> + <property name="width">200</property> + </object> + <attributes> + <attribute name="markup">1</attribute> + </attributes> + </child> + </object> + <object class="GtkMenu" id="popup"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="reserve-toggle-size">False</property> + <property name="menu-type-hint">combo</property> + </object> + <object class="GtkBox" id="main-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <child> + <object class="GtkSearchEntry" id="search"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="activates-default">True</property> + <property name="width-chars">1</property> + <property name="caps-lock-warning">False</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + <property name="placeholder-text" translatable="yes">Add item</property> + <property name="completion">completion</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="menu-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="popup">popup</property> + <property name="use-popover">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <style> + <class name="linked"/> + </style> + </object> +</interface> diff --git a/share/ui/default-dialog-state.ini b/share/ui/default-dialog-state.ini new file mode 100644 index 0000000..1de9a77 --- /dev/null +++ b/share/ui/default-dialog-state.ini @@ -0,0 +1,37 @@ +# This file describes initial state of dialogs after fresh Inkscape installation +# (when ~/.config/inkscape/dialogs-state-ex.ini is missing). + +[Windows] +Count=1 + +[Window0Column0] +# list of dialogs docked and open by default: +ColumnWidth=330 +Notebook0Dialogs=Objects;FillStroke; +NotebookCount=1 +BeforeCanvas=false + +[Window0] +ColumnCount=1 +Floating=false + +# list of dialogs that will be open floating by default: +# note: the 'state' is left empty to use default (display-dependent) coordinates +[transient] +state1= +dialogs1=CloneTiler; +state2= +dialogs2=DocumentProperties; +state3= +dialogs3=DocumentResources; +state4= +dialogs4=FilterEffects; +state5= +dialogs5=FontCollections; +state6= +dialogs6=Input; +state7= +dialogs7=Preferences; +state8= +dialogs8=XMLEditor; +count=8 diff --git a/share/ui/dialog-crash.glade b/share/ui/dialog-crash.glade new file mode 100644 index 0000000..7735313 --- /dev/null +++ b/share/ui/dialog-crash.glade @@ -0,0 +1,104 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkTextBuffer" id="stacktrace"> + <property name="text">stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktrace +stacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktracestacktra +stacktrace +stacktrace</property> + </object> + <object class="GtkMessageDialog" id="crash_dialog"> + <property name="can-focus">False</property> + <property name="message-type">error</property> + <property name="buttons">ok</property> + <property name="resizable">True</property> + <property name="text" translatable="yes">Inkscape has crashed and will now close.</property> + <property name="secondary-text" translatable="yes">If you can reproduce this crash, please <a href="https://inkscape.org/report">file a bug</a> and include the backtrace from the area below.</property> + <property name="secondary-use-markup">True</property> + <child internal-child="vbox"> + <object class="GtkBox"> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <child internal-child="action_area"> + <object class="GtkButtonBox"> + <property name="can-focus">False</property> + <property name="homogeneous">True</property> + <property name="layout-style">end</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="message"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-top">2</property> + <property name="margin-bottom">8</property> + <property name="label">(this text will be replaced) autosave file has been created</property> + <property name="use-markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="stacktrace_area"> + <property name="name">stacktrace_area</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTextView"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="vexpand">True</property> + <property name="editable">False</property> + <property name="buffer">stacktrace</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/dialog-css.glade b/share/ui/dialog-css.glade new file mode 100644 index 0000000..4a5febb --- /dev/null +++ b/share/ui/dialog-css.glade @@ -0,0 +1,134 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.22.1 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkBox" id="CSSSelectorContainer"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="baseline_position">top</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkEventBox" id="CSSSelectorEventAdd"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_right">5</property> + <property name="icon_name">list-add</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="CSSSelectorEventBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkLabel" id="CSSSelector"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Selector</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="CSSEditSelector"> + <property name="can_focus">True</property> + <property name="no_show_all">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label"> {</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkTreeView" id="CSSTree"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="has_tooltip">True</property> + <property name="hscroll_policy">natural</property> + <property name="vscroll_policy">natural</property> + <property name="enable_search">False</property> + <property name="fixed_height_mode">True</property> + <property name="hover_selection">True</property> + <property name="show_expanders">False</property> + <property name="tooltip_column">6</property> + <property name="activate_on_single_click">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection" id="CSSTreeData"/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="CSSSelectorFilled"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="no_show_all">True</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="label">}</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_top">6</property> + <property name="margin_bottom">6</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-document-resources.glade b/share/ui/dialog-document-resources.glade new file mode 100644 index 0000000..fe1d0b5 --- /dev/null +++ b/share/ui/dialog-document-resources.glade @@ -0,0 +1,463 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkImage" id="image-select"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">object-select</property> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">document-cleanup</property> + </object> + <object class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-delete</property> + </object> + <object class="GtkImage" id="image4"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">document-export</property> + </object> + <object class="GtkListStore" id="liststore"> + <columns> + <!-- column-name resource --> + <column type="gchararray"/> + <!-- column-name id --> + <column type="gchararray"/> + <!-- column-name icon --> + <column type="gchararray"/> + <!-- column-name count --> + <column type="gulong"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Overview</col> + <col id="1">stats</col> + <col id="2">-</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="no">-</col> + <col id="1">-</col> + <col id="2">-</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Colors</col> + <col id="1">colors</col> + <col id="2">color-palette</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">External</col> + <col id="1">external</col> + <col id="2">file-link</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Filters</col> + <col id="1">filters</col> + <col id="2">dialog-filters</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Fonts</col> + <col id="1">fonts</col> + <col id="2">dialog-text-and-font</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Gradients</col> + <col id="1">gradients</col> + <col id="2">paint-gradient-linear</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Images</col> + <col id="1">images</col> + <col id="2">shape-image</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Markers</col> + <col id="1">markers</col> + <col id="2">markers</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Metadata</col> + <col id="1">metadata</col> + <col id="2">document-properties</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Patterns</col> + <col id="1">patterns</col> + <col id="2">paint-pattern</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Styles</col> + <col id="1">styles</col> + <col id="2">dialog-fill-and-stroke</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Swatches</col> + <col id="1">swatches</col> + <col id="2">paint-swatch</col> + <col id="3">0</col> + </row> + <row> + <col id="0" translatable="yes">Symbols</col> + <col id="1">symbols</col> + <col id="2">shape-symbol</col> + <col id="3">0</col> + </row> + </data> + </object> + <object class="GtkBox" id="main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="tbar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="margin-start">3</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + <property name="spacing">3</property> + <child> + <object class="GtkLabel" id="spacer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label"> </property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="edit"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Edit label</property> + <property name="image">image1</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="select"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Select this on canvas (if applicable) or in the XML dialog (e.g. a pattern in the 'defs' section)</property> + <property name="image">image-select</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="delete"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Delete selected item from the document</property> + <property name="image">image3</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="extract"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Export</property> + <property name="image">image4</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkSearchEntry" id="search"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="width-chars">15</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkButton" id="cleanup"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Remove unused definitions</property> + <property name="action-name">win.document-cleanup</property> + <property name="image">image2</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">6</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkPaned" id="paned"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="position">120</property> + <property name="position-set">True</property> + <property name="wide-handle">True</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow1"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-end">1</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTreeView" id="tree"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="model">liststore</property> + <property name="headers-visible">False</property> + <property name="enable-search">False</property> + <property name="show-expanders">False</property> + <property name="activate-on-single-click">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + <child> + <object class="GtkTreeViewColumn" id="rsrc"> + <property name="sizing">fixed</property> + <property name="title">name</property> + <property name="expand">True</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="resize">False</property> + <property name="shrink">False</property> + </packing> + </child> + <child> + <object class="GtkStack" id="stack"> + <property name="width-request">50</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">1</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkIconView" id="iconview"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin">3</property> + <property name="item-width">55</property> + <property name="row-spacing">4</property> + <property name="column-spacing">1</property> + <property name="item-padding">5</property> + </object> + </child> + </object> + <packing> + <property name="name">iconview</property> + <property name="title">page0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkTreeView" id="treeview"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="enable-search">False</property> + <property name="show-expanders">False</property> + <property name="enable-grid-lines">both</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"> + <property name="mode">none</property> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="col0"> + <property name="resizable">True</property> + <property name="spacing">3</property> + <property name="sizing">autosize</property> + <property name="title" translatable="yes">Property</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="col1"> + <property name="spacing">3</property> + <property name="sizing">autosize</property> + <property name="title" translatable="yes">Count</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">2</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="col2"> + <property name="spacing">3</property> + <property name="sizing">autosize</property> + <property name="title" translatable="yes">Value</property> + <property name="expand">True</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="markup">1</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="name">treeview</property> + <property name="title">page1</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <!-- n-columns=2 n-rows=3 --> + <object class="GtkGrid" id="grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="name">grid</property> + <property name="title">page2</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-export-prefs.glade b/share/ui/dialog-export-prefs.glade new file mode 100644 index 0000000..cac748b --- /dev/null +++ b/share/ui/dialog-export-prefs.glade @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkImage" id="gear_icon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">gear</property> + </object> + <object class="GtkPopover" id="pref_popover"> + <property name="can-focus">False</property> + <property name="constrain-to">none</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel"> + <property name="name">pref_label</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-top">5</property> + <property name="label" translatable="yes">Export Format Options</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkViewport" id="pref_holder"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkMenuButton" id="pref_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">gear_icon</property> + <property name="direction">left</property> + <property name="popover">pref_popover</property> + </object> +</interface> diff --git a/share/ui/dialog-export.glade b/share/ui/dialog-export.glade new file mode 100644 index 0000000..288bfd4 --- /dev/null +++ b/share/ui/dialog-export.glade @@ -0,0 +1,1220 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkBox" id="export-box"> + <property name="name">ExportDialog</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="double-buffered">False</property> + <property name="orientation">vertical</property> + <property name="homogeneous">True</property> + <child> + <object class="GtkNotebook" id="export-notebook"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="double-buffered">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-bottom">5</property> + <property name="show-border">False</property> + <child> + <object class="GtkOverlay"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkBox" id="single-image"> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkScrolledWindow" id="si_scroll"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="double-buffered">False</property> + <property name="vexpand">True</property> + <property name="hscrollbar-policy">never</property> + <property name="window-placement-set">False</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hscroll-policy">natural</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <!-- n-columns=4 n-rows=1 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="margin-start">1</property> + <property name="margin-end">1</property> + <property name="margin-bottom">3</property> + <child> + <object class="GtkRadioButton" id="si_s_selection"> + <property name="label" translatable="yes">Selection</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export selected objects</property> + <property name="hexpand">True</property> + <property name="draw-indicator">False</property> + <property name="group">si_s_document</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="si_s_document"> + <property name="label" translatable="yes">Document</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export everything inside document</property> + <property name="hexpand">True</property> + <property name="active">True</property> + <property name="draw-indicator">False</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="si_s_page"> + <property name="label" translatable="yes">Page</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export cropped content inside the page</property> + <property name="hexpand">True</property> + <property name="draw-indicator">False</property> + <property name="group">si_s_document</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="si_s_custom"> + <property name="label" translatable="yes">Custom</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export custom area by specifying coordinates</property> + <property name="hexpand">True</property> + <property name="draw-indicator">False</property> + <property name="group">si_s_document</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="si_pages_box"> + <property name="can-focus">True</property> + <property name="no-show-all">True</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkFlowBox" id="si_pages"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">5</property> + <property name="margin-right">5</property> + <property name="margin-start">6</property> + <property name="margin-end">6</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="vexpand">True</property> + <property name="column-spacing">6</property> + <property name="row-spacing">6</property> + <property name="max-children-per-line">10</property> + <property name="selection-mode">none</property> + <property name="activate-on-single-click">False</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <!-- n-columns=4 n-rows=7 --> + <object class="GtkGrid" id="si_sizes"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="margin-start">6</property> + <property name="margin-end">6</property> + <property name="margin-top">5</property> + <property name="row-spacing">5</property> + <property name="column-spacing">10</property> + <child> + <object class="GtkSpinButton" id="si_left_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + <property name="caps-lock-warning">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_bottom_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_width_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_height_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="label" translatable="yes">Image Size</property> + <property name="xalign">0</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_top_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_right_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="si_label_height"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Height</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="si_label_width"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Width</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="si_label_left"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Left</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="si_label_right"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Right</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="si_label_bottom"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Bottom</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="si_label_top"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Top</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Width +(px)</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Height +(px)</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_img_width_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + <property name="input-purpose">number</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_img_height_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">DPI</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="si_dpi_sb"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="width-chars">0</property> + <property name="max-width-chars">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkBox" id="si_units_row"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="hexpand">True</property> + <property name="spacing">5</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Units</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="si_units"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="active">1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="valign">center</property> + <property name="margin-start">6</property> + <property name="margin-end">6</property> + <property name="margin-top">6</property> + <property name="margin-bottom">6</property> + <property name="spacing">20</property> + <child> + <object class="GtkBox" id="si_preview_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkImage" id="si_preview"> + <property name="name">export_preview_single</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="stock">gtk-missing-image</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="si_show_preview"> + <property name="label" translatable="yes">Show Preview</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="no-show-all">True</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="si_hide_all"> + <property name="label" translatable="yes">Export Selected only</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="si_backgnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">7</property> + <property name="margin-start">7</property> + <property name="label" translatable="yes">Background color</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <!-- n-columns=3 n-rows=2 --> + <object class="GtkGrid" id="si_buttons"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="row-spacing">5</property> + <child> + <object class="GtkEntry" id="si_filename"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">5</property> + <property name="hexpand">True</property> + <property name="secondary-icon-name">folder-open</property> + <property name="secondary-icon-tooltip-text" translatable="yes">Browse export directory</property> + <property name="placeholder-text" translatable="yes">Filename</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="si_extention"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Select export format</property> + <property name="valign">center</property> + <property name="margin-start">5</property> + <property name="active">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="si_export"> + <property name="label" translatable="yes">Export</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkBox" id="si_prefs"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="index">-1</property> + </packing> + </child> + <child type="overlay"> + <object class="GtkBox" id="si_inprogress"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkSpinner"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="active">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkProgressBar" id="si_progress"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-bottom">10</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="show-text">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="si_cancel"> + <property name="label" translatable="yes">Cancel Export</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Export a part of document</property> + <property name="label" translatable="yes">Single File</property> + <property name="justify">right</property> + </object> + <packing> + <property name="tab-expand">True</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkOverlay"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkBox" id="batch-export"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow" id="b_scroll"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="vexpand">True</property> + <property name="hscrollbar-policy">never</property> + <property name="window-placement-set">False</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="shadow-type">none</property> + <child> + <!-- n-columns=6 n-rows=6 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">5</property> + <property name="orientation">vertical</property> + <property name="row-spacing">10</property> + <property name="column-spacing">10</property> + <child> + <object class="GtkScrolledWindow" id="b_pbox_scroll"> + <property name="height-request">150</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkFlowBox" id="b_preview_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="column-spacing">6</property> + <property name="row-spacing">6</property> + <property name="max-children-per-line">10</property> + <property name="selection-mode">multiple</property> + <property name="activate-on-single-click">False</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">6</property> + </packing> + </child> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="layout-style">expand</property> + <child> + <object class="GtkRadioButton" id="b_s_selection"> + <property name="label" translatable="yes">Selection</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export selected objects to separate files</property> + <property name="active">True</property> + <property name="draw-indicator">False</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="b_s_layers"> + <property name="label" translatable="yes">Layers</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export layers as separate files</property> + <property name="active">True</property> + <property name="draw-indicator">False</property> + <property name="group">b_s_selection</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="b_s_pages"> + <property name="label" translatable="yes">Pages</property> + <property name="name">export_selection</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Export pages as separate files</property> + <property name="active">True</property> + <property name="draw-indicator">False</property> + <property name="group">b_s_selection</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">6</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="b_show_preview"> + <property name="label" translatable="yes">Preview</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="b_num_elements"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label">5 Items</property> + </object> + <packing> + <property name="left-attach">5</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="b_hide_all"> + <property name="label" translatable="yes">Export Selected Only</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">6</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="valign">center</property> + <property name="margin-end">8</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">6</property> + <property name="label" translatable="yes">Background color</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="b_backgnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">5</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <!-- n-columns=2 n-rows=2 --> + <object class="GtkGrid" id="b_export_list"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="row-spacing">10</property> + <property name="column-spacing">10</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + <property name="width">6</property> + <property name="height">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <!-- n-columns=1 n-rows=2 --> + <object class="GtkGrid" id="b_buttons"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">5</property> + <property name="row-spacing">5</property> + <property name="column-spacing">10</property> + <child> + <object class="GtkEntry" id="b_filename"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="secondary-icon-name">folder-open</property> + <property name="placeholder-text" translatable="yes">Filename</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="b_export"> + <property name="label" translatable="yes">Export</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="index">-1</property> + </packing> + </child> + <child type="overlay"> + <object class="GtkBox" id="b_inprogress"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkSpinner"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">10</property> + <property name="margin-right">10</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="hexpand">True</property> + <property name="vexpand">False</property> + <property name="active">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkProgressBar" id="b_progress"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="margin-left">10</property> + <property name="margin-right">10</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-bottom">10</property> + <property name="hexpand">True</property> + <property name="show-text">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkProgressBar" id="b_progress_batch"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="margin-left">10</property> + <property name="margin-right">10</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-bottom">10</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="show-text">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="b_cancel"> + <property name="label" translatable="yes">Cancel Export</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Export to multiple files and file formats</property> + <property name="label" translatable="yes">Batch Export</property> + </object> + <packing> + <property name="position">2</property> + <property name="tab-expand">True</property> + <property name="tab-fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-filter-editor.glade b/share/ui/dialog-filter-editor.glade new file mode 100644 index 0000000..b25a183 --- /dev/null +++ b/share/ui/dialog-filter-editor.glade @@ -0,0 +1,689 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkMenu" id="filters-ctx-menu"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="reserve-toggle-size">False</property> + <child> + <object class="GtkMenuItem" id="item-duplicate"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">_Duplicate</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="item-remove"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">_Remove</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="item-rename"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">R_ename</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="item-select"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Select filter elements</property> + <property name="use-underline">True</property> + </object> + </child> + </object> + <object class="GtkPopover" id="gen-settings"> + <property name="width-request">300</property> + <property name="can-focus">False</property> + <property name="border-width">5</property> + <child> + <placeholder/> + </child> + </object> + <object class="GtkImage" id="image-connect"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">show-sources</property> + </object> + <object class="GtkImage" id="image-del"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-delete</property> + </object> + <object class="GtkImage" id="image-delete"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-delete</property> + </object> + <object class="GtkImage" id="image-dup"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-duplicate</property> + </object> + <object class="GtkImage" id="image-dup-2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-duplicate</property> + </object> + <object class="GtkImage" id="image-new"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">list-add</property> + </object> + <object class="GtkImage" id="image-new-2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">list-add</property> + </object> + <object class="GtkImage" id="image-select"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">object-select</property> + </object> + <object class="GtkPopover" id="filters-popover"> + <property name="width-request">300</property> + <property name="height-request">350</property> + <property name="can-focus">False</property> + <property name="border-width">5</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">3</property> + <child> + <object class="GtkScrolledWindow" id="filter-wnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkTreeView" id="filter-list"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="enable-search">False</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="btn-new"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Create a new filter</property> + <property name="image">image-new-2</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-dup"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Duplicate current filter</property> + <property name="image">image-dup-2</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-del"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Delete current filter</property> + <property name="image">image-del</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-select"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Select objects that use this filter</property> + <property name="image">image-select</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkSearchEntry" id="stock-filters"> + <property name="can-focus">True</property> + <property name="margin-start">8</property> + <property name="width-chars">3</property> + <property name="caps-lock-warning">False</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + <property name="placeholder-text" translatable="yes">Add stock filter</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">6</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkPopover" id="info-popover"> + <property name="width-request">300</property> + <property name="can-focus">False</property> + <property name="border-width">5</property> + <child> + <!-- n-columns=2 n-rows=4 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="column-spacing">5</property> + <child> + <object class="GtkImage" id="effect-icon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">effect</property> + <property name="icon_size">5</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkTextView" id="effect-info"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="editable">False</property> + <property name="wrap-mode">word</property> + <property name="cursor-visible">False</property> + <property name="accepts-tab">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkTextView" id="effect-desc"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="editable">False</property> + <property name="wrap-mode">word</property> + <property name="top-margin">4</property> + <property name="indent">8</property> + <property name="cursor-visible">False</property> + <property name="accepts-tab">False</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkImage" id="effect-image"> + <property name="can-focus">False</property> + <property name="stock">gtk-missing-image</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + <!-- n-columns=3 n-rows=4 --> + <object class="GtkGrid" id="main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="margin-top">3</property> + <property name="row-spacing">4</property> + <property name="column-spacing">3</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkCheckButton" id="label"> + <property name="label" translatable="yes">Filter</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Apply filter to selection</property> + <property name="margin-end">5</property> + <property name="draw-indicator">True</property> + <style> + <class name="dialog-heading"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkMenuButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="popover">filters-popover</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="filter-name"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">-</property> + <property name="ellipsize">end</property> + <property name="single-line-mode">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="new-filter"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Create a new filter</property> + <property name="image">image-new</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="filter-opt"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">General filter parameters</property> + <property name="relief">none</property> + <property name="popover">gen-settings</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">gear</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkPaned" id="paned"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <property name="position">200</property> + <child> + <object class="GtkScrolledWindow" id="filter"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">2</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="shadow-type">in</property> + <property name="propagate-natural-height">True</property> + <child> + <placeholder/> + </child> + <style> + <class name="filter-effects"/> + </style> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">False</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="params-wnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <property name="min-content-height">50</property> + <property name="overlay-scrolling">False</property> + <property name="propagate-natural-height">True</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkBox" id="params"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="effect-header"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">2</property> + <child> + <object class="GtkLabel" id="cur-effect"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">label</property> + <property name="xalign">0</property> + <style> + <class name="dialog-heading"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkMenuButton" id="info-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="margin-left">5</property> + <property name="margin-start">5</property> + <property name="relief">none</property> + <property name="popover">info-popover</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">info-outline</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="dup-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Duplicate effect</property> + <property name="image">image-dup</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="del-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Remove effect</property> + <property name="image">image-delete</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + </child> + <style> + <class name="effect-params"/> + </style> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">False</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox" id="search-wide"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="homogeneous">True</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkBox" id="connect-box-wide"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="connect-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <child> + <object class="GtkToggleButton" id="btn-connect"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Show all filter input sources</property> + <property name="halign">end</property> + <property name="image">image-connect</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkBox" id="search"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <object class="GtkSizeGroup" id="param-labels"> + <widgets> + <widget name="cur-effect"/> + </widgets> + </object> +</interface> diff --git a/share/ui/dialog-font-collections.glade b/share/ui/dialog-font-collections.glade new file mode 100644 index 0000000..2e338aa --- /dev/null +++ b/share/ui/dialog-font-collections.glade @@ -0,0 +1,172 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkImage" id="refresh_button_image"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">view-refresh</property> + </object> + <object class="GtkBox" id="contents"> + <property name="name">TextEdit Dialog Box</property> + <property name="width-request">510</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">4</property> + <child> + <object class="GtkBox" id="font_list_filter_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkSearchEntry" id="search_entry"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Search fonts present in the font list</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="reset_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Reset the font list</property> + <property name="margin-start">2</property> + <property name="image">refresh_button_image</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkPaned" id="paned"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="vexpand">True</property> + <property name="position">250</property> + <property name="wide-handle">True</property> + <child> + <object class="GtkBox" id="font_list_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="font_count_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="no">label</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">True</property> + </packing> + </child> + <child> + <object class="GtkBox" id="collections_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">8</property> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkBox" id="buttons_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <child> + <object class="GtkButton" id="create_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Create new collection</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="edit_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Edit selected collection</property> + <property name="margin-start">2</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="delete_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Delete selected item</property> + <property name="margin-start">2</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="resize">False</property> + <property name="shrink">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-livepatheffect-add.glade b/share/ui/dialog-livepatheffect-add.glade new file mode 100644 index 0000000..bb73574 --- /dev/null +++ b/share/ui/dialog-livepatheffect-add.glade @@ -0,0 +1,447 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkDialog" id="LPEDialogSelector"> + <property name="name">LPEDialogSelector</property> + <property name="can-focus">False</property> + <property name="title" translatable="yes">Live Path Effects Selector</property> + <property name="modal">True</property> + <property name="window-position">center-on-parent</property> + <property name="destroy-with-parent">True</property> + <property name="type-hint">dialog</property> + <property name="skip-taskbar-hint">True</property> + <property name="gravity">static</property> + <property name="has-resize-grip">True</property> + <child internal-child="vbox"> + <object class="GtkBox"> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="baseline-position">top</property> + <child internal-child="action_area"> + <object class="GtkButtonBox"> + <property name="can-focus">False</property> + <property name="layout-style">end</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="LPESelector"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="orientation">vertical</property> + <property name="baseline-position">top</property> + <child> + <object class="GtkSearchBar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="search-mode-enabled">True</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <child> + <object class="GtkSearchEntry" id="LPEFilter"> + <property name="width-request">300</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="has-focus">True</property> + <property name="is-focus">True</property> + <property name="can-default">True</property> + <property name="has-default">True</property> + <property name="activates-default">True</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + <style> + <class name="iconymbolic"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">5</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="LPESelectorAllButtonBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="layout-style">expand</property> + <child> + <object class="GtkRadioButton" id="LPESelectorEffectRadioPackLess"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">end</property> + <property name="valign">center</property> + <property name="draw-indicator">False</property> + <child> + <object class="GtkImage" id="LPESelectorEffectPackLessImage"> + <property name="name">LPESelectorEffectPackLessImage</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="pixel-size">22</property> + <property name="icon-name">pack-less</property> + <property name="icon_size">2</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + <property name="non-homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="LPESelectorEffectRadioPackMore"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="draw-indicator">False</property> + <property name="group">LPESelectorEffectRadioPackLess</property> + <child> + <object class="GtkImage" id="LPESelectorEffectPackMoreImage"> + <property name="name">LPESelectorEffectPackMoreImage</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="pixel-size">22</property> + <property name="icon-name">pack-more</property> + <property name="icon_size">2</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + <property name="non-homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="LPESelectorEffectRadioList"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">False</property> + <property name="group">LPESelectorEffectRadioPackLess</property> + <child> + <object class="GtkImage" id="LPESelectorEffectListImage"> + <property name="name">LPESelectorEffectListImage</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="pixel-size">22</property> + <property name="icon-name">hamburger-menu</property> + <property name="icon_size">2</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + <property name="non-homogeneous">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="LPESelectorEffectEventFavShow"> + <property name="name">LPESelectorEffectEventFavShow</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <child> + <object class="GtkImage" id="LPESelectorEffectFavShowImage"> + <property name="name">LPESelectorEffectFavShowImage</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="pixel-size">25</property> + <property name="icon-name">draw-star-outline</property> + <property name="icon_size">2</property> + <style> + <class name="fab"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">5</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkSwitch" id="LPEExperimental"> + <property name="name">LPEExperimental</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">7</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Show Experimental</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">5</property> + <property name="position">8</property> + </packing> + </child> + </object> + </child> + <style> + <class name="searchbar"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPEInfo"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="label" translatable="yes">Message</property> + <property name="justify">center</property> + <property name="ellipsize">end</property> + <style> + <class name="lpeinfo"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="LPEScrolled"> + <property name="name">LPEScrolled</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <property name="shadow-type">in</property> + <property name="min-content-width">800</property> + <property name="min-content-height">10</property> + <property name="propagate-natural-height">True</property> + <child> + <object class="GtkViewport" id="LPEViewport"> + <property name="name">LPEViewport</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkFlowBox" id="LPESelectorFlowBox"> + <property name="name">LPESelectorFlowBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="valign">start</property> + <property name="column-spacing">1</property> + <property name="row-spacing">1</property> + <property name="min-children-per-line">3</property> + <property name="max-children-per-line">30</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <style> + <class name="symbolic"/> + </style> + </object> + </child> + </object> + <object class="GtkPopover" id="LPESelectorEffectInfoPop"> + <property name="name">LPESelectorEffectInfoPop</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="valign">start</property> + <property name="relative-to">LPEInfo</property> + <property name="position">bottom</property> + <property name="modal">False</property> + <property name="transitions-enabled">False</property> + <child> + <object class="GtkEventBox" id="LPESelectorEffectInfoEventBox"> + <property name="name">LPESelectorEffectInfoEventBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="LPESelectorEffectInfoIcon"> + <property name="name">LPESelectorEffectInfoIcon</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="pixel-size">40</property> + <property name="icon-name">align-vertical-baseline</property> + <property name="icon_size">6</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPESelectorEffectInfoName"> + <property name="name">LPESelectorEffectInfoName</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Name</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="max-width-chars">20</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPESelectorEffectInfoDescription"> + <property name="name">LPESelectorEffectInfoDescription</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Description</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="max-width-chars">20</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <style> + <class name="popover symbolic"/> + </style> + </object> +</interface> diff --git a/share/ui/dialog-livepatheffect-effect.glade b/share/ui/dialog-livepatheffect-effect.glade new file mode 100644 index 0000000..599cce5 --- /dev/null +++ b/share/ui/dialog-livepatheffect-effect.glade @@ -0,0 +1,290 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkEventBox" id="LPESelectorEffect"> + <property name="name">LPESelectorEffect</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">start</property> + <property name="visible-window">False</property> + <child> + <object class="GtkBox" id="LPESelectorEffectBox"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="double-buffered">False</property> + <property name="halign">start</property> + <property name="hexpand">False</property> + <property name="orientation">vertical</property> + <property name="baseline-position">top</property> + <child> + <object class="GtkOverlay" id="LPEOverlay"> + <property name="name">LPEOverlay</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="LPEIcon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">start</property> + <property name="pixel-size">60</property> + <property name="icon-name">align-vertical-baseline</property> + <property name="icon_size">6</property> + </object> + <packing> + <property name="index">1</property> + </packing> + </child> + <child type="overlay"> + <object class="GtkEventBox" id="LPESelectorEffectEventFavTop"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">end</property> + <property name="valign">start</property> + <child> + <object class="GtkImage" id="LPESelectorEffectFavTop"> + <property name="name">LPESelectorEffectFavTop</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="valign">start</property> + <property name="pixel-size">20</property> + <property name="icon-name">draw-star</property> + <property name="icon_size">2</property> + <style> + <class name="fab"/> + </style> + </object> + </child> + </object> + <packing> + <property name="index">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPEName"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">LPEName</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="ellipsize">end</property> + <property name="width-chars">14</property> + <property name="max-width-chars">23</property> + <style> + <class name="lpename"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPEDescription"> + <property name="width-request">200</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="label" translatable="yes">Description</property> + <property name="use-markup">True</property> + <property name="ellipsize">end</property> + <property name="single-line-mode">True</property> + <property name="lines">1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">10</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="LPEExperimentalToggle"> + <property name="label" translatable="yes">Experimental</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="no-show-all">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="LPESelectorEffectEventExpander"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <child> + <object class="GtkImage" id="LPESelectorEffectExpander"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="margin-left">5</property> + <property name="margin-right">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="pixel-size">16</property> + <property name="icon-name">go-down</property> + <property name="icon_size">2</property> + <style> + <class name="info"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkButtonBox" id="LPESelectorButtonBox"> + <property name="name">LPESelectorButtonBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">start</property> + <property name="baseline-position">top</property> + <property name="layout-style">center</property> + <child> + <object class="GtkEventBox" id="LPESelectorEffectEventInfo"> + <property name="name">LPESelectorEffectEventInfo</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="valign">start</property> + <property name="visible-window">False</property> + <child> + <object class="GtkImage" id="LPESelectorEffectInfo"> + <property name="name">LPESelectorEffectInfo</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="valign">start</property> + <property name="pixel-size">23</property> + <property name="icon-name">info-outline</property> + <property name="icon_size">2</property> + <style> + <class name="info"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">0</property> + <property name="non-homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="LPESelectorEffectEventFav"> + <property name="name">LPESelectorEffectEventFav</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">start</property> + <property name="visible-window">False</property> + <child> + <object class="GtkImage" id="LPESelectorEffectFav"> + <property name="name">LPESelectorEffectFav</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">start</property> + <property name="pixel-size">23</property> + <property name="icon-name">draw-star-outline</property> + <property name="icon_size">2</property> + <style> + <class name="fab"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + <property name="non-homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="LPESelectorEffectEventApply"> + <property name="name">LPESelectorEffectEventApply</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="visible-window">False</property> + <child> + <object class="GtkImage"> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="pixel-size">23</property> + <property name="icon-name">on-outline</property> + <property name="icon_size">2</property> + <style> + <class name="apply"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">2</property> + <property name="non-homogeneous">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPEUntranslatedName"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="label" translatable="no">LPEUntranslatedName</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="ellipsize">end</property> + <property name="width-chars">14</property> + <property name="max-width-chars">23</property> + <style> + <class name="lpename"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">6</property> + </packing> + </child> + <style> + <class name="lpeselectoreffect"/> + </style> + </object> + </child> + </object> +</interface> diff --git a/share/ui/dialog-livepatheffect-item.glade b/share/ui/dialog-livepatheffect-item.glade new file mode 100644 index 0000000..ff15401 --- /dev/null +++ b/share/ui/dialog-livepatheffect-item.glade @@ -0,0 +1,397 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkMenu" id="LPEEffectMenu"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkMenuItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Duplicate</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="LPEMoveUp"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Move up</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="LPEMoveDown"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Move down</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Apply this effect, and all effects above this one, to the path. This removes those effects from the stack.</property> + <property name="label" translatable="yes">Flatten</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="LPESetDefault"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Use the current values as custom defaults for this LPE</property> + <property name="label" translatable="yes">Set custom defaults</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="LPEResetDefault"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Reset default settings of this LPE to Inkscape's default values</property> + <property name="label" translatable="yes">Forget custom defaults</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="LPEtoggleFavorite"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Set Favorite</property> + <property name="use-underline">True</property> + </object> + </child> + </object> + <object class="GtkImage" id="dndImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="margin-left">2</property> + <property name="margin-start">2</property> + <property name="icon-name">dnd</property> + <property name="icon_size">2</property> + </object> + <object class="GtkImage" id="removeImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-delete-symbolic</property> + <property name="icon_size">2</property> + </object> + <object class="GtkImage" id="removeImage1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-delete-symbolic</property> + <property name="icon_size">2</property> + </object> + <object class="GtkImage" id="visibilityImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">object-visible-symbolic</property> + <property name="icon_size">2</property> + </object> + <object class="GtkBox" id="LPEEffect"> + <property name="name">LPEEffectItem</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkBox"> + <property name="name">LPEEffectItem</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child> + <object class="GtkOverlay"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkExpander" id="LPEExpander"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="label-fill">True</property> + <child> + <placeholder/> + </child> + <child type="label"> + <object class="GtkBox"> + <property name="name">LPEExpanderBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <child> + <object class="GtkBox" id="LPEExpanderBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="LPEIconImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-right">5</property> + <property name="margin-end">5</property> + <property name="pixel-size">25</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPENameLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="no">expander</property> + <property name="ellipsize">end</property> + <property name="single-line-mode">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="width-request">145</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="index">-1</property> + </packing> + </child> + <child type="overlay"> + <object class="GtkBox"> + <property name="height-request">30</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="events">GDK_EXPOSURE_MASK</property> + <property name="valign">start</property> + <child> + <object class="GtkEventBox" id="LPEOpenExpander"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="width-request">145</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="index">1</property> + </packing> + </child> + <child type="overlay"> + <object class="GtkBox" id="LPEActionButtons"> + <property name="name">LPEActionButtons</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="valign">start</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkEventBox" id="LPEHide"> + <property name="name">eventbutton</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Show/hide this Live Path Effect</property> + <property name="visible-window">False</property> + <child> + <object class="GtkButton"> + <property name="width-request">30</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">False</property> + <property name="image">visibilityImage</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <style> + <class name="minbutton"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="LPEErase"> + <property name="name">eventbutton</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Remove this Live Path Effect</property> + <property name="visible-window">False</property> + <child> + <object class="GtkButton"> + <property name="width-request">30</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">False</property> + <property name="image">removeImage</property> + <property name="relief">none</property> + <property name="always-show-image">True</property> + <style> + <class name="minbutton"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="LPEEffectMenuButton"> + <property name="name">LPEEffectMenuButton</property> + <property name="width-request">30</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">False</property> + <property name="popup">LPEEffectMenu</property> + <property name="use-popover">False</property> + <child> + <object class="GtkEventBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Menu with options related to this Live Path Effect</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-down-symbolic</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <style> + <class name="linked"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkEventBox" id="LPEDrag"> + <property name="name">LPEDrag</property> + <property name="width-request">35</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Reorder this Live Path Effect</property> + <property name="halign">center</property> + <child> + <object class="GtkButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="no-show-all">True</property> + <property name="halign">center</property> + <property name="image">dndImage</property> + <property name="relief">none</property> + <property name="xalign">1</property> + <property name="image-position">right</property> + <property name="always-show-image">True</property> + <style> + <class name="LPEDrag"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> + <packing> + <property name="pass-through">True</property> + <property name="index">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <style> + <class name="activatable"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <style> + <class name="activatable"/> + </style> + </object> +</interface> diff --git a/share/ui/dialog-livepatheffect.glade b/share/ui/dialog-livepatheffect.glade new file mode 100644 index 0000000..f4e4b06 --- /dev/null +++ b/share/ui/dialog-livepatheffect.glade @@ -0,0 +1,168 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkBox" id="LPEContainer"> + <property name="name">LPEContainer</property> + <property name="width-request">250</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <property name="baseline-position">top</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="baseline-position">top</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">5</property> + <property name="margin-right">5</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-bottom">5</property> + <child> + <object class="GtkBox" id="LPEAddContainer"> + <property name="name">LPEAddContainer</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="LPEGallery"> + <property name="name">LPESelectorEffectEventFavShow</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="tooltip-text" translatable="yes">Open LPE Gallery</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="margin-left">5</property> + <property name="margin-right">5</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <child> + <object class="GtkImage"> + <property name="name">LPESelectorEffectFavShowImage</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="icon-name">arrange-grid</property> + <style> + <class name="fab"/> + </style> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="LPECurrentItem"> + <property name="name">LPECurrentItem</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="events"/> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPESelectionInfo"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">5</property> + <property name="margin-right">5</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="ellipsize">end</property> + <property name="width-chars">20</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkListBox" id="LPEListBox"> + <property name="name">LPEListBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="selection-mode">none</property> + <style> + <class name="lpelistbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkListBox" id="LPEParentBox"> + <property name="name">LPEParentBox</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="selection-mode">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + </object> + <object class="GtkListStore" id="LPEList"> + <columns> + <!-- column-name id --> + <column type="gint"/> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name icon --> + <column type="gchararray"/> + <!-- column-name visible --> + <column type="gboolean"/> + <!-- column-name search --> + <column type="gchararray"/> + </columns> + </object> +</interface> diff --git a/share/ui/dialog-objects.glade b/share/ui/dialog-objects.glade new file mode 100644 index 0000000..9d24ac7 --- /dev/null +++ b/share/ui/dialog-objects.glade @@ -0,0 +1,289 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkAdjustment" id="adjustment-opacity"> + <property name="upper">100</property> + <property name="step-increment">5</property> + <property name="page-increment">10</property> + </object> + <object class="GtkPopover" id="object-menu"> + <property name="width-request">222</property> + <property name="can-focus">False</property> + <property name="border-width">5</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">3</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Opacity</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScale" id="opacity-slider"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-opacity</property> + <property name="round-digits">1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-top">10</property> + <property name="label" translatable="yes">Blend mode</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <!-- n-columns=2 n-rows=3 --> + <object class="GtkGrid" id="modes"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkImage" id="image-down"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-down</property> + </object> + <object class="GtkImage" id="image-insert"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">layer-new</property> + </object> + <object class="GtkImage" id="image-remove"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-delete</property> + </object> + <object class="GtkImage" id="image-up"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-up</property> + </object> + <object class="GtkPopover" id="settings-menu"> + <property name="can-focus">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">7</property> + <property name="margin-bottom">7</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkCheckButton" id="setting-layers"> + <property name="label" translatable="yes">Only show layers</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="setting-track"> + <property name="label" translatable="yes">Expand to display selection</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkBox" id="header"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">3</property> + <child> + <object class="GtkButton" id="insert-layer"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">win.layer-new</property> + <property name="image">image-insert</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="move-up"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.selection-stack-up</property> + <property name="image">image-up</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="move-down"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.selection-stack-down</property> + <property name="image">image-down</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="remove-object"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="action-name">app.delete-selection</property> + <property name="image">image-remove</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="orientation">vertical</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="settings-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Layers and Objects dialog settings</property> + <property name="relief">none</property> + <property name="popover">settings-menu</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">gear</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkSearchEntry" id="search"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">5</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">7</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-paint-servers.glade b/share/ui/dialog-paint-servers.glade new file mode 100644 index 0000000..42b2055 --- /dev/null +++ b/share/ui/dialog-paint-servers.glade @@ -0,0 +1,123 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <!-- n-columns=2 n-rows=3 --> + <object class="GtkGrid" id="PaintServersContainerGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">3</property> + <property name="margin-end">3</property> + <property name="margin-top">3</property> + <property name="row-spacing">3</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel" id="ServerLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Server:</property> + <property name="justify">right</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="ServersDropdown"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="TargetLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Change:</property> + <property name="justify">right</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkBox" id="TargetRadioContainer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkRadioButton" id="TargetRadioFill"> + <property name="label" translatable="yes">Fill</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Apply the paint to the fill of objects</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="TargetRadioStroke"> + <property name="label" translatable="yes">Stroke</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Apply the paint to the stroke of objects</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + <property name="group">TargetRadioFill</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="IconScroller"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="vscrollbar-policy">always</property> + <property name="shadow-type">in</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkIconView" id="PaintIcons"> + <property name="width-request">200</property> + <property name="height-request">200</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin">6</property> + <property name="vexpand">True</property> + <property name="item-width">100</property> + <property name="tooltip-column">0</property> + <property name="activate-on-single-click">True</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-save-template.glade b/share/ui/dialog-save-template.glade new file mode 100644 index 0000000..ab34ee5 --- /dev/null +++ b/share/ui/dialog-save-template.glade @@ -0,0 +1,154 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.22.2 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkDialog" id="dialog"> + <property name="width_request">400</property> + <property name="height_request">200</property> + <property name="can_focus">False</property> + <property name="title" translatable="yes">Save Document as Template</property> + <property name="type_hint">dialog</property> + <child type="titlebar"> + <placeholder/> + </child> + <child internal-child="vbox"> + <object class="GtkBox"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <child internal-child="action_area"> + <object class="GtkButtonBox"> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Name: </property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Author: </property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Description: </property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Keywords: </property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="name"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="author"> + <property name="visible">True</property> + <property name="can_focus">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="description"> + <property name="visible">True</property> + <property name="can_focus">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="keywords"> + <property name="visible">True</property> + <property name="can_focus">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="set-default"> + <property name="label" translatable="yes">Set as default template</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/dialog-symbols.glade b/share/ui/dialog-symbols.glade new file mode 100644 index 0000000..31c84ad --- /dev/null +++ b/share/ui/dialog-symbols.glade @@ -0,0 +1,420 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkAdjustment" id="adjustment-symbol-size"> + <property name="upper">50</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="adjustment-zoom"> + <property name="lower">-20</property> + <property name="upper">20</property> + <property name="step-increment">1</property> + <property name="page-increment">1</property> + </object> + <object class="GtkPopover" id="settings-popover"> + <property name="can-focus">False</property> + <child> + <!-- n-columns=2 n-rows=5 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <property name="row-spacing">2</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Tile size</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkScale" id="symbol-size"> + <property name="width-request">120</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-symbol-size</property> + <property name="show-fill-level">True</property> + <property name="round-digits">1</property> + <property name="digits">0</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="show-names"> + <property name="label" translatable="yes">Show names</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="zoom-to-fit"> + <property name="label" translatable="yes">Zoom to fit</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Zoom</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkScale" id="zoom"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-zoom</property> + <property name="show-fill-level">True</property> + <property name="round-digits">0</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">list-add</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">list-remove</property> + </object> + <object class="GtkPopover" id="set-popover"> + <property name="can-focus">False</property> + <child> + <!-- n-columns=2 n-rows=2 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Symbol set</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkSearchEntry" id="set-search"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Search for symbol set</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="width-request">300</property> + <property name="height-request">400</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkIconView" id="symbol-sets"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin">0</property> + <property name="item-orientation">horizontal</property> + <property name="item-width">275</property> + <property name="row-spacing">0</property> + <property name="column-spacing">1</property> + <property name="item-padding">4</property> + <property name="activate-on-single-click">True</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">2</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkBox" id="main-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-top">4</property> + <property name="margin-bottom">1</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkMenuButton" id="symbol-set-popup"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="popover">set-popover</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <child> + <object class="GtkLabel" id="cur-set"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="no">name of the current symbol set</property> + <property name="ellipsize">end</property> + <property name="single-line-mode">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSearchEntry" id="search"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Search for symbol</property> + <property name="width-chars">15</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="info"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">15</property> + <property name="margin-top">3</property> + <property name="label" translatable="no">label</property> + <property name="xalign">1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkOverlay" id="overlay"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child> + <object class="GtkScrolledWindow" id="scroller"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-top">1</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkIconView" id="icon-view"> + <property name="height-request">250</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin">0</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <property name="tooltip-column">1</property> + <property name="item-padding">4</property> + <property name="activate-on-single-click">True</property> + </object> + </child> + </object> + <packing> + <property name="index">-1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkBox" id="tools"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkButton" id="add-symbol"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Convert selected object(s) to symbol</property> + <property name="image">image1</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="remove-symbol"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Convert selected symbol to object, and all symbols of this type to clones of this object</property> + <property name="image">image2</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkMenuButton" id="settings"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="relief">none</property> + <property name="direction">up</property> + <property name="popover">settings-popover</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">gear</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-text-edit.glade b/share/ui/dialog-text-edit.glade new file mode 100644 index 0000000..54b1b1c --- /dev/null +++ b/share/ui/dialog-text-edit.glade @@ -0,0 +1,313 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkPopover" id="filter_popover"> + <property name="can-focus">False</property> + <child> + <object class="GtkBox" id="popover_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkFrame" id="frame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">4</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkListBox" id="collections_list"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="frame_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">_Font Collections</property> + <property name="use-underline">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="collection_editor_button"> + <property name="label" translatable="yes">Open Collections Editor</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Open the Font Collections Manager dialogue</property> + <property name="margin-top">4</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkImage" id="reset_image"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">view-refresh</property> + </object> + <object class="GtkTextBuffer" id="text_buffer"/> + <object class="GtkBox" id="contents"> + <property name="name">TextEdit Dialog Box</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">4</property> + <child> + <object class="GtkNotebook" id="notebook"> + <property name="name">TextEdit Notebook</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkBox" id="font_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="border-width">4</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="settings_and_filters_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkSearchEntry" id="search_entry"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Search fonts</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="reset_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Reset filters and show all available fonts</property> + <property name="margin-start">2</property> + <property name="image">reset_image</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="filter_menu_button"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Font Collections</property> + <property name="margin-start">2</property> + <property name="margin-end">4</property> + <property name="popover">filter_popover</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="font_count_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="no">label</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkLabel" id="preview_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label">text</property> + <property name="justify">center</property> + <property name="ellipsize">end</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">3</property> + </packing> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">_Font</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox" id="feat_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="border-width">4</property> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + <child> + <object class="GtkLabel" id="preview_label2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label">text</property> + <property name="justify">center</property> + <property name="ellipsize">end</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">_Features</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="position">1</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTextView" id="text_view"> + <property name="height-request">64</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="wrap-mode">word</property> + <property name="buffer">text_buffer</property> + </object> + </child> + </object> + <packing> + <property name="position">2</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">_Text</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="position">2</property> + <property name="tab-fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <property name="layout-style">start</property> + <child> + <object class="GtkButton" id="setasdefault_button"> + <property name="label" translatable="yes">Set as _default</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="use-underline">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="apply_button"> + <property name="label" translatable="yes">Apply</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="can-default">True</property> + <property name="receives-default">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + <property name="secondary">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="padding">4</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-trace.glade b/share/ui/dialog-trace.glade new file mode 100644 index 0000000..c34d366 --- /dev/null +++ b/share/ui/dialog-trace.glade @@ -0,0 +1,1555 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkAdjustment" id="MS_scans"> + <property name="lower">2</property> + <property name="upper">256</property> + <property name="value">8</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="PA_curves"> + <property name="lower">-10</property> + <property name="upper">10</property> + <property name="value">1</property> + <property name="step-increment">0.20</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="PA_islands"> + <property name="lower">-20</property> + <property name="upper">20</property> + <property name="value">5</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkAdjustment" id="PA_sparse1"> + <property name="lower">2</property> + <property name="upper">8</property> + <property name="value">4</property> + <property name="step-increment">1</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="PA_sparse2"> + <property name="lower">-10</property> + <property name="upper">10</property> + <property name="value">1</property> + <property name="step-increment">0.20</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="SS_AT_ET_T"> + <property name="lower">1</property> + <property name="upper">10</property> + <property name="value">2</property> + <property name="step-increment">0.10</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="SS_AT_FI_T"> + <property name="lower">1</property> + <property name="upper">20</property> + <property name="value">4</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkAdjustment" id="SS_BC_T"> + <property name="upper">1</property> + <property name="value">0.45</property> + <property name="step-increment">0.01</property> + <property name="page-increment">0.10</property> + </object> + <object class="GtkAdjustment" id="SS_CQ_T"> + <property name="lower">2</property> + <property name="upper">64</property> + <property name="value">8</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkAdjustment" id="SS_ED_T"> + <property name="upper">1</property> + <property name="value">0.65</property> + <property name="step-increment">0.01</property> + <property name="page-increment">0.10</property> + </object> + <object class="GtkTextBuffer" id="helptext"> + <property name="text" translatable="yes">This dialog allows you to automatically convert a raster graphic into vector paths. Several options are available for different use cases: + * "Brightness cutoff" detects areas that are darker than the threshold value and creates a path enclosing them (using potrace). + * "Edge detection" detects changes greater than the given threshold value in the brightness of color patches and creates paths to separate them (using potrace). + * "Color quantization" separates the image into the given number of colors, and separates them with a path (using potrace). + * "Autotrace" uses the autotrace algorithm with the given option. + * "Centerline tracing" tries to vectorize a line drawing (with autotrace). + * "Multicolor" options separate the image into a number of scans, depending on brightness, color separation, or gray levels (using potrace), or using the autotrace algorithm, and create several paths for those. + * The "Pixel art" tab allows to use an algorithm for pixel recognition or one for depixelizing to vectorize pixel art images. + + * NOTE: + 1) Save your work before tracing + 2) Watch your pixel count: "Trace pixel art" creates up to one path per pixel. It is not recommended for images that are not pixel art. + 3) Autotrace is slower than potrace, it is not recommended for big images. Preprocessing your images to increase contrast is recommended. + 4) If your goal is to get few nodes and good precision, manual tracing is always best.</property> + </object> + <object class="GtkPopover" id="popover1"> + <property name="width-request">300</property> + <property name="height-request">400</property> + <property name="can-focus">False</property> + <property name="constrain-to">none</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <property name="overlay-scrolling">False</property> + <child> + <object class="GtkTextView"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscroll-policy">natural</property> + <property name="vscroll-policy">natural</property> + <property name="editable">False</property> + <property name="wrap-mode">word</property> + <property name="buffer">helptext</property> + </object> + </child> + </object> + </child> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">off-outline-symbolic</property> + </object> + <object class="GtkAdjustment" id="optimize"> + <property name="upper">5</property> + <property name="value">0.20</property> + <property name="step-increment">0.05</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="smooth"> + <property name="upper">1.34</property> + <property name="value">1</property> + <property name="step-increment">0.01</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="speckles"> + <property name="upper">1000</property> + <property name="value">2</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkBox" id="mainBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="orient_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="baseline-position">top</property> + <child> + <object class="GtkNotebook" id="choice_tab"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="no-show-all">True</property> + <property name="valign">start</property> + <property name="hexpand">True</property> + <property name="vexpand">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="orientation">vertical</property> + <child> + <!-- n-columns=4 n-rows=14 --> + <object class="GtkGrid" id="_param_grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="row-spacing">4</property> + <child> + <object class="GtkCheckButton" id="CB_speckles"> + <property name="label" translatable="yes">Speckles</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Ignore small spots (speckles) in the bitmap</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">10</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_smooth"> + <property name="label" translatable="yes">Smooth corners</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Smooth out sharp corners of the trace</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="width-request">60</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">speckles</property> + <property name="round-digits">1</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">10</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">smooth</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">11</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_optimize"> + <property name="label" translatable="yes">Optimize</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Try to optimize paths by joining adjacent Bezier curve segments</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">optimize</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">12</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Threshold</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Edge threshold</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Colors</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Filter iterations</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Error threshold</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_invert"> + <property name="label" translatable="yes">Invert image</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Invert black and white regions</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Details:</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">9</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_AT_ET_T</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_AT_FI_T</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_CQ_T</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_ED_T</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_BC_T</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="CBT_SS"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="active">0</property> + <items> + <item id="SS_BC" translatable="yes">Brightness cutoff</item> + <item id="SS_ED" translatable="yes">Edge detection</item> + <item id="SS_CQ" translatable="yes">Color quantization</item> + <item id="SS_AT" translatable="yes">Autotrace</item> + <item id="SS_CT" translatable="yes">Centerline tracing (autotrace)</item> + </items> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Detection mode:</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_BC_T</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_ED_T</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_CQ_T</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_AT_FI_T</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">SS_AT_ET_T</property> + <property name="digits">1</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Speckles of up to this many pixels will be suppressed</property> + <property name="adjustment">speckles</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">10</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Increase this to smooth corners more</property> + <property name="adjustment">smooth</property> + <property name="digits">2</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Increase this to reduce the number of nodes in the trace by more aggressive optimization</property> + <property name="adjustment">optimize</property> + <property name="digits">3</property> + <property name="value">0.20</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_SIOX"> + <property name="label" translatable="yes">User-assisted trace</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Cover the area you want to select as the foreground then select both objects</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">13</property> + <property name="width">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Single scan</property> + </object> + <packing> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="orientation">vertical</property> + <child> + <!-- n-columns=4 n-rows=14 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="row-spacing">4</property> + <child> + <object class="GtkComboBoxText" id="CBT_MS"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="active">0</property> + <items> + <item id="MS_BS" translatable="yes">Brightness steps</item> + <item id="MS_C" translatable="yes">Colors</item> + <item id="MS_BW" translatable="yes">Grays</item> + <item id="MS_AT" translatable="yes">Autotrace (slower)</item> + </items> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Scans</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Detection mode:</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_MS_smooth"> + <property name="label" translatable="yes">Smooth</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Apply Gaussian blur to the bitmap before tracing</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_MS_rb"> + <property name="label" translatable="yes">Remove background</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Remove bottom (background) layer when done</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">The desired number of scans</property> + <property name="adjustment">MS_scans</property> + <property name="value">8</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Details:</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">8</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="width-request">60</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">speckles</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">10</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Speckles of up to this many pixels will be suppressed</property> + <property name="adjustment">speckles</property> + <property name="value">2</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">10</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_speckles1"> + <property name="label" translatable="yes">Speckles</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Ignore small spots (speckles) in the bitmap</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">10</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_optimize1"> + <property name="label" translatable="yes">Optimize</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Try to optimize paths by joining adjacent Bezier curve segments</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">optimize</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">12</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Increase this to smooth corners more</property> + <property name="adjustment">smooth</property> + <property name="digits">2</property> + <property name="value">1</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">smooth</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">11</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_smooth1"> + <property name="label" translatable="yes">Smooth corners</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Smooth out sharp corners of the trace</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Increase this to reduce the number of nodes in the trace by more aggressive optimization</property> + <property name="adjustment">optimize</property> + <property name="digits">3</property> + <property name="value">0.20</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_SIOX1"> + <property name="label" translatable="yes">User-assisted trace</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Cover the area you want to select as the foreground then select both objects</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">13</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">MS_scans</property> + <property name="round-digits">1</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_MS_stack"> + <property name="label" translatable="yes">Stack</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Stack scans on top of one another (no gaps) instead of tiling (usually with gaps)</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">3</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Multicolor</property> + </object> + <packing> + <property name="position">1</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="orientation">vertical</property> + <child> + <!-- n-columns=3 n-rows=10 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="row-spacing">4</property> + <property name="column-spacing">2</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Favors connections that are part of a long curve (multiplier)</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Curves</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Avoid single disconnected pixels (weight)</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Islands</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Favors connections that are part of foreground color</property> + <property name="halign">start</property> + <property name="margin-top">8</property> + <property name="label" translatable="yes">Sparse pixels:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">The heuristic computed vote will be multiplied by this value</property> + <property name="adjustment">PA_curves</property> + <property name="digits">3</property> + <property name="numeric">True</property> + <property name="value">1</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">A constant vote value</property> + <property name="adjustment">PA_islands</property> + <property name="numeric">True</property> + <property name="value">5</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">The radius of the window analyzed</property> + <property name="adjustment">PA_sparse1</property> + <property name="numeric">True</property> + <property name="value">2</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">The heuristic computed vote will be multiplied by this value</property> + <property name="adjustment">PA_sparse2</property> + <property name="digits">3</property> + <property name="numeric">True</property> + <property name="value">1</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes"> Heuristics:</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="width-request">60</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">PA_curves</property> + <property name="round-digits">1</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">PA_islands</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">PA_sparse1</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkScale"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="adjustment">PA_sparse2</property> + <property name="draw-value">False</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkRadioButton"> + <property name="label" translatable="yes">B-splines</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Preserve staircasing artifacts</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + <property name="group">RB_PA_voronoi</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">9</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="RB_PA_voronoi"> + <property name="label" translatable="yes">Voronoi</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Output composed of straight lines</property> + <property name="halign">start</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">8</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes"> Output:</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="CB_PA_optimize"> + <property name="label" translatable="yes">Optimize</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Try to optimize paths by joining adjacent Bezier curve segments</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Favors connections that are part of foreground color</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Multiplier</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Favors connections that are part of foreground color</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Window radius</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="position">2</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Pixel art</property> + </object> + <packing> + <property name="position">2</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child type="tab"> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="_preview_frame"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">5</property> + <property name="margin-right">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkDrawingArea" id="previewArea"> + <property name="width-request">100</property> + <property name="height-request">100</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">4</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkCheckButton" id="_live_preview"> + <property name="label" translatable="yes">Live updates</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="B_Update"> + <property name="label" translatable="yes">Update preview</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="halign">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">4</property> + <property name="label" translatable="yes">Preview:</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <child> + <object class="GtkMenuButton" id="help-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Instructions</property> + <property name="margin-end">4</property> + <property name="direction">up</property> + <property name="popover">popover1</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">info-outline-symbolic</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkStack" id="stack"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="transition-type">crossfade</property> + <child> + <object class="GtkBox" id="boxchild1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="spacing">3</property> + <property name="layout-style">center</property> + <child> + <object class="GtkButton" id="B_RESET"> + <property name="label">gtk-revert-to-saved</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="use-stock">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="B_OK"> + <property name="label" translatable="yes">Apply</property> + <property name="width-request">150</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <child> + <object class="GtkBox" id="boxchild2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="B_STOP"> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Abort trace operation</property> + <property name="image">image1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkProgressBar" id="progressbar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">5</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">page0</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/dialog-xml.glade b/share/ui/dialog-xml.glade new file mode 100644 index 0000000..2caee9d --- /dev/null +++ b/share/ui/dialog-xml.glade @@ -0,0 +1,304 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">xml-element-new</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">xml-text-new</property> + </object> + <object class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">xml-node-duplicate</property> + </object> + <object class="GtkImage" id="image4"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">xml-node-delete</property> + </object> + <object class="GtkImage" id="image5"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">format-indent-less</property> + </object> + <object class="GtkImage" id="image6"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">format-indent-more</property> + </object> + <object class="GtkImage" id="image7"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-up</property> + </object> + <object class="GtkImage" id="image8"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-down</property> + </object> + <object class="GtkMenu" id="menu-popup"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkRadioMenuItem" id="auto-layout"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Automatic layout</property> + <property name="use-underline">True</property> + <property name="draw-as-radio">True</property> + </object> + </child> + <child> + <object class="GtkRadioMenuItem" id="horz-layout"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Horizontal layout</property> + <property name="use-underline">True</property> + <property name="draw-as-radio">True</property> + <property name="group">auto-layout</property> + </object> + </child> + <child> + <object class="GtkRadioMenuItem" id="vert-layout"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Vertical layout</property> + <property name="use-underline">True</property> + <property name="draw-as-radio">True</property> + <property name="group">auto-layout</property> + </object> + </child> + </object> + <object class="GtkBox" id="main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox" id="buttons"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">2</property> + <property name="hexpand">True</property> + <child> + <object class="GtkButton" id="new-elem"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">New element node</property> + <property name="image">image1</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="new-text"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">New text node</property> + <property name="image">image2</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="dup"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Duplicate node</property> + <property name="image">image3</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="del"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Delete node</property> + <property name="image">image4</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="unindent"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Unindent node</property> + <property name="image">image5</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="indent"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Indent node</property> + <property name="image">image6</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkButton" id="raise"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Raise node</property> + <property name="image">image7</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="layout-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="no-show-all">True</property> + <property name="relief">none</property> + <property name="popup">menu-popup</property> + <property name="use-popover">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="layout-img"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">horizontal</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + <style> + <class name="menu-btn-tight"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">7</property> + </packing> + </child> + <child> + <object class="GtkButton" id="lower"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Lower node</property> + <property name="image">image8</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">8</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkPaned" id="pane"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="position">200</property> + <property name="position-set">True</property> + <property name="wide-handle">True</property> + <child> + <object class="GtkScrolledWindow" id="tree-wnd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <property name="overlay-scrolling">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="resize">False</property> + <property name="shrink">False</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/display-popup.glade b/share/ui/display-popup.glade new file mode 100644 index 0000000..a7550e3 --- /dev/null +++ b/share/ui/display-popup.glade @@ -0,0 +1,309 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-management-symbolic</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">grayscale-mode-symbolic</property> + </object> + <object class="GtkPopover" id="popover"> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="position">left</property> + <property name="constrain-to">none</property> + <child> + <!-- n-columns=3 n-rows=13 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-bottom">5</property> + <property name="label" translatable="yes">Display mode:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkModelButton" id="normal"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Use normal rendering mode</property> + <property name="halign">start</property> + <property name="action-name">win.canvas-display-mode</property> + <property name="action-target">0</property> + <property name="text" translatable="yes">Normal</property> + <property name="inverted">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkModelButton" id="outline"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Show only object outlines</property> + <property name="halign">start</property> + <property name="action-name">win.canvas-display-mode</property> + <property name="action-target">1</property> + <property name="text" translatable="yes">Outline</property> + <property name="inverted">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkModelButton" id="overlay"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Show objects as outlines, and the actual drawing below them with reduced opacity</property> + <property name="halign">start</property> + <property name="action-name">win.canvas-display-mode</property> + <property name="action-target">4</property> + <property name="text" translatable="yes">Outline overlay</property> + <property name="inverted">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkModelButton" id="enhanced"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Ensure all strokes are displayed on screen as at least 1 pixel wide</property> + <property name="halign">start</property> + <property name="action-name">win.canvas-display-mode</property> + <property name="action-target">3</property> + <property name="text" translatable="yes">Enhance thin lines</property> + <property name="inverted">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkModelButton" id="no-filter"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Do not render filters (for speed)</property> + <property name="halign">start</property> + <property name="action-name">win.canvas-display-mode</property> + <property name="action-target">2</property> + <property name="text" translatable="yes">No filters</property> + <property name="inverted">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Quick zoom:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">8</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Quick preview:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">9</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">11</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="zoom-resize"> + <property name="label" translatable="yes">Zoom with window size</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Zoom drawing when window size changes</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">12</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Hold this key to activate quick zoom</property> + <property name="halign">center</property> + <property name="margin-top">1</property> + <property name="margin-bottom">1</property> + <property name="label" translatable="yes"><b>Q</b></property> + <property name="use-markup">True</property> + <property name="justify">center</property> + <property name="width-chars">3</property> + <style> + <class name="key"/> + </style> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">8</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Hold this key for document preview, hiding grids, guides, handles etc.</property> + <property name="halign">center</property> + <property name="margin-top">1</property> + <property name="margin-bottom">1</property> + <property name="label" translatable="yes"><b>F</b></property> + <property name="use-markup">True</property> + <property name="justify">center</property> + <property name="width-chars">3</property> + <style> + <class name="key"/> + </style> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">9</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-top">5</property> + <property name="spacing">5</property> + <child> + <object class="GtkToggleButton" id="color-managed"> + <property name="use-action-appearance">True</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Toggle between normal and color managed modes</property> + <property name="action-name">win.canvas-color-manage</property> + <property name="image">image1</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="grayscale"> + <property name="use-action-appearance">True</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Toggle between normal and grayscale modes</property> + <property name="action-name">win.canvas-color-mode</property> + <property name="image">image2</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + <property name="width">3</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/extension-pdfinput.glade b/share/ui/extension-pdfinput.glade new file mode 100644 index 0000000..6a9df60 --- /dev/null +++ b/share/ui/extension-pdfinput.glade @@ -0,0 +1,622 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkListStore" id="clip_list"> + <columns> + <!-- column-name id --> + <column type="gchararray"/> + <!-- column-name label --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0">-1</col> + <col id="1" translatable="yes">None</col> + </row> + <row> + <col id="0">0</col> + <col id="1" translatable="yes">Media Box</col> + </row> + <row> + <col id="0">1</col> + <col id="1" translatable="yes">Crop Box</col> + </row> + <row> + <col id="0">2</col> + <col id="1" translatable="yes">Trim Box</col> + </row> + <row> + <col id="0">3</col> + <col id="1" translatable="yes">Bleed Box</col> + </row> + <row> + <col id="0">4</col> + <col id="1" translatable="yes">Art Box</col> + </row> + </data> + </object> + <object class="GtkListStore" id="font-list"> + <columns> + <!-- column-name id --> + <column type="gint"/> + <!-- column-name family --> + <column type="gchararray"/> + <!-- column-name style --> + <column type="gchararray"/> + <!-- column-name weight --> + <column type="gchararray"/> + <!-- column-name stretch --> + <column type="gchararray"/> + <!-- column-name strat_label --> + <column type="gchararray"/> + <!-- column-name strat_id --> + <column type="gint"/> + <!-- column-name icon --> + <column type="gchararray"/> + <!-- column-name em --> + <column type="gboolean"/> + </columns> + <data> + <row> + <col id="0">0</col> + <col id="1">Example</col> + <col id="2">Italic</col> + <col id="3">Bold</col> + <col id="4">Condensed</col> + <col id="5">N/A</col> + <col id="6">0</col> + <col id="7">ok</col> + <col id="8">False</col> + </row> + <row> + <col id="0">0</col> + <col id="1">Example</col> + <col id="2">Normal</col> + <col id="3">Normal</col> + <col id="4">Normal</col> + <col id="5">Thing</col> + <col id="6">1</col> + <col id="7">cancel</col> + <col id="8">True</col> + </row> + </data> + </object> + <object class="GtkListStore" id="font-options"> + <columns> + <!-- column-name id --> + <column type="gchararray"/> + <!-- column-name label --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0">0</col> + <col id="1" translatable="yes">Draw missing fonts</col> + </row> + <row> + <col id="0">2</col> + <col id="1" translatable="yes">Substitute missing fonts</col> + </row> + <row> + <col id="0">3</col> + <col id="1" translatable="yes">Keep missing fonts' names</col> + </row> + <row> + <col id="0">4</col> + <col id="1" translatable="yes">Delete missing font text</col> + </row> + <row> + <col id="0">1</col> + <col id="1" translatable="yes">Draw all text</col> + </row> + <row> + <col id="0">5</col> + <col id="1" translatable="yes">Delete all text</col> + </row> + </data> + </object> + <object class="GtkAdjustment" id="mesh-precision"> + <property name="lower">1</property> + <property name="upper">246</property> + <property name="value">1</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkListStore" id="stratedgies"> + <columns> + <!-- column-name id --> + <column type="gint"/> + <!-- column-name label --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0">1</col> + <col id="1" translatable="yes">Draw to Shapes</col> + </row> + <row> + <col id="0">3</col> + <col id="1" translatable="yes">Use Substitute Font</col> + </row> + <row> + <col id="0">2</col> + <col id="1" translatable="yes">Keep Original Font Name</col> + </row> + <row> + <col id="0">0</col> + <col id="1" translatable="yes">Delete Text</col> + </row> + </data> + </object> + <object class="GtkBox" id="content"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkNotebook" id="import-type"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <!-- n-columns=2 n-rows=8 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-bottom">8</property> + <property name="row-spacing">7</property> + <property name="column-spacing">2</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="label" translatable="yes"><i>Import via internal library. Editable text is reconstructed. Pages, layers and margins are preserved, object fills and strokes are recombined and gradient meshes are converted to tiles.</i></property> + <property name="use-markup">True</property> + <property name="wrap">True</property> + <property name="max-width-chars">50</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkExpander"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">8</property> + <property name="resize-toplevel">True</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-top">2</property> + <property name="vexpand">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTreeView"> + <property name="name">font_list</property> + <property name="height-request">200</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">2</property> + <property name="margin-end">2</property> + <property name="margin-bottom">2</property> + <property name="model">font-list</property> + <property name="search-column">0</property> + <property name="show-expanders">False</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + <child> + <object class="GtkTreeViewColumn" id="font-name"> + <property name="title" translatable="yes">Family Name</property> + <child> + <object class="GtkCellRendererPixbuf" id="cell_icon"/> + <attributes> + <attribute name="icon-name">7</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText" id="cell_name"/> + <attributes> + <attribute name="style">8</attribute> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="font-style"> + <property name="title" translatable="yes">Style</property> + <child> + <object class="GtkCellRendererText" id="cell_style"/> + <attributes> + <attribute name="style">8</attribute> + <attribute name="text">2</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="font-weight"> + <property name="title" translatable="yes">Weight</property> + <child> + <object class="GtkCellRendererText" id="cell_weight"/> + <attributes> + <attribute name="style">8</attribute> + <attribute name="text">3</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="font-stretch"> + <property name="title" translatable="yes">Stretch</property> + <child> + <object class="GtkCellRendererText" id="cell_stretch"/> + <attributes> + <attribute name="style">8</attribute> + <attribute name="text">4</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn" id="font-strat"> + <property name="title" translatable="yes">Strategy</property> + <child> + <object class="GtkCellRendererCombo" id="cell-strat"> + <property name="editable">True</property> + <property name="has-entry">False</property> + <property name="model">stratedgies</property> + <property name="text-column">1</property> + </object> + <attributes> + <attribute name="style">8</attribute> + <attribute name="text">5</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">List of all PDF Fonts</property> + <property name="use-markup">True</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="embed-images"> + <property name="label" translatable="yes">Embed Images</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="margin-start">8</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-start">8</property> + <property name="label" translatable="yes">Precision of approximating gradient meshes:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkScale" id="mesh-slider"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">8</property> + <property name="margin-bottom">8</property> + <property name="hexpand">True</property> + <property name="adjustment">mesh-precision</property> + <property name="fill-level">300</property> + <property name="round-digits">1</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="mesh-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">end</property> + <property name="label" translatable="yes">rough</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="font-rendering"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="model">font-options</property> + <property name="active">0</property> + <property name="id-column">0</property> + <property name="active-id">0</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="margin-start">12</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Fonts:</property> + <property name="justify">right</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="margin-start">12</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Pages:</property> + <property name="justify">right</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="page-numbers"> + <property name="name">page_nums</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Type in the page range you want to import using the format 1-4 or 1,2,3,4 or the keyword 'all' to specifiy all pages.</property> + <property name="hexpand">True</property> + <property name="text" translatable="yes">all</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="margin-start">12</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Clip to:</property> + <property name="justify">right</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="clip-to"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="model">clip_list</property> + <property name="active">0</property> + <property name="id-column">0</property> + <property name="active-id">0</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes"><b>Internal import</b></property> + <property name="use-markup">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="label" translatable="yes"><i>Import via external library. Text consists of groups containing cloned glyphs where each glyph is a path. Images are stored internally. Meshes cause entire document to be rendered as a raster image.</i></property> + <property name="use-markup">True</property> + <property name="wrap">True</property> + <property name="max-width-chars">50</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes"><b>Cairo import</b></property> + <property name="use-markup">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="position">1</property> + <property name="tab-fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkDrawingArea" id="preview-area"> + <property name="width-request">200</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">start</property> + <child> + <object class="GtkButton" id="prev-page"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-previous</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="current-page"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="label" translatable="no">1 / 10</property> + <property name="use-markup">True</property> + <property name="justify">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="next-page"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-next</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/gradient-edit.glade b/share/ui/gradient-edit.glade new file mode 100644 index 0000000..b556563 --- /dev/null +++ b/share/ui/gradient-edit.glade @@ -0,0 +1,458 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.1 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkPopover" id="libraryPopover"> + <property name="width-request">360</property> + <property name="height-request">440</property> + <property name="can-focus">False</property> + <property name="position">bottom</property> + <property name="constrain-to">none</property> + <child> + <placeholder/> + </child> + </object> + <object class="GtkAdjustment" id="offset"> + <property name="upper">1</property> + <property name="step-increment">0.01</property> + <property name="page-increment">0.1</property> + </object> + <object class="GtkMenu" id="repeatMenu"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="reserve-toggle-size">False</property> + <child> + <object class="GtkMenuItem" id="repeatNone"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">None</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="repeatDirect"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Direct</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkMenuItem" id="repeatReflected"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Reflected</property> + <property name="use-underline">True</property> + </object> + </child> + </object> + <!-- n-columns=2 n-rows=4 --> + <object class="GtkGrid" id="mainGrid"> + <property name="name">mainGrid</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <child> + <object class="GtkLabel"> + <property name="width-request">65</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-start">4</property> + <property name="label" translatable="yes">Gradient:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="libraryBtn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Gradient library</property> + <property name="valign">center</property> + <property name="margin-left">4</property> + <property name="margin-start">4</property> + <property name="popover">libraryPopover</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">8</property> + <property name="icon-name">gradient-library</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="linearBtn"> + <property name="sensitive">False</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="no-show-all">True</property> + <property name="tooltip-text" translatable="yes">Linear gradient</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="radialBtn"> + <property name="sensitive">False</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="no-show-all">True</property> + <property name="tooltip-text" translatable="yes">Radial gradient</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="reverseBtn"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Reverse the direction of the gradient</property> + <property name="margin-end">16</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Repeat:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="repeatMode"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <property name="valign">center</property> + <property name="relief">none</property> + <property name="popup">repeatMenu</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="repeatIco"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">8</property> + <property name="stock">gtk-missing-image</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">7</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox" id="stopBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">12</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + <property name="hexpand">True</property> + <child> + <object class="GtkExpander" id="stopsBtn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <child> + <placeholder/> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Stops</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">end</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Stop Offset:</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="offsetSpin"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Offset of selected stop</property> + <property name="adjustment">offset</property> + <property name="digits">2</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox" id="gradientBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">2</property> + <property name="margin-top">2</property> + <property name="hexpand">True</property> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </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="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <child> + <object class="GtkBox" id="stopsGallery"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="margin-left">4</property> + <property name="margin-start">4</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-top">1</property> + <property name="margin-bottom">1</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTreeView" id="stopList"> + <property name="width-request">65</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="border-width">1</property> + <property name="headers-visible">False</property> + <property name="enable-search">False</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="stopButtons"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkButton" id="stopAdd"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Insert new stop</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="stopDelete"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Delete stop</property> + <property name="relief">none</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="colorsBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/gradient-stop.svg b/share/ui/gradient-stop.svg new file mode 100644 index 0000000..c2578ed --- /dev/null +++ b/share/ui/gradient-stop.svg @@ -0,0 +1,124 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + inkscape:version="1.1-dev (cafa0e10d4, 2021-01-08, custom)" + id="svg8" + version="1.1" + viewBox="0 0 16 23" + height="23" + width="16" + sodipodi:docname="gradient-stop.svg" + 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" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + <style + id="style1008"> +.hole { + fill:black; +} +.selected { opacity:0.5; } +.opacity { opacity:0.5; } +.color { fill:#00ff00; } +.inner { stroke:#ff0000; } +.outer { fill: yellow; stroke: none; opacity: 0.3; } +</style> + <defs + id="defs2" /> + <sodipodi:namedview + inkscape:showpageshadow="false" + width="1100px" + units="px" + showgrid="true" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="12" + inkscape:cx="10.15625" + inkscape:zoom="16" + inkscape:pageshadow="2" + inkscape:pageopacity="0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" + objecttolerance="10.0" + gridtolerance="10.0" + guidetolerance="10.0" + inkscape:pagecheckerboard="true" + inkscape:document-rotation="0" + inkscape:window-width="1500" + inkscape:window-height="933" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + inkscape:snap-global="true"> + <inkscape:grid + type="xygrid" + id="grid1034" /> + </sodipodi:namedview> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + d="M 8,0 C 7.2449547,0 6.9403102,0.37592866 6.564904,0.75168557 L 1.108173,6.2202604 C 0.42651631,6.8892306 0,7.8276025 0,8.8605325 V 19.303137 C 0,21.340536 1.6574205,23 3.6923077,23 h 8.6153843 c 2.034888,0 3.692309,-1.659464 3.692309,-3.696863 V 8.8605325 c 0,-1.0458251 -0.438787,-1.9917877 -1.134616,-2.6619333 l 0.0096,0.00722 L 9.4350819,0.75168447 C 9,0.38626631 8.7550453,0 8,0 Z" + id="path38" + sodipodi:nodetypes="zccsssssscccz" + class="outer" + style="stroke-width:1" /> + <path + id="rect1038" + style="fill-opacity:1;stroke-width:1;stroke-linejoin:round" + d="M 8.0000002,1.4308745 2.3125,7.1188375 C 1.8116302,7.6094544 1.5000001,8.2919714 1.5000001,9.051476 v 9.743544 c 0,1.499423 1.2079166,2.70654 2.7083333,2.70654 h 7.5833336 c 1.500417,0 2.708334,-1.207117 2.708334,-2.70654 V 9.051476 c 0,-0.768708 -0.319938,-1.4577659 -0.831543,-1.9495545 z" + sodipodi:nodetypes="ccsssssscc" + class="inner color" /> + <path + id="path871" + style="fill:#ffffff;fill-opacity:1;stroke-width:1" + d="m 1.9999999,15 v 3.800001 C 1.9999999,20.02832 2.9636501,21 4.181818,21 h 3.8181817 v -6 z" + sodipodi:nodetypes="cssccc" /> + <path + id="path878" + d="M 14,15 H 7.9999997 v 6.000019 h 3.8181823 c 1.218167,0 2.181817,-0.973616 2.181817,-2.200019 z" + style="fill:#cccccc;fill-opacity:1;stroke-width:1" + sodipodi:nodetypes="cccssc" /> + <path + id="path970" + d="M 13.999999,15 H 1.9999999 v 3.8 c 0,1.226503 0.9636502,2.200029 2.1818181,2.200029 h 7.636364 c 1.218165,0 2.181817,-0.973623 2.181817,-2.200029 z" + style="stroke:none;stroke-width:1" + class="opacity color" + sodipodi:nodetypes="ccssssc" /> + <g + id="g3389" + class="selected" + style=""> + <circle + style="stroke-width:2;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.779775;paint-order:stroke fill markers" + id="path3112" + cx="8" + cy="14" + r="3" + class="outer" /> + <circle + style="opacity:1;stroke:none;stroke-width:2;stroke-opacity:0.3;paint-order:stroke fill markers" + id="path860" + cx="8" + cy="14" + r="2" + class="hole" /> + </g> + </g> +</svg> diff --git a/share/ui/gradient-tip.svg b/share/ui/gradient-tip.svg new file mode 100644 index 0000000..2f557b0 --- /dev/null +++ b/share/ui/gradient-tip.svg @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="gradient-tip.svg" + width="10" + height="5" + viewBox="0 0 10 5" + version="1.1" + id="svg8" + inkscape:version="1.0 (4035a4f, 2020-05-01)"> + <defs + id="defs2" /> + <sodipodi:namedview + inkscape:document-rotation="0" + inkscape:window-maximized="1" + inkscape:window-y="0" + inkscape:window-x="0" + inkscape:window-height="933" + inkscape:window-width="1500" + inkscape:pagecheckerboard="false" + guidetolerance="10.0" + gridtolerance="10.0" + objecttolerance="10.0" + id="base" + pagecolor="#3d3d3d" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:zoom="77.388909" + inkscape:cx="7.2426399" + inkscape:cy="3.2950458" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + units="px" + width="9px" + inkscape:showpageshadow="false"> + <inkscape:grid + id="grid2455" + type="xygrid" /> + </sodipodi:namedview> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:nodetypes="ccccccc" + d="M 0,0 5,5 10,0 H 8.5 L 5,3.5 1.5,0 Z" + style="fill:#000000;fill-opacity:0.7" + id="path2023" /> + <path + sodipodi:nodetypes="cccc" + d="M 1.5,0 5,3.5 8.5,0 Z" + style="fill:#ffffff" + id="path2025" /> + </g> +</svg> diff --git a/share/ui/highlight-colors.css b/share/ui/highlight-colors.css new file mode 100644 index 0000000..1739d45 --- /dev/null +++ b/share/ui/highlight-colors.css @@ -0,0 +1,59 @@ +/* default highlight colors; variant for light backgrounds + * + * gray, blue, yellow, red, green, orange, cyan, purple + */ + +.bright .highlight-color-1 { + color: #babdb6; +} +.bright .highlight-color-2 { + color: #729fcf; +} +.bright .highlight-color-3 { + color: #edd400; +} +.bright .highlight-color-4 { + color: #eb486a; +} +.bright .highlight-color-5 { + color: #73b92f; +} +.bright .highlight-color-6 { + color: #fcaf3e; +} +.bright .highlight-color-7 { + color: #54d5ba; +} +.bright .highlight-color-8 { + color: #ad7fa8; +} + +/* default highlight colors; variant for dark backgrounds + * + * gray, blue, yellow, red, green, orange, cyan, purple + */ + +.dark .highlight-color-1 { + color: #b1b5ad; +} +.dark .highlight-color-2 { + color: #3b80ee; +} +.dark .highlight-color-3 { + color: #c3e33e; +} +.dark .highlight-color-4 { + color: #f3215a; +} +.dark .highlight-color-5 { + color: #36a949; +} +.dark .highlight-color-6 { + color: #f37f35; +} +.dark .highlight-color-7 { + color: #3be3c2; +} +.dark .highlight-color-8 { + color: #b85ac9; +} diff --git a/share/ui/image-properties.glade b/share/ui/image-properties.glade new file mode 100644 index 0000000..5594fa3 --- /dev/null +++ b/share/ui/image-properties.glade @@ -0,0 +1,299 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">document-open</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">shape-image</property> + </object> + <object class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">document-export</property> + </object> + <!-- n-columns=3 n-rows=7 --> + <object class="GtkGrid" id="main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="label" translatable="yes"><b>Image</b></property> + <property name="use-markup">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">5</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkDrawingArea" id="preview"> + <property name="width-request">120</property> + <property name="height-request">80</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="name"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">1</property> + <property name="label" translatable="no"><small>#label</small></property> + <property name="use-markup">True</property> + <property name="ellipsize">end</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="info"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes"><small>123 x 345 px +RGBA +Linked</small></property> + <property name="use-markup">True</property> + <property name="ellipsize">end</property> + <property name="yalign">0</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">URL:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="href"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="change-img"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Change image...</property> + <property name="image">image1</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">5</property> + <child> + <object class="GtkButton" id="embed"> + <property name="label" translatable="yes">Embed</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Embed image in the document</property> + <property name="image">image2</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="export"> + <property name="label" translatable="yes">Save copy...</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Save a copy of this image to a file</property> + <property name="image">image3</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Aspect ratio:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + <property name="spacing">4</property> + <child> + <object class="GtkRadioButton" id="preserve"> + <property name="label" translatable="yes">Preserve</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="stretch"> + <property name="label" translatable="yes">Stretch image</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + <property name="group">preserve</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Rendering:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="rendering"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="active">0</property> + <items> + <item id="0" translatable="yes">Automatic</item> + <item id="1" translatable="yes">Optimize speed</item> + <item id="2" translatable="yes">Optimize quality</item> + <item id="3" translatable="yes">Crisp edges</item> + <item id="4" translatable="yes">Pixelated</item> + </items> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + <property name="width">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> +</interface> diff --git a/share/ui/inkscape-about.glade b/share/ui/inkscape-about.glade new file mode 100644 index 0000000..37929c9 --- /dev/null +++ b/share/ui/inkscape-about.glade @@ -0,0 +1,414 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <object class="GtkImage" id="bug_icon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">bug</property> + </object> + <object class="GtkImage" id="copy-icon"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">3</property> + <property name="icon-name">edit-copy</property> + </object> + <object class="GtkWindow" id="about-screen-window"> + <property name="name">about</property> + <property name="can-focus">False</property> + <property name="title" translatable="yes">Inkscape. Draw freely.</property> + <property name="resizable">False</property> + <property name="window-position">center-always</property> + <property name="icon-name">org.inkscape.Inkscape</property> + <property name="gravity">north</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">4</property> + <child> + <object class="GtkNotebook" id="tabs"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="show-border">False</property> + <property name="enable-popup">True</property> + <property name="group-name">about_stack</property> + <child> + <object class="GtkAspectFrame" id="aspect-frame"> + <property name="width-request">750</property> + <property name="height-request">625</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label-xalign">0</property> + <property name="shadow-type">none</property> + <property name="yalign">0</property> + <child> + <placeholder/> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel" id="about-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Official splash artwork of this version</property> + <property name="hexpand">True</property> + <property name="label" translatable="yes">About</property> + </object> + <packing> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox" id="authors-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="header-authors"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">3</property> + <property name="label" translatable="yes"><big><b>Do you want to get involved with Inkscape? <a href="https://inkscape.org/contribute/">Check this page!</a></b></big></property> + <property name="use-markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">10</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="content-author"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkTextView" id="credits-authors"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="editable">False</property> + <property name="justification">center</property> + <property name="left-margin">10</property> + <property name="right-margin">10</property> + <property name="top-margin">10</property> + <property name="bottom-margin">10</property> + <property name="cursor-visible">False</property> + <property name="accepts-tab">False</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel" id="authors-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">List of authors who contributed to the code</property> + <property name="hexpand">True</property> + <property name="label" translatable="yes">Authors</property> + </object> + <packing> + <property name="position">1</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox" id="translators-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="header-translators"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">3</property> + <property name="label" translatable="yes"><big><b>Do you want to contribute to translation activities? <a href="https://inkscape.org/contribute/translations/">Join us here!</a></b></big></property> + <property name="use-markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">10</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow" id="content-translators"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkTextView" id="credits-translators"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="editable">False</property> + <property name="justification">center</property> + <property name="left-margin">10</property> + <property name="right-margin">10</property> + <property name="top-margin">10</property> + <property name="bottom-margin">10</property> + <property name="cursor-visible">False</property> + <property name="accepts-tab">False</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="position">2</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel" id="translators-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">List of translators</property> + <property name="hexpand">True</property> + <property name="label" translatable="yes">Translators</property> + </object> + <packing> + <property name="position">2</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox" id="license-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel" id="header-license"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-top">3</property> + <property name="label" translatable="yes"><big><b>See the full details about the Inkscape licenses <a href="https://inkscape.org/about/license/">here</a>!</b></big></property> + <property name="use-markup">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">10</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="license-text"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">50</property> + <property name="margin-end">50</property> + <property name="margin-top">20</property> + <property name="margin-bottom">20</property> + <property name="label" translatable="yes">License file failed to load.</property> + <property name="use-markup">True</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="selectable">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="position">3</property> + <property name="tab-fill">False</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel" id="license-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Inkscape license</property> + <property name="hexpand">True</property> + <property name="label" translatable="yes">License</property> + </object> + <packing> + <property name="position">3</property> + <property name="tab-fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="about-screen-footer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">1</property> + <property name="margin-bottom">5</property> + <child> + <object class="GtkLabel" id="copyright"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="label" translatable="yes" context="Brief copyright notice at the footer of the About screen; the placeholder '%1' represents the year as a 4-digit number.">© %1 Inkscape Developers</property> + <property name="wrap">True</property> + <property name="wrap-mode">char</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLinkButton" id="website"> + <property name="label">www.inkscape.org</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Link to the official website</property> + <property name="margin-start">15</property> + <property name="relief">none</property> + <property name="uri">https://inkscape.org/?about-screen=1</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <!-- n-columns=1 n-rows=1 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkRevealer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="transition-type">crossfade</property> + <property name="transition-duration">1000</property> + <property name="reveal-child">True</property> + <child> + <object class="GtkButton" id="version"> + <property name="label">$version</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Click to copy the version number to the clipboard</property> + <property name="image">copy-icon</property> + <property name="always-show-image">True</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkRevealer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="transition-type">slide-right</property> + <property name="transition-duration">1000</property> + <child> + <object class="GtkLabel" id="version-copied"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Version Copied!</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkRevealer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="transition-type">slide-right</property> + <property name="transition-duration">1000</property> + <child> + <object class="GtkLabel" id="debug-info-copied"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Debug Info Copied!</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="debug_info"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Click to copy debug info to the clipboard</property> + <property name="margin-start">4</property> + <property name="image">bug_icon</property> + <property name="always-show-image">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/inkscape-start.glade b/share/ui/inkscape-start.glade new file mode 100644 index 0000000..9bf72e9 --- /dev/null +++ b/share/ui/inkscape-start.glade @@ -0,0 +1,1268 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 + +Copyright (C) Martin Owens + +This file is part of Inkscape Extensions Manager. + +Inkscape Extensions Manager is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +Inkscape Extensions Manager is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with Inkscape Extensions Manager. If not, see <http://www.gnu.org/licenses/>. + +--> +<interface> + <requires lib="gtk+" version="3.18"/> + <!-- interface-license-type gplv3 --> + <!-- interface-name Inkscape Extensions Manager --> + <!-- interface-description Download and manage inkscape extensions --> + <!-- interface-copyright Martin Owens --> + <object class="GtkListStore" id="canvases"> + <columns> + <!-- column-name id --> + <column type="gchararray"/> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name preview --> + <column type="GdkPixbuf"/> + <!-- column-name pagecolor --> + <column type="gchararray"/> + <!-- column-name checkered --> + <column type="gboolean"/> + <!-- column-name border --> + <column type="gchararray"/> + <!-- column-name shadow --> + <column type="gboolean"/> + <!-- column-name desk --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0">light</col> + <col id="1" translatable="yes">Default</col> + <col id="2">resources/canvas_aw.png</col> + <col id="3">rgba(255, 255, 255, 0)</col> + <col id="4">False</col> + <col id="5">#999999</col> + <col id="6">True</col> + <col id="7">#d1d1d1</col> + </row> + <row> + <col id="0">dark</col> + <col id="1" translatable="yes">Dark</col> + <col id="2">resources/canvas_ad.png</col> + <col id="3">rgba(80, 80, 80, 0)</col> + <col id="4">False</col> + <col id="5">#eeeeee</col> + <col id="6">False</col> + <col id="7">rgb(80, 80, 80)</col> + </row> + <row> + <col id="0">light-check</col> + <col id="1" translatable="yes">Light Checkerboard</col> + <col id="2">resources/canvas_cw.png</col> + <col id="3">rgba(255, 255, 255, 0)</col> + <col id="4">True</col> + <col id="5">#111111</col> + <col id="6">False</col> + <col id="7">#d1d1d1</col> + </row> + <row> + <col id="0">dark-check</col> + <col id="1" translatable="yes">Dark Checkerboard</col> + <col id="2">resources/canvas_cd.png</col> + <col id="3">rgba(80, 80, 80, 0)</col> + <col id="4">True</col> + <col id="5">#ffffff</col> + <col id="6">False</col> + <col id="7">rgb(80, 80, 80)</col> + </row> + <row> + <col id="0">light-solid</col> + <col id="1" translatable="yes">Solid White</col> + <col id="2">resources/canvas_sw.png</col> + <col id="3">#ffffff</col> + <col id="4">False</col> + <col id="5">#cccccc</col> + <col id="6">False</col> + <col id="7">#d1d1d1</col> + </row> + </data> + </object> + <object class="GtkListStore" id="keyslist"> + <columns> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name keys_id --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">Inkscape (default)</col> + <col id="1">default</col> + </row> + <row> + <col id="0">Filled by code</col> + <col id="1">nope</col> + </row> + </data> + </object> + <object class="GtkListStore" id="recent_files"> + <columns> + <!-- column-name filename --> + <column type="gchararray"/> + <!-- column-name filepath --> + <column type="gchararray"/> + <!-- column-name unix_datetime --> + <column type="gint64"/> + <!-- column-name crashfile --> + <column type="gboolean"/> + </columns> + <data> + <row> + <col id="0">test.svg</col> + <col id="1">a</col> + <col id="2">1</col> + <col id="3">False</col> + </row> + <row> + <col id="0">test2.svg</col> + <col id="1">b</col> + <col id="2">200</col> + <col id="3">False</col> + </row> + <row> + <col id="0">another_example_file.svg</col> + <col id="1">c</col> + <col id="2">5</col> + <col id="3">False</col> + </row> + <row> + <col id="0">drawing.eps</col> + <col id="1">d</col> + <col id="2">100</col> + <col id="3">True</col> + </row> + <row> + <col id="0">test3.svg</col> + <col id="1">e</col> + <col id="2">50</col> + <col id="3">False</col> + </row> + </data> + </object> + <object class="GtkListStore" id="themelist"> + <columns> + <!-- column-name id --> + <column type="gchararray"/> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name theme_id --> + <column type="gchararray"/> + <!-- column-name icons_id --> + <column type="gchararray"/> + <!-- column-name base_color --> + <column type="gchararray"/> + <!-- column-name base_color_dark --> + <column type="gchararray"/> + <!-- column-name success_color --> + <column type="gchararray"/> + <!-- column-name warn_color --> + <column type="gchararray"/> + <!-- column-name error_color --> + <column type="gchararray"/> + <!-- column-name symbolic_icons --> + <column type="gboolean"/> + <!-- column-name small_icons --> + <column type="gboolean"/> + <!-- column-name available --> + <column type="gboolean"/> + </columns> + <data> + <row> + <col id="0">colorful</col> + <col id="1" translatable="yes">Colorful</col> + <col id="2">Adwaita</col> + <col id="3">multicolor</col> + <col id="4">#000000</col> + <col id="5">#ebebeb</col> + <col id="6">#00990a</col> + <col id="7">#ff1990</col> + <col id="8">#0099e6</col> + <col id="9">True</col> + <col id="10">False</col> + <col id="11">False</col> + </row> + <row> + <col id="0">grayscale</col> + <col id="1" translatable="yes">Grayscale</col> + <col id="2">Adwaita</col> + <col id="3">multicolor</col> + <col id="4">#000000</col> + <col id="5">#e5e5e5</col> + <col id="6">#cccccc</col> + <col id="7">#808080</col> + <col id="8">#808080</col> + <col id="9">True</col> + <col id="10">False</col> + <col id="11">False</col> + </row> + <row> + <col id="0">symbolic</col> + <col id="1" translatable="yes">Classic Symbolic</col> + <col id="2">Adwaita</col> + <col id="3">Adwaita</col> + <col id="4">0</col> + <col id="5">0</col> + <col id="6">0</col> + <col id="7">0</col> + <col id="8">0</col> + <col id="9">True</col> + <col id="10">False</col> + <col id="11">False</col> + </row> + <row> + <col id="0">compacted</col> + <col id="1" translatable="yes">Compacted (Small Screens)</col> + <col id="2">Minwaita-Inkscape</col> + <col id="3">hicolor</col> + <col id="4">0</col> + <col id="5">0</col> + <col id="6">0</col> + <col id="7">0</col> + <col id="8">0</col> + <col id="9">True</col> + <col id="10">True</col> + <col id="11">False</col> + </row> + <row> + <col id="0">system</col> + <col id="1" translatable="yes">System Default</col> + <col id="2"></col> + <col id="3"></col> + <col id="4">0</col> + <col id="5">0</col> + <col id="6">0</col> + <col id="7">0</col> + <col id="8">0</col> + <col id="9">False</col> + <col id="10">False</col> + <col id="11">True</col> + </row> + <row> + <col id="0">classic</col> + <col id="1" translatable="yes">Classic Inkscape</col> + <col id="2">Adwaita</col> + <col id="3">Adwaita</col> + <col id="4">0</col> + <col id="5">0</col> + <col id="6">0</col> + <col id="7">0</col> + <col id="8">0</col> + <col id="9">False</col> + <col id="10">False</col> + <col id="11">False</col> + </row> + </data> + </object> + <object class="GtkWindow" id="start-screen-window"> + <property name="can_focus">True</property> + <property name="has_focus">True</property> + <property name="is_focus">True</property> + <property name="can_default">True</property> + <property name="has_default">True</property> + <property name="modal">True</property> + <property name="window_position">center</property> + <property name="default_width">700</property> + <property name="default_height">360</property> + <property name="urgency_hint">True</property> + <child> + <object class="GtkNotebook" id="tabs"> + <property name="name">startscreennotebook</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="show_border">False</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkInfoBar" id="keys_warning"> + <property name="can_focus">False</property> + <property name="message_type">error</property> + <child internal-child="action_area"> + <object class="GtkButtonBox"> + <property name="can_focus">False</property> + <property name="spacing">6</property> + <property name="layout_style">end</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child internal-child="content_area"> + <object class="GtkBox"> + <property name="can_focus">False</property> + <property name="spacing">16</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-dialog-warning</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"><b>Warning:</b> Using a non-standard shortcut keyboard layout could make it harder to follow tutorials.</property> + <property name="use_markup">True</property> + <property name="wrap">True</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <!-- n-columns=3 n-rows=4 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin-top">40</property> + <property name="margin-bottom">30</property> + <property name="row-spacing">8</property> + <property name="column-spacing">4</property> + <property name="row-homogeneous">True</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Appearance</property> + <property name="xalign">0</property> + <attributes> + <attribute name="scale" value="1.2"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Canvas</property> + <property name="xalign">0</property> + <attributes> + <attribute name="scale" value="1.2"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Keyboard</property> + <property name="xalign">0</property> + <attributes> + <attribute name="scale" value="1.2"/> + </attributes> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="themes"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">themelist</property> + <property name="id-column">0</property> + <child> + <object class="GtkCellRendererText" id="theme_namerenderer"/> + <attributes> + <attribute name="sensitive">11</attribute> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="keys"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">keyslist</property> + <property name="active">0</property> + <property name="id-column">1</property> + <child> + <object class="GtkCellRendererText" id="keys_cellrenderer"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox" id="iconrow"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="spacing">3</property> + <property name="homogeneous">True</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">tool-pointer</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">tool-node-editor</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">draw-rectangle</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">draw-polygon-star</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">draw-path</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">draw-freehand</property> + <property name="icon_size">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">7</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkComboBox" id="canvas"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="tooltip-text" translatable="yes">Select the default color background for the canvas</property> + <property name="model">canvases</property> + <property name="id-column">0</property> + <child> + <object class="GtkCellRendererPixbuf" id="canvas_preview"> + <property name="xpad">10</property> + </object> + <attributes> + <attribute name="pixbuf">2</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="valign">end</property> + <property name="margin-bottom">2</property> + <property name="label" translatable="yes">Dark</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSwitch" id="dark_toggle"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tooltip-text" translatable="yes">Set to dark theme</property> + <property name="halign">center</property> + <property name="valign">start</property> + <property name="margin-top">2</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">8</property> + <property name="margin_right">8</property> + <property name="layout_style">start</property> + <child> + <object class="GtkButton" id="save"> + <property name="label">gtk-save</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="has_focus">True</property> + <property name="focus_on_click">False</property> + <property name="receives_default">True</property> + <property name="use-stock">True</property> + <style> + <class name="primary"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + <property name="secondary">True</property> + </packing> + </child> + <child> + <object class="GtkButton"> + <property name="label">Load Preferences</property> + <property name="can_focus">True</property> + <property name="focus_on_click">False</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Quick Setup</property> + </object> + <packing> + <property name="tab_expand">True</property> + <property name="tab_fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">30</property> + <property name="margin_right">30</property> + <property name="margin_top">10</property> + <property name="margin_bottom">10</property> + <property name="label" translatable="yes"><b>The Inkscape project is supported by users like you.</b> Through our collective time, money and skill, we have made this software for everyone in the world to enjoy free from restrictions and free from costs. <b> +If you would like to get involved and make the next version of Inkscape even better, please consider joining the Inkscape project today.</b></property> + <property name="use_markup">True</property> + <property name="wrap">True</property> + <property name="max_width_chars">50</property> + <property name="xalign">0</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">90</property> + <property name="margin_right">90</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">8</property> + <property name="baseline-position">top</property> + <child> + <object class="GtkLinkButton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="relief">none</property> + <property name="uri">https://inkscape.org/splash/contribute/</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">10</property> + <property name="margin_right">10</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="pixbuf">../pixmaps/user.png</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">8</property> + <property name="margin_right">8</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <property name="label" translatable="yes">Learn how to +Contribute Time</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <attributes> + <attribute name="weight" value="bold"/> + <attribute name="scale" value="1.3999999999999999"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLinkButton"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="relief">none</property> + <property name="uri">https://inkscape.org/splash/support/</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="pixbuf">../pixmaps/support.png</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">8</property> + <property name="margin_right">8</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <property name="label" translatable="yes">Learn how to +Fund Inkscape</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <attributes> + <attribute name="weight" value="bold"/> + <attribute name="scale" value="1.3999999999999999"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">False</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_left">8</property> + <property name="margin_right">8</property> + <property name="layout_style">start</property> + <child> + <object class="GtkButton" id="thanks"> + <property name="label" translatable="yes">Thanks!</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="has_focus">True</property> + <property name="focus_on_click">False</property> + <property name="receives_default">True</property> + <style> + <class name="primary"/> + </style> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + <property name="secondary">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="position">1</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Supported by You</property> + </object> + <packing> + <property name="position">1</property> + <property name="tab_expand">True</property> + <property name="tab_fill">False</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkNotebook" id="kinds"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="tab_pos">left</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkTreeView" id="recent_treeview"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="model">recent_files</property> + <property name="search-column">1</property> + <property name="tooltip-column">1</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + <child> + <object class="GtkTreeViewColumn" id="recent_name"> + <property name="title" translatable="yes" context="Welcome dialog">Recent Files</property> + <property name="sort-indicator">True</property> + <property name="sort-order">descending</property> + <property name="sort-column-id">0</property> + <child> + <object class="GtkCellRendererText"> + </object> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText"> + <property name="xpad">4</property> + <property name="xalign">1</property> + <property name="sensitive">False</property> + <property name="alignment">right</property> + <property name="scale">0.90</property> + <property name="text">Emergency Save</property> + </object> + <attributes> + <attribute name="visible">3</attribute> + </attributes> + </child> + </object> + </child> + </object> + </child> + </object> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes" context="Welcome dialog">Existing Files</property> + </object> + <packing> + <property name="tab_fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_start">8</property> + <property name="margin_end">8</property> + <property name="spacing">4</property> + <property name="layout_style">start</property> + <child> + <object class="GtkButton" id="load"> + <property name="label" translatable="yes">Open</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="has_focus">True</property> + <property name="focus_on_click">False</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + <property name="secondary">True</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="show_toggle"> + <property name="label" translatable="yes">Show this every time</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="focus_on_click">False</property> + <property name="receives_default">False</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="new"> + <property name="label" translatable="yes">New Document</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="focus_on_click">False</property> + <property name="receives_default">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + <property name="secondary">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="padding">4</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="position">2</property> + </packing> + </child> + <child type="tab"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Time to Draw</property> + </object> + <packing> + <property name="position">2</property> + <property name="tab_expand">True</property> + <property name="tab_fill">False</property> + </packing> + </child> + </object> + </child> + <child type="titlebar"> + <object class="GtkFixed" id="banner"> + <property name="width-request">700</property> + <property name="height-request">220</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkRevealer"> + <property name="width-request">100</property> + <property name="height-request">80</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="transition-type">crossfade</property> + <property name="transition-duration">1500</property> + <property name="reveal-child">True</property> + <child> + <object class="GtkFixed"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage"> + <property name="width-request">100</property> + <property name="height-request">80</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">../screens/start-welcome.png</property> + </object> + </child> + <child> + <object class="GtkImage" id="welcome_text"> + <property name="width-request">700</property> + <property name="height-request">220</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">../screens/start-welcome-text.svg</property> + </object> + </child> + <child> + <object class="GtkLabel"> + <property name="can_focus">False</property> + <property name="label" translatable="yes" comments="Not automatic, but will be turned into start-welcome-text.svg">Welcome!</property> + </object> + </child> + <child> + <object class="GtkLabel"> + <property name="can_focus">False</property> + <property name="label" translatable="yes" comments="Not automatic, but will be turned into start-welcome-text.svg">Let's set up a few things...</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <object class="GtkRevealer"> + <property name="width-request">100</property> + <property name="height-request">80</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="transition-type">crossfade</property> + <property name="transition-duration">1500</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">../screens/start-support.png</property> + </object> + </child> + </object> + </child> + <child> + <object class="GtkRevealer"> + <property name="width-request">100</property> + <property name="height-request">80</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="transition-type">crossfade</property> + <property name="transition-duration">1500</property> + <child> + <object class="GtkFixed"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage"> + <property name="width-request">700</property> + <property name="height-request">220</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">../screens/start-splash.png</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child> + <!-- n-columns=1 n-rows=1 --> + <object class="GtkGrid"> + <property name="width-request">700</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkButton" id="close_window"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">end</property> + <property name="hexpand">True</property> + <property name="relief">none</property> + <property name="image-position">right</property> + <property name="always-show-image">True</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="icon_name">window-close</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + </object> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/inline-css.lang b/share/ui/inline-css.lang new file mode 100644 index 0000000..29a04df --- /dev/null +++ b/share/ui/inline-css.lang @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<language id="inline-css" _name="Inline CSS" version="2.0" _section="Markup"> + <definitions> + <context id="inline-css"> + <include> + <context ref="css:style-block-content"/> + </include> + </context> + </definitions> +</language> diff --git a/share/ui/mac.css b/share/ui/mac.css new file mode 100644 index 0000000..694aa6f --- /dev/null +++ b/share/ui/mac.css @@ -0,0 +1,4 @@ +/* This fix a bad performance on Mac (maybe others) on some themes */ +button, +spinbutton, +combobox {box-shadow: none;}
\ No newline at end of file diff --git a/share/ui/marker-popup.glade b/share/ui/marker-popup.glade new file mode 100644 index 0000000..eb163e6 --- /dev/null +++ b/share/ui/marker-popup.glade @@ -0,0 +1,530 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkAdjustment" id="adjustment-angle"> + <property name="lower">-360</property> + <property name="upper">360.00999999999999</property> + <property name="step-increment">1</property> + <property name="page-increment">15</property> + </object> + <object class="GtkAdjustment" id="adjustment-offset"> + <property name="lower">-10000</property> + <property name="upper">10000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjustment-offset-2"> + <property name="lower">-10000</property> + <property name="upper">10000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjustment-scale"> + <property name="lower">0.001</property> + <property name="upper">10000</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkAdjustment" id="adjustment-scale-2"> + <property name="lower">0.001</property> + <property name="upper">10000</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkImage" id="image-linked"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">entries-linked-symbolic</property> + <property name="icon_size">3</property> + </object> + <object class="GtkImage" id="image-unlinked"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">entries-unlinked-symbolic</property> + <property name="icon_size">3</property> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">orient-auto-reverse</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">orient-auto</property> + </object> + <object class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">orient-angle</property> + </object> + <object class="GtkImage" id="image4"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">object-flip-horizontal-symbolic</property> + </object> + <object class="GtkRadioButton" id="radio-orient"> + <property name="label">radiobutton</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <object class="GtkPopover" id="popover"> + <property name="can-focus">False</property> + <property name="constrain-to">none</property> + <child> + <object class="GtkBox"> + <property name="width-request">378</property> + <property name="height-request">500</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="vexpand">True</property> + <property name="hscrollbar-policy">never</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="vscroll-policy">natural</property> + <child> + <object class="GtkFlowBox" id="flowbox"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="min-children-per-line">8</property> + <property name="max-children-per-line">8</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <!-- n-columns=4 n-rows=8 --> + <object class="GtkGrid" id="input-grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">4</property> + <property name="margin-bottom">4</property> + <property name="row-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Size X:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="scale-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-scale</property> + <property name="digits">3</property> + <property name="numeric">True</property> + <property name="value">0.0001</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Size Y:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="scale-y"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-scale-2</property> + <property name="digits">3</property> + <property name="numeric">True</property> + <property name="value">0.0001</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="scale-with-stroke"> + <property name="label" translatable="yes">Scale with stroke</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">end</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Orientation:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkRadioButton" id="orient-auto-rev"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Orient along the path, reversing at the start</property> + <property name="image">image1</property> + <property name="always-show-image">True</property> + <property name="draw-indicator">False</property> + <property name="group">radio-orient</property> + <style> + <class name="tight-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="orient-auto"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Orient along the path</property> + <property name="image">image2</property> + <property name="always-show-image">True</property> + <property name="draw-indicator">False</property> + <property name="group">radio-orient</property> + <style> + <class name="tight-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="orient-angle"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Fixed specified angle</property> + <property name="image">image3</property> + <property name="active">True</property> + <property name="draw-indicator">False</property> + <property name="group">radio-orient</property> + <style> + <class name="tight-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="btn-horz-flip"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Flip marker horizontally</property> + <property name="margin-start">8</property> + <property name="image">image4</property> + <style> + <class name="tight-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Fixed angle:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="angle"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-angle</property> + <property name="digits">2</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Offset X:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Offset Y:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">7</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="offset-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-offset</property> + <property name="digits">3</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="offset-y"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-offset-2</property> + <property name="digits">3</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkButton" id="edit-marker"> + <property name="label" translatable="yes">Edit on canvas</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">center</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">4</property> + <property name="hexpand">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkImage" id="preview"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">4</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="marker-id"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-left">4</property> + <property name="margin-right">4</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">ID</property> + <property name="use-markup">True</property> + <property name="ellipsize">middle</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="height">7</property> + </packing> + </child> + <child> + <object class="GtkButton" id="link-scale"> + <property name="name">LockGuides</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <property name="margin-end">1</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="relief">none</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + <property name="height">2</property> + </packing> + </child> + <child> + <object class="GtkImage" id="spacer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="pixel-size">5</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkMenuButton" id="menu-btn"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="popover">popover</property> + <child> + <object class="GtkBox" id="btn-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="current-img"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="stock">gtk-missing-image</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pan-down-symbolic</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/menus.ui b/share/ui/menus.ui new file mode 100644 index 0000000..82d4393 --- /dev/null +++ b/share/ui/menus.ui @@ -0,0 +1,1321 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<interface> + <requires lib="gtk+" version="3.22" /> + <menu id="menus"> + <submenu id="file-menu"> + <attribute name='label' translatable="yes">_File</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_New</attribute> + <attribute name='action'>win.document-new</attribute> + <attribute name='icon'>document-new</attribute> + </item> + <item> + <attribute name='label' translatable="yes">New from _Template...</attribute> + <attribute name='action'>win.document-dialog-templates</attribute> + <attribute name='icon'>dialog-templates</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Open...</attribute> + <attribute name='action'>win.document-open</attribute> + <attribute name='icon'>document-open</attribute> + </item> + </section> + <submenu id="recent-files"> + <attribute name='label' translatable='yes'>Open _Recent</attribute> + </submenu> + <section> + <item> + <attribute name='label' translatable="yes">Re_vert</attribute> + <attribute name='action'>win.document-revert</attribute> + <attribute name='icon'>document-revert</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Save</attribute> + <attribute name='action'>win.document-save</attribute> + <attribute name='icon'>document-save</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Save _As...</attribute> + <attribute name='action'>win.document-save-as</attribute> + <attribute name='icon'>document-save-as</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Save a Cop_y...</attribute> + <attribute name='action'>win.document-save-copy</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Save Template...</attribute> + <attribute name='action'>win.document-save-template</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Import...</attribute> + <attribute name='action'>win.document-import</attribute> + <attribute name='icon'>document-import</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Import _Web Image...</attribute> + <attribute name='action'>app.org.inkscape.import-web-image</attribute> + <attribute name='icon'>document-import-web</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Export...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Export</attribute> + <attribute name='icon'>document-export</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Print...</attribute> + <attribute name='action'>win.document-print</attribute> + <attribute name='icon'>document-print</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Clean _Up Document</attribute> + <attribute name='action'>win.document-cleanup</attribute> + <attribute name='icon'>document-cleanup</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Document Resources</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>DocumentResources</attribute> + <attribute name='icon'>document-resources</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Document Properties...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>DocumentProperties</attribute> + <attribute name='icon'>document-properties</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Close</attribute> + <attribute name='action'>win.document-close</attribute> + <attribute name='icon'>window-close</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Quit</attribute> + <attribute name='action'>app.quit</attribute> + <attribute name='icon'>application-exit</attribute> + <attribute name='hidden-when'>macos-menubar</attribute> + </item> + </section> + </submenu> + + <submenu id="edit-menu"> + <attribute name='label' translatable="yes">_Edit</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_Undo</attribute> + <attribute name='action'>doc.undo</attribute> + <attribute name='icon'>edit-undo</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Redo</attribute> + <attribute name='action'>doc.redo</attribute> + <attribute name='icon'>edit-redo</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Undo _History...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>UndoHistory</attribute> + <attribute name='icon'>edit-undo-history</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Cu_t</attribute> + <attribute name='action'>app.cut</attribute> + <attribute name='icon'>edit-cut</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Copy</attribute> + <attribute name='action'>app.copy</attribute> + <attribute name='icon'>edit-copy</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Paste</attribute> + <attribute name='action'>win.paste</attribute> + <attribute name='icon'>edit-paste</attribute> + </item> + </section> + <submenu id="paste-size"> + <attribute name='label' translatable="yes">P_aste...</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_In Place</attribute> + <attribute name='action'>win.paste-in-place</attribute> + <attribute name='icon'>edit-paste-in-place</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_On Page</attribute> + <attribute name='action'>win.paste-on-page</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Style</attribute> + <attribute name='action'>app.paste-style</attribute> + <attribute name='icon'>edit-paste-style</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Si_ze</attribute> + <attribute name='action'>app.paste-size</attribute> + <attribute name='icon'>edit-paste-size</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Width</attribute> + <attribute name='action'>app.paste-width</attribute> + <attribute name='icon'>edit-paste-width</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Height</attribute> + <attribute name='action'>app.paste-height</attribute> + <attribute name='icon'>edit-paste-height</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Size Separately</attribute> + <attribute name='action'>app.paste-size-separately</attribute> + <attribute name='icon'>edit-paste-size-separately</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Width Separately</attribute> + <attribute name='action'>app.paste-width-separately</attribute> + <attribute name='icon'>edit-paste-width-separately</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Height Separately</attribute> + <attribute name='action'>app.paste-height-separately</attribute> + <attribute name='icon'>edit-paste-height-separately</attribute> + </item> + </section> + </submenu> + <section> + <item> + <attribute name='label' translatable="yes">_Find/Replace...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Find</attribute> + <attribute name='icon'>edit-find</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Duplic_ate</attribute> + <attribute name='action'>app.duplicate</attribute> + <attribute name='icon'>edit-duplicate</attribute> + </item> + <submenu id="paste-size"> + <attribute name='label' translatable="yes">Clo_ne</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Create Clo_ne</attribute> + <attribute name='action'>app.clone</attribute> + <attribute name='icon'>edit-clone</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Create Tiled Clones...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>CloneTiler</attribute> + <attribute name='icon'>dialog-tile-clones</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Unlin_k Clone</attribute> + <attribute name='action'>app.clone-unlink</attribute> + <attribute name='icon'>edit-clone-unlink</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Unlink Clones _recursively</attribute> + <attribute name='action'>app.clone-unlink-recursively</attribute> + <attribute name='icon'>edit-clone-unlink</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Relink to Copied</attribute> + <attribute name='action'>app.clone-link</attribute> + <attribute name='icon'>edit-clone-link</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Select _Original</attribute> + <attribute name='action'>app.select-original</attribute> + <attribute name='icon'>edit-select-original</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Clone original path (LPE)</attribute> + <attribute name='action'>app.clone-link-lpe</attribute> + <attribute name='icon'>edit-clone-link-lpe</attribute> + </item> + </section> + </submenu> + <item> + <attribute name='label' translatable="yes">Make a _Bitmap Copy</attribute> + <attribute name='action'>app.selection-make-bitmap-copy</attribute> + <attribute name='icon'>selection-make-bitmap-copy</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Delete</attribute> + <attribute name='action'>app.delete</attribute> + <attribute name='icon'>edit-delete</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Select Al_l</attribute> + <attribute name='action'>win.select-all</attribute> + <attribute name='icon'>edit-select-all</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Select All in All La_yers</attribute> + <attribute name='action'>win.select-all-layers</attribute> + <attribute name='icon'>edit-select-all-layers</attribute> + </item> + <submenu id="select-size"> + <attribute name='label' translatable="yes">Select Sa_me</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Fill _and Stroke</attribute> + <attribute name='action'>win.select-same-fill-and-stroke</attribute> + <attribute name='icon'>edit-select-same-fill-and-stroke</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Fill Color</attribute> + <attribute name='action'>win.select-same-fill</attribute> + <attribute name='icon'>edit-select-same-fill</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Stroke Color</attribute> + <attribute name='action'>win.select-same-stroke-color</attribute> + <attribute name='icon'>edit-select-same-stroke-color</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Stroke St_yle</attribute> + <attribute name='action'>win.select-same-stroke-style</attribute> + <attribute name='icon'>edit-select-same-stroke-style</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Object Type</attribute> + <attribute name='action'>win.select-same-object-type</attribute> + <attribute name='icon'>edit-select-same-object-type</attribute> + </item> + </section> + </submenu> + <item> + <attribute name='label' translatable="yes">In_vert Selection</attribute> + <attribute name='action'>win.select-invert</attribute> + <attribute name='icon'>edit-select-invert</attribute> + </item> + <item> + <attribute name='label' translatable="yes">D_eselect</attribute> + <attribute name='action'>win.select-none</attribute> + <attribute name='icon'>edit-select-none</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Resize Page to Selection</attribute> + <attribute name='action'>app.page-fit-to-selection</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Create _Guides Around the Current Page</attribute> + <attribute name='action'>doc.create-guides-around-page</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Lock All Guides</attribute> + <attribute name='action'>doc.lock-all-guides</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Delete All Guides</attribute> + <attribute name='action'>doc.delete-all-guides</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_XML Editor...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>XMLEditor</attribute> + <attribute name='icon'>dialog-xml-editor</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Input Devices...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Input</attribute> + <attribute name='icon'>dialog-input-devices</attribute> + </item> + <item> + <attribute name='label' translatable="yes">P_references</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Preferences</attribute> + <attribute name='icon'>preferences-system</attribute> + <attribute name='use-icon'>true</attribute> + <attribute name='hidden-when'>macos-menubar</attribute> + </item> + </section> + </submenu> + + <submenu id="view-menu"> + <attribute name='label' translatable="yes">_View</attribute> + <submenu id="zoom-menu"> + <attribute name='label' translatable='yes'>_Zoom</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Zoom in</attribute> + <attribute name='action'>win.canvas-zoom-in</attribute> + <attribute name='icon'>zoom-in</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom out</attribute> + <attribute name='action'>win.canvas-zoom-out</attribute> + <attribute name='icon'>zoom-out</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Zoom to 1:1</attribute> + <attribute name='action'>win.canvas-zoom-1-1</attribute> + <attribute name='icon'>zoom-original</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom to 1:2</attribute> + <attribute name='action'>win.canvas-zoom-1-2</attribute> + <attribute name='icon'>zoom-half-size</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom to 2:1</attribute> + <attribute name='action'>win.canvas-zoom-2-1</attribute> + <attribute name='icon'>zoom-double-size</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Zoom Selection</attribute> + <attribute name='action'>win.canvas-zoom-selection</attribute> + <attribute name='icon'>zoom-fit-selection</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom Drawing</attribute> + <attribute name='action'>win.canvas-zoom-drawing</attribute> + <attribute name='icon'>zoom-fit-drawing</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom Page</attribute> + <attribute name='action'>win.canvas-zoom-page</attribute> + <attribute name='icon'>zoom-fit-page</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom Page Width</attribute> + <attribute name='action'>win.canvas-zoom-page-width</attribute> + <attribute name='icon'>zoom-fit-width</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Center Page</attribute> + <attribute name='action'>win.canvas-zoom-center-page</attribute> + <attribute name='icon'>zoom-center-page</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Zoom Previous</attribute> + <attribute name='action'>win.canvas-zoom-prev</attribute> + <attribute name='icon'>zoom-previous</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Zoom Next</attribute> + <attribute name='action'>win.canvas-zoom-next</attribute> + <attribute name='icon'>zoom-next</attribute> + </item> + </section> + </submenu> + <submenu id="orientation-menu"> + <attribute name='label' translatable='yes'>_Orientation</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Rotate Clockwise</attribute> + <attribute name='action'>win.canvas-rotate-cw</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Rotate Counter-Clockwise</attribute> + <attribute name='action'>win.canvas-rotate-ccw</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Reset Rotation</attribute> + <attribute name='action'>win.canvas-rotate-reset</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Lock Rotation</attribute> + <attribute name='action'>win.canvas-rotate-lock</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Flip Horizontally</attribute> + <attribute name='action'>win.canvas-flip-horizontal</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Flip Vertically</attribute> + <attribute name='action'>win.canvas-flip-vertical</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Reset Flipping</attribute> + <attribute name='action'>win.canvas-flip-reset</attribute> + </item> + </section> + </submenu> + <submenu id="display-mode-menu"> + <attribute name='label' translatable='yes'>_Display Mode</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Normal</attribute> + <attribute name='action'>win.canvas-display-mode</attribute> + <attribute name='target' type='i'>0</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Outline</attribute> + <attribute name='action'>win.canvas-display-mode</attribute> + <attribute name='target' type='i'>1</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Outline Overlay</attribute> + <attribute name='action'>win.canvas-display-mode</attribute> + <attribute name='target' type='i'>4</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Enhance Thin Lines</attribute> + <attribute name='action'>win.canvas-display-mode</attribute> + <attribute name='target' type='i'>3</attribute> + </item> + <item> + <attribute name='label' translatable="yes">No Filters</attribute> + <attribute name='action'>win.canvas-display-mode</attribute> + <attribute name='target' type='i'>2</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Cycle</attribute> + <attribute name='action'>win.canvas-display-mode-cycle</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Toggle</attribute> + <attribute name='action'>win.canvas-display-mode-toggle</attribute> + </item> + </section> + </submenu> + <submenu id="split-mode-menu"> + <attribute name='label' translatable='yes'>_Split Mode</attribute> + <section> + <item> + <attribute name='label' translatable="yes">None</attribute> + <attribute name='action'>win.canvas-split-mode</attribute> + <attribute name='target' type='i'>0</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Split</attribute> + <attribute name='action'>win.canvas-split-mode</attribute> + <attribute name='target' type='i'>1</attribute> + </item> + <item> + <attribute name='label' translatable="yes">X-Ray</attribute> + <attribute name='action'>win.canvas-split-mode</attribute> + <attribute name='target' type='i'>2</attribute> + </item> + </section> + </submenu> + <section> + <item> + <attribute name='label' translatable="yes">Gray Scale</attribute> + <attribute name='action'>win.canvas-color-mode</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Color Management</attribute> + <attribute name='action'>win.canvas-color-manage</attribute> + </item> + </section> + <item> + <attribute name='label' translatable="yes">Page _Grid</attribute> + <attribute name='action'>doc.show-grids</attribute> + </item> + <item> + <attribute name='label' translatable="yes">G_uides</attribute> + <attribute name='action'>doc.show-all-guides</attribute> + </item> + <section> + <submenu id="display-show-hide"> + <attribute name='label' translatable='yes'>Sh_ow/Hide</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_Commands Bar</attribute> + <attribute name='action'>win.canvas-commands-bar</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Sn_ap Controls Bar</attribute> + <attribute name='action'>win.canvas-snap-controls-bar</attribute> + </item> + <item> + <attribute name='label' translatable="yes">T_ool Controls Bar</attribute> + <attribute name='action'>win.canvas-tool-control-bar</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Toolbox</attribute> + <attribute name='action'>win.canvas-toolbox</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Rulers</attribute> + <attribute name='action'>win.canvas-rulers</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Scroll_bars</attribute> + <attribute name='action'>win.canvas-scroll-bars</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Palette</attribute> + <attribute name='action'>win.canvas-palette</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Statusbar</attribute> + <attribute name='action'>win.canvas-statusbar</attribute> + </item> + </section> + </submenu> + <item> + <attribute name='label' translatable="yes">Show/Hide D_ialogs</attribute> + <attribute name='action'>win.dialog-toggle</attribute> + <attribute name='icon'>show-dialogs</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Command Palette</attribute> + <attribute name='action'>win.canvas-command-palette</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">S_watches...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Swatches</attribute> + <attribute name='icon'>swatches</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Messages...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Messages</attribute> + <attribute name='icon'>dialog-messages</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">P_revious Window</attribute> + <attribute name='action'>win.window-previous</attribute> + <attribute name='icon'>window-previous</attribute> + </item> + <item> + <attribute name='label' translatable="yes">N_ext Window</attribute> + <attribute name='action'>win.window-next</attribute> + <attribute name='icon'>window-next</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Icon Preview</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>IconPreview</attribute> + <attribute name='icon'>dialog-icon-preview</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Duplic_ate Window</attribute> + <attribute name='action'>win.window-new</attribute> + <attribute name='icon'>window-new</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Fullscreen</attribute> + <attribute name='action'>win.view-fullscreen</attribute> + <attribute name='icon'>view-fullscreen</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Wide Screen</attribute> + <attribute name='action'>win.canvas-interface-mode</attribute> + </item> + </section> + </submenu> + + <submenu id="layer-menu"> + <attribute name='label' translatable="yes">_Layer</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Layers and Objects...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Objects</attribute> + <attribute name='icon'>dialog-objects</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Add Layer...</attribute> + <attribute name='action'>win.layer-new</attribute> + <attribute name='icon'>layer-new</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Re_name Layer...</attribute> + <attribute name='action'>win.layer-rename</attribute> + <attribute name='icon'>layer-rename</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Show/Hide Current Layer</attribute> + <attribute name='action'>win.layer-hide-toggle</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Lock/Unlock Current Layer</attribute> + <attribute name='action'>win.layer-lock-toggle</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Switch to Layer Abov_e</attribute> + <attribute name='action'>win.layer-previous</attribute> + <attribute name='icon'>layer-previous</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Switch to Layer Belo_w</attribute> + <attribute name='action'>win.layer-next</attribute> + <attribute name='icon'>layer-next</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Move Selection to Layer Abo_ve</attribute> + <attribute name='action'>win.selection-move-to-layer-above</attribute> + <attribute name='icon'>selection-move-to-layer-above</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Move Selection to Layer Bel_ow</attribute> + <attribute name='action'>win.selection-move-to-layer-below</attribute> + <attribute name='icon'>selection-move-to-layer-below</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Move Selection to Layer...</attribute> + <attribute name='action'>win.selection-move-to-layer</attribute> + <attribute name='icon'>selection-move-to-layer</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Layer to _Top</attribute> + <attribute name='action'>win.layer-top</attribute> + <attribute name='icon'>layer-top</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Raise Layer</attribute> + <attribute name='action'>win.layer-raise</attribute> + <attribute name='icon'>layer-raise</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Lower Layer</attribute> + <attribute name='action'>win.layer-lower</attribute> + <attribute name='icon'>layer-lower</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Layer to _Bottom</attribute> + <attribute name='action'>win.layer-bottom</attribute> + <attribute name='icon'>layer-bottom</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">D_uplicate Current Layer</attribute> + <attribute name='action'>win.layer-duplicate</attribute> + <attribute name='icon'>layer-duplicate</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Delete Current Layer</attribute> + <attribute name='action'>win.layer-delete</attribute> + <attribute name='icon'>layer-delete</attribute> + </item> + </section> + </submenu> + + <submenu id="object-menu"> + <attribute name='label' translatable="yes">_Object</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Layers and Objects...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Objects</attribute> + <attribute name='icon'>dialog-objects</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Fill and Stroke...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>FillStroke</attribute> + <attribute name='icon'>dialog-fill-and-stroke</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Object Properties...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>ObjectProperties</attribute> + <attribute name='icon'>dialog-object-properties</attribute> + </item> + <item> + <attribute name='label' translatable="yes">S_ymbols...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Symbols</attribute> + <attribute name='icon'>symbols</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Paint Servers...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>PaintServers</attribute> + <attribute name='icon'>symbols</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Selectors and CSS...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Selectors</attribute> + <attribute name='icon'>dialog-selectors</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Group</attribute> + <attribute name='action'>app.selection-group</attribute> + <attribute name='icon'>object-group</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Ungroup</attribute> + <attribute name='action'>app.selection-ungroup</attribute> + <attribute name='icon'>object-ungroup</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Pop Selected Objects out of Group</attribute> + <attribute name='action'>app.selection-ungroup-pop</attribute> + <attribute name='icon'>object-ungroup-pop-selection</attribute> + </item> + </section> + <section> + <submenu id="object-clip"> + <attribute name='label' translatable='yes'>Cli_p</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_Set Clip</attribute> + <attribute name='action'>app.object-set-clip</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Set Inverse Clip (LPE)</attribute> + <attribute name='action'>app.object-set-inverse-clip</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Release Clip</attribute> + <attribute name='action'>app.object-release-clip</attribute> + </item> + </section> + </submenu> + </section> + <submenu id="object-mask"> + <attribute name='label' translatable='yes'>Mas_k</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_Set Mask</attribute> + <attribute name='action'>app.object-set-mask</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Set Inverse Mask (LPE)</attribute> + <attribute name='action'>app.object-set-inverse-mask</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Release Mask</attribute> + <attribute name='action'>app.object-release-mask</attribute> + </item> + </section> + </submenu> + <submenu id="object-mask"> + <attribute name='label' translatable='yes'>Patter_n</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Objects to Patter_n</attribute> + <attribute name='action'>app.object-to-pattern</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Pattern to _Objects</attribute> + <attribute name='action'>app.pattern-to-object</attribute> + </item> + </section> + </submenu> + <section> + <item> + <attribute name='label' translatable="yes">Objects to _Marker</attribute> + <attribute name='action'>app.object-to-marker</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Objects to Gu_ides</attribute> + <attribute name='action'>app.object-to-guides</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Raise to _Top</attribute> + <attribute name='action'>app.selection-top</attribute> + <attribute name='icon'>selection-top</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Raise</attribute> + <attribute name='action'>app.selection-raise</attribute> + <attribute name='icon'>selection-raise</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Lower</attribute> + <attribute name='action'>app.selection-lower</attribute> + <attribute name='icon'>selection-lower</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Lower to _Bottom</attribute> + <attribute name='action'>app.selection-bottom</attribute> + <attribute name='icon'>selection-bottom</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Rotate 90° CW</attribute> + <attribute name='action'>app.object-rotate-90-cw</attribute> + <attribute name='icon'>object-rotate-right</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Rotate 90° CCW</attribute> + <attribute name='action'>app.object-rotate-90-ccw</attribute> + <attribute name='icon'>object-rotate-left</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Flip _Horizontal</attribute> + <attribute name='action'>app.object-flip-horizontal</attribute> + <attribute name='icon'>object-flip-horizontal</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Flip _Vertical</attribute> + <attribute name='action'>app.object-flip-vertical</attribute> + <attribute name='icon'>object-flip-vertical</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Unhide All</attribute> + <attribute name='action'>app.unhide-all</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Unlock All</attribute> + <attribute name='action'>app.unlock-all</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Transfor_m...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Transform</attribute> + <attribute name='icon'>dialog-transform</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Align and Distribute...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>AlignDistribute</attribute> + <attribute name='icon'>dialog-align-and-distribute</attribute> + </item> + </section> + </submenu> + + <submenu id="path-menu"> + <attribute name='label' translatable="yes">_Path</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_Object to Path</attribute> + <attribute name='action'>app.object-to-path</attribute> + <attribute name='icon'>object-to-path</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Stroke to Path</attribute> + <attribute name='action'>app.object-stroke-to-path</attribute> + <attribute name='icon'>stroke-to-path</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Trace Bitmap...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Trace</attribute> + <attribute name='icon'>bitmap-trace</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Union</attribute> + <attribute name='action'>app.path-union</attribute> + <attribute name='icon'>path-union</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Difference</attribute> + <attribute name='action'>app.path-difference</attribute> + <attribute name='icon'>path-difference</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Intersection</attribute> + <attribute name='action'>app.path-intersection</attribute> + <attribute name='icon'>path-intersection</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">E_xclusion</attribute> + <attribute name='action'>app.path-exclusion</attribute> + <attribute name='icon'>path-exclusion</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Di_vision</attribute> + <attribute name='action'>app.path-division</attribute> + <attribute name='icon'>path-division</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Cut _Path</attribute> + <attribute name='action'>app.path-cut</attribute> + <attribute name='icon'>path-cut</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Combine</attribute> + <attribute name='action'>app.path-combine</attribute> + <attribute name='icon'>path-combine</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Break _Apart</attribute> + <attribute name='action'>app.path-break-apart</attribute> + <attribute name='icon'>path-break-apart</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Split Pat_h</attribute> + <attribute name='action'>app.path-split</attribute> + <attribute name='icon'>path-split</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Fracture</attribute> + <attribute name='action'>app.path-fracture</attribute> + <attribute name='icon'>path-fracture</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Flatten</attribute> + <attribute name='action'>app.path-flatten</attribute> + <attribute name='icon'>path-flatten</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">I_nset</attribute> + <attribute name='action'>win.path-inset</attribute> + <attribute name='icon'>path-inset</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Outs_et</attribute> + <attribute name='action'>win.path-offset</attribute> + <attribute name='icon'>path-outset</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">D_ynamic Offset</attribute> + <attribute name='action'>win.path-offset-dynamic</attribute> + <attribute name='icon'>path-offset-dynamic</attribute> + <attribute name='use-icon'>true</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Linked Offset</attribute> + <attribute name='action'>win.path-offset-linked</attribute> + <attribute name='icon'>path-offset-linked</attribute> + <attribute name='use-icon'>true</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Fill between paths</attribute> + <attribute name='action'>app.path-fill-between-paths</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Si_mplify</attribute> + <attribute name='action'>app.path-simplify</attribute> + <attribute name='icon'>path-simplify</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Reverse</attribute> + <attribute name='action'>win.path-reverse</attribute> + <attribute name='icon'>path-reverse</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Path E_ffects...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>LivePathEffect</attribute> + <attribute name='icon'>dialog-path-effects</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Paste Path _Effect</attribute> + <attribute name='action'>app.paste-path-effect</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Remove Path _Effect</attribute> + <attribute name='action'>app.remove-path-effect</attribute> + </item> + </section> + </submenu> + + <submenu id="text-menu"> + <attribute name='label' translatable="yes">_Text</attribute> + <section> + <item> + <attribute name='label' translatable="yes">_Text and Font...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Text</attribute> + <attribute name='icon'>dialog-text-and-font</attribute> + </item> + <item> + <attribute name='label' translatable="yes">SVG Font Editor...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>SVGFonts</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Unicode Characters...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Glyphs</attribute> + <attribute name='icon'>accessories-character-map</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Put on Path</attribute> + <attribute name='action'>app.text-put-on-path</attribute> + <attribute name='icon'>text-put-on-path</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Remove from Path</attribute> + <attribute name='action'>app.text-remove-from-path</attribute> + <attribute name='icon'>text-remove-from-path</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">_Flow into Frame</attribute> + <attribute name='action'>app.text-flow-into-frame</attribute> + <attribute name='icon'>text-flow-into-frame</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Set _Subtraction Frames</attribute> + <attribute name='action'>app.text-flow-subtract-frame</attribute> + <attribute name='icon'>text-flow-subtract-frame</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Unflow</attribute> + <attribute name='action'>app.text-unflow</attribute> + <attribute name='icon'>text-unflow</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Convert to Text</attribute> + <attribute name='action'>app.text-convert-to-regular</attribute> + <attribute name='icon'>text-convert-to-regular</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Remove Manual _Kerns</attribute> + <attribute name='action'>app.text-unkern</attribute> + <attribute name='icon'>text-unkern</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">Check Spellin_g...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Spellcheck</attribute> + <attribute name='icon'>tools-check-spelling</attribute> + </item> + </section> + </submenu> + + <submenu id="filter-menu"> + <attribute name='label' translatable="yes">Filter_s</attribute> + <section id="filter-menu-filters"/> + <section> + <item> + <attribute name='label' translatable="yes">Filter _Editor...</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>FilterEffects</attribute> + <attribute name='icon'>dialog-filters</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Remove Filters</attribute> + <attribute name='action'>app.edit-remove-filter</attribute> + </item> + </section> + </submenu> + + <submenu id="effect-menu"> + <attribute name='label' translatable="yes">Exte_nsions</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Previous Exte_nsion</attribute> + <attribute name='action'>app.last-effect</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Previous Extension Settings...</attribute> + <attribute name='action'>app.last-effect-pref</attribute> + </item> + </section> + <section id="effect-menu-effects"/> + <section> + <item> + <attribute name='label' translatable="yes">Manage Extensions...</attribute> + <attribute name='action'>app.org.inkscape.extension.manager</attribute> + </item> + </section> + </submenu> + + <submenu id="help-menu"> + <attribute name='label' translatable="yes">_Help</attribute> + <section> + <item> + <attribute name='label' translatable="yes">Inkscape Manual</attribute> + <attribute name='action'>win.help-url-manual</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Keys and Mouse Reference</attribute> + <attribute name='action'>win.help-url-keys</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Ask Us a Question</attribute> + <attribute name='action'>win.help-url-ask-question</attribute> + </item> + <submenu id="tutiorial"> + <attribute name='label' translatable='yes'>Tutorials</attribute> + <item> + <attribute name='label' translatable="yes">Inkscape: _Basic</attribute> + <attribute name='action'>app.tutorial-basic</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Inkscape: _Shapes</attribute> + <attribute name='action'>app.tutorial-shapes</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Inkscape: _Advanced</attribute> + <attribute name='action'>app.tutorial-advanced</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Inkscape: T_racing</attribute> + <attribute name='action'>app.tutorial-tracing</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Inkscape: Tracing Pixel Art</attribute> + <attribute name='action'>app.tutorial-tracing-pixelart</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Inkscape: _Calligraphy</attribute> + <attribute name='action'>app.tutorial-calligraphy</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Inkscape: _Interpolate</attribute> + <attribute name='action'>app.tutorial-interpolate</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Elements of Design</attribute> + <attribute name='action'>app.tutorial-design</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_Tips and Tricks</attribute> + <attribute name='action'>app.tutorial-tips</attribute> + </item> + </submenu> + <item> + <attribute name='label' translatable="yes">Command Line Options</attribute> + <attribute name='action'>win.help-url-man</attribute> + </item> + <item> + <attribute name='label' translatable="yes">FAQ</attribute> + <attribute name='action'>win.help-url-faq</attribute> + </item> + <item> + <attribute name='label' translatable="yes">New in This Version</attribute> + <attribute name='action'>win.help-url-release-notes</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Report a Bug</attribute> + <attribute name='action'>win.help-url-report-bug</attribute> + </item> + <item> + <attribute name='label' translatable="yes">Donate</attribute> + <attribute name='action'>win.help-url-donate</attribute> + </item> + <item> + <attribute name='label' translatable="yes">SVG 1.1 Specification</attribute> + <attribute name='action'>win.help-url-svg11-spec</attribute> + </item> + <item> + <attribute name='label' translatable="yes">SVG 2 Specification</attribute> + <attribute name='action'>win.help-url-svg2-spec</attribute> + </item> + </section> + <section> + <item> + <attribute name='label' translatable="yes">About _Memory</attribute> + <attribute name='action'>win.dialog-open</attribute> + <attribute name='target'>Memory</attribute> + <attribute name='icon'>dialog-memory</attribute> + </item> + <item> + <attribute name='label' translatable="yes">_About Inkscape</attribute> + <attribute name='action'>app.about</attribute> + <attribute name='icon'>inkscape-logo</attribute> + <attribute name='use-icon'>true</attribute> + <attribute name='hidden-when'>macos-menubar</attribute> + </item> + </section> + </submenu> + </menu> + +</interface> diff --git a/share/ui/object-attributes.glade b/share/ui/object-attributes.glade new file mode 100644 index 0000000..2793f1e --- /dev/null +++ b/share/ui/object-attributes.glade @@ -0,0 +1,1095 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.40.0 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <!-- n-columns=4 n-rows=5 --> + <object class="GtkGrid"> + <property name="name">text-main</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <object class="GtkAdjustment" id="adjustment-el-end"> + <property name="lower">-360</property> + <property name="upper">360</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjustment-el-rx"> + <property name="upper">1000000</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="adjustment-el-ry"> + <property name="upper">1000000</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="adjustment-el-start"> + <property name="lower">-360</property> + <property name="upper">360</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjustment-rect-height"> + <property name="upper">1000000</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="adjustment-rect-rx"> + <property name="upper">1000000</property> + <property name="step-increment">0.10</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="adjustment-rect-ry"> + <property name="upper">1000000</property> + <property name="step-increment">0.10</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="adjustment-rect-width"> + <property name="upper">1000000</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="adjustment-star-corner"> + <property name="lower">3</property> + <property name="upper">1024</property> + <property name="step-increment">1</property> + <property name="page-increment">5</property> + </object> + <object class="GtkAdjustment" id="adjustment-star-ratio"> + <property name="lower">0.01</property> + <property name="upper">1</property> + <property name="step-increment">0.01</property> + <property name="page-increment">0.10</property> + </object> + <object class="GtkAdjustment" id="adjustment-star-rnd"> + <property name="lower">-10</property> + <property name="upper">10</property> + <property name="step-increment">0.010000000000000002</property> + <property name="page-increment">0.10</property> + </object> + <object class="GtkAdjustment" id="adjustment-star-rounded"> + <property name="lower">-10</property> + <property name="upper">10</property> + <property name="step-increment">0.01</property> + <property name="page-increment">0.10</property> + </object> + <object class="GtkImage" id="image-arc"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-ellipse-arc</property> + </object> + <object class="GtkImage" id="image-chord"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-ellipse-chord</property> + </object> + <object class="GtkImage" id="image-clea"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-clear-value</property> + </object> + <object class="GtkImage" id="image-clear1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-clear-value</property> + </object> + <object class="GtkImage" id="image-clear2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">edit-clear-value</property> + </object> + <object class="GtkImage" id="image-level"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">object-level</property> + </object> + <object class="GtkImage" id="image-poly"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-polygon</property> + </object> + <object class="GtkImage" id="image-round"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">rounding</property> + </object> + <object class="GtkImage" id="image-round-corners"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">rectangle-make-corners-round</property> + </object> + <object class="GtkImage" id="image-round1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">rounding</property> + </object> + <object class="GtkImage" id="image-seg"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-ellipse-segment</property> + </object> + <object class="GtkImage" id="image-sharp"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">rectangle-make-corners-sharp</property> + </object> + <!-- n-columns=5 n-rows=6 --> + <object class="GtkGrid" id="rect-main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Dimensions</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">W:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="rect-width"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Width of rectangle (without stroke)</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-rect-width</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">H:</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="rect-height"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Height of rectangle (without stroke)</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-rect-height</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-top">4</property> + <property name="label" translatable="yes">Corner radius</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Rx:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="rect-rx"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Horizontal radius of rounded corners</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-rect-rx</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Ry:</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="rect-ry"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Vertical radius of rounded corners</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-rect-ry</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkButton" id="rect-sharp"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Make corners sharp</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="image">image-sharp</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">3</property> + <property name="margin-end">3</property> + <property name="orientation">vertical</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="rect-corners"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Make corners independent (path effect)</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="image">image-round-corners</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="rect-round"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Round numbers to nearest integer</property> + <property name="image">image-round</property> + <property name="relief">none</property> + <style> + <class name="small-button"/> + </style> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <object class="GtkImage" id="image-star"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-star</property> + </object> + <!-- n-columns=4 n-rows=6 --> + <object class="GtkGrid" id="star-main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Shape</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Corner:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Rounded:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Randomized:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="star-corners"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Number of corners of a polygon or star</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-star-corner</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="star-rounded"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">How rounded are the corners (0 for sharp)</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-star-rounded</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="star-rand"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Scatter randomly the corners and angles</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-star-rnd</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkRadioButton" id="star-poly"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Regular polygon (with one handle) instead of a star</property> + <property name="image">image-poly</property> + <property name="draw-indicator">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="star-star"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Star instead of a regular polygon (with one handle)</property> + <property name="image">image-star</property> + <property name="draw-indicator">False</property> + <property name="group">star-poly</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">3</property> + <property name="margin-end">3</property> + <property name="orientation">vertical</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="star-align"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Level shape</property> + <property name="image">image-level</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="star-ratio-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Spoke ratio:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="star-ratio"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Base radius to tip radius ratio</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-star-ratio</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="star-spacer"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="star-rnd-clear"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="halign">start</property> + <property name="image">image-clea</property> + <property name="relief">none</property> + <style> + <class name="small-button"/> + </style> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkButton" id="star-round-clear"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="halign">start</property> + <property name="image">image-clear1</property> + <property name="relief">none</property> + <style> + <class name="small-button"/> + </style> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="star-ratio-clear"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="halign">start</property> + <property name="image">image-clear2</property> + <property name="relief">none</property> + <style> + <class name="small-button"/> + </style> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="star-spacer1"> + <property name="width-request">40</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <object class="GtkImage" id="image-whole"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-ellipse-whole</property> + </object> + <!-- n-columns=5 n-rows=6 --> + <object class="GtkGrid" id="ellipse-main"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Radii</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Rx:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="el-rx"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Horizontal radius of the circle, ellipse, or arc</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-el-rx</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Ry:</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="el-ry"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Vertical radius of the circle, ellipse, or arc</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-el-ry</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-top">4</property> + <property name="label" translatable="yes">Angles</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Start:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">End:</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="el-start"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">The angle (in degrees) from the horizontal to the arc's start point</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-el-start</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="el-end"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">The angle (in degrees) from the horizontal to the arc's end point</property> + <property name="hexpand">True</property> + <property name="width-chars">6</property> + <property name="adjustment">adjustment-el-end</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkRadioButton" id="el-slice"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Switch to slice (closed shape with two radii)</property> + <property name="image">image-seg</property> + <property name="draw-indicator">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="el-arc"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Switch to arc (unclosed shape)</property> + <property name="image">image-arc</property> + <property name="draw-indicator">False</property> + <property name="group">el-slice</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="el-chord"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Switch to chord (closed shape)</property> + <property name="image">image-chord</property> + <property name="draw-indicator">False</property> + <property name="group">el-slice</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">3</property> + <property name="margin-end">3</property> + <property name="orientation">vertical</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="el-whole"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Make the shape a whole ellipse, not arc or segment</property> + <property name="image">image-whole</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="el-round"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Round numbers to nearest integer</property> + <property name="image">image-round1</property> + <property name="relief">none</property> + <style> + <class name="small-button"/> + </style> + </object> + <packing> + <property name="left-attach">4</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <object class="GtkBox" id="main-widget"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-top">6</property> + <property name="margin-bottom">4</property> + <property name="orientation">vertical</property> + <property name="spacing">5</property> + <child> + <object class="GtkBox" id="main-header"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <property name="spacing">5</property> + <child> + <object class="GtkLabel" id="main-obj-name"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="hexpand">True</property> + <property name="label" translatable="no">label</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="main-panel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> +</interface> diff --git a/share/ui/page-properties.glade b/share/ui/page-properties.glade new file mode 100644 index 0000000..4f64105 --- /dev/null +++ b/share/ui/page-properties.glade @@ -0,0 +1,1018 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkAdjustment" id="adj-page-height"> + <property name="lower">0.001</property> + <property name="upper">10000000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adj-page-width"> + <property name="lower">0.001</property> + <property name="upper">10000000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adj-scale-x"> + <property name="lower">9.9999999999999995e-07</property> + <property name="upper">1000000</property> + <property name="value">1</property> + <property name="step-increment">0.10</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="adj-viewbox-height"> + <property name="lower">0.001</property> + <property name="upper">10000000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adj-viewbox-width"> + <property name="lower">0.001</property> + <property name="upper">10000000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adj-viewbox-x"> + <property name="lower">-10000000</property> + <property name="upper">10000000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adj-viewbox-y"> + <property name="lower">-10000000</property> + <property name="upper">10000000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkImage" id="image-resize"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">pages-resize-symbolic</property> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="pixel-size">20</property> + <property name="icon-name">page-portrait-symbolic</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="pixel-size">20</property> + <property name="icon-name">page-landscape-symbolic</property> + </object> + <object class="GtkMenu" id="page-templates-menu"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="reserve-toggle-size">False</property> + </object> + <!-- n-columns=3 n-rows=2 --> + <object class="GtkGrid" id="main-grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="halign">start</property> + <property name="valign">start</property> + <child> + <!-- n-columns=4 n-rows=16 --> + <object class="GtkGrid" id="left-grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="row-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Front page</property> + <style> + <class name="heading"/> + <class name="top"/> + </style> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Width:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Height:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="page-width"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Width of front page</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-page-width</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="page-height"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Height of front page</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-page-height</property> + <property name="digits">3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Resize to content:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + <property name="hexpand">True</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Orientation:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <object class="GtkRadioButton" id="page-landscape"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="margin-end">5</property> + <property name="image">image2</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + <property name="group">page-portrait</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="page-portrait"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="margin-end">5</property> + <property name="image">image1</property> + <property name="active">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">5</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkButton" id="page-resize"> + <property name="width-request">50</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Fit the page to the current selection or the drawing if there's no selection.</property> + <property name="halign">end</property> + <property name="image">image-resize</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkButton" id="link-width-height"> + <property name="name">LockGuides</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">start</property> + <property name="margin-start">2</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="relief">none</property> + <style> + <class name="link-edit-button"/> + </style> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">2</property> + <property name="height">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="scale-x-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Scale:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="scale-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Document scale establishes size of user units. +SVG element positions are expressed in user units.</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-scale-x</property> + <property name="digits">6</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">7</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">X:</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Y:</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Width:</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">13</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Height:</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">14</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="viewbox-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-viewbox-x</property> + <property name="digits">3</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">11</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="viewbox-y"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-viewbox-y</property> + <property name="digits">3</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">12</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="viewbox-width"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-viewbox-width</property> + <property name="digits">3</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">13</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="viewbox-height"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="width-chars">9</property> + <property name="adjustment">adj-viewbox-height</property> + <property name="digits">3</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">14</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="margin-end">2</property> + <property name="label" translatable="yes">Format:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkMenuButton" id="page-menu-btn"> + <property name="width-request">80</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Predefined paper sizes to choose from</property> + <property name="margin-end">2</property> + <property name="hexpand">True</property> + <property name="draw-indicator">True</property> + <property name="popup">page-templates-menu</property> + <property name="use-popover">False</property> + <child> + <object class="GtkLabel" id="page-template-name"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">A4</property> + <property name="ellipsize">end</property> + <property name="single-line-mode">True</property> + <property name="max-width-chars">8</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="page-units"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Document's units used to specify document size only</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkExpander" id="viewbox-expander"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-top">6</property> + <property name="margin-bottom">4</property> + <child> + <placeholder/> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Advanced viewbox scaling options</property> + <property name="label" translatable="yes">Viewbox</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">10</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkImage" id="linked-scale-img"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="margin-start">2</property> + <property name="stock">gtk-missing-image</property> + <style> + <class name="viewbox"/> + </style> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">13</property> + <property name="height">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="nonuniform-scale"> + <property name="name">non-uniform-scale</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Non-uniform scale!</property> + <attributes> + <attribute name="style" value="italic"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">9</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="user-units"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label">xx</property> + <style> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">4</property> + <property name="label" translatable="yes">per user unit</property> + <style> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">8</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="unsupported"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Unsupported percentage size!</property> + <attributes> + <attribute name="style" value="italic"/> + </attributes> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">3</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <!-- n-columns=5 n-rows=5 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="row-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Display</property> + <style> + <class name="heading"/> + <class name="top"/> + </style> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Display units:</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkComboBoxText" id="display-units"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Units used throughout the user interface</property> + <property name="halign">end</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkBox" id="preview-box"> + <property name="height-request">132</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + <property name="width">4</property> + </packing> + </child> + <child> + <!-- n-columns=3 n-rows=2 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="margin-bottom">6</property> + <property name="row-spacing">2</property> + <property name="column-spacing">4</property> + <property name="column-homogeneous">True</property> + <child> + <object class="GtkButton" id="background-color"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Page background color used during editing and exporting</property> + <property name="halign">center</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="border-color"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Page border and drop shadow color</property> + <property name="halign">center</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="desk-color"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Desk background color surrounding pages</property> + <property name="halign">center</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="label" translatable="yes">Border</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="label" translatable="yes">Page</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <property name="label" translatable="yes">Desk</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">4</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="checkerboard"> + <property name="label" translatable="yes">Checkerboard</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">If set, use a colored checkerboard for the desk background.</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="border"> + <property name="label" translatable="yes">Border</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">If set, a rectangular page border is shown.</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="border-top"> + <property name="label" translatable="yes">Always on top</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">If set, the page border is always on top of the drawing.</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">True</property> + <style> + <class name="indent"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="shadow"> + <property name="label" translatable="yes">Show shadow</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">If set, the page border shows a shadow on its right and lower side.</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">True</property> + <style> + <class name="indent"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="page-label-style"> + <property name="label" translatable="yes">Show big page labels</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Show the big page labels below the page border.</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Render</property> + <style> + <class name="heading"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="clip-to-page"> + <property name="label" translatable="yes">Clip to page</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">Anything that is not on a page will not be displayed</property> + <property name="halign">start</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="use-antialias"> + <property name="label" translatable="yes">Use antialiasing</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="tooltip-text" translatable="yes">If unset, no antialiasing will be done on the drawing.</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">4</property> + <property name="width">4</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label"> </property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> +</interface> diff --git a/share/ui/pattern-edit.glade b/share/ui/pattern-edit.glade new file mode 100644 index 0000000..1decedf --- /dev/null +++ b/share/ui/pattern-edit.glade @@ -0,0 +1,755 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.24"/> + <object class="GtkAdjustment" id="adjustment-angle"> + <property name="lower">-360</property> + <property name="upper">360.00999999999999</property> + <property name="step-increment">1</property> + <property name="page-increment">15</property> + </object> + <object class="GtkAdjustment" id="adjustment-gap-x"> + <property name="upper">40</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkAdjustment" id="adjustment-gap-y"> + <property name="upper">40</property> + <property name="step-increment">1</property> + <property name="page-increment">2</property> + </object> + <object class="GtkAdjustment" id="adjustment-offset"> + <property name="lower">-10000</property> + <property name="upper">10000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjustment-offset-2"> + <property name="lower">-10000</property> + <property name="upper">10000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjustment-orient"> + <property name="lower">-12</property> + <property name="upper">12</property> + <property name="step-increment">1</property> + <property name="page-increment">1</property> + </object> + <object class="GtkAdjustment" id="adjustment-scale"> + <property name="lower">0.01</property> + <property name="upper">1000</property> + <property name="step-increment">0.10</property> + <property name="page-increment">0.20</property> + </object> + <object class="GtkAdjustment" id="adjustment-scale-2"> + <property name="lower">0.01</property> + <property name="upper">1000</property> + <property name="step-increment">0.10</property> + <property name="page-increment">0.20</property> + </object> + <object class="GtkAdjustment" id="adjustment-tile-size"> + <property name="upper">20</property> + <property name="step-increment">1</property> + <property name="page-increment">1</property> + </object> + <object class="GtkPopover" id="popover-options"> + <property name="width-request">260</property> + <property name="can-focus">False</property> + <property name="position">bottom</property> + <child> + <object class="GtkBox" id="options"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">8</property> + <property name="margin-end">8</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkCheckButton" id="show-names"> + <property name="label" translatable="yes">Show names</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="label" translatable="yes">Tile size:</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkScale" id="tile-slider"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-tile-size</property> + <property name="round-digits">0</property> + <property name="draw-value">False</property> + <property name="has-origin">False</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + <object class="GtkImage" id="image-linked"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">entries-linked-symbolic</property> + <property name="icon_size">3</property> + </object> + <object class="GtkImage" id="image-unlinked"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">entries-unlinked-symbolic</property> + <property name="icon_size">3</property> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-previous-symbolic</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">go-next-symbolic</property> + <property name="use-fallback">True</property> + </object> + <object class="GtkBox" id="main-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-bottom">2</property> + <property name="spacing">5</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="label" translatable="yes">Pattern fill</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSearchEntry" id="search"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="halign">end</property> + <property name="width-chars">16</property> + <property name="caps-lock-warning">False</property> + <property name="primary-icon-name">edit-find-symbolic</property> + <property name="primary-icon-activatable">False</property> + <property name="primary-icon-sensitive">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkMenuButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">center</property> + <property name="relief">none</property> + <property name="popover">popover-options</property> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">gear</property> + </object> + </child> + <style> + <class name="square-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack-type">end</property> + <property name="position">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkPaned" id="paned"> + <property name="height-request">50</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="vexpand">True</property> + <property name="orientation">vertical</property> + <property name="position">50</property> + <property name="position-set">True</property> + <property name="wide-handle">True</property> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="vscroll-policy">natural</property> + <child> + <object class="GtkFlowBox" id="doc-flowbox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="min-children-per-line">2</property> + <property name="max-children-per-line">999</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">False</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkComboBoxText" id="pattern-combo"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">1</property> + <style> + <class name="flat-combobox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="previous"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image1</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="next"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="image">image2</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="hscrollbar-policy">never</property> + <child> + <object class="GtkViewport"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="vscroll-policy">natural</property> + <child> + <object class="GtkFlowBox" id="flowbox"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="min-children-per-line">2</property> + <property name="max-children-per-line">999</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">False</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="valign">center</property> + <property name="margin-top">3</property> + <property name="margin-bottom">3</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <!-- n-columns=4 n-rows=8 --> + <object class="GtkGrid" id="input-grid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-end">4</property> + <property name="margin-top">4</property> + <property name="margin-bottom">4</property> + <property name="row-spacing">4</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Scale X:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="scale-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-scale</property> + <property name="digits">3</property> + <property name="numeric">True</property> + <property name="value">0.0001</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Scale Y:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="scale-y"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-scale-2</property> + <property name="digits">3</property> + <property name="numeric">True</property> + <property name="value">0.0001</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Orientation:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="angle"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-angle</property> + <property name="digits">2</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkScale" id="orient"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="round-digits">0</property> + <property name="draw-value">False</property> + <property name="has-origin">False</property> + <style> + <class name="tight-slider"/> + </style> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Offset X:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Offset Y:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="offset-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-offset</property> + <property name="digits">3</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="offset-y"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-offset-2</property> + <property name="digits">3</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkScale" id="gap-x"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-gap-x</property> + <property name="round-digits">0</property> + <property name="has-origin">False</property> + <style> + <class name="tight-slider"/> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkScale" id="gap-y"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="adjustment">adjustment-gap-y</property> + <property name="round-digits">0</property> + <property name="has-origin">False</property> + <style> + <class name="tight-slider"/> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="left-attach">3</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Gap X:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Gap Y:</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">7</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkButton" id="edit-pattern"> + <property name="label" translatable="yes">Edit on canvas</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">center</property> + <property name="valign">center</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-top">4</property> + <property name="hexpand">True</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkEntry" id="pattern-name"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">4</property> + <property name="margin-end">4</property> + <property name="margin-bottom">3</property> + <property name="has-frame">False</property> + <property name="width-chars">10</property> + <property name="xalign">0.5</property> + <property name="caps-lock-warning">False</property> + <property name="placeholder-text" translatable="no">name</property> + <style> + <class name="small-font"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkScrolledWindow"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-end">4</property> + <property name="hscrollbar-policy">external</property> + <property name="vscrollbar-policy">external</property> + <child> + <object class="GtkViewport" id="preview-box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkImage" id="preview"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="hexpand">True</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="height">6</property> + </packing> + </child> + <child> + <object class="GtkButton" id="link-scale"> + <property name="name">LockGuides</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <property name="margin-end">1</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="relief">none</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + <property name="height">2</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">center</property> + <child> + <object class="GtkLabel" id="color-label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Color: </property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkButton" id="color-btn"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="receives-default">True</property> + <property name="tooltip-text" translatable="yes">Apply color to the current pattern</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/resources/canvas_ad.png b/share/ui/resources/canvas_ad.png Binary files differnew file mode 100644 index 0000000..733104d --- /dev/null +++ b/share/ui/resources/canvas_ad.png diff --git a/share/ui/resources/canvas_aw.png b/share/ui/resources/canvas_aw.png Binary files differnew file mode 100644 index 0000000..6f4a4e5 --- /dev/null +++ b/share/ui/resources/canvas_aw.png diff --git a/share/ui/resources/canvas_cd.png b/share/ui/resources/canvas_cd.png Binary files differnew file mode 100644 index 0000000..1005785 --- /dev/null +++ b/share/ui/resources/canvas_cd.png diff --git a/share/ui/resources/canvas_cw.png b/share/ui/resources/canvas_cw.png Binary files differnew file mode 100644 index 0000000..96f1584 --- /dev/null +++ b/share/ui/resources/canvas_cw.png diff --git a/share/ui/resources/canvas_sw.png b/share/ui/resources/canvas_sw.png Binary files differnew file mode 100644 index 0000000..ef0cfb6 --- /dev/null +++ b/share/ui/resources/canvas_sw.png diff --git a/share/ui/spinbutton.css b/share/ui/spinbutton.css new file mode 100644 index 0000000..c87aa5e --- /dev/null +++ b/share/ui/spinbutton.css @@ -0,0 +1,11 @@ +/* those styles make spin buttons narrow; if enabled in preferences they are applied to all themes */ + +spinbutton > button { + padding-left: 0; + padding-right: 0; +} + +spinbutton > entry { + padding-left: 0.5em; + padding-right: 0; +}
\ No newline at end of file diff --git a/share/ui/style.css b/share/ui/style.css new file mode 100644 index 0000000..375b15a --- /dev/null +++ b/share/ui/style.css @@ -0,0 +1,1031 @@ +/* GTK3 WIDGET STYLING */ + + +/* + * Keep in order of: + * General -> Specific + * Order of appearance in widget tree. + * See GtkInspector + * GTK_DEBUG=interactive ~/path_to_gtk3/bin/inkscape + * + * We need a standardized naming scheme. + * + * As of Gtk 3.20, you cannot use widget names. + */ + + +/* Standard theme based colors. Prefer these. + * + * @theme_bg_color + * @theme_fg_color + * @theme_base_color + * @theme_text_color + * @theme_selected_bg_color + * @theme_selected_fg_color + * @theme_tooltip_bg_color + * @theme_tooltip_fg_color + * + */ + + +/* Our own custom shades... better not to use. + * Lightest to darkest based on linear rgb. + */ + +@define-color bg_color0 #ffffff; + +/* White */ + +@define-color bg_color05 #f8f8f8; + +/* Slightly off white */ + +@define-color bg_color1 #f0f0f0; +@define-color bg_color2 #e0e0e0; +@define-color bg_color3 #d0d0d0; +@define-color bg_color4 #bbbbbb; + +/* 50% Gray */ + +@define-color bg_color5 #a5a5a5; +@define-color bg_color6 #898989; +@define-color bg_color7 #636363; +@define-color bg_color8 #000000; + +/* Black */ + +@import url("highlight-colors.css"); + +/* Inkscape CSS helper + * to add a class to a widget do some thing like + * widget->get_style_context()->add_class("mycoolclass"); + * we define a bunch of helper CSS styles + * Each Inkscape desktop has some classes in top level window + * called "dark|bright" (syncked with dark or brighrt themes) and "symbolic|regular" (defined by the user in themes preferences) + * so you can style using this clases + * by this way you can always know if the UI is in dark mode or using symbolic icons + * Also added some helper clases: + * ".inverted" invert colors fon widhet and childs + * ".highlight-dark" highlights with red tint + * ".highlight-light" highlights with yellow tint + * ".symbolic" Force icon symbolic + * ".regular" Force colorful icons + * " .forcebright Force darlk even if the towp wingow has clas dark (happends when theme is dark) + * " .forcedark" Force darlk even if the towp wingow has clas bright + * :::::::: Combo box. + * "..combobright" Combo bright + */ + +*{ + font-feature-settings: "tnum=1"; +} + +*:disabled image { + opacity: 0.4; +} + +.symbolic image { + -gtk-icon-style: symbolic; +} + +.regular image { + -gtk-icon-style: regular; +} + +.regular .symbolic image { + -gtk-icon-style: symbolic; +} + +.titlebutton > image { + -gtk-icon-style: requested; +} + +.inverted, +.dark .forcebright, +.bright .forcedark { + color: @theme_bg_color; + background-color: @theme_fg_color; + background-image: image(@theme_fg_color); + caret-color: @theme_bg_color; + -gtk-secondary-caret-color: @theme_fg_color; +} + +.highlight { + color: @theme_fg_color; + background-color: alpha(@theme_selected_bg_color,0.5); + background-image: image(alpha(@theme_selected_bg_color,0.5)); + caret-color: @theme_bg_color; + border-radius:4px; + -gtk-secondary-caret-color: @theme_fg_color; +} + +.noborder{ + border-width:0; +} + +/* blinking animation for dialogs reopen*/ +@keyframes blink_border { + 0% { border-color: @theme_selected_fg_color;} + 90% { border-color: @theme_selected_bg_color; } + 100% { border-color: @theme_selected_fg_color; } +} +@keyframes blink_background { + 0% { background-color: @theme_bg_color; } + 90% { background-color: @theme_selected_bg_color; } + 100% { background-color: @theme_bg_color; } +} + + +notebook.blink { + animation: 0.5s blink_border 0.1s ease 1; +} + +notebook.blink > header > tabs > tab:checked { + animation: 0.5s blink_background 0.1s ease 1; +} + + +.inverted :not(menuitem):not(.rawstyle):not(overshoot):not(undershoot):not(selection), +.bright .forcedark :not(menuitem):not(.rawstyle):not(overshoot):not(undershoot):not(selection), +.dark .forcebright :not(menuitem):not(.rawstyle):not(overshoot):not(undershoot):not(selection) { + color: inherit; + background-color: inherit; + background-image: inherit; +} + +.dark .combobright .combo, +.dark .combobright menu{ + background-color: @theme_text_color; + background-image: linear-gradient(to top, @theme_text_color, @theme_fd_color); + caret-color: @theme_base_color; + -gtk-secondary-caret-color: @theme_base_color; +} +.dark .combobright box *{ + color: @theme_base_color; +} +.dark .combobright .combo *, +.dark .combobright menu *{ + color: inherit; +} + + +/* atribute dialog popup size */ +.attrpop textview { + font-size: 1em; +} + +.mono-font { + /* note: monospaced font is set by ThemeContext::adjust_global_font_scale() */ +} + +/* +*to get system default colors +* with Gdk::RGBA success =_symbolic_error_color.get_stseparatole_context()->get_color(); +* _symbolic_error_color has one of this classes applied +*/ + +.system_base_color { + color: @theme_fg_color; + background-color: @theme_bg_color; +} + +.system_error_color { + color: @error_color; +} + +.system_warning_color { + color: @warning_color; +} + +.system_success_color { + color: @success_color; +} + +iconview *:hover { + border-width: 1px; + border-color: @theme_fg_color; + border-style: solid; + border-radius: 4px; +} + +.dark iconview *:hover { + border-color: @theme_bg_color; +} + +#startscreennotebook iconview *:hover{ + background-color:@theme_selected_bg_color; + border-radius:5px; + border-width:0; +} + +#start-screen-window .combo { + padding:15px 20px; +} + +.inksmall { + font-size: 0.8em; +} + +.menu-category { + font-size: smaller; + font-weight: bold; +} + +.small-heading { + font-size: smaller; + font-weight: bold; + opacity: 0.5; +} + +.halfrem-vert-space { + margin-top: 0.5rem; +} + +#CommandPaletteBase { + background-color: @theme_base_color; /* some themes don't seem to have a background color for list rows defined and would end up transparent otherwise */ + border: 5px solid @theme_bg_color; + border-radius: 5px; +} + +#CommandPaletteBase list row:not(:last-child) { + border-bottom: 1px solid @bg_color5; +} + + +/* Selector dialog */ +#SelectorsAndStyleDialog button { + padding: 4px; + min-height: 16px; + margin: 2px; + padding: 2px; +} + +#SelectorsAndStyleDialog .toggle { + min-width: 18px; + padding-left: 6px; + padding-right: 6px; + padding-top: 0; + padding-bottom: 0; +} + +#SelectorsAndStyleDialog .radio.image-button { + margin: 0; + padding: 0px; + border-radius: 2px 0 0 2px; +} + +#SelectorsAndStyleDialog .radio.image-button:last-child { + border-radius: 0 2px 2px 0; + border-left-width: 0; +} + +#SelectorsAndStyleDialog treeview button { + border-width: 0; + margin: 0 0 1px 0; +} + +#SelectorsAndStyleDialog treeview button:nth-child(3), +#SelectorsAndStyleDialog treeview.style_sheet button:nth-child(4) { + border-width: 0 0 0 2px; + border-color: @theme_fg_color; + border-style: solid; + opacity: 0.5; +} + +#SelectorsAndStyleDialog treeview.style_sheet button:nth-child(3) { + border-width: 0; +} + +#SelectorsAndStyleDialog #StyleDialog treeview button *{ + font-size:5px; + min-height:1px; + padding:0; + margin:0; +} + +#SelectorsAndStyleDialog #StyleDialog treeview button { + padding:0; + min-height:1px; + border-left-width:4px; + border-color:@success_color; +} + +#InkRuler { + /* make size relative */ + font-size: smaller; + color: alpha(@theme_fg_color, 0.6); + min-height: 2em; +} + +.bright #InkRuler { + /* increase contrast between background and page area */ + background-color: shade(@theme_bg_color, 0.94); +} + +.bright #InkRuler.shadow { + border-color: rgba(0,0,0,0.3); +} +.dark #InkRuler.shadow { + border-color: rgba(0,0,0,0.5); +} + +.dark #InkRuler.page { + background-color: #1d1e1e; +} +.bright #InkRuler.page { + background-color: #fff; +} +#InkRuler.selection { + border-color: rgba(22, 169, 249, 0.8); + background-color: transparent; +} + +/* The actual canvas (Inkscape's drawing area). */ +SPCanvas { + background-color: white; +} + +#TextFontFamilyAction_combobox { + -GtkComboBox-appears-as-list: true; +} + +#QuickActions, +#StickyZoom ,#StickyZoom *, +#LockGuides, #LockGuides *, +#PreviewMode,#PreviewMode *, +#CMS_Adjust, #CMS_Adjust * { + padding: 0; + min-height:3px; + font-size:16px; +} +#QuickActions { + padding: 2px 0; +} + +/* Keep palette scrollbar from generating warnings. */ +#PreviewHolderScroller .vertical slider { + min-height: 15px; +} + +/* Override minimum size of container children for palette. */ +#ColorItemPreview { + min-height: 5px; + min-width: 5px; +} + +/* Reduce width of Fill and Stroke dialog */ +#ColorModeButton { + padding-left: 0; + padding-right: 0; +} + +/* InkSpinScale */ +#InkSpinScale { + padding: 0px; +} + +#InkSpinScale trough, +#InkSpinScale slider, +#InkSpinScale highlight { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +/* Hide slider */ +#InkSpinScale slider { + background: none; + border: none; + outline: none; + min-width: 0px; + min-height: 0px; + padding: 0px; + margin: 0px; +} + +#InkSpinScale scale { + padding: 0px; + margin:0; +} + +#InkSpinScale trough { + min-height: 25px; + padding: 0; /* remove padding to make inkspinscale the same height as spinbutton */ +} +#InkSpinScale trough highlight { + margin: 0; +} + +#InkSpinScale box.active { + box-shadow: 0 0 0 1px rgb(74, 144, 217); +} + +#InkSpinScale spinbutton { + box-shadow: none; + min-height: 10px; + border-left:0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +#InkSpinScale spinbutton entry { + min-height: 25px; + outline-style: none; +} + +#UnicodeIconView { + font-size: 1.2em; +} + +#ObjectsTreeView.view:focus { + outline-style: double; + outline-width: 5px; + outline-color: alpha (@theme_fg_color, 0.1); + -gtk-outline-radius: 50%; +} +#ObjectsTreeView.view:hover { + border-color: alpha (@theme_fg_color, 0.1); + border-style: solid; + border-width: 1px 0px; +} +#ObjectsTreeView { + -GtkTreeView-expander-size: 12; + -GtkTreeView-horizontal-separator: 2; + -GtkTreeView-vertical-separator: 2; +} +#Objects .search { + padding: 2px 4px; + min-height: 16px; + font-size: smaller; +} + +#SimpleFilterModifier #InkSpinScale { + padding: 2px 4px; +} + +/* GtkTreeView: clarify drop locations (especially important for XML editor) */ +treeview.view:drop(active) { + border-style: solid; + border-width: 2px; +} + +treeview.view:drop(active).after { + border-style: none none solid none; +} + +treeview.view:drop(active).before { + border-style: solid none none none; +} + +treeview.view:drop(active).after, +treeview.view:drop(active).before { + border-width: 4px; + border-radius: 10px; +} + +button.close-button{ + background-image: none; + padding: 0px; + min-height: 1px; + min-width: 1px; + border: none; + opacity: 0.5; + box-shadow: none; +} + +button.close-button:hover{ + box-shadow: none; + opacity: 1; +} + +/* + * Inkscape start dialog styles + */ +button.primary { + background-image: linear-gradient(to bottom, rgba(22, 169, 249, 1), rgba(2, 135, 204, 1)); + box-shadow: 0 1px rgba(255, 255, 255, 0.3) inset; + text-shadow: none; +} +button.primary:hover { + background-image: linear-gradient(to bottom, rgba(32, 179, 255, 1), rgba(12, 145, 214, 1)); +} +button.primary:active { + background-image: linear-gradient(to top, rgba(12, 149, 219, 1), rgba(0, 115, 184, 1)); +} +button.primary label { + color: white; +} +button.link:hover image { + -gtk-icon-effect: dim; +} + +.marker-item.box { + padding: 4px; +} +.marker-separator { + padding: 0; +} + +.tight-button { + padding: 5px 3px; +} + +.small-button { + /* small button in-line with spinbuttons, made small not to inflate height of spinbutton */ + padding: 1px 3px; +} + +.link-edit-button { + padding: 5px 3px; + min-width: 0.5em; +} + +/* In some themes stack switcher buttons are extra wide forcing dialogs too wide */ +stackswitcher button { + padding-left: 1px; + padding-right: 1px; + min-width: 40px; +} + +/*removes dashed line (scrolling indicator) on color palette for all themes */ +.color-palette-main-box scrolledwindow undershoot.top, +.color-palette-main-box scrolledwindow undershoot.right, +.color-palette-main-box scrolledwindow undershoot.bottom, +.color-palette-main-box scrolledwindow undershoot.left { + background-image: none; +} + +.backgnd-passive { + background-color: @theme_bg_color; + opacity: 0.5; + transition: background-color 300ms linear; +} + +@keyframes pulse { + 0% { + opacity: 0.3; + } + 50% { + opacity: 0.9; + } + 100% { + opacity: 0.3; + } +} + +.backgnd-active { + animation-name: pulse; + background-color: @theme_selected_bg_color; + animation-duration: 1s; + animation-timing-function: ease; + animation-iteration-count: infinite; +} + +.nb-highlight > header.top { + background-color: @theme_selected_bg_color; +} + +.tight-flowbox flowboxchild { + margin: 0; + padding: 0px; +} +.tight-flowbox button { + margin: 0; + padding: 4px; +} + +/* slider with tighter margins */ +scale.tight-slider { + padding: 8px 4px 7px 4px; +} + +/* add .small-marks class to Gtk::Scale to have smaller font used, since markup didn't work there */ +scale.small-marks.marks-after { + font-size: smaller; +} + +/* Square toolbar buttons: request square buttons for all toolbars. */ +button.square-button { + padding: 3px; +} + +button.square-button image { + padding: 0; + min-width: 16px; + min-height: 16px; +} + +/* Give layer selector button label a highlight color */ +#LayerSelector label +{ + padding-left: 6px; + border-left: 3px solid white; +} + +#DialogNotebook #Swatches { + padding-left: 10px; + padding-top: 10px; +} + +#DialogNotebook #Swatches box { + margin-bottom: 5px +} + +#DialogNotebook #Swatches box label { + padding-left: 7px; +} + +#StyleSwatch label { + font-size: smaller; +} + +#DocumentProperties #NotebookPage { + margin-left: 4px; + margin-right: 4px; +} + +.dialog-heading { + font-weight: bold; +} + +/* heading label in dialogs */ +.heading { + font-weight: bold; + font-size: 1.1em; /* make it optically comparable with non-bold */ + margin-top: 0.5em; +} +/* topmost heading in dialogs */ +.heading.top { + margin-top: 0.2em; +} + +/* single-level indentation for labels in a dialog */ +.indent { + margin-left: 1em; +} + +.small-font { + font-size: smaller; +} + +.toolbar-separator { + margin: 7px 3px; +} + +/* for dialogs with "Apply" button (or equivalent) - larger hit target */ +.wide-apply-button { + min-width: 150px; +} + +button.menu-btn-tight { + padding-left: 0; + padding-right: 0; +} + +#DockedDialogNotebook { + border: none; +} + +#DialogMenuButton { + padding: 3px; + border: none; + opacity: 0.5; +} + +#DialogMenuButton:hover { + opacity: 1; +} + +#DesktopStatusBar { + margin-right: 1em; +} +/* + * Inkscape Export Dialog + */ +#ExportDialog #export_selection{ + border-radius: 0px; +} +#ExportDialog #export_preview_single { + border: 1px solid; +} +#ExportDialog #export_preview_batch { + border: 1px solid; +} + +.key { + border-radius: 3px; + background-color: alpha(@theme_fg_color, 0.15); + padding: 2px; +} + +combobox.flat-combobox button { + border: none; + background-color: transparent; + background-image: image(transparent); +} + +.filter-effects, .effects-params { + min-height: 50px; +} + +.dark .symbolsoverlay iconview:not(:selected) { + background-color: #f0f0f0; /* bright background color for typically black symbols */ + /* background-color: @theme_fg_color; - this doesn't work for some themes (like MonoThemeDark) */ + color:@theme_bg_color; /* symbol text labels */ +} + +.dark .symbolsoverlay { + color: @theme_bg_color; /* this is for overlay widget's children */ +} + +/* LPE Dialog add */ +#LPEScrolled { + border:none; +} + +#LPESelectorFlowBox GtkFlowBoxChild, +#LPESelectorFlowBox flowboxchild { + border-width: 0px; + border-radius: 6px; + margin: 10px; + padding: 10px; + margin-bottom: 0px; + padding-bottom: 10px; + outline: none; +} + +#LPESelectorFlowBox flowboxchild * { + color: @theme_fg_color; +} + +#LPESelectorFlowBox flowboxchild image, +#LPESelectorFlowBox flowboxchild label { + background-color: transparent; + background-image: image(transparent); +} + +#LPESelectorFlowBox flowboxchild:selected image, +#LPESelectorFlowBox flowboxchild:selected label { + color: @theme_selected_fg_color; +} + +#LPESelectorFlowBox *:selected #LPESelectorEffectFavTop, +#LPESelectorFlowBox *:selected:focus #LPESelectorEffectFavTop { + opacity: 0; +} + +#LPESelectorFlowBox .lpename { + margin-bottom: 5px; +} + +#LPESelectorFlowBox .lpeinfo { + padding: 20px; +} + +#LPESelectorFlowBox .lpedisabled { + opacity: 0.3; +} + +#LPESelectorEffectInfoPop { + padding: 15px; +} + +#LPESelectorEffectInfoName { + font-weight: bold; + padding: 15px; +} + +#LPEDialogSelector .lpeinfo { + padding: 8px; + background-color: @theme_bg_color; + color: @theme_selected_fg_color; + border-color: @theme_selected_bg_color; + border-style: solid; + margin: 0px 0px 10px 0px; + border-radius: 0px; + border-width: 0 0 1px 0; + padding:5px; +} + +#LPESelectorFlowBox image{ + background-color:@theme_bg_color; + border-color:transparent; +} + +#LPEExperimental image { + color: transparent; +} + +#LPEDialogSelector .searchbar entry image, +#LPEDialogSelector .searchbar label, +#LPEDialogSelector .searchbar #LPESelectorEffectFavShowImage { + color: @theme_fg_color; +} + +#LPEDialogSelector.LPEPackMore flowboxchild { +margin:5px 1px 0px; +padding:3px 3px 10px 3px; +} + + +#LPEDialogSelector.LPEList .lpename { + margin-bottom: 1px; + font-weight:bold; +} + +#LPEDialogSelector.LPEList flowboxchild { + padding:3px 1px 3px 10px; + margin:1px 0px 1px; + border-radius:0; + border-style:dotted; + border-color:@theme_fg_color; + border-width: 0 0 1px 0; +} + +#LPEDialogSelector.LPEList flowboxchild:selected { + border-style:none; + margin:-3px 0px 0px; + padding:4px 1px 4px 10px; +} + +#LPEDialogSelector.LPEList #LPESelectorFlowBox *:selected #LPESelectorEffectFavTop, +#LPEDialogSelector.LPEList #LPESelectorFlowBox *:selected:focus #LPESelectorEffectFavTop { + opacity: 1; +} + +#LivePathEffect { + padding-top:5px; +} + +#LivePathEffect expander:focus, #LivePathEffect expander > label:focus{ + outline-width:0; +} + +#LivePathEffect list{ + margin:5px 5px 0 5px; +} + +#LivePathEffect list row{ + margin:0; + padding:0; + border-width:0; + border-style:none; + outline-width:0; +} +#LivePathEffect list row > box{ + margin:0; + padding:1px; + border-width:1px; + border-radius:4px; + margin-bottom:5px; + border-style:solid; + border-color:@borders; + outline-width:0; +} + +#LivePathEffect list row:last-child > box{ + margin-bottom:0px; +} + +#LPEEffectItem{ + border-radius:3px; + padding:2px; + outline:0; +} + +#LPEEffectItem .minbutton { + padding:0; + margin:0; + outline:0; + border-color:@borders; +} + +#LPEEffectItem expander title label { + min-height:26px; +} + +#LPEEffectItem expander, +#LPEEffectItem expander *, +#LPEEffectItem expander:focus, +#LPEEffectItem expander *:focus { + outline:0; +} + +.LPEDrag,.LPEDrag:active,.LPEDrag:focus,.LPEDrag:hover { + margin:0; + padding:0; + border-style:none; + opacity:0.7; + background-color:transparent; + background-image:none; + outline:0; +} + +.LPEDrag:hover { + opacity:1; + background-color:transparent; + background-image:none; +} + +#LivePathEffect list#LPEParentBox row{ + border-style:none; + outline:0; +} + +#LivePathEffect list#LPEParentBox row > button { + padding:2px; + margin:0; +} + +#LPEContainer:drop(active) { + box-shadow:none; +} + +#LPECurrentItem *{ + color:@theme_fg_color; +} + +#LPEContainer #LPEListBox{ + border-style: solid none solid none; + border-color: @theme_base_color; + border-width:0; + padding:0; +} +#LPEListBox row:drop(active){ + box-shadow:none; +} +#LPEContainer:drop(active).before row:first-child > box, +#LPEListBox row:drop(active).before > box{ + border-width:6px 1px 1px 1px; + border-color: @theme_selected_bg_color @borders @borders @borders; + box-shadow:none; + border-radius:6px 6px 0 0; +} + +#LPEContainer:drop(active).after row:last-child > box, +#LPEListBox row:drop(active).after > box{ + border-width:1px 1px 6px 1px; + border-color: @borders @borders @theme_selected_bg_color @borders; + border-radius:0 0 6px 6px; + box-shadow:none; +} + +#LPEEffectItem expander title label { + min-height:34px; +} + +#LPEMenu menuitem:not(.menu-category):disabled { + color:alpha(@theme_text_color,0.4); +} + +#LPEListBox row > *:disabled * { + color:@theme_text_color; +} + + +#LivePathEffect list row, +#LPEListBox row.activatable:hover { + background-color: transparent; +} + +#LivePathEffect list row .drag-icon, +#LPEListBox row.activatable .drag-icon:hover { + background-color: @theme_base_color; + border-width:1px; + border-radius:0; + margin:0; + padding:5px; + border-style:solid; + border-color:@borders; + outline-width:0; +} + +#LivePathEffect list row .drag-icon * { + outline:0; +} + +#LPEActionButtons #eventbutton:nth-child(1) button{ + border-radius:3px 0 0 3px; + border-width:1px 0 1px 1px; +} + +#LPEActionButtons #eventbutton:nth-child(2) button{ + border-radius:0; + border-width:1px 0 1px 1px; +} +#LPECurrentItem * { + border-width:0; + border-style:none; +} +#LPECurrentItem { + margin-top:0; +} +#LPECurrentItem image{ + margin-right:6px; +} +#LPECurrentItem { + margin-top:0; +} +#LPEParentBox{ + margin:10px 4px; + padding:0; +} diff --git a/share/ui/svgd.lang b/share/ui/svgd.lang new file mode 100644 index 0000000..b5422d7 --- /dev/null +++ b/share/ui/svgd.lang @@ -0,0 +1,229 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + This file is part of Inkscape. + + Authors: + Rafael Siejakowski <rs@rs-math.net> + + Copyright (C) 2022 the Authors. + + Released under GNU GPL v2+, read the file 'COPYING' for more information. +--> +<language id="svgd" _name="SVG path attribute 'd'" version="2.0" _section="Markup"> + <styles> + <style id="command" _name="Path command" map-to="def:keyword"/> + <style id="error" _name="Error" map-to="def:error"/> + <style id="numeric" _name="Path node coordinate" map-to="def:number"/> + <style id="alternate-numeric" _name="Control point coordinate" map-to="def:special-constant"/> + <style id="angle" _name="Ellipse rotation angle" map-to="def:type"/> + <style id="flags" _name="Boolean flags" map-to="def:preprocessor"/> + </styles> + + <default-regex-options case-sensitive="false"/> + + <definitions> + <!-- Based on SVG2 specification, § 9.3.9. The grammar for path data. --> + + <define-regex id="maybecwsp">(?m)[\s,\r\n]*</define-regex> + <define-regex id="exponent">e[+\-]?\d+</define-regex> + <define-regex id="fractional-constant">\d*\.\d+|\d+</define-regex> + <define-regex id="number">\%{fractional-constant}(\%{exponent})?</define-regex> + <define-regex id="coordinate">[+\-]?\%{number}</define-regex> + <define-regex id="positive-coordinate">\+?\%{number}</define-regex> + <define-regex id="command-letter">[MLHVCSQTAZ]</define-regex> + <define-regex id="invalid">[^\-+\s\r\n,\.MLHVCSQTAZmlhvcsqtaz0-9Ee]</define-regex> + <define-regex id="command-end">(?m)(?=\%{command-letter}|\%{invalid})</define-regex> + + <!-- Define error contexts --> + <context id="command-not-allowed" style-ref="error" extend-parent="false" end-parent="true"> + <match>(\%{command-letter}|e)</match> + </context> + + <context id="invalid-char" style-ref="error" extend-parent="false" end-parent="true"> + <match>\%{invalid}</match> + </context> + + <!-- Coordinate pair is defined as a region (allows for two numbers on separate lines). --> + <context id="point"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + </include> + </context> + + <!-- PRIVATE: A pair of numbers with different highlighting. --> + <context id="PRIVATE-heterochromic4-inner2" extend-parent="true" once-only="true"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + </include> + </context> + + <!-- A 4-tuple of numbers with different highlighting for the first two than for the last two. --> + <context id="heterochromic4" extend-parent="false"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context id="heterochromic4-first" sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context id="heterochromic4-last" sub-pattern="0" where="end" style-ref="numeric"/> + <context ref="PRIVATE-heterochromic4-inner2"/> + </include> + </context> + + <!-- PRIVATE: A pair of numbers with alternate highlighting. --> + <context id="PRIVATE-heterochromic6-inner4-inner2" extend-parent="true" once-only="true"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context sub-pattern="0" where="end" style-ref="alternate-numeric"/> + </include> + </context> + + <!-- PRIVATE: A 4-tuple of numbers with different highlighting for the first three than for the last one. --> + <context id="PRIVATE-heterochromic6-inner4" extend-parent="true" once-only="true"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + <context ref="PRIVATE-heterochromic6-inner4-inner2"/> + </include> + </context> + + <!-- A 6-tuple of numbers with different highlighting for the first four than for the last two. --> + <context id="heterochromic6" extend-parent="false"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + <context ref="PRIVATE-heterochromic6-inner4"/> + </include> + </context> + + <!-- PRIVATE: The third shell of arcto arguments. --> + <context id="PRIVATE-arcto-shell3" extend-parent="true" once-only="true"> + <start>\%{coordinate}</start><!-- rotation angle --> + <end>(0|1)\%{maybecwsp}(0|1)</end><!-- flags --> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="angle"/> + <context sub-pattern="0" where="end" style-ref="flags"/> + </include> + </context> + + <!-- PRIVATE: The second shell of arcto arguments. --> + <context id="PRIVATE-arcto-shell2" extend-parent="true" once-only="true"> + <start>\%{positive-coordinate}</start><!-- ray y --> + <end>\%{coordinate}</end><!-- endpoint x --> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + <context ref="PRIVATE-arcto-shell3"/> + </include> + </context> + + <!-- The arguments of an arcto command. --> + <context id="arcto-args" extend-parent="false"> + <start>\%{positive-coordinate}</start><!-- ray x --> + <end>\%{coordinate}</end><!-- endpoint y --> + <include> + <context ref="command-not-allowed"/> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="alternate-numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + <context ref="PRIVATE-arcto-shell2"/> + </include> + </context> + + <!-- A valid SVG coordinate. --> + <context id="coord" style-ref="numeric"> + <match>\%{coordinate}</match> + </context> + + <!-- Start the SVG path `d` definition. --> + <context id="svgd"> + <include> + + <!-- An M, L or T command (expecting a sequence of points). --> + <context id="moveto"> + <start>M|L|T</start> + <end>\%{command-end}</end> + <include> + <context sub-pattern="0" where="start" style-ref="command"/> + <context ref="point"/> + </include> + </context> + + <!-- An H or V command (expecting a sequence of coordinates). --> + <context id="paraxial"> + <start>H|V</start> + <end>\%{command-end}</end> + <include> + <context sub-pattern="0" where="start" style-ref="command"/> + <context ref="coord"/> + </include> + </context> + + <!-- S and Q commands: expecting a sequence of **pairs** of points. --> + <context id="smooth-cubic-or-quadratic"> + <start>S|Q</start> + <end>\%{command-end}</end> + <include> + <context sub-pattern="0" where="start" style-ref="command"/> + <!-- The argument of the S/Q command is 4*n numbers; in each 4-tuple we + highlight the first two coords differently than the last two. --> + <context ref="heterochromic4"/> + </include> + </context> + + <!-- C command: expecting a sequence of **triples** of points. --> + <context id="cubic-bezier"> + <start>C</start> + <end>\%{command-end}</end> + <include> + <context sub-pattern="0" where="start" style-ref="command"/> + <!-- In each 6-tuple we highlight the first four numbers differently than the last two. --> + <context ref="heterochromic6"/> + </include> + </context> + + <!-- A command: elliptical arc. --> + <context id="elliptical-arc"> + <start>A</start> + <end>\%{command-end}</end> + <include> + <context sub-pattern="0" where="start" style-ref="command"/> + <context ref="arcto-args"/> + </include> + </context> + + <context id="z-command" style-ref="command"> + <keyword>Z</keyword> + </context> + + <context ref="invalid-char"/> + </include> + </context> + </definitions> +</language> diff --git a/share/ui/svgpoints.lang b/share/ui/svgpoints.lang new file mode 100644 index 0000000..f341af6 --- /dev/null +++ b/share/ui/svgpoints.lang @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + This file is part of Inkscape. + + Authors: + Rafael Siejakowski <rs@rs-math.net> + + Copyright (C) 2022 the Authors. + + Released under GNU GPL v2+, read the file 'COPYING' for more information. +--> +<language id="svgpoints" _name="SVG attribute 'points' of polygon and polyline elements" version="2.0" _section="Markup"> + <styles> + <style id="error" _name="Error" map-to="def:error"/> + <style id="numeric" _name="Vertex coordinate" map-to="def:number"/> + </styles> + + <definitions> + <define-regex id="exponent">e[+\-]?\d+</define-regex> + <define-regex id="fractional-constant">\d*\.\d+|\d+</define-regex> + <define-regex id="number">\%{fractional-constant}(\%{exponent})?</define-regex> + <define-regex id="coordinate">[+\-]?\%{number}</define-regex> + <define-regex id="invalid">[^\-+\s\r\n,\.0-9eE]</define-regex> + + <!-- Invalid character (not allowed in the 'points' attribute). --> + <context id="invalid-char" style-ref="error" extend-parent="false" end-parent="true"> + <match>\%{invalid}</match> + </context> + + <!-- The 'points' attribute. --> + <context id="svgpoints"> + <include> + <!-- Coordinate pair is defined as a region (allows for two numbers on separate lines). --> + <context id="point"> + <start>\%{coordinate}</start> + <end>\%{coordinate}</end> + <include> + <context ref="invalid-char"/> + <context sub-pattern="0" where="start" style-ref="numeric"/> + <context sub-pattern="0" where="end" style-ref="numeric"/> + </include> + </context> + <context ref="invalid-char"/> + </include> + </context> + </definitions> +</language> diff --git a/share/ui/syntax-themes/syntax-theme-dark.xml b/share/ui/syntax-themes/syntax-theme-dark.xml new file mode 100644 index 0000000..74ddf0b --- /dev/null +++ b/share/ui/syntax-themes/syntax-theme-dark.xml @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + This file is part of Inkscape. + + Copyright (C) 2022 the Authors. + + Released under GNU GPL v2+, read the file 'COPYING' for more information. +--> + +<style-scheme id="inkscape-dark" _name="Inkscape Dark" version="1.0"> + + <author>MK</author> + <_description>Dark color scheme for syntax highlighting</_description> + + <color name="green" value="#a6e22e"/> + <color name="purple" value="#af83f8"/> + <color name="yellow" value="#f2d375"/> + <color name="cyan" value="#87dbe8"/> + <color name="pale-yellow" value="#795b07"/> + <color name="pale-red" value="#96242f"/> + <color name="orange" value="#ee9d70"/> + <color name="selection" value="#094bac"/> + <color name="white" value="#f0f0f0"/> + <color name="blue" value="#6d9eeb"/> + <color name="gray" value="#7f7f7f"/> + <color name="red" value="#f98691"/> + + <!-- Global Settings --> + <style name="text" foreground="white" /> + <style name="selection" foreground="white" background="selection"/> + <style name="cursor" foreground="white" bold="true" /> + <style name="secondary-cursor" foreground="white" bold="true" /> + <style name="line-numbers" foreground="gray"/> + <style name="draw-spaces" foreground="gray"/> + <style name="background-pattern" /> + <style name="current-line" /> + + <!-- Bracket Matching --> + <style name="bracket-match" foreground="red"/> + <style name="bracket-mismatch" foreground="purple" background="pale-yellow"/> + + <!-- Search Matching --> + <style name="search-match" foreground="white" background="pale-yellow"/> + + <!-- Comments --> + <style name="def:comment" foreground="orange"/> + + <!-- Constants --> + <style name="def:constant" foreground="cyan"/> + <style name="def:string" foreground="yellow"/> + <style name="def:special-char" foreground="red"/> + <style name="def:special-constant" foreground="cyan"/> + <style name="def:number" foreground="red"/> + <style name="def:decimal" foreground="red"/> + <style name="def:floating-point" foreground="red"/> + + <!-- Identifiers --> + <style name="def:identifier" foreground="green"/> + <style name="def:keyword" foreground="blue" bold="true"/> + <style name="def:function" foreground="purple" bold="false"/> + + <!-- Statements --> + <style name="def:statement" foreground="blue" bold="false"/> + + <!-- Types --> + <style name="def:type" foreground="yellow" bold="false"/> + + <!-- Others --> + <style name="css:delimiter" foreground="gray"/> + <style name="def:complex" foreground="green"/> + <style name="def:preprocessor" foreground="green"/> + <style name="def:error" foreground="white" background="pale-red" bold="false"/> + <style name="def:warning" foreground="white" background="pale-yellow"/> + <style name="def:note" foreground="gray" bold="false"/> + <style name="def:underlined" italic="true" underline="single"/> + +</style-scheme> diff --git a/share/ui/syntax-themes/syntax-theme-light.xml b/share/ui/syntax-themes/syntax-theme-light.xml new file mode 100644 index 0000000..78e6ae1 --- /dev/null +++ b/share/ui/syntax-themes/syntax-theme-light.xml @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + This file is part of Inkscape. + + Copyright (C) 2022 the Authors. + + Released under GNU GPL v2+, read the file 'COPYING' for more information. +--> + +<style-scheme id="inkscape-light" _name="Inkscape Light" version="1.0"> + + <author>MK</author> + <_description>Light color scheme for syntax highlighting</_description> + + <color name="green" value="#1E8806"/> + <color name="purple" value="#6321cf"/> + <color name="yellow" value="#ae8305"/> + <color name="cyan" value="#038387"/> + <color name="pale-yellow" value="#ffe9a6"/> + <color name="pale-red" value="#f2b6bc"/> + <color name="orange" value="#de6502"/> + <color name="selection" value="#a8cbfe"/> + <color name="blue" value="#0b5cd5"/> + <color name="black" value="#000000"/> + <color name="gray" value="#a0a0a0"/> + <color name="red" value="#dc3545"/> + <color name="lime" value="#799E00"/> + <color name="brown" value="#a84a00"/> + + <!-- Global Settings --> + <style name="text" foreground="black" /> + <style name="selection" foreground="black" background="selection"/> + <style name="cursor" foreground="black" bold="true" /> + <style name="secondary-cursor" foreground="black" bold="true" /> + <style name="line-numbers" foreground="gray"/> + <style name="draw-spaces" foreground="gray"/> + <style name="background-pattern" /> + <style name="current-line" /> + + <!-- Bracket Matching --> + <style name="bracket-match" foreground="red"/> + <style name="bracket-mismatch" foreground="purple" background="pale-yellow"/> + + <!-- Search Matching --> + <style name="search-match" foreground="black" background="pale-yellow"/> + + <!-- Comments --> + <style name="def:comment" foreground="lime"/> + + <!-- Constants --> + <style name="def:constant" foreground="cyan"/> + <style name="def:string" foreground="yellow"/> + <style name="def:special-char" foreground="brown"/> + <style name="def:special-constant" foreground="cyan"/> + <style name="def:number" foreground="red"/> + <style name="def:decimal" foreground="red"/> + <style name="def:floating-point" foreground="red"/> + + <!-- Identifiers --> + <style name="def:identifier" foreground="green"/> + <style name="def:keyword" foreground="blue" bold="true"/> + <style name="def:function" foreground="purple" bold="false"/> + + <!-- Statements --> + <style name="def:statement" foreground="blue" bold="false"/> + + <!-- Types --> + <style name="def:type" foreground="orange" bold="false"/> + + <!-- Others --> + <style name="css:delimiter" foreground="gray"/> + <style name="def:complex" foreground="purple"/> + <style name="def:preprocessor" foreground="purple"/> + <style name="def:error" foreground="black" background="pale-red" bold="false"/> + <style name="def:warning" foreground="black" background="pale-yellow"/> + <style name="def:note" foreground="gray" bold="false"/> + <style name="def:underlined" italic="true" underline="single"/> + +</style-scheme> diff --git a/share/ui/syntax-themes/syntax-theme-none.xml b/share/ui/syntax-themes/syntax-theme-none.xml new file mode 100644 index 0000000..307f032 --- /dev/null +++ b/share/ui/syntax-themes/syntax-theme-none.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + This file is part of Inkscape. + + Copyright (C) 2022 the Authors. + + Released under GNU GPL v2+, read the file 'COPYING' for more information. +--> + +<style-scheme id="-none-" _name="● No coloring" version="1.0"> + + <author>MK</author> + <_description>Empty color scheme to disable syntax highlighting</_description> + + <style name="text" /> + +</style-scheme> diff --git a/share/ui/toolbar-booleans.ui b/share/ui/toolbar-booleans.ui new file mode 100644 index 0000000..10d28de --- /dev/null +++ b/share/ui/toolbar-booleans.ui @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.22"/> + <object class="GtkToolbar" id="booleans-toolbar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkRadioToolButton" id="shape-add"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Add to the Shape</property> + <property name="action-name">win.shape-builder-mode</property> + <property name="action-target">0</property> + <property name="label" translatable="yes">Add</property> + <property name="icon-name">shapebuilder-tool-union</property> + <property name="active">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkRadioToolButton" id="shape-delete"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="tooltip-text" translatable="yes">Remove from Shape</property> + <property name="action-name">win.shape-builder-mode</property> + <property name="action-target">1</property> + <property name="label" translatable="yes">Delete</property> + <property name="icon-name">shapebuilder-tool-difference</property> + <property name="group">shape-add</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">4</property> + <property name="label" translatable="yes">Finish:</property> + <property name="xalign">1</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="confirm"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Accept</property> + <property name="use-underline">True</property> + <property name="icon-name">on</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="cancel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Cancel</property> + <property name="use-underline">True</property> + <property name="icon-name">off</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/toolbar-commands.ui b/share/ui/toolbar-commands.ui new file mode 100644 index 0000000..ab71615 --- /dev/null +++ b/share/ui/toolbar-commands.ui @@ -0,0 +1,330 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<interface> + <requires lib="gtk+" version="3.22"/> + + <!-- Commands Toolbar --> + + <object class="GtkToolbar" id="commands-toolbar"> + <property name="visible">True</property> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.document-new</property> + <property name="icon_name">document-new</property> + <property name="label" translatable="true">_New</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.document-open</property> + <property name="icon_name">document-open</property> + <property name="label" translatable="true">_Open...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.document-save</property> + <property name="icon_name">document-save</property> + <property name="label" translatable="true">_Save</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.document-print</property> + <property name="icon_name">document-print</property> + <property name="label" translatable="true">_Print...</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.document-import</property> + <property name="icon_name">document-import</property> + <property name="label" translatable="true">_Import...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'Export'</property> + <property name="icon_name">document-export</property> + <property name="label" translatable="true">_Export...</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">doc.undo</property> + <property name="icon_name">edit-undo</property> + <property name="label" translatable="true">_Undo</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">doc.redo</property> + <property name="icon_name">edit-redo</property> + <property name="label" translatable="true">_Redo</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.copy</property> + <property name="icon_name">edit-copy</property> + <property name="label" translatable="true">_Copy</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.cut</property> + <property name="icon_name">edit-cut</property> + <property name="label" translatable="true">Cu_t</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.paste</property> + <property name="icon_name">edit-paste</property> + <property name="label" translatable="true">_Paste</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-selection</property> + <property name="icon_name">zoom-fit-selection</property> + <property name="label" translatable="true">Zoom _Selection</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-drawing</property> + <property name="icon_name">zoom-fit-drawing</property> + <property name="label" translatable="true">Zoom _Drawing</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-page</property> + <property name="icon_name">zoom-fit-page</property> + <property name="label" translatable="true">Zoom _Page</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-center-page</property> + <property name="icon_name">zoom-center-page</property> + <property name="label" translatable="true">Zoom _Center Page</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.duplicate</property> + <property name="icon_name">edit-duplicate</property> + <property name="label" translatable="true">Duplic_ate</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.clone</property> + <property name="icon_name">edit-clone</property> + <property name="label" translatable="true">Create Clo_ne</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.clone-unlink</property> + <property name="icon_name">edit-clone-unlink</property> + <property name="label" translatable="true">Unlin_k Clone</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.selection-group</property> + <property name="icon_name">object-group</property> + <property name="label" translatable="true">_Group</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">app.selection-ungroup</property> + <property name="icon_name">object-ungroup</property> + <property name="label" translatable="true">_Ungroup</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'FillStroke'</property> + <property name="icon_name">dialog-fill-and-stroke</property> + <property name="label" translatable="true">_Fill and Stroke...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'Text'</property> + <property name="icon_name">dialog-text-and-font</property> + <property name="label" translatable="true">_Text and Font...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'Objects'</property> + <property name="icon_name">dialog-objects</property> + <property name="label" translatable="true">Layers and Objects...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'XMLEditor'</property> + <property name="icon_name">dialog-xml-editor</property> + <property name="label" translatable="true">_XML Editor...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'Selectors'</property> + <property name="icon_name">dialog-selectors</property> + <property name="label" translatable="true">_Selectors and CSS...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'AlignDistribute'</property> + <property name="icon_name">dialog-align-and-distribute</property> + <property name="label" translatable="true">_Align and Distribute...</property> + <property name="use-underline">True</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'DocumentProperties'</property> + <property name="icon_name">document-properties</property> + <property name="label" translatable="true">_Document Properties...</property> + <property name="use-underline">True</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.dialog-open</property> + <property name='action-target'>'Preferences'</property> + <property name="icon_name">preferences-system</property> + <property name="label" translatable="true">P_references...</property> + <property name="use-underline">True</property> + </object> + </child> + + </object> +</interface> diff --git a/share/ui/toolbar-page.ui b/share/ui/toolbar-page.ui new file mode 100644 index 0000000..a287b5c --- /dev/null +++ b/share/ui/toolbar-page.ui @@ -0,0 +1,385 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.22"/> + <object class="GtkAdjustment" id="adjust_margin_bottom"> + <property name="upper">1000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjust_margin_left"> + <property name="upper">1000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjust_margin_right"> + <property name="upper">1000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkAdjustment" id="adjust_margin_top"> + <property name="upper">1000</property> + <property name="step-increment">1</property> + <property name="page-increment">10</property> + </object> + <object class="GtkListStore" id="page_sizes_list"> + <columns> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name label --> + <column type="gchararray"/> + <!-- column-name preset_key --> + <column type="gchararray"/> + </columns> + </object> + <object class="GtkListStore" id="page_sizes_search"> + <columns> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name label --> + <column type="gchararray"/> + <!-- column-name preset_key --> + <column type="gchararray"/> + </columns> + </object> + <object class="GtkEntryCompletion" id="sizes_searcher"> + <property name="model">page_sizes_search</property> + <property name="text-column">0</property> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText"> + <property name="xalign">1</property> + <property name="alignment">right</property> + <property name="scale">0.90</property> + </object> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + <object class="GtkToolbar" id="page-toolbar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkToolButton" id="page_new"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="action-name">win.page-new</property> + <property name="label" translatable="yes">New Page</property> + <property name="icon-name">pages-add</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolItem" id="page_sizes_container"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkComboBoxText" id="page_sizes"> + <property name="model">page_sizes_list</property> + <property name="width-request">250</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="active">0</property> + <property name="has-entry">True</property> + <property name="active-id">-1</property> + <items> + <item id="" translatable="yes">Custom</item> + </items> + <child> + <object class="GtkCellRendererText"> + <property name="xalign">1</property> + <property name="alignment">right</property> + </object> + <attributes> + <attribute name="markup">1</attribute> + </attributes> + </child> + <child internal-child="entry"> + <object class="GtkEntry"> + <property name="can-focus">True</property> + <property name="completion">sizes_searcher</property> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolItem" id="page_margin_container"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkEntry" id="page_margins"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Page Margins</property> + <property name="primary-icon-name">view-restore</property> + <property name="placeholder-text" translatable="yes">Margins</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="page_backward"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="action-name">doc.page-move-backward</property> + <property name="label" translatable="yes">Move Before Previous</property> + <property name="icon-name">pages-order-backwards</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolItem" id="page_pos_container"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkLabel" id="page_pos"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <!--TRANSLATORS: This is a fixed value meaning a single page document--> + <property name="can-focus">False</property> + <property name="label" translatable="yes">1/-</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="page_foreward"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="action-name">doc.page-move-forward</property> + <property name="label" translatable="yes">Move After Next</property> + <property name="icon-name">pages-order-forwards</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolItem" id="page_label_container"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkEntry" id="page_label"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="placeholder-text" translatable="yes">Page Label</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="page_delete"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="action-name">win.page-delete</property> + <property name="label" translatable="yes">New Page</property> + <property name="icon-name">pages-remove</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem" id="sep1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton" id="page_move_objects"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="action-name">doc.page-move-objects</property> + <property name="label" translatable="yes">Move Objects</property> + <property name="use-underline">True</property> + <property name="icon-name">pages-move-toggle</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + </object> + <object class="GtkPopover" id="margin_popover"> + <property name="can-focus">False</property> + <property name="relative-to">page_margins</property> + <property name="position">bottom</property> + <child> + <!-- n-columns=3 n-rows=4 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="row-spacing">3</property> + <property name="column-spacing">3</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">10</property> + <property name="margin-end">10</property> + <property name="margin-top">10</property> + <property name="margin-bottom">10</property> + <property name="label" translatable="yes">Margins</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">1</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="margin_right"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="overwrite-mode">True</property> + <property name="placeholder-text" translatable="no">0px</property> + <property name="adjustment">adjust_margin_right</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">0</property> + <property name="height">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="margin_top"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="placeholder-text" translatable="no">0px</property> + <property name="adjustment">adjust_margin_top</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">0</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="margin_left"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="adjustment">adjust_margin_left</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">0</property> + <property name="height">3</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="margin_bottom"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="valign">center</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="placeholder-text" translatable="no">0px</property> + <property name="adjustment">adjust_margin_bottom</property> + <property name="numeric">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkExpander"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <child> + <object class="GtkEntry" id="page_bleeds"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + <property name="margin-top">5</property> + <property name="margin-bottom">5</property> + <property name="placeholder-text" translatable="yes">e.g. 1.2mm 2mm</property> + </object> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Page Bleed</property> + </object> + </child> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">3</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/toolbar-select.ui b/share/ui/toolbar-select.ui new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/share/ui/toolbar-select.ui diff --git a/share/ui/toolbar-snap.ui b/share/ui/toolbar-snap.ui new file mode 100644 index 0000000..4740a45 --- /dev/null +++ b/share/ui/toolbar-snap.ui @@ -0,0 +1,1665 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.22"/> + <object class="GtkPopover" id="advanced"> + <property name="can-focus">False</property> + <child> + <!-- n-columns=3 n-rows=35 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">16</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <child> + <object class="GtkCheckButton" id="snap-toggle"> + <property name="label" translatable="yes">Enable snapping</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-global-toggle</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-bbox"> + <property name="label" translatable="yes">Bounding boxes</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-bbox</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">3</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-bbox-edge"> + <property name="label" translatable="yes">Edges</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-bbox-edge</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-bbox-corner"> + <property name="label" translatable="yes">Corners</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-bbox-corner</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-bbox-midpoint"> + <property name="label" translatable="yes">Edge midpoints</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-bbox-edge-midpoint</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-bbox-center"> + <property name="label" translatable="yes">Centers</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-bbox-center</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-nodes"> + <property name="label" translatable="yes">Nodes</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-node-category</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">9</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Paths</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-path</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">10</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Path intersections</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-path-intersection</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Cusp nodes</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-node-cusp</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Smooth nodes</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-node-smooth</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">13</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Line midpoints</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-line-midpoint</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">14</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Object midpoints</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-object-midpoint</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">19</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-other"> + <property name="label" translatable="yes">Other points</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-others</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">18</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Object rotation centers</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-rotation-center</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">20</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Text baselines and anchors</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-text-baseline</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">21</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-grid"> + <property name="label" translatable="yes">Grids</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-grid</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">29</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-guides"> + <property name="label" translatable="yes">Guide lines</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-guide</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">30</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-page-border"> + <property name="label" translatable="yes">Page borders</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-page-border</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">31</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="align-sna"> + <property name="label" translatable="yes">Alignment</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-alignment</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">25</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="align-snap-self"> + <property name="label" translatable="yes">Nodes in same path</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-alignment-self</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">26</property> + </packing> + </child> + <child> + <object class="GtkLinkButton" id="simple-link"> + <property name="label" translatable="yes">Reset to simple snapping mode</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <property name="relief">none</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">33</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-bounding-box-edges</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-bounding-box-corners</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-bounding-box-midpoints</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-bounding-box-center</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-path</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">10</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-intersection</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">11</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-cusp</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">12</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-smooth</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">13</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-midpoint</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">14</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-center</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">19</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-nodes-rotation-center</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">20</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-text-baseline</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">21</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">grid-rectangular</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">29</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">guides</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">30</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-page</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">31</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Masks</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-path-mask</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">22</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Clips</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-path-clip</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">23</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">path-mask-edit</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">22</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">path-clip-edit</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">23</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Same distances</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-distribution</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">27</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-alignment</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">25</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-alignment-self</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">26</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-distribution</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">27</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Perpendicular lines</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-line-perpendicular</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">15</property> + </packing> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label" translatable="yes">Tangential lines</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-line-tangential</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">16</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-lines-perpendicular</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">15</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-lines-tangential</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">16</property> + </packing> + </child> + <child> + <object class="GtkSeparator" id="indent-space"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="opacity">0</property> + <property name="margin-start">5</property> + <property name="margin-end">5</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="can-focus">False</property> + <property name="opacity">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="opacity">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">8</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="opacity">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">17</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="opacity">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">24</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="opacity">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">28</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="opacity">0</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">32</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="snap-page-margin"> + <property name="label" translatable="yes">Page margins</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-page-margin</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">32</property> + <property name="width">2</property> + </packing> + </child> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">center</property> + <property name="icon-name">snap-page</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">32</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + <object class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-bounding-box-center</property> + </object> + <object class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">snap-nodes-cusp</property> + </object> + <object class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">align-horizontal-left-to-anchor-symbolic</property> + </object> + <object class="GtkPopover" id="simple"> + <property name="can-focus">False</property> + <child> + <!-- n-columns=4 n-rows=9 --> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="margin-start">8</property> + <property name="margin-end">16</property> + <property name="margin-top">8</property> + <property name="margin-bottom">8</property> + <property name="row-spacing">4</property> + <property name="column-spacing">4</property> + <child> + <object class="GtkCheckButton" id="simple-snap-toggle"> + <property name="label" translatable="yes">Enable snapping</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">start</property> + <property name="action-name">win.snap-global-toggle</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">1</property> + <property name="width">3</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="simple-snap-bbox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="action-name">win.simple-snap-bbox</property> + <property name="image">image1</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Bounding boxes</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">3</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="simple-snap-nodes"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="action-name">win.simple-snap-nodes</property> + <property name="image">image2</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Nodes</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">4</property> + </packing> + </child> + <child> + <object class="GtkToggleButton" id="align-snap"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="action-name">win.simple-snap-alignment</property> + <property name="image">image3</property> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="simple-align-snap"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Alignment</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label"> </property> + <attributes> + <attribute name="scale" value="0.5"/> + </attributes> + </object> + <packing> + <property name="left-attach">1</property> + <property name="top-attach">6</property> + </packing> + </child> + <child> + <object class="GtkLinkButton" id="advanced-link"> + <property name="label" translatable="yes">Advanced mode</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">True</property> + <property name="halign">end</property> + <property name="relief">none</property> + </object> + <packing> + <property name="left-attach">2</property> + <property name="top-attach">7</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label"> </property> + </object> + <packing> + <property name="left-attach">0</property> + <property name="top-attach">2</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + <object class="GtkToolbar" id="snap-toolbar"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="action-name">win.snap-global-toggle</property> + <property name="icon-name">snap</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolItem" id="tool-item-advanced"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-vertical">False</property> + <child> + <object class="GtkMenuButton" id="btn-advanced"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="direction">left</property> + <property name="popover">advanced</property> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToolItem" id="tool-item-simple"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-vertical">False</property> + <child> + <object class="GtkMenuButton" id="btn-simple"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="focus-on-click">False</property> + <property name="receives-default">True</property> + <property name="direction">left</property> + <property name="popover">simple</property> + <child> + <placeholder/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="visible-horizontal">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-bbox</property> + <property name="label" translatable="yes">Bounding boxes</property> + <property name="icon-name">snap-bounding-box</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-bbox-edge</property> + <property name="label" translatable="yes">Edges</property> + <property name="icon-name">snap-bounding-box-edges</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-bbox-corner</property> + <property name="label" translatable="yes">Corners</property> + <property name="icon-name">snap-bounding-box-corners</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-bbox-edge-midpoint</property> + <property name="label" translatable="yes">Edge midpoints</property> + <property name="icon-name">snap-bounding-box-midpoints</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-bbox-center</property> + <property name="label" translatable="yes">Centers</property> + <property name="icon-name">snap-bounding-box-center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="visible-horizontal">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-node-category</property> + <property name="label" translatable="yes">Nodes</property> + <property name="icon-name">snap-nodes</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-path</property> + <property name="label" translatable="yes">Paths</property> + <property name="icon-name">snap-nodes-path</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-path-intersection</property> + <property name="label" translatable="yes">Path intersections</property> + <property name="icon-name">snap-nodes-intersection</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-node-cusp</property> + <property name="label" translatable="yes">Cusp nodes</property> + <property name="icon-name">snap-nodes-cusp</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-node-smooth</property> + <property name="label" translatable="yes">Smooth nodes</property> + <property name="icon-name">snap-nodes-smooth</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-line-midpoint</property> + <property name="label" translatable="yes">Line midpoints</property> + <property name="icon-name">snap-nodes-midpoint</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-line-perpendicular</property> + <property name="label" translatable="yes">Perpendicular lines</property> + <property name="icon-name">snap-lines-perpendicular</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-line-tangential</property> + <property name="label" translatable="yes">Tangential lines</property> + <property name="icon-name">snap-lines-tangential</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="visible-horizontal">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-others</property> + <property name="label" translatable="yes">Other points</property> + <property name="icon-name">snap-others</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-object-midpoint</property> + <property name="label" translatable="yes">Object midpoints</property> + <property name="icon-name">snap-nodes-center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-rotation-center</property> + <property name="label" translatable="yes">Object rotation centers</property> + <property name="icon-name">snap-nodes-rotation-center</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-text-baseline</property> + <property name="label" translatable="yes">Text baselines and anchors</property> + <property name="icon-name">snap-text-baseline</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-path-mask</property> + <property name="label" translatable="yes">Masks</property> + <property name="icon-name">path-mask-edit</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-path-clip</property> + <property name="label" translatable="yes">Clips</property> + <property name="icon-name">path-clip-edit</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="visible-horizontal">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-alignment</property> + <property name="label" translatable="yes">Alignment</property> + <property name="icon-name">snap-alignment</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-alignment-self</property> + <property name="label" translatable="yes">Nodes in same path</property> + <property name="icon-name">snap-alignment-self</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-distribution</property> + <property name="label" translatable="yes">Same distances</property> + <property name="icon-name">snap-distribution</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="visible-horizontal">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-grid</property> + <property name="label" translatable="yes">Grids</property> + <property name="icon-name">grid-rectangular</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-guide</property> + <property name="label" translatable="yes">Guide lines</property> + <property name="icon-name">guides</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + <child> + <object class="GtkToggleToolButton"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="no-show-all">True</property> + <property name="visible-horizontal">False</property> + <property name="action-name">win.snap-page-border</property> + <property name="label" translatable="yes">Page borders</property> + <property name="icon-name">snap-page</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">False</property> + </packing> + </child> + </object> +</interface> diff --git a/share/ui/toolbar-tool-prefs.ui b/share/ui/toolbar-tool-prefs.ui new file mode 100644 index 0000000..98e452a --- /dev/null +++ b/share/ui/toolbar-tool-prefs.ui @@ -0,0 +1,880 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.22"/> + <object class="GtkImage" id="icon-bucket"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-fill</property> + </object> + <object class="GtkImage" id="icon-booleans"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-booleans</property> + </object> + <object class="GtkImage" id="icon-calligraphic"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-calligraphic</property> + </object> + <object class="GtkImage" id="icon-connector"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-connector</property> + </object> + <object class="GtkImage" id="icon-dropper"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-picker</property> + </object> + <object class="GtkImage" id="icon-ellipse"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-ellipse</property> + </object> + <object class="GtkImage" id="icon-eraser"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-eraser</property> + </object> + <object class="GtkImage" id="icon-geometry"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-geometry</property> + </object> + <object class="GtkImage" id="icon-gradient"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-gradient</property> + </object> + <object class="GtkImage" id="icon-measure"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-measure</property> + </object> + <object class="GtkImage" id="icon-mesh-gradient"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">mesh-gradient</property> + </object> + <object class="GtkImage" id="icon-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-node-editor</property> + </object> + <object class="GtkImage" id="icon-pages"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-pages</property> + </object> + <object class="GtkImage" id="icon-pen"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-path</property> + </object> + <object class="GtkImage" id="icon-pencil"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-freehand</property> + </object> + <object class="GtkImage" id="icon-rect"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-rectangle</property> + </object> + <object class="GtkImage" id="icon-select"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-pointer</property> + </object> + <object class="GtkImage" id="icon-spiral"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-spiral</property> + </object> + <object class="GtkImage" id="icon-spray"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-spray</property> + </object> + <object class="GtkImage" id="icon-star"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-polygon-star</property> + </object> + <object class="GtkImage" id="icon-threedee"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-cuboid</property> + </object> + <object class="GtkImage" id="icon-tweak"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-tweak</property> + </object> + <object class="GtkImage" id="icon-zoom"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">zoom</property> + </object> + <object class="GtkImage" id="image-text-tool"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-text</property> + </object> + <object class="GtkBox" id="tool-toolbar-prefs"> + <property name="name">tool-toolbar</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="orientation">vertical</property> + <property name="spacing">1</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">SELECTING</property> + <style> + <class name="small-heading"/> + <class name="halfrem-vert-space"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="homogeneous">True</property> + <property name="column-spacing">3</property> + <property name="max-children-per-line">10</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Select'</property> + <property name="image">icon-select</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Node'</property> + <property name="image">icon-node</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Booleans'</property> + <property name="image">icon-booleans</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <style> + <class name="tight-flowbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">SHAPES</property> + <style> + <class name="small-heading"/> + <class name="halfrem-vert-space"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="homogeneous">True</property> + <property name="column-spacing">3</property> + <property name="max-children-per-line">10</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Rect'</property> + <property name="image">icon-rect</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Arc'</property> + <property name="image">icon-ellipse</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Star'</property> + <property name="image">icon-star</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'3DBox'</property> + <property name="image">icon-threedee</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Spiral'</property> + <property name="image">icon-spiral</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <style> + <class name="tight-flowbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">CREATING NEW</property> + <style> + <class name="small-heading"/> + <class name="halfrem-vert-space"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="homogeneous">True</property> + <property name="column-spacing">3</property> + <property name="max-children-per-line">10</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Pen'</property> + <property name="image">icon-pen</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Pencil'</property> + <property name="image">icon-pencil</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Calligraphic'</property> + <property name="image">icon-calligraphic</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Text'</property> + <property name="image">image-text-tool</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <style> + <class name="tight-flowbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">COLORS AND STYLES</property> + <style> + <class name="small-heading"/> + <class name="halfrem-vert-space"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="homogeneous">True</property> + <property name="column-spacing">3</property> + <property name="max-children-per-line">10</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Gradient'</property> + <property name="image">icon-gradient</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Mesh'</property> + <property name="image">icon-mesh-gradient</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Dropper'</property> + <property name="image">icon-dropper</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'PaintBucket'</property> + <property name="image">icon-bucket</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <style> + <class name="tight-flowbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">7</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">OTHER</property> + <style> + <class name="small-heading"/> + <class name="halfrem-vert-space"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">8</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="homogeneous">True</property> + <property name="column-spacing">3</property> + <property name="max-children-per-line">10</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Tweak'</property> + <property name="image">icon-tweak</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Spray'</property> + <property name="image">icon-spray</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Eraser'</property> + <property name="image">icon-eraser</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Connector'</property> + <property name="image">icon-connector</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'LPETool'</property> + <property name="image">icon-geometry</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <style> + <class name="tight-flowbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">9</property> + </packing> + </child> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="label" translatable="yes">CANVAS TOOLS</property> + <style> + <class name="small-heading"/> + <class name="halfrem-vert-space"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">10</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="homogeneous">True</property> + <property name="column-spacing">3</property> + <property name="max-children-per-line">10</property> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Measure'</property> + <property name="image">icon-measure</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Zoom'</property> + <property name="image">icon-zoom</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkToggleButton"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Pages'</property> + <property name="image">icon-pages</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <style> + <class name="tight-flowbox"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">11</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> +</interface> diff --git a/share/ui/toolbar-tool.ui b/share/ui/toolbar-tool.ui new file mode 100644 index 0000000..a6df5d7 --- /dev/null +++ b/share/ui/toolbar-tool.ui @@ -0,0 +1,865 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.22"/> + <object class="GtkImage" id="icon-select"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-pointer</property> + </object> + <object class="GtkImage" id="icon-booleans"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-booleans</property> + </object> + <object class="GtkImage" id="icon-calligraphic"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-calligraphic</property> + </object> + <object class="GtkImage" id="image-text-tool"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-text</property> + </object> + <object class="GtkImage" id="icon-gradient"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-gradient</property> + </object> + <object class="GtkImage" id="icon-mesh-gradient"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">mesh-gradient</property> + </object> + <object class="GtkImage" id="icon-dropper"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-picker</property> + </object> + <object class="GtkImage" id="icon-bucket"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">color-fill</property> + </object> + <object class="GtkImage" id="icon-tweak"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-tweak</property> + </object> + <object class="GtkImage" id="icon-spray"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-spray</property> + </object> + <object class="GtkImage" id="icon-eraser"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-eraser</property> + </object> + <object class="GtkImage" id="icon-connector"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-connector</property> + </object> + <object class="GtkImage" id="icon-node"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-node-editor</property> + </object> + <object class="GtkImage" id="icon-geometry"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-geometry</property> + </object> + <object class="GtkImage" id="icon-zoom"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">zoom</property> + </object> + <object class="GtkImage" id="icon-measure"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-measure</property> + </object> + <object class="GtkImage" id="icon-rect"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-rectangle</property> + </object> + <object class="GtkImage" id="icon-ellipse"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-ellipse</property> + </object> + <object class="GtkImage" id="icon-star"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-polygon-star</property> + </object> + <object class="GtkImage" id="icon-threedee"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-cuboid</property> + </object> + <object class="GtkImage" id="icon-spiral"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-spiral</property> + </object> + <object class="GtkImage" id="icon-pen"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-path</property> + </object> + <object class="GtkImage" id="icon-pencil"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">draw-freehand</property> + </object> + <object class="GtkImage" id="icon-pages"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="icon-name">tool-pages</property> + </object> + <object class="GtkScrolledWindow" id="tool-toolbar"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="shadow_type">none</property> + <property name="hexpand">False</property> + <property name="vexpand">True</property> + <property name="hscrollbar-policy">never</property> + <property name="vscrollbar-policy">external</property> + <child> + <object class="GtkBox"> + <property name="name">tool-toolbar</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="halign">start</property> + <property name="valign">fill</property> + <child> + <object class="GtkFlowBox"> + <property name="homogeneous">True</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="orientation">horizontal</property> + <property name="max_children_per_line">2</property> + <style> + <class name="tight-flowbox"/> + </style> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Select'</property> + <property name="image">icon-select</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton" id="toolsradio"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Node'</property> + <property name="image">icon-node</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Booleans'</property> + <property name="image">icon-booleans</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="homogeneous">True</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="orientation">horizontal</property> + <property name="max_children_per_line">5</property> + <style> + <class name="tight-flowbox"/> + </style> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Rect'</property> + <property name="image">icon-rect</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Arc'</property> + <property name="image">icon-ellipse</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Star'</property> + <property name="image">icon-star</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'3DBox'</property> + <property name="image">icon-threedee</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Spiral'</property> + <property name="image">icon-spiral</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="homogeneous">True</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="orientation">horizontal</property> + <property name="max_children_per_line">6</property> + <style> + <class name="tight-flowbox"/> + </style> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Pen'</property> + <property name="image">icon-pen</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Pencil'</property> + <property name="image">icon-pencil</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Calligraphic'</property> + <property name="image">icon-calligraphic</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Text'</property> + <property name="image">image-text-tool</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="homogeneous">True</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="orientation">horizontal</property> + <property name="max_children_per_line">5</property> + <style> + <class name="tight-flowbox"/> + </style> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Gradient'</property> + <property name="image">icon-gradient</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Mesh'</property> + <property name="image">icon-mesh-gradient</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Dropper'</property> + <property name="image">icon-dropper</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'PaintBucket'</property> + <property name="image">icon-bucket</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">7</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="homogeneous">True</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="orientation">horizontal</property> + <property name="max_children_per_line">5</property> + <style> + <class name="tight-flowbox"/> + </style> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Tweak'</property> + <property name="image">icon-tweak</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Spray'</property> + <property name="image">icon-spray</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Eraser'</property> + <property name="image">icon-eraser</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Connector'</property> + <property name="image">icon-connector</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">8</property> + </packing> + </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can-focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">9</property> + </packing> + </child> + <child> + <object class="GtkFlowBox"> + <property name="homogeneous">True</property> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="halign">start</property> + <property name="valign">start</property> + <property name="orientation">horizontal</property> + <property name="max_children_per_line">5</property> + <style> + <class name="tight-flowbox"/> + </style> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Measure'</property> + <property name="image">icon-measure</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Zoom'</property> + <property name="image">icon-zoom</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + <child> + <object class="GtkFlowBoxChild"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <child> + <object class="GtkRadioButton"> + <property name="group">toolsradio</property> + <property name="draw_indicator">False</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives_default">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="action-name">win.tool-switch</property> + <property name="action-target">'Pages'</property> + <property name="image">icon-pages</property> + <property name="relief">none</property> + <style> + <class name="square-button"/> + </style> + </object> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">10</property> + </packing> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/toolbar-zoom.ui b/share/ui/toolbar-zoom.ui new file mode 100644 index 0000000..09c1a98 --- /dev/null +++ b/share/ui/toolbar-zoom.ui @@ -0,0 +1,130 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<interface> + <requires lib="gtk+" version="3.22"/> + + <!-- Zoom Toolbar --> + + <object class="GtkToolbar" id="zoom-toolbar"> + <property name="visible">True</property> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-in</property> + <property name="icon_name">zoom-in</property> + <property name="label" translatable="true">Zoom In</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-out</property> + <property name="icon_name">zoom-out</property> + <property name="label" translatable="true">Zoom Out</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-1-1</property> + <property name="icon_name">zoom-original</property> + <property name="label" translatable="true">Zoom 1-1</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-1-2</property> + <property name="icon_name">zoom-half-size</property> + <property name="label" translatable="true">Zoom 1-2</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-2-1</property> + <property name="icon_name">zoom-double-size</property> + <property name="label" translatable="true">Zoom 2-1</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-selection</property> + <property name="icon_name">zoom-fit-selection</property> + <property name="label" translatable="true">Zoom Selection</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-drawing</property> + <property name="icon_name">zoom-fit-drawing</property> + <property name="label" translatable="true">Zoom Drawing</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-page</property> + <property name="icon_name">zoom-fit-page</property> + <property name="label" translatable="true">Zoom Page</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-page-width</property> + <property name="icon_name">zoom-fit-width</property> + <property name="label" translatable="true">Zoom Page Width</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-center-page</property> + <property name="icon_name">zoom-center-page</property> + <property name="label" translatable="true">Center Page</property> + </object> + </child> + + <child> + <object class="GtkSeparatorToolItem"> + <property name="visible">True</property> + </object> + </child> + + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-prev</property> + <property name="icon_name">zoom-previous</property> + <property name="label" translatable="true">Zoom Previous</property> + </object> + </child> + <child> + <object class="GtkToolButton"> + <property name="visible">True</property> + <property name="action_name">win.canvas-zoom-next</property> + <property name="icon_name">zoom-next</property> + <property name="label" translatable="true">Zoom Next</property> + </object> + </child> + </object> + +</interface> diff --git a/share/ui/units.xml b/share/ui/units.xml new file mode 100644 index 0000000..713a538 --- /dev/null +++ b/share/ui/units.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="UTF-8"?> +<unitdefs> +<unit type="DIMENSIONLESS" pri="y"> + <name>%</name> + <plural>%</plural> + <abbr>%</abbr> + <factor>1.00</factor> + <description>Percentage</description> +</unit> +<unit type="LINEAR" pri="y"> + <name>pixel</name> + <plural>pixels</plural> + <abbr>px</abbr> + <factor>1.00</factor> + <description>CSS Pixels (96/inch)</description> +</unit> +<unit type="LINEAR" pri="n"> + <name>point</name> + <plural>points</plural> + <abbr>pt</abbr> + <factor>1.333333333333333</factor> + <description>PostScript points (72/inch)</description> +</unit> +<unit type="LINEAR" pri="n"> + <name>pica</name> + <plural>picas</plural> + <abbr>pc</abbr> + <factor>16.0</factor> + <description>12 points</description> +</unit> +<unit type="LINEAR" pri="n"> + <name>inch</name> + <plural>inches</plural> + <abbr>in</abbr> + <factor>96.0</factor> + <description>Inches (96 px/in)</description> +</unit> +<unit type="LINEAR" pri="n"> + <name>millimeter</name> + <plural>millimeters</plural> + <abbr>mm</abbr> + <factor>3.779527559055119</factor> + <description>Millimeters (25.4 mm/in)</description> +</unit> +<unit type="LINEAR" pri="n"> + <name>centimeter</name> + <plural>centimeters</plural> + <abbr>cm</abbr> + <factor>37.79527559055119</factor> + <description>Centimeters (10 mm/cm)</description> +</unit> +<unit type="RADIAL" pri="y"> + <name>degree</name> + <plural>degrees</plural> + <abbr>°</abbr> + <factor>1.00</factor> + <description>Degrees</description> +</unit> +<unit type="RADIAL" pri="n"> + <name>radian</name> + <plural>radians</plural> + <abbr>rad</abbr> + <factor>57.29577951308232</factor> + <description>Radians (180/pi deg/rad)</description> +</unit> +<unit type="RADIAL" pri="n"> + <name>gradian</name> + <plural>gradians</plural> + <abbr>grad</abbr> + <factor>0.9</factor> + <description>Gradians (360/400 deg/grad)</description> +</unit> +<unit type="RADIAL" pri="n"> + <name>turn</name> + <plural>turns</plural> + <abbr>turn</abbr> + <factor>360</factor> + <description>Turns (360 deg/turn)</description> +</unit> +<unit type="FONT_HEIGHT" pri="y"> + <name>font-height</name> + <plural>font-heights</plural> + <abbr>em</abbr> + <factor>1.00</factor> + <description>Font height</description> +</unit> +<unit type="FONT_HEIGHT" pri="n"> + <name>x-height</name> + <plural>x-heights</plural> + <abbr>ex</abbr> + <factor>0.50</factor> + <description>Height of letter 'x'</description> +</unit> +<unit type="FONT_HEIGHT" pri="n"> + <name>half-em</name> + <plural>half-ems</plural> + <abbr>en</abbr> + <factor>0.50</factor> + <description>Half of font height</description> +</unit> +</unitdefs> diff --git a/share/ui/user.css b/share/ui/user.css new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/share/ui/user.css diff --git a/share/ui/widget-new-from-template.ui b/share/ui/widget-new-from-template.ui new file mode 100644 index 0000000..9c3edd1 --- /dev/null +++ b/share/ui/widget-new-from-template.ui @@ -0,0 +1,73 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.38.2 --> +<interface> + <requires lib="gtk+" version="3.20"/> + <!-- interface-license-type gplv3 --> + <!-- interface-name Inkscape --> + <!-- interface-copyright Martin Owens --> + <object class="GtkListStore" id="liststore"> + <columns> + <!-- column-name name --> + <column type="gchararray"/> + <!-- column-name label --> + <column type="gchararray"/> + <!-- column-name icon --> + <column type="GdkPixbuf"/> + <!-- column-name key --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0">Example Item</col> + <col id="1">Label</col> + </row> + </data> + </object> + <object class="GtkScrolledWindow" id="container"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="shadow-type">in</property> + <child> + <object class="GtkIconView" id="iconview"> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="margin">6</property> + <property name="model">liststore</property> + <property name="spacing">1</property> + <child> + <object class="GtkCellRendererPixbuf"> + <property name="xpad">6</property> + <property name="ypad">6</property> + </object> + <attributes> + <attribute name="pixbuf">2</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText"> + <property name="xalign">0.5</property> + <property name="alignment">center</property> + <property name="wrap-mode">word</property> + <property name="wrap-width">16</property> + </object> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + <child> + <object class="GtkCellRendererText"> + <property name="xalign">0.5</property> + <property name="alignment">center</property> + <property name="scale">0.90</property> + <property name="wrap-mode">word</property> + <property name="wrap-width">32</property> + <property name="foreground-rgba">rgb(136,138,133)</property> + </object> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + </child> + </object> +</interface> diff --git a/share/ui/win32.css b/share/ui/win32.css new file mode 100644 index 0000000..a260e21 --- /dev/null +++ b/share/ui/win32.css @@ -0,0 +1,176 @@ +/* Appearance of switches */ + +switch slider { + background-image: none; + background-color: @selected_bg_color; + border-radius: 3px; +} + +switch image { + background-color: -gtk-win32-color(button, 10); + border-radius: 1px; +} + + +/* Menu appearance */ + +menu separator { + border-bottom-width: 1px; + border-bottom-style: solid; + margin-left: 5px; + margin-right: 5px; +} + +toolbar separator { + border-bottom-width: 1px; + border-bottom-style: solid; + margin: 2px; +} + +menuitem arrow { + min-width: 10px; + min-height: 10px; +} + +menuitem arrow.right { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +menuitem arrow.left { + -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); +} + + +/* Add margin to images */ + +widget>box>image, +toolbar button image { + margin: 2px; +} + + +/* Style spinbuttons, GTK style (see discussion in https://gitlab.com/inkscape/inkscape/-/issues/762) */ + +spinbutton { + background-image: none; +} + +spinbutton button { + margin-top: 0px; + margin-bottom: 0px; + background-size: 20px 100%; + border-width: 1px; + border-style: solid; + background-image: none; + color: black; + background-color: white; + border-color: shade(-gtk-win32-color(button, menu), 0.6); +} + +spinbutton button.down { + margin-right: 15px; +} + +spinbutton button:hover { + background-image: -gtk-win32-theme-part(button, 1, 2); + background-size: 200% 200%; + ; + background-position: center; + border-color: #add8e6; +} + +spinbutton button:disabled { + background-color: blue; +} + +spinbutton entry:not(:disabled) { + border: 1px solid shade(-gtk-win32-color(button, menu), 0.6); + background-color: white; +} + +spinbutton entry:disabled, +spinbutton button:disabled { + background-color: -gtk-win32-color(button, 4); +} + +spinbutton entry:disabled { + border-width: 1px; + border-style: solid; +} + + +/* Fix height of sliders in F&S dialog */ + +#InkSpinScale spinbutton { + padding-top: 10px; + padding-bottom: 10px; +} + + +/* Fix colors in LPE dialog */ + +@define-color theme_fg_color black; +#LPEDialogSelector separator { + border-color: black; + border-right: 1px solid; + margin: 2px; +} + + +/* Fix hidden palette */ + +#InkscapePanel #PreviewHolderGrid { + padding-bottom: 20px; +} + + +/* Fix right button of horizontal scrollbar */ + +scrollbar.horizontal:hover button.down:disabled { + background-image: -gtk-win32-theme-part(scrollbar, 1, 16); +} + +scrollbar.horizontal:hover button.down:active { + background-image: -gtk-win32-theme-part(scrollbar, 1, 15); +} + + +/* Make room for the scroll bar of the dialog region*/ + +#DockBox { + margin-right: 15px; +} + +#InkSpinScale spinbutton { + margin-right: 5px; +} + +/* Fix text contrast issues while hovering */ + +treeview.view:selected { + color: #000; +} + +treeview.view:selected:focus { + background-color: #a0d4fc; +} + +/*fix context-menu decoration */ + +.popup decoration { + all: unset; +} + +/*add expander arrow*/ + +expander arrow { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); +} + +expander arrow:dir(rtl) { + -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); +} + +expander arrow:checked { + -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); +} |