2
0
Эх сурвалжийг харах

Merge pull request #44349 from KoBeWi/drop_the_data!

Allow to override drop data in LineEdit
Rémi Verschelde 4 жил өмнө
parent
commit
eda5f4ea31

+ 1 - 1
scene/gui/control.cpp

@@ -709,7 +709,7 @@ bool Control::can_drop_data(const Point2 &p_point, const Variant &p_data) const
 		}
 	}
 
-	return Variant();
+	return false;
 }
 
 void Control::drop_data(const Point2 &p_point, const Variant &p_data) {

+ 7 - 0
scene/gui/line_edit.cpp

@@ -629,10 +629,17 @@ Variant LineEdit::get_drag_data(const Point2 &p_point) {
 }
 
 bool LineEdit::can_drop_data(const Point2 &p_point, const Variant &p_data) const {
+	bool drop_override = Control::can_drop_data(p_point, p_data); // In case user wants to drop custom data.
+	if (drop_override) {
+		return drop_override;
+	}
+
 	return p_data.get_type() == Variant::STRING;
 }
 
 void LineEdit::drop_data(const Point2 &p_point, const Variant &p_data) {
+	Control::drop_data(p_point, p_data);
+
 	if (p_data.get_type() == Variant::STRING) {
 		set_cursor_at_pixel_pos(p_point.x);
 		int selected = selection.end - selection.begin;