OSDN Git Service

Add TortoiseProc
[tortoisegit/TortoiseGitJp.git] / TortoiseProc / Commands / SwitchCommand.cpp
1 // TortoiseSVN - a Windows shell extension for easy version control\r
2 \r
3 // Copyright (C) 2007-2008 - TortoiseSVN\r
4 \r
5 // This program is free software; you can redistribute it and/or\r
6 // modify it under the terms of the GNU General Public License\r
7 // as published by the Free Software Foundation; either version 2\r
8 // of the License, or (at your option) any later version.\r
9 \r
10 // This program is distributed in the hope that it will be useful,\r
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13 // GNU General Public License for more details.\r
14 \r
15 // You should have received a copy of the GNU General Public License\r
16 // along with this program; if not, write to the Free Software Foundation,\r
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\r
18 //\r
19 #include "StdAfx.h"\r
20 #include "SwitchCommand.h"\r
21 \r
22 #include "SwitchDlg.h"\r
23 #include "SVNProgressDlg.h"\r
24 #include "MessageBox.h"\r
25 \r
26 bool SwitchCommand::Execute()\r
27 {\r
28         CSwitchDlg dlg;\r
29         dlg.m_path = cmdLinePath.GetWinPathString();\r
30 \r
31         if (dlg.DoModal() == IDOK)\r
32         {\r
33                 CSVNProgressDlg progDlg;\r
34                 theApp.m_pMainWnd = &progDlg;\r
35                 progDlg.SetCommand(CSVNProgressDlg::SVNProgress_Switch);\r
36                 if (parser.HasVal(_T("closeonend")))\r
37                         progDlg.SetAutoClose(parser.GetLongVal(_T("closeonend")));\r
38                 progDlg.SetPathList(CTSVNPathList(cmdLinePath));\r
39                 progDlg.SetUrl(dlg.m_URL);\r
40                 progDlg.SetRevision(dlg.Revision);\r
41                 progDlg.DoModal();\r
42                 return !progDlg.DidErrorsOccur();\r
43         }\r
44         return false;\r
45 }\r