X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBranchList.h;h=534fb87f32c30b210da582591d0302d4d2c9dd37;hb=294e4884ee29585d311177406cd31499e6d81877;hp=08a719a1c7cbb0c92076839cf330680eebc25478;hpb=5fdd2daa9c30c70a6c049376bd293addb05b5aad;p=lyx.git diff --git a/src/BranchList.h b/src/BranchList.h index 08a719a1c7..534fb87f32 100644 --- a/src/BranchList.h +++ b/src/BranchList.h @@ -3,11 +3,25 @@ * \file BranchList.h * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. + * * \author Martin Vermeer * * Full author contact details are available in file CREDITS. - * - * + */ + +#ifndef BRANCHLIST_H +#define BRANCHLIST_H + +#include "ColorCode.h" + +#include "support/docstring.h" + +#include + + +namespace lyx { + +/** * \class Branch * * A class describing a 'branch', i.e., a named alternative for @@ -15,30 +29,17 @@ * other parts. * * A branch has a name, can either be selected or not, and uses a - * user-specifyable background colour. All these can be set and + * user-specifiable background colour. All these can be set and * queried. * * \class BranchList * * A class containing a vector of all defined branches within a - * document. Has methods for selecting or deselecting branches by + * document. It has methods for selecting or deselecting branches by * name, for outputting a '|'-separated string of all elements or only * the selected ones, and for adding and removing elements. */ - -#ifndef BRANCHLIST_H -#define BRANCHLIST_H - -#include "ColorCode.h" - -#include "support/docstring.h" - -#include - - -namespace lyx { - class Branch { public: /// @@ -53,6 +54,12 @@ public: * \return true if the selection status changes. */ bool setSelected(bool); + /** If true, the branch name will be appended + * to the output file name. + */ + bool hasFileNameSuffix() const; + /// Select/deselect filename suffix property. + void setFileNameSuffix(bool); /// RGBColor const & color() const; /// @@ -71,6 +78,8 @@ private: /// bool selected_; /// + bool filenameSuffix_; + /// RGBColor color_; }; @@ -85,12 +94,15 @@ public: BranchList() : separator_(from_ascii("|")) {} /// - bool empty() const { return list.empty(); } + docstring separator() const { return separator_; } + + /// + bool empty() const { return list_.empty(); } /// - void clear() { list.clear(); } + void clear() { list_.clear(); } /// - const_iterator begin() const { return list.begin(); } - const_iterator end() const { return list.end(); } + const_iterator begin() const { return list_.begin(); } + const_iterator end() const { return list_.end(); } /** \returns the Branch with \c name. If not found, returns 0. */ @@ -111,10 +123,12 @@ public: * if a branch with the newname already exists. */ bool rename(docstring const &, docstring const &, bool const merge = false); + /// get the complete filename suffix + docstring getFileNameSuffix() const; private: /// - List list; + List list_; /// docstring separator_; };