jes/src/core/BufferView.cc

24 lines
638 B
C++

#include "BufferView.h"
BufferView::BufferView(std::shared_ptr<Buffer> buffer,
std::shared_ptr<Buffer::Iterator> iterator,
CharacterWidthDeterminer & character_width_determiner)
: m_iterator(iterator)
{
m_height = 1;
m_scroll_offset = 0;
m_cursor_screen_row = 0;
m_buffer_line_walker = std::make_shared<BufferLineWalker>(buffer, character_width_determiner);
}
void BufferView::resize(int width, int height)
{
m_buffer_line_walker->set_width(width);
m_height = std::max(1, height);
}
void BufferView::set_scroll_offset(int scroll_offset)
{
m_scroll_offset = std::max(0, scroll_offset);
}