X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1a3675647115b4db4fb6860793a47320c61e5273..51f5e2822cdcb8b433b1d117f186dfd8bb06e240:/include/wx/gtk/dataview.h diff --git a/include/wx/gtk/dataview.h b/include/wx/gtk/dataview.h index 5cf7e587e1..9afb521ac9 100644 --- a/include/wx/gtk/dataview.h +++ b/include/wx/gtk/dataview.h @@ -91,6 +91,20 @@ public: virtual bool Render( wxRect cell, wxDC *dc, int state ) = 0; virtual wxSize GetSize() = 0; + virtual bool Activate( wxRect cell, + wxDataViewListModel *model, size_t col, size_t row ) + { return false; } + + virtual bool LeftClick( wxPoint cursor, wxRect cell, + wxDataViewListModel *model, size_t col, size_t row ) + { return false; } + virtual bool RightClick( wxPoint cursor, wxRect cell, + wxDataViewListModel *model, size_t col, size_t row ) + { return false; } + virtual bool StartDrag( wxPoint cursor, wxRect cell, + wxDataViewListModel *model, size_t col, size_t row ) + { return false; } + // Create DC on request virtual wxDC *GetDC(); @@ -126,6 +140,30 @@ protected: DECLARE_DYNAMIC_CLASS_NO_COPY(wxDataViewProgressCell) }; +// --------------------------------------------------------- +// wxDataViewDateCell +// --------------------------------------------------------- + +class wxDataViewDateCell: public wxDataViewCustomCell +{ +public: + wxDataViewDateCell( const wxString &varianttype = wxT("datetime"), + wxDataViewCellMode mode = wxDATAVIEW_CELL_ACTIVATABLE ); + + bool SetValue( const wxVariant &value ); + + virtual bool Render( wxRect cell, wxDC *dc, int state ); + virtual wxSize GetSize(); + virtual bool Activate( wxRect cell, + wxDataViewListModel *model, size_t col, size_t row ); + +private: + wxDateTime m_date; + +protected: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxDataViewDateCell) +}; + // --------------------------------------------------------- // wxDataViewColumn // --------------------------------------------------------- @@ -133,11 +171,17 @@ protected: class WXDLLIMPEXP_CORE wxDataViewColumn: public wxDataViewColumnBase { public: - wxDataViewColumn( const wxString &title, wxDataViewCell *cell, size_t model_column, int flags = 0 ); + wxDataViewColumn( const wxString &title, wxDataViewCell *cell, size_t model_column, + int fixed_width = 80, wxDataViewColumnSizing sizing = wxDATAVIEW_COL_WIDTH_FIXED, int flags = 0 ); virtual ~wxDataViewColumn(); virtual void SetTitle( const wxString &title ); + virtual int GetWidth(); + + virtual void SetFixedWidth( int width ); + virtual int GetFixedWidth(); + // implementation void* GetGtkHandle() { return m_column; } @@ -183,7 +227,9 @@ public: private: friend class wxDataViewCtrlDC; - GtkWidget *m_treeview; + friend class wxGtkDataViewListModelNotifier; + GtkWidget *m_treeview; + wxDataViewListModelNotifier *m_notifier; private: DECLARE_DYNAMIC_CLASS(wxDataViewCtrl)