OSDN Git Service

Add color success and fail at ProgressDlg
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / RebaseDlg.h
index 9cfb567..19e818f 100644 (file)
@@ -8,6 +8,7 @@
 #include "HistoryCombo.h"\r
 #include "Balloon.h"\r
 #include "GitLogList.h"\r
+#include "MenuButton.h"\r
 // CRebaseDlg dialog\r
 #define IDC_REBASE_TAB 0x1000000\r
 \r
@@ -15,6 +16,8 @@
 #define REBASE_TAB_MESSAGE   1\r
 #define REBASE_TAB_LOG          2\r
 \r
+#define MSG_REBASE_UPDATE_UI   (WM_USER+151)\r
+\r
 class CRebaseDlg : public CResizableStandAloneDialog\r
 {\r
        DECLARE_DYNAMIC(CRebaseDlg)\r
@@ -34,6 +37,11 @@ public:
                REBASE_CONTINUE,\r
                REBASE_ABORT,\r
                REBASE_FINISH,\r
+               REBASE_CONFLICT,\r
+               REBASE_EDIT,\r
+               REBASE_SQUASH_EDIT,\r
+               REBASE_SQUASH_CONFLICT,\r
+               REBASE_DONE,\r
        };\r
 \r
 protected:\r
@@ -41,6 +49,7 @@ protected:
        virtual BOOL OnInitDialog();\r
        DECLARE_MESSAGE_MAP()\r
        virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam);\r
+       LRESULT OnRebaseUpdateUI(WPARAM wParam, LPARAM lParam);\r
        void DoSize(int delta);\r
        void AddRebaseAnchor();\r
        void RemoveAnchor();\r
@@ -51,6 +60,7 @@ protected:
        void LoadBranchInfo();\r
        void FetchLogList();\r
        void SetAllRebaseAction(int action);\r
+       void OnCancel();\r
 \r
        CRect                           m_DlgOrigRect;\r
        CRect                           m_CommitListOrigRect;\r
@@ -61,6 +71,28 @@ protected:
        void SetControlEnable();\r
        void UpdateProgress();\r
        void UpdateCurrentStatus();\r
+       void ListConflictFile();\r
+       int  DoRebase();\r
+       volatile LONG           m_bThreadRunning;\r
+       int  RebaseThread();\r
+       static UINT RebaseThreadEntry(LPVOID pVoid){return ((CRebaseDlg *)pVoid)->RebaseThread();};\r
+       BOOL IsEnd();\r
+\r
+       BOOL m_IsFastForward;\r
+\r
+       CString m_OrigBranchHash;\r
+       CString m_OrigUpstreamHash;\r
+\r
+       int VerifyNoConflict();\r
+       CString GetRebaseModeName(int rebasemode);\r
+\r
+       CString m_SquashMessage;\r
+\r
+       int CheckNextCommitIsSquash();\r
+       int GetCurrentCommitID();\r
+       int FinishRebase();\r
+\r
+       CMenuButton m_PostButton;\r
 \r
 public:\r
    \r
@@ -72,14 +104,20 @@ public:
        afx_msg void OnCbnSelchangeBranch();\r
        afx_msg void OnCbnSelchangeUpstream();\r
        afx_msg void OnBnClickedContinue();\r
+       afx_msg void OnBnClickedAbort();\r
 \r
     CProgressCtrl m_ProgressBar;\r
     CStatic m_CtrlStatusText;\r
        CBalloon                        m_tooltips;\r
 \r
+       CString m_PreCmd;\r
+\r
     BOOL m_bPickAll;\r
     BOOL m_bSquashAll;\r
     BOOL m_bEditAll;\r
+       \r
+       BOOL m_bForce;\r
+       CStringArray m_PostButtonTexts;\r
 \r
        CSplitterControl        m_wndSplitter;\r
        CMFCTabCtrl m_ctrlTabCtrl;\r
@@ -90,11 +128,23 @@ public:
 \r
        CHistoryCombo m_BranchCtrl;\r
        CHistoryCombo m_UpstreamCtrl;\r
+       \r
+       CString           m_Upstream;\r
+       CString           m_Branch;\r
+\r
+       BOOL              m_IsCherryPick;\r
 \r
        REBASE_STAGE       m_RebaseStage;\r
 \r
        void AddBranchToolTips(CHistoryCombo *pBranch);\r
-       \r
-       int m_CurrentRebaseIndex;\r
-\r
+       void AddLogString(CString str);\r
+       int      StartRebase();\r
+       int  CheckRebaseCondition();\r
+       int  m_CurrentRebaseIndex;\r
+       int  StateAction();\r
+       int  GoNext();\r
+       afx_msg void OnBnClickedButtonBrowse();\r
+       afx_msg void OnBnClickedRebaseCheckForce();\r
+       afx_msg void OnStnClickedStatusStatic();\r
+       afx_msg void OnBnClickedRebasePostButton();\r
 };\r