summaryrefslogtreecommitdiffstats
path: root/src/editor/edit.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/editor/edit.h')
-rw-r--r--src/editor/edit.h84
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 */