| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- ///////////////////////////////////////////////////////////////////////////////
- // Name: wx/listctrl.h
- // Purpose: wxListCtrl class
- // Author: Vadim Zeitlin
- // Modified by:
- // Created: 04.12.99
- // Copyright: (c) wxWidgets team
- // Licence: wxWindows licence
- ///////////////////////////////////////////////////////////////////////////////
- #ifndef _WX_LISTCTRL_H_BASE_
- #define _WX_LISTCTRL_H_BASE_
- #include "wx/defs.h" // headers should include this before first wxUSE_XXX check
- #if wxUSE_LISTCTRL
- #include "wx/listbase.h"
- // ----------------------------------------------------------------------------
- // constants
- // ----------------------------------------------------------------------------
- extern WXDLLIMPEXP_DATA_CORE(const char) wxListCtrlNameStr[];
- // ----------------------------------------------------------------------------
- // include the wxListCtrl class declaration
- // ----------------------------------------------------------------------------
- #if defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
- #include "wx/msw/listctrl.h"
- #elif defined(__WXMAC__) && !defined(__WXUNIVERSAL__) && wxOSX_USE_CARBON
- #include "wx/osx/listctrl.h"
- #else
- #include "wx/generic/listctrl.h"
- #endif
- // ----------------------------------------------------------------------------
- // wxListView: a class which provides a better API for list control
- // ----------------------------------------------------------------------------
- class WXDLLIMPEXP_CORE wxListView : public wxListCtrl
- {
- public:
- wxListView() { }
- wxListView( wxWindow *parent,
- wxWindowID winid = wxID_ANY,
- const wxPoint& pos = wxDefaultPosition,
- const wxSize& size = wxDefaultSize,
- long style = wxLC_REPORT,
- const wxValidator& validator = wxDefaultValidator,
- const wxString &name = wxListCtrlNameStr)
- {
- Create(parent, winid, pos, size, style, validator, name);
- }
- // focus/selection stuff
- // ---------------------
- // [de]select an item
- void Select(long n, bool on = true)
- {
- SetItemState(n, on ? wxLIST_STATE_SELECTED : 0, wxLIST_STATE_SELECTED);
- }
- // focus and show the given item
- void Focus(long index)
- {
- SetItemState(index, wxLIST_STATE_FOCUSED, wxLIST_STATE_FOCUSED);
- EnsureVisible(index);
- }
- // get the currently focused item or -1 if none
- long GetFocusedItem() const
- {
- return GetNextItem(-1, wxLIST_NEXT_ALL, wxLIST_STATE_FOCUSED);
- }
- // get first and subsequent selected items, return -1 when no more
- long GetNextSelected(long item) const
- { return GetNextItem(item, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED); }
- long GetFirstSelected() const
- { return GetNextSelected(-1); }
- // return true if the item is selected
- bool IsSelected(long index) const
- { return GetItemState(index, wxLIST_STATE_SELECTED) != 0; }
- // columns
- // -------
- void SetColumnImage(int col, int image)
- {
- wxListItem item;
- item.SetMask(wxLIST_MASK_IMAGE);
- item.SetImage(image);
- SetColumn(col, item);
- }
- void ClearColumnImage(int col) { SetColumnImage(col, -1); }
- private:
- DECLARE_DYNAMIC_CLASS_NO_COPY(wxListView)
- };
- #endif // wxUSE_LISTCTRL
- #endif
- // _WX_LISTCTRL_H_BASE_
|