Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
#ifndef DOCUMENT_FORMATTER_H
#define DOCUMENT_FORMATTER_H
#include "Document.h"
#include "EditorDataController.h"
#include "FormatterInterface.h"
class DocumentFormatter: public FormatterImplementation
{
public:
DocumentFormatter(EditorDataController *edc);
~DocumentFormatter();
// Settings
virtual void SetMaxWidth(int maxWidth);
virtual int GetMaxWidth();
virtual void SetMaxHeight(int maxHeight);
virtual int GetMaxHeight();
// Render Methods
virtual void Build();
virtual int GetRenderableLineCount();
virtual std::shared_ptr<std::string> GetLine(int x);
virtual void GetCursorPosition(int &row, int &col);
virtual void SetCursorPosition(int row, int col);
virtual void GridToCursor(int &row, int &col);
virtual void CursorToGrid(int &row, int &col);
// Actions
virtual void HandleMoveLeft();
virtual void HandleMoveRight();
virtual void HandleMoveUp();
virtual void HandleMoveDown();
// Special Actions
virtual void HandlePageUp();
virtual void HandlePageDown();
virtual void HandleHome();
virtual void HandleEnd();
private:
void AdjustCoordinates();
Document doc;
// Cursor Position
int x,y;
};
#endif /* DOCUMENT_FORMATTER_H */