diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 16:29:01 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 16:29:01 +0000 |
commit | 35a96bde514a8897f6f0fcc41c5833bf63df2e2a (patch) | |
tree | 657d15a03cc46bd099fc2c6546a7a4ad43815d9f /share/ui | |
parent | Initial commit. (diff) | |
download | inkscape-35a96bde514a8897f6f0fcc41c5833bf63df2e2a.tar.xz inkscape-35a96bde514a8897f6f0fcc41c5833bf63df2e2a.zip |
Adding upstream version 1.0.2.upstream/1.0.2upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'share/ui')
-rw-r--r-- | share/ui/Adwaita-dark.css | 62 | ||||
-rw-r--r-- | share/ui/Adwaita.css | 63 | ||||
-rw-r--r-- | share/ui/CMakeLists.txt | 4 | ||||
-rw-r--r-- | share/ui/dialog-css.glade | 134 | ||||
-rw-r--r-- | share/ui/dialog-filter-editor.glade | 381 | ||||
-rw-r--r-- | share/ui/dialog-livepatheffect-add.glade | 450 | ||||
-rw-r--r-- | share/ui/dialog-livepatheffect-effect.glade | 270 | ||||
-rw-r--r-- | share/ui/dialog-trace.glade | 1099 | ||||
-rw-r--r-- | share/ui/inkscape-application.glade | 31 | ||||
-rw-r--r-- | share/ui/menus.xml | 326 | ||||
-rw-r--r-- | share/ui/style.css | 447 | ||||
-rw-r--r-- | share/ui/toolbar-commands.ui | 42 | ||||
-rw-r--r-- | share/ui/toolbar-tool.ui | 49 | ||||
-rw-r--r-- | share/ui/toolbox.xml | 13 | ||||
-rw-r--r-- | share/ui/units.xml | 101 | ||||
-rw-r--r-- | share/ui/win32.css | 146 |
16 files changed, 3618 insertions, 0 deletions
diff --git a/share/ui/Adwaita-dark.css b/share/ui/Adwaita-dark.css new file mode 100644 index 0000000..db89ba2 --- /dev/null +++ b/share/ui/Adwaita-dark.css @@ -0,0 +1,62 @@ +/* ADWAITA DARK SPECIFIC STYLE */ + +/* + * Keep as small as possible + */ + +spinbutton { + padding: 0; + outline-style: none; +} + +spinbutton entry { + padding-left: 2px; + padding-right: 0; +} + +spinbutton undershoot { + outline-style: none; +} + +spinbutton entry { + padding-left: 2px; + padding-right: 0; +} + +spinbutton undershoot { + outline-style: none; +} + +.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; +} + +#monoStrokeWidth, +#fillEmptySpace, +#SelectStatus, +#CoordinateStatusX, +#CoordinateStatusY, +#DesktopMainTable spinbutton{ + font-family: sans-serif; +}
\ No newline at end of file diff --git a/share/ui/Adwaita.css b/share/ui/Adwaita.css new file mode 100644 index 0000000..ebec8d2 --- /dev/null +++ b/share/ui/Adwaita.css @@ -0,0 +1,63 @@ +/* ADWAITA SPECIFIC STYLE */ + + +/* + * Keep as small as possible + */ + +spinbutton { + padding: 0; + outline-style: none; +} + +spinbutton entry { + padding-left: 2px; + padding-right: 0; +} + +spinbutton undershoot { + outline-style: none; +} + +spinbutton entry { + padding-left: 2px; + padding-right: 0; +} + +spinbutton undershoot { + outline-style: none; +} + +.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; +} + +#monoStrokeWidth, +#fillEmptySpace, +#SelectStatus, +#CoordinateStatusX, +#CoordinateStatusY, +#DesktopMainTable spinbutton{ + font-family: sans-serif; +}
\ No newline at end of file diff --git a/share/ui/CMakeLists.txt b/share/ui/CMakeLists.txt new file mode 100644 index 0000000..7b1450b --- /dev/null +++ b/share/ui/CMakeLists.txt @@ -0,0 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +file(GLOB _FILES "*.xml" "*.rc" "*.css" "*.ui" "*.glade") +install(FILES ${_FILES} DESTINATION ${INKSCAPE_SHARE_INSTALL}/ui) + 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-filter-editor.glade b/share/ui/dialog-filter-editor.glade new file mode 100644 index 0000000..908e0d7 --- /dev/null +++ b/share/ui/dialog-filter-editor.glade @@ -0,0 +1,381 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.20.0 --> +<interface> + <requires lib="gtk+" version="3.18"/> + <object class="GtkListStore" id="FilterStore"> + <columns> + <!-- column-name Effect --> + <column type="gchararray"/> + <!-- column-name Name --> + <column type="gchararray"/> + <!-- column-name gboolean1 --> + <column type="gboolean"/> + <!-- column-name Origin --> + <column type="GObject"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">test1</col> + <col id="1" translatable="yes">a</col> + <col id="2">False</col> + <col id="3"/> + </row> + <row> + <col id="0" translatable="yes">test2</col> + <col id="1" translatable="yes">b</col> + <col id="2">False</col> + <col id="3"/> + </row> + <row> + <col id="0" translatable="yes">test3</col> + <col id="1" translatable="yes">c</col> + <col id="2">False</col> + <col id="3"/> + </row> + <row> + <col id="0" translatable="yes"/> + <col id="1" translatable="yes"/> + <col id="2">False</col> + <col id="3"/> + </row> + </data> + </object> + <object class="GtkListStore" id="FilterStore1"> + <columns> + <!-- column-name origin_name --> + <column type="gchararray"/> + </columns> + <data> + <row> + <col id="0" translatable="yes">whatever</col> + </row> + <row> + <col id="0" translatable="yes">second choice</col> + </row> + </data> + </object> + <object class="GtkBox" id="FilterEditor"> + <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="FilterList"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <items> + <item translatable="yes">filter1</item> + <item translatable="yes">filter2</item> + </items> + </object> + <packing> + <property name="expand">True</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">FER: </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="label" translatable="yes">X: </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="FilterFERX"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="input_purpose">number</property> + <property name="orientation">vertical</property> + <property name="value">-0.10000000000000001</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</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="label" translatable="yes">Y: </property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="FilterFERY"> + <property name="visible">True</property> + <property name="can_focus">True</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="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">W: </property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="FilterFERW"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="orientation">vertical</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</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">H: </property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">8</property> + </packing> + </child> + <child> + <object class="GtkSpinButton" id="FilterFERH"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="orientation">vertical</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">9</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"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkTreeView" id="FilterPrimitiveList"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="model">FilterStore</property> + <property name="headers_clickable">False</property> + <property name="reorderable">True</property> + <property name="fixed_height_mode">True</property> + <property name="enable_tree_lines">True</property> + <property name="activate_on_single_click">True</property> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + <child> + <object class="GtkTreeViewColumn"> + <property name="sizing">fixed</property> + <property name="title" translatable="yes">Effect</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext4"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn"> + <property name="sizing">fixed</property> + <property name="title" translatable="yes">Name</property> + <child> + <object class="GtkCellRendererText" id="cellrenderertext44"/> + <attributes> + <attribute name="text">1</attribute> + </attributes> + </child> + </object> + </child> + <child> + <object class="GtkTreeViewColumn"> + <property name="sizing">fixed</property> + <property name="title" translatable="yes">Origin(s)</property> + <property name="expand">True</property> + <child> + <object class="GtkCellRendererCombo" id="cellrenderertext45"> + <property name="model">FilterStore1</property> + <property name="text_column">0</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="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkComboBox" id="FilterPrimitiveDropDown"> + <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> + <object class="GtkButton" id="FilterPrimitiveAdd"> + <property name="label" translatable="yes">Add</property> + <property name="visible">True</property> + <property name="can_focus">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> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="pack_type">end</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">True</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="GtkDrawingArea" id="FilterPreview"> + <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> + <placeholder/> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <child> + <object class="GtkImage" id="FilterPrimitiveDescImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-dialog-info</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="FilterPrimitiveDescText"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">This effect does this and that.</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">2</property> + </packing> + </child> + </object> + <packing> + <property name="resize">True</property> + <property name="shrink">True</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <object class="GtkComboBox" id="OptionList"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="model">FilterStore1</property> + <property name="active">0</property> + <property name="id_column">0</property> + </object> +</interface> diff --git a/share/ui/dialog-livepatheffect-add.glade b/share/ui/dialog-livepatheffect-add.glade new file mode 100644 index 0000000..28ab7d2 --- /dev/null +++ b/share/ui/dialog-livepatheffect-add.glade @@ -0,0 +1,450 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.22.1 --> +<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 type="titlebar"> + <placeholder/> + </child> + <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">400</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> + <property name="non_homogeneous">True</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="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..bee2189 --- /dev/null +++ b/share/ui/dialog-livepatheffect-effect.glade @@ -0,0 +1,270 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.22.1 --> +<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> + <style> + <class name="lpeselectoreffect"/> + </style> + </object> + </child> + </object> +</interface> diff --git a/share/ui/dialog-trace.glade b/share/ui/dialog-trace.glade new file mode 100644 index 0000000..39f96ce --- /dev/null +++ b/share/ui/dialog-trace.glade @@ -0,0 +1,1099 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Generated with glade 3.22.1 --> +<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">10</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.20000000000000001</property> + <property name="page_increment">10</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">10</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">10</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.20000000000000001</property> + <property name="page_increment">10</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.1</property> + <property name="page_increment">1</property> + </object> + <object class="GtkAdjustment" id="SS_BC_T"> + <property name="upper">1</property> + <property name="value">0.45000000000000001</property> + <property name="step_increment">0.01</property> + <property name="page_increment">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">10</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">10</property> + </object> + <object class="GtkAdjustment" id="SS_ED_T"> + <property name="upper">1</property> + <property name="value">0.65000000000000002</property> + <property name="step_increment">0.01</property> + <property name="page_increment">10</property> + </object> + <object class="GtkAdjustment" id="optimize"> + <property name="upper">5</property> + <property name="value">0.20000000000000001</property> + <property name="step_increment">0.050000000000000003</property> + <property name="page_increment">10</property> + </object> + <object class="GtkAdjustment" id="smooth"> + <property name="upper">1.3400000000000001</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="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). + * "Multiple scans" options separate the image into a number of scans, depending on brightness, color separation, or gray levels, and creates several paths for those. It can also use autotrace. + * The "Pixel art" tab allows to use the depixelize algorithm to vectorize pixel art images. + + * NOTE: + 1) Save your work before tracing + 2) Watch your pixel count: "Trace pixel art" creates 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="GtkBox" id="mainBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkPaned"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="position">200</property> + <child> + <object class="GtkNotebook" id="choice_tab"> + <property name="visible">True</property> + <property name="can_focus">True</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="orientation">vertical</property> + <child> + <object class="GtkStackSwitcher"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="tooltip_text" translatable="yes">Create a single path or create a group of paths</property> + <property name="halign">center</property> + <property name="margin_bottom">5</property> + <property name="stack">choice_scan</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkStack" id="choice_scan"> + <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="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="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="homogeneous">True</property> + <child> + <object class="GtkStack" id="Stack_SS"> + <property name="visible-child-name" bind-source="CBT_SS" bind-property="active-id"></property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_top">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="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Brightness threshold</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">SS_BC</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="label" translatable="yes">Edge threshold</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">SS_ED</property> + <property name="position">1</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="label" translatable="yes">Colors</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">SS_CQ</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="orientation">vertical</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Filter iterations</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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> + <property name="digits">0</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="label" translatable="yes">Error threshold</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">SS_AT</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="orientation">vertical</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Filter iterations</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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> + <property name="digits">0</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="label" translatable="yes">Error threshold</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</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="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">SS_CT</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> + <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="valign">start</property> + <property name="margin_top">25</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> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="name">SingleScan</property> + <property name="title" translatable="yes">Single scan</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_homogeneous">True</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 translatable="yes">Brightness steps</item> + <item translatable="yes">Colors</item> + <item translatable="yes">Grays</item> + <item translatable="yes">Autotrace (slower)</item> + </items> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">2</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="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</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="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="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="draw_indicator">True</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="label" translatable="yes">Scans</property> + </object> + <packing> + <property name="left_attach">0</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">The desired number of scans</property> + <property name="adjustment">MS_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> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">3</property> + </packing> + </child> + </object> + <packing> + <property name="name">page1</property> + <property name="title" translatable="yes">Multiple scans</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> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Options</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="column_homogeneous">True</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="active">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</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="active">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</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="active">True</property> + <property name="draw_indicator">True</property> + </object> + <packing> + <property name="left_attach">0</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">Speckles of up to this many pixels will be suppressed</property> + <property name="adjustment">speckles</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</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">1</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">Increase this to reduce the number of nodes in the trace by more aggressive optimization</property> + <property name="adjustment">optimize</property> + <property name="digits">2</property> + <property name="value">0.20000000000000001</property> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</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">Trace bitmap</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="orientation">vertical</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"> +Heuristics +</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <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="row_spacing">4</property> + <property name="column_homogeneous">True</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</property> + <property name="label" translatable="yes">Curves (multiplier)</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="tooltip_text" translatable="yes">Avoid single disconnected pixels</property> + <property name="label" translatable="yes">Islands (weight)</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">Favors connections that are part of foreground color</property> + <property name="label" translatable="yes">Sparse pixels +(window radius)</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="label" translatable="yes">Sparse pixels +(multiplier)</property> + </object> + <packing> + <property name="left_attach">0</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="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">1</property> + <property name="top_attach">0</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">1</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">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">1</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 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">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="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes"> +Output +</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">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="margin_left">5</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">3</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="margin_left">5</property> + <property name="margin_bottom">5</property> + <property name="active">True</property> + <property name="draw_indicator">True</property> + <property name="group">RB_PA_voronoi</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</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">Pixel art</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="hscrollbar_policy">never</property> +<property name="shadow_type">in</property> + <child> + <object class="GtkTextView"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="editable">False</property> + <property name="wrap_mode">word</property> + <property name="buffer">helptext</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">Help</property> + </object> + <packing> + <property name="position">2</property> + <property name="tab_fill">False</property> + </packing> + </child> + </object> + <packing> + <property name="resize">False</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="margin_left">5</property> + <property name="margin_right">5</property> + <property name="margin_top">5</property> + <property name="margin_bottom">5</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkDrawingArea" id="previewArea"> + <property name="width_request">200</property> + <property name="height_request">200</property> + <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> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + + + +<!-- + <child> + <object class="GtkCheckButton" id="CB_live"> + <property name="label" translatable="yes">Live</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">2</property> + </packing> + </child> +--> + + + + + + + <child> + <object class="GtkButton" id="B_Update"> + <property name="label" translatable="yes">Update</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">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="CB_SIOX"> + <property name="label" translatable="yes">SIOX</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</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> + <packing> + <property name="expand">False</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">0</property> + </packing> + </child> + <child> + <object class="GtkButtonBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">baseline</property> + <property name="margin_top">5</property> + <property name="margin_bottom">5</property> + <property name="spacing">3</property> + <property name="layout_style">end</property> + <child> + <object class="GtkButton" id="B_RESET"> + <property name="label">gtk-revert-to-saved</property> + <property name="visible">True</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_STOP"> + <property name="label">gtk-stop</property> + <property name="visible">True</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">1</property> + </packing> + </child> + <child> + <object class="GtkButton" id="B_OK"> + <property name="label">gtk-ok</property> + <property name="visible">True</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">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/inkscape-application.glade b/share/ui/inkscape-application.glade new file mode 100644 index 0000000..ab9d946 --- /dev/null +++ b/share/ui/inkscape-application.glade @@ -0,0 +1,31 @@ +<interface> + <requires lib="gtk+" version="3.4"/> + + <!-- Application menubar --> + <menu id="menu-application"> + <submenu> + <attribute name="label" translatable="yes">_File</attribute> + <section> + <item> + <attribute name="label" translatable="yes">_New</attribute> + <attribute name="action">app.new</attribute> + <attribute name="accel"><Primary>n</attribute> + </item> + <item> + <attribute name="label" translatable="yes">_Quit</attribute> + <attribute name="action">app.quit</attribute> + <attribute name="accel"><Primary>q</attribute> + </item> + </section> + </submenu> + <submenu> + <attribute name="label" translatable="yes">_Help</attribute> + <section> + <item> + <attribute name="label" translatable="yes">_About</attribute> + <attribute name="action">app.about</attribute> + </item> + </section> + </submenu> + </menu> +</interface> diff --git a/share/ui/menus.xml b/share/ui/menus.xml new file mode 100644 index 0000000..24a8801 --- /dev/null +++ b/share/ui/menus.xml @@ -0,0 +1,326 @@ +<inkscape version="1.0" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + show-icons="false"> + + <submenu name="_File"> + <verb verb-id="FileNew" /> + <verb verb-id="FileTemplates" /> + <verb verb-id="FileOpen" /> + <recent-file-list/> + <verb verb-id="FileRevert" /> + <verb verb-id="FileSave" /> + <verb verb-id="FileSaveAs" /> + <verb verb-id="FileSaveACopy" /> + <verb verb-id="FileSaveTemplate" /> + <separator/> + <verb verb-id="FileImport" /> + <verb verb-id="DialogExport" /> + <separator/> + <verb verb-id="FilePrint" /> + <separator/> + <verb verb-id="FileVacuum" /> + <separator/> + <verb verb-id="DialogDocumentProperties" /> + <!--verb verb-id="DialogMetadata" /--> + <separator/> + <verb verb-id="FileClose" /> + <verb verb-id="FileQuit" /> + </submenu> + <submenu name="_Edit"> + <verb verb-id="EditUndo" /> + <verb verb-id="EditRedo" /> + <verb verb-id="DialogUndoHistory" /> + <separator/> + <verb verb-id="EditCut" /> + <verb verb-id="EditCopy" /> + <verb verb-id="EditPaste" /> + <verb verb-id="EditPasteInPlace" /> + <verb verb-id="EditPasteStyle" /> + <submenu name="Paste Si_ze"> + <verb verb-id="EditPasteSize" /> + <verb verb-id="EditPasteWidth" /> + <verb verb-id="EditPasteHeight" /> + <verb verb-id="EditPasteSizeSeparately" /> + <verb verb-id="EditPasteWidthSeparately" /> + <verb verb-id="EditPasteHeightSeparately" /> + </submenu> + <separator/> + <verb verb-id="DialogFind" /> + <separator/> + <verb verb-id="EditDuplicate" /> + <submenu name="Clo_ne"> + <verb verb-id="EditClone" /> + <verb verb-id="DialogClonetiler" /> + <verb verb-id="EditUnlinkClone" /> + <verb verb-id="EditUnlinkCloneRecursive" /> + <verb verb-id="EditRelinkClone" /> + <verb verb-id="EditCloneSelectOriginal" /> + <verb verb-id="EditCloneOriginalPathLPE" /> + </submenu> + <verb verb-id="SelectionCreateBitmap" /> + <separator/> + <verb verb-id="EditDelete" /> + <separator/> + <verb verb-id="EditSelectAll" /> + <verb verb-id="EditSelectAllInAllLayers" /> + <submenu name="Select Sa_me"> + <verb verb-id="EditSelectSameFillStroke" /> + <verb verb-id="EditSelectSameFillColor" /> + <verb verb-id="EditSelectSameStrokeColor" /> + <verb verb-id="EditSelectSameStrokeStyle" /> + <verb verb-id="EditSelectSameObjectType" /> + </submenu> + <verb verb-id="EditInvert" /> + <verb verb-id="EditDeselect" /> + <separator/> + <verb verb-id="FitCanvasToSelectionOrDrawing" /> + <separator/> + <verb verb-id="EditGuidesAroundPage" /> + <verb verb-id="EditGuidesToggleLock" check="yes" /> + <verb verb-id="EditRemoveAllGuides" /> + <separator/> + <verb verb-id="DialogXMLEditor" /> + <separator/> + <verb verb-id="DialogInput" /> + <verb verb-id="DialogPreferences" show-icons="true" /> + </submenu> + <submenu name="_View"> + <submenu name="_Zoom"> + <verb verb-id="ZoomIn" /> + <verb verb-id="ZoomOut" /> + <separator/> + <verb verb-id="Zoom1:0" /> + <verb verb-id="Zoom1:2" /> + <verb verb-id="Zoom2:1" /> + <separator/> + <verb verb-id="ZoomSelection" /> + <verb verb-id="ZoomDrawing" /> + <verb verb-id="ZoomPage" /> + <verb verb-id="ZoomPageWidth" /> + <verb verb-id="ZoomCenterPage" /> + <separator/> + <verb verb-id="ZoomPrev" /> + <verb verb-id="ZoomNext" /> + </submenu> + <submenu name="_Display Mode"> + <verb verb-id="ViewModeToggle"/> + <verb verb-id="ViewModeNormal" radio="yes" default="yes"/> + <verb verb-id="ViewModeNoFilters" radio="yes"/> + <verb verb-id="ViewModeOutline" radio="yes"/> + <verb verb-id="ViewModeVisibleHairlines" radio="yes"/> + <!--Better location in menu needs to be found--> + <!--verb verb-id="ViewModePrintColorsPreview" radio="yes"/--> + <!--verb verb-id="DialogPrintColorsPreview" /--> + </submenu> + <submenu name="_Color Display Mode"> + <verb verb-id="ViewColorModeToggle"/> + <verb verb-id="ViewColorModeNormal" radio="yes" default="yes"/> + <verb verb-id="ViewColorModeGrayscale" radio="yes"/> + <!--Better location in menu needs to be found--> + <!--verb verb-id="ViewColorModePrintColorsPreview" radio="yes"/--> + <!--verb verb-id="DialogPrintColorsPreview" /--> + </submenu> + <submenu name="_Canvas Orientation"> + <verb verb-id="FlipHorizontal" check="yes"/> + <verb verb-id="FlipVertical" check="yes"/> + <separator/> + <verb verb-id="ToggleRotationLock" check="yes" /> + <verb verb-id="RotateZero"/> + </submenu> + <separator/> + <verb verb-id="ViewSplitModeToggle" check="yes" /> + <verb verb-id="ViewXRayToggle" check="yes" /> + <verb verb-id="ToggleGrid" check="yes" /> + <verb verb-id="ToggleGuides" check="yes" /> + <verb verb-id="ViewCmsToggle" check="yes" /> + <separator/> + <submenu name="Sh_ow/Hide"> + <verb verb-id="ToggleCommandsToolbar" check="yes" /> + <verb verb-id="ToggleSnapToolbar" check="yes" /> + <verb verb-id="ToggleToolToolbar" check="yes" /> + <verb verb-id="ToggleToolbox" check="yes" /> + <verb verb-id="ToggleRulers" check="yes" /> + <verb verb-id="ToggleScrollbars" check="yes" /> + <verb verb-id="TogglePalette" check="yes" /> + <verb verb-id="ToggleStatusbar" check="yes" /> + </submenu> + <verb verb-id="DialogsToggle" /> + <separator/> + <verb verb-id="DialogSwatches" /> + <verb verb-id="DialogDebug" /> + <separator/> + <verb verb-id="PrevWindow" /> + <verb verb-id="NextWindow" /> + <separator/> + <verb verb-id="ViewIconPreview" /> + <verb verb-id="ViewNew" /> + <separator/> + <verb verb-id="FullScreen" /> + <separator/> + <task-checkboxes/> + <!-- Not quite ready to be in the menus. + <verb verb-id="FocusToggle" /--> + </submenu> + <submenu name="_Layer"> + <verb verb-id="DialogLayers" /> + <separator/> + <verb verb-id="LayerNew" /> + <verb verb-id="LayerRename" /> + <separator/> + <verb verb-id="LayerToggleHide" /> + <verb verb-id="LayerToggleLock" /> + <separator/> + <verb verb-id="LayerNext" show-icons="true"/> + <verb verb-id="LayerPrev" show-icons="true"/> + <separator/> + <verb verb-id="LayerMoveToNext" show-icons="true"/> + <verb verb-id="LayerMoveToPrev" show-icons="true"/> + <verb verb-id="LayerMoveTo" show-icons="true"/> + <separator/> + <verb verb-id="LayerRaise" show-icons="true"/> + <verb verb-id="LayerLower" show-icons="true"/> + <verb verb-id="LayerToTop" show-icons="true"/> + <verb verb-id="LayerToBottom" show-icons="true" /> + <separator/> + <verb verb-id="LayerDuplicate" /> + <verb verb-id="LayerDelete" /> + </submenu> + <submenu name="_Object"> + <verb verb-id="DialogObjects" /> + <!-- + <verb verb-id="DialogTags" /> + --> + <separator/> + <verb verb-id="DialogFillStroke" /> + <verb verb-id="DialogObjectProperties" /> + <verb verb-id="DialogSymbols" /> + <verb verb-id="DialogPaintServers" /> + <verb verb-id="DialogSelectors" /> + <separator/> + <verb verb-id="SelectionGroup" /> + <verb verb-id="SelectionUnGroup" /> + <verb verb-id="SelectionUnGroupPopSelection" /> + <separator/> + <submenu name="Cli_p"> + <verb verb-id="ObjectSetClipPath" /> + <verb verb-id="ObjectSetInverseClipPath" /> + <verb verb-id="ObjectUnSetClipPath" /> + </submenu> + <submenu name="Mas_k"> + <verb verb-id="ObjectSetMask" /> + <verb verb-id="ObjectSetInverseMask" /> + <verb verb-id="ObjectUnSetMask" /> + </submenu> + <submenu name="Patter_n"> + <verb verb-id="ObjectsToPattern" /> + <verb verb-id="ObjectsFromPattern" /> + </submenu> + <verb verb-id="ObjectsToMarker" /> + <verb verb-id="ObjectsToGuides" /> + <separator/> + <verb verb-id="SelectionRaise" show-icons="true"/> + <verb verb-id="SelectionLower" show-icons="true" /> + <verb verb-id="SelectionToFront" show-icons="true" /> + <verb verb-id="SelectionToBack" show-icons="true"/> + <separator/> + <verb verb-id="ObjectRotate90" show-icons="true" /> + <verb verb-id="ObjectRotate90CCW" show-icons="true" /> + <verb verb-id="ObjectFlipHorizontally" show-icons="true" /> + <verb verb-id="ObjectFlipVertically" show-icons="true" /> + <separator/> + <verb verb-id="UnhideAll" /> + <verb verb-id="UnlockAll" /> + <separator/> + <verb verb-id="DialogTransform" /> + <verb verb-id="DialogAlignDistribute" /> + <verb verb-id="DialogArrange" /> + <verb verb-id="DialogPrototype" /> + </submenu> + <submenu name="_Path"> + <verb verb-id="ObjectToPath" /> + <verb verb-id="StrokeToPath" /> + <verb verb-id="SelectionTrace" /> + <separator/> + <verb verb-id="SelectionUnion" show-icons="true" /> + <verb verb-id="SelectionDiff" show-icons="true" /> + <verb verb-id="SelectionIntersect" show-icons="true" /> + <verb verb-id="SelectionSymDiff" show-icons="true" /> + <verb verb-id="SelectionDivide" show-icons="true" /> + <verb verb-id="SelectionCutPath" show-icons="true" /> + <separator/> + <verb verb-id="SelectionCombine" show-icons="true" /> + <verb verb-id="SelectionBreakApart" show-icons="true" /> + <separator/> + <verb verb-id="SelectionInset" show-icons="true" /> + <verb verb-id="SelectionOffset" show-icons="true" /> + <verb verb-id="SelectionDynOffset" show-icons="true" /> + <verb verb-id="SelectionLinkedOffset" show-icons="true" /> + <separator/> + <verb verb-id="SelectionSimplify" /> + <verb verb-id="SelectionReverse" /> + <separator/> + <verb verb-id="DialogLivePathEffect" /> + <verb verb-id="PasteLivePathEffect" /> + <verb verb-id="RemoveLivePathEffect" /> + </submenu> + <submenu name="_Text"> + <verb verb-id="DialogText" /> + <verb verb-id="DialogSVGFonts" /> + <verb verb-id="DialogGlyphs" /> + <separator/> + <verb verb-id="SelectionTextToPath" /> + <verb verb-id="SelectionTextFromPath" /> + <separator/> + <verb verb-id="ObjectFlowText" /> + <verb verb-id="ObjectUnFlowText" /> + <verb verb-id="ObjectFlowtextToText" /> + <separator/> + <verb verb-id="SelectionTextRemoveKerns" /> + <separator/> + <verb verb-id="DialogSpellcheck" /> <!-- depends on HAVE_ASPELL --> + </submenu> + <submenu name="Filter_s"> + <filters-list/> + <separator/> + <verb verb-id="DialogFilterEffects" /> + <verb verb-id="RemoveFilter" /> + </submenu> + <submenu name="Exte_nsions"> + <verb verb-id="EffectLast" /> + <verb verb-id="EffectLastPref" /> + <separator/> + <effects-list/> + </submenu> + <submenu name="_Help"> + <verb verb-id="HelpUrlManual" /> + <verb verb-id="HelpUrlKeys" /> + <verb verb-id="HelpUrlAskQuestion" /> + <submenu name="Tutorials"> + <verb verb-id="TutorialsBasic" /> + <verb verb-id="TutorialsShapes" /> + <verb verb-id="TutorialsAdvanced" /> + <verb verb-id="TutorialsTracing" /> + <verb verb-id="TutorialsTracingPixelArt" /> + <verb verb-id="TutorialsCalligraphy" /> + <verb verb-id="TutorialsInterpolate" /> + <verb verb-id="TutorialsDesign" /> + <verb verb-id="TutorialsTips" /> + </submenu> + <!--verb verb-id="org.inkscape.dialogs.extensioneditor" /--> + <verb verb-id="HelpUrlMan" /> + <verb verb-id="HelpUrlFAQ" /> + <verb verb-id="HelpUrlReleaseNotes" /> + <verb verb-id="HelpUrlReportBug" /> + <verb verb-id="HelpUrlSvg11Spec" /> + <!-- <verb verb-id="HelpUrlSvg2Spec" /> --> + <separator/> + <verb verb-id="HelpAboutMemory" /> + <verb verb-id="HelpAbout" show-icons="true"/> + <!--verb verb-id="ShowLicense" /--> + </submenu> + + <contextmenu id="canvas" show-icons="false" /> + <contextmenu id="layers" show-icons="false" /> + <contextmenu id="objects" show-icons="false" /> +</inkscape> diff --git a/share/ui/style.css b/share/ui/style.css new file mode 100644 index 0000000..af448ed --- /dev/null +++ b/share/ui/style.css @@ -0,0 +1,447 @@ +/* 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 */ + + +/* 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 + * ".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 + */ + +*:disabled image { + opacity: 0.4; +} + +.symbolic image { + -gtk-icon-style: symbolic; +} + +.regular image { + -gtk-icon-style: regular; +} + +.regular .symbolic image { + -gtk-icon-style: symbolic; +} + +.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; +} + +.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: 13px; +} + +/* +*to get system default colors +* with Gdk::RGBA success =_symbolic_error_color.get_stseparatole_context()->get_color(); +* _symbolic_error_color has one of this calsses 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; +} + +.inksmall { + font-size: 11px; +} + + +/* LPE Dialog add */ +#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:selected image, +#LPESelectorFlowBox flowboxchild:selected label { + color: @theme_selected_fg_color; + background-color: @theme_selected_bg_color; + background-image: image(@theme_selected_bg_color); +} + +#LPESelectorFlowBox *:selected #LPESelectorEffectFavTop, +#LPESelectorFlowBox *:selected:focus #LPESelectorEffectFavTop { + opacity: 0; +} + +#LPESelectorFlowBox .lpename { + font-size: 16px; + margin-bottom: 5px; +} + +#LPESelectorFlowBox .lpeinfo { + font-size: 16px; + 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.LPEPackMore flowboxchild label { +font-size:14px; +} + +#LPEDialogSelector.LPEPackMore #LPESelectorEffectInfoPop label{ +font-size:13px; +} + +#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; +} + +/* Selector and XML dialog */ +#SelectorsAndStyleDialog button { + padding: 4px; + min-height: 16px; + margin: 2px; + padding: 2px; +} + +#XMLAndAttributesDialog .toggle, +#SelectorsAndStyleDialog .toggle { + min-width: 18px; + padding-left: 6px; + padding-right: 6px; + padding-top: 0; + padding-bottom: 0; +} + +#XMLAndAttributesDialog .radio.image-button, +#SelectorsAndStyleDialog .radio.image-button { + margin: 0; + padding: 0px; + border-radius: 2px 0 0 2px; +} + +#XMLAndAttributesDialog .radio.image-button:last-child, +#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 treeview button { + min-height: 3px; + font-size: 1px; +} + +#InkRuler { + font-size: 7pt; +} + +/* The actual canvas (Inkscape's drawing area). */ +SPCanvas { + background-color: white; +} + +#TextFontFamilyAction_combobox { + -GtkComboBox-appears-as-list: true; +} + +#LockGuides, +#StickyZoom, +#CMS_Adjust { + padding: 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 { + background: @theme_bg_color; + border: 1px black; + border-radius: 3px; + padding: 0px; +} + +#InkSpinScale spinbutton { + border-color: #eee; + border-width: 0 0 0 0; + border-radius: 0 3px 3px 0; + box-shadow: none; + padding: 0 0 0 1px; + min-height: 10px; +} + + +/* Hide slider */ +#InkSpinScale slider { + background: none; + border: none; + outline: none; + min-width: 0px; + min-height: 0px; + padding: 0px; + margin: 0px; +} + +#InkSpinScale slider, +#InkSpinScale highlight { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +#InkSpinScale scale { + padding: 0px; +} + +#InkSpinScale trough { + min-height: 30px; +} + +#InkSpinScale box.active { + box-shadow: 0 0 0 1px rgb(74, 144, 217); +} + +#InkSpinScale spinbutton entry { + padding: 0; + outline-style: none; +} + +#UnicodeIconView { + font-size: 16px; +} + +/* 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; +} diff --git a/share/ui/toolbar-commands.ui b/share/ui/toolbar-commands.ui new file mode 100644 index 0000000..0b237be --- /dev/null +++ b/share/ui/toolbar-commands.ui @@ -0,0 +1,42 @@ +<ui> + <toolbar name='CommandsToolbar'> + <toolitem action='FileNew' /> + <toolitem action='FileOpen' /> + <toolitem action='FileSave' /> + <toolitem action='FilePrint' /> + <separator /> + <toolitem action='FileImport' /> + <toolitem action='DialogExport' /> + <separator /> + <toolitem action='EditUndo' /> + <toolitem action='EditRedo' /> + <separator /> + <toolitem action='EditCopy' /> + <toolitem action='EditCut' /> + <toolitem action='EditPaste' /> + <separator /> + <toolitem action='ZoomSelection' /> + <toolitem action='ZoomDrawing' /> + <toolitem action='ZoomPage' /> + <toolitem action='ZoomCenterPage' /> + <separator /> + <toolitem action='EditDuplicate' /> + <toolitem action='EditClone' /> + <toolitem action='EditUnlinkClone' /> + <separator /> + <toolitem action='SelectionGroup' /> + <toolitem action='SelectionUnGroup' /> + <separator /> + <toolitem action='DialogFillStroke' /> + <toolitem action='DialogText' /> + <toolitem action='DialogLayers' /> + <toolitem action='DialogXMLEditor' /> + <!-- + <toolitem action='DialogSelectors' /> + --> + <toolitem action='DialogAlignDistribute' /> + <separator /> + <toolitem action='DialogDocumentProperties' /> + <toolitem action='DialogPreferences' /> + </toolbar> +</ui> diff --git a/share/ui/toolbar-tool.ui b/share/ui/toolbar-tool.ui new file mode 100644 index 0000000..cb2d6b2 --- /dev/null +++ b/share/ui/toolbar-tool.ui @@ -0,0 +1,49 @@ +<ui> + <toolbar name='ToolToolbar'> + + <!-- Select and Edit --> + <toolitem action='ToolSelector' /> + <toolitem action='ToolNode' /> + +<separator /> + + <!-- Create predefined shapes --> + <toolitem action='ToolRect' /> + <toolitem action='ToolArc' /> + <toolitem action='ToolStar' /> + <toolitem action='Tool3DBox' /> + <toolitem action='ToolSpiral' /> + +<separator /> + + <!-- Create new paths and text --> + <toolitem action='ToolPen' /> + <toolitem action='ToolPencil' /> + <toolitem action='ToolCalligraphic' /> + <toolitem action='ToolText' /> + +<separator /> + + <!-- Edit color of objects --> + <toolitem action='ToolGradient' /> + <toolitem action='ToolMesh' /> + <toolitem action='ToolDropper' /> + <toolitem action='ToolPaintBucket' /> + +<separator /> + + <!-- Other tools to edit objects --> + <toolitem action='ToolTweak' /> + <toolitem action='ToolSpray' /> + <toolitem action='ToolEraser' /> + <toolitem action='ToolConnector' /> + <!--<toolitem action='ToolLPETool' />--> + +<separator /> + + <!-- Other tools that do not modify objects --> + <toolitem action='ToolZoom' /> + <toolitem action='ToolMeasure' /> + + </toolbar> +</ui> diff --git a/share/ui/toolbox.xml b/share/ui/toolbox.xml new file mode 100644 index 0000000..5399465 --- /dev/null +++ b/share/ui/toolbox.xml @@ -0,0 +1,13 @@ +<ui> + <popup name='ToolboxMenu'> + <menuitem action='Icons'/> + <menuitem action='Text'/> + <menuitem action='Both'/> + <menuitem action='BothHoriz'/> + <separator/> + <menuitem action='OrientHoriz'/> + <menuitem action='OrientVert'/> + <separator/> + <menuitem action='ShowArrow'/> + </popup> +</ui> 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/win32.css b/share/ui/win32.css new file mode 100644 index 0000000..0602d04 --- /dev/null +++ b/share/ui/win32.css @@ -0,0 +1,146 @@ +/* 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; +}
\ No newline at end of file |