4 #include "StandAloneDlg.h"
\r
5 #include "GitStatusListCtrl.h"
\r
7 #include "SplitterControl.h"
\r
8 #include "HistoryCombo.h"
\r
10 #include "GitLogList.h"
\r
11 // CRebaseDlg dialog
\r
12 #define IDC_REBASE_TAB 0x1000000
\r
14 #define REBASE_TAB_CONFLICT 0
\r
15 #define REBASE_TAB_MESSAGE 1
\r
16 #define REBASE_TAB_LOG 2
\r
18 #define MSG_REBASE_UPDATE_UI (WM_USER+151)
\r
20 class CRebaseDlg : public CResizableStandAloneDialog
\r
22 DECLARE_DYNAMIC(CRebaseDlg)
\r
25 CRebaseDlg(CWnd* pParent = NULL); // standard constructor
\r
26 virtual ~CRebaseDlg();
\r
29 enum { IDD = IDD_REBASE };
\r
34 CHOOSE_COMMIT_PICK_MODE,
\r
43 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
\r
44 virtual BOOL OnInitDialog();
\r
45 DECLARE_MESSAGE_MAP()
\r
46 virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam);
\r
47 LRESULT OnRebaseUpdateUI(WPARAM wParam, LPARAM lParam);
\r
48 void DoSize(int delta);
\r
49 void AddRebaseAnchor();
\r
50 void RemoveAnchor();
\r
52 void SetSplitterRange();
\r
53 void SaveSplitterPos();
\r
55 void LoadBranchInfo();
\r
56 void FetchLogList();
\r
57 void SetAllRebaseAction(int action);
\r
59 CRect m_DlgOrigRect;
\r
60 CRect m_CommitListOrigRect;
\r
61 BOOL PreTranslateMessage(MSG* pMsg);
\r
63 CSciEdit m_wndOutputRebase;
\r
64 void SetContinueButtonText();
\r
65 void SetControlEnable();
\r
66 void UpdateProgress();
\r
67 void UpdateCurrentStatus();
\r
68 void ListConflictFile();
\r
70 volatile LONG m_bThreadRunning;
\r
72 static UINT RebaseThreadEntry(LPVOID pVoid){return ((CRebaseDlg *)pVoid)->RebaseThread();};
\r
77 afx_msg void OnBnClickedPickAll();
\r
78 afx_msg void OnBnClickedSquashAll();
\r
79 afx_msg void OnBnClickedEditAll();
\r
80 afx_msg void OnBnClickedRebaseSplit();
\r
81 afx_msg void OnSize(UINT nType, int cx, int cy);
\r
82 afx_msg void OnCbnSelchangeBranch();
\r
83 afx_msg void OnCbnSelchangeUpstream();
\r
84 afx_msg void OnBnClickedContinue();
\r
86 CProgressCtrl m_ProgressBar;
\r
87 CStatic m_CtrlStatusText;
\r
88 CBalloon m_tooltips;
\r
94 CSplitterControl m_wndSplitter;
\r
95 CMFCTabCtrl m_ctrlTabCtrl;
\r
96 CGitStatusListCtrl m_FileListCtrl;
\r
97 CSciEdit m_LogMessageCtrl;
\r
99 CGitLogList m_CommitList;
\r
101 CHistoryCombo m_BranchCtrl;
\r
102 CHistoryCombo m_UpstreamCtrl;
\r
104 REBASE_STAGE m_RebaseStage;
\r
106 void AddBranchToolTips(CHistoryCombo *pBranch);
\r
107 void AddLogString(CString str);
\r
109 int CheckRebaseCondition();
\r
110 int m_CurrentRebaseIndex;
\r