diff options
Diffstat (limited to 'src/editor/edit.h')
-rw-r--r-- | src/editor/edit.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/src/editor/edit.h b/src/editor/edit.h new file mode 100644 index 0000000..358aa3f --- /dev/null +++ b/src/editor/edit.h @@ -0,0 +1,84 @@ +/* + Editor public API + */ + +/** \file edit.h + * \brief Header: editor public API + * \author Paul Sheer + * \date 1996, 1997 + * \author Andrew Borodin + * \date 2009, 2012 + */ + +#ifndef MC__EDIT_H +#define MC__EDIT_H + +#include "lib/global.h" /* PATH_SEP_STR */ +#include "lib/vfs/vfs.h" /* vfs_path_t */ + +/*** typedefs(not structures) and defined constants **********************************************/ + +#define DEFAULT_WRAP_LINE_LENGTH 72 + +#define EDIT(x) ((WEdit *)(x)) +#define CONST_EDIT(x) ((const WEdit *)(x)) + +/*** enums ***************************************************************************************/ + +/*** structures declarations (and typedefs of structures)*****************************************/ + +/* Editor widget */ +struct WEdit; +typedef struct WEdit WEdit; + +typedef struct +{ + int word_wrap_line_length; + gboolean typewriter_wrap; + gboolean auto_para_formatting; + gboolean fill_tabs_with_spaces; + gboolean return_does_auto_indent; + gboolean backspace_through_tabs; + gboolean fake_half_tabs; + gboolean persistent_selections; + gboolean drop_selection_on_copy; /* whether we need to drop selection on copy to buffer */ + gboolean cursor_beyond_eol; + gboolean cursor_after_inserted_block; + gboolean state_full_filename; + gboolean line_state; + int line_state_width; + int save_mode; + gboolean confirm_save; /* queries on a save */ + gboolean save_position; + gboolean syntax_highlighting; + gboolean group_undo; + char *backup_ext; + char *filesize_threshold; + char *stop_format_chars; + gboolean visible_tabs; + gboolean visible_tws; + gboolean show_right_margin; + gboolean simple_statusbar; /* statusbar draw style */ + gboolean check_nl_at_eof; +} edit_options_t; + +/*** global variables defined in .c file *********************************************************/ + +extern edit_options_t edit_options; + +/*** declarations of public functions ************************************************************/ + +/* used in main() */ +void edit_stack_init (void); +void edit_stack_free (void); + +gboolean edit_file (const vfs_path_t * file_vpath, long line); +gboolean edit_files (const GList * files); + +const char *edit_get_file_name (const WEdit * edit); +off_t edit_get_cursor_offset (const WEdit * edit); +long edit_get_curs_col (const WEdit * edit); +const char *edit_get_syntax_type (const WEdit * edit); + +/*** inline functions ****************************************************************************/ +#endif /* MC__EDIT_H */ |