summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Maudsley <richard.maudsley@isode.com>2014-01-16 11:50:09 (GMT)
committerRichard Maudsley <richard.maudsley@isode.com>2014-01-16 11:50:09 (GMT)
commitef013f01cb857626153e305de6177ee878139015 (patch)
tree0e066b2ac76021e9b823df0312a3a8bc290eddb9 /Swift/Controllers
parenta65f146578f927898321f1bc0dcb224317245931 (diff)
downloadswift-ef013f01cb857626153e305de6177ee878139015.zip
swift-ef013f01cb857626153e305de6177ee878139015.tar.bz2
Starting to wire up Highlight Rules dialog.
Change-Id: I81dae3a2c32b38a3affa8b2765d51c6d688e3bae
Diffstat (limited to 'Swift/Controllers')
-rw-r--r--Swift/Controllers/HighlightManager.cpp41
-rw-r--r--Swift/Controllers/HighlightManager.h4
2 files changed, 23 insertions, 22 deletions
diff --git a/Swift/Controllers/HighlightManager.cpp b/Swift/Controllers/HighlightManager.cpp
index fa98a6e..46af389 100644
--- a/Swift/Controllers/HighlightManager.cpp
+++ b/Swift/Controllers/HighlightManager.cpp
@@ -54,16 +54,6 @@ void HighlightManager::handleSettingChanged(const std::string& settingPath)
}
}
-void HighlightManager::loadSettings()
-{
- std::string highlightRules = settings_->getSetting(SettingConstants::HIGHLIGHT_RULES);
- if (highlightRules == "@") {
- rules_ = getDefaultRules();
- } else {
- rules_ = rulesFromString(highlightRules);
- }
-}
-
std::string HighlightManager::rulesToString() const
{
std::stringstream stream;
@@ -98,13 +88,6 @@ std::vector<HighlightRule> HighlightManager::getDefaultRules()
return rules;
}
-void HighlightManager::storeSettings()
-{
- storingSettings_ = true; // don't reload settings while saving
- settings_->storeSetting(SettingConstants::HIGHLIGHT_RULES, rulesToString());
- storingSettings_ = false;
-}
-
HighlightRule HighlightManager::getRule(int index) const
{
assert(index >= 0 && static_cast<size_t>(index) < rules_.size());
@@ -115,21 +98,39 @@ void HighlightManager::setRule(int index, const HighlightRule& rule)
{
assert(index >= 0 && static_cast<size_t>(index) < rules_.size());
rules_[static_cast<size_t>(index)] = rule;
- storeSettings();
+ //storeSettings();
}
void HighlightManager::insertRule(int index, const HighlightRule& rule)
{
assert(index >= 0 && boost::numeric_cast<std::vector<std::string>::size_type>(index) <= rules_.size());
rules_.insert(rules_.begin() + index, rule);
- storeSettings();
+ //storeSettings();
}
void HighlightManager::removeRule(int index)
{
assert(index >= 0 && boost::numeric_cast<std::vector<std::string>::size_type>(index) < rules_.size());
rules_.erase(rules_.begin() + index);
- storeSettings();
+ //storeSettings();
+}
+
+void HighlightManager::storeSettings()
+{
+ storingSettings_ = true; // don't reload settings while saving
+ settings_->storeSetting(SettingConstants::HIGHLIGHT_RULES, rulesToString());
+ storingSettings_ = false;
+}
+
+void HighlightManager::loadSettings()
+{
+ std::string highlightRules = settings_->getSetting(SettingConstants::HIGHLIGHT_RULES);
+ std::vector<HighlightRule> rules = rulesFromString(highlightRules);
+ if (rules.empty()) {
+ rules_ = getDefaultRules();
+ } else {
+ rules_ = rules;
+ }
}
Highlighter* HighlightManager::createHighlighter()
diff --git a/Swift/Controllers/HighlightManager.h b/Swift/Controllers/HighlightManager.h
index d195d05..e91d8ce 100644
--- a/Swift/Controllers/HighlightManager.h
+++ b/Swift/Controllers/HighlightManager.h
@@ -28,6 +28,8 @@ namespace Swift {
void setRule(int index, const HighlightRule& rule);
void insertRule(int index, const HighlightRule& rule);
void removeRule(int index);
+ void storeSettings();
+ void loadSettings();
boost::signal<void (const HighlightAction&)> onHighlight;
@@ -40,8 +42,6 @@ namespace Swift {
SettingsProvider* settings_;
bool storingSettings_;
- void storeSettings();
- void loadSettings();
std::vector<HighlightRule> rules_;
};