void wxDataViewRenderer::GtkInitHandlers()
{
-#ifndef __WXGTK3__
- if (!gtk_check_version(2,6,0))
-#endif
{
g_signal_connect (GTK_CELL_RENDERER(m_renderer), "editing_started",
G_CALLBACK (wxgtk_renderer_editing_started),
void wxDataViewRenderer::EnableEllipsize(wxEllipsizeMode mode)
{
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if ( gtk_check_version(2, 6, 0) != NULL )
- return;
-#endif
-
GtkCellRendererText * const rend = GtkGetTextRenderer();
if ( !rend )
return;
g_value_set_enum( &gvalue, static_cast<PangoEllipsizeMode>(mode) );
g_object_set_property( G_OBJECT(rend), "ellipsize", &gvalue );
g_value_unset( &gvalue );
-#else // GTK < 2.6
- wxUnusedVar(mode);
-#endif // GTK 2.6/before
}
wxEllipsizeMode wxDataViewRenderer::GetEllipsizeMode() const
{
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if ( gtk_check_version(2, 6, 0) != NULL )
- return wxELLIPSIZE_NONE;
-#endif
-
GtkCellRendererText * const rend = GtkGetTextRenderer();
if ( !rend )
return wxELLIPSIZE_NONE;
g_value_unset( &gvalue );
return mode;
-#else // GTK < 2.6
- return wxELLIPSIZE_NONE;
-#endif // GTK 2.6/before
}
void
{
m_label = label;
m_value = 0;
+ m_renderer = (GtkCellRenderer*) gtk_cell_renderer_progress_new();
-#ifdef __WXGTK26__
- if (GTK_CHECK_VERSION(3,0,0) || gtk_check_version(2,6,0) == NULL)
- {
- m_renderer = (GtkCellRenderer*) gtk_cell_renderer_progress_new();
-
- SetMode(mode);
- SetAlignment(align);
+ SetMode(mode);
+ SetAlignment(align);
#if !wxUSE_UNICODE
- // We can't initialize the renderer just yet because we don't have the
- // pointer to the column that uses this renderer yet and so attempt to
- // dereference GetOwner() to get the font that is used as a source of
- // encoding in multibyte-to-Unicode conversion in GTKSetLabel() in
- // non-Unicode builds would crash. So simply remember to do it later.
- if ( !m_label.empty() )
- m_needsToSetLabel = true;
- else
-#endif // !wxUSE_UNICODE
- GTKSetLabel();
- }
+ // We can't initialize the renderer just yet because we don't have the
+ // pointer to the column that uses this renderer yet and so attempt to
+ // dereference GetOwner() to get the font that is used as a source of
+ // encoding in multibyte-to-Unicode conversion in GTKSetLabel() in
+ // non-Unicode builds would crash. So simply remember to do it later.
+ if ( !m_label.empty() )
+ m_needsToSetLabel = true;
else
-#endif
+#endif // !wxUSE_UNICODE
{
- // Use custom cell code
- wxDataViewCustomRenderer::Init(mode, align);
+ GTKSetLabel();
}
}
bool wxDataViewProgressRenderer::SetValue( const wxVariant &value )
{
-#ifdef __WXGTK26__
- if (GTK_CHECK_VERSION(3,0,0) || gtk_check_version(2,6,0) == NULL)
- {
#if !wxUSE_UNICODE
- if ( m_needsToSetLabel )
- GTKSetLabel();
+ if ( m_needsToSetLabel )
+ GTKSetLabel();
#endif // !wxUSE_UNICODE
- gint tmp = (long) value;
- GValue gvalue = { 0, };
- g_value_init( &gvalue, G_TYPE_INT );
- g_value_set_int( &gvalue, tmp );
- g_object_set_property( G_OBJECT(m_renderer), "value", &gvalue );
- g_value_unset( &gvalue );
- }
- else
-#endif
- {
- m_value = (long) value;
-
- if (m_value < 0) m_value = 0;
- if (m_value > 100) m_value = 100;
- }
+ gint tmp = (long) value;
+ GValue gvalue = { 0, };
+ g_value_init( &gvalue, G_TYPE_INT );
+ g_value_set_int( &gvalue, tmp );
+ g_object_set_property( G_OBJECT(m_renderer), "value", &gvalue );
+ g_value_unset( &gvalue );
return true;
}
wxDataViewCellMode mode, int alignment ) :
wxDataViewCustomRenderer( "string", mode, alignment, true )
{
- m_choices = choices;
-
-#ifdef __WXGTK26__
- if (GTK_CHECK_VERSION(3,0,0) || gtk_check_version(2,6,0) == NULL)
+ m_choices = choices;
+ m_renderer = (GtkCellRenderer*) gtk_cell_renderer_combo_new();
+ GtkListStore *store = gtk_list_store_new( 1, G_TYPE_STRING );
+ for (size_t n = 0; n < m_choices.GetCount(); n++)
{
- m_renderer = (GtkCellRenderer*) gtk_cell_renderer_combo_new();
-
- GtkListStore *store = gtk_list_store_new( 1, G_TYPE_STRING );
- for (size_t n = 0; n < m_choices.GetCount(); n++)
- {
- gtk_list_store_insert_with_values(
- store, NULL, n, 0,
- static_cast<const char *>(m_choices[n].utf8_str()), -1 );
- }
+ gtk_list_store_insert_with_values(
+ store, NULL, n, 0,
+ static_cast<const char *>(m_choices[n].utf8_str()), -1 );
+ }
- g_object_set (m_renderer,
- "model", store,
- "text-column", 0,
- "has-entry", FALSE,
- NULL);
+ g_object_set (m_renderer,
+ "model", store,
+ "text-column", 0,
+ "has-entry", FALSE,
+ NULL);
- bool editable = (mode & wxDATAVIEW_CELL_EDITABLE) != 0;
- g_object_set (m_renderer, "editable", editable, NULL);
+ bool editable = (mode & wxDATAVIEW_CELL_EDITABLE) != 0;
+ g_object_set (m_renderer, "editable", editable, NULL);
- SetAlignment(alignment);
+ SetAlignment(alignment);
- g_signal_connect_after( m_renderer, "edited", G_CALLBACK(wxGtkTextRendererEditedCallback), this );
+ g_signal_connect_after( m_renderer, "edited", G_CALLBACK(wxGtkTextRendererEditedCallback), this );
- GtkInitHandlers();
- }
- else
-#endif
- {
- // Use custom cell code
- wxDataViewCustomRenderer::Init(mode, alignment);
- }
+ GtkInitHandlers();
}
bool wxDataViewChoiceRenderer::Render( wxRect rect, wxDC *dc, int state )
bool wxDataViewChoiceRenderer::SetValue( const wxVariant &value )
{
-
-#ifdef __WXGTK26__
- if (GTK_CHECK_VERSION(3,0,0) || gtk_check_version(2,6,0) == NULL)
- {
- GValue gvalue = { 0, };
- g_value_init( &gvalue, G_TYPE_STRING );
- g_value_set_string(&gvalue,
- wxGTK_CONV_FONT(value.GetString(),
- GetOwner()->GetOwner()->GetFont()));
- g_object_set_property( G_OBJECT(m_renderer), "text", &gvalue );
- g_value_unset( &gvalue );
- }
- else
-#endif
- m_data = value.GetString();
+ GValue gvalue = { 0, };
+ g_value_init( &gvalue, G_TYPE_STRING );
+ g_value_set_string(&gvalue,
+ wxGTK_CONV_FONT(value.GetString(),
+ GetOwner()->GetOwner()->GetFont()));
+ g_object_set_property( G_OBJECT(m_renderer), "text", &gvalue );
+ g_value_unset( &gvalue );
return true;
}
bool wxDataViewChoiceRenderer::GetValue( wxVariant &value ) const
{
-#ifdef __WXGTK26__
- if (GTK_CHECK_VERSION(3,0,0) || gtk_check_version(2,6,0) == NULL)
- {
- GValue gvalue = { 0, };
- g_value_init( &gvalue, G_TYPE_STRING );
- g_object_get_property( G_OBJECT(m_renderer), "text", &gvalue );
- wxString temp = wxGTK_CONV_BACK_FONT(g_value_get_string(&gvalue),
- GetOwner()->GetOwner()->GetFont());
- g_value_unset( &gvalue );
- value = temp;
-
- //wxPrintf( "temp %s\n", temp );
- // TODO: remove this code
- }
- else
-#endif
- value = m_data;
+ GValue gvalue = { 0, };
+ g_value_init( &gvalue, G_TYPE_STRING );
+ g_object_get_property( G_OBJECT(m_renderer), "text", &gvalue );
+ wxString temp = wxGTK_CONV_BACK_FONT(g_value_get_string(&gvalue),
+ GetOwner()->GetOwner()->GetFont());
+ g_value_unset( &gvalue );
+ value = temp;
return true;
}
g_signal_connect (m_treeview, "size_allocate",
G_CALLBACK (gtk_dataviewctrl_size_callback), this);
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if (!gtk_check_version(2,6,0))
-#endif
- {
- bool fixed = (style & wxDV_VARIABLE_LINE_HEIGHT) == 0;
- gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), fixed );
- }
-#endif
+ bool fixed = (style & wxDV_VARIABLE_LINE_HEIGHT) == 0;
+ gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), fixed );
if (style & wxDV_MULTIPLE)
{
if (!wxDataViewCtrlBase::AssociateModel( model ))
return false;
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if (!gtk_check_version(2,6,0))
-#endif
- {
- bool fixed = (((GetWindowStyle() & wxDV_VARIABLE_LINE_HEIGHT) == 0) || (model->IsVirtualListModel()));
- gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), fixed );
- }
-#endif
+ bool fixed = (((GetWindowStyle() & wxDV_VARIABLE_LINE_HEIGHT) == 0) || (model->IsVirtualListModel()));
+ gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), fixed );
m_internal = new wxDataViewCtrlInternal( this, model );
m_cols.Append( col );
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if (!gtk_check_version(2,6,0))
-#endif
+ if (gtk_tree_view_column_get_sizing( GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) ) !=
+ GTK_TREE_VIEW_COLUMN_FIXED)
{
- if (gtk_tree_view_column_get_sizing( GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) ) !=
- GTK_TREE_VIEW_COLUMN_FIXED)
- gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), FALSE );
+ gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), FALSE );
}
-#endif
gtk_tree_view_append_column( GTK_TREE_VIEW(m_treeview),
GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) );
m_cols.Insert( col );
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if (!gtk_check_version(2,6,0))
-#endif
+ if (gtk_tree_view_column_get_sizing( GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) ) !=
+ GTK_TREE_VIEW_COLUMN_FIXED)
{
- if (gtk_tree_view_column_get_sizing( GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) ) !=
- GTK_TREE_VIEW_COLUMN_FIXED)
- gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), FALSE );
+ gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), FALSE );
}
-#endif
gtk_tree_view_insert_column( GTK_TREE_VIEW(m_treeview),
GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()), 0 );
m_cols.Insert( pos, col );
-#ifdef __WXGTK26__
-#ifndef __WXGTK3__
- if (!gtk_check_version(2,6,0))
-#endif
+ if (gtk_tree_view_column_get_sizing( GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) ) !=
+ GTK_TREE_VIEW_COLUMN_FIXED)
{
- if (gtk_tree_view_column_get_sizing( GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()) ) !=
- GTK_TREE_VIEW_COLUMN_FIXED)
- gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), FALSE );
+ gtk_tree_view_set_fixed_height_mode( GTK_TREE_VIEW(m_treeview), FALSE );
}
-#endif
gtk_tree_view_insert_column( GTK_TREE_VIEW(m_treeview),
GTK_TREE_VIEW_COLUMN(col->GetGtkHandle()), pos );