Mercurial > hg > forks > geeqie
changeset 2301:dec8d9db5770
Fix #333 Renaming file extensions
https://github.com/BestImageViewer/geeqie/issues/333
The Preferences/Files tab has an additional checkbox:
Disable file extension checks
When checked, files can be renamed to a different extension with no
warning issued.
author | Colin Clark <cclark@mcb.net> |
---|---|
date | Thu, 28 Apr 2016 21:00:14 +0100 |
parents | 5256cfa521f6 |
children | e79b3d4a4e2f 00c55f9a4764 |
files | doc/docbook/GuideOptionsFiltering.xml src/filedata.c src/options.c src/options.h src/preferences.c src/rcfile.c |
diffstat | 6 files changed, 35 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/docbook/GuideOptionsFiltering.xml Thu Apr 28 19:41:15 2016 +0100 +++ b/doc/docbook/GuideOptionsFiltering.xml Thu Apr 28 21:00:14 2016 +0100 @@ -11,32 +11,37 @@ </title> <variablelist><varlistentry><term> Show hidden files or folders - </term><listitem><para/></listitem></varlistentry></variablelist> - <para> + </term><listitem><para> Enables the display of hidden files and folders, also known as dot files. - </para> + </para></listitem></varlistentry></variablelist> + <variablelist><varlistentry><term> - Show dot directory - </term><listitem><para/></listitem></varlistentry></variablelist> - <para> - Enables the display of the current directory as a dot in the directories views. It may be useful for some drag'n'drop operations. - </para> + Show parent folder + </term><listitem><para> + Enables the display of the parent folder as a double dot in the directories views. + </para></listitem></varlistentry></variablelist> + <variablelist><varlistentry><term> Case sensitive sort - </term><listitem><para/></listitem></varlistentry></variablelist> - <para> + </term><listitem><para> Files and folders are sorted such that upper case letters occur before lower case letters. - </para> - <para> + </para><para> Enabled result: A, B, C, a, b, c<?db2html element="br"?> Disabled result: A, a, B, b, C, c - </para> + </para></listitem></varlistentry></variablelist> + + <variablelist><varlistentry><term> + Disable file extension checks + </term><listitem><para> + During rename operations, allows files to be renamed to a different extension with no warning issued. + </para></listitem></varlistentry></variablelist> + <variablelist><varlistentry><term> Disable file filtering - </term><listitem><para/></listitem></varlistentry></variablelist> - <para> + </term><listitem><para> Enable this to allow Geeqie to list all files, even those that do not contain images. - </para> + </para></listitem></varlistentry></variablelist> + <para/></section><section id="Groupingsidecarextensions"><title> Grouping sidecar extensions </title>
--- a/src/filedata.c Thu Apr 28 19:41:15 2016 +0100 +++ b/src/filedata.c Thu Apr 28 21:00:14 2016 +0100 @@ -2346,11 +2346,13 @@ { const gchar *dest_ext = extension_from_path(fd->change->dest); if (!dest_ext) dest_ext = ""; - - if (g_ascii_strcasecmp(fd->extension, dest_ext) != 0) + if (!options->file_filter.disable_file_extension_checks) { - ret |= CHANGE_WARN_CHANGED_EXT; - DEBUG_1("Change checked: source and destination have different extensions: %s -> %s", fd->path, fd->change->dest); + if (g_ascii_strcasecmp(fd->extension, dest_ext) != 0) + { + ret |= CHANGE_WARN_CHANGED_EXT; + DEBUG_1("Change checked: source and destination have different extensions: %s -> %s", fd->path, fd->change->dest); + } } } else
--- a/src/options.c Thu Apr 28 19:41:15 2016 +0100 +++ b/src/options.c Thu Apr 28 21:00:14 2016 +0100 @@ -43,6 +43,7 @@ options->file_filter.show_dot_directory = FALSE; options->file_filter.show_hidden_files = FALSE; options->file_filter.show_parent_directory = TRUE; + options->file_filter.disable_file_extension_checks = FALSE; options->save_window_positions = TRUE; options->tools_restore_state = TRUE;
--- a/src/options.h Thu Apr 28 19:41:15 2016 +0100 +++ b/src/options.h Thu Apr 28 21:00:14 2016 +0100 @@ -91,6 +91,7 @@ gboolean show_hidden_files; gboolean show_parent_directory; gboolean show_dot_directory; + gboolean disable_file_extension_checks; gboolean disable; } file_filter;
--- a/src/preferences.c Thu Apr 28 19:41:15 2016 +0100 +++ b/src/preferences.c Thu Apr 28 21:00:14 2016 +0100 @@ -200,6 +200,7 @@ if (options->file_filter.show_parent_directory != c_options->file_filter.show_parent_directory) refresh = TRUE; if (options->file_filter.show_dot_directory != c_options->file_filter.show_dot_directory) refresh = TRUE; if (options->file_sort.case_sensitive != c_options->file_sort.case_sensitive) refresh = TRUE; + if (options->file_filter.disable_file_extension_checks != c_options->file_filter.disable_file_extension_checks) refresh = TRUE; if (options->file_filter.disable != c_options->file_filter.disable) refresh = TRUE; options->file_ops.confirm_delete = c_options->file_ops.confirm_delete; @@ -237,6 +238,7 @@ options->file_filter.show_hidden_files = c_options->file_filter.show_hidden_files; options->file_filter.show_parent_directory = c_options->file_filter.show_parent_directory; options->file_filter.show_dot_directory = c_options->file_filter.show_dot_directory; + options->file_filter.disable_file_extension_checks = c_options->file_filter.disable_file_extension_checks; options->file_sort.case_sensitive = c_options->file_sort.case_sensitive; options->file_filter.disable = c_options->file_filter.disable; @@ -1508,6 +1510,8 @@ options->file_filter.show_parent_directory, &c_options->file_filter.show_parent_directory); pref_checkbox_new_int(group, _("Case sensitive sort"), options->file_sort.case_sensitive, &c_options->file_sort.case_sensitive); + pref_checkbox_new_int(group, _("Disable file extension checks"), + options->file_filter.disable_file_extension_checks, &c_options->file_filter.disable_file_extension_checks); ct_button = pref_checkbox_new_int(group, _("Disable File Filtering"), options->file_filter.disable, &c_options->file_filter.disable);
--- a/src/rcfile.c Thu Apr 28 19:41:15 2016 +0100 +++ b/src/rcfile.c Thu Apr 28 21:00:14 2016 +0100 @@ -366,6 +366,7 @@ WRITE_NL(); WRITE_BOOL(*options, file_filter.show_hidden_files); WRITE_NL(); WRITE_BOOL(*options, file_filter.show_parent_directory); WRITE_NL(); WRITE_BOOL(*options, file_filter.show_dot_directory); + WRITE_NL(); WRITE_BOOL(*options, file_filter.disable_file_extension_checks); WRITE_NL(); WRITE_BOOL(*options, file_filter.disable); WRITE_SEPARATOR(); @@ -625,6 +626,7 @@ if (READ_BOOL(*options, file_filter.show_hidden_files)) continue; if (READ_BOOL(*options, file_filter.show_parent_directory)) continue; if (READ_BOOL(*options, file_filter.show_dot_directory)) continue; + if (READ_BOOL(*options, file_filter.disable_file_extension_checks)) continue; if (READ_BOOL(*options, file_filter.disable)) continue; if (READ_CHAR(*options, sidecar.ext)) continue;