OSDN Git Service

9cfb567e825094f8a98929a757cefaf23b9e90b1
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / RebaseDlg.h
1 #pragma once\r
2 #include "afxcmn.h"\r
3 #include "afxwin.h"\r
4 #include "StandAloneDlg.h"\r
5 #include "GitStatusListCtrl.h"\r
6 #include "SciEdit.h"\r
7 #include "SplitterControl.h"\r
8 #include "HistoryCombo.h"\r
9 #include "Balloon.h"\r
10 #include "GitLogList.h"\r
11 // CRebaseDlg dialog\r
12 #define IDC_REBASE_TAB 0x1000000\r
13 \r
14 #define REBASE_TAB_CONFLICT  0\r
15 #define REBASE_TAB_MESSAGE   1\r
16 #define REBASE_TAB_LOG           2\r
17 \r
18 class CRebaseDlg : public CResizableStandAloneDialog\r
19 {\r
20         DECLARE_DYNAMIC(CRebaseDlg)\r
21 \r
22 public:\r
23         CRebaseDlg(CWnd* pParent = NULL);   // standard constructor\r
24         virtual ~CRebaseDlg();\r
25 \r
26 // Dialog Data\r
27         enum { IDD = IDD_REBASE };\r
28 \r
29         enum REBASE_STAGE\r
30         {\r
31                 CHOOSE_BRANCH,\r
32                 CHOOSE_COMMIT_PICK_MODE,\r
33                 REBASE_START,\r
34                 REBASE_CONTINUE,\r
35                 REBASE_ABORT,\r
36                 REBASE_FINISH,\r
37         };\r
38 \r
39 protected:\r
40         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support\r
41         virtual BOOL OnInitDialog();\r
42         DECLARE_MESSAGE_MAP()\r
43         virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam);\r
44         void DoSize(int delta);\r
45         void AddRebaseAnchor();\r
46         void RemoveAnchor();\r
47 \r
48         void SetSplitterRange();\r
49         void SaveSplitterPos();\r
50         \r
51         void LoadBranchInfo();\r
52         void FetchLogList();\r
53         void SetAllRebaseAction(int action);\r
54 \r
55         CRect                           m_DlgOrigRect;\r
56         CRect                           m_CommitListOrigRect;\r
57         BOOL PreTranslateMessage(MSG* pMsg);\r
58 \r
59         CSciEdit m_wndOutputRebase;\r
60         void SetContinueButtonText();\r
61         void SetControlEnable();\r
62         void UpdateProgress();\r
63         void UpdateCurrentStatus();\r
64 \r
65 public:\r
66    \r
67     afx_msg void OnBnClickedPickAll();\r
68     afx_msg void OnBnClickedSquashAll();\r
69     afx_msg void OnBnClickedEditAll();\r
70     afx_msg void OnBnClickedRebaseSplit();\r
71         afx_msg void OnSize(UINT nType, int cx, int cy);\r
72         afx_msg void OnCbnSelchangeBranch();\r
73         afx_msg void OnCbnSelchangeUpstream();\r
74         afx_msg void OnBnClickedContinue();\r
75 \r
76     CProgressCtrl m_ProgressBar;\r
77     CStatic m_CtrlStatusText;\r
78         CBalloon                        m_tooltips;\r
79 \r
80     BOOL m_bPickAll;\r
81     BOOL m_bSquashAll;\r
82     BOOL m_bEditAll;\r
83 \r
84         CSplitterControl        m_wndSplitter;\r
85         CMFCTabCtrl m_ctrlTabCtrl;\r
86         CGitStatusListCtrl m_FileListCtrl;\r
87         CSciEdit                   m_LogMessageCtrl;\r
88         \r
89         CGitLogList                m_CommitList;\r
90 \r
91         CHistoryCombo m_BranchCtrl;\r
92         CHistoryCombo m_UpstreamCtrl;\r
93 \r
94         REBASE_STAGE       m_RebaseStage;\r
95 \r
96         void AddBranchToolTips(CHistoryCombo *pBranch);\r
97         \r
98         int m_CurrentRebaseIndex;\r
99 \r
100 };\r