summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/vcl/tabpage.hxx27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/vcl/tabpage.hxx b/include/vcl/tabpage.hxx
index bd308a96a355..a357ec50f55e 100644
--- a/include/vcl/tabpage.hxx
+++ b/include/vcl/tabpage.hxx
@@ -24,6 +24,9 @@
#include <vcl/window.hxx>
#include <vcl/IContext.hxx>
+class ScrollBar;
+class ScrollBarBox;
+
class VCL_DLLPUBLIC TabPage
: public vcl::Window
, public vcl::IContext
@@ -32,10 +35,24 @@ private:
using Window::ImplInit;
SAL_DLLPRIVATE void ImplInit( vcl::Window* pParent, WinBits nStyle );
SAL_DLLPRIVATE void ImplInitSettings();
+ void lcl_Scroll( long nX, long nY );
+ DECL_LINK( ScrollBarHdl, ScrollBar*, void );
+
+ VclPtr<ScrollBar> m_pVScroll;
+ VclPtr<ScrollBar> m_pHScroll;
+ VclPtr<ScrollBarBox> m_aScrollBarBox;
+ Size maScrollArea;
+ bool mbHasHoriBar;
+ bool mbHasVertBar;
+ Point mnScrollPos;
+ long mnScrWidth;
+ enum ScrollBarVisibility { None, Vert, Hori, Both };
+ ScrollBarVisibility maScrollVis;
public:
explicit TabPage( vcl::Window* pParent, WinBits nStyle = 0 );
virtual ~TabPage() override;
+ virtual void dispose() override;
virtual void Paint( vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect ) override;
virtual void Draw( OutputDevice* pDev, const Point& rPos, DrawFlags nFlags ) override;
@@ -48,6 +65,16 @@ public:
virtual void SetPosPixel(const Point& rNewPos) override;
virtual void SetSizePixel(const Size& rNewSize) override;
virtual Size GetOptimalSize() const override;
+
+ // for scrollable tabpage
+ 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();
};
#endif // INCLUDED_VCL_TABPAGE_HXX