OSDN Git Service

Impliment commit command at log dialog when choose work copy
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / Commands / CommitCommand.cpp
index 301b1c6..f21ac38 100644 (file)
@@ -44,7 +44,7 @@ CString CommitCommand::LoadLogMessage()
 bool CommitCommand::Execute()\r
 {\r
        bool bRet = false;\r
 bool CommitCommand::Execute()\r
 {\r
        bool bRet = false;\r
-       bool bFailed = true;\r
+       \r
        CTGitPathList selectedList;\r
        if (parser.HasKey(_T("logmsg")) && (parser.HasKey(_T("logmsgfile"))))\r
        {\r
        CTGitPathList selectedList;\r
        if (parser.HasKey(_T("logmsg")) && (parser.HasKey(_T("logmsgfile"))))\r
        {\r
@@ -67,67 +67,12 @@ bool CommitCommand::Execute()
                }\r
        }\r
 #endif\r
                }\r
        }\r
 #endif\r
-               \r
-       while (bFailed)\r
-       {\r
-               bFailed = false;\r
-               CCommitDlg dlg;\r
-               if (parser.HasKey(_T("bugid")))\r
-               {\r
-                       dlg.m_sBugID = parser.GetVal(_T("bugid"));\r
-               }\r
-        \r
-        if (parser.HasKey(_T("wholeproject")))\r
-               {\r
-            dlg.m_bWholeProject = TRUE;\r
-               }\r
 \r
 \r
-               dlg.m_sLogMessage = sLogMsg;\r
-               dlg.m_pathList = pathList;\r
-               dlg.m_checkedPathList = selectedList;\r
-               dlg.m_bSelectFilesForCommit = bSelectFilesForCommit;\r
-               if (dlg.DoModal() == IDOK)\r
-               {\r
-                       if (dlg.m_pathList.GetCount()==0)\r
-                               return false;\r
-                       // if the user hasn't changed the list of selected items\r
-                       // we don't use that list. Because if we would use the list\r
-                       // of pre-checked items, the dialog would show different\r
-                       // checked items on the next startup: it would only try\r
-                       // to check the parent folder (which might not even show)\r
-                       // instead, we simply use an empty list and let the\r
-                       // default checking do its job.\r
-                       if (!dlg.m_pathList.IsEqual(pathList))\r
-                               selectedList = dlg.m_pathList;\r
-                       pathList = dlg.m_updatedPathList;\r
-                       sLogMsg = dlg.m_sLogMessage;\r
-                       bSelectFilesForCommit = true;\r
-\r
-                       if( dlg.m_bPushAfterCommit )\r
-                       {\r
-                               CAppUtils::Push();\r
-                       }\r
-//                     CGitProgressDlg progDlg;\r
-//                     progDlg.SetChangeList(dlg.m_sChangeList, !!dlg.m_bKeepChangeList);\r
-//                     if (parser.HasVal(_T("closeonend")))\r
-//                             progDlg.SetAutoClose(parser.GetLongVal(_T("closeonend")));\r
-//                     progDlg.SetCommand(CGitProgressDlg::GitProgress_Commit);\r
-//                     progDlg.SetOptions(dlg.m_bKeepLocks ? ProgOptKeeplocks : ProgOptNone);\r
-//                     progDlg.SetPathList(dlg.m_pathList);\r
-//                     progDlg.SetCommitMessage(dlg.m_sLogMessage);\r
-//                     progDlg.SetDepth(dlg.m_bRecursive ? Git_depth_infinity : svn_depth_empty);\r
-//                     progDlg.SetSelectedList(dlg.m_selectedPathList);\r
-//                     progDlg.SetItemCount(dlg.m_itemsCount);\r
-//                     progDlg.SetBugTraqProvider(dlg.m_BugTraqProvider);\r
-//                     progDlg.DoModal();\r
-//                     CRegDWORD err = CRegDWORD(_T("Software\\TortoiseGit\\ErrorOccurred"), FALSE);\r
-//                     err = (DWORD)progDlg.DidErrorsOccur();\r
-//                     bFailed = progDlg.DidErrorsOccur();\r
-//                     bRet = progDlg.DidErrorsOccur();\r
-//                     CRegDWORD bFailRepeat = CRegDWORD(_T("Software\\TortoiseGit\\CommitReopen"), FALSE);\r
-//                     if (DWORD(bFailRepeat)==0)\r
-//                             bFailed = false;                // do not repeat if the user chose not to in the settings.\r
-               }\r
-       }\r
-       return bRet;\r
+       return CAppUtils::Commit(       parser.GetVal(_T("bugid")),\r
+                                                               parser.HasKey(_T("wholeproject")),\r
+                                                               sLogMsg,\r
+                                                               pathList,\r
+                                                               selectedList,\r
+                                                               bSelectFilesForCommit);\r
+       \r
 }\r
 }\r