Clase wxDataViewRenderer
Esta clase es utilizada por wxclasswxDataViewCtrl para renderizar las celdas individuales.
Jerarquía:

Una instancia de una clase renderer pertenece a una wxDataViewColumn. Hay una serie de renderizadores listos para usar:
- wxDataViewTextRenderer,
- wxDataViewIconTextRenderer,
- wxDataViewCheckIconTextRenderer,
- wxDataViewToggleRenderer,
- wxDataViewProgressRenderer,
- wxDataViewBitmapRenderer,
- wxDataViewDateRenderer,
- wxDataViewSpinRenderer,
- wxDataViewChoiceRenderer.
Además, el usuario puede escribir sus propios renderizadores derivando de wxDataViewCustomRenderer.
Las banderas wxDataViewCellMode y wxDataViewCellRenderState aceptadas por los constructores controlan respectivamente qué acciones permiten los datos de la celda y cómo el renderizador debe mostrar su contenido en una celda.
Funciones miembro
wxDataViewRenderer()
wxDataViewRenderer::wxDataViewRenderer( const wxString & varianttype, wxDataViewCellMode mode = wxDATAVIEW_CELL_INERT, int align = wxDVR_DEFAULT_ALIGNMENT )
El parámetro varianttype es el tipo principal de objetos wxVariant soportados por este renderizador, es decir, los que se pueden pasar a su SetValue(), por ejemplo, "string" para wxDataViewTextRenderer. El valor de este parámetro es devuelto por GetVariantType().
Cuando se deriva un renderizador personalizado, se puede utilizar un tipo de variante existente o uno nuevo personalizado, véase la documentación de wxVariant para más detalles.
CancelEditing()
virtual void wxDataViewRenderer::CancelEditing()
CreateEditorCtrl()
virtual wxWindow* wxDataViewRenderer::CreateEditorCtrl( wxWindow * parent, wxRect labelRect, const wxVariant & value )
Reimplementado en wxDataViewCustomRenderer.
DisableEllipsize()
void wxDataViewRenderer::DisableEllipsize()
Desactiva la sustitución de partes del texto del elemento con elipsis.
Si se desactiva la elipsis, la cadena se truncará si no cabe.
Esto es lo mismo que:
EnableEllipsize(wxELLIPSIZE_NONE)
EnableEllipsize()
void wxDataViewRenderer::EnableEllipsize(wxEllipsizeMode mode = wxELLIPSIZE_MIDDLE)
Activa o desactiva la sustitución de partes del texto del elemento con elipsis para que se ajuste al ancho de la columna.
Este método sólo tiene sentido para los renderizadores que trabajan con texto, como wxDataViewTextRenderer o wxDataViewIconTextRenderer.
Por defecto se utiliza wxELLIPSIZE_MIDDLE.
Parámetros
- mode
- Modo de elipsización, utilice wxELLIPSIZE_NONE para desactivarlo.
FinishEditing()
virtual bool wxDataViewRenderer::FinishEditing()
GetAccessibleDescription()
virtual wxString wxDataViewRenderer::GetAccessibleDescription() const
Este método devuelve una cadena que describe el contenido del renderizador a la clase que implementa las características de accesibilidad en wxDataViewCtrl.
Nota: El método se implementa si el símbolo de configuración wxUSE_ACCESSIBILITY se establece en 1.
GetAlignment()
virtual int wxDataViewRenderer::GetAlignment() const
Devuelve la alineación.
Ver SetAlignment().
GetEditorCtrl()
wxWindow* wxDataViewRenderer::GetEditorCtrl()
GetEllipsizeMode()
wxEllipsizeMode wxDataViewRenderer::GetEllipsizeMode() const
Devuelve el modo ellipsize utilizado por el renderizador.
Si el valor devuelto es wxELLIPSIZE_NONE, el texto simplemente se trunca si no cabe.
GetMode()
virtual wxDataViewCellMode wxDataViewRenderer::GetMode() const
Devuelve el modo de celda.
GetOwner()
wxDataViewColumn* wxDataViewRenderer::GetOwner() const
Devuelve el puntero a la columna wxDataViewColumn propietaria.
GetValue()
virtual bool wxDataViewRenderer::GetValue(wxVariant & value) const
Este método recupera el valor del renderizador para transferirlo de nuevo al modelo de datos.
Devuelve false en caso de fallo.
GetValueFromEditorCtrl()
Reimplementado en wxDataViewCustomRenderer.
GetVariantType()
wxString wxDataViewRenderer::GetVariantType() const
Reimplementado en wxDataViewCustomRenderer.Devuelve una cadena con el tipo de wxVariant soportado por este renderizador.
Hay que tener en cuenta que un renderizador puede soportar más de un tipo de variante, en cuyo caso se necesita anular IsCompatibleVariantType() para devolver true para todos los tipos que soporta. Pero, por defecto, sólo se admite el tipo devuelto por esta función.
GetView()
wxDataViewCtrl* wxDataViewRenderer::GetView() const
HasEditorCtrl()
virtual bool wxDataViewRenderer::HasEditorCtrl() const
Reimplementado en wxDataViewCustomRenderer.
IsCompatibleVariantType()
virtual bool wxDataViewRenderer::IsCompatibleVariantType(const wxString & variantType) const
Comprueba si el tipo de variante dado es compatible con el tipo esperado por este renderizador.
La implementación de la clase base sólo compara variantType con el valor devuelto por GetVariantType(), pero esta función se puede sobrescribir para aceptar otros tipos que se puedan convertir al tipo que necesita el renderizador.
SetAlignment()
virtual void wxDataViewRenderer::SetAlignment(int align)
Establece la alineación del contenido del renderizador.
El valor por defecto de wxDVR_DEFAULT_ALIGNMENT indica que el contenido debe tener la misma alineación que la cabecera de la columna.
El método no está implementado en macOS y el renderizador siempre alinea su contenido como la cabecera de la columna en esa plataforma. Las demás plataformas admiten tanto la alineación vertical como la horizontal.
SetOwner()
void wxDataViewRenderer::SetOwner(wxDataViewColumn * owner)
Establece la columna wxDataViewColumn.
Normalmente se llama desde dentro de wxDataViewColumn.
SetValue()
virtual bool wxDataViewRenderer::SetValue(const wxVariant & value)
Establece el valor del renderizador (y por tanto de su celda) en value.
El código interno renderizará entonces esta celda con estos datos.
Parámetros
- value
- Un valor válido, es decir, no nulo, que se mostrará.
SetValueAdjuster()
void wxDataViewRenderer::SetValueAdjuster(wxDataViewValueAdjuster * transformer)
Establece el objeto transformador que se utilizará para personalizar los valores antes de que se rendericen.
Se puede utilizar para cambiar el valor si se muestra en una fila resaltada (es decir, en la selección) que normalmente tiene fondo oscuro. Es útil en combinación con wxDataViewTextRenderer con marcado y se puede utilizar, por ejemplo, para eliminar los atributos de color de fondo dentro de la selección, como una alternativa ligera a la implementación de toda una especialización wxDataViewCustomRenderer.
transformer puede ser nullptr para restablecer cualquier transformador que se esté utilizando actualmente.
Toma posesión del transformador.
StartEditing()
virtual bool wxDataViewRenderer::StartEditing( const wxDataViewItem & item, wxRect labelRect )
Validate()
virtual bool wxDataViewRenderer::Validate(wxVariant & value)
Antes de introducir los datos en el modelo de datos, se pasan a este método, donde se comprueba su validez.
También se puede utilizar para comprobar un rango válido o limitar la entrada del usuario en un determinado aspecto (por ejemplo, número máximo de caracteres o sólo entrada alfanumérica, sólo ASCII, etc.). Devuelve false si el valor no es válido.
Hay que tener en cuenta que, debido a limitaciones de implementación, esta validación se realiza después de que el control de edición se haya destruido y el proceso de edición haya finalizado.
Métodos y datos heredados
Esta clase hereda los métodos y datos miembro públicos y protegidos de wxObject.