summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2013-02-26 12:20:58 +0000
committerCaolán McNamara <caolanm@redhat.com>2013-02-26 12:44:48 +0000
commit217a0f0c2a920f5aef66a383e470258f5547f792 (patch)
treea7a108b92c785220b276b88ffda12859eed42221 /sc
parentdef720964edcbb6426cd098a8958896921db9926 (diff)
SOME BROKEN FOO
Change-Id: I37b7dc860c7fd2272724eb58345a7ab4391fba34
Diffstat (limited to 'sc')
-rw-r--r--sc/source/ui/dbgui/sortkeydlg.cxx17
-rw-r--r--sc/source/ui/inc/sortkeydlg.hxx2
2 files changed, 18 insertions, 1 deletions
diff --git a/sc/source/ui/dbgui/sortkeydlg.cxx b/sc/source/ui/dbgui/sortkeydlg.cxx
index 806f28478ceb..11df6dab7555 100644
--- a/sc/source/ui/dbgui/sortkeydlg.cxx
+++ b/sc/source/ui/dbgui/sortkeydlg.cxx
@@ -111,7 +111,7 @@ ScSortKeyCtrl::ScSortKeyCtrl(SfxTabPage* pParent, ScSortKeyItems& rItems)
, m_rVertScroll(m_rScrolledWindow.getVertScrollBar())
{
m_rVertScroll.EnableDrag();
- m_rVertScroll.Show();
+ m_rVertScroll.Show(m_rScrolledWindow.GetStyle() & WB_VSCROLL);
m_rVertScroll.SetRangeMin( 0 );
m_rVertScroll.SetVisibleSize( 0xFFFF );
@@ -120,6 +120,19 @@ ScSortKeyCtrl::ScSortKeyCtrl(SfxTabPage* pParent, ScSortKeyItems& rItems)
m_rVertScroll.SetScrollHdl( aScrollLink );
}
+void ScSortKeyCtrl::checkAutoVScroll()
+{
+ WinBits nBits = m_rScrolledWindow.GetStyle();
+ if (nBits & WB_VSCROLL)
+ return;
+ if (nBits & WB_AUTOVSCROLL)
+ {
+ bool bShow = m_rVertScroll.GetRangeMax() > m_rVertScroll.GetVisibleSize();
+ if (bShow != m_rVertScroll.IsVisible())
+ m_rVertScroll.Show(bShow);
+ }
+}
+
void ScSortKeyCtrl::setScrollRange()
{
sal_Int32 nScrollOffset = m_aSortWin.GetItemHeight();
@@ -127,6 +140,7 @@ void ScSortKeyCtrl::setScrollRange()
m_rVertScroll.SetPageSize( nVisibleItems - 1 );
m_rVertScroll.SetVisibleSize( nVisibleItems );
m_rVertScroll.Scroll();
+ checkAutoVScroll();
}
// -----------------------------------------------------------------------
@@ -146,6 +160,7 @@ void ScSortKeyCtrl::AddSortKey( sal_uInt16 nItem )
m_rVertScroll.SetRangeMax( nItem );
m_rVertScroll.DoScroll( nItem );
m_aSortWin.AddSortKey( nItem );
+ checkAutoVScroll();
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/inc/sortkeydlg.hxx b/sc/source/ui/inc/sortkeydlg.hxx
index dd394f19827e..060e8ad24c47 100644
--- a/sc/source/ui/inc/sortkeydlg.hxx
+++ b/sc/source/ui/inc/sortkeydlg.hxx
@@ -94,6 +94,8 @@ private:
DECL_LINK(ScrollHdl, ScrollBar*);
+ void checkAutoVScroll();
+
public:
ScSortKeyCtrl(SfxTabPage* pParent, ScSortKeyItems& mrSortKeyItems);
void setScrollRange();