ARGH
[matches/honours.git] / research / transmission_spectroscopy / TOF / Win32++ / samples / TabDemo / src / Classes.cpp
1 //////////////////////////////////////////////\r
2 // Classes.cpp\r
3 //  Definitions for CViewClasses\r
4 \r
5 #include "stdafx.h"\r
6 #include "TabDemoApp.h"\r
7 #include "Classes.h"\r
8 #include "resource.h"\r
9 \r
10 \r
11 ///////////////////////////////////////////////\r
12 // CViewClasses functions\r
13 CViewClasses::CViewClasses() : m_himlNormal(0)\r
14 {\r
15 }\r
16 \r
17 CViewClasses::~CViewClasses()\r
18 {\r
19         if (IsWindow()) DeleteAllItems();\r
20         ImageList_Destroy(m_himlNormal);\r
21 }\r
22 \r
23 void CViewClasses::OnInitialUpdate()\r
24 {\r
25         //set the image lists\r
26         m_himlNormal = ImageList_Create(16, 15, ILC_COLOR32 | ILC_MASK, 1, 0);\r
27         HBITMAP hbm = LoadBitmap(MAKEINTRESOURCE(IDB_CLASSVIEW));\r
28         ImageList_AddMasked(m_himlNormal, hbm, RGB(255, 0, 0));\r
29         SetImageList(m_himlNormal, LVSIL_NORMAL);\r
30         ::DeleteObject(hbm);\r
31 \r
32         // Adjust style to show lines and [+] button\r
33         DWORD dwStyle = (DWORD)GetWindowLongPtr(GWL_STYLE);\r
34         dwStyle |= TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT;\r
35         SetWindowLongPtr(GWL_STYLE, dwStyle);\r
36 \r
37         DeleteAllItems();\r
38 \r
39         // Add some tree-view items\r
40         HTREEITEM htiRoot = AddItem(NULL, _T("TreeView"), 0);\r
41         HTREEITEM htiCTreeViewApp = AddItem(htiRoot, _T("CTreeViewApp"), 1);\r
42         AddItem(htiCTreeViewApp, _T("CTreeViewApp()"), 3);\r
43         AddItem(htiCTreeViewApp, _T("GetMainFrame()"), 3);\r
44         AddItem(htiCTreeViewApp, _T("InitInstance()"), 3);\r
45         HTREEITEM htiMainFrame = AddItem(htiRoot, _T("CMainFrame"), 1);\r
46         AddItem(htiMainFrame, _T("CMainFrame()"), 3);\r
47         AddItem(htiMainFrame, _T("OnCommand()"), 4);\r
48         AddItem(htiMainFrame, _T("OnInitialUpdate()"), 4);\r
49         AddItem(htiMainFrame, _T("WndProc()"), 4);\r
50         HTREEITEM htiView = AddItem(htiRoot, _T("CView"), 1);\r
51         AddItem(htiView, _T("CView()"), 3);\r
52         AddItem(htiView, _T("OnInitialUpdate()"), 4);\r
53         AddItem(htiView, _T("WndProc()"), 4);\r
54 \r
55         // Expand some tree-view items\r
56         Expand(htiRoot, TVE_EXPAND);\r
57         Expand(htiCTreeViewApp, TVE_EXPAND);\r
58 }\r
59 \r
60 HTREEITEM CViewClasses::AddItem(HTREEITEM hParent, LPCTSTR szText, int iImage)\r
61 {\r
62         TVITEM tvi = {0};\r
63         tvi.mask = TVIF_TEXT | TVIF_IMAGE | TVIF_SELECTEDIMAGE;\r
64         tvi.iImage = iImage;\r
65         tvi.iSelectedImage = iImage;\r
66         tvi.pszText = (LPTSTR)szText;\r
67 \r
68         TVINSERTSTRUCT tvis = {0};\r
69         tvis.hParent = hParent;\r
70         tvis.item = tvi;\r
71 \r
72         return InsertItem(tvis);\r
73 }\r
74 \r
75 \r

UCC git Repository :: git.ucc.asn.au