Bläddra i källkod

update the new scroll bars to better handle them when they are hidden by default

Scott Brogden 1 vecka sedan
förälder
incheckning
74c4a24d10
3 ändrade filer med 34 tillägg och 17 borttagningar
  1. 5 3
      src/ModernScrollBar.cpp
  2. 5 5
      src/QListCtrl.cpp
  3. 24 9
      src/QPasteWnd.cpp

+ 5 - 3
src/ModernScrollBar.cpp

@@ -159,11 +159,13 @@ void CModernScrollBar::UpdateScrollBar()
 	if (currentRect != scrollRect)
 	if (currentRect != scrollRect)
 	{
 	{
 		MoveWindow(&scrollRect);
 		MoveWindow(&scrollRect);
-	}
-	
+	}	
+
 	// Ensure visible
 	// Ensure visible
-	if (!IsWindowVisible())
+	if (CGetSetOptions::m_showScrollBar && !IsWindowVisible())
+	{
 		ShowWindow(SW_SHOWNA);
 		ShowWindow(SW_SHOWNA);
+	}
 
 
 	// Redraw
 	// Redraw
 	Invalidate();
 	Invalidate();

+ 5 - 5
src/QListCtrl.cpp

@@ -1416,7 +1416,7 @@ BOOL CQListCtrl::PreTranslateMessage(MSG* pMsg)
 			CWnd* pParent = GetParent();
 			CWnd* pParent = GetParent();
 			if (pParent && pParent->GetSafeHwnd())
 			if (pParent && pParent->GetSafeHwnd())
 			{
 			{
-				pParent->PostMessage(NM_UPDATE_SCROLLBAR, 0, 0);
+				pParent->PostMessage(NM_UPDATE_SCROLLBAR, TRUE, 0);
 			}
 			}
 			return result;
 			return result;
 		}
 		}
@@ -1938,7 +1938,7 @@ void CQListCtrl::OnSelectionChange(NMHDR* pNMHDR, LRESULT* pResult)
 		CWnd* pParent = GetParent();
 		CWnd* pParent = GetParent();
 		if (pParent && pParent->GetSafeHwnd())
 		if (pParent && pParent->GetSafeHwnd())
 		{
 		{
-			pParent->PostMessage(NM_UPDATE_SCROLLBAR, 0, 0);
+			pParent->PostMessage(NM_UPDATE_SCROLLBAR, FALSE, 0);
 		}
 		}
 
 
 		if (VALID_TOOLTIP &&
 		if (VALID_TOOLTIP &&
@@ -2066,7 +2066,7 @@ void CQListCtrl::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
 	CWnd* pParent = GetParent();
 	CWnd* pParent = GetParent();
 	if (pParent && pParent->GetSafeHwnd())
 	if (pParent && pParent->GetSafeHwnd())
 	{
 	{
-		pParent->PostMessage(NM_UPDATE_SCROLLBAR, 0, 0);
+		pParent->PostMessage(NM_UPDATE_SCROLLBAR, TRUE, 0);
 	}
 	}
 }
 }
 
 
@@ -2119,7 +2119,7 @@ void CQListCtrl::OnMouseMove(UINT nFlags, CPoint point)
 				// For modern scrollbar, notify parent
 				// For modern scrollbar, notify parent
 				if (CGetSetOptions::m_useModernScrollBar)
 				if (CGetSetOptions::m_useModernScrollBar)
 				{
 				{
-					GetParent()->PostMessage(NM_UPDATE_SCROLLBAR, 0, 0);
+					GetParent()->PostMessage(NM_UPDATE_SCROLLBAR, TRUE, 0);
 				}
 				}
 				else
 				else
 				{
 				{
@@ -2327,7 +2327,7 @@ void CQListCtrl::OnMouseHWheel(UINT nFlags, short zDelta, CPoint pt)
 	CWnd* pParent = GetParent();
 	CWnd* pParent = GetParent();
 	if (pParent && pParent->GetSafeHwnd())
 	if (pParent && pParent->GetSafeHwnd())
 	{
 	{
-		pParent->PostMessage(NM_UPDATE_SCROLLBAR, 0, 0);
+		pParent->PostMessage(NM_UPDATE_SCROLLBAR, TRUE, 0);
 	}
 	}
 
 
 	//CListCtrl::OnMouseHWheel(nFlags, zDelta, pt);
 	//CListCtrl::OnMouseHWheel(nFlags, zDelta, pt);

+ 24 - 9
src/QPasteWnd.cpp

@@ -716,7 +716,6 @@ void CQPasteWnd::MoveControls()
 		m_lstHeader.SetWindowRgn(NULL, TRUE);
 		m_lstHeader.SetWindowRgn(NULL, TRUE);
 	}
 	}
 
 
-
 	if (m_noSearchResults &&
 	if (m_noSearchResults &&
 		m_strSearch != _T(""))
 		m_strSearch != _T(""))
 	{
 	{
@@ -738,10 +737,20 @@ void CQPasteWnd::MoveControls()
 		// Update modern scrollbar position and visibility (only if enabled)
 		// Update modern scrollbar position and visibility (only if enabled)
 		if (CGetSetOptions::m_useModernScrollBar)
 		if (CGetSetOptions::m_useModernScrollBar)
 		{
 		{
-			m_modernScrollBar.UpdateScrollBar();
-			m_modernScrollBar.Show(false);
-			m_modernScrollBarHorz.UpdateScrollBar();
-			m_modernScrollBarHorz.Show(false);
+			if (CGetSetOptions::m_showScrollBar)
+			{
+				m_modernScrollBar.UpdateScrollBar();
+				m_modernScrollBar.Show(false);
+				m_modernScrollBarHorz.UpdateScrollBar();
+				m_modernScrollBarHorz.Show(false);
+			}
+			else
+			{
+				m_modernScrollBar.UpdateScrollBar();
+				m_modernScrollBar.Hide(false);
+				m_modernScrollBarHorz.UpdateScrollBar();
+				m_modernScrollBarHorz.Hide(false);
+			}
 		}
 		}
 		else
 		else
 		{
 		{
@@ -6499,9 +6508,7 @@ LRESULT CQPasteWnd::OnShowHideScrollBar(WPARAM wParam, LPARAM lParam)
 	if (wParam == 1)
 	if (wParam == 1)
 	{
 	{
 		Log(_T("OnShowHideScrollBar Showing ScrollBars"));
 		Log(_T("OnShowHideScrollBar Showing ScrollBars"));
-
 		m_showScrollBars = true;
 		m_showScrollBars = true;
-
 		MoveControls();
 		MoveControls();
 	}
 	}
 	else
 	else
@@ -6520,8 +6527,16 @@ LRESULT CQPasteWnd::OnUpdateScrollBar(WPARAM wParam, LPARAM lParam)
 	// Update modern scrollbar position when list scrolls (only if enabled)
 	// Update modern scrollbar position when list scrolls (only if enabled)
 	if (CGetSetOptions::m_useModernScrollBar)
 	if (CGetSetOptions::m_useModernScrollBar)
 	{
 	{
-		m_modernScrollBar.Show(false);
-		m_modernScrollBarHorz.Show(false);
+		if (wParam == TRUE)
+		{
+			m_modernScrollBar.Show(false);
+			m_modernScrollBarHorz.Show(false);
+		}
+		else
+		{
+			m_modernScrollBar.UpdateScrollBar();
+			m_modernScrollBarHorz.UpdateScrollBar();
+		}
 	}
 	}
 	return 0;
 	return 0;
 }
 }