Clase wxPropertyGridInterface
La mayor parte de la interfaz de manipulación de propiedades compartida por wxPropertyGrid, wxPropertyGridPage y wxPropertyGridManager se define en esta clase.
Jerarquía:
Observaciones
En el componente wxPropertyGrid independiente, esta clase se conocía como wxPropertyContainerMethods.
Todas las funciones miembro de operación de propiedades de wxPropertyGridInterface aceptan un argumento id wxPGPropArg especial, con el que se puede hacer referencia a las propiedades por su puntero (para mejorar el rendimiento) o por su nombre (para mayor comodidad).
Tipos miembro
EditableStateFlags
enum wxPropertyGridInterface::EditableStateFlags { SelectionState , ExpandedState , ScrollPosState , PageState , SplitterPosState , DescBoxState , AllStates }
Indicadores para wxPropertyGridInterface::SaveEditableState() y wxPropertyGridInterface::RestoreEditableState().
Enumerado
- SelectionState
- Incluye la propiedad seleccionada.
- ExpandedState
- Incluye información sobre las propiedades expandidas/colapsadas.
- ScrollPosState
- Incluye la posición de desplazamiento.
- PageState
Incluye información sobre la página seleccionada.
Sólo se aplica a wxPropertyGridManager.
- SplitterPosState
Incluye la posición del divisor.
Se almacena para cada página.
- DescBoxState
Incluye el tamaño del cuadro de descripción.
Sólo se aplica a wxPropertyGridManager.
- AllStates
Incluye toda la información de estado editable por el usuario compatible.
Este suele ser el valor predeterminado.
Funciones miembro
~wxPropertyGridInterface()
virtual wxPropertyGridInterface::~wxPropertyGridInterface()
Destructor
Append()
wxPGProperty* wxPropertyGridInterface::Append(wxPGProperty * property)
Añade la propiedad a la lista.
wxPropertyGrid asume la propiedad del objeto. Se convierte en hijo de la categoría añadida más recientemente.
Observaciones
- wxPropertyGrid toma la propiedad del puntero de la propiedad.
- Si se añade una categoría con un nombre idéntico al de una categoría que ya existe en wxPropertyGrid, la categoría recién creada se elimina y la categoría añadida más recientemente (bajo la cual se añaden las propiedades) se establece como la que tiene el mismo nombre. Esto permite añadir más fácilmente elementos a las mismas categorías en varias pasadas.
- No se vuelve a dibujar automáticamente el control, por lo que es posible que se tenga que llamar a Refresh() al llamar a esta función después de que el control se haya mostrado por primera vez.
- Esta función deselecciona la propiedad seleccionada, si la hay. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
AppendIn()
wxPGProperty* wxPropertyGridInterface::AppendIn( wxPGPropArg id, wxPGProperty * newProperty )
Igual que Append(), pero añade debajo de la propiedad principal dada.
Parámetros
- id
- Nombre o puntero a la propiedad principal.
- newProperty
- Propiedad que se va a añadir.
BeginAddChildren()
void wxPropertyGridInterface::BeginAddChildren(wxPGPropArg id)
Para añadir nuevos elementos a una propiedad con hijos privados (por ejemplo, wxFlagsProperty), es necesario llamar a este método.
Una vez finalizado el rellenado, es necesario llamar a EndAddChildren().
ChangePropertyValue()
bool wxPropertyGridInterface::ChangePropertyValue( wxPGPropArg id, wxVariant newValue )
Cambia el valor de una propiedad, como si lo hiciera el usuario.
Utilizar esta función en lugar de SetPropertyValue() si se necesita que el valor se someta a un proceso de validación y también se envíe wxEVT_PG_CHANGED.
Observaciones
Dado que esta función envía wxEVT_PG_CHANGED, no debe llamarse desde el controlador EVT_PG_CHANGED.
Valor de retorno
Devuelve true si el valor se ha cambiado correctamente.
Clear()
virtual void wxPropertyGridInterface::Clear()
Elimina todas las propiedades.
Observaciones
Esta función deselecciona la propiedad seleccionada, si la hay. No se respeta la opción de error de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
Implementado en wxPropertyGrid, wxPropertyGridManager y wxPropertyGridPage.
ClearModifiedStatus()
void wxPropertyGridInterface::ClearModifiedStatus()
Restablece el estado modificado de todas las propiedades.
ClearSelection()
bool wxPropertyGridInterface::ClearSelection(bool validation = false)
Borra la selección actual, si la hay.
Parámetros
- validation
- Si se establece en falso, deseleccionar la propiedad siempre funcionará, incluso si su editor tenía un valor no válido.
Valor de retorno
Devuelve true si se realiza correctamente o si no había ninguna selección. Puede fallar si la validación estaba habilitada y el editor activo tenía un valor no válido.
Observaciones
En wxWidgets 2.9 y versiones posteriores, esta función ya no envía wxPG_EVT_SELECTED.
Collapse()
bool wxPropertyGridInterface::Collapse(wxPGPropArg id)
Colapsa la categoría o propiedad dada con hijos.
Valor de retorno
Devuelve verdadero si realmente se ha colapsado.
Observaciones
Esta función puede deseleccionar la propiedad seleccionada, si la hay. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
CollapseAll()
bool wxPropertyGridInterface::CollapseAll()
Colapsa todos los elementos que se pueden colapsar.
Valor de retorno
Devuelve falso si falla (puede fallar si no se puede validar el valor del editor).
Observaciones
Esta función borra la selección. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
DeleteProperty()
void wxPropertyGridInterface::DeleteProperty(wxPGPropArg id)
Elimina y borra una propiedad y todos sus elementos secundarios.
Parámetros
- id
- Puntero o nombre de una propiedad.
Observaciones
Si se elimina una propiedad en un controlador de eventos wxPropertyGrid, la eliminación real se pospone hasta el siguiente evento inactivo. Esta función deselecciona la propiedad seleccionada, si la hay. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
DisableProperty()
bool wxPropertyGridInterface::DisableProperty(wxPGPropArg id)
Desactiva una propiedad.
Observaciones
La propiedad se actualiza con la nueva configuración.
EditorValidate()
bool wxPropertyGridInterface::EditorValidate()
Devuelve verdadero si se han confirmado todos los cambios en los datos de la cuadrícula de propiedades.
Normalmente solo devuelve falso si el valor del editor activo ha sido invalidado por un wxValidator.
EnableProperty()
bool wxPropertyGridInterface::EnableProperty( wxPGPropArg id, bool enable = true )
Activa o desactiva la propiedad.
Las propiedades desactivadas suelen aparecer con texto gris.
Parámetros
- id
- Nombre o puntero a una propiedad.
- enable
- Si es falso, la propiedad se desactiva.
Observaciones
La propiedad se actualiza con la nueva configuración.
EndAddChildren()
void wxPropertyGridInterface::EndAddChildren(wxPGPropArg id)
Se llama una vez que ha finalizado el poblamiento de la propiedad con hijos fijos.
Expand()
bool wxPropertyGridInterface::Expand(wxPGPropArg id)
Expande la categoría o propiedad dada con sus elementos secundarios.
Valor de retorno
Devuelve verdadero si realmente se ha expandido.
Observaciones
Esta función puede deseleccionar la propiedad seleccionada, si la hay. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
ExpandAll()
bool wxPropertyGridInterface::ExpandAll(bool expand = true)
Expande todos los elementos que se pueden expandir.
Observaciones
Esta función borra la selección. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
GetColumnProportion()
int wxPropertyGridInterface::GetColumnProportion(unsigned int column) const
Devuelve la proporción del tamaño automáticol de la columna dada.
GetEditorByName()
static wxPGEditor* wxPropertyGridInterface::GetEditorByName(const wxString & editorName)
Devuelve el puntero del editor con el nombre dado.
GetFirst()
wxPGProperty* wxPropertyGridInterface::GetFirst(int flags = wxPG_ITERATE_ALL)
Devuelve el identificador del primer elemento que coincide con los criterios especificados.
Parámetros
- flags
- Ver lo indicadores de wxPropertyGridIterator.
GetFirst()
const wxPGProperty* wxPropertyGridInterface::GetFirst(int flags = wxPG_ITERATE_ALL) const
GetFirstChild()
wxPGProperty* wxPropertyGridInterface::GetFirstChild(wxPGPropArg id)
Devuelve el identificador del primer hijo de la propiedad dada.
Observaciones
¡No devuelve hijos privados!
GetIterator()
wxPropertyGridIterator wxPropertyGridInterface::GetIterator( int flags, int startPos )
Devuelve una instancia de clase iteradora.
Parámetros
- flags
- Ver las banderas de wxPropertyGridIterator. El valor wxPG_ITERATE_DEFAULT provoca la iteración sobre todo excepto las propiedades secundarias privadas.
- startPos
- O bien wxTOP o bien wxBOTTOM. wxTOP indicará que las iteraciones comienzan desde la primera propiedad desde arriba, y wxBOTTOM significa que la iteración comenzará desde el elemento válido más abajo.
GetIterator()
wxPropertyGridIterator wxPropertyGridInterface::GetIterator( int flags, int startPos ) const
GetIterator()
wxPropertyGridIterator wxPropertyGridInterface::GetIterator( int flags = wxPG_ITERATE_DEFAULT, wxPGProperty * firstProp = nullptr )
Devuelve una instancia de clase iteradora.
Parámetros
- flags
- Ver las banderas de wxPropertyGridIterator. El valor wxPG_ITERATE_DEFAULT provoca la iteración sobre todo excepto las propiedades secundarias privadas.
- firstProp
- Propiedad desde la que comenzar la iteración. Si es nullptr, se utiliza la primera secundaria de la raíz.
GetIterator()
wxPropertyGridIterator wxPropertyGridInterface::GetIterator( int flags = wxPG_ITERATE_DEFAULT, wxPGProperty * firstProp = nullptr ) const
GetPropertiesWithFlag()
void wxPropertyGridInterface::GetPropertiesWithFlag( wxArrayPGProperty * targetArr, wxPGFlags flags, bool inverse = false, int iterFlags = (wxPG_ITERATE_PROPERTIES|wxPG_ITERATE_HIDDEN|wxPG_ITERATE_CATEGORIES) ) const
Añade a targetArr punteros a propiedades que tienen establecidos los indicadores especificados.
Sin embargo, si inverse se establece en true, sólo se almacenan las propiedades sin los indicadores especificados.
Parámetros
- targetArr
- Matriz de punteros a propiedades en la que se almacenan las propiedades encontradas.
- flags
- Indicadores de propiedad que se van a utilizar.
- inverse
- Si es false, se almacenan las propiedades que tienen los indicadores especificados; de lo contrario, sólo se almacenan las propiedades sin los indicadores especificados.
- iterFlags
- Indicadores del iterador que se van a utilizar. El valor predeterminado es todo excepto los hijos privados. Consultar los Indicadores de wxPropertyGridIterator.
GetProperty()
wxPGProperty* wxPropertyGridInterface::GetProperty(const wxString & name) const
Devuelve un puntero a una propiedad con el nombre dado (distingue entre mayúsculas y minúsculas).
Si no existe ninguna propiedad con ese nombre, se devuelve un puntero nullptr.
Observaciones
No se puede acceder globalmente a las propiedades que no tienen categoría ni padre raíz mediante su nombre. En su lugar, utilizar "<propiedad>.<subpropiedad>" en lugar de "<subpropiedad>".
GetPropertyAttribute()
wxVariant wxPropertyGridInterface::GetPropertyAttribute( wxPGPropArg id, const wxString & attrName ) const
Devuelve el valor del atributo dado.
Si no se encuentra ninguno, devuelve wxVariant nulo.
GetPropertyAttributes()
const wxPGAttributeStorage& wxPropertyGridInterface::GetPropertyAttributes(wxPGPropArg id) const
Devuelve un almacenamiento similar a un mapa de los atributos de la propiedad.
Observaciones
Hay que tener en cuenta que si se establece el estilo adicional wxPG_EX_WRITEONLY_BUILTIN_ATTRIBUTES, los atributos integrados no se incluyen en el almacenamiento.
GetPropertyBackgroundColour()
wxColour wxPropertyGridInterface::GetPropertyBackgroundColour(wxPGPropArg id) const
Devuelve el color de fondo de la primera celda de una propiedad.
GetPropertyByLabel()
wxPGProperty* wxPropertyGridInterface::GetPropertyByLabel(const wxString & label) const
Devuelve la primera propiedad cuya etiqueta coincida con la cadena dada.
devuelve nullptr si no se encuentra ninguna. Hay que tener en cuenta que esta operación es muy lenta en comparación con GetPropertyByName().
GetPropertyByName()
wxPGProperty* wxPropertyGridInterface::GetPropertyByName(const wxString & name) const
Devuelve un puntero a una propiedad con el nombre dado (distingue entre mayúsculas y minúsculas).
Si no existe ninguna propiedad con ese nombre, se devuelve un puntero nullptr.
Observaciones
No se puede acceder globalmente a las propiedades que no tienen categoría ni padre raíz mediante su nombre. En su lugar, utilizar "<propiedad>.<subpropiedad>" en lugar de "<subpropiedad>".
GetPropertyByName()
wxPGProperty* wxPropertyGridInterface::GetPropertyByName( const wxString & name, const wxString & subname ) const
Devuelve el subnombre de la propiedad secundaria del nombre de la propiedad.
Es lo mismo que llamar a GetPropertyByName("name.subname"), aunque ligeramente más rápido.
GetPropertyByNameA()
wxPGProperty* wxPropertyGridInterface::GetPropertyByNameA(const wxString & name) const
Como GetPropertyByName() pero con mensaje de error de assert.
GetPropertyCategory()
wxPropertyCategory* wxPropertyGridInterface::GetPropertyCategory(wxPGPropArg id) const
Devuelve el puntero de la categoría principal más cercana a la propiedad.
Si no se encuentra ninguna categoría, devuelve nullptr.
GetPropertyClientData()
void* wxPropertyGridInterface::GetPropertyClientData(wxPGPropArg id) const
Devuelve los datos del cliente (void*) de una propiedad.
GetPropertyEditor()
const wxPGEditor* wxPropertyGridInterface::GetPropertyEditor(wxPGPropArg id) const
Devuelve el editor de la propiedad.
GetPropertyHelpString()
wxString wxPropertyGridInterface::GetPropertyHelpString(wxPGPropArg id) const
Devuelve la cadena de ayuda asociada a una propiedad.
GetPropertyImage()
wxBitmap* wxPropertyGridInterface::GetPropertyImage(wxPGPropArg id) const
Devuelve el valor de la imagen personalizada de la propiedad (nullptr si no hay ninguna).
GetPropertyLabel()
const wxString& wxPropertyGridInterface::GetPropertyLabel(wxPGPropArg id)
Devuelve la etiqueta de una propiedad.
GetPropertyName()
wxString wxPropertyGridInterface::GetPropertyName(wxPGProperty * property)
Devuelve el nombre de la propiedad, mediante el cual se puede acceder a ella globalmente.
GetPropertyParent()
wxPGProperty* wxPropertyGridInterface::GetPropertyParent(wxPGPropArg id)
Devuelve el elemento principal de una propiedad.
GetPropertyTextColour()
wxColour wxPropertyGridInterface::GetPropertyTextColour(wxPGPropArg id) const
Devuelve el color del texto de la primera celda de una propiedad.
GetPropertyValidator()
wxValidator* wxPropertyGridInterface::GetPropertyValidator(wxPGPropArg id)
Devuelve el validador de una propiedad como referencia, que se puede pasar a cualquier número de SetPropertyValidator.
GetPropertyValue()
wxVariant wxPropertyGridInterface::GetPropertyValue(wxPGPropArg id)
GetPropertyValueAsArrayInt()
wxArrayInt wxPropertyGridInterface::GetPropertyValueAsArrayInt(wxPGPropArg id) const
Devuelve el valor de la propiedad como wxArrayInt.
GetPropertyValueAsArrayString()
wxArrayString wxPropertyGridInterface::GetPropertyValueAsArrayString(wxPGPropArg id) const
Devuelve el valor de la propiedad como wxArrayString.
GetPropertyValueAsBool()
bool wxPropertyGridInterface::GetPropertyValueAsBool(wxPGPropArg id) const
Devuelve el valor de la propiedad como bool.
GetPropertyValueAsDateTime()
wxDateTime wxPropertyGridInterface::GetPropertyValueAsDateTime(wxPGPropArg id) const
Devuelve el valor de la propiedad como wxDateTime.
GetPropertyValueAsDouble()
double wxPropertyGridInterface::GetPropertyValueAsDouble(wxPGPropArg id) const
Devuelve el valor de la propiedad como un número de coma flotante de doble precisión.
GetPropertyValueAsInt()
int wxPropertyGridInterface::GetPropertyValueAsInt(wxPGPropArg id) const
Devuelve el valor de la propiedad como un número entero.
GetPropertyValueAsLong()
long wxPropertyGridInterface::GetPropertyValueAsLong(wxPGPropArg id) const
Devuelve el valor de la propiedad como un número entero.
GetPropertyValueAsLongLong()
wxLongLong_t wxPropertyGridInterface::GetPropertyValueAsLongLong(wxPGPropArg id) const
Devuelve el valor de la propiedad como un entero con signo de 64 bits nativo.
GetPropertyValueAsString()
wxString wxPropertyGridInterface::GetPropertyValueAsString(wxPGPropArg id) const
Devuelve el valor de la propiedad como wxString.
Si la propiedad no utiliza el tipo de valor cadena, su valor se convierte utilizando wxPGProperty::GetValueAsString().
GetPropertyValueAsULong()
unsigned long wxPropertyGridInterface::GetPropertyValueAsULong(wxPGPropArg id) const
Devuelve el valor de la propiedad como un entero sin signo.
GetPropertyValueAsULongLong()
wxULongLong_t wxPropertyGridInterface::GetPropertyValueAsULongLong(wxPGPropArg id) const
Devuelve el valor de la propiedad como un entero sin signo de 64 bits nativo.
GetPropertyValues()
wxVariant wxPropertyGridInterface::GetPropertyValues( const wxString & listname = wxString(), wxPGProperty * baseparent = nullptr, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::DontRecurse ) const
Devuelve una lista wxVariant que contiene versiones wxVariant de todos los valores de propiedad.
El orden no está garantizado.
Parámetros
- listname
- Nombre de la lista wxVariant devuelta.
- baseparent
- La propiedad base cuyos valores se consultarán en las propiedades secundarias.
- flags
- Utilizar wxPGPropertyValuesFlags::KeepStructure para conservar la estructura de categorías; cada subcategoría será su propia lista wxVariantList de wxVariant. Utilizar wxPGPropertyValuesFlags::IncAttributes para incluir también los atributos de las propiedades. Cada atributo se almacenará como una variante de lista denominada "@<propname>@attr".
GetSelectedProperties()
const wxArrayPGProperty& wxPropertyGridInterface::GetSelectedProperties() const
Devuelve la lista de propiedades seleccionadas actualmente.
Observaciones
wxArrayPGProperty debe ser compatible con la API std::vector.
GetSelection()
wxPGProperty* wxPropertyGridInterface::GetSelection() const
Devuelve la propiedad seleccionada actualmente, nullptr si no hay ninguna.
Observaciones
Cuando se utiliza el estilo adicional wxPG_EX_MULTIPLE_SELECTION, esta función miembro devuelve la propiedad enfocada, es decir, aquella que puede tener el editor activo.
GetVIterator()
virtual wxPGVIterator wxPropertyGridInterface::GetVIterator(int flags) const
Similar a GetIterator(), pero en su lugar devuelve una instancia wxPGVIterator, que puede ser útil para iterar hacia adelante a través de contenedores de propiedades arbitrarios.
Parámetros
- flags
- Ver los indicadores wxPropertyGridIterator.
Reimplementado en wxPropertyGridManager.
HideProperty()
bool wxPropertyGridInterface::HideProperty( wxPGPropArg id, bool hide = true, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::Recurse )
Oculta o muestra una propiedad.
Parámetros
- id
- Nombre o puntero a una propiedad.
- hide
- Si es verdadero, oculta la propiedad; de lo contrario, la muestra.
- flags
- De forma predeterminada, los cambios se aplican de forma recursiva. Establecer el parámetro wxPGPropertyValuesFlags::DontRecurse para evitarlo.
InitAllTypeHandlers()
static void wxPropertyGridInterface::InitAllTypeHandlers()
Inicializa todos los tipos de propiedades.
Provoca referencias a la mayoría de los archivos de objetos de la biblioteca, por lo que llamar a esta función puede provocar un aumento significativo del tamaño del ejecutable al enlazar con la biblioteca estática.
Insert()
wxPGProperty* wxPropertyGridInterface::Insert( wxPGPropArg parent, int index, wxPGProperty * newProperty )
Inserta una propiedad en el contenedor de propiedades.
Consultar la otra sobrecarga para obtener más detalles.
Parámetros
- parent
- La nueva propiedad se inserta en esta categoría. Disponible sólo en la segunda variante. Hay dos versiones de esta función para permitir que este parámetro sea un identificador o un nombre para una propiedad.
- index
- Índice en la categoría. Disponible sólo en la segunda variante. Si el índice es < 0, la propiedad se añade a la categoría.
- newProperty
- Puntero a la propiedad insertada. wxPropertyGrid tomará posesión de este objeto.
Valor de retorno
Devuelve newProperty.
Insert()
wxPGProperty* wxPropertyGridInterface::Insert( wxPGPropArg priorThis, wxPGProperty * newProperty )
Inserta una propiedad en el contenedor de propiedades.
Parámetros
- priorThis
- La nueva propiedad se inserta justo antes de esta. Disponible sólo en la primera variante. Hay dos versiones de esta función para permitir que este parámetro sea un identificador o un nombre para una propiedad.
- newProperty
- Puntero a la propiedad insertada. wxPropertyGrid tomará posesión de este objeto.
Valor de retorno
Devuelve newProperty.
Observaciones
wxPropertyGrid asume la propiedad del puntero de la propiedad.
Aunque Append puede ser una forma más rápida de añadir elementos, hay que tener en cuenta que cuando ambos tipos de almacenamiento de datos (categórico y no categórico) están activos, Insert se vuelve aún más lento. Esto es especialmente cierto si el modo actual es no categórico.
Esta función deselecciona la propiedad seleccionada, si la hay. No se respeta la opción de fallo de validación wxPGVFBFlags::StayInProperty, es decir, la selección se borra incluso si el editor tenía un valor no válido.
Ejemplo de uso:
// añadir categoría
wxPGProperty* my_cat_id = propertygrid->Append( new wxPropertyCategory("Mi Categoria") );
...
// insertar en la categoría - usando la segunda varianta
wxPGProperty* my_item_id_1 = propertygrid->Insert( my_cat_id, 0, new wxStringProperty("Mi cadena 1") );
// insertar antes del primer ítem - usando la primera variante
wxPGProperty* my_item_id_2 = propertygrid->Insert( my_item_id, new wxStringProperty("M cadena 2") );
IsPropertyCategory()
bool wxPropertyGridInterface::IsPropertyCategory(wxPGPropArg id) const
Devuelve verdadero si la propiedad es una categoría.
IsPropertyEnabled()
bool wxPropertyGridInterface::IsPropertyEnabled(wxPGPropArg id) const
Devuelve verdadero si la propiedad está habilitada.
IsPropertyExpanded()
bool wxPropertyGridInterface::IsPropertyExpanded(wxPGPropArg id) const
Devuelve verdadero si la propiedad dada está expandida.
Naturalmente, siempre devuelve falso para las propiedades que no se pueden expandir.
IsPropertyModified()
bool wxPropertyGridInterface::IsPropertyModified(wxPGPropArg id) const
Devuelve verdadero si la propiedad ha sido modificada después de establecer el valor o borrar el indicador de modificación por parte del software.
IsPropertySelected()
bool wxPropertyGridInterface::IsPropertySelected(wxPGPropArg id) const
Devuelve verdadero si la propiedad está seleccionada.
IsPropertyShown()
bool wxPropertyGridInterface::IsPropertyShown(wxPGPropArg id) const
Devuelve verdadero si la propiedad se muestra (es decir, no se ha llamado a HideProperty() con verdadero para ella).
IsPropertyValueUnspecified()
bool wxPropertyGridInterface::IsPropertyValueUnspecified(wxPGPropArg id) const
Devuelve verdadero si el valor de la propiedad está establecido en no especificado.
LimitPropertyEditing()
void wxPropertyGridInterface::LimitPropertyEditing( wxPGPropArg id, bool limit = true )
Desactiva (limit = true) o activa (limit = false) el editor wxTextCtrl de una propiedad, si no es el único medio para editar el valor.
Observaciones
La propiedad se actualiza con la nueva configuración.
RefreshGrid()
virtual void wxPropertyGridInterface::RefreshGrid(wxPropertyGridPageState * state = nullptr)
Si el estado se muestra en su cuadrícula, actualízarlo ahora.
RefreshProperty()
virtual void wxPropertyGridInterface::RefreshProperty(wxPGProperty<(a> * p)
Observaciones
Esta función vuelve a seleccionar la propiedad y puede provocar un parpadeo excesivo, por lo que, para llamar a Refresh() en un rectángulo de una sola propiedad, llamar a DrawItem() en su lugar.
Implementado en wxPropertyGrid y wxPropertyGridPage.
RegisterAdditionalEditors()
static void wxPropertyGridInterface::RegisterAdditionalEditors()
Inicializa editores de propiedades adicionales (SpinCtrl, etc.).
Provoca referencias a la mayoría de los archivos de objetos de la biblioteca, por lo que llamar a esto puede causar un aumento significativo en el tamaño del ejecutable al enlazar con la biblioteca estática.
RemoveProperty()
wxPGProperty* wxPropertyGridInterface::RemoveProperty(wxPGPropArg id)
Elimina una propiedad.
No elimina el objeto de propiedad, sino que lo devuelve.
Parámetros
- id
- Puntero o nombre de una propiedad.
Observaciones
La propiedad eliminada no puede tener elementos secundarios.
Además, si elimina una propiedad en un controlador de eventos wxPropertyGrid, la eliminación real se pospone hasta el siguiente evento inactivo.
ReplaceProperty()
wxPGProperty* wxPropertyGridInterface::ReplaceProperty( wxPGPropArg id, wxPGProperty * property )
Reemplaza la propiedad con id por una nueva.
Por ejemplo, este código reemplaza la propiedad existente llamada "Flags" por otra que tendrá un conjunto diferente de elementos:
pg->ReplaceProperty("Flags", wxFlagsProperty("Flags", wxPG_LABEL, newItems))
RestoreEditableState()
bool wxPropertyGridInterface::RestoreEditableState( const wxString & src, int restoreStates = AllStates )
Restaura el estado editable por el usuario.
Ver también wxPropertyGridInterface::SaveEditableState().
Parámetros
- src
- Cadena generada por SaveEditableState.
- restoreStates
- Qué partes restaurar de la cadena fuente. Ver la lista de indicadores de estado editable.
Valor de retorno
Devuelve false si hubo algún problema al leer la cadena.
Observaciones
Si algunas partes del estado (como la posición del desplazamiento o del divisor) no se restauran correctamente, asegúrarse de llamar a esta función después de haber establecido el tamaño de wxPropertyGrid (esto puede resultar complicado en ocasiones cuando se utilizan sizers).
SaveEditableState()
wxString wxPropertyGridInterface::SaveEditableState(int includedStates = AllStates) const
Se utiliza para adquirir el estado editable por el usuario (propiedad seleccionada, propiedades expandidas, posición de desplazamiento, posiciones del divisor).
Parámetros
- includedStates
- Qué partes del estado se deben incluir. Consultar la lista de indicadores de estado editable
SetBoolChoices()
static void wxPropertyGridInterface::SetBoolChoices( const wxString & trueChoice, const wxString & falseChoice )
Establece las cadenas que aparecen en el menú desplegable de opciones de una propiedad wxBoolProperty.
Los valores predeterminados son "True" y "False", por lo que cambiarlos por, por ejemplo, "Sí" y "No" puede resultar útil en algunas aplicaciones menos técnicas.
SetColumnProportion()
bool wxPropertyGridInterface::SetColumnProportion( unsigned int column, int proportion )
Establece la proporción de una columna autoajustable.
Es necesario utilizar el estilo de ventana wxPG_SPLITTER_AUTO_CENTER para indicar que las columnas son autoajustables.
Valor de retorno
Devuelve falso en caso de error.
Observaciones
Se debe llamar a esta función para cada una de las páginas de wxPropertyGridManager (si se utiliza).
SetPropertyAttribute()
void wxPropertyGridInterface::SetPropertyAttribute( wxPGPropArg id, const wxString & attrName, wxVariant value, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::DontRecurse )
Establece un atributo para esta propiedad.
Parámetros
- id
- Nombre o puntero a una propiedad.
- attrName
- Identificador de texto del atributo. Consultar Identificadores de atributos de propiedades de wxPropertyGrid.
- value
- Valor del atributo.
- flags
- Opcional. Utilizar wxPGPropertyValuesFlags::Recurse para establecer el atributo en las propiedades secundarias de forma recursiva.
Observaciones
Establecer el valor del atributo en wxVariant nulo simplemente lo eliminará del conjunto de atributos de la propiedad.
La propiedad se actualiza con la nueva configuración.
SetPropertyAttributeAll()
Establece el atributo de propiedad para todas las propiedades aplicables.
Asegurarse de utilizar este método sólo después de haber añadido todas las propiedades a la cuadrícula.
Observaciones
Las propiedades se actualizan con la nueva configuración.
SetPropertyBackgroundColour()
void wxPropertyGridInterface::SetPropertyBackgroundColour( wxPGPropArg id, const wxColour & colour, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::Recurse )
Establece el color de fondo de una propiedad determinada.
Parámetros
- id
- Nombre de la propiedad o puntero.
- colour
- Nuevo color de fondo.
- flags
- El valor predeterminado es wxPGPropertyValuesFlags::Recurse, lo que hace que el color se establezca de forma recursiva. Omitir esta bandera para establecer solo el color de la propiedad en cuestión y no el de ninguna de sus propiedades secundarias.
Observaciones
Si se intenta establecer la categoría de forma recursiva, sólo se verán afectadas sus propiedades secundarias.
La propiedad se vuelve a dibujar con el nuevo color.
SetPropertyCell()
void wxPropertyGridInterface::SetPropertyCell( wxPGPropArg id, int column, const wxString & text = wxString(), const wxBitmapBundle & bitmap = wxBitmapBundle(), const wxColour & fgCol = wxNullColour, const wxColour & bgCol = wxNullColour )
Establece el texto, el mapa de bits y los colores de la celda de una columna determinada.
Observaciones
Se puede establecer la celda de etiqueta utilizando la columna 0.
Se puede utilizar wxPG_LABEL como texto para utilizar el texto predeterminado de la columna.
SetPropertyClientData()
void wxPropertyGridInterface::SetPropertyClientData( wxPGPropArg id, void * clientData )
Establece los datos del cliente (void*) de una propiedad.
Observaciones
Estos datos del cliente sin tipo deben eliminarse manualmente.
SetPropertyColoursToDefault()
void wxPropertyGridInterface::SetPropertyColoursToDefault( wxPGPropArg id, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::DontRecurse )
Restablece los colores del texto y del fondo de una propiedad determinada.
Parámetros
- id
- Nombre de la propiedad o puntero.
- flags
- El valor predeterminado es wxPGPropertyValuesFlags::DontRecurse, lo que hace que el color se restablezca sólo para la propiedad en cuestión (por motivos de compatibilidad con versiones anteriores).
Observaciones
Si se intenta establecer la categoría de forma recursiva, sólo se verán afectados sus elementos secundarios.
La propiedad se vuelve a dibujar con los nuevos colores.
SetPropertyEditor()
void wxPropertyGridInterface::SetPropertyEditor( wxPGPropArg id, const wxPGEditor * editor )
Establece el editor para una propiedad.
Parámetros
- id
- Nombre de la propiedad o puntero a una propiedad.
- editor
Para editores integrados, utilizar wxPGEditor_X, donde X es el nombre del editor integrado (TextCtrl, Choice, etc. Consultar la documentación de wxPGEditor para obtener la lista completa).
Para editores personalizados, utilice el puntero que ha recibido de wxPropertyGrid::RegisterEditorClass().
SetPropertyEditor()
void wxPropertyGridInterface::SetPropertyEditor( wxPGPropArg id, const wxString & editorName )
Establece el control del editor de una propiedad.
Como argumento del editor, utilizar la cadena del nombre del editor, como "TextCtrl" o "Choice".
SetPropertyHelpString()
void wxPropertyGridInterface::SetPropertyHelpString( wxPGPropArg id, const wxString & helpString )
Asocia la cadena de ayuda con la propiedad.
Observaciones
De forma predeterminada, el texto se muestra en el cuadro de texto "descripción" del administrador o en la barra de estado. Si se utiliza el estilo de ventana adicional wxPG_EX_HELP_AS_TOOLTIPS, el texto aparecerá como una información sobre herramientas.
SetPropertyImage()
void wxPropertyGridInterface::SetPropertyImage( wxPGPropArg id, const wxBitmapBundle & bmp )
Establece el primer wxBitmap tomado de wxBitmapBundle.
Observaciones
El mapa de bits se escalará al tamaño devuelto por wxPropertyGrid::GetImageSize();
SetPropertyLabel()
void wxPropertyGridInterface::SetPropertyLabel( wxPGPropArg id, const wxString & newproplabel )
Establece la etiqueta de una propiedad.
Observaciones
Las propiedades bajo el mismo padre pueden tener las mismas etiquetas. Sin embargo, los nombres de las propiedades deben seguir siendo únicos.
SetPropertyMaxLength()
bool wxPropertyGridInterface::SetPropertyMaxLength( wxPGPropArg id, int maxLen )
Establece la longitud máxima del texto en el editor de texto de la propiedad.
Parámetros
- id
- Nombre de la propiedad o puntero.
- maxLen
- Número máximo de caracteres del texto que el usuario puede introducir en el editor de texto. Si es 0, la longitud no está limitada y el texto puede ser tan largo como lo permita el widget de control de texto nativo subyacente.
Valor de retorno
Devuelve true si se ha establecido la longitud máxima.
SetPropertyName()
void wxPropertyGridInterface::SetPropertyName( wxPGPropArg id, const wxString & newName )
Establece el nombre de una propiedad.
Parámetros
- id
- Nombre o puntero de la propiedad cuyo nombre se va a cambiar.
- newName
- Nuevo nombre de la propiedad.
SetPropertyReadOnly()
void wxPropertyGridInterface::SetPropertyReadOnly( wxPGPropArg id, bool set = true, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::Recurse )
Establece la propiedad (y, recursivamente, sus hijos) para que tenga un valor de sólo lectura.
En otras palabras, el usuario no puede cambiar el valor en el editor, pero aún puede copiarlo.
Parámetros
- id
- Nombre de la propiedad o puntero.
- set
- Utilizar true para habilitar el modo de sólo lectura y false para deshabilitarlo.
- flags
- De forma predeterminada, los cambios se aplican de forma recursiva. Establecer este parámetro en wxPGPropertyValuesFlags::DontRecurse para evitarlo.
Observaciones
Se utiliza principalmente con el editor TextCtrl. Sólo algunos otros editores lo admiten por completo.
La propiedad se actualiza con la nueva configuración.
SetPropertyTextColour()
void wxPropertyGridInterface::SetPropertyTextColour( wxPGPropArg id, const wxColour & colour, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::Recurse )
Establece el color del texto de una propiedad determinada.
Parámetros
- id
- Nombre de la propiedad o puntero.
- colour
- Nuevo color del texto.
- flags
- El valor predeterminado es wxPGPropertyValuesFlags::Recurse, lo que hace que el color se establezca de forma recursiva. Omitir esta bandera para establecer sólo el color de la propiedad en cuestión y no el de ninguna de sus propiedades secundarias.
Observaciones
Si se intenta establecer la categoría de forma recursiva, solo se verán afectadas sus propiedades secundarias.
La propiedad se vuelve a dibujar con el nuevo color.
SetPropertyValidator()
void wxPropertyGridInterface::SetPropertyValidator( wxPGPropArg id, const wxValidator & validator )
Establece el validador de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, bool value )
Establece el valor (bool) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, const char * value )
Establece el valor (char*) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, const wchar_t * value )
Establece el valor (wchar_t*) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, const wxArrayInt & value )
Establece el valor (wxArrayInt&) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, const wxArrayString & value )
Establece el valor (wxArrayString&) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, const wxDateTime & value )
Establece el valor (wxDateTime&) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, const wxString & value )
Establece el valor (wxString&) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, double value )
Establece el valor (punto flotante) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, int value )
Establece el valor (entero) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, long value )
Establece el valor (entero largo) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxLongLong value )
Establece el valor (wxLongLong) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxLongLong_t value )
Establece el valor (entero nativo de 64 bits) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxObject & value )
Establece el valor (wxObject&) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxObject * value )
Establece el valor (wxObject *) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxULongLong value )
Establece el valor (wxULongLong) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxULongLong_t value )
Establece el valor (entero sin signo nativo de 64 bits) de una propiedad.
SetPropertyValue()
void wxPropertyGridInterface::SetPropertyValue( wxPGPropArg id, wxVariant value )
Establece el valor (wxVariant) de una propiedad.
Observaciones
Utilizar ChangePropertyValue() si se necesita ejecutar el proceso de validación y enviar el evento de cambio de propiedad.
SetPropertyValues()
void wxPropertyGridInterface::SetPropertyValues( const wxVariant & list, wxPGPropArg defaultCategory = wxNullProperty )
Establece los valores de propiedad a partir de una lista de wxVariants.
SetPropertyValues()
void wxPropertyGridInterface::SetPropertyValues( const wxVariantList & list, wxPGPropArg defaultCategory = wxNullProperty )
Establece los valores de propiedad a partir de una lista de wxVariants.
SetPropertyValueString()
void wxPropertyGridInterface::SetPropertyValueString( wxPGPropArg id, const wxString & value )
Establece el valor (wxString) de una propiedad.
Observaciones
Este método utiliza wxPGProperty::SetValueFromString(), que todas las propiedades deben implementar. Esto significa que no debería haber un error de tipo, sino que la cadena se convierte al tipo de valor real de la propiedad.
SetPropertyValueUnspecified()
void wxPropertyGridInterface::SetPropertyValueUnspecified(wxPGPropArg id)
Establece el valor de la propiedad como no especificado.
Si tiene elementos secundarios (puede ser una categoría), se hace lo mismo con ellos.
SetPropVal()
void wxPropertyGridInterface::SetPropVal( wxPGPropArg id, wxVariant & value )
Establece el valor (wxVariant&) de una propiedad.
Igual que SetPropertyValue, pero acepta referencias.
SetValidationFailureBehavior()
void wxPropertyGridInterface::SetValidationFailureBehavior(wxPGVFBFlags vfbFlags)
Ajusta el comportamiento de wxPropertyGrid cuando se introduce un valor no válido en una propiedad.
Parámetros
- vfbFlags
- Consultar los indicadores de comportamiento de error de validación de wxPropertyGrid para conocer los valores posibles.
Sort()
void wxPropertyGridInterface::Sort(wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::DontRecurse)
Ordena todas las propiedades de forma recursiva.
Parámetros
- flags
- Puede contener cualquiera de las siguientes opciones: wxPGPropertyValuesFlags::SortTopLevelOnly: Sólo ordena las categorías y sus elementos secundarios inmediatos. La opción wxPG_AUTO_SORT utiliza esta opción para realizar la ordenación.
SortChildren()
void wxPropertyGridInterface::SortChildren( wxPropertyGrid id, wxPGPropertyValuesFlags flags = wxPGPropertyValuesFlags::DontRecurse )
Ordena los hijos de una propiedad.
Parámetros
- id
- Nombre o puntero a una propiedad.
- flags
- Puede contener cualquiera de las siguientes opciones: wxPGPropertyValuesFlags::Recurse: Ordena recursivamente.