diff options
Diffstat (limited to 'Swift/Controllers')
| -rw-r--r-- | Swift/Controllers/HighlightManager.cpp | 8 | ||||
| -rw-r--r-- | Swift/Controllers/HighlightManager.h | 8 | 
2 files changed, 14 insertions, 2 deletions
diff --git a/Swift/Controllers/HighlightManager.cpp b/Swift/Controllers/HighlightManager.cpp index eac562f..ca0567e 100644 --- a/Swift/Controllers/HighlightManager.cpp +++ b/Swift/Controllers/HighlightManager.cpp @@ -103,6 +103,14 @@ void HighlightManager::removeRule(int index)  	rules_->list_.erase(rules_->list_.begin() + index);  } +void HighlightManager::swapRules(const size_t first, const size_t second) { +	assert(first < rules_->getSize()); +	assert(second < rules_->getSize()); +	const HighlightRule swap = rules_->getRule(first); +	rules_->setRule(first, rules_->getRule(second)); +	rules_->setRule(second, swap); +} +  void HighlightManager::storeSettings()  {  	storingSettings_ = true;	// don't reload settings while saving diff --git a/Swift/Controllers/HighlightManager.h b/Swift/Controllers/HighlightManager.h index 3da72eb..07a3fe3 100644 --- a/Swift/Controllers/HighlightManager.h +++ b/Swift/Controllers/HighlightManager.h @@ -31,10 +31,13 @@ namespace Swift {  				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) { +				void addRule(const HighlightRule& rule) { list_.push_back(rule); } +				void combineRules(const HighlightRulesList& rhs) {  					list_.insert(list_.end(), rhs.list_.begin(), rhs.list_.end());  				} +				void setRule(const size_t index, const HighlightRule& rule) { +					list_[index] = rule; +				}  			private:  				std::vector<HighlightRule> list_;  			}; @@ -49,6 +52,7 @@ namespace Swift {  			void setRule(int index, const HighlightRule& rule);  			void insertRule(int index, const HighlightRule& rule);  			void removeRule(int index); +			void swapRules(const size_t first, const size_t second);  			void storeSettings();  			void loadSettings();  | 
 Swift