OSDN Git Service

Show compare method name at status bar
authorsdottaka <sdottaka@sourceforge.net>
Sun, 23 Mar 2014 00:16:20 +0000 (09:16 +0900)
committersdottaka <sdottaka@sourceforge.net>
Sun, 23 Mar 2014 00:16:20 +0000 (09:16 +0900)
--HG--
branch : stable

Src/DirDoc.cpp
Src/DirFrame.cpp
Src/DirFrame.h

index c7b839d..bfe2da0 100644 (file)
@@ -370,8 +370,9 @@ void CDirDoc::Rescan()
        theApp.m_pGlobalFileFilter->ReloadUpdatedFilters();
        m_pCtxt->m_piFilterGlobal = theApp.m_pGlobalFileFilter.get();
 
-       // Show active filter name in statusbar
+       // Show current compare method name and active filter name in statusbar
        pf->SetFilterStatusDisplay(theApp.m_pGlobalFileFilter->GetFilterNameOrMask().c_str());
+       pf->SetCompareMethodStatusDisplay(m_pCtxt->GetCompareMethod());
 
        // Folder names to compare are in the compare context
        m_diffThread.SetContext(m_pCtxt.get());
index 5392864..d2fd7ac 100644 (file)
@@ -42,13 +42,18 @@ static char THIS_FILE[] = __FILE__;
  */
 enum
 {
-       PANE_FILTER = 1,
+       PANE_COMPMETHOD = 1,
+       PANE_FILTER,
        PANE_LEFT_RO,
        PANE_MIDDLE_RO,
        PANE_RIGHT_RO,
 };
 
 /**
+ * @brief Width of compare method name pane in statusbar
+ */
+const int COMPMETHOD_PANEL_WIDTH = 140;
+/**
  * @brief Width of filter name pane in statusbar
  */
 const int FILTER_PANEL_WIDTH = 180;
@@ -63,6 +68,7 @@ static UINT indicators[] =
        ID_SEPARATOR,
        ID_SEPARATOR,
        ID_SEPARATOR,
+       ID_SEPARATOR,
 };
 
 /**
@@ -125,6 +131,7 @@ int CDirFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
        }       
        
        String sText = theApp.LoadString(IDS_STATUSBAR_READONLY);
+       m_wndStatusBar.SetPaneInfo(PANE_COMPMETHOD, ID_STATUS_FILTER, 0, COMPMETHOD_PANEL_WIDTH);
        m_wndStatusBar.SetPaneInfo(PANE_FILTER, ID_STATUS_FILTER, 0, FILTER_PANEL_WIDTH);
        m_wndStatusBar.SetPaneInfo(PANE_LEFT_RO, ID_STATUS_LEFTDIR_RO, 0, RO_PANEL_WIDTH);
        m_wndStatusBar.SetPaneInfo(PANE_MIDDLE_RO, ID_STATUS_MIDDLEDIR_RO, 0, RO_PANEL_WIDTH);
@@ -148,6 +155,15 @@ void CDirFrame::SetStatus(LPCTSTR szStatus)
 }
 
 /**
+ * @brief Set current compare method name to statusbar
+ * @param [in] nCompMethod compare method to show
+ */
+void CDirFrame::SetCompareMethodStatusDisplay(int nCompMethod)
+{
+       m_wndStatusBar.SetPaneText(PANE_COMPMETHOD, LoadResString(ID_COMPMETHOD_FULL_CONTENTS + nCompMethod).c_str());
+}
+
+/**
  * @brief Set active filter name to statusbar
  * @param [in] szFilter Filtername to show
  */
index 443a409..04d9663 100644 (file)
@@ -53,6 +53,7 @@ private:
 // Operations
 public:
        void SetStatus(LPCTSTR szStatus);
+       void SetCompareMethodStatusDisplay(int nCompMethod);
        void SetFilterStatusDisplay(LPCTSTR szFilter);
        CStatusBar  m_wndStatusBar;
        IHeaderBar * GetHeaderInterface();