<para>Save all marks that have been set. Note that marks that are linked to a keyword will always be saved irrespective of this setting.</para>\r
</listitem>\r
</varlistentry>\r
+ <varlistentry>\r
+ <term>\r
+ <guilabel>Use "With Rename" as default for Copy/Move dialogs</guilabel>\r
+ </term>\r
+ <listitem>\r
+ <para>Move the "With Rename" button to the default position.</para>\r
+ </listitem>\r
+ </varlistentry>\r
+ <varlistentry>\r
+ <term>\r
+ <guilabel>Open Collections on top</guilabel>\r
+ </term>\r
+ <listitem>\r
+ <para>Open collection windows with "Always on Top" set.</para>\r
+ </listitem>\r
+ </varlistentry>\r
<varlistentry>\r
<term>\r
<guilabel>Recent folder list maximum size</guilabel>\r
<listitem>\r
This may be used to define sets of file types, for use in the\r
<emphasis>Grouping</emphasis>\r
- function described above. The drop-down list has 4 entries:\r
+ function described above. The drop-down list has 6 entries:\r
<itemizedlist>\r
<listitem>Unknown</listitem>\r
<listitem>Image</listitem>\r
<listitem>RAW Image</listitem>\r
<listitem>Metadata</listitem>\r
+ <listitem>Video</listitem>\r
+ <listitem>Collection</listitem>\r
</itemizedlist>\r
</listitem>\r
</varlistentry>\r
gtk_window_set_geometry_hints(GTK_WINDOW(cw->window), NULL, &geometry,
GDK_HINT_MIN_SIZE | GDK_HINT_BASE_SIZE);
+ if (options->collections_on_top)
+ {
+ gtk_window_set_keep_above(GTK_WINDOW(cw->window), TRUE);
+ }
if (options->save_window_positions && path && collection_load_only_geometry(cw->cd, path))
{
/* non-image files that might be desirable to show */
filter_add_if_missing("xmp", "XMP sidecar", ".xmp", FORMAT_CLASS_META, TRUE, FALSE, TRUE);
filter_add_if_missing("meta", "GQview legacy metadata", GQ_CACHE_EXT_METADATA, FORMAT_CLASS_META, TRUE, FALSE, TRUE);
- filter_add_if_missing("gqv", GQ_APPNAME " image collection", GQ_COLLECTION_EXT, FORMAT_CLASS_META, FALSE, FALSE, TRUE);
+ filter_add_if_missing("gqv", GQ_APPNAME " image collection", GQ_COLLECTION_EXT, FORMAT_CLASS_COLLECTION, FALSE, FALSE, TRUE);
filter_add_if_missing("ufraw", "UFRaw ID file", ".ufraw", FORMAT_CLASS_META, FALSE, FALSE, TRUE);
filter_add_if_missing("pto", "Panorama script file", ".pto", FORMAT_CLASS_META, FALSE, FALSE, TRUE);
if (filter_file_class(name, FORMAT_CLASS_RAWIMAGE)) return FORMAT_CLASS_RAWIMAGE;
if (filter_file_class(name, FORMAT_CLASS_META)) return FORMAT_CLASS_META;
if (filter_file_class(name, FORMAT_CLASS_VIDEO)) return FORMAT_CLASS_VIDEO;
+ if (filter_file_class(name, FORMAT_CLASS_COLLECTION)) return FORMAT_CLASS_COLLECTION;
return FORMAT_CLASS_UNKNOWN;
}
sheet_metadata.png \
sheet_unknown.png \
sheet_video.png \
+ collection.png \
icon_float.png \
icon_thumb.png \
icon_book.png \
icon_metadata $(srcdir)/sheet_metadata.png \
icon_unknown $(srcdir)/sheet_unknown.png \
icon_video $(srcdir)/sheet_video.png \
+ icon_collection $(srcdir)/collection.png \
icon_book $(srcdir)/icon_book.png \
icon_config $(srcdir)/icon_config.png \
icon_tools $(srcdir)/icon_tools.png \
break;
case FORMAT_CLASS_VIDEO:
pixbuf = pixbuf_inline(PIXBUF_INLINE_VIDEO);
+ case FORMAT_CLASS_COLLECTION:
+ pixbuf = pixbuf_inline(PIXBUF_INLINE_COLLECTION);
break;
default:
pixbuf = pixbuf_inline(PIXBUF_INLINE_BROKEN);
options->marks_save = TRUE;
options->with_rename = FALSE;
+ options->collections_on_top = FALSE;
memset(&options->image.border_color, 0, sizeof(options->image.border_color));
memset(&options->image.alpha_color_1, 0, sizeof(options->image.alpha_color_1));
gchar *marks_tooltips[FILEDATA_MARKS_SIZE];
gboolean with_rename;
+ gboolean collections_on_top;
gchar *help_search_engine;
{ PIXBUF_INLINE_METADATA, icon_metadata },
{ PIXBUF_INLINE_UNKNOWN, icon_unknown },
{ PIXBUF_INLINE_VIDEO, icon_video },
+ { PIXBUF_INLINE_COLLECTION, icon_collection },
{ PIXBUF_INLINE_ICON, gqview_icon },
{ PIXBUF_INLINE_LOGO, geeqie_logo },
{ PIXBUF_INLINE_ICON_FLOAT, icon_float },
case FORMAT_CLASS_VIDEO:
pixbuf = pixbuf_inline(PIXBUF_INLINE_VIDEO);
break;
+ case FORMAT_CLASS_COLLECTION:
+ pixbuf = pixbuf_inline(PIXBUF_INLINE_COLLECTION);
+ break;
default:
pixbuf = pixbuf_inline(PIXBUF_INLINE_BROKEN);
}
#define PIXBUF_INLINE_METADATA "metadata"
#define PIXBUF_INLINE_UNKNOWN "unknown"
#define PIXBUF_INLINE_VIDEO "video"
+#define PIXBUF_INLINE_COLLECTION "collection"
#define PIXBUF_INLINE_ICON "icon"
#define PIXBUF_INLINE_LOGO "logo"
N_("Image"),
N_("RAW Image"),
N_("Metadata"),
- N_("Video")
+ N_("Video"),
+ N_("Collection")
};
/* config memory values */
options->marks_save = c_options->marks_save;
options->with_rename = c_options->with_rename;
+ options->collections_on_top = c_options->collections_on_top;
config_entry_to_option(help_search_engine_entry, &options->help_search_engine, NULL);
options->read_metadata_in_idle = c_options->read_metadata_in_idle;
GtkWidget *table;
GtkWidget *marks;
GtkWidget *with_rename;
+ GtkWidget *collections_on_top;
vbox = scrolled_notebook_page(notebook, _("Behavior"));
options->with_rename, &c_options->with_rename);
gtk_widget_set_tooltip_text(with_rename,"Change the default button for Copy/Move dialogs");
+ collections_on_top = pref_checkbox_new_int(group, _("Open collections on top"),
+ options->collections_on_top, &c_options->collections_on_top);
+ gtk_widget_set_tooltip_text(collections_on_top,"Open collections window on top");
+
pref_spin_new_int(group, _("Recent folder list maximum size"), NULL,
1, 50, 1, options->open_recent_list_maxsize, &c_options->open_recent_list_maxsize);
WRITE_NL(); WRITE_CHAR(*options, help_search_engine);
WRITE_NL(); WRITE_BOOL(*options, with_rename);
+ WRITE_NL(); WRITE_BOOL(*options, collections_on_top);
/* File operations Options */
WRITE_NL(); WRITE_BOOL(*options, file_ops.enable_in_place_rename);
if (READ_BOOL(*options, marks_save)) continue;
if (READ_CHAR(*options, help_search_engine)) continue;
+ if (READ_BOOL(*options, collections_on_top)) continue;
+
/* Properties dialog options */
if (READ_CHAR(*options, properties.tabs_order)) continue;
FORMAT_CLASS_RAWIMAGE,
FORMAT_CLASS_META,
FORMAT_CLASS_VIDEO,
+ FORMAT_CLASS_COLLECTION,
FILE_FORMAT_CLASSES
} FileFormatClass;
if (bevent->type == GDK_2BUTTON_PRESS && vf->layout)
{
- vficon_selection_remove(vf, VFICON(vf)->click_fd, SELECTION_PRELIGHT, &iter);
- layout_image_full_screen_start(vf->layout);
+ if (VFICON(vf)->click_fd->format_class == FORMAT_CLASS_COLLECTION)
+ {
+ collection_window_new(VFICON(vf)->click_fd->path);
+ }
+ else
+ {
+ vficon_selection_remove(vf, VFICON(vf)->click_fd, SELECTION_PRELIGHT, &iter);
+ layout_image_full_screen_start(vf->layout);
+ }
}
break;
case MOUSE_BUTTON_RIGHT:
#include "bar.h"
#include "cache_maint.h"
+#include "collect.h"
#include "dnd.h"
#include "editors.h"
#include "img-view.h"
#include "uri_utils.h"
#include "view_file.h"
+
#include <gdk/gdkkeysyms.h> /* for keyboard values */
/* Index to tree store */
if (bevent->button == MOUSE_BUTTON_LEFT && bevent->type == GDK_2BUTTON_PRESS)
{
- if (vf->layout) layout_image_full_screen_start(vf->layout);
+ if (VFLIST(vf)->click_fd->format_class == FORMAT_CLASS_COLLECTION)
+ {
+ collection_window_new(VFLIST(vf)->click_fd->path);
+ }
+ else
+ {
+ if (vf->layout) layout_image_full_screen_start(vf->layout);
+ }
}
return FALSE;
<dd>
<p class="para block block-first">Save all marks that have been set. Note that marks that are linked to a keyword will always be saved irrespective of this setting.</p>
</dd>
+<dt class="term">
+ <span class="guilabel">Use "With Rename" as default for Copy/Move dialogs</span>
+ </dt>
+<dd>
+ <p class="para block block-first">Move the "With Rename" button to the default position.</p>
+ </dd>
+<dt class="term">
+ <span class="guilabel">Open Collections on top</span>
+ </dt>
+<dd>
+ <p class="para block block-first">Open collection windows with "Always on Top" set.</p>
+ </dd>
<dt class="term">
<span class="guilabel">Recent folder list maximum size</span>
</dt>
<dd>
This may be used to define sets of file types, for use in the
<span class="emphasis">Grouping</span>
- function described above. The drop-down list has 4 entries:
+ function described above. The drop-down list has 6 entries:
<div class="block list itemizedlist"><ul class="itemizedlist">
<li class="li-first">Unknown</li>
<li>Image</li>
<li>RAW Image</li>
<li>Metadata</li>
+<li>Video</li>
+<li>Collection</li>
</ul></div>
</dd>
<dt class="term">