-// wxListLineData (internal)
-//-----------------------------------------------------------------------------
-
-class WXDLLEXPORT wxListLineData : public wxObject
-{
-public:
- wxList m_items;
- wxRect m_bound_all;
- wxRect m_bound_label;
- wxRect m_bound_icon;
- wxRect m_bound_hilight;
- int m_mode;
- bool m_hilighted;
- wxBrush *m_hilightBrush;
- int m_spacing;
- wxListMainWindow *m_owner;
-
- void DoDraw( wxDC *dc, bool hilight, bool paintBG );
-
-public:
- wxListLineData() {}
- wxListLineData( wxListMainWindow *owner, int mode, wxBrush *hilightBrush );
- void CalculateSize( wxDC *dc, int spacing );
- void SetPosition( wxDC *dc, int x, int y, int window_width );
- void SetColumnPosition( int index, int x );
- void GetSize( int &width, int &height );
- void GetExtent( int &x, int &y, int &width, int &height );
- void GetLabelExtent( int &x, int &y, int &width, int &height );
- long IsHit( int x, int y );
- void InitItems( int num );
- void SetItem( int index, const wxListItem &info );
- void GetItem( int index, wxListItem &info );
- void GetText( int index, wxString &s );
- void SetText( int index, const wxString s );
- int GetImage( int index );
- void GetRect( wxRect &rect );
- void Hilight( bool on );
- void ReverseHilight();
- void DrawRubberBand( wxDC *dc, bool on );
- void Draw( wxDC *dc );
- bool IsInRect( int x, int y, const wxRect &rect );
- bool IsHilighted();
- void AssignRect( wxRect &dest, int x, int y, int width, int height );
- void AssignRect( wxRect &dest, const wxRect &source );
-
-private:
- void SetAttributes(wxDC *dc,
- const wxListItemAttr *attr,
- const wxColour& colText, const wxFont& font);
-
- DECLARE_DYNAMIC_CLASS(wxListLineData);
-};
-
-//-----------------------------------------------------------------------------
-// wxListHeaderWindow (internal)
-//-----------------------------------------------------------------------------
-
-class WXDLLEXPORT wxListHeaderWindow : public wxWindow
-{
-protected:
- wxListMainWindow *m_owner;
- wxCursor *m_currentCursor;
- wxCursor *m_resizeCursor;
- bool m_isDragging;
- int m_column;
- int m_minX;
- int m_currentX;
-
-public:
- wxListHeaderWindow();
- ~wxListHeaderWindow();
- wxListHeaderWindow( wxWindow *win, wxWindowID id, wxListMainWindow *owner,
- const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
- long style = 0, const wxString &name = "columntitles" );
- void DoDrawRect( wxDC *dc, int x, int y, int w, int h );
- void OnPaint( wxPaintEvent &event );
- void DrawCurrent();
- void OnMouse( wxMouseEvent &event );
- void OnSetFocus( wxFocusEvent &event );
-
-private:
- DECLARE_DYNAMIC_CLASS(wxListHeaderWindow)
- DECLARE_EVENT_TABLE()
-};
-
-//-----------------------------------------------------------------------------
-// wxListRenameTimer (internal)
-//-----------------------------------------------------------------------------
-
-class WXDLLEXPORT wxListRenameTimer: public wxTimer
-{
-private:
- wxListMainWindow *m_owner;
-
-public:
- wxListRenameTimer( wxListMainWindow *owner );
- void Notify();
-};
-
-//-----------------------------------------------------------------------------
-// wxListTextCtrl (internal)
-//-----------------------------------------------------------------------------
-
-class WXDLLEXPORT wxListTextCtrl: public wxTextCtrl
-{
-private:
- bool *m_accept;
- wxString *m_res;
- wxListMainWindow *m_owner;
- wxString m_startValue;
-
-public:
- wxListTextCtrl() {}
- wxListTextCtrl( wxWindow *parent, const wxWindowID id,
- bool *accept, wxString *res, wxListMainWindow *owner,
- const wxString &value = "",
- const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
- int style = 0,
-#if wxUSE_VALIDATORS
- const wxValidator& validator = wxDefaultValidator,
-#endif
- const wxString &name = "wxListTextCtrlText" );
- void OnChar( wxKeyEvent &event );
- void OnKillFocus( wxFocusEvent &event );
-
-private:
- DECLARE_DYNAMIC_CLASS(wxListTextCtrl);
- DECLARE_EVENT_TABLE()
-};
-
-//-----------------------------------------------------------------------------
-// wxListMainWindow (internal)