From 008b5a66f722a01e5bad9a4a4e6bfd1bf78ac3c7 Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Sun, 1 Oct 2006 21:09:56 +0000 Subject: [PATCH] Removed some irritating flags. Implmented the remaining ones under GTK. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/dataview.h | 12 +----------- include/wx/generic/dataview.h | 6 +----- include/wx/gtk/dataview.h | 2 +- src/common/datavcmn.cpp | 5 ++--- src/generic/datavgen.cpp | 27 +++++---------------------- src/gtk/dataview.cpp | 25 ++++++++++++++----------- 6 files changed, 24 insertions(+), 53 deletions(-) diff --git a/include/wx/dataview.h b/include/wx/dataview.h index 70f83b67c9..947e81690f 100644 --- a/include/wx/dataview.h +++ b/include/wx/dataview.h @@ -253,18 +253,11 @@ enum wxDataViewColumnFlags wxDATAVIEW_COL_HIDDEN = 4 }; -enum wxDataViewColumnSizing -{ - wxDATAVIEW_COL_WIDTH_FIXED, - wxDATAVIEW_COL_WIDTH_AUTO, - wxDATAVIEW_COL_WIDTH_GROW -}; - class WXDLLIMPEXP_ADV wxDataViewColumnBase: public wxObject { public: wxDataViewColumnBase( const wxString &title, wxDataViewCell *cell, size_t model_column, - int fixed_width = 80, wxDataViewColumnSizing sizing = wxDATAVIEW_COL_WIDTH_FIXED, int flags = 0 ); + int width = 80, int flags = wxDATAVIEW_COL_RESIZABLE ); virtual ~wxDataViewColumnBase(); virtual void SetTitle( const wxString &title ); @@ -279,9 +272,6 @@ public: virtual int GetWidth() = 0; - virtual void SetFixedWidth( int width ) = 0; - virtual int GetFixedWidth() = 0; - private: wxDataViewCtrl *m_ctrl; wxDataViewCell *m_cell; diff --git a/include/wx/generic/dataview.h b/include/wx/generic/dataview.h index 18a6bb0123..2b0307473a 100644 --- a/include/wx/generic/dataview.h +++ b/include/wx/generic/dataview.h @@ -215,19 +215,15 @@ class WXDLLIMPEXP_ADV wxDataViewColumn: public wxDataViewColumnBase { public: wxDataViewColumn( const wxString &title, wxDataViewCell *cell, size_t model_column, - int fixed_width = 80, wxDataViewColumnSizing sizing = wxDATAVIEW_COL_WIDTH_FIXED, int flags = 0 ); + int width = 80, int flags = wxDATAVIEW_COL_RESIZABLE ); virtual ~wxDataViewColumn(); virtual void SetTitle( const wxString &title ); virtual int GetWidth(); - virtual void SetFixedWidth( int width ); - virtual int GetFixedWidth(); - private: int m_width; - wxDataViewColumnSizing m_sizing; int m_fixedWidth; protected: diff --git a/include/wx/gtk/dataview.h b/include/wx/gtk/dataview.h index c31e2fc50b..64f22bfff8 100644 --- a/include/wx/gtk/dataview.h +++ b/include/wx/gtk/dataview.h @@ -189,7 +189,7 @@ class WXDLLIMPEXP_CORE wxDataViewColumn: public wxDataViewColumnBase { public: wxDataViewColumn( const wxString &title, wxDataViewCell *cell, size_t model_column, - int fixed_width = 80, wxDataViewColumnSizing sizing = wxDATAVIEW_COL_WIDTH_FIXED, int flags = 0 ); + int width = 80, int flags = wxDATAVIEW_COL_RESIZABLE ); virtual ~wxDataViewColumn(); virtual void SetTitle( const wxString &title ); diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp index 938e8bed34..6d8ec76d7e 100644 --- a/src/common/datavcmn.cpp +++ b/src/common/datavcmn.cpp @@ -696,9 +696,8 @@ IMPLEMENT_ABSTRACT_CLASS(wxDataViewColumnBase, wxObject) wxDataViewColumnBase::wxDataViewColumnBase(const wxString& title, wxDataViewCell *cell, size_t model_column, - int WXUNUSED(fixed_width), - wxDataViewColumnSizing WXUNUSED(sizing), - int flags ) + int WXUNUSED(width), + int flags ) { m_cell = cell; m_model_column = model_column; diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 725dff04b7..3c32ba87f1 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -595,13 +595,12 @@ bool wxDataViewDateCell::Activate( wxRect WXUNUSED(cell), wxDataViewListModel *m IMPLEMENT_ABSTRACT_CLASS(wxDataViewColumn, wxDataViewColumnBase) wxDataViewColumn::wxDataViewColumn( const wxString &title, wxDataViewCell *cell, size_t model_column, - int fixed_width, wxDataViewColumnSizing sizing, int flags ) : - wxDataViewColumnBase( title, cell, model_column, flags ) + int width, int flags ) : + wxDataViewColumnBase( title, cell, model_column, width, flags ) { - m_sizing = sizing; - - m_width = fixed_width; - m_fixedWidth = fixed_width; + m_width = width; + if (m_width < 0) + m_width = 80; } wxDataViewColumn::~wxDataViewColumn() @@ -619,22 +618,6 @@ int wxDataViewColumn::GetWidth() return m_width; } -void wxDataViewColumn::SetFixedWidth( int width ) -{ - m_fixedWidth = width; - - if (m_sizing == wxDATAVIEW_COL_WIDTH_FIXED) - { - m_width = width; - // Set dirty - } -} - -int wxDataViewColumn::GetFixedWidth() -{ - return m_fixedWidth; -} - //----------------------------------------------------------------------------- // wxDataViewHeaderWindow //----------------------------------------------------------------------------- diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index 34f2ce3746..735e1b33c6 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -1420,8 +1420,8 @@ static void wxGtkTreeCellDataFunc( GtkTreeViewColumn *column, IMPLEMENT_CLASS(wxDataViewColumn, wxDataViewColumnBase) wxDataViewColumn::wxDataViewColumn( const wxString &title, wxDataViewCell *cell, size_t model_column, - int fixed_width, wxDataViewColumnSizing sizing, int flags ) : - wxDataViewColumnBase( title, cell, model_column, flags ) + int width, int flags ) : + wxDataViewColumnBase( title, cell, model_column, width, flags ) { GtkCellRenderer *renderer = (GtkCellRenderer *) cell->GetGtkHandle(); @@ -1429,17 +1429,20 @@ wxDataViewColumn::wxDataViewColumn( const wxString &title, wxDataViewCell *cell, gtk_tree_view_column_set_title( column, wxGTK_CONV(title) ); - if (sizing == wxDATAVIEW_COL_WIDTH_FIXED) - gtk_tree_view_column_set_sizing( column, GTK_TREE_VIEW_COLUMN_FIXED ); - else if (sizing == wxDATAVIEW_COL_WIDTH_GROW) - gtk_tree_view_column_set_sizing( column, GTK_TREE_VIEW_COLUMN_GROW_ONLY ); - else - gtk_tree_view_column_set_sizing( column, GTK_TREE_VIEW_COLUMN_AUTOSIZE ); + if (flags & wxDATAVIEW_COL_RESIZABLE) + gtk_tree_view_column_set_resizable( column, true ); + if (flags & wxDATAVIEW_COL_HIDDEN) + gtk_tree_view_column_set_visible( column, false ); + if (flags & wxDATAVIEW_COL_SORTABLE) + gtk_tree_view_column_set_sort_indicator( column, true ); - if (fixed_width > 0) - gtk_tree_view_column_set_fixed_width( column, fixed_width ); + if (width > 0) + { + gtk_tree_view_column_set_fixed_width( column, width ); + gtk_tree_view_column_set_sizing( column, GTK_TREE_VIEW_COLUMN_FIXED ); + } - gtk_tree_view_column_pack_start( column, renderer, TRUE ); + gtk_tree_view_column_pack_end( column, renderer, FALSE ); gtk_tree_view_column_set_cell_data_func( column, renderer, wxGtkTreeCellDataFunc, (gpointer) cell, NULL ); -- 2.45.2