From: Jürgen Spitzmüller Date: Mon, 4 Jul 2005 13:05:03 +0000 (+0000) Subject: fix bug 1870 (List of tables windows shows list of figures) X-Git-Tag: 1.6.10~14182 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=200435f2d9dfc0e9737841db8533bee504bbfcf0;p=features.git fix bug 1870 (List of tables windows shows list of figures) git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10125 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/ChangeLog b/src/ChangeLog index 747c2561d4..eb6a546816 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2005-07-04 Jürgen Spitzmüller + + * toc.[Ch]: new method getGuiName, which is used by the frontends + to set the toc combo (fixes bug 1870). Make TOC string translatable. + 2005-07-01 Jürgen Spitzmüller * dociterator.[Ch]: implement operator==(StableDocIterator const &, diff --git a/src/frontends/controllers/ChangeLog b/src/frontends/controllers/ChangeLog index ee072c0f12..aa550a4749 100644 --- a/src/frontends/controllers/ChangeLog +++ b/src/frontends/controllers/ChangeLog @@ -1,3 +1,8 @@ +2005-07-04 Jürgen Spitzmüller + + * ControlToc.[Ch]: new method getGuiName, which is used by the frontends + to set the toc combo (fixes bug 1870). + 2005-06-30 Jean-Marc Lasgouttes * ControlPrint.C (browse): diff --git a/src/frontends/controllers/ControlToc.C b/src/frontends/controllers/ControlToc.C index 8802de0df3..36d8d77795 100644 --- a/src/frontends/controllers/ControlToc.C +++ b/src/frontends/controllers/ControlToc.C @@ -38,6 +38,12 @@ vector const ControlToc::getTypes() const } +string const ControlToc::getGuiName() const +{ + return toc::getGuiName(params().getCmdName(), kernel().buffer()); +} + + toc::Toc const ControlToc::getContents(string const & type) const { toc::Toc empty_list; diff --git a/src/frontends/controllers/ControlToc.h b/src/frontends/controllers/ControlToc.h index 3285e38e26..bec48d93d1 100644 --- a/src/frontends/controllers/ControlToc.h +++ b/src/frontends/controllers/ControlToc.h @@ -33,6 +33,9 @@ public: /// Return the list of types available std::vector const getTypes() const; + /// Return the guiname from a given cmdName of the TOC param + std::string const getGuiName() const; + /// Given a type, returns the contents toc::Toc const getContents(std::string const & type) const; }; diff --git a/src/frontends/gtk/ChangeLog b/src/frontends/gtk/ChangeLog index c071866d90..afa45953d5 100644 --- a/src/frontends/gtk/ChangeLog +++ b/src/frontends/gtk/ChangeLog @@ -1,3 +1,8 @@ +2005-07-04 Jürgen Spitzmüller + + * GToc.C: consider gui name, not type, when trying to set the + toc combo (fixes bug 1870). + 2005-05-14 Michael Schmitt * Dialogs.C: dialog title "Index" => "Index Entry" diff --git a/src/frontends/gtk/GToc.C b/src/frontends/gtk/GToc.C index 0c7c77791e..949303af83 100644 --- a/src/frontends/gtk/GToc.C +++ b/src/frontends/gtk/GToc.C @@ -88,8 +88,7 @@ void GToc::update() void GToc::updateType() { changing_views_ = true; - string const targettype = - toc::getType(controller().params().getCmdName()); + string const targettype = controller().getGuiName(); typestore_->clear(); vector types = controller().getTypes(); diff --git a/src/frontends/qt2/ChangeLog b/src/frontends/qt2/ChangeLog index 6b3a9d7b8e..94737791f7 100644 --- a/src/frontends/qt2/ChangeLog +++ b/src/frontends/qt2/ChangeLog @@ -1,3 +1,8 @@ +2005-07-04 Jürgen Spitzmüller + + * QToc.C: consider gui name, not type, when trying to set the + toc combo (fixes bug 1870). + 2005-07-04 Jürgen Spitzmüller * QChanges.C: use bformat() for translatable strings. diff --git a/src/frontends/qt2/QToc.C b/src/frontends/qt2/QToc.C index d879e8eb2b..be70e5f757 100644 --- a/src/frontends/qt2/QToc.C +++ b/src/frontends/qt2/QToc.C @@ -56,14 +56,14 @@ void QToc::updateType() dialog_->typeCO->clear(); vector const & choice = controller().getTypes(); - string const & type = toc::getType(controller().params().getCmdName()); + string const & guiname = controller().getGuiName(); for (vector::const_iterator it = choice.begin(); it != choice.end(); ++it) { dialog_->typeCO->insertItem(toqstr(*it)); - if (*it == type) { + if (*it == guiname) { dialog_->typeCO->setCurrentItem(it - choice.begin()); - setTitle(type); + setTitle(guiname); } } } diff --git a/src/frontends/xforms/ChangeLog b/src/frontends/xforms/ChangeLog index 901081d366..c2a2f6e93b 100644 --- a/src/frontends/xforms/ChangeLog +++ b/src/frontends/xforms/ChangeLog @@ -1,3 +1,8 @@ +2005-07-04 Jürgen Spitzmüller + + * FormToc.C: consider gui name, not type, when trying to set the + toc combo (fixes bug 1870). + 2005-05-31 Angus Leeming * checkedwidgets.C (check): allow ':' characters in file names. data. diff --git a/src/frontends/xforms/FormToc.C b/src/frontends/xforms/FormToc.C index 62842e0342..ccc1e37dca 100644 --- a/src/frontends/xforms/FormToc.C +++ b/src/frontends/xforms/FormToc.C @@ -89,8 +89,8 @@ void FormToc::updateType() fl_addto_choice(dialog_->choice_toc_type, choice.c_str()); // And select the correct one - string const type = toc::getType(controller().params().getCmdName()); - fl_set_choice_text(dialog_->choice_toc_type, type.c_str()); + string const guiname = controller().getGuiName(); + fl_set_choice_text(dialog_->choice_toc_type, guiname.c_str()); } diff --git a/src/toc.C b/src/toc.C index 55616f2138..d207636526 100644 --- a/src/toc.C +++ b/src/toc.C @@ -15,7 +15,9 @@ #include "buffer.h" #include "bufferparams.h" +#include "FloatList.h" #include "funcrequest.h" +#include "gettext.h" #include "LyXAction.h" #include "paragraph.h" #include "pariterator.h" @@ -59,12 +61,23 @@ string const getType(string const & cmdName) { // special case if (cmdName == "tableofcontents") - return "TOC"; + return _("TOC"); else return cmdName; } +string const getGuiName(string const & cmdName, Buffer const & buffer) +{ + FloatList const & floats = + buffer.params().getLyXTextClass().floats(); + if (floats.typeExist(cmdName)) + return _(floats.getType(cmdName).name()); + else + return getType(cmdName); +} + + TocList const getTocList(Buffer const & buf) { TocList toclist; @@ -117,7 +130,7 @@ TocList const getTocList(Buffer const & buf) tocstring = pit->asString(buf, true); TocItem const item(pit->id(), toclevel - min_toclevel, tocstring); - toclist["TOC"].push_back(item); + toclist[_("TOC")].push_back(item); } } return toclist; diff --git a/src/toc.h b/src/toc.h index 9c83b32b77..75cdcbaadd 100644 --- a/src/toc.h +++ b/src/toc.h @@ -65,6 +65,9 @@ void asciiTocList(std::string const &, Buffer const &, std::ostream &); by ControlToc::getContents() */ std::string const getType(std::string const & cmdName); +/// Returns the guiname from a given CmdName +std::string const getGuiName(std::string const & cmdName, Buffer const &); + inline bool operator==(TocItem const & a, TocItem const & b) {