1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-12 13:20:55 +00:00

Add more uses of appropriate cursors when resizing/moving some UI nodes

This commit is contained in:
Michael Alexsander
2023-05-07 11:14:57 -03:00
parent 64eeb04d2c
commit 8118d0d2f5
5 changed files with 39 additions and 1 deletions

View File

@@ -990,7 +990,6 @@ void GraphNode::gui_input(const Ref<InputEvent> &p_ev) {
Ref<InputEventMouseMotion> mm = p_ev;
if (resizing && mm.is_valid()) {
Vector2 mpos = mm->get_position();
Vector2 diff = mpos - resizing_from;
emit_signal(SNAME("resize_request"), resizing_from_size + diff);
@@ -1055,6 +1054,18 @@ bool GraphNode::is_selectable() {
return selectable;
}
Control::CursorShape GraphNode::get_cursor_shape(const Point2 &p_pos) const {
if (resizable) {
Ref<Texture2D> resizer = get_theme_icon(SNAME("resizer"));
if (resizing || (p_pos.x > get_size().x - resizer->get_width() && p_pos.y > get_size().y - resizer->get_height())) {
return CURSOR_FDIAGSIZE;
}
}
return Control::get_cursor_shape(p_pos);
}
Vector<int> GraphNode::get_allowed_size_flags_horizontal() const {
Vector<int> flags;
flags.append(SIZE_FILL);