OSDN Git Service

Update Change Log for 1.3.1.0
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / LogDlg.cpp
index 91404f5..fe576a4 100644 (file)
@@ -79,14 +79,25 @@ CLogDlg::CLogDlg(CWnd* pParent /*=NULL*/)
        , m_hAccel(NULL)\r
 {\r
        m_bFilterWithRegex = !!CRegDWORD(_T("Software\\TortoiseGit\\UseRegexFilter"), TRUE);\r
-       m_bAllBranch=FALSE;\r
+\r
+       CString str;\r
+       str=g_Git.m_CurrentDir;\r
+       str.Replace(_T(":"),_T("_"));\r
+       str=CString(_T("Software\\TortoiseGit\\LogDialog\\AllBranch\\"))+str;\r
+       \r
+       m_regbAllBranch=CRegDWORD(str,FALSE);\r
+\r
+       m_bAllBranch=m_regbAllBranch;\r
+\r
        m_bFirstParent=FALSE;\r
        m_bWholeProject=FALSE;\r
 }\r
 \r
 CLogDlg::~CLogDlg()\r
 {\r
-       \r
+\r
+       m_regbAllBranch=m_bAllBranch;\r
+\r
     m_CurrentFilteredChangedArray.RemoveAll();\r
        \r
 }\r
@@ -270,6 +281,11 @@ BOOL CLogDlg::OnInitDialog()
        AddAnchor(IDCANCEL, BOTTOM_RIGHT);\r
        AddAnchor(IDHELP, BOTTOM_RIGHT);\r
 \r
+       if(this->m_bAllBranch)\r
+               m_LogList.m_ShowMask|=CGit::LOG_INFO_ALL_BRANCH;\r
+       else\r
+               m_LogList.m_ShowMask&=~CGit::LOG_INFO_ALL_BRANCH;\r
+\r
 //     SetPromptParentWindow(m_hWnd);\r
 \r
        if (hWndExplorer)\r
@@ -365,9 +381,13 @@ LRESULT CLogDlg::OnLogListLoading(WPARAM wParam, LPARAM /*lParam*/)
                //DialogEnableWindow(IDC_SHOWWHOLEPROJECT, FALSE);\r
                //DialogEnableWindow(IDC_LOG_FIRSTPARENT, FALSE);\r
                DialogEnableWindow(IDC_STATBUTTON, FALSE);\r
-               DialogEnableWindow(IDC_REFRESH, FALSE);\r
+               //DialogEnableWindow(IDC_REFRESH, FALSE);\r
                DialogEnableWindow(IDC_HIDEPATHS,FALSE);\r
-               \r
+\r
+               DialogEnableWindow(IDC_DATEFROM,FALSE);\r
+               DialogEnableWindow(IDC_DATETO,FALSE);\r
+\r
+               DialogEnableWindow(IDC_SEARCHEDIT,FALSE);\r
 \r
        }else if( cur == GITLOG_END)\r
        {\r
@@ -375,8 +395,10 @@ LRESULT CLogDlg::OnLogListLoading(WPARAM wParam, LPARAM /*lParam*/)
                if(this->m_LogList.HasText())\r
                {\r
                        this->m_LogList.ClearText();\r
-                       UpdateLogInfoLabel();\r
+                       \r
                }\r
+               UpdateLogInfoLabel();\r
+\r
 \r
                //if (!m_bShowedAll)\r
                DialogEnableWindow(IDC_SHOWWHOLEPROJECT, TRUE);\r
@@ -387,6 +409,11 @@ LRESULT CLogDlg::OnLogListLoading(WPARAM wParam, LPARAM /*lParam*/)
                DialogEnableWindow(IDC_REFRESH, TRUE);\r
                DialogEnableWindow(IDC_HIDEPATHS,TRUE);\r
 \r
+               DialogEnableWindow(IDC_DATEFROM,TRUE);\r
+               DialogEnableWindow(IDC_DATETO,TRUE);\r
+\r
+               DialogEnableWindow(IDC_SEARCHEDIT,TRUE);\r
+\r
 //             PostMessage(WM_TIMER, LOGFILTER_TIMER);\r
                GetDlgItem(IDC_PROGRESS)->ShowWindow(FALSE);\r
                //CTime time=m_LogList.GetOldestTime();\r
@@ -394,14 +421,16 @@ LRESULT CLogDlg::OnLogListLoading(WPARAM wParam, LPARAM /*lParam*/)
                m_LogList.GetTimeRange(begin,end);\r
                m_DateFrom.SetTime(&begin);\r
                m_DateTo.SetTime(&end);\r
-               \r
+\r
+\r
        }else\r
        {\r
                if(this->m_LogList.HasText())\r
                {\r
                        this->m_LogList.ClearText();\r
-                       UpdateLogInfoLabel();\r
+                       this->m_LogList.Invalidate();\r
                }\r
+               UpdateLogInfoLabel();\r
                m_LogProgress.SetPos(cur);\r
        }\r
        return 0;\r
@@ -2512,19 +2541,26 @@ void CLogDlg::OnBnClickedCheckStoponcopy()
 void CLogDlg::UpdateLogInfoLabel()\r
 {\r
 \r
-       git_revnum_t rev1 ;\r
-       git_revnum_t rev2 ;\r
+       CGitHash rev1 ;\r
+       CGitHash rev2 ;\r
        long selectedrevs = 0;\r
        int count =m_LogList.m_arShownList.GetCount();\r
+       int start = 0;\r
        if (count)\r
        {\r
                rev1 = (reinterpret_cast<GitRev*>(m_LogList.m_arShownList.GetAt(0)))->m_CommitHash;\r
+               if(this->m_LogList.m_bShowWC && rev1.IsEmpty())\r
+                       start = 1;\r
+               rev1 = (reinterpret_cast<GitRev*>(m_LogList.m_arShownList.GetAt(start)))->m_CommitHash;\r
                //pLogEntry = reinterpret_cast<PLOGENTRYDATA>(m_arShownList.GetAt(m_arShownList.GetCount()-1));\r
                rev2 =  (reinterpret_cast<GitRev*>(m_LogList.m_arShownList.GetAt(count-1)))->m_CommitHash;\r
                selectedrevs = m_LogList.GetSelectedCount();\r
        }\r
        CString sTemp;\r
-       sTemp.Format(_T("Showing %ld revision(s), from revision %s to revision %s - %ld revision(s) selected"), count, rev2.Left(6), rev1.Left(6), selectedrevs);\r
+       sTemp.Format(_T("Showing %ld revision(s), from revision %s to revision %s - %ld revision(s) selected"), \r
+               count - start,\r
+               rev2.ToString().Left(6), rev1.ToString().Left(6), selectedrevs);\r
+\r
        m_sLogInfo = sTemp;\r
 \r
        UpdateData(FALSE);\r