diff options
| author | Richard Maudsley <richard.maudsley@isode.com> | 2014-01-13 15:26:24 (GMT) |
|---|---|---|
| committer | Swift Review <review@swift.im> | 2014-07-09 14:01:41 (GMT) |
| commit | f2bcc401477dcb5ca52b5d9d5e85f4bf7bae9285 (patch) | |
| tree | 01cf807b2ad59f5ea6504fd28d12e0f994e2f907 /Swift/Controllers/HighlightManager.h | |
| parent | 8e03583fe21bcd5e0025da81d8f4a34ed05cd058 (diff) | |
| download | swift-contrib-f2bcc401477dcb5ca52b5d9d5e85f4bf7bae9285.zip swift-contrib-f2bcc401477dcb5ca52b5d9d5e85f4bf7bae9285.tar.bz2 | |
Reworked highlight rules dialog. Added support for highlighting individual words in messages.
Change-Id: I378fa69077c29008db4ef7c2265e5212924bc2ce
Diffstat (limited to 'Swift/Controllers/HighlightManager.h')
| -rw-r--r-- | Swift/Controllers/HighlightManager.h | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/Swift/Controllers/HighlightManager.h b/Swift/Controllers/HighlightManager.h index d195d05..3da72eb 100644 --- a/Swift/Controllers/HighlightManager.h +++ b/Swift/Controllers/HighlightManager.h @@ -6,2 +6,8 @@ +/* + * Copyright (c) 2014 Kevin Smith and Remko Tronçon + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + #pragma once @@ -21,2 +27,16 @@ namespace Swift { public: + + class HighlightRulesList { + public: + friend class HighlightManager; + size_t getSize() const { return list_.size(); } + const HighlightRule& getRule(const size_t index) const { return list_[index]; } + void addRule(const HighlightRule &rule) { list_.push_back(rule); } + void combineRules(const HighlightRulesList &rhs) { + list_.insert(list_.end(), rhs.list_.begin(), rhs.list_.end()); + } + private: + std::vector<HighlightRule> list_; + }; + HighlightManager(SettingsProvider* settings); @@ -25,3 +45,4 @@ namespace Swift { - const std::vector<HighlightRule>& getRules() const { return rules_; } + boost::shared_ptr<const HighlightManager::HighlightRulesList> getRules() const { return rules_; } + HighlightRule getRule(int index) const; @@ -30,2 +51,4 @@ namespace Swift { void removeRule(int index); + void storeSettings(); + void loadSettings(); @@ -37,3 +60,2 @@ namespace Swift { std::string rulesToString() const; - static std::vector<HighlightRule> rulesFromString(const std::string&); static std::vector<HighlightRule> getDefaultRules(); @@ -42,8 +64,8 @@ namespace Swift { bool storingSettings_; - void storeSettings(); - void loadSettings(); - std::vector<HighlightRule> rules_; + boost::shared_ptr<HighlightManager::HighlightRulesList> rules_; }; + typedef boost::shared_ptr<const HighlightManager::HighlightRulesList> HighlightRulesListPtr; + } |
Swift