diff options
author | Caolán McNamara <caolanm@redhat.com> | 2013-02-26 12:20:58 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-02-26 12:44:48 +0000 |
commit | 217a0f0c2a920f5aef66a383e470258f5547f792 (patch) | |
tree | a7a108b92c785220b276b88ffda12859eed42221 /sc/source | |
parent | def720964edcbb6426cd098a8958896921db9926 (diff) |
SOME BROKEN FOO
Change-Id: I37b7dc860c7fd2272724eb58345a7ab4391fba34
Diffstat (limited to 'sc/source')
-rw-r--r-- | sc/source/ui/dbgui/sortkeydlg.cxx | 17 | ||||
-rw-r--r-- | sc/source/ui/inc/sortkeydlg.hxx | 2 |
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(); |