]> git.saurik.com Git - wxWidgets.git/blob - demos/dbbrowse/dbtree.h
dbbrowse.cpp dbbrowse.h
[wxWidgets.git] / demos / dbbrowse / dbtree.h
1 //----------------------------------------------------------------------------------------
2 // Name: DBTree.cpp/.h
3 // Purpose: Tree with Table and Views, branches show Field information
4 // Author: Mark Johnson
5 // Modified by: 19991129.mj10777
6 // Created: 19991129
7 // Copyright: (c) Mark Johnson
8 // Licence: wxWindows license
9 // RCS-ID: $Id$
10 //----------------------------------------------------------------------------------------
11 class MainDoc; // Declared in Doc.h file
12 //----------------------------------------------------------------------------------------
13 class DBTreeData : public wxTreeItemData
14 {
15 public:
16 DBTreeData(const wxString& desc) : m_desc(desc) { }
17 void ShowInfo(wxTreeCtrl *tree);
18 wxString m_desc;
19 };
20 //----------------------------------------------------------------------------------------
21 class DBTree : public wxTreeCtrl
22 {
23 public:
24 enum
25 { // The order here must be the same as in m_imageListNormal !
26 TreeIc_Logo, // logo.ico
27 TreeIc_DsnClosed, // dsnclose.ico
28 TreeIc_DsnOpen, // dsnopen.ico
29 TreeIc_TAB, // tab.ico
30 TreeIc_VIEW, // view.ico
31 TreeIc_COL, // col.ico
32 TreeIc_KEY, // key.ico
33 TreeIc_KEYF, // keyf.ico
34 TreeIc_DocOpen, // d_open.ico
35 TreeIc_DocClosed, // d_closed.ico
36 TreeIc_FolderClosed, // f_closed.ico
37 TreeIc_FolderOpen // f_open.ico
38 };
39 wxString Temp0, Temp1, Temp2, Temp3, Temp4, Temp5;
40 //----------------------------------------------------------------------------------------
41 DBTree() { }
42 DBTree(wxWindow *parent);
43 DBTree(wxWindow *parent, const wxWindowID id,const wxPoint& pos, const wxSize& size,long style);
44 virtual ~DBTree();
45 MainDoc *pDoc;
46 wxDbInf *ct_BrowserDB;
47 //----------------------------------------------------------------------------------------
48 int i_TabArt; // Tab = 0 ; Page = 1;
49 int i_ViewNr; // View Nummer in Tab / Page
50 int i_Which; // Which View, Database is this/using
51 wxString s_DSN; // Name of the Dataset
52 wxMenu *popupMenu1; // OnDBClass
53 wxMenu *popupMenu2; // OnDBGrid & OnTableclass
54 wxPoint TreePos;
55 //----------------------------------------------------------------------------------------
56 wxImageList *p_imageListNormal;
57 //----------------------------------------------------------------------------------------
58 public:
59 int OnPopulate();
60 void OnSelChanged(wxTreeEvent& event);
61 void OnRightSelect(wxTreeEvent& event);
62 void OnDBGrid(wxMenu& menu, wxCommandEvent& event);
63 void OnDBClass(wxMenu& menu, wxCommandEvent& event);
64 void OnTableClass(wxMenu& menu, wxCommandEvent& event);
65 void OnTableClassAll(wxMenu& menu, wxCommandEvent& event);
66 void OnMouseEvent(wxMouseEvent& event);
67 void OnMouseMove(wxMouseEvent& event);
68 public:
69 //----------------------------------------------------------------------------------------
70 // NB: due to an ugly wxMSW hack you _must_ use DECLARE_DYNAMIC_CLASS()
71 // if you want your overloaded OnCompareItems() to be called.
72 // OTOH, if you don't want it you may omit the next line - this will
73 // make default (alphabetical) sorting much faster under wxMSW.
74 DECLARE_DYNAMIC_CLASS(DBTree)
75 DECLARE_EVENT_TABLE()
76 };
77 //----------------------------------------------------------------------------------------
78 #define POPUP_01_BEGIN 1100
79 #define DATA_SHOW 1101
80 #define DATA_DB 1102
81 #define DATA_TABLE 1103
82 #define DATA_TABLE_ALL 1104
83 #define POPUP_01_END 1117
84 //----------------------------------------------------------------------------------------