blob: 2afba7746ff76b6d6efd28bc355470b4578f16e7 (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 | #include "stdafx.h"
#include "optionsctrlimpl.h"
/*
 * OptionsCtrlImpl::Item
 */
OptionsCtrlImpl::Item::Item(OptionsCtrlImpl* pCtrl, ItemType ItemType, const wchar_t* szLabel, uint32_t dwFlags, INT_PTR dwData) :
	m_pCtrl(pCtrl), m_hItem(nullptr), m_nRef(1), m_ItemType(ItemType), m_strLabel(szLabel), m_dwData(dwData)
{
	m_bEnabled       = !(dwFlags & OCF_DISABLED);
	m_bDisableChilds = !(dwFlags & OCF_NODISABLECHILDS);
}
void OptionsCtrlImpl::Item::enableChilds(bool bEnable)
{
	HTREEITEM hChild = TreeView_GetChild(m_pCtrl->m_hTree, m_hItem);
	while (hChild)
	{
		Item* pItem = m_pCtrl->getItem(hChild);
		if (pItem)
			pItem->setEnabled(bEnable);
		hChild = TreeView_GetNextSibling(m_pCtrl->m_hTree, hChild);
	}
}
void OptionsCtrlImpl::Item::setLabel(const wchar_t* szLabel)
{
	m_strLabel = szLabel;
	m_pCtrl->setNodeText(m_hItem, m_strLabel.c_str());
}
 |