summaryrefslogtreecommitdiff
path: root/scene/gui/text_edit.h
diff options
context:
space:
mode:
Diffstat (limited to 'scene/gui/text_edit.h')
-rw-r--r--scene/gui/text_edit.h32
1 files changed, 24 insertions, 8 deletions
diff --git a/scene/gui/text_edit.h b/scene/gui/text_edit.h
index c3bb5823e7..15c289a87e 100644
--- a/scene/gui/text_edit.h
+++ b/scene/gui/text_edit.h
@@ -162,7 +162,7 @@ class TextEdit : public Control {
TextOperation current_op;
List<TextOperation> undo_stack;
- List<TextOperation>::Element *undo_stack_pos;
+ List<TextOperation>::Element *undo_stack_pos;
void _clear_redo();
void _do_text_op(const TextOperation& p_op, bool p_reverse);
@@ -206,6 +206,9 @@ class TextEdit : public Control {
bool text_changed_dirty;
bool undo_enabled;
bool line_numbers;
+
+ bool auto_brace_completion_enabled;
+ bool cut_copy_line;
uint64_t last_dblclk;
@@ -218,6 +221,8 @@ class TextEdit : public Control {
Object *tooltip_obj;
StringName tooltip_func;
Variant tooltip_ud;
+
+ bool next_operation_is_complex;
int get_visible_rows() const;
@@ -241,11 +246,13 @@ class TextEdit : public Control {
void _update_caches();
void _cursor_changed_emit();
void _text_changed_emit();
-
+
+ void _begin_compex_operation();
+ void _end_compex_operation();
void _push_current_op();
/* super internal api, undo/redo builds on it */
-
+
void _base_insert_text(int p_line, int p_column,const String& p_text,int &r_end_line,int &r_end_column);
String _base_get_text(int p_from_line, int p_from_column,int p_to_line,int p_to_column) const;
void _base_remove_text(int p_from_line, int p_from_column,int p_to_line,int p_to_column);
@@ -262,12 +269,16 @@ class TextEdit : public Control {
protected:
virtual String get_tooltip(const Point2& p_pos) const;
-
+
void _insert_text(int p_line, int p_column,const String& p_text,int *r_end_line=NULL,int *r_end_char=NULL);
void _remove_text(int p_from_line, int p_from_column,int p_to_line,int p_to_column);
void _insert_text_at_cursor(const String& p_text);
void _input_event(const InputEvent& p_input);
void _notification(int p_what);
+
+ void _consume_pair_symbol(CharType ch);
+ void _consume_backspace_for_pair_symbol(int prev_line, int prev_column);
+
static void _bind_methods();
@@ -296,8 +307,11 @@ public:
String get_text();
String get_line(int line) const;
void backspace_at_cursor();
-
-
+
+ inline void set_auto_brace_completion(bool p_enabled) {
+ auto_brace_completion_enabled = p_enabled;
+ }
+
void cursor_set_column(int p_col);
void cursor_set_line(int p_row);
@@ -323,16 +337,18 @@ public:
bool is_selection_active() const;
int get_selection_from_line() const;
- int get_selection_from_column() const;
+ int get_selection_from_column() const;
int get_selection_to_line() const;
int get_selection_to_column() const;
String get_selection_text() const;
+ String get_word_under_cursor() const;
+
bool search(const String &p_key,uint32_t p_search_flags, int p_from_line, int p_from_column,int &r_line,int &r_column) const;
void undo();
void redo();
- void clear_undo_history();
+ void clear_undo_history();
void set_draw_tabs(bool p_draw);