int main(int argc, char** argv) { SetDlgTitle(); #ifndef WIN32 rlimit rl; if(getrlimit(RLIMIT_CORE, &rl) == -1) printf("getrlimit failed. This could be problem.\n"); else { rl.rlim_cur = rl.rlim_max; if(setrlimit(RLIMIT_CORE, &rl) == -1) printf("setrlimit failed. Server may not save core.dump files.\n"); } #endif LogonServer* logonObject = NULL; Macro_NewClass(logonObject,LogonServer); // Run! LogonServer::getSingleton().Run(argc, argv); Macro_DeleteClass(LogonServer::getSingletonPtr(),LogonServer); /** @brief 查看内存池使用情况 */ MemPools.GetAndPlayMemoryList(); MemPools.DisPlayMap(); MemPools.release(); getchar(); }
void CSubmoduleUpdateDlg::OnBnClickedShowWholeProject() { UpdateData(); m_regShowWholeProject = m_bWholeProject; SetDlgTitle(); Refresh(); }
BOOL CSubmoduleUpdateDlg::OnInitDialog() { CResizableStandAloneDialog::OnInitDialog(); CAppUtils::MarkWindowAsUnpinnable(m_hWnd); AdjustControlSize(IDC_CHECK_SUBMODULE_INIT); AdjustControlSize(IDC_CHECK_SUBMODULE_RECURSIVE); AdjustControlSize(IDC_CHECK_SUBMODULE_NOFETCH); AdjustControlSize(IDC_CHECK_SUBMODULE_MERGE); AdjustControlSize(IDC_CHECK_SUBMODULE_REBASE); AddAnchor(IDOK, BOTTOM_RIGHT); AddAnchor(IDCANCEL, BOTTOM_RIGHT); AddAnchor(IDHELP, BOTTOM_RIGHT); AddAnchor((UINT)IDC_STATIC, TOP_LEFT); AddAnchor(IDC_LIST_PATH, TOP_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_SELECTALL, BOTTOM_LEFT); AddAnchor(IDC_WHOLE_PROJECT, BOTTOM_LEFT); AddAnchor(IDC_GROUP_INFO, BOTTOM_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_CHECK_SUBMODULE_INIT, BOTTOM_LEFT); AddAnchor(IDC_CHECK_SUBMODULE_RECURSIVE, BOTTOM_LEFT); AddAnchor(IDC_FORCE, BOTTOM_LEFT); AddAnchor(IDC_CHECK_SUBMODULE_REMOTE, BOTTOM_LEFT); AddAnchor(IDC_CHECK_SUBMODULE_NOFETCH, BOTTOM_RIGHT); AddAnchor(IDC_CHECK_SUBMODULE_MERGE, BOTTOM_RIGHT); AddAnchor(IDC_CHECK_SUBMODULE_REBASE, BOTTOM_RIGHT); CString str(g_Git.m_CurrentDir); str.Replace(L':', L'_'); m_regShowWholeProject = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\ShowWholeProject\\" + str, FALSE); m_bWholeProject = m_regShowWholeProject; m_regInit = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\init", TRUE); m_bInit = m_regInit; m_regRecursive = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\recursive", FALSE); m_bRecursive = m_regRecursive; m_regForce = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\force", FALSE); m_bForce = m_regForce; m_regRemote = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\remote", FALSE); m_bRemote = m_regRemote; m_regNoFetch = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\nofetch", FALSE); m_bNoFetch = m_regNoFetch; m_regMerge = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\merge", FALSE); m_bMerge = m_regMerge; m_regRebase = CRegDWORD(L"Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\" + str + L"\\rebase", FALSE); m_bRebase = m_regRebase; DialogEnableWindow(IDC_WHOLE_PROJECT, !(m_PathFilterList.empty() || (m_PathFilterList.size() == 1 && m_PathFilterList[0].IsEmpty()))); SetDlgTitle(); EnableSaveRestore(L"SubmoduleUpdateDlg"); Refresh(); UpdateData(FALSE); return TRUE; }
BOOL CChangedDlg::OnInitDialog() { CResizableStandAloneDialog::OnInitDialog(); m_tooltips.Create(this); m_regAddBeforeCommit = CRegDWORD(_T("Software\\TortoiseGit\\AddBeforeCommit"), TRUE); m_bShowUnversioned = m_regAddBeforeCommit; CString regPath(g_Git.m_CurrentDir); regPath.Replace(_T(":"), _T("_")); m_regShowWholeProject = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\ShowWholeProject\\") + regPath, FALSE); m_bWholeProject = m_regShowWholeProject; SetDlgTitle(); UpdateData(FALSE); m_FileListCtrl.Init(GITSLC_COLEXT | GITSLC_COLSTATUS | GITSLC_COLADD| GITSLC_COLDEL | GITSLC_COLMODIFICATIONDATE, _T("ChangedDlg"), (GITSLC_POPALL ^ (GITSLC_POPSAVEAS|GITSLC_POPRESTORE)), false); m_FileListCtrl.SetCancelBool(&m_bCanceled); m_FileListCtrl.SetBackgroundImage(IDI_CFM_BKG); m_FileListCtrl.SetEmptyString(IDS_REPOSTATUS_EMPTYFILELIST); AdjustControlSize(IDC_SHOWUNVERSIONED); AdjustControlSize(IDC_SHOWUNMODIFIED); AdjustControlSize(IDC_SHOWLOCALCHANGESIGNORED); AdjustControlSize(IDC_SHOWIGNORED); AdjustControlSize(IDC_WHOLE_PROJECT); AddAnchor(IDC_CHANGEDLIST, TOP_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_SUMMARYTEXT, BOTTOM_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_SHOWUNVERSIONED, BOTTOM_LEFT); AddAnchor(IDC_SHOWUNMODIFIED, BOTTOM_LEFT); AddAnchor(IDC_SHOWLOCALCHANGESIGNORED, BOTTOM_LEFT); AddAnchor(IDC_SHOWIGNORED, BOTTOM_LEFT); AddAnchor(IDC_WHOLE_PROJECT, BOTTOM_LEFT); AddAnchor(IDC_INFOLABEL, BOTTOM_RIGHT); AddAnchor(IDC_BUTTON_STASH, BOTTOM_RIGHT); AddAnchor(IDC_BUTTON_UNIFIEDDIFF, BOTTOM_RIGHT); AddAnchor(IDC_COMMIT, BOTTOM_RIGHT); AddAnchor(IDC_REFRESH, BOTTOM_RIGHT); AddAnchor(IDOK, BOTTOM_RIGHT); // SetPromptParentWindow(m_hWnd); if (hWndExplorer) CenterWindow(CWnd::FromHandle(hWndExplorer)); EnableSaveRestore(_T("ChangedDlg")); m_bRemote = !!(DWORD)CRegDWORD(_T("Software\\TortoiseGit\\CheckRepo"), FALSE); // first start a thread to obtain the status without // blocking the dialog if (AfxBeginThread(ChangedStatusThreadEntry, this)==NULL) { CMessageBox::Show(NULL, IDS_ERR_THREADSTARTFAILED, IDS_APPNAME, MB_OK | MB_ICONERROR); } return TRUE; }
BOOL CExportDlg::OnInitDialog() { CHorizontalResizableStandAloneDialog::OnInitDialog(); CAppUtils::MarkWindowAsUnpinnable(m_hWnd); if (g_Git.m_CurrentDir == m_orgPath.GetWinPathString()) { GetDlgItem(IDC_WHOLE_PROJECT)->EnableWindow(FALSE); ((CButton *)GetDlgItem(IDC_WHOLE_PROJECT))->SetCheck(TRUE); } AddAnchor(IDC_REPOGROUP, TOP_LEFT, TOP_RIGHT); AddAnchor(IDC_EXPORTFILE_LABEL, TOP_LEFT); AddAnchor(IDC_EXPORTFILE_BROWSE, TOP_RIGHT); AddAnchor(IDC_EXPORTFILE, TOP_LEFT, TOP_RIGHT); AddAnchor(IDOK, BOTTOM_RIGHT); AddAnchor(IDCANCEL, BOTTOM_RIGHT); AddAnchor(IDHELP, BOTTOM_RIGHT); AdjustControlSize(IDC_RADIO_BRANCH); AdjustControlSize(IDC_RADIO_TAGS); AdjustControlSize(IDC_RADIO_VERSION); SetDlgTitle(); CHOOSE_VERSION_ADDANCHOR; this->AddOthersToAnchor(); InitChooseVersion(); if (m_initialRefName.IsEmpty() || m_initialRefName == _T("HEAD")) { SetDefaultChoose(IDC_RADIO_HEAD); } else if (m_initialRefName.Left(10) == _T("refs/tags/")) SetDefaultChoose(IDC_RADIO_TAGS); CWnd* pHead = GetDlgItem(IDC_RADIO_HEAD); CString headText; pHead->GetWindowText(headText); pHead->SetWindowText(headText + " (" + g_Git.GetCurrentBranch() + ")"); AdjustControlSize(IDC_RADIO_HEAD); m_tooltips.AddTool(IDC_EXPORTFILE, IDS_EXPORTFILE_TT); SHAutoComplete(GetDlgItem(IDC_EXPORTFILE)->m_hWnd, SHACF_FILESYSTEM); if ((m_pParentWnd==NULL)&&(hWndExplorer)) CenterWindow(CWnd::FromHandle(hWndExplorer)); EnableSaveRestore(_T("ExportDlg")); return TRUE; }
UINT CChangedDlg::ChangedStatusThread() { InterlockedExchange(&m_bBlock, TRUE); g_Git.RefreshGitIndex(); m_bCanceled = false; SetDlgItemText(IDOK, CString(MAKEINTRESOURCE(IDS_MSGBOX_CANCEL))); DialogEnableWindow(IDC_REFRESH, FALSE); DialogEnableWindow(IDC_SHOWUNVERSIONED, FALSE); DialogEnableWindow(IDC_SHOWUNMODIFIED, FALSE); DialogEnableWindow(IDC_SHOWIGNORED, FALSE); DialogEnableWindow(IDC_SHOWLOCALCHANGESIGNORED, FALSE); CString temp; m_FileListCtrl.Clear(); if (!m_FileListCtrl.GetStatus(m_bWholeProject ? nullptr : &m_pathList, m_bRemote, m_bShowIgnored != FALSE, m_bShowUnversioned != FALSE, m_bShowLocalChangesIgnored != FALSE)) { if (!m_FileListCtrl.GetLastErrorMessage().IsEmpty()) m_FileListCtrl.SetEmptyString(m_FileListCtrl.GetLastErrorMessage()); } unsigned int dwShow = GITSLC_SHOWVERSIONEDBUTNORMALANDEXTERNALS | GITSLC_SHOWLOCKS | GITSLC_SHOWSWITCHED | GITSLC_SHOWINCHANGELIST; dwShow |= m_bShowUnversioned ? GITSLC_SHOWUNVERSIONED : 0; dwShow |= m_iShowUnmodified ? GITSLC_SHOWNORMAL : 0; dwShow |= m_bShowIgnored ? GITSLC_SHOWIGNORED : 0; dwShow |= m_bShowLocalChangesIgnored ? GITSLC_SHOWASSUMEVALID | GITSLC_SHOWSKIPWORKTREE : 0; m_FileListCtrl.Show(dwShow); UpdateStatistics(); SetDlgTitle(); bool bIsDirectory = false; if (m_pathList.GetCount() == 1) bIsDirectory = m_pathList[0].IsDirectory() || m_pathList[0].IsEmpty(); // if it is empty it is g_Git.m_CurrentDir which is a directory SetDlgItemText(IDOK, CString(MAKEINTRESOURCE(IDS_MSGBOX_OK))); DialogEnableWindow(IDC_REFRESH, TRUE); DialogEnableWindow(IDC_SHOWUNVERSIONED, bIsDirectory); //DialogEnableWindow(IDC_SHOWUNMODIFIED, bIsDirectory); DialogEnableWindow(IDC_SHOWIGNORED, bIsDirectory); DialogEnableWindow(IDC_SHOWLOCALCHANGESIGNORED, TRUE); InterlockedExchange(&m_bBlock, FALSE); // revert the remote flag back to the default m_bRemote = !!(DWORD)CRegDWORD(_T("Software\\TortoiseGit\\CheckRepo"), FALSE); RefreshCursor(); return 0; }
BOOL CCleanTypeDlg::OnInitDialog() { CStateStandAloneDialog::OnInitDialog(); CAppUtils::MarkWindowAsUnpinnable(m_hWnd); AdjustControlSize(IDC_RADIO_CLEAN_ALL); AdjustControlSize(IDC_RADIO_CLEAN_NO); AdjustControlSize(IDC_RADIO_CLEAN_IGNORE); AdjustControlSize(IDC_CHECK_DIR); AdjustControlSize(IDC_CHECK_NORECYCLEBIN); AdjustControlSize(IDC_CHECK_DRYRUN); AdjustControlSize(IDC_CHECKSUBMODULES); EnableSaveRestore(_T("CleanTypeDlg")); SetDlgTitle(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
BOOL CSubmoduleUpdateDlg::OnInitDialog() { CStandAloneDialog::OnInitDialog(); CAppUtils::MarkWindowAsUnpinnable(m_hWnd); CString str(g_Git.m_CurrentDir); str.Replace(_T(":"), _T("_")); m_regShowWholeProject = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\ShowWholeProject\\") + str, FALSE); m_bWholeProject = m_regShowWholeProject; m_regInit = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\init"), TRUE); m_bInit = m_regInit; m_regRecursive = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\recursive"), FALSE); m_bRecursive = m_regRecursive; m_regForce = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\force"), FALSE); m_bForce = m_regForce; m_regRemote = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\remote"), FALSE); m_bRemote = m_regRemote; m_regNoFetch = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\nofetch"), FALSE); m_bNoFetch = m_regNoFetch; m_regMerge = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\merge"), FALSE); m_bMerge = m_regMerge; m_regRebase = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\SubmoduleUpdate\\") + str + _T("\\rebase"), FALSE); m_bRebase = m_regRebase; DialogEnableWindow(IDC_WHOLE_PROJECT, !(m_PathFilterList.empty() || (m_PathFilterList.size() == 1 && m_PathFilterList[0].IsEmpty()))); SetDlgTitle(); AdjustControlSize(IDC_CHECK_SUBMODULE_INIT); AdjustControlSize(IDC_CHECK_SUBMODULE_RECURSIVE); AdjustControlSize(IDC_CHECK_SUBMODULE_NOFETCH); AdjustControlSize(IDC_CHECK_SUBMODULE_MERGE); AdjustControlSize(IDC_CHECK_SUBMODULE_REBASE); Refresh(); UpdateData(FALSE); return TRUE; }
void CExportDlg::OnBnClickedWholeProject() { UpdateData(TRUE); SetDlgTitle(); }