summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2011-09-06 18:33:18 +0000
committerMaxime Coste <frrrwww@gmail.com>2011-09-06 18:33:18 +0000
commit3f51feaaef05a8c3a70bfb81c483f1ff7add396c (patch)
tree9b783680703cfbf79ebf2e31c80d87e34ff20708 /src
parent6668151c780ac774f59fcd6aa60ddd00015cfeb7 (diff)
Buffer: accept initial content in constructor
Diffstat (limited to 'src')
-rw-r--r--src/buffer.cc6
-rw-r--r--src/buffer.hh4
-rw-r--r--src/file.cc4
3 files changed, 7 insertions, 7 deletions
diff --git a/src/buffer.cc b/src/buffer.cc
index b7034b5c..ef8e0e1e 100644
--- a/src/buffer.cc
+++ b/src/buffer.cc
@@ -118,9 +118,11 @@ bool BufferIterator::is_end() const
return m_position == m_buffer->length();
}
-Buffer::Buffer(const std::string& name)
- : m_name(name)
+Buffer::Buffer(const std::string& name, const BufferString& initial_content)
+ : m_name(name), m_history(1), m_history_cursor(m_history.begin()),
+ m_content(initial_content)
{
+ compute_lines();
}
void Buffer::erase(const BufferIterator& begin, const BufferIterator& end)
diff --git a/src/buffer.hh b/src/buffer.hh
index 66136f82..f1441747 100644
--- a/src/buffer.hh
+++ b/src/buffer.hh
@@ -65,7 +65,8 @@ private:
class Buffer
{
public:
- Buffer(const std::string& name);
+ Buffer(const std::string& name,
+ const BufferString& initial_content = "");
void erase(const BufferIterator& begin,
const BufferIterator& end);
@@ -78,7 +79,6 @@ public:
BufferIterator begin() const;
BufferIterator end() const;
-
BufferSize length() const;
BufferIterator iterator_at(const BufferCoord& line_and_column) const;
diff --git a/src/file.cc b/src/file.cc
index f6fc1f24..bf3e31f2 100644
--- a/src/file.cc
+++ b/src/file.cc
@@ -32,9 +32,7 @@ Buffer* create_buffer_from_file(const std::string& filename)
content += std::string(buf, size);
}
close(fd);
- Buffer* buffer = new Buffer(filename);
- buffer->insert(buffer->begin(), content);
- return buffer;
+ return new Buffer(filename, content);
}
void write_buffer_to_file(const Buffer& buffer, const std::string& filename)