本文整理汇总了C++中CSysProgressDlg::ShowModal方法的典型用法代码示例。如果您正苦于以下问题:C++ CSysProgressDlg::ShowModal方法的具体用法?C++ CSysProgressDlg::ShowModal怎么用?C++ CSysProgressDlg::ShowModal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSysProgressDlg
的用法示例。
在下文中一共展示了CSysProgressDlg::ShowModal方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Refresh
void CDeleteRemoteTagDlg::Refresh()
{
m_ctrlTags.DeleteAllItems();
m_SelectAll.SetCheck(BST_UNCHECKED);
m_taglist.clear();
CSysProgressDlg sysProgressDlg;
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_LOADING)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
if (g_Git.GetRemoteTags(m_sRemote, m_taglist))
{
sysProgressDlg.Stop();
MessageBox(g_Git.GetGitLastErr(L"Could not retrieve remote tags.", CGit::GIT_CMD_FETCH), L"TortoiseGit", MB_ICONERROR);
}
sysProgressDlg.Stop();
BringWindowToTop();
for (int i = 0; i < (int)m_taglist.size(); ++i)
m_ctrlTags.InsertItem(i, m_taglist[i]);
DialogEnableWindow(IDOK, FALSE);
}
示例2: OnBnClickedOk
void CDeleteRemoteTagDlg::OnBnClickedOk()
{
if (m_ctrlTags.GetSelectedCount() > 1)
{
CString msg;
msg.Format(IDS_PROC_DELETENREFS, m_ctrlTags.GetSelectedCount());
if (CMessageBox::Show(m_hWnd, msg, _T("TortoiseGit"), 2, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_DELETEBUTTON)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON))) == 2)
return;
}
else // GetSelectedCount() is 1, otherwise the button is disabled
{
POSITION pos = m_ctrlTags.GetFirstSelectedItemPosition();
CString msg;
msg.Format(IDS_PROC_DELETEBRANCHTAG, (LPCTSTR)m_taglist[(m_ctrlTags.GetNextSelectedItem(pos))]);
if (CMessageBox::Show(m_hWnd, msg, _T("TortoiseGit"), 2, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_DELETEBUTTON)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON))) == 2)
return;
}
STRING_VECTOR list;
POSITION pos = m_ctrlTags.GetFirstSelectedItemPosition();
int index;
while ((index = m_ctrlTags.GetNextSelectedItem(pos)) >= 0)
list.push_back(_T("refs/tags/") + m_taglist[index]);
CSysProgressDlg sysProgressDlg;
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_DELETING_REMOTE_REFS)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
if (g_Git.DeleteRemoteRefs(m_sRemote, list))
CMessageBox::Show(m_hWnd, g_Git.GetGitLastErr(_T("Could not delete remote ref."), CGit::GIT_CMD_PUSH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
sysProgressDlg.Stop();
BringWindowToTop();
Refresh();
}
示例3: DoDeleteRef
bool CBrowseRefsDlg::DoDeleteRef(CString completeRefName)
{
bool bIsRemoteBranch = false;
bool bIsBranch = false;
if (wcsncmp(completeRefName, L"refs/remotes/",13) == 0) {bIsBranch = true; bIsRemoteBranch = true;}
else if (wcsncmp(completeRefName, L"refs/heads/",11) == 0) {bIsBranch = true;}
if (bIsRemoteBranch)
{
CString branchToDelete = completeRefName.Mid(13);
CString remoteName, remoteBranchToDelete;
if (SplitRemoteBranchName(branchToDelete, remoteName, remoteBranchToDelete))
return false;
if (CAppUtils::IsSSHPutty())
CAppUtils::LaunchPAgent(NULL, &remoteName);
CSysProgressDlg sysProgressDlg;
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_DELETING_REMOTE_REFS)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
STRING_VECTOR list;
list.push_back(_T("refs/heads/") + remoteBranchToDelete);
if (g_Git.DeleteRemoteRefs(remoteName, list))
{
CMessageBox::Show(m_hWnd, g_Git.GetGitLastErr(_T("Could not delete remote ref."), CGit::GIT_CMD_PUSH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
sysProgressDlg.Stop();
BringWindowToTop();
return false;
}
sysProgressDlg.Stop();
BringWindowToTop();
}
else if (bIsBranch)
{
if (g_Git.DeleteRef(completeRefName))
{
CMessageBox::Show(m_hWnd, g_Git.GetGitLastErr(L"Could not delete reference.", CGit::GIT_CMD_DELETETAGBRANCH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
return false;
}
}
else if (wcsncmp(completeRefName, L"refs/tags/", 10) == 0)
{
if (g_Git.DeleteRef(completeRefName))
{
CMessageBox::Show(m_hWnd, g_Git.GetGitLastErr(L"Could not delete reference.", CGit::GIT_CMD_DELETETAGBRANCH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
return false;
}
}
return true;
}
示例4: Refresh
void CDeleteRemoteTagDlg::Refresh()
{
m_ctrlTags.DeleteAllItems();
m_SelectAll.SetCheck(BST_UNCHECKED);
m_taglist.clear();
CSysProgressDlg sysProgressDlg;
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_LOADING)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
g_Git.GetRemoteTags(m_sRemote, m_taglist);
sysProgressDlg.Stop();
for (int i = 0; i < (int)m_taglist.size(); ++i)
{
m_ctrlTags.InsertItem(i, m_taglist[i]);
}
DialogEnableWindow(IDOK, FALSE);
}
示例5: OnBnClickedOk
void CDeleteRemoteTagDlg::OnBnClickedOk()
{
if (m_ctrlTags.GetSelectedCount() > 1)
{
CString msg;
msg.Format(IDS_PROC_DELETENREFS, m_ctrlTags.GetSelectedCount());
if (CMessageBox::Show(m_hWnd, msg, _T("TortoiseGit"), 2, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_DELETEBUTTON)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON))) == 2)
return;
}
else // GetSelectedCount() is 1, otherwise the button is disabled
{
POSITION pos = m_ctrlTags.GetFirstSelectedItemPosition();
CString msg;
msg.Format(IDS_PROC_DELETEBRANCHTAG, m_taglist[(m_ctrlTags.GetNextSelectedItem(pos))]);
if (CMessageBox::Show(m_hWnd, msg, _T("TortoiseGit"), 2, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_DELETEBUTTON)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON))) == 2)
return;
}
CMassiveGitTask mgtPush(_T("push ") + m_sRemote, FALSE);
POSITION pos = m_ctrlTags.GetFirstSelectedItemPosition();
int index;
while ((index = m_ctrlTags.GetNextSelectedItem(pos)) >= 0)
{
mgtPush.AddFile(_T(":refs/tags/") + m_taglist[index]);
}
CSysProgressDlg sysProgressDlg;
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_DELETING_REMOTE_REFS)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
BOOL cancel = FALSE;
mgtPush.Execute(cancel);
sysProgressDlg.Stop();
Refresh();
}
示例6: DeleteRef
int CGitLogList::DeleteRef(const CString& ref)
{
CString shortname;
if (CGit::GetShortName(ref, shortname, _T("refs/remotes/")))
{
CString msg;
msg.Format(IDS_PROC_DELETEREMOTEBRANCH, (LPCTSTR)ref);
int result = CMessageBox::Show(nullptr, msg, _T("TortoiseGit"), 3, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_PROC_DELETEREMOTEBRANCH_LOCALREMOTE)), CString(MAKEINTRESOURCE(IDS_PROC_DELETEREMOTEBRANCH_LOCAL)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON)));
if (result == 1)
{
CString remoteName = shortname.Left(shortname.Find(L'/'));
shortname = shortname.Mid(shortname.Find(L'/') + 1);
if (CAppUtils::IsSSHPutty())
CAppUtils::LaunchPAgent(nullptr, &remoteName);
CSysProgressDlg sysProgressDlg;
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_DELETING_REMOTE_REFS)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
STRING_VECTOR list;
list.push_back(_T("refs/heads/") + shortname);
if (g_Git.DeleteRemoteRefs(remoteName, list))
CMessageBox::Show(nullptr, g_Git.GetGitLastErr(_T("Could not delete remote ref."), CGit::GIT_CMD_PUSH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
sysProgressDlg.Stop();
return TRUE;
}
else if (result == 2)
{
if (g_Git.DeleteRef(ref))
{
CMessageBox::Show(nullptr, g_Git.GetGitLastErr(L"Could not delete reference.", CGit::GIT_CMD_DELETETAGBRANCH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
return FALSE;
}
return TRUE;
}
return FALSE;
}
else if (CGit::GetShortName(ref, shortname, _T("refs/stash")))
{
CString err;
std::vector<GitRevLoglist> stashList;
size_t count = !GitRevLoglist::GetRefLog(ref, stashList, err) ? stashList.size() : 0;
CString msg;
msg.Format(IDS_PROC_DELETEALLSTASH, count);
if (CMessageBox::Show(nullptr, msg, _T("TortoiseGit"), 2, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_DELETEBUTTON)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON))) == 1)
{
CString sCmd;
sCmd.Format(_T("git.exe stash clear"));
CString out;
if (g_Git.Run(sCmd, &out, CP_UTF8))
CMessageBox::Show(nullptr, out, _T("TortoiseGit"), MB_OK | MB_ICONERROR);
return TRUE;
}
return FALSE;
}
CString msg;
msg.Format(IDS_PROC_DELETEBRANCHTAG, (LPCTSTR)ref);
if (CMessageBox::Show(nullptr, msg, _T("TortoiseGit"), 2, IDI_QUESTION, CString(MAKEINTRESOURCE(IDS_DELETEBUTTON)), CString(MAKEINTRESOURCE(IDS_ABORTBUTTON))) == 1)
{
if (g_Git.DeleteRef(ref))
{
CMessageBox::Show(nullptr, g_Git.GetGitLastErr(L"Could not delete reference.", CGit::GIT_CMD_DELETETAGBRANCH), _T("TortoiseGit"), MB_OK | MB_ICONERROR);
return FALSE;
}
return TRUE;
}
return FALSE;
}
示例7: DoDeleteRef
bool CBrowseRefsDlg::DoDeleteRef(CString completeRefName, bool bForce)
{
bool bIsRemoteBranch = false;
bool bIsBranch = false;
if (wcsncmp(completeRefName, L"refs/remotes/",13) == 0) {bIsBranch = true; bIsRemoteBranch = true;}
else if (wcsncmp(completeRefName, L"refs/heads/",11) == 0) {bIsBranch = true;}
if(bIsBranch)
{
CString branchToDelete = completeRefName.Mid(bIsRemoteBranch ? 13 : 11);
CString cmd;
if(bIsRemoteBranch)
{
CString remoteName, remoteBranchToDelete;
if (SplitRemoteBranchName(branchToDelete, remoteName, remoteBranchToDelete))
return false;
if(CAppUtils::IsSSHPutty())
{
CAppUtils::LaunchPAgent(NULL, &remoteName);
}
cmd.Format(L"git.exe push \"%s\" :refs/heads/%s", remoteName, remoteBranchToDelete);
}
else
cmd.Format(L"git.exe branch -%c -- %s",bForce?L'D':L'd',branchToDelete);
CSysProgressDlg sysProgressDlg;
if (bIsRemoteBranch)
{
sysProgressDlg.SetTitle(CString(MAKEINTRESOURCE(IDS_APPNAME)));
sysProgressDlg.SetLine(1, CString(MAKEINTRESOURCE(IDS_DELETING_REMOTE_REFS)));
sysProgressDlg.SetLine(2, CString(MAKEINTRESOURCE(IDS_PROGRESSWAIT)));
sysProgressDlg.SetShowProgressBar(false);
sysProgressDlg.ShowModal(this, true);
}
CString errorMsg;
if(g_Git.Run(cmd,&errorMsg,CP_UTF8)!=0)
{
CMessageBox::Show(m_hWnd, errorMsg, _T("TortoiseGit"), MB_OK | MB_ICONERROR);
if (bIsRemoteBranch)
sysProgressDlg.Stop();
BringWindowToTop();
return false;
}
if (bIsRemoteBranch)
sysProgressDlg.Stop();
BringWindowToTop();
}
else if (wcsncmp(completeRefName, L"refs/tags/", 10) == 0)
{
CString tagToDelete = completeRefName.Mid(10);
CString cmd;
cmd.Format(L"git.exe tag -d -- %s",tagToDelete);
CString errorMsg;
if(g_Git.Run(cmd,&errorMsg,CP_UTF8)!=0)
{
CMessageBox::Show(m_hWnd, errorMsg, _T("TortoiseGit"), MB_OK | MB_ICONERROR);
return false;
}
}
return true;
}