[LyX/master] Centralize use of "all files" wildcard in dialogs so it's consistent.

Pavel Sanda sanda at lyx.org
Fri Apr 28 18:54:11 UTC 2023


commit c6a190d48024346f1de0651ab605bb7e9a3d19a7
Author: Pavel Sanda <sanda at lyx.org>
Date:   Fri Apr 28 21:59:37 2023 +0200

    Centralize use of "all files" wildcard in dialogs so it's consistent.
---
 src/frontends/qt/GuiView.cpp    |    4 ++--
 src/frontends/qt/qt_helpers.cpp |   18 +++++++++++-------
 src/frontends/qt/qt_helpers.h   |    2 ++
 3 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/src/frontends/qt/GuiView.cpp b/src/frontends/qt/GuiView.cpp
index d7de2a1..581cd31 100644
--- a/src/frontends/qt/GuiView.cpp
+++ b/src/frontends/qt/GuiView.cpp
@@ -2831,7 +2831,7 @@ void GuiView::openDocuments(string const & fname, int origin)
 		QStringList const filter({
 				qt_("LyX Documents (*.lyx)"),
 				qt_("LyX Document Backups (*.lyx~)"),
-				qt_("All Files (*.*)")
+				qt_("All Files") + " " + wildcardAllFiles()
 		});
 		FileDialog::Results results =
 			dlg.openMulti(toqstr(initpath), filter);
@@ -4581,7 +4581,7 @@ void GuiView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
 				FileDialog dlg(qt_("Select file to insert"));
 
 				FileDialog::Result result = dlg.open(toqstr(bv->buffer().filePath()),
-					QStringList(qt_("All Files (*)")));
+					QStringList(qt_("All Files")+ " " + wildcardAllFiles()));
 
 				if (result.first == FileDialog::Later || result.second.isEmpty()) {
 					dr.setMessage(_("Canceled."));
diff --git a/src/frontends/qt/qt_helpers.cpp b/src/frontends/qt/qt_helpers.cpp
index 6cd8e01..ed2edec 100644
--- a/src/frontends/qt/qt_helpers.cpp
+++ b/src/frontends/qt/qt_helpers.cpp
@@ -601,18 +601,12 @@ struct FileFilterList
 	std::vector<Filter> filters_;
 };
 
-
 FileFilterList::FileFilterList(docstring const & qt_style_filter)
 {
 	// FIXME UNICODE
 	string const filter = to_utf8(qt_style_filter)
 		+ (qt_style_filter.empty() ? string() : ";;")
-		+ to_utf8(_("All Files "))
-#if defined(_WIN32)
-		+ ("(*.*)");
-#else
-		+ ("(*)");
-#endif
+		+ to_utf8(_("All Files")) + " " + fromqstr(wildcardAllFiles());
 
 	// Split data such as "TeX documents (*.tex);;LyX Documents (*.lyx)"
 	// into individual filters.
@@ -657,6 +651,16 @@ void FileFilterList::parse_filter(string const & filter)
 }
 
 
+QString wildcardAllFiles()
+{
+#if defined(_WIN32)
+		return "(*.*)";
+#else
+		return "(*)";
+#endif
+}
+
+
 /** \returns the equivalent of the string passed in
  *  although any brace expressions are expanded.
  *  (E.g. "*.{png,jpg}" -> "*.png *.jpg")
diff --git a/src/frontends/qt/qt_helpers.h b/src/frontends/qt/qt_helpers.h
index 77c14b8..6cad775 100644
--- a/src/frontends/qt/qt_helpers.h
+++ b/src/frontends/qt/qt_helpers.h
@@ -184,6 +184,8 @@ QString internalPath(QString const &);
 QString onlyFileName(QString const & str);
 QString onlyPath(QString const & str);
 QStringList fileFilters(QString const & description);
+/// all files wildcard for filter in qt dialogs (crossplatform)
+QString wildcardAllFiles();
 
 /// Remove the extension from \p name
 QString removeExtension(QString const & name);


More information about the lyx-cvs mailing list