2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								<?xml version="1.0" encoding="UTF-8" ?>  
						 
					
						
							
								
									
										
										
										
											2023-03-01 01:44:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								<class  name= "EditorResourcePicker"  inherits= "HBoxContainer"  version= "4.1"  xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation= "../class.xsd" >  
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									<brief_description > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										Godot editor's control for selecting [Resource] type properties.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</brief_description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<description > 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										This [Control] node is used in the editor's Inspector dock to allow editing of [Resource] type properties. It provides options for creating, loading, saving and converting resources. Can be used with [EditorInspectorPlugin] to recreate the same behavior.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										[b]Note:[/b] This [Control] does not include any editor for the resource, as editing is controlled by the Inspector dock itself or sub-Inspectors.
							 
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<tutorials > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</tutorials> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<methods > 
							 
						 
					
						
							
								
									
										
										
										
											2021-06-13 01:32:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<method  name= "_handle_menu_selected"  qualifiers= "virtual" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-12-29 20:27:44 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<return  type= "bool"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "id"  type= "int"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
									
										
										
										
											2021-06-13 01:32:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												This virtual method can be implemented to handle context menu items not handled by default. See [method _set_create_options].
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
									
										
										
										
											2021-06-13 01:32:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<method  name= "_set_create_options"  qualifiers= "virtual" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-07-30 15:28:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<return  type= "void"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "menu_node"  type= "Object"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-12 12:07:53 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												This virtual method is called when updating the context menu of [EditorResourcePicker]. Implement this method to override the "New ..." items with your own options. [param menu_node] is a reference to the [PopupMenu] node.
							 
						 
					
						
							
								
									
										
										
										
											2021-06-13 01:32:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												[b]Note:[/b] Implement [method _handle_menu_selected] to handle these custom items.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<method  name= "get_allowed_types"  qualifiers= "const" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-07-30 15:28:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<return  type= "PackedStringArray"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2021-06-13 01:32:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												Returns a list of all allowed types and subtypes corresponding to the [member base_type]. If the [member base_type] is empty, an empty list is returned.
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<method  name= "set_toggle_pressed" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-07-30 15:28:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<return  type= "void"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "pressed"  type= "bool"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												Sets the toggle mode state for the main button. Works only if [member toggle_mode] is set to [code]true[/code].
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</methods> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<members > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "base_type"  type= "String"  setter= "set_base_type"  getter= "get_base_type"  default= """" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The base type of allowed resource types. Can be a comma-separated list of several options.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "editable"  type= "bool"  setter= "set_editable"  getter= "is_editable"  default= "true" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											If [code]true[/code], the value can be selected and edited.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "edited_resource"  type= "Resource"  setter= "set_edited_resource"  getter= "get_edited_resource" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The edited resource value.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-19 15:19:07 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "toggle_mode"  type= "bool"  setter= "set_toggle_mode"  getter= "is_toggle_mode"  default= "false" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											If [code]true[/code], the main button with the resource preview works in the toggle mode. Use [method set_toggle_pressed] to manually set the state.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</members> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<signals > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<signal  name= "resource_changed" > 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "resource"  type= "Resource"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												Emitted when the value of the edited resource was changed.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</signal> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<signal  name= "resource_selected" > 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "resource"  type= "Resource"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-29 07:06:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "1"  name= "inspect"  type= "bool"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
									
										
										
										
											2022-04-29 07:06:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												Emitted when the resource value was set and user clicked to edit it. When [param inspect] is [code]true[/code], the signal was caused by the context menu "Edit" or "Inspect" option.
							 
						 
					
						
							
								
									
										
										
										
											2021-05-17 15:25:38 +03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</signal> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</signals> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</class>