コード例 #1
0
ファイル: CPanelHistory.cpp プロジェクト: HelloWilliam/osiris
void CPanelHistory::OnButton(wxCommandEvent &e)
{
  wxButton *pObj = (wxButton *)e.GetEventObject();
  int nCount = m_pComboHistory->GetCount();
  int n = -1;
  if(!nCount) {;} // do nothing
  if(pObj == m_pButtonBack1)
  {
    n = m_pComboHistory->GetSelection() + 1;
  }
  else if(pObj == m_pButtonBack)
  {
    n = nCount - 1;
  }
  else if(pObj == m_pButtonFwd)
  {
    n = 0;
  }
  else if(pObj == m_pButtonFwd1)
  {
    n = m_pComboHistory->GetSelection() - 1;
  }
  if( (n >= 0) && (n < nCount) )
  {
    m_pComboHistory->Select(n);
    OnComboBox(e);
  }
}
コード例 #2
0
ファイル: SetPgTasks.cpp プロジェクト: Maximus5/ConEmu
bool CSetPgTasks::SelectNextItem(bool bNext, bool bProcess)
{
	if (bProcess)
	{
		int iCur = CSetDlgLists::GetListboxCurSel(mh_Dlg, lbCmdTasks, true);
		if (iCur >= 0)
		{
			if (bNext)
			{
				iCur++;
				if (iCur >= (int)SendDlgItemMessage(mh_Dlg, lbCmdTasks, LB_GETCOUNT, 0,0))
					goto wrap;
			}
			else
			{
				iCur--;
				if (iCur < 0)
					goto wrap;
			}

			CSetDlgLists::ListBoxMultiSel(mh_Dlg, lbCmdTasks, iCur);

			OnComboBox(mh_Dlg, lbCmdTasks, LBN_SELCHANGE);
		}
	}

wrap:
	return true;
}
コード例 #3
0
ファイル: SetPgTasks.cpp プロジェクト: Maximus5/ConEmu
LRESULT CSetPgTasks::OnInitDialog(HWND hDlg, bool abForceReload)
{
	mb_IgnoreCmdGroupEdit = true;

	wchar_t szKey[128] = L"";
	const ConEmuHotKey* pDefCmdKey = NULL;
	if (!gpSet->GetHotkeyById(vkMultiCmd, &pDefCmdKey) || !pDefCmdKey)
		wcscpy_c(szKey, gsNoHotkey);
	else
		pDefCmdKey->GetHotkeyName(szKey, true);
	CEStr lsLabel(L"Default shell (", szKey, L")");
	SetDlgItemText(hDlg, cbCmdGrpDefaultCmd, lsLabel);

	// Not implemented yet
	ShowWindow(GetDlgItem(hDlg, cbCmdGrpToolbar), SW_HIDE);

	if (abForceReload)
	{
		int nTab = 4*4; // represent the number of quarters of the average character width for the font
		SendDlgItemMessage(hDlg, lbCmdTasks, LB_SETTABSTOPS, 1, (LPARAM)&nTab);

		LONG_PTR nStyles = GetWindowLongPtr(GetDlgItem(hDlg, lbCmdTasks), GWL_STYLE);
		if (!(nStyles & LBS_NOTIFY))
			SetWindowLongPtr(GetDlgItem(hDlg, lbCmdTasks), GWL_STYLE, nStyles|LBS_NOTIFY);
	}

	// Сброс ранее загруженного списка (ListBox: lbCmdTasks)
	SendDlgItemMessage(hDlg, lbCmdTasks, LB_RESETCONTENT, 0,0);

	//if (abForceReload)
	//{
	//	// Обновить группы команд
	//	gpSet->LoadCmdTasks(NULL, true);
	//}

	int nGroup = 0;
	wchar_t szItem[1024];
	const CommandTasks* pGrp = NULL;
	while ((pGrp = gpSet->CmdTaskGet(nGroup)))
	{
		swprintf_c(szItem, L"%i\t", nGroup+1);
		int nPrefix = lstrlen(szItem);
		lstrcpyn(szItem+nPrefix, pGrp->pszName, countof(szItem)-nPrefix);

		INT_PTR iIndex = SendDlgItemMessage(hDlg, lbCmdTasks, LB_ADDSTRING, 0, (LPARAM)szItem);
		UNREFERENCED_PARAMETER(iIndex);
		//SendDlgItemMessage(hDlg, lbCmdTasks, LB_SETITEMDATA, iIndex, (LPARAM)pGrp);

		nGroup++;
	}

	OnComboBox(hDlg, lbCmdTasks, LBN_SELCHANGE);

	mb_IgnoreCmdGroupEdit = false;

	return 0;
}
コード例 #4
0
ファイル: CPanelHistory.cpp プロジェクト: HelloWilliam/osiris
void CPanelHistory::_Select(int n)
{
  if(n != m_pComboHistory->GetSelection())
  {
    wxCommandEvent e(wxEVT_COMMAND_COMBOBOX_SELECTED,wxID_ANY);
    e.SetEventObject(m_pComboHistory);
    m_pComboHistory->Select(n);
    OnComboBox(e);
  }
}
コード例 #5
0
ファイル: SetPgApps.cpp プロジェクト: jslilly/ConEmu
INT_PTR CSetPgApps::PageDlgProc(HWND hDlg, UINT messg, WPARAM wParam, LPARAM lParam)
{
	INT_PTR iRc = 0;

	if (!mh_Child && ((messg == WM_INITDIALOG) || (messg == mn_ActivateTabMsg)))
	{
		if (!CreateChildDlg())
		{
			return 0;
		}
	}

	if ((messg == WM_INITDIALOG) || (messg == mn_ActivateTabMsg))
	{
		// Return here! Do not pass to mb_Redraw/mb_Refill routines!
		return OnInitDialog(hDlg, (messg == WM_INITDIALOG));
	}
	else switch (messg)
	{
	case WM_NOTIFY:
		{
			LPNMHDR phdr = (LPNMHDR)lParam;

			if (phdr->code == TTN_GETDISPINFO)
			{
				return gpSetCls->ProcessTipHelp(hDlg, messg, wParam, lParam);
			}

			break;
		}

	case WM_COMMAND:
		{
			_ASSERTE(mh_Child && IsWindow(mh_Child));
			_ASSERTE(hDlg == mh_Dlg);

			if (HIWORD(wParam) == BN_CLICKED)
			{
				OnButtonClicked(hDlg, (HWND)lParam, LOWORD(wParam));
			}
			else if (HIWORD(wParam) == EN_CHANGE)
			{
				OnEditChanged(hDlg, LOWORD(wParam));
			}
			else if (HIWORD(wParam) == LBN_SELCHANGE)
			{
				OnComboBox(hDlg, LOWORD(wParam), HIWORD(wParam));
			}

		} // WM_COMMAND
		break;
	} // switch (messg)


	if (mb_Redraw)
	{
		mb_Redraw = false;
		NotifyVCon();
	}


	if (mb_Refill)
	{
		mb_Refill = false;

		MSetter lockSelChange(&mb_SkipSelChange);
		MSetter lockEditSet(&mb_SkipEditSet);

		INT_PTR iSel = SendDlgItemMessage(hDlg, lbAppDistinct, LB_GETCURSEL, 0,0);
		OnInitDialog(hDlg, false);
		SendDlgItemMessage(hDlg, lbAppDistinct, LB_SETCURSEL, iSel,0);

	} // mb_Refill


	// To be sure
	mb_Refill = false;
	mb_Redraw = false;

	return iRc;
}