mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			165 lines
		
	
	
	
		
			6 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			165 lines
		
	
	
	
		
			6 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <?xml version="1.0" encoding="UTF-8" ?>
 | |
| <class name="ConfigFile" inherits="Reference" category="Core" version="3.2">
 | |
| 	<brief_description>
 | |
| 		Helper class to handle INI-style files.
 | |
| 	</brief_description>
 | |
| 	<description>
 | |
| 		This helper class can be used to store [Variant] values on the filesystem using INI-style formatting. The stored values are identified by a section and a key:
 | |
| 		[codeblock]
 | |
| 		[section]
 | |
| 		some_key=42
 | |
| 		string_example="Hello World!"
 | |
| 		a_vector=Vector3( 1, 0, 2 )
 | |
| 		[/codeblock]
 | |
| 		The stored data can be saved to or parsed from a file, though ConfigFile objects can also be used directly without accessing the filesystem.
 | |
| 		The following example shows how to parse an INI-style file from the system, read its contents and store new values in it:
 | |
| 		[codeblock]
 | |
| 		var config = ConfigFile.new()
 | |
| 		var err = config.load("user://settings.cfg")
 | |
| 		if err == OK: # If not, something went wrong with the file loading
 | |
| 		    # Look for the display/width pair, and default to 1024 if missing
 | |
| 		    var screen_width = config.get_value("display", "width", 1024)
 | |
| 		    # Store a variable if and only if it hasn't been defined yet
 | |
| 		    if not config.has_section_key("audio", "mute"):
 | |
| 		        config.set_value("audio", "mute", false)
 | |
| 		    # Save the changes by overwriting the previous file
 | |
| 		    config.save("user://settings.cfg")
 | |
| 		[/codeblock]
 | |
| 		Keep in mind that section and property names can't contain spaces. Anything after a space will be ignored on save and on load.
 | |
| 	</description>
 | |
| 	<tutorials>
 | |
| 	</tutorials>
 | |
| 	<methods>
 | |
| 		<method name="erase_section">
 | |
| 			<return type="void">
 | |
| 			</return>
 | |
| 			<argument index="0" name="section" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Deletes the specified section along with all the key-value pairs inside.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="get_section_keys" qualifiers="const">
 | |
| 			<return type="PoolStringArray">
 | |
| 			</return>
 | |
| 			<argument index="0" name="section" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Returns an array of all defined key identifiers in the specified section.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="get_sections" qualifiers="const">
 | |
| 			<return type="PoolStringArray">
 | |
| 			</return>
 | |
| 			<description>
 | |
| 				Returns an array of all defined section identifiers.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="get_value" qualifiers="const">
 | |
| 			<return type="Variant">
 | |
| 			</return>
 | |
| 			<argument index="0" name="section" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="key" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="2" name="default" type="Variant" default="null">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Returns the current value for the specified section and key. If the section and/or the key do not exist, the method returns the value of the optional [code]default[/code] argument, or [code]null[/code] if it is omitted.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="has_section" qualifiers="const">
 | |
| 			<return type="bool">
 | |
| 			</return>
 | |
| 			<argument index="0" name="section" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Returns [code]true[/code] if the specified section exists.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="has_section_key" qualifiers="const">
 | |
| 			<return type="bool">
 | |
| 			</return>
 | |
| 			<argument index="0" name="section" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="key" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Returns [code]true[/code] if the specified section-key pair exists.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="load">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<argument index="0" name="path" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Loads the config file specified as a parameter. The file's contents are parsed and loaded in the ConfigFile object which the method was called on. Returns one of the [constant OK], [constant FAILED] or [code]ERR_*[/code] constants listed in [@GlobalScope]. If the load was successful, the return value is [constant OK].
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="load_encrypted">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<argument index="0" name="path" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="key" type="PoolByteArray">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="load_encrypted_pass">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<argument index="0" name="path" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="pass" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="save">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<argument index="0" name="path" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Saves the contents of the ConfigFile object to the file specified as a parameter. The output file uses an INI-style structure. Returns one of the [constant OK], [constant FAILED] or [code]ERR_*[/code] constants listed in [@GlobalScope]. If the load was successful, the return value is [constant OK].
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="save_encrypted">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<argument index="0" name="path" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="key" type="PoolByteArray">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="save_encrypted_pass">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<argument index="0" name="path" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="pass" type="String">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="set_value">
 | |
| 			<return type="void">
 | |
| 			</return>
 | |
| 			<argument index="0" name="section" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="1" name="key" type="String">
 | |
| 			</argument>
 | |
| 			<argument index="2" name="value" type="Variant">
 | |
| 			</argument>
 | |
| 			<description>
 | |
| 				Assigns a value to the specified key of the specified section. If the section and/or the key do not exist, they are created. Passing a [code]null[/code] value deletes the specified key if it exists, and deletes the section if it ends up empty once the key has been removed.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 	</methods>
 | |
| 	<constants>
 | |
| 	</constants>
 | |
| </class>
 | 
