[gthumb] rename: show the template entry help in a popover
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb] rename: show the template entry help in a popover
- Date: Sat, 19 Jun 2021 18:10:32 +0000 (UTC)
commit 7c8653590d89fa870f43277d07aff541a6b4c333
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sat May 8 18:07:28 2021 +0200
rename: show the template entry help in a popover
extensions/rename_series/data/ui/rename-series.ui | 705 ++++++++++------------
extensions/rename_series/dlg-rename-series.c | 9 +-
2 files changed, 330 insertions(+), 384 deletions(-)
---
diff --git a/extensions/rename_series/data/ui/rename-series.ui
b/extensions/rename_series/data/ui/rename-series.ui
index 4aacefa6..08d778f8 100644
--- a/extensions/rename_series/data/ui/rename-series.ui
+++ b/extensions/rename_series/data/ui/rename-series.ui
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<interface>
- <requires lib="gtk+" version="3.12"/>
+ <requires lib="gtk+" version="3.16"/>
<object class="GtkAdjustment" id="start_at_adjustment">
<property name="upper">1000000000</property>
<property name="value">1</property>
@@ -15,7 +15,7 @@
<property name="orientation">vertical</property>
<property name="spacing">12</property>
<child>
- <!-- n-columns=3 n-rows=4 -->
+ <!-- n-columns=2 n-rows=4 -->
<object class="GtkGrid" id="options_table">
<property name="visible">True</property>
<property name="can-focus">False</property>
@@ -61,369 +61,6 @@
<property name="top-attach">3</property>
</packing>
</child>
- <child>
- <object class="GtkBox" id="vbox2">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hexpand">True</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkBox" id="hbox1">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkEntry" id="template_entry">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="invisible-char">●</property>
- <property name="activates-default">True</property>
- <property name="secondary-icon-name">help-browser-symbolic</property>
- <property name="secondary-icon-tooltip-text">Help</property>
- <property name="secondary-icon-tooltip-markup" translatable="yes">Help</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="edit_template_button">
- <property name="use-action-appearance">False</property>
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="tooltip-text" translatable="yes">Edit template</property>
- <child>
- <object class="GtkImage" id="image2">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">edit-symbolic</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="GtkButton" id="revert_template_button">
- <property name="use-action-appearance">False</property>
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="tooltip-text" translatable="yes">Revert to the last used
template</property>
- <child>
- <object class="GtkImage" id="image1">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">edit-undo-symbolic</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <!-- n-columns=3 n-rows=8 -->
- <object class="GtkGrid" id="template_help_table">
- <property name="can-focus">False</property>
- <property name="row-spacing">6</property>
- <property name="column-spacing">12</property>
- <child>
- <object class="GtkLabel" id="label14">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">Special code</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label3">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label">#</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label2">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label">%F</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">2</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label6">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label">%E</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">3</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label18">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label">%N</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">4</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label4">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes" comments="translate only the text in the curly
brackets">%M{ format }</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">5</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label12">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes" comments="translate only the text in the curly
brackets">%D{ format }</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">6</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label16">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes" comments="translate only the text in the curly
brackets">%A{ identifier }</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">0</property>
- <property name="top-attach">7</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label15">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">Description</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label9">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">New enumerator digit</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label10">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">The original filename</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">2</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label11">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">The original extension</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">3</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label19">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">The original enumerator</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">4</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label8">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">The modification date</property>
- <property name="wrap">True</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">5</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label13">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">The digitalization date</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">6</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label17">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">A file attribute</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="size" value="8000"/>
- </attributes>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">7</property>
- </packing>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="left-attach">1</property>
- <property name="top-attach">0</property>
- </packing>
- </child>
<child>
<object class="GtkBox" id="hbox2">
<property name="visible">True</property>
@@ -476,7 +113,6 @@
<property name="can-focus">True</property>
<property name="receives-default">False</property>
<property name="use-underline">True</property>
- <property name="xalign">0</property>
<property name="draw-indicator">True</property>
</object>
<packing>
@@ -541,16 +177,74 @@
</packing>
</child>
<child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
+ <object class="GtkBox" id="hbox1">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkEntry" id="template_entry">
+ <property name="visible">True</property>
+ <property name="can-focus">True</property>
+ <property name="invisible-char">●</property>
+ <property name="activates-default">True</property>
+ <property name="secondary-icon-name">help-browser-symbolic</property>
+ <property name="secondary-icon-tooltip-text">Help</property>
+ <property name="secondary-icon-tooltip-markup" translatable="yes">Help</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="edit_template_button">
+ <property name="use-action-appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can-focus">True</property>
+ <property name="receives-default">True</property>
+ <property name="tooltip-text" translatable="yes">Edit template</property>
+ <child>
+ <object class="GtkImage" id="image2">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="icon-name">edit-symbolic</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="GtkButton" id="revert_template_button">
+ <property name="use-action-appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can-focus">True</property>
+ <property name="receives-default">True</property>
+ <property name="tooltip-text" translatable="yes">Revert to the last used template</property>
+ <child>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="icon-name">edit-undo-symbolic</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">0</property>
+ </packing>
</child>
</object>
<packing>
@@ -628,4 +322,263 @@
<widget name="template_label"/>
</widgets>
</object>
+ <object class="GtkPopover" id="template_help_popover">
+ <property name="can-focus">False</property>
+ <property name="relative-to">template_entry</property>
+ <property name="position">bottom</property>
+ <child>
+ <!-- n-columns=2 n-rows=8 -->
+ <object class="GtkGrid" id="template_help_table">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="margin-start">15</property>
+ <property name="margin-end">15</property>
+ <property name="margin-top">10</property>
+ <property name="margin-bottom">10</property>
+ <property name="row-spacing">6</property>
+ <property name="column-spacing">12</property>
+ <child>
+ <object class="GtkLabel" id="label14">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">Special code</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label">#</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label">%F</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label">%E</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label18">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label">%N</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">4</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label4">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes" comments="translate only the text in the curly
brackets">%M{ format }</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">5</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label12">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes" comments="translate only the text in the curly
brackets">%D{ format }</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">6</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label16">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes" comments="translate only the text in the curly
brackets">%A{ identifier }</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">0</property>
+ <property name="top-attach">7</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label15">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">Description</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label9">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">New enumerator digit</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label10">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">The original filename</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label11">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">The original extension</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label19">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">The original enumerator</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">4</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label8">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">The modification date</property>
+ <property name="wrap">True</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">5</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label13">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">The digitalization date</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">6</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label17">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">A file attribute</property>
+ <property name="xalign">0</property>
+ <attributes>
+ <attribute name="size" value="12000"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="left-attach">1</property>
+ <property name="top-attach">7</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
</interface>
diff --git a/extensions/rename_series/dlg-rename-series.c b/extensions/rename_series/dlg-rename-series.c
index 26863d89..3dea20a2 100644
--- a/extensions/rename_series/dlg-rename-series.c
+++ b/extensions/rename_series/dlg-rename-series.c
@@ -81,7 +81,6 @@ typedef struct {
GtkWidget *change_case_combobox;
GtkListStore *list_store;
GtkListStore *sort_model;
- gboolean help_visible;
char *required_attributes;
guint update_id;
gboolean template_changed;
@@ -726,13 +725,7 @@ template_entry_icon_release_cb (GtkEntry *entry,
gpointer user_data)
{
DialogData *data = user_data;
-
- data->help_visible = ! data->help_visible;
-
- if (data->help_visible)
- gtk_widget_show (GET_WIDGET("template_help_table"));
- else
- gtk_widget_hide (GET_WIDGET("template_help_table"));
+ gtk_popover_popup (GTK_POPOVER (GET_WIDGET("template_help_popover")));
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]