summaryrefslogtreecommitdiff
path: root/examples/dte/view.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/dte/view.h')
-rw-r--r--examples/dte/view.h62
1 files changed, 0 insertions, 62 deletions
diff --git a/examples/dte/view.h b/examples/dte/view.h
deleted file mode 100644
index c7bb254..0000000
--- a/examples/dte/view.h
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef VIEW_H
-#define VIEW_H
-
-#include <limits.h>
-#include <stdbool.h>
-#include <sys/types.h>
-#include "block-iter.h"
-#include "util/macros.h"
-#include "util/string-view.h"
-
-typedef enum {
- SELECT_NONE,
- SELECT_CHARS,
- SELECT_LINES,
-} SelectionType;
-
-// A view into a Buffer, with its own cursor position and selection.
-// Visually speaking, each tab in a Window corresponds to a View.
-typedef struct View {
- struct Buffer *buffer;
- struct Window *window;
- BlockIter cursor;
- long cx, cy; // Cursor position
- long cx_display; // Visual cursor x (char widths: wide 2, tab 1-8, control 2, invalid char 4)
- long cx_char; // Cursor x in characters (invalid UTF-8 character (byte) is 1 char)
- long vx, vy; // Top left corner
- long preferred_x; // Preferred cursor x (preferred value for cx_display)
- int tt_width; // Tab title width
- int tt_truncated_width;
- bool center_on_scroll; // Center view to cursor if scrolled
- bool force_center; // Force centering view to cursor
-
- SelectionType selection;
- SelectionType select_mode;
- ssize_t sel_so; // Cursor offset when selection was started
- ssize_t sel_eo; // See `SEL_EO_RECALC` below
-
- // Used to save cursor state when multiple views share same buffer
- bool restore_cursor;
- size_t saved_cursor_offset;
-} View;
-
-// If View::sel_eo is set to this value it means the offset must
-// be calculated from the cursor iterator. Otherwise the offset
-// is precalculated and may not be the same as the cursor position
-// (see search/replace code).
-#define SEL_EO_RECALC SSIZE_MAX
-
-static inline void view_reset_preferred_x(View *view)
-{
- view->preferred_x = -1;
-}
-
-void view_update_cursor_y(View *view) NONNULL_ARGS;
-void view_update_cursor_x(View *view) NONNULL_ARGS;
-void view_update(View *view, unsigned int scroll_margin) NONNULL_ARGS;
-long view_get_preferred_x(View *view) NONNULL_ARGS;
-bool view_can_close(const View *view) NONNULL_ARGS;
-StringView view_do_get_word_under_cursor(const View *view, size_t *offset_in_line) NONNULL_ARGS;
-StringView view_get_word_under_cursor(const View *view) NONNULL_ARGS;
-
-#endif