From 2f33eaa286c3c345f097e1a15eb755180cbb088a Mon Sep 17 00:00:00 2001 From: =?utf8?q?Lars=20Gullik=20Bj=C3=B8nnes?= Date: Wed, 7 Jan 2004 17:57:47 +0000 Subject: [PATCH] Make some functors adaptable and related small stuff. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8324 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/ChangeLog | 6 ++++++ src/CutAndPaste.C | 4 ++-- src/ShareContainer.h | 4 ++-- src/frontends/controllers/ChangeLog | 11 +++++++++-- src/frontends/controllers/ControlMath.C | 6 +++--- src/frontends/controllers/ControlSendto.C | 8 +------- src/frontends/xforms/ChangeLog | 8 +++++++- src/frontends/xforms/FormFiledialog.C | 4 ++-- src/frontends/xforms/FormForks.C | 4 ++-- src/graphics/ChangeLog | 4 ++++ src/graphics/GraphicsTypes.C | 4 +++- 11 files changed, 41 insertions(+), 22 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index f4a2d8453c..dcbafa8f0a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2004-01-07 Lars Gullik Bjonnes + + * ShareContainer.h: make isEqual and isUnique adaptable + + * CutAndPaste.C: make resetOwnerAndChanges adaptable + 2004-01-07 Angus Leeming * LyXAction.C: diff --git a/src/CutAndPaste.C b/src/CutAndPaste.C index 23d0765ae5..522b7d31ef 100644 --- a/src/CutAndPaste.C +++ b/src/CutAndPaste.C @@ -165,8 +165,8 @@ PitPosPair CutAndPaste::eraseSelection(BufferParams const & params, namespace { -struct resetOwnerAndChanges { - void operator()(Paragraph & p) { +struct resetOwnerAndChanges : public std::unary_function { + void operator()(Paragraph & p) const { p.cleanChanges(); p.setInsetOwner(0); } diff --git a/src/ShareContainer.h b/src/ShareContainer.h index d37dc3580d..fc44c3bfb5 100644 --- a/src/ShareContainer.h +++ b/src/ShareContainer.h @@ -62,7 +62,7 @@ public: } private: /// A functor returning true if the elements are equal. - struct isEqual { + struct isEqual : public std::unary_function { isEqual(Share const & s) : p_(s) {} bool operator()(value_type const & p1) const { return *p1.get() == p_; @@ -71,7 +71,7 @@ private: Share const & p_; }; /// A functor returning true if the element is unique. - struct isUnique { + struct isUnique : public std::unary_function { bool operator()(value_type const & p) const { return p.unique(); } diff --git a/src/frontends/controllers/ChangeLog b/src/frontends/controllers/ChangeLog index 80a4f00249..fc68a40df0 100644 --- a/src/frontends/controllers/ChangeLog +++ b/src/frontends/controllers/ChangeLog @@ -1,3 +1,10 @@ +2004-01-07 Lars Gullik Bjonnes + + * ControlSendto.C (allFormats): use the unique-erase idom and + simplify some code a bit. + + * ControlMath.C: make CompareKey adaptable + 2004-01-07 Angus Leeming * ControlSearch.C: @@ -55,7 +62,7 @@ (readBB): attempt to read the BoundingBox from the graphics file. If that fails, try the Graphics Cache. (all_origins, origin_gui_str): helpers for the frontends. - + 2003-12-01 Jürgen Spitzmüller * ControlVSpace.C: enable the buttons for new insets. @@ -89,7 +96,7 @@ 2003-11-04 Alfredo Braunstein - * ControlSpellchecker.[Ch] (nextWord, check): rewrite of the text + * ControlSpellchecker.[Ch] (nextWord, check): rewrite of the text handling parts 2003-10-27 Juergen Spitzmueller diff --git a/src/frontends/controllers/ControlMath.C b/src/frontends/controllers/ControlMath.C index dccfdce253..fa848a34f8 100644 --- a/src/frontends/controllers/ControlMath.C +++ b/src/frontends/controllers/ControlMath.C @@ -288,10 +288,10 @@ bool operator<(XPMmap const & lhs, XPMmap const & rhs) } -struct CompareKey { +struct CompareKey : public std::unary_function { CompareKey(string const & name) : name_(name) {} - bool operator()(XPMmap const & other) { - return compare(other.key, name_.c_str()) == 0; + bool operator()(XPMmap const & other) const { + return other.key == name_; } private: string const name_; diff --git a/src/frontends/controllers/ControlSendto.C b/src/frontends/controllers/ControlSendto.C index b9ea5f9ee2..7f53533d2e 100644 --- a/src/frontends/controllers/ControlSendto.C +++ b/src/frontends/controllers/ControlSendto.C @@ -85,13 +85,7 @@ vector const ControlSendto::allFormats() const // Remove repeated formats. std::sort(to.begin(), to.end()); - - vector::iterator to_begin = to.begin(); - vector::iterator to_end = to.end(); - vector::iterator to_it = - std::unique(to_begin, to_end); - if (to_it != to_end) - to.erase(to_it, to_end); + to.erase(std::unique(to.begin(), to.end()), to.end()); return to; } diff --git a/src/frontends/xforms/ChangeLog b/src/frontends/xforms/ChangeLog index 39c431c1a3..150ca6c2da 100644 --- a/src/frontends/xforms/ChangeLog +++ b/src/frontends/xforms/ChangeLog @@ -1,3 +1,9 @@ +2004-01-07 Lars Gullik Bjonnes + + * FormForks.C: make FindPID adaptable and constify operator() + + * FormFiledialog.C: make comp_direntry adaptable + 2004-01-05 Angus Leeming * FormFiledialog.C (glob2regex, globMatch): removed. @@ -159,7 +165,7 @@ * forms/form_maths_panel.fd (label): replace label "Greek" by "abg" for alpha beta gamma. - * forms/form_tabular.fd (label): + * forms/form_tabular.fd (label): * FormDocument.C (build): remove use of latin1 in some translatable strings. This confuses gettext. diff --git a/src/frontends/xforms/FormFiledialog.C b/src/frontends/xforms/FormFiledialog.C index 4c7b744a58..7ae6fc843b 100644 --- a/src/frontends/xforms/FormFiledialog.C +++ b/src/frontends/xforms/FormFiledialog.C @@ -172,7 +172,7 @@ UserCache lyxUserCache; GroupCache lyxGroupCache; // compares two LyXDirEntry objects content (used for sort) -class comp_direntry { +class comp_direntry : public std::binary_function { public: bool operator()(DirEntry const & r1, DirEntry const & r2) const { @@ -241,7 +241,7 @@ void FileDialog::Private::Reread() vector const glob_matches = lyx::support::expand_globs(mask_, directory_); - + time_t curTime = time(0); rewinddir(dir); while (dirent * entry = readdir(dir)) { diff --git a/src/frontends/xforms/FormForks.C b/src/frontends/xforms/FormForks.C index b0a23bf87f..83d3392def 100644 --- a/src/frontends/xforms/FormForks.C +++ b/src/frontends/xforms/FormForks.C @@ -250,10 +250,10 @@ ButtonPolicy::SMInput FormForks::input_browser_children() namespace { -class FindPID { +class FindPID : public std::unary_function { public: FindPID(string const & pid) : pid_(pid) {} - bool operator()(string const & line) + bool operator()(string const & line) const { if (line.empty()) return false; diff --git a/src/graphics/ChangeLog b/src/graphics/ChangeLog index af26889354..773d00f63f 100644 --- a/src/graphics/ChangeLog +++ b/src/graphics/ChangeLog @@ -1,3 +1,7 @@ +2004-01-07 Lars Gullik Bjonnes + + * GraphicsTypes.C: include + 2003-11-20 Lars Gullik Bjonnes * Previews.C: include paragraph.h diff --git a/src/graphics/GraphicsTypes.C b/src/graphics/GraphicsTypes.C index 82ff4cd7f7..f33da586ea 100644 --- a/src/graphics/GraphicsTypes.C +++ b/src/graphics/GraphicsTypes.C @@ -12,6 +12,8 @@ #include "graphics/GraphicsTypes.h" +#include + using std::string; @@ -36,7 +38,7 @@ Translator const initTranslator() } // namespace anon -Translator const & displayTranslator() +Translator const & displayTranslator() { static Translator const translator = initTranslator(); -- 2.39.2