Skip to content

extio1/text_editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

239 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

workflow

Overview

The project was inspired by Gang of Four Design Patterns and implemented on C++. The prototype is LeXI from the book.

Constructively MVC used.

Patterns are used:

  • Composite (include/document/glyphs) represents hierarchy of glyphs, so via only reference to glyph user manipulates with column, row, character, page, etc.
  • Compositor (include/compositor) encapsulates algorithm of format document. This way, there is possibility to change it in runtime. Also there's low cohesion between algorithm (compositor) and data structure (document).
  • Command (include/executor) gives API to operate with document via Executor object executing Command. Encapsulates command history, so ctrl+z, ctrl+y commands are supported (current supported command list in include/executor/command)

Requirements

  • C++14 or newer
  • Boost serialization library 1.8.0 or newer. e.g. Download archive from boostorg.jfrog.io

Installation

mkdir build; cd build
cmake ..
cmake —build .

Usage

Cmake builds text_editor executable in build.

Contacts

Releases

No releases published

Packages

No packages published

Languages