瀏覽代碼

Merge pull request #54524 from Calinou/animation-editor-add-bypass-confirmation

Skip keyframe creation dialog when holding Shift in the animation editor
Yuri Sizov 2 年之前
父節點
當前提交
3bc842b1b1
共有 3 個文件被更改,包括 5 次插入7 次删除
  1. 0 3
      doc/classes/EditorSettings.xml
  2. 5 3
      editor/animation_track_editor.cpp
  3. 0 1
      editor/editor_settings.cpp

+ 0 - 3
doc/classes/EditorSettings.xml

@@ -389,9 +389,6 @@
 		<member name="editors/animation/autorename_animation_tracks" type="bool" setter="" getter="">
 			If [code]true[/code], automatically updates animation tracks' target paths when renaming or reparenting nodes in the Scene tree dock.
 		</member>
-		<member name="editors/animation/confirm_insert_track" type="bool" setter="" getter="">
-			If [code]true[/code], display a confirmation dialog when adding a new track to an animation by pressing the "key" icon next to a property.
-		</member>
 		<member name="editors/animation/default_create_bezier_tracks" type="bool" setter="" getter="">
 			If [code]true[/code], create a Bezier track instead of a standard track when pressing the "key" icon next to a property. Bezier tracks provide more control over animation curves, but are more difficult to adjust quickly.
 		</member>

+ 5 - 3
editor/animation_track_editor.cpp

@@ -3632,13 +3632,15 @@ void AnimationTrackEditor::commit_insert_queue() {
 		}
 	}
 
-	if (bool(EDITOR_GET("editors/animation/confirm_insert_track")) && num_tracks > 0) {
+	// Skip the confirmation dialog if the user holds Shift while clicking the key icon.
+	if (!Input::get_singleton()->is_key_pressed(Key::SHIFT) && num_tracks > 0) {
+		String shortcut_hint = TTR("Hold Shift when clicking the key icon to skip this dialog.");
 		// Potentially a new key, does not exist.
 		if (num_tracks == 1) {
 			// TRANSLATORS: %s will be replaced by a phrase describing the target of track.
-			insert_confirm_text->set_text(vformat(TTR("Create new track for %s and insert key?"), last_track_query));
+			insert_confirm_text->set_text(vformat(TTR("Create new track for %s and insert key?") + "\n\n" + shortcut_hint, last_track_query));
 		} else {
-			insert_confirm_text->set_text(vformat(TTR("Create %d new tracks and insert keys?"), num_tracks));
+			insert_confirm_text->set_text(vformat(TTR("Create %d new tracks and insert keys?") + "\n\n" + shortcut_hint, num_tracks));
 		}
 
 		insert_confirm_bezier->set_visible(all_bezier);

+ 0 - 1
editor/editor_settings.cpp

@@ -709,7 +709,6 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) {
 
 	// Animation
 	_initial_set("editors/animation/autorename_animation_tracks", true);
-	_initial_set("editors/animation/confirm_insert_track", true);
 	_initial_set("editors/animation/default_create_bezier_tracks", false);
 	_initial_set("editors/animation/default_create_reset_tracks", true);
 	_initial_set("editors/animation/onion_layers_past_color", Color(1, 0, 0));