summaryrefslogtreecommitdiff
path: root/src/buffer.hh
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2012-04-03 13:39:20 +0000
committerMaxime Coste <frrrwww@gmail.com>2012-04-03 13:39:20 +0000
commitf3dd65fbf193ef4e53a58919cb14264b376cd1b0 (patch)
tree82abc79eced732f55f82c6aa2c130afe20632a46 /src/buffer.hh
parentc8447658c0997aeddbe2b6e77283492830869b02 (diff)
add an OptionManager class and use it to manage tabstops
OptionManager map names to options, and may delegate option resolution to it's parent if it does not contains the asked for option. That way Buffers can override global options, and Windows can override Buffer options.
Diffstat (limited to 'src/buffer.hh')
-rw-r--r--src/buffer.hh5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/buffer.hh b/src/buffer.hh
index 83e5ffc7..fb142aec 100644
--- a/src/buffer.hh
+++ b/src/buffer.hh
@@ -7,6 +7,7 @@
#include <memory>
#include "line_and_column.hh"
+#include "option_manager.hh"
namespace Kakoune
{
@@ -173,6 +174,8 @@ public:
const String& line_content(size_t l) const { return m_lines[l].content; }
+ OptionManager& option_manager() { return m_option_manager; }
+
private:
friend class BufferIterator;
@@ -210,6 +213,8 @@ private:
size_t m_last_save_undo_index;
std::vector<ModificationListener*> m_modification_listeners;
+
+ OptionManager m_option_manager;
};
inline Modification Modification::make_erase(BufferIterator begin,