Made the tooltip position offset configurable
This commit is contained in:
parent
a42549b8f7
commit
30c07c1ae1
|
@ -319,6 +319,9 @@
|
||||||
<member name="display/mouse_cursor/custom_image_hotspot" type="Vector2" setter="" getter="">
|
<member name="display/mouse_cursor/custom_image_hotspot" type="Vector2" setter="" getter="">
|
||||||
Hotspot for the custom mouse cursor image.
|
Hotspot for the custom mouse cursor image.
|
||||||
</member>
|
</member>
|
||||||
|
<member name="display/mouse_cursor/tooltip_position_offset" type="Vector2" setter="" getter="">
|
||||||
|
Position offset for tooltips, relative to the hotspot of the mouse cursor.
|
||||||
|
</member>
|
||||||
<member name="display/window/dpi/allow_hidpi" type="bool" setter="" getter="">
|
<member name="display/window/dpi/allow_hidpi" type="bool" setter="" getter="">
|
||||||
Allow HiDPI display on Windows and OSX. On Desktop Linux, this can't be enabled or disabled.
|
Allow HiDPI display on Windows and OSX. On Desktop Linux, this can't be enabled or disabled.
|
||||||
</member>
|
</member>
|
||||||
|
|
|
@ -1209,6 +1209,7 @@ Error Main::setup2(Thread::ID p_main_tid_override) {
|
||||||
|
|
||||||
GLOBAL_DEF("display/mouse_cursor/custom_image", String());
|
GLOBAL_DEF("display/mouse_cursor/custom_image", String());
|
||||||
GLOBAL_DEF("display/mouse_cursor/custom_image_hotspot", Vector2());
|
GLOBAL_DEF("display/mouse_cursor/custom_image_hotspot", Vector2());
|
||||||
|
GLOBAL_DEF("display/mouse_cursor/tooltip_position_offset", Point2(10, 10));
|
||||||
ProjectSettings::get_singleton()->set_custom_property_info("display/mouse_cursor/custom_image", PropertyInfo(Variant::STRING, "display/mouse_cursor/custom_image", PROPERTY_HINT_FILE, "*.png,*.webp"));
|
ProjectSettings::get_singleton()->set_custom_property_info("display/mouse_cursor/custom_image", PropertyInfo(Variant::STRING, "display/mouse_cursor/custom_image", PROPERTY_HINT_FILE, "*.png,*.webp"));
|
||||||
|
|
||||||
if (String(ProjectSettings::get_singleton()->get("display/mouse_cursor/custom_image")) != String()) {
|
if (String(ProjectSettings::get_singleton()->get("display/mouse_cursor/custom_image")) != String()) {
|
||||||
|
|
|
@ -1486,7 +1486,8 @@ void Viewport::_gui_show_tooltip() {
|
||||||
gui.tooltip_popup->set_as_toplevel(true);
|
gui.tooltip_popup->set_as_toplevel(true);
|
||||||
//gui.tooltip_popup->hide();
|
//gui.tooltip_popup->hide();
|
||||||
|
|
||||||
Rect2 r(gui.tooltip_pos + Point2(10, 10), gui.tooltip_popup->get_minimum_size());
|
Point2 tooltip_offset = ProjectSettings::get_singleton()->get("display/mouse_cursor/tooltip_position_offset");
|
||||||
|
Rect2 r(gui.tooltip_pos + tooltip_offset, gui.tooltip_popup->get_minimum_size());
|
||||||
Rect2 vr = gui.tooltip_popup->get_viewport_rect();
|
Rect2 vr = gui.tooltip_popup->get_viewport_rect();
|
||||||
if (r.size.x + r.position.x > vr.size.x)
|
if (r.size.x + r.position.x > vr.size.x)
|
||||||
r.position.x = vr.size.x - r.size.x;
|
r.position.x = vr.size.x - r.size.x;
|
||||||
|
|
Loading…
Reference in New Issue