MCPcopy Create free account
hub / github.com/Redot-Engine/redot-engine / _setup

Method _setup

scene/debugger/scene_debugger.cpp:1517–1618  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1515}
1516
1517void RuntimeNodeSelect::_setup(const Dictionary &p_settings) {
1518 Window *root = SceneTree::get_singleton()->get_root();
1519 ERR_FAIL_COND(root->is_connected(SceneStringName(window_input), callable_mp(this, &RuntimeNodeSelect::_root_window_input)));
1520
1521 root->connect(SceneStringName(window_input), callable_mp(this, &RuntimeNodeSelect::_root_window_input));
1522 root->connect("size_changed", callable_mp(this, &RuntimeNodeSelect::_queue_selection_update), CONNECT_DEFERRED);
1523
1524 max_selection = p_settings.get("debugger/max_node_selection", 1);
1525
1526 panner.instantiate();
1527 panner->set_callbacks(callable_mp(this, &RuntimeNodeSelect::_pan_callback), callable_mp(this, &RuntimeNodeSelect::_zoom_callback));
1528
1529 ViewPanner::ControlScheme panning_scheme = (ViewPanner::ControlScheme)p_settings.get("editors/panning/2d_editor_panning_scheme", 0).operator int();
1530 bool simple_panning = p_settings.get("editors/panning/simple_panning", false);
1531 int pan_speed = p_settings.get("editors/panning/2d_editor_pan_speed", 20);
1532 Array keys = p_settings.get("canvas_item_editor/pan_view", Array()).operator Array();
1533 panner->setup(panning_scheme, DebuggerMarshalls::deserialize_key_shortcut(keys), simple_panning);
1534 panner->setup_warped_panning(root, p_settings.get("editors/panning/warped_mouse_panning", true));
1535 panner->set_scroll_speed(pan_speed);
1536
1537 sel_2d_grab_dist = p_settings.get("editors/polygon_editor/point_grab_radius", 0);
1538
1539 selection_area_fill = p_settings.get("box_selection_fill_color", Color());
1540 selection_area_outline = p_settings.get("box_selection_stroke_color", Color());
1541
1542 draw_canvas = RS::get_singleton()->canvas_create();
1543 sel_drag_ci = RS::get_singleton()->canvas_item_create();
1544
1545 /// 2D Selection Box Generation
1546
1547 sbox_2d_ci = RS::get_singleton()->canvas_item_create();
1548 RS::get_singleton()->viewport_attach_canvas(root->get_viewport_rid(), draw_canvas);
1549 RS::get_singleton()->canvas_item_set_parent(sel_drag_ci, draw_canvas);
1550 RS::get_singleton()->canvas_item_set_parent(sbox_2d_ci, draw_canvas);
1551
1552#ifndef _3D_DISABLED
1553 cursor = Cursor();
1554
1555 camera_fov = p_settings.get("editors/3d/default_fov", 70);
1556 camera_znear = p_settings.get("editors/3d/default_z_near", 0.05);
1557 camera_zfar = p_settings.get("editors/3d/default_z_far", 4'000);
1558
1559 invert_x_axis = p_settings.get("editors/3d/navigation/invert_x_axis", false);
1560 invert_y_axis = p_settings.get("editors/3d/navigation/invert_y_axis", false);
1561 warped_mouse_panning_3d = p_settings.get("editors/3d/navigation/warped_mouse_panning", true);
1562
1563 freelook_base_speed = p_settings.get("editors/3d/freelook/freelook_base_speed", 5);
1564 freelook_sensitivity = Math::deg_to_rad((real_t)p_settings.get("editors/3d/freelook/freelook_sensitivity", 0.25));
1565 orbit_sensitivity = Math::deg_to_rad((real_t)p_settings.get("editors/3d/navigation_feel/orbit_sensitivity", 0.004));
1566 translation_sensitivity = p_settings.get("editors/3d/navigation_feel/translation_sensitivity", 1);
1567
1568 // 3D Selection Box Generation
1569 // Copied from the Node3DEditor implementation.
1570
1571 sbox_3d_color = p_settings.get("editors/3d/selection_box_color", Color());
1572
1573 // Use two AABBs to create the illusion of a slightly thicker line.
1574 AABB aabb(Vector3(), Vector3(1, 1, 1));

Callers 1

Calls 15

set_callbacksMethod · 0.80
setup_warped_panningMethod · 0.80
set_scroll_speedMethod · 0.80
get_edgeMethod · 0.80
add_vertexMethod · 0.80
set_shading_modeMethod · 0.80
CursorClass · 0.70
connectMethod · 0.65
ArrayClass · 0.50
ColorClass · 0.50

Tested by

no test coverage detected