Jelajahi Sumber

Merge pull request #40463 from Calinou/doc-editorsettings

Complete the EditorSettings class documentation
Rémi Verschelde 5 tahun lalu
induk
melakukan
ca5033e8ab
1 mengubah file dengan 23 tambahan dan 10 penghapusan
  1. 23 10
      doc/classes/EditorSettings.xml

+ 23 - 10
doc/classes/EditorSettings.xml

@@ -5,11 +5,16 @@
 	</brief_description>
 	<description>
 		Object that holds the project-independent editor settings. These settings are generally visible in the [b]Editor &gt; Editor Settings[/b] menu.
-		Accessing the settings is done by using the regular [Object] API, such as:
+		Property names use slash delimiters to distinguish sections. Setting values can be of any [Variant] type. It's recommended to use [code]snake_case[/code] for editor settings to be consistent with the Godot editor itself.
+		Accessing the settings can be done using the following methods, such as:
 		[codeblock]
-		settings.set(prop,value)
-		settings.get(prop)
-		list_of_settings = settings.get_property_list()
+		# `settings.set("some/property", value)` also works as this class overrides `_set()` internally.
+		settings.set_setting("some/property",value)
+
+		# `settings.get("some/property", value)` also works as this class overrides `_get()` internally.
+		settings.get_setting("some/property")
+
+		var list_of_settings = settings.get_property_list()
 		[/codeblock]
 		[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_editor_settings].
 	</description>
@@ -47,14 +52,14 @@
 			<argument index="0" name="property" type="String">
 			</argument>
 			<description>
-				Erase a given setting (pass full property path).
+				Erases the setting whose name is specified by [code]property[/code].
 			</description>
 		</method>
 		<method name="get_favorites" qualifiers="const">
 			<return type="PackedStringArray">
 			</return>
 			<description>
-				Gets the list of favorite files and directories for this project.
+				Returns the list of favorite files and directories for this project.
 			</description>
 		</method>
 		<method name="get_project_metadata" qualifiers="const">
@@ -67,20 +72,21 @@
 			<argument index="2" name="default" type="Variant" default="null">
 			</argument>
 			<description>
+				Returns project-specific metadata for the [code]section[/code] and [code]key[/code] specified. If the metadata doesn't exist, [code]default[/code] will be returned instead. See also [method set_project_metadata].
 			</description>
 		</method>
 		<method name="get_project_settings_dir" qualifiers="const">
 			<return type="String">
 			</return>
 			<description>
-				Gets the specific project settings path. Projects all have a unique sub-directory inside the settings path where project specific settings are saved.
+				Returns the project-specific settings path. Projects all have a unique subdirectory inside the settings path where project-specific settings are saved.
 			</description>
 		</method>
 		<method name="get_recent_dirs" qualifiers="const">
 			<return type="PackedStringArray">
 			</return>
 			<description>
-				Gets the list of recently visited folders in the file dialog for this project.
+				Returns the list of recently visited folders in the file dialog for this project.
 			</description>
 		</method>
 		<method name="get_setting" qualifiers="const">
@@ -89,6 +95,7 @@
 			<argument index="0" name="name" type="String">
 			</argument>
 			<description>
+				Returns the value of the setting specified by [code]name[/code]. This is equivalent to using [method Object.get] on the EditorSettings instance.
 			</description>
 		</method>
 		<method name="get_settings_dir" qualifiers="const">
@@ -106,6 +113,7 @@
 			<argument index="0" name="name" type="String">
 			</argument>
 			<description>
+				Returns [code]true[/code] if the setting specified by [code]name[/code] exists, [code]false[/code] otherwise.
 			</description>
 		</method>
 		<method name="property_can_revert">
@@ -114,6 +122,7 @@
 			<argument index="0" name="name" type="String">
 			</argument>
 			<description>
+				Returns [code]true[/code] if the setting specified by [code]name[/code] can have its value reverted to the default value, [code]false[/code] otherwise. When this method returns [code]true[/code], a Revert button will display next to the setting in the Editor Settings.
 			</description>
 		</method>
 		<method name="property_get_revert">
@@ -122,6 +131,7 @@
 			<argument index="0" name="name" type="String">
 			</argument>
 			<description>
+				Returns the default value of the setting specified by [code]name[/code]. This is the value that would be applied when clicking the Revert button in the Editor Settings.
 			</description>
 		</method>
 		<method name="set_favorites">
@@ -143,6 +153,7 @@
 			<argument index="2" name="update_current" type="bool">
 			</argument>
 			<description>
+				Sets the initial value of the setting specified by [code]name[/code] to [code]value[/code]. This is used to provide a value for the Revert button in the Editor Settings. If [code]update_current[/code] is true, the current value of the setting will be set to [code]value[/code] as well.
 			</description>
 		</method>
 		<method name="set_project_metadata">
@@ -155,6 +166,7 @@
 			<argument index="2" name="data" type="Variant">
 			</argument>
 			<description>
+				Sets project-specific metadata with the [code]section[/code], [code]key[/code] and [code]data[/code] specified. This metadata is stored outside the project folder and therefore won't be checked into version control. See also [method get_project_metadata].
 			</description>
 		</method>
 		<method name="set_recent_dirs">
@@ -174,19 +186,20 @@
 			<argument index="1" name="value" type="Variant">
 			</argument>
 			<description>
+				Sets the [code]value[/code] of the setting specified by [code]name[/code]. This is equivalent to using [method Object.set] on the EditorSettings instance.
 			</description>
 		</method>
 	</methods>
 	<signals>
 		<signal name="settings_changed">
 			<description>
-				Emitted when editor settings change.
+				Emitted after any editor setting has changed.
 			</description>
 		</signal>
 	</signals>
 	<constants>
 		<constant name="NOTIFICATION_EDITOR_SETTINGS_CHANGED" value="10000">
-			Emitted when editor settings change. It used by various editor plugins to update their visuals on theme changes or logic on configuration changes.
+			Emitted after any editor setting has changed. It's used by various editor plugins to update their visuals on theme changes or logic on configuration changes.
 		</constant>
 	</constants>
 </class>