EditorProperty
Hereda: Container < Control < CanvasItem < Node < Object
Control personalizado para editar propiedades que se pueden añadir al EditorInspector.
Descripción
Un control personalizado para editar propiedades que se pueden añadir al EditorInspector. Se añade a través de EditorInspectorPlugin.
Propiedades
|
||
|
||
|
||
|
||
|
||
|
||
focus_mode |
|
|
|
||
|
||
|
||
|
||
|
||
|
Métodos
void |
_set_read_only(read_only: bool) virtual |
void |
_update_property() virtual |
void |
add_focusable(control: Control) |
void |
deselect() |
void |
emit_changed(property: StringName, value: Variant, field: StringName = &"", changing: bool = false) |
get_edited_property() const |
|
is_selected() const |
|
void |
|
void |
set_bottom_editor(editor: Control) |
void |
set_label_reference(control: Control) |
void |
set_object_and_property(object: Object, property: StringName) |
void |
Señales
multiple_properties_changed(properties: PackedStringArray, value: Array) 🔗
Emítela si quieres que se modifiquen varias propiedades al mismo tiempo. No lo utilices si se agrega a través de EditorInspectorPlugin._parse_property().
object_id_selected(property: StringName, id: int) 🔗
Utilizado por los subinspectores. Emitelo si lo que se seleccionó fue una idde objeto.
property_can_revert_changed(property: StringName, can_revert: bool) 🔗
Emitida cuando la revertibilidad (es decir, si tiene un valor no predeterminado y, por lo tanto, se muestra con un icono de reversión) de una propiedad ha cambiado.
property_changed(property: StringName, value: Variant, field: StringName, changing: bool) 🔗
No lo emitas manualmente, utiliza en su lugar el método emit_changed().
property_checked(property: StringName, checked: bool) 🔗
Emitida cuando una propiedad fue comprobada. Usada internamente.
property_deleted(property: StringName) 🔗
Emitida al eliminar una propiedad. Usada internamente.
property_favorited(property: StringName, favorited: bool) 🔗
Emítela si quieres marcar una propiedad como favorita, haciendo que aparezca en la parte superior del inspector.
property_keyed(property: StringName) 🔗
Emite si quieres añadir este valor como una clave de animación (comprueba que la clave esté activada primero).
property_keyed_with_value(property: StringName, value: Variant) 🔗
Emitelo si quieres poner una clave en una propiedad con un solo valor.
property_overridden() 🔗
Emitida cuando se solicita una sobrescritura de configuración para el proyecto actual.
property_pinned(property: StringName, pinned: bool) 🔗
Emítela si quieres marcar (o desmarcar) el valor de una propiedad para que se guarde independientemente de si es igual al valor por defecto.
El valor por defecto es el que la propiedad tendrá cuando el nodo acaba de ser instanciado y puede provenir de una escena ancestral en la cadena de herencia/instanciación, un script o una clase incorporada.
resource_selected(path: String, resource: Resource) 🔗
Si quieres que se edite un subrecurso, emite esta señal con el recurso.
selected(path: String, focusable_idx: int) 🔗
Emitida cuando se selecciona. Se utiliza internamente.
Descripciones de Propiedades
Usado por el inspector, establecido en true cuando la propiedad es comprobable.
Usado por el inspector, establecido en true cuando se comprueba la propiedad.
Usado por el inspector, se establece a true cuando la propiedad puede ser eliminada por el usuario.
Usado por el inspector, se establece a true cuando se dibuja el fondo de la propiedad.
Usado por el inspector, se establece a true cuando se dibuja la etiqueta de la propiedad.
Usado por el inspector, se establece en true cuando la propiedad se dibuja con el color de advertencia del tema del editor. Se usa para propiedades editables de los hijos.
Usado por el inspector, establecido en true cuando la propiedad puede añadir teclas para la animación.
Establezca esta propiedad para cambiar la etiqueta (si quieres mostrar una).
float name_split_ratio = 0.5 🔗
Space distribution ratio between the label and the editing field.
Usado por el inspector, establecido en true cuando la propiedad es de sólo lectura.
Used by the inspector, set to true when the property is selectable.
Used by the inspector, set to true when the property is using folding.
Descripciones de Métodos
void _set_read_only(read_only: bool) virtual 🔗
Llamado cuando el estado de solo lectura de la propiedad cambia. Puede usarse para cambiar los controles personalizados a un estado de solo lectura o modifiable.
void _update_property() virtual 🔗
Cuando se llama a esta función virtual, tu debes actualizar tu editor.
void add_focusable(control: Control) 🔗
Si alguno de los controles añadidos puede obtener el enfoque del teclado, añádalo aquí. Esto asegura que el enfoque se restaurará si el inspector se refresca.
void deselect() 🔗
Dibuja la propiedad como no seleccionada. Usado por el inspector.
void emit_changed(property: StringName, value: Variant, field: StringName = &"", changing: bool = false) 🔗
Si una o varias propiedades han cambiado, esto debe ser llamado. field se utiliza en caso de que tu editor pueda modificar campos por separado (como ejemplo, Vector3.x). El argumento changing evita que el editor solicite que esta propiedad se actualice (deja como false si no estás seguro).
Devuelve el objeto editado.
Nota: Este método podría devolver null si el editor aún no se ha asociado con una propiedad. Sin embargo, en _update_property() y _set_read_only(), se garantiza que este valor no será null.
StringName get_edited_property() const 🔗
Devuelve la propiedad editada. Si tu editor es para una sola propiedad (añadida a través de EditorInspectorPlugin._parse_property()), entonces esto devolverá la propiedad.
Nota: Este método podría devolver null si el editor aún no se ha asociado con una propiedad. Sin embargo, en _update_property() y _set_read_only(), se garantiza que este valor no será null.
Devuelve true si la propiedad se dibuja como seleccionada. Usado por el inspector.
void select(focusable: int = -1) 🔗
Dibujar propiedad según la selección. Utilizado por el inspector.
void set_bottom_editor(editor: Control) 🔗
Coloca el control editor debajo de la etiqueta de la propiedad. El control debe haber sido añadido previamente usando Node.add_child().
void set_label_reference(control: Control) 🔗
Usado por el inspector, se establece a un control que se usará como referencia para calcular el tamaño de la etiqueta.
void set_object_and_property(object: Object, property: StringName) 🔗
Asigna objeto y propiedad para editar.
void update_property() 🔗
Fuerza una actualización de la visualización de la propiedad.