OSDN Git Service

PATCH: [ 1155436 ] Remove non-const GetDiffAt() from CDiffContext
authorKimmo Varis <kimmov@gmail.com>
Fri, 4 Mar 2005 08:58:21 +0000 (08:58 +0000)
committerKimmo Varis <kimmov@gmail.com>
Fri, 4 Mar 2005 08:58:21 +0000 (08:58 +0000)
Src/DiffContext.cpp
Src/DiffContext.h
Src/DirDoc.cpp
Src/DirView.h
Src/DirViewColHandler.cpp
Src/readme.txt

index 4656336..484a19e 100644 (file)
@@ -55,19 +55,18 @@ static char THIS_FILE[]=__FILE__;
  * @param [in] pszRight Initial right-side path.
  */
 CDiffContext::CDiffContext(LPCTSTR pszLeft /*=NULL*/, LPCTSTR pszRight /*=NULL*/)
+: m_bRecurse(FALSE)
+, pNamesLeft(NULL)
+, pNamesRight(NULL)
+, m_piFilterGlobal(NULL)
+, m_piPluginInfos(NULL)
+, m_msgUpdateStatus(0)
+, m_hDirFrame(NULL)
 {
-       m_bRecurse=FALSE;
        m_strLeft = pszLeft;
        m_strRight = pszRight;
        m_pList = &m_dirlist;
 
-       pNamesLeft = NULL;
-       pNamesRight = NULL;
-       m_piFilterGlobal = 0;
-       m_piPluginInfos = 0;
-       m_msgUpdateStatus = 0;
-       m_hDirFrame = NULL;
-
        m_strNormalizedLeft = pszLeft;
        paths_normalize(m_strNormalizedLeft);
        m_strNormalizedRight = pszRight;
@@ -82,6 +81,8 @@ CDiffContext::CDiffContext(LPCTSTR pszLeft /*=NULL*/, LPCTSTR pszRight /*=NULL*/
  * @param [in] src Existing CDiffContext whose data is copied.
  */
 CDiffContext::CDiffContext(LPCTSTR pszLeft, LPCTSTR pszRight, CDiffContext& src)
+: pNamesLeft(NULL)
+, pNamesRight(NULL)
 {
        // This is used somehow in recursive comparisons
        // I think that it is only used during rescan to copy into temporaries
@@ -97,9 +98,6 @@ CDiffContext::CDiffContext(LPCTSTR pszLeft, LPCTSTR pszRight, CDiffContext& src)
        m_msgUpdateStatus = src.m_msgUpdateStatus;
        m_hDirFrame = src.m_hDirFrame;
 
-       pNamesLeft = NULL;
-       pNamesRight = NULL;
-
        m_strNormalizedLeft = pszLeft;
        paths_normalize(m_strNormalizedLeft);
        m_strNormalizedRight = pszRight;
@@ -177,11 +175,6 @@ const DIFFITEM & CDiffContext::GetDiffAt(POSITION diffpos) const
 {
        return m_pList->GetAt(diffpos);
 }
-DIFFITEM & CDiffContext::GetDiffAt(POSITION diffpos)
-{
-       return m_pList->GetAt(diffpos);
-}
-
 
 /**
  * @brief Get number of items in CDiffContext array
index b2f87b0..7ef108a 100644 (file)
@@ -141,7 +141,6 @@ public:
        // to iterate over all differences on list
        POSITION GetFirstDiffPosition();
        DIFFITEM GetNextDiffPosition(POSITION & diffpos);
-       DIFFITEM & GetDiffAt(POSITION diffpos);
        const DIFFITEM & GetDiffAt(POSITION diffpos) const;
 //     int GetDiffStatus(POSITION diffpos);
        int GetDiffCount();
index 64bd64b..15526e6 100644 (file)
@@ -355,7 +355,7 @@ void CDirDoc::ReloadItemStatus(UINT nIdx, BOOL bLeft, BOOL bRight)
        m_pCtxt->UpdateStatusFromDisk(diffpos, bLeft, bRight);
 
        // Update view
-       DIFFITEM & updated = m_pCtxt->GetDiffAt(diffpos);
+       const DIFFITEM & updated = m_pCtxt->GetDiffAt(diffpos);
        m_pDirView->UpdateDiffItemStatus(nIdx, updated);
 }
 
index 23b0759..2625b89 100644 (file)
@@ -163,7 +163,7 @@ public:
        void UpdateColumnNames();
        static int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);
        int AddDiffItem(int index, const DIFFITEM & di, LPCTSTR szPath, POSITION curdiffpos);
-       void UpdateDiffItemStatus(UINT nIdx, DIFFITEM & di);
+       void UpdateDiffItemStatus(UINT nIdx, const DIFFITEM & di);
        void ToDoDeleteThisValidateColumnOrdering() { ValidateColumnOrdering(); }
 private:
        void InitiateSort();
index 18cbce6..5425732 100644 (file)
@@ -181,7 +181,7 @@ int CDirView::AddDiffItem(int index, const DIFFITEM & di, LPCTSTR szPath, POSITI
  * @brief Update listview display of details for specified row
  * @note Customising shownd data should be done here
  */
-void CDirView::UpdateDiffItemStatus(UINT nIdx, DIFFITEM & di)
+void CDirView::UpdateDiffItemStatus(UINT nIdx, const DIFFITEM & di)
 {
        BOOL bLeftNewer = FALSE;
        BOOL bRightNewer = FALSE;
index 7b464ce..ac32a23 100644 (file)
@@ -2,6 +2,8 @@
  PATCH: [ 1155319 ] Select font for dir compare view
   We must allow selecting file compare font even if no open views
   Src: Mainfrm.cpp
+ PATCH: [ 1155436 ] Remove non-const GetDiffAt() from CDiffContext
+  Src: DiffContext.cpp DiffContext.h DirDoc.cpp DirView.h DirViewColHandler.cpp
 
 2005-03-04 Perry
  PATCH: [ 1156253 ] Fix filter helper handling of new filters