From e5205e589f64e3b88e53899b67a55407b30063a4 Mon Sep 17 00:00:00 2001 From: bruvzg <7645683+bruvzg@users.noreply.github.com> Date: Fri, 8 Mar 2024 09:24:58 +0200 Subject: [StatusIndicator] Add method to get indicator icon screen rect. --- scene/main/status_indicator.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'scene/main/status_indicator.cpp') diff --git a/scene/main/status_indicator.cpp b/scene/main/status_indicator.cpp index 22aa051c70..891974f68f 100644 --- a/scene/main/status_indicator.cpp +++ b/scene/main/status_indicator.cpp @@ -80,6 +80,7 @@ void StatusIndicator::_bind_methods() { ClassDB::bind_method(D_METHOD("is_visible"), &StatusIndicator::is_visible); ClassDB::bind_method(D_METHOD("set_menu", "menu"), &StatusIndicator::set_menu); ClassDB::bind_method(D_METHOD("get_menu"), &StatusIndicator::get_menu); + ClassDB::bind_method(D_METHOD("get_rect"), &StatusIndicator::get_rect); ADD_SIGNAL(MethodInfo("pressed", PropertyInfo(Variant::INT, "mouse_button"), PropertyInfo(Variant::VECTOR2I, "mouse_position"))); @@ -182,3 +183,10 @@ void StatusIndicator::set_visible(bool p_visible) { bool StatusIndicator::is_visible() const { return visible; } + +Rect2 StatusIndicator::get_rect() const { + if (iid == DisplayServer::INVALID_INDICATOR_ID) { + return Rect2(); + } + return DisplayServer::get_singleton()->status_indicator_get_rect(iid); +} -- cgit v1.2.3