return m_alignment;
}
+void wxDataViewRenderer::EnableEllipsize(wxEllipsizeMode mode)
+{
+ if ( gtk_check_version(2, 6, 0) != NULL )
+ return;
+
+ // we use the same values in wxEllipsizeMode as PangoEllipsizeMode so we
+ // can just cast between them
+ GValue gvalue = { 0, };
+ g_value_init( &gvalue, PANGO_TYPE_ELLIPSIZE_MODE );
+ g_value_set_enum( &gvalue, static_cast<PangoEllipsizeMode>(mode) );
+ g_object_set_property( G_OBJECT(m_renderer), "ellipsize", &gvalue );
+ g_value_unset( &gvalue );
+}
+
+wxEllipsizeMode wxDataViewRenderer::GetEllipsizeMode() const
+{
+ if ( gtk_check_version(2, 6, 0) != NULL )
+ return wxELLIPSIZE_NONE;
+
+ GValue gvalue = { 0, };
+ g_value_init( &gvalue, PANGO_TYPE_ELLIPSIZE_MODE );
+ g_object_get_property( G_OBJECT(m_renderer), "ellipsize", &gvalue );
+ wxEllipsizeMode
+ mode = static_cast<wxEllipsizeMode>(g_value_get_enum( &gvalue ));
+ g_value_unset( &gvalue );
+
+ return mode;
+}
+
void
wxDataViewRenderer::GtkOnTextEdited(const gchar *itempath, const wxString& str)
{
unsigned col)
{
wxDataViewModel *model = GetOwner()->GetOwner()->GetModel();
- model->SetValue( value, item, col );
- model->ValueChanged( item, col );
+ model->ChangeValue( value, item, col );
}
// ---------------------------------------------------------
unsigned int model_col = cell->GetOwner()->GetModelColumn();
- model->SetValue( value, item, model_col );
- model->ValueChanged( item, model_col );
+ model->ChangeValue( value, item, model_col );
}
IMPLEMENT_CLASS(wxDataViewToggleRenderer, wxDataViewRenderer)
void wxDataViewDateRendererPopupTransient::OnCalendar( wxCalendarEvent &event )
{
- wxDateTime date = event.GetDate();
- wxVariant value = date;
- m_model->SetValue( value, m_item, m_col );
- m_model->ValueChanged( m_item, m_col );
+ m_model->ChangeValue( event.GetDate(), m_item, m_col );
DismissAndNotify();
}
const wxPoint& pos, const wxSize& size,
long style, const wxValidator& validator )
{
- Init();
-
if (!PreCreation( parent, pos, size ) ||
!CreateBase( parent, id, pos, size, style, validator ))
{
bool wxDataViewCtrl::AssociateModel( wxDataViewModel *model )
{
- if (GetModel())
+ if ( m_internal )
{
delete m_internal;
m_internal = NULL;
-
- delete m_notifier;
- m_notifier = NULL;
}
if (!wxDataViewCtrlBase::AssociateModel( model ))