1998-05-22 19:57:05 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: listctrl.h
|
|
|
|
// Purpose: wxListCtrl sample
|
|
|
|
// Author: Julian Smart
|
|
|
|
// Modified by:
|
|
|
|
// Created: 04/01/98
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Copyright: (c) Julian Smart and Markus Holzem
|
1999-07-23 23:41:45 +00:00
|
|
|
// Licence: wxWindows license
|
1998-05-22 19:57:05 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
// Define a new application type
|
|
|
|
class MyApp: public wxApp
|
1999-12-01 22:07:25 +00:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual bool OnInit();
|
1998-05-22 19:57:05 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
class MyListCtrl: public wxListCtrl
|
|
|
|
{
|
|
|
|
public:
|
1999-07-23 23:41:45 +00:00
|
|
|
MyListCtrl(wxWindow *parent, const wxWindowID id, const wxPoint& pos,
|
|
|
|
const wxSize& size, long style):
|
1998-05-22 19:57:05 +00:00
|
|
|
wxListCtrl(parent, id, pos, size, style)
|
1999-07-23 23:41:45 +00:00
|
|
|
{
|
|
|
|
}
|
1999-12-01 22:07:25 +00:00
|
|
|
|
1999-08-24 20:26:06 +00:00
|
|
|
void OnColClick(wxListEvent& event);
|
1999-07-23 23:41:45 +00:00
|
|
|
void OnBeginDrag(wxListEvent& event);
|
|
|
|
void OnBeginRDrag(wxListEvent& event);
|
|
|
|
void OnBeginLabelEdit(wxListEvent& event);
|
|
|
|
void OnEndLabelEdit(wxListEvent& event);
|
|
|
|
void OnDeleteItem(wxListEvent& event);
|
2000-02-06 13:51:01 +00:00
|
|
|
void OnDeleteAllItems(wxListEvent& event);
|
1999-07-23 23:41:45 +00:00
|
|
|
void OnGetInfo(wxListEvent& event);
|
|
|
|
void OnSetInfo(wxListEvent& event);
|
|
|
|
void OnSelected(wxListEvent& event);
|
|
|
|
void OnDeselected(wxListEvent& event);
|
|
|
|
void OnListKeyDown(wxListEvent& event);
|
|
|
|
void OnActivated(wxListEvent& event);
|
1998-05-22 19:57:05 +00:00
|
|
|
|
1999-06-01 15:32:12 +00:00
|
|
|
void OnChar(wxKeyEvent& event);
|
|
|
|
|
2000-02-24 23:40:42 +00:00
|
|
|
private:
|
|
|
|
void LogEvent(const wxListEvent& event, const wxChar *eventName);
|
|
|
|
|
1999-07-23 23:41:45 +00:00
|
|
|
DECLARE_EVENT_TABLE()
|
1998-05-22 19:57:05 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
// Define a new frame type
|
|
|
|
class MyFrame: public wxFrame
|
1999-07-23 23:41:45 +00:00
|
|
|
{
|
|
|
|
public:
|
1998-05-22 19:57:05 +00:00
|
|
|
MyListCtrl *m_listCtrl;
|
|
|
|
wxTextCtrl *m_logWindow;
|
|
|
|
|
2000-02-24 23:40:42 +00:00
|
|
|
MyFrame(const wxChar *title, int x, int y, int w, int h);
|
1999-07-23 23:41:45 +00:00
|
|
|
~MyFrame();
|
|
|
|
|
|
|
|
public:
|
1998-05-22 19:57:05 +00:00
|
|
|
void OnQuit(wxCommandEvent& event);
|
|
|
|
void OnAbout(wxCommandEvent& event);
|
|
|
|
void OnListView(wxCommandEvent& event);
|
|
|
|
void OnReportView(wxCommandEvent& event);
|
|
|
|
void OnIconView(wxCommandEvent& event);
|
|
|
|
void OnIconTextView(wxCommandEvent& event);
|
|
|
|
void OnSmallIconView(wxCommandEvent& event);
|
|
|
|
void OnSmallIconTextView(wxCommandEvent& event);
|
2000-03-13 17:20:39 +00:00
|
|
|
void OnToggleFirstSel(wxCommandEvent& event);
|
1998-08-23 20:06:24 +00:00
|
|
|
void OnDeselectAll(wxCommandEvent& event);
|
|
|
|
void OnSelectAll(wxCommandEvent& event);
|
2001-06-23 22:24:33 +00:00
|
|
|
void OnDelete(wxCommandEvent& event);
|
1999-07-23 23:41:45 +00:00
|
|
|
void OnDeleteAll(wxCommandEvent& event);
|
1999-12-01 22:07:25 +00:00
|
|
|
void OnSort(wxCommandEvent& event);
|
2000-02-08 01:07:48 +00:00
|
|
|
void OnSetFgColour(wxCommandEvent& event);
|
|
|
|
void OnSetBgColour(wxCommandEvent& event);
|
2000-02-10 18:12:44 +00:00
|
|
|
void OnToggleMultiSel(wxCommandEvent& event);
|
2000-07-15 19:51:35 +00:00
|
|
|
void OnShowColInfo(wxCommandEvent& event);
|
|
|
|
void OnUpdateShowColInfo(wxUpdateUIEvent& event);
|
1999-07-23 23:41:45 +00:00
|
|
|
|
1999-07-02 15:30:00 +00:00
|
|
|
void BusyOn(wxCommandEvent& event);
|
|
|
|
void BusyOff(wxCommandEvent& event);
|
1999-07-23 23:41:45 +00:00
|
|
|
|
2000-02-24 23:40:42 +00:00
|
|
|
wxImageList *m_imageListNormal;
|
|
|
|
wxImageList *m_imageListSmall;
|
|
|
|
|
|
|
|
private:
|
|
|
|
wxLog *m_logOld;
|
|
|
|
|
1999-07-23 23:41:45 +00:00
|
|
|
DECLARE_EVENT_TABLE()
|
1998-05-22 19:57:05 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// ID for the menu quit command
|
1999-12-01 22:07:25 +00:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
LIST_QUIT = 1,
|
|
|
|
LIST_LIST_VIEW = 2,
|
|
|
|
LIST_ICON_VIEW = 3,
|
|
|
|
LIST_ICON_TEXT_VIEW = 4,
|
|
|
|
LIST_SMALL_ICON_VIEW = 5,
|
|
|
|
LIST_SMALL_ICON_TEXT_VIEW = 6,
|
|
|
|
LIST_REPORT_VIEW = 7,
|
|
|
|
LIST_DESELECT_ALL = 8,
|
|
|
|
LIST_SELECT_ALL = 9,
|
|
|
|
LIST_ABOUT = 102,
|
|
|
|
BUSY_ON = 10,
|
|
|
|
BUSY_OFF = 11,
|
|
|
|
LIST_DELETE_ALL = 12,
|
2001-06-23 22:24:33 +00:00
|
|
|
LIST_DELETE,
|
1999-12-01 22:07:25 +00:00
|
|
|
LIST_SORT,
|
2000-02-08 01:07:48 +00:00
|
|
|
LIST_SET_FG_COL,
|
|
|
|
LIST_SET_BG_COL,
|
2000-02-10 18:12:44 +00:00
|
|
|
LIST_TOGGLE_MULTI_SEL,
|
2000-03-13 17:20:39 +00:00
|
|
|
LIST_TOGGLE_FIRST,
|
2000-07-15 19:51:35 +00:00
|
|
|
LIST_SHOW_COL_INFO,
|
1998-05-22 19:57:05 +00:00
|
|
|
|
1999-12-01 22:07:25 +00:00
|
|
|
LIST_CTRL = 1000
|
|
|
|
};
|
1998-05-22 19:57:05 +00:00
|
|
|
|