From: Richard Heck Date: Sun, 30 Oct 2011 20:07:46 +0000 (+0000) Subject: Backport fix for #7764: Sort the file lists under X-Git-Tag: 2.0.2~83 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=61e539a48893da7f6cbfac1a0a4380a6f5483d1b;p=features.git Backport fix for #7764: Sort the file lists under Document>Settings>Output. It turns out that we always want this list to be sorted when we get it, so we can sort it in BufferParams rather than in three different places. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_2_0_X@40102 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index 09b970b01a..0bb61a7bf9 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -2078,6 +2078,13 @@ bool BufferParams::isExportable(string const & format) const } +namespace { +bool formatSorter(Format const * lhs, Format const * rhs) { + return _(lhs->prettyname()) < _(rhs->prettyname()); +} +} + + vector BufferParams::exportableFormats(bool only_viewable) const { vector const backs = backends(); @@ -2094,6 +2101,7 @@ vector BufferParams::exportableFormats(bool only_viewable) const theConverters().getReachable(*it, only_viewable, false, excludes); result.insert(result.end(), r.begin(), r.end()); } + sort(result.begin(), result.end(), formatSorter); return result; } diff --git a/src/frontends/qt4/GuiSendto.cpp b/src/frontends/qt4/GuiSendto.cpp index 8bb8242a5b..4c9589c9a5 100644 --- a/src/frontends/qt4/GuiSendto.cpp +++ b/src/frontends/qt4/GuiSendto.cpp @@ -69,19 +69,10 @@ void GuiSendTo::changed_adaptor() } -namespace { -bool formatSorter(Format const * lhs, Format const * rhs) { - return _(lhs->prettyname()) < _(rhs->prettyname()); -} -} // end namespace - - void GuiSendTo::updateContents() { all_formats_ = buffer().params().exportableFormats(false); - sort(all_formats_.begin(), all_formats_.end(), formatSorter); - // Save the current selection if any Format const * current_format = 0; int const line = formatLW->currentRow(); diff --git a/src/frontends/qt4/Menus.cpp b/src/frontends/qt4/Menus.cpp index 6af599be58..6cc3195f3e 100644 --- a/src/frontends/qt4/Menus.cpp +++ b/src/frontends/qt4/Menus.cpp @@ -723,12 +723,6 @@ bool MenuDefinition::searchMenu(FuncRequest const & func, docstring_list & names } -bool compareFormat(Format const * p1, Format const * p2) -{ - return *p1 < *p2; -} - - QString limitStringLength(docstring const & str) { size_t const max_item_length = 45; @@ -1018,7 +1012,6 @@ void MenuDefinition::expandFormats(MenuItem::Kind kind, Buffer const * buf) formats = buf->params().exportableFormats(false); action = LFUN_BUFFER_EXPORT; } - sort(formats.begin(), formats.end(), &compareFormat); bool const view_update = (kind == MenuItem::ViewFormats || kind == MenuItem::UpdateFormats); diff --git a/status.20x b/status.20x index e7c334f443..1c0847a44a 100644 --- a/status.20x +++ b/status.20x @@ -231,6 +231,8 @@ What's new - Fix change of language of selected text with context menu (bug 7778). +- Sort formats under Document>Settings>Output (bug 7758). + * ADVANCED FIND AND REPLACE