summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/math/math_2d.h8
-rw-r--r--scene/gui/text_edit.cpp9
-rw-r--r--scene/gui/text_edit.h2
3 files changed, 14 insertions, 5 deletions
diff --git a/core/math/math_2d.h b/core/math/math_2d.h
index 1f45036409..2c8749f79d 100644
--- a/core/math/math_2d.h
+++ b/core/math/math_2d.h
@@ -272,7 +272,7 @@ struct Rect2 {
return new_rect;
};
- bool has_point(const Point2& p_point) const {
+ inline bool has_point(const Point2& p_point) const {
if (p_point.x < pos.x)
return false;
if (p_point.y < pos.y)
@@ -286,12 +286,12 @@ struct Rect2 {
return true;
}
- bool no_area() const { return (size.width<=0 || size.height<=0 ); }
+ inline bool no_area() const { return (size.width<=0 || size.height<=0 ); }
bool operator==(const Rect2& p_rect) const { return pos==p_rect.pos && size==p_rect.size; }
bool operator!=(const Rect2& p_rect) const { return pos!=p_rect.pos || size!=p_rect.size; }
- Rect2 grow(real_t p_by) const {
+ inline Rect2 grow(real_t p_by) const {
Rect2 g=*this;
g.pos.x-=p_by;
@@ -463,7 +463,7 @@ struct Rect2i {
return new_rect;
};
- bool has_point(const Point2& p_point) {
+ bool has_point(const Point2& p_point) const {
if (p_point.x < pos.x)
return false;
if (p_point.y < pos.y)
diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp
index 3e4c04873a..d84e9956ba 100644
--- a/scene/gui/text_edit.cpp
+++ b/scene/gui/text_edit.cpp
@@ -47,7 +47,6 @@
#define TAB_PIXELS
-
static bool _is_text_char(CharType c) {
return (c>='a' && c<='z') || (c>='A' && c<='Z') || (c>='0' && c<='9') || c=='_';
@@ -2038,6 +2037,14 @@ void TextEdit::insert_text_at_cursor(const String& p_text) {
}
+Control::CursorShape TextEdit::get_cursor_shape(const Point2& p_pos) const {
+ if(completion_active && completion_rect.has_point(p_pos)) {
+ return CURSOR_ARROW;
+ }
+ return CURSOR_IBEAM;
+}
+
+
void TextEdit::set_text(String p_text){
setting_text=true;
diff --git a/scene/gui/text_edit.h b/scene/gui/text_edit.h
index 5826c84c80..c3bb5823e7 100644
--- a/scene/gui/text_edit.h
+++ b/scene/gui/text_edit.h
@@ -280,6 +280,8 @@ public:
SEARCH_WHOLE_WORDS=2,
SEARCH_BACKWARDS=4
};
+
+ virtual CursorShape get_cursor_shape(const Point2& p_pos=Point2i()) const;
//void delete_char();
//void delete_line();