You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Merge pull request #106684 from VojtaStruhar/106388-snap-settings
Change snap settings to not use LineEdits
This commit is contained in:
@@ -7183,9 +7183,9 @@ void Node3DEditor::edit(Node3D *p_spatial) {
|
||||
}
|
||||
|
||||
void Node3DEditor::_snap_changed() {
|
||||
snap_translate_value = snap_translate->get_text().to_float();
|
||||
snap_rotate_value = snap_rotate->get_text().to_float();
|
||||
snap_scale_value = snap_scale->get_text().to_float();
|
||||
snap_translate_value = snap_translate->get_value();
|
||||
snap_rotate_value = snap_rotate->get_value();
|
||||
snap_scale_value = snap_scale->get_value();
|
||||
|
||||
EditorSettings::get_singleton()->set_project_metadata("3d_editor", "snap_translate_value", snap_translate_value);
|
||||
EditorSettings::get_singleton()->set_project_metadata("3d_editor", "snap_rotate_value", snap_rotate_value);
|
||||
@@ -7193,12 +7193,9 @@ void Node3DEditor::_snap_changed() {
|
||||
}
|
||||
|
||||
void Node3DEditor::_snap_update() {
|
||||
double snap = EDITOR_GET("interface/inspector/default_float_step");
|
||||
int snap_step_decimals = Math::range_step_decimals(snap);
|
||||
|
||||
snap_translate->set_text(String::num(snap_translate_value, snap_step_decimals));
|
||||
snap_rotate->set_text(String::num(snap_rotate_value, snap_step_decimals));
|
||||
snap_scale->set_text(String::num(snap_scale_value, snap_step_decimals));
|
||||
snap_translate->set_value(snap_translate_value);
|
||||
snap_rotate->set_value(snap_rotate_value);
|
||||
snap_scale->set_value(snap_scale_value);
|
||||
}
|
||||
|
||||
void Node3DEditor::_xform_dialog_action() {
|
||||
@@ -9906,20 +9903,30 @@ Node3DEditor::Node3DEditor() {
|
||||
VBoxContainer *snap_dialog_vbc = memnew(VBoxContainer);
|
||||
snap_dialog->add_child(snap_dialog_vbc);
|
||||
|
||||
snap_translate = memnew(LineEdit);
|
||||
snap_translate->set_select_all_on_focus(true);
|
||||
snap_translate->set_accessibility_name(TTRC("Translate Snap:"));
|
||||
snap_dialog_vbc->add_margin_child(TTRC("Translate Snap:"), snap_translate);
|
||||
snap_translate = memnew(EditorSpinSlider);
|
||||
snap_translate->set_min(0.0);
|
||||
snap_translate->set_step(0.001);
|
||||
snap_translate->set_max(10.0);
|
||||
snap_translate->set_suffix("m");
|
||||
snap_translate->set_allow_greater(true);
|
||||
snap_translate->set_accessibility_name(TTRC("Translate Snap"));
|
||||
snap_dialog_vbc->add_margin_child(TTR("Translate Snap:"), snap_translate);
|
||||
|
||||
snap_rotate = memnew(LineEdit);
|
||||
snap_rotate->set_select_all_on_focus(true);
|
||||
snap_rotate->set_accessibility_name(TTRC("Rotate Snap (deg.):"));
|
||||
snap_dialog_vbc->add_margin_child(TTRC("Rotate Snap (deg.):"), snap_rotate);
|
||||
snap_rotate = memnew(EditorSpinSlider);
|
||||
snap_rotate->set_min(0.0);
|
||||
snap_rotate->set_step(0.1);
|
||||
snap_rotate->set_max(360);
|
||||
snap_rotate->set_suffix(U"°");
|
||||
snap_rotate->set_accessibility_name(TTRC("Rotate Snap"));
|
||||
snap_dialog_vbc->add_margin_child(TTR("Rotate Snap:"), snap_rotate);
|
||||
|
||||
snap_scale = memnew(LineEdit);
|
||||
snap_scale->set_select_all_on_focus(true);
|
||||
snap_scale->set_accessibility_name(TTRC("Scale Snap (%):"));
|
||||
snap_dialog_vbc->add_margin_child(TTRC("Scale Snap (%):"), snap_scale);
|
||||
snap_scale = memnew(EditorSpinSlider);
|
||||
snap_scale->set_min(0.0);
|
||||
snap_scale->set_step(1.0);
|
||||
snap_scale->set_max(100);
|
||||
snap_scale->set_suffix("%");
|
||||
snap_scale->set_accessibility_name(TTRC("Scale Snap"));
|
||||
snap_dialog_vbc->add_margin_child(TTR("Scale Snap:"), snap_scale);
|
||||
|
||||
/* SETTINGS DIALOG */
|
||||
|
||||
|
||||
@@ -799,9 +799,9 @@ private:
|
||||
|
||||
bool snap_enabled;
|
||||
bool snap_key_enabled;
|
||||
LineEdit *snap_translate = nullptr;
|
||||
LineEdit *snap_rotate = nullptr;
|
||||
LineEdit *snap_scale = nullptr;
|
||||
EditorSpinSlider *snap_translate = nullptr;
|
||||
EditorSpinSlider *snap_rotate = nullptr;
|
||||
EditorSpinSlider *snap_scale = nullptr;
|
||||
|
||||
LineEdit *xform_translate[3];
|
||||
LineEdit *xform_rotate[3];
|
||||
|
||||
Reference in New Issue
Block a user