本文整理汇总了C++中CVConGuard::isActive方法的典型用法代码示例。如果您正苦于以下问题:C++ CVConGuard::isActive方法的具体用法?C++ CVConGuard::isActive怎么用?C++ CVConGuard::isActive使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CVConGuard
的用法示例。
在下文中一共展示了CVConGuard::isActive方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ChooseTabFromMenu
void CConEmuCtrl::ChooseTabFromMenu(BOOL abFirstTabOnly, POINT pt, DWORD Align /*= TPM_CENTERALIGN|TPM_VCENTERALIGN*/)
{
HMENU hPopup = gpConEmu->mp_Menu->CreateVConListPopupMenu(NULL, abFirstTabOnly);
if (!Align)
Align = TPM_LEFTALIGN|TPM_TOPALIGN;
int nTab = gpConEmu->mp_Menu->trackPopupMenu(tmp_TabsList, hPopup, Align|TPM_RETURNCMD,
pt.x, pt.y, ghWnd);
if (nTab >= IDM_VCON_FIRST && nTab <= IDM_VCON_LAST)
{
int nNewV = ((int)HIWORD(nTab))-1;
int nNewR = ((int)LOWORD(nTab))-1;
CVConGuard VCon;
if (CVConGroup::GetVCon(nNewV, &VCon))
{
CRealConsole* pRCon = VCon->RCon();
if (pRCon)
{
CTab tab(__FILE__,__LINE__);
if (pRCon->GetTab(nNewR, tab))
pRCon->ActivateFarWindow(tab->Info.nFarWindowID);
}
if (!VCon->isActive(false))
gpConEmu->Activate(VCon.VCon());
}
}
DestroyMenu(hPopup);
}
示例2: GetOpenedPanels
size_t CConEmuCtrl::GetOpenedPanels(wchar_t*& pszDirs, int& iCount, int& iCurrent)
{
CmdArg szActiveDir, szPassive;
CVConGuard VCon;
MArray<wchar_t*> Dirs;
size_t cchAllLen = 1;
iCount = iCurrent = 0;
for (int V = 0; CVConGroup::GetVCon(V, &VCon, true); V++)
{
VCon->RCon()->GetPanelDirs(szActiveDir, szPassive);
if (VCon->isActive(false))
iCurrent = iCount;
LPCWSTR psz[] = {szActiveDir.ms_Arg, szPassive.ms_Arg};
for (int i = 0; i <= 1; i++)
{
if (psz[i] && psz[i][0])
{
int iLen = lstrlen(psz[i]);
cchAllLen += (iLen+1);
Dirs.push_back(lstrdup(psz[i]));
iCount++;
}
}
}
_ASSERTE(pszDirs == NULL);
pszDirs = (wchar_t*)malloc(cchAllLen*sizeof(*pszDirs));
if (!pszDirs)
return 0;
wchar_t* psz = pszDirs;
for (int i = 0; i < Dirs.size(); i++)
{
wchar_t* p = Dirs[i];
_wcscpy_c(psz, cchAllLen, p);
psz += lstrlen(psz)+1;
free(p);
}
return cchAllLen;
}
示例3: ActiveTabByName
int CTabBarClass::ActiveTabByName(int anType, LPCWSTR asName, CVConGuard* rpVCon)
{
int nTab = -1;
if (rpVCon)
rpVCon->Release();
TODO("TabBarClass::ActiveTabByName - найти таб по имени");
INT_PTR V, I;
int tabIdx = 0;
CVConGuard VCon;
for (V = 0; (nTab == -1) && CVConGroup::GetVCon(V, &VCon, true); V++)
{
#ifdef _DEBUG
bool lbActive = VCon->isActive(false);
#endif
//111120 - Эту опцию игнорируем. Если редактор открыт в другой консоли - активируем ее потом
//if (gpSet->bHideInactiveConsoleTabs)
//{
// if (!lbActive) continue;
//}
CRealConsole *pRCon = VCon->RCon();
for (I = 0; TRUE; I++)
{
CTab tab(__FILE__,__LINE__);
if (!pRCon->GetTab(I, tab))
break;
if (tab->Type() == (anType & fwt_TypeMask))
{
// Тут GetName() использовать нельзя, т.к. оно может возвращать "переименованное пользователем"
// А здесь ищется конкретный редактор-вьювер фара (то есть нужно правильное полное имя-путь к файлу)
LPCWSTR pszNamePtr = tab->Name.Ptr();
// If asName (searched file) has been specified with path, we need to compare with tab full path
LPCWSTR pszCompareTab = wcspbrk(asName, L"\\/") ? pszNamePtr : PointToName(pszNamePtr);
if (pszNamePtr && ((lstrcmpi(pszCompareTab, asName) == 0)))
{
nTab = tabIdx;
break;
}
}
tabIdx++;
}
}
if (nTab >= 0)
{
if (!CanActivateTab(nTab))
{
nTab = -2;
}
else
{
if (!mp_Rebar->FarSendChangeTab(nTab, &VCon))
nTab = -2;
}
}
if (rpVCon)
rpVCon->Attach(VCon.VCon());
return nTab;
}