diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/toolkit/awt/scrollabledialog.hxx | 39 |
1 files changed, 15 insertions, 24 deletions
diff --git a/include/toolkit/awt/scrollabledialog.hxx b/include/toolkit/awt/scrollabledialog.hxx index c414c8f3966e..83c0123717c9 100644 --- a/include/toolkit/awt/scrollabledialog.hxx +++ b/include/toolkit/awt/scrollabledialog.hxx @@ -26,19 +26,12 @@ namespace toolkit { - class ScrollableInterface + class ScrollableDialog : public Dialog { public: - virtual ~ScrollableInterface() {} - virtual void SetScrollWidth( long nWidth ) = 0; - virtual void SetScrollHeight( long nHeight ) = 0; - virtual void SetScrollLeft( long nLeft ) = 0; - virtual void SetScrollTop( long Top ) = 0; - }; + enum ScrollBarVisibility { None, Vert, Hori, Both }; - template < class T > - class ScrollableWrapper : public T, public ScrollableInterface - { + private: VclPtr<ScrollBar> maHScrollBar; VclPtr<ScrollBar> maVScrollBar; Size maScrollArea; @@ -46,26 +39,24 @@ namespace toolkit bool mbHasVertBar; Point mnScrollPos; long mnScrWidth; - - public: - enum ScrollBarVisibility { None, Vert, Hori, Both }; - private: ScrollBarVisibility maScrollVis; + void lcl_Scroll( long nX, long nY ); + DECL_LINK( ScrollBarHdl, ScrollBar*, void ); + public: - ScrollableWrapper( vcl::Window* pParent, WinBits nStyle = WB_STDDIALOG, Dialog::InitFlag eFlag = Dialog::InitFlag::Default ); - virtual ~ScrollableWrapper() override; + ScrollableDialog( vcl::Window* pParent, WinBits nStyle = WB_STDDIALOG, Dialog::InitFlag eFlag = Dialog::InitFlag::Default ); + virtual ~ScrollableDialog() override; virtual void dispose() override; - virtual void SetScrollWidth( long nWidth ) override; - virtual void SetScrollHeight( long nHeight ) override; - virtual void SetScrollLeft( long nLeft ) override; - virtual void SetScrollTop( long Top ) override; - - void setScrollVisibility( ScrollBarVisibility rState ); - DECL_LINK( ScrollBarHdl, ScrollBar*, void ); - void ResetScrollBars(); // Window virtual void Resize() override; + + void SetScrollWidth( long nWidth ); + void SetScrollHeight( long nHeight ); + void SetScrollLeft( long nLeft ); + void SetScrollTop( long Top ); + void setScrollVisibility( ScrollBarVisibility rState ); + void ResetScrollBars(); }; } // namespacetoolkit |