CBrowseRefsDlg::CBrowseRefsDlg(CString cmdPath, CWnd* pParent /*=NULL*/) : CResizableStandAloneDialog(CBrowseRefsDlg::IDD, pParent), m_cmdPath(cmdPath), m_currSortCol(0), m_currSortDesc(false), m_initialRef(L"HEAD"), m_pickRef_Kind(gPickRef_All), m_pListCtrlRoot(NULL), m_bHasWC(true), m_SelectedFilters(LOGFILTER_ALL), m_ColumnManager(&m_ListRefLeafs), m_bPickOne(false), m_bIncludeNestedRefs(TRUE), m_bPickedRefSet(false) { // get short/long datetime setting from registry DWORD RegUseShortDateFormat = CRegDWORD(_T("Software\\TortoiseGit\\LogDateFormat"), TRUE); if (RegUseShortDateFormat) m_DateFormat = DATE_SHORTDATE; else m_DateFormat = DATE_LONGDATE; // get relative time display setting from registry DWORD regRelativeTimes = CRegDWORD(_T("Software\\TortoiseGit\\RelativeTimes"), FALSE); m_bRelativeTimes = (regRelativeTimes != 0); m_regIncludeNestedRefs = CRegDWORD(_T("Software\\TortoiseGit\\RefBrowserIncludeNestedRefs"), TRUE); }
CCloneDlg::CCloneDlg(CWnd* pParent /*=NULL*/) : CHorizontalResizableStandAloneDialog(CCloneDlg::IDD, pParent) { m_bRecursive = FALSE; m_bBare = FALSE; m_bBranch = FALSE; m_bOrigin = FALSE; m_bNoCheckout = FALSE; m_bSVN = FALSE; m_bSVNTrunk = FALSE; m_bSVNTags = FALSE; m_bSVNBranch = FALSE; m_bSVNFrom = FALSE; m_bSVNUserName = FALSE; m_bExactPath = FALSE; m_strSVNTrunk = _T("trunk"); m_strSVNTags = _T("tags"); m_strSVNBranchs = _T("branches"); m_regBrowseUrl = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\CloneBrowse"),0); m_regCloneDir = CRegString(_T("Software\\TortoiseGit\\TortoiseProc\\CloneDir")); m_regUseSSHKey = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\CloneUseSSHKey"), TRUE); m_nSVNFrom = 0; m_bAutoloadPuttyKeyFile = m_regUseSSHKey && CAppUtils::IsSSHPutty(); m_nDepth = 1; m_bDepth = false; m_bSaving = false; }
CGitIndexList::CGitIndexList() { this->m_LastModifyTime = 0; m_critRepoSec.Init(); m_bCheckContent = !!(CRegDWORD(_T("Software\\TortoiseGit\\TGitCacheCheckContent"), TRUE) == TRUE); m_iMaxCheckSize = (__int64)CRegDWORD(_T("Software\\TortoiseGit\\TGitCacheCheckContentMaxSize"), 10 * 1024) * 1024; // stored in KiB }
void CSetDialogs3::LoadDataImpl(git_config * config) { { CString value; if (GetConfigValue(config, PROJECTPROPNAME_PROJECTLANGUAGE, value) == GIT_ENOTFOUND && m_iConfigSource != 0) m_langCombo.SetCurSel(0); else if (value == _T("-1")) m_langCombo.SetCurSel(2); else if (!value.IsEmpty()) { LPTSTR strEnd; long longValue = _tcstol(value, &strEnd, 0); if (longValue == 0) { if (m_iConfigSource == 0) SelectLanguage(m_langCombo, CRegDWORD(_T("Software\\TortoiseGit\\LanguageID"), 1033)); else m_langCombo.SetCurSel(1); } else SelectLanguage(m_langCombo, longValue); } else if (m_iConfigSource == 0) SelectLanguage(m_langCombo, CRegDWORD(_T("Software\\TortoiseGit\\LanguageID"), 1033)); else m_langCombo.SetCurSel(1); } { m_LogMinSize = _T(""); CString value; m_bInheritLogMinSize = (GetConfigValue(config, PROJECTPROPNAME_LOGMINSIZE, value) == GIT_ENOTFOUND); if (!value.IsEmpty() || m_iConfigSource == 0) { int nMinLogSize = _ttoi(value); m_LogMinSize.Format(L"%d", nMinLogSize); m_bInheritLogMinSize = FALSE; } } { m_Border = _T(""); CString value; m_bInheritBorder = (GetConfigValue(config, PROJECTPROPNAME_LOGWIDTHLINE, value) == GIT_ENOTFOUND); if (!value.IsEmpty() || m_iConfigSource == 0) { int nLogWidthMarker = _ttoi(value); m_Border.Format(L"%d", nLogWidthMarker); m_bInheritBorder = FALSE; } } GetBoolConfigValueComboBox(config, PROJECTPROPNAME_WARNNOSIGNEDOFFBY, m_cWarnNoSignedOffBy); m_bInheritIconFile = (GetConfigValue(config, PROJECTPROPNAME_ICON, m_iconFile) == GIT_ENOTFOUND); m_bNeedSave = false; SetModified(FALSE); UpdateData(FALSE); }
bool CopyCommand::Execute() { bool bRet = false; CString msg; if (parser.HasKey(_T("logmsg"))) { msg = parser.GetVal(_T("logmsg")); } if (parser.HasKey(_T("logmsgfile"))) { CString logmsgfile = parser.GetVal(_T("logmsgfile")); CStringUtils::ReadStringFromTextFile(logmsgfile, msg); } BOOL repeat = FALSE; CCopyDlg dlg; dlg.m_sLogMessage = msg; dlg.m_path = cmdLinePath; CString url = parser.GetVal(_T("url")); CString logmessage; SVNRev copyRev = SVNRev::REV_HEAD; BOOL doSwitch = FALSE; do { repeat = FALSE; dlg.m_URL = url; dlg.m_sLogMessage = logmessage; dlg.m_CopyRev = copyRev; dlg.m_bDoSwitch = doSwitch; if (dlg.DoModal() == IDOK) { theApp.m_pMainWnd = NULL; TRACE(_T("copy %s to %s\n"), (LPCTSTR)cmdLinePath.GetWinPathString(), (LPCTSTR)dlg.m_URL); CSVNProgressDlg progDlg; progDlg.SetCommand(CSVNProgressDlg::SVNProgress_Copy); if (parser.HasVal(_T("closeonend"))) progDlg.SetAutoClose(parser.GetLongVal(_T("closeonend"))); progDlg.SetOptions(dlg.m_bDoSwitch ? ProgOptSwitchAfterCopy : ProgOptNone); progDlg.SetPathList(pathList); progDlg.SetUrl(dlg.m_URL); progDlg.SetCommitMessage(dlg.m_sLogMessage); progDlg.SetRevision(dlg.m_CopyRev); url = dlg.m_URL; logmessage = dlg.m_sLogMessage; copyRev = dlg.m_CopyRev; doSwitch = dlg.m_bDoSwitch; progDlg.DoModal(); CRegDWORD err = CRegDWORD(_T("Software\\TortoiseGit\\ErrorOccurred"), FALSE); err = (DWORD)progDlg.DidErrorsOccur(); bRet = !progDlg.DidErrorsOccur(); repeat = progDlg.DidErrorsOccur(); CRegDWORD bFailRepeat = CRegDWORD(_T("Software\\TortoiseGit\\CommitReopen"), FALSE); if (DWORD(bFailRepeat) == FALSE) repeat = false; // do not repeat if the user chose not to in the settings. } } while(repeat); return bRet; }
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; }
static CString GetProgramDataGitConfig() { if (!((CRegDWORD(L"Software\\TortoiseGit\\CygwinHack", FALSE) == TRUE) || (CRegDWORD(L"Software\\TortoiseGit\\Msys2Hack", FALSE) == TRUE))) { CString programdataConfig; if (SHGetFolderPath(nullptr, CSIDL_COMMON_APPDATA, NULL, SHGFP_TYPE_CURRENT, CStrBuf(programdataConfig, MAX_PATH)) == S_OK && programdataConfig.GetLength() < MAX_PATH - 11) /* 11 = len("\\Git\\config") */ return programdataConfig + L"\\Git\\config"; } return L""; }
CSetDialogs::CSetDialogs() : ISettingsPropPage(CSetDialogs::IDD) , m_sDefaultLogs(L"") , m_bShortDateFormat(FALSE) , m_dwFontSize(0) , m_sFontName(L"") , m_bUseWCURL(FALSE) , m_sDefaultCheckoutPath(L"") , m_sDefaultCheckoutUrl(L"") , m_bDiffByDoubleClick(FALSE) , m_bUseSystemLocaleForDates(FALSE) , m_bUseRecycleBin(TRUE) , m_bAutoCloseLocal(FALSE) , m_dwAutoClose(0) { m_regAutoClose = CRegDWORD(L"Software\\TortoiseSVN\\AutoClose"); m_regAutoCloseLocal = CRegDWORD(L"Software\\TortoiseSVN\\AutoCloseLocal"); m_regDefaultLogs = CRegDWORD(L"Software\\TortoiseSVN\\NumberOfLogs", 100); m_regShortDateFormat = CRegDWORD(L"Software\\TortoiseSVN\\LogDateFormat", FALSE); m_regUseSystemLocaleForDates = CRegDWORD(L"Software\\TortoiseSVN\\UseSystemLocaleForDates", TRUE); m_regFontName = CRegString(L"Software\\TortoiseSVN\\LogFontName", L"Courier New"); m_regFontSize = CRegDWORD(L"Software\\TortoiseSVN\\LogFontSize", 8); m_regUseWCURL = CRegDWORD(L"Software\\TortoiseSVN\\MergeWCURL", FALSE); m_regDefaultCheckoutPath = CRegString(L"Software\\TortoiseSVN\\DefaultCheckoutPath"); m_regDefaultCheckoutUrl = CRegString(L"Software\\TortoiseSVN\\DefaultCheckoutUrl"); m_regDiffByDoubleClick = CRegDWORD(L"Software\\TortoiseSVN\\DiffByDoubleClickInLog", FALSE); m_regUseRecycleBin = CRegDWORD(L"Software\\TortoiseSVN\\RevertWithRecycleBin", TRUE); }
CSetMisc::CSetMisc() : ISettingsPropPage(CSetMisc::IDD) , m_bUnversionedRecurse(FALSE) , m_bAutocompletion(FALSE) , m_dwAutocompletionTimeout(0) , m_bSpell(TRUE) , m_bCheckRepo(FALSE) , m_dwMaxHistory(25) , m_bCommitReopen(FALSE) , m_bShowLockDlg(FALSE) , m_bAutoSelect(TRUE) { m_regUnversionedRecurse = CRegDWORD(_T("Software\\TortoiseGit\\UnversionedRecurse"), TRUE); m_bUnversionedRecurse = (DWORD)m_regUnversionedRecurse; m_regAutocompletion = CRegDWORD(_T("Software\\TortoiseGit\\Autocompletion"), TRUE); m_bAutocompletion = (DWORD)m_regAutocompletion; m_regAutocompletionTimeout = CRegDWORD(_T("Software\\TortoiseGit\\AutocompleteParseTimeout"), 5); m_dwAutocompletionTimeout = (DWORD)m_regAutocompletionTimeout; m_regSpell = CRegDWORD(_T("Software\\TortoiseGit\\Spellchecker"), FALSE); m_bSpell = (DWORD)m_regSpell; m_regCheckRepo = CRegDWORD(_T("Software\\TortoiseGit\\CheckRepo"), FALSE); m_bCheckRepo = (DWORD)m_regCheckRepo; m_regMaxHistory = CRegDWORD(_T("Software\\TortoiseGit\\MaxHistoryItems"), 25); m_dwMaxHistory = (DWORD)m_regMaxHistory; m_regCommitReopen = CRegDWORD(_T("Software\\TortoiseGit\\CommitReopen"), FALSE); m_bCommitReopen = (BOOL)(DWORD)m_regCommitReopen; m_regShowLockDlg = CRegDWORD(_T("Software\\TortoiseGit\\ShowLockDlg"), TRUE); m_bShowLockDlg = (BOOL)(DWORD)m_regShowLockDlg; m_regAutoSelect = CRegDWORD(_T("Software\\TortoiseGit\\SelectFilesForCommit"), TRUE); m_bAutoSelect = (BOOL)(DWORD)m_regAutoSelect; }
CCleanTypeDlg::CCleanTypeDlg(CWnd* pParent /*=NULL*/) : CStandAloneDialog(CCleanTypeDlg::IDD, pParent) { CString WorkingDir=g_Git.m_CurrentDir; WorkingDir.Replace(_T(':'),_T('_')); this->m_regDir = CRegDWORD( CString(_T("Software\\TortoiseGit\\History\\CleanDir\\"))+WorkingDir, 1); this->m_regType = CRegDWORD( CString(_T("Software\\TortoiseGit\\History\\CleanType\\"))+WorkingDir, 0); this->m_bDir = this->m_regDir; this->m_CleanType = this->m_regType; }
CSetMainPage::CSetMainPage() : ISettingsPropPage(CSetMainPage::IDD) , m_bLastCommitTime(FALSE) , m_bUseAero(TRUE) , m_dwLanguage(0) { m_regLanguage = CRegDWORD(L"Software\\TortoiseSVN\\LanguageID", 1033); CString temp(SVN_CONFIG_DEFAULT_GLOBAL_IGNORES); m_regExtensions = CRegString(L"Software\\Tigris.org\\Subversion\\Config\\miscellany\\global-ignores", temp); m_regLastCommitTime = CRegString(L"Software\\Tigris.org\\Subversion\\Config\\miscellany\\use-commit-times", L""); m_regUseAero = CRegDWORD(L"Software\\TortoiseSVN\\EnableDWMFrame", TRUE); }
CSettingsTBlame::CSettingsTBlame() : ISettingsPropPage(CSettingsTBlame::IDD) , m_dwFontSize(0) , m_sFontName(_T("")) , m_dwTabSize(4) { m_regNewLinesColor = CRegDWORD(_T("Software\\TortoiseSVN\\BlameNewColor"), RGB(255, 230, 230)); m_regOldLinesColor = CRegDWORD(_T("Software\\TortoiseSVN\\BlameOldColor"), RGB(230, 230, 255)); m_regFontName = CRegString(_T("Software\\TortoiseSVN\\BlameFontName"), _T("Courier New")); m_regFontSize = CRegDWORD(_T("Software\\TortoiseSVN\\BlameFontSize"), 10); m_regTabSize = CRegDWORD(_T("Software\\TortoiseSVN\\BlameTabSize"), 4); }
CSVNStatusListCtrl::CSorter::CSorter ( ColumnManager* columnManager , CSVNStatusListCtrl * listControl , int sortedColumn , bool ascending) : columnManager (columnManager) , control(listControl) , sortedColumn (sortedColumn) , ascending (ascending) { s_bSortLogical = !CRegDWORD(L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoStrCmpLogical", 0, false, HKEY_CURRENT_USER); if (s_bSortLogical) s_bSortLogical = !CRegDWORD(L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoStrCmpLogical", 0, false, HKEY_LOCAL_MACHINE); }
BOOL CChangedDlg::OnInitDialog() { CResizableStandAloneDialog::OnInitDialog(); GetWindowText(m_sTitle); m_tooltips.Create(this); m_regAddBeforeCommit = CRegDWORD(_T("Software\\TortoiseGit\\AddBeforeCommit"), TRUE); m_bShowUnversioned = m_regAddBeforeCommit; UpdateData(FALSE); m_FileListCtrl.Init(SVNSLC_COLEXT | SVNSLC_COLSTATUS, _T("ChangedDlg"), SVNSLC_POPALL, 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_SHOWIGNORED); // AdjustControlSize(IDC_SHOWEXTERNALS); // AdjustControlSize(IDC_SHOWUSERPROPS); 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_SHOWIGNORED, BOTTOM_LEFT); // AddAnchor(IDC_SHOWEXTERNALS, BOTTOM_LEFT); // AddAnchor(IDC_SHOWUSERPROPS, BOTTOM_LEFT); AddAnchor(IDC_INFOLABEL, BOTTOM_RIGHT); AddAnchor(IDC_REFRESH, BOTTOM_RIGHT); AddAnchor(IDC_CHECKREPO, 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; }
CGitRefCompareList::CGitRefCompareList() : CHintListCtrl() , colRef(0) , colChange(0) , colOldHash(0) , colOldMessage(0) , colNewHash(0) , colNewMessage(0) { m_bSortLogical = !CRegDWORD(L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoStrCmpLogical", 0, false, HKEY_CURRENT_USER); if (m_bSortLogical) m_bSortLogical = !CRegDWORD(L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoStrCmpLogical", 0, false, HKEY_LOCAL_MACHINE); m_bHideUnchanged = CRegDWORD(_T("Software\\TortoiseGit\\RefCompareHideUnchanged"), FALSE); }
CSubmoduleUpdateDlg::CSubmoduleUpdateDlg(CWnd* pParent /*=NULL*/) : CStandAloneDialog(CSubmoduleUpdateDlg::IDD, pParent) , m_bInit(TRUE) , m_bRecursive(FALSE) , m_bForce(FALSE) , m_bNoFetch(FALSE) , m_bMerge(FALSE) , m_bRebase(FALSE) , m_bRemote(FALSE) , m_bWholeProject(FALSE) { s_bSortLogical = !CRegDWORD(L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoStrCmpLogical", 0, false, HKEY_CURRENT_USER); if (s_bSortLogical) s_bSortLogical = !CRegDWORD(L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer\\NoStrCmpLogical", 0, false, HKEY_LOCAL_MACHINE); }
CCleanTypeDlg::CCleanTypeDlg(CWnd* pParent /*=nullptr*/) : CStateStandAloneDialog(CCleanTypeDlg::IDD, pParent) { CString WorkingDir=g_Git.m_CurrentDir; WorkingDir.Replace(_T(':'),_T('_')); this->m_regDir = CRegDWORD( CString(_T("Software\\TortoiseGit\\History\\CleanDir\\"))+WorkingDir, 1); this->m_regType = CRegDWORD( CString(_T("Software\\TortoiseGit\\History\\CleanType\\"))+WorkingDir, 0); this->m_bDir = this->m_regDir; this->m_CleanType = this->m_regType; m_bNoRecycleBin = !CRegDWORD(_T("Software\\TortoiseGit\\RevertWithRecycleBin"), TRUE); m_bDryRun = FALSE; m_bSubmodules = FALSE; }
CSetMainPage::CSetMainPage() : ISettingsPropPage(CSetMainPage::IDD) , m_bCheckNewer(TRUE) , m_dwLanguage(0) { m_regLanguage = CRegDWORD(L"Software\\TortoiseGit\\LanguageID", 1033); m_regMsysGitPath = CRegString(REG_MSYSGIT_PATH); m_regMsysGitExtranPath =CRegString(REG_MSYSGIT_EXTRA_PATH); m_sMsysGitPath = m_regMsysGitPath; m_sMsysGitExtranPath = m_regMsysGitExtranPath; m_regCheckNewer = CRegDWORD(L"Software\\TortoiseGit\\VersionCheck", TRUE); }
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; }
CGitIndexList::CGitIndexList() { this->m_LastModifyTime = 0; m_critRepoSec.Init(); repository = NULL; m_bCheckContent = !!(CRegDWORD(_T("Software\\TortoiseGit\\TGitCacheCheckContent"), TRUE) == TRUE); }
CProgressDlg::CProgressDlg(CWnd* pParent /*=nullptr*/) : CResizableStandAloneDialog(CProgressDlg::IDD, pParent) , m_bShowCommand(true) , m_bAbort(false) , m_bDone(false) , m_startTick(GetTickCount64()) , m_BufStart(0) , m_Git(&g_Git) , m_hAccel(nullptr) { m_pThread = nullptr; m_bBufferAll=false; m_GitStatus = (DWORD)-1; int autoClose = CRegDWORD(_T("Software\\TortoiseGit\\AutoCloseGitProgress"), 0); CCmdLineParser parser(AfxGetApp()->m_lpCmdLine); if (parser.HasKey(_T("closeonend"))) autoClose = parser.GetLongVal(_T("closeonend")); switch (autoClose) { case 1: m_AutoClose = AUTOCLOSE_IF_NO_OPTIONS; break; case 2: m_AutoClose = AUTOCLOSE_IF_NO_ERRORS; break; default: m_AutoClose = AUTOCLOSE_NO; break; } }
CGitIndexList::CGitIndexList() : m_bHasConflicts(FALSE) { this->m_LastModifyTime = 0; m_critRepoSec.Init(); m_iMaxCheckSize = (__int64)CRegDWORD(_T("Software\\TortoiseGit\\TGitCacheCheckContentMaxSize"), 10 * 1024) * 1024; // stored in KiB }
void CRepositoryBrowser::SaveDividerPosition() { RECT rc; GetDlgItem(IDC_REPOTREE)->GetClientRect(&rc); CRegDWORD xPos = CRegDWORD(_T("Software\\TortoiseGit\\TortoiseProc\\ResizableState\\RepobrowserDivider")); xPos = rc.right - rc.left; }
CSetSavedDataPage::CSetSavedDataPage() : ISettingsPropPage(CSetSavedDataPage::IDD) , m_maxLines(0) { m_regMaxLines = CRegDWORD(_T("Software\\TortoiseGit\\MaxLinesInLogfile"), 4000); m_maxLines = m_regMaxLines; }
BOOL CPromptDlg::OnInitDialog() { CStandAloneDialog::OnInitDialog(); ExtendFrameIntoClientArea(IDC_PASSEDIT); m_aeroControls.SubclassControl(this, IDC_SAVECHECK); m_aeroControls.SubclassOkCancel(this); BOOL bAllowAuthSave = (BOOL)(DWORD)CRegDWORD(L"Software\\TortoiseSVN\\AllowAuthSave", TRUE); DialogEnableWindow(IDC_SAVECHECK, bAllowAuthSave); if (bAllowAuthSave) CheckDlgButton(IDC_SAVECHECK, SVNConfig::Instance().ConfigGetBool(SVN_CONFIG_SECTION_AUTH, SVN_CONFIG_OPTION_STORE_PASSWORDS, true) ? BST_CHECKED : BST_UNCHECKED); if (m_hide) { m_pass.SetPasswordChar('*'); GetDlgItem(IDC_SAVECHECK)->ShowWindow(SW_SHOW); } else { m_pass.SetPasswordChar('\0'); GetDlgItem(IDC_SAVECHECK)->ShowWindow(SW_HIDE); } m_pass.SetFocus(); if ((m_hParentWnd==NULL)&&(GetExplorerHWND())) CenterWindow(CWnd::FromHandle(m_hParentWnd)); return FALSE; }
void CLogOrdering::OnOK() { if (m_cLogOrdering.GetCurSel() != CB_ERR) CRegDWORD(L"Software\\TortoiseGit\\LogOrderBy") = (DWORD)m_cLogOrdering.GetItemData(m_cLogOrdering.GetCurSel()); __super::OnOK(); }
void CProgressDlg::OnCancel() { CTraceToOutputDebugString::Instance()(_T(__FUNCTION__) _T(": User canceled\n")); m_bAbort = true; if(m_bDone) { CResizableStandAloneDialog::OnCancel(); return; } if( m_Git->m_CurrentGitPi.hProcess ) { DWORD dwConfirmKillProcess = CRegDWORD(_T("Software\\TortoiseGit\\ConfirmKillProcess")); if (dwConfirmKillProcess && CMessageBox::Show(m_hWnd, IDS_PROC_CONFIRMKILLPROCESS, IDS_APPNAME, MB_YESNO | MB_ICONQUESTION) != IDYES) return; if(::GenerateConsoleCtrlEvent(CTRL_C_EVENT,0)) { ::WaitForSingleObject(m_Git->m_CurrentGitPi.hProcess ,10000); } else { GetLastError(); } KillProcessTree(m_Git->m_CurrentGitPi.dwProcessId); } ::WaitForSingleObject(m_Git->m_CurrentGitPi.hProcess ,10000); CResizableStandAloneDialog::OnCancel(); }
CResizableStandAloneDialog::CResizableStandAloneDialog(UINT nIDTemplate, CWnd* pParentWnd /*= NULL*/) : CStandAloneDialogTmpl<CResizableDialog>(nIDTemplate, pParentWnd) , m_bVertical(false) , m_bHorizontal(false) , m_stickySize(CRegDWORD(L"Software\\TortoiseSVN\\DlgStickySize", 3)) { }
void CGitProgressList::ReportError(const CString& sError) { if (CRegDWORD(_T("Software\\TortoiseGit\\NoSounds"), FALSE) == FALSE) PlaySound((LPCTSTR)SND_ALIAS_SYSTEMEXCLAMATION, NULL, SND_ALIAS_ID | SND_ASYNC); ReportString(sError, CString(MAKEINTRESOURCE(IDS_ERR_ERROR)), m_Colors.GetColor(CColors::Conflict)); m_bErrorsOccurred = true; }
void CSyncDlg::OnCancel() { m_bAbort = true; if (m_bDone) { CResizableStandAloneDialog::OnCancel(); return; } if (g_Git.m_CurrentGitPi.hProcess) { DWORD dwConfirmKillProcess = CRegDWORD(_T("Software\\TortoiseGit\\ConfirmKillProcess")); if (dwConfirmKillProcess && CMessageBox::Show(m_hWnd, IDS_PROC_CONFIRMKILLPROCESS, IDS_APPNAME, MB_YESNO | MB_ICONQUESTION) != IDYES) return; if (::GenerateConsoleCtrlEvent(CTRL_C_EVENT, 0)) { ::WaitForSingleObject(g_Git.m_CurrentGitPi.hProcess, 10000); } else { GetLastError(); } CProgressDlg::KillProcessTree(g_Git.m_CurrentGitPi.dwProcessId); } ::WaitForSingleObject(g_Git.m_CurrentGitPi.hProcess ,10000); m_tooltips.Pop(); CResizableStandAloneDialog::OnCancel(); }