Exemplo n.º 1
0
void CSourcesDlg::UpdateGrid()
{
	m_grid.DeleteAllItems();
	for (auto& sourceInfo : m_sourceInfos)
	{
		int item = m_grid.GetItemCount();
		m_grid.InsertItem(item, PropCreateCheckButton(L"", sourceInfo.enabled));
		m_grid.SetSubItem(item, 1, PropCreateReadOnlyItem(L"", sourceInfo.description.c_str()));
		m_grid.SetSubItem(item, 2, PropCreateReadOnlyItem(L"", WStr(SourceTypeToString(sourceInfo.type))));
		if (sourceInfo.type == SourceType::System)
			m_grid.SetSubItem(item, 3, PropCreateReadOnlyItem(L"", L""));
		else
			m_grid.SetSubItem(item, 3, PropCreateReadOnlyItem(L"", L"x"));
	}
}
Exemplo n.º 2
0
LRESULT
CAppOptAdvancedPage::OnInitDialog(HWND hwndFocus, LPARAM lParam)
{
	BOOL fSuccess;

	m_images.Create(IDB_PROPTREE, 16, 1, RGB(255,0,255));

	m_tree.SubclassWindow( GetDlgItem(IDC_OPTION_TREE) );
	m_tree.SetImageList(m_images, TVSIL_NORMAL);
	m_tree.SetExtendedTreeStyle(PTS_EX_NOCOLLAPSE);

	CString str;
	fSuccess = str.LoadString(IDS_OPTION_GROUP_CONFIRM);
	ATLASSERT(fSuccess);
	
	HTREEITEM hItem;
	hItem = m_tree.InsertItem(PropCreateReadOnlyItem(str),13,13,TVI_ROOT);

	m_tiGroupConfirm = hItem;

	DWORD nConfirm = RTL_NUMBER_OF(_appConfirmOptValues);
	pLoadAppOptValues(nConfirm, _appConfirmOptValues);

	for (DWORD i = 0; i < nConfirm; ++i) {
		PAPP_OPT_VALUE_DEF p = &_appConfirmOptValues[i];
		fSuccess = str.LoadString(p->nResID);
		ATLASSERT(fSuccess);
		HTREEITEM hNewItem = m_tree.InsertItem(PropCreateCheckmark(str),0, 0, hItem);
		m_tree.SetItemData(hNewItem, (DWORD_PTR)p);
		m_tree.SetCheckState(hNewItem, p->CurrentValue.fValue);
	}

	fSuccess = str.LoadString(IDS_OPTION_GROUP_MENU);
	ATLASSERT(fSuccess);
	hItem = m_tree.InsertItem(PropCreateReadOnlyItem(str),13,13,TVI_ROOT);

	m_tiGroupMisc = hItem;

	DWORD nMiscOpts = RTL_NUMBER_OF(_appMenuOptValues);
	pLoadAppOptValues(nMiscOpts, _appMenuOptValues);

	for (DWORD i = 0; i < nMiscOpts; ++i) {
		PAPP_OPT_VALUE_DEF p = &_appMenuOptValues[i];
		fSuccess = str.LoadString(p->nResID);
		ATLASSERT(fSuccess);
		HTREEITEM hNewItem = m_tree.InsertItem(PropCreateCheckmark(str),0, 0, hItem);
		m_tree.SetItemData(hNewItem, (DWORD_PTR)p);
		m_tree.SetCheckState(hNewItem, p->CurrentValue.fValue);
	}

	//
	// Hibernation Support options
	//
	NDAS_SERVICE_PARAM serviceParam = {0};
	fSuccess = ::NdasGetServiceParam(
		NDASSVC_PARAM_SUSPEND_PROCESS, 
		&serviceParam);

	m_tiGroupSuspend = NULL;

	if (!fSuccess) 
	{
		//
		// if cannot retrieve the service param
		// hide the entire group
		//
		return 1;
	}

	m_dwSuspend = serviceParam.Value.DwordValue;
	NDASSVC_SUSPEND_DENY;
	NDASSVC_SUSPEND_ALLOW; //  == serviceParam.DwordValue;

	fSuccess = str.LoadString(IDS_OPTION_GROUP_SUSPEND);
	ATLASSERT(fSuccess);
	hItem = m_tree.InsertItem(PropCreateReadOnlyItem(str),13,13,TVI_ROOT);

	m_tiGroupSuspend = hItem;

	fSuccess = str.LoadString(IDS_OG_SUSPEND_DENY);
	ATLASSERT(fSuccess);
	HTREEITEM hItemSub = m_tree.InsertItem(PropCreateOptionCheck(str),2,2,hItem);
	m_tree.SetItemData(hItemSub, NDASSVC_SUSPEND_DENY);
	if (NDASSVC_SUSPEND_DENY == m_dwSuspend) {
		m_tree.SetCheckState(hItemSub, TRUE);
	} else {
		m_tree.SetCheckState(hItemSub, FALSE);
	}
	
	fSuccess = str.LoadString(IDS_OG_SUSPEND_ALLOW);
	ATLASSERT(fSuccess);
	hItemSub = m_tree.InsertItem(PropCreateOptionCheck(str),2,2,hItem);
	m_tree.SetItemData(hItemSub, NDASSVC_SUSPEND_ALLOW);
	if (NDASSVC_SUSPEND_ALLOW == m_dwSuspend) {
		m_tree.SetCheckState(hItemSub, TRUE);
	} else {
		m_tree.SetCheckState(hItemSub, FALSE);
	}

	// set initial focus
	return 1;
}