OSDN Git Service

Save all branch status when close log dialog
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / LogDlg.h
index 945e694..0034153 100644 (file)
@@ -35,6 +35,7 @@
 #include <regex>\r
 #include "GitLogList.h"\r
 #include "GitStatusListCtrl.h"\r
+#include "HyperLink.h"\r
 \r
 using namespace std;\r
 \r
@@ -89,7 +90,15 @@ public:
        void SetDialogTitle(const CString& sTitle) {m_sTitle = sTitle;}\r
        void SetSelect(bool bSelect) {m_bSelect = bSelect;}\r
        void ContinuousSelection(bool bCont = true) {m_bSelectionMustBeContinuous = bCont;}\r
+       void SingleSelection(bool bSingle = true) {m_bSelectionMustBeSingle = bSingle;}\r
        void SetMergePath(const CTGitPath& mergepath) {m_mergePath = mergepath;}\r
+       void SetStartRef(const CString& StartRef);\r
+       void ShowStartRef();\r
+       /**\r
+        * Provides selected commit hash if available, call after OK return from here\r
+        * Empty if none\r
+       **/\r
+       CString GetSelectedHash(){ return m_sSelectedHash; }\r
 \r
 //     const GitRevRangeArray& GetSelectedRevRanges() {return m_selectedRevs;}\r
 \r
@@ -130,12 +139,13 @@ protected:
        afx_msg void OnBnClickShowWholeProject();\r
        afx_msg void OnBnClickedHidepaths();\r
        afx_msg void OnBnClickedAllBranch();\r
+       afx_msg void OnBnClickedBrowseRef();\r
        afx_msg void OnBnClickedCheckStoponcopy();\r
        \r
        afx_msg void OnDtnDropdownDatefrom(NMHDR *pNMHDR, LRESULT *pResult);\r
        afx_msg void OnDtnDropdownDateto(NMHDR *pNMHDR, LRESULT *pResult);\r
        afx_msg void OnSize(UINT nType, int cx, int cy);\r
-       afx_msg void OnBnClickedIncludemerge();\r
+       afx_msg void OnBnClickedFirstParent();\r
        afx_msg void OnBnClickedRefresh();\r
        afx_msg void OnRefresh();\r
        afx_msg void OnFind();\r
@@ -145,7 +155,7 @@ protected:
        virtual void OnCancel();\r
        virtual void OnOK();\r
        virtual BOOL OnInitDialog();\r
-       //virtual BOOL PreTranslateMessage(MSG* pMsg);\r
+       virtual BOOL PreTranslateMessage(MSG* pMsg);\r
 \r
        void    FillLogMessageCtrl(bool bShow = true);\r
        void    DoDiffFromLog(INT_PTR selIndex, GitRev *rev1, GitRev *rev2, bool blame, bool unified);\r
@@ -157,7 +167,8 @@ protected:
 \r
 private:\r
        \r
-\r
+       CRegDWORD m_regbAllBranch;\r
+       \r
        void Refresh (bool autoGoOnline = false);\r
        BOOL IsDiffPossible(LogChangedPath * changedpath, git_revnum_t rev);\r
        BOOL Open(bool bOpenWith, CString changedpath, git_revnum_t rev);\r
@@ -215,6 +226,7 @@ private:
        CGitLogList                     m_LogList;\r
        CGitStatusListCtrl  m_ChangedFileListCtrl;\r
        CFilterEdit                     m_cFilter;\r
+       CHyperLink                      m_staticRef;\r
        CProgressCtrl           m_LogProgress;\r
        CMenuButton                     m_btnShow;\r
        CMenuButton                     m_btnShowWholeProject;\r
@@ -227,12 +239,16 @@ private:
        //GitRev                                m_wcRev;\r
 //     GitRevRangeArray        m_selectedRevs;\r
 //     GitRevRangeArray        m_selectedRevsOneRange;\r
+       CString                         m_sSelectedHash;        // set to selected commit hash on OK if appropriate\r
        bool                            m_bSelectionMustBeContinuous;\r
+       bool                            m_bSelectionMustBeSingle;\r
        long                            m_logcounter;\r
        bool                            m_bCancelled;\r
        \r
        BOOL                            m_bIncludeMerges;\r
+       BOOL                            m_bFirstParent;\r
        BOOL                            m_bAllBranch;\r
+       BOOL                            m_bWholeProject;\r
 \r
        git_revnum_t            m_lowestRev;\r
        CTGitPathList   *   m_currentChangedArray;\r