texteditor.cxx File Reference

#include <cxxtls/options.h>
#include <texteditor.hxx>
#include <cxxtls/viewermanager.h>
#include <cxxtls/skiprope.h>
#include <fstream>
#include <portable_strstream.h>
#include <cxxtls/strtool.h>
#include <map>
#include <memory.h>
#include <algorithm>
#include <portable_io.h>
#include <cxxtls/etagsdb.h>
#include <errno.h>
#include <string.h>
#include <ctype.h>
#include <cxxtls/simple_regex.h>
#include <cxxtls/cursesinterface.h>
#include <cxxtls/foreach.h>
#include <cxxtls/cpptagdb.h>
#include <cxxtls/muSED.h>
Include dependency graph for texteditor.cxx:

Go to the source code of this file.

Classes

struct  Accumulate_File_Lines
 This struct implements the bridge between the FileName::read_lines method and the lines_ data member of the Impl class. The lines_ data is a collection of pointers to std::string, not std::strings directly so this class performs the needed copies and dereferences to make the interface look right to FileName::read_lines. More...
struct  AddMapping
 An AddMapping object exists only for the purpose of statically initializing the Impl::func map with valid entries. You declare a member function of the Impl class then you declare an object of type AddMapping to cause the function to appear in the func table. You only need to do this once, and it is the intent of addMapping's design that you do this at file scope -- not that it matters. More...
struct  EditLine
 A datastructure holding a line of text in an edit session. Lines of text are tab expanded before display and binary characters are converted into ~'s for display purposes. More...
struct  is_colon
struct  Is_Path_Separator
struct  is_pathsep
struct  Impl
 This class actually implements the text editor. The Viewer which holds this datastructure is just a mechanism for routing events to this class. More...
struct  CharCompare
struct  TextIterator
 An iterator to the characters in a skiprope of EditLines. More...
struct  UndoOperation
 A data structure that holds information needed to reverse a change to the file. More...

Typedefs

typedef TextEditor::Impl Impl
typedef CursorWindow::input_event input_event
typedef skiprope< EditLinerep_type
typedef viewport::repaint_handler repaint_handler
typedef CursorWindow::row_col row_col
typedef CursorWindow::viewport viewport

Variables

AddMapping char_delete_func (CursorWindow::func_dc,&Impl::char_delete, Modifying)
AddMapping char_delprv_func (CursorWindow::func_dc_prev,&Impl::char_delprv, Modifying)
AddMapping char_insert_func (CursorWindow::func_data,&Impl::char_insert, Modifying)
AddMapping char_left_func (CursorWindow::func_left,&Impl::char_left, NonModifying)
AddMapping char_right_func (CursorWindow::func_right,&Impl::char_right, NonModifying)
AddMapping convert2edit (CursorWindow::func_to_edit,&Impl::to_edit, NonModifying)
AddMapping copy_block_func (CursorWindow::func_cb,&Impl::block_copy, NonModifying)
AddMapping delete_block_func (CursorWindow::func_db,&Impl::block_delete, Modifying)
AddMapping file_bottom_func (CursorWindow::func_bottom,&Impl::file_bottom, NonModifying)
AddMapping file_insert_func (CursorWindow::func_insfile,&Impl::file_insert, Modifying)
AddMapping file_top_func (CursorWindow::func_top,&Impl::file_top, NonModifying)
AddMapping find_func (CursorWindow::func_find,&Impl::find_first, NonModifying)
AddMapping find_func_next (CursorWindow::func_findnxt,&Impl::find_next, NonModifying)
AddMapping find_func_prev (CursorWindow::func_findprv,&Impl::find_prev, NonModifying)
AddMapping insert_lines_func (CursorWindow::func_insline,&Impl::line_insert, Modifying)
AddMapping join_lines_func (CursorWindow::func_join,&Impl::line_join, Modifying)
AddMapping line_clreol_func (CursorWindow::func_clreol,&Impl::line_clreol, Modifying)
AddMapping line_del_func (CursorWindow::func_dl,&Impl::line_del, Modifying)
AddMapping line_down_func (CursorWindow::func_down,&Impl::line_down, NonModifying)
AddMapping line_end_func (CursorWindow::func_end,&Impl::line_end, NonModifying)
AddMapping line_goto_func (CursorWindow::func_goto,&Impl::line_goto, NonModifying)
AddMapping line_home_func (CursorWindow::func_home,&Impl::line_home, NonModifying)
AddMapping line_mark_func (CursorWindow::func_mark,&Impl::line_mark, NonModifying)
AddMapping line_split_func (CursorWindow::func_enter,&Impl::line_split, Modifying)
AddMapping line_undo (CursorWindow::func_undo,&Impl::undo, Modifying)
AddMapping line_up_func (CursorWindow::func_up,&Impl::line_up, NonModifying)
AddMapping matching_char (CursorWindow::func_matching,&Impl::char_matching, NonModifying)
const bool Modifying = true
const bool NonModifying = false
AddMapping page_down_func (CursorWindow::func_next,&Impl::page_down, NonModifying)
AddMapping page_up_func (CursorWindow::func_prior,&Impl::page_up, NonModifying)
AddMapping paste_block_func (CursorWindow::func_paste,&Impl::block_paste, Modifying)
AddMapping replace_first_func (CursorWindow::func_repl,&Impl::replace_first, Modifying)
AddMapping replace_next_func (CursorWindow::func_replnext,&Impl::replace_next, Modifying)
AddMapping reread_edit (CursorWindow::func_reread,&Impl::reread, NonModifying)
AddMapping save_block_func (CursorWindow::func_cb,&Impl::block_copy, NonModifying)
AddMapping switch_source_file (CursorWindow::func_switch,&Impl::switch_source, NonModifying)
AddMapping tab_right_func (CursorWindow::func_tab,&Impl::tab_right, NonModifying)
AddMapping transform_block_func (10000,&Impl::block_transform, Modifying)
AddMapping word_del_func (CursorWindow::func_dw,&Impl::word_delete, Modifying)
AddMapping word_next_func (CursorWindow::func_nextwd,&Impl::word_next, NonModifying)
AddMapping word_prev_func (CursorWindow::func_prevwd,&Impl::word_prev, NonModifying)

Typedef Documentation

Definition at line 835 of file texteditor.cxx.

Definition at line 138 of file texteditor.cxx.

Definition at line 229 of file texteditor.cxx.

Definition at line 137 of file texteditor.cxx.

Definition at line 135 of file texteditor.cxx.

Definition at line 136 of file texteditor.cxx.


Variable Documentation

AddMapping char_delete_func(CursorWindow::func_dc,&Impl::char_delete, Modifying)
AddMapping char_delprv_func(CursorWindow::func_dc_prev,&Impl::char_delprv, Modifying)
AddMapping char_insert_func(CursorWindow::func_data,&Impl::char_insert, Modifying)
AddMapping char_left_func(CursorWindow::func_left,&Impl::char_left, NonModifying)
AddMapping char_right_func(CursorWindow::func_right,&Impl::char_right, NonModifying)
AddMapping convert2edit(CursorWindow::func_to_edit,&Impl::to_edit, NonModifying)
AddMapping copy_block_func(CursorWindow::func_cb,&Impl::block_copy, NonModifying)
AddMapping delete_block_func(CursorWindow::func_db,&Impl::block_delete, Modifying)
AddMapping file_bottom_func(CursorWindow::func_bottom,&Impl::file_bottom, NonModifying)
AddMapping file_insert_func(CursorWindow::func_insfile,&Impl::file_insert, Modifying)
AddMapping file_top_func(CursorWindow::func_top,&Impl::file_top, NonModifying)
AddMapping find_func(CursorWindow::func_find,&Impl::find_first, NonModifying)
AddMapping find_func_next(CursorWindow::func_findnxt,&Impl::find_next, NonModifying)
AddMapping find_func_prev(CursorWindow::func_findprv,&Impl::find_prev, NonModifying)
AddMapping insert_lines_func(CursorWindow::func_insline,&Impl::line_insert, Modifying)
AddMapping join_lines_func(CursorWindow::func_join,&Impl::line_join, Modifying)
AddMapping line_clreol_func(CursorWindow::func_clreol,&Impl::line_clreol, Modifying)
AddMapping line_del_func(CursorWindow::func_dl,&Impl::line_del, Modifying)
AddMapping line_down_func(CursorWindow::func_down,&Impl::line_down, NonModifying)
AddMapping line_end_func(CursorWindow::func_end,&Impl::line_end, NonModifying)
AddMapping line_goto_func(CursorWindow::func_goto,&Impl::line_goto, NonModifying)
AddMapping line_home_func(CursorWindow::func_home,&Impl::line_home, NonModifying)
AddMapping line_mark_func(CursorWindow::func_mark,&Impl::line_mark, NonModifying)
AddMapping line_split_func(CursorWindow::func_enter,&Impl::line_split, Modifying)
AddMapping line_undo(CursorWindow::func_undo,&Impl::undo, Modifying)
AddMapping line_up_func(CursorWindow::func_up,&Impl::line_up, NonModifying)
AddMapping matching_char(CursorWindow::func_matching,&Impl::char_matching, NonModifying)
const bool Modifying = true

Definition at line 842 of file texteditor.cxx.

const bool NonModifying = false

Definition at line 843 of file texteditor.cxx.

AddMapping page_down_func(CursorWindow::func_next,&Impl::page_down, NonModifying)
AddMapping page_up_func(CursorWindow::func_prior,&Impl::page_up, NonModifying)
AddMapping paste_block_func(CursorWindow::func_paste,&Impl::block_paste, Modifying)
AddMapping replace_first_func(CursorWindow::func_repl,&Impl::replace_first, Modifying)
AddMapping replace_next_func(CursorWindow::func_replnext,&Impl::replace_next, Modifying)
AddMapping reread_edit(CursorWindow::func_reread,&Impl::reread, NonModifying)
AddMapping save_block_func(CursorWindow::func_cb,&Impl::block_copy, NonModifying)
AddMapping switch_source_file(CursorWindow::func_switch,&Impl::switch_source, NonModifying)
AddMapping tab_right_func(CursorWindow::func_tab,&Impl::tab_right, NonModifying)
AddMapping transform_block_func(10000,&Impl::block_transform, Modifying)
AddMapping word_del_func(CursorWindow::func_dw,&Impl::word_delete, Modifying)
AddMapping word_next_func(CursorWindow::func_nextwd,&Impl::word_next, NonModifying)
AddMapping word_prev_func(CursorWindow::func_prevwd,&Impl::word_prev, NonModifying)
Generated on Wed Feb 29 22:51:01 2012 for CXXUtilities by  doxygen 1.6.3