summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/vcl/salnativewidgets.hxx26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/vcl/salnativewidgets.hxx b/include/vcl/salnativewidgets.hxx
index 03d9a0eee00e..2a67ceb47b24 100644
--- a/include/vcl/salnativewidgets.hxx
+++ b/include/vcl/salnativewidgets.hxx
@@ -181,6 +181,9 @@ enum class ControlPart
// hardcoded 2 pixel overlap between adjacent tabs
TabsDrawRtl = 3000,
+// Qt doesn't have a separate header to draw
+ TabPaneWithHeader = 3001,
+
// For themes that do not want to have the focus
// rectangle part drawn by VCL but take care of the
// whole inner control part by themselves
@@ -340,6 +343,29 @@ class VCL_DLLPUBLIC SliderValue : public ImplControlValue
SliderValue & operator =(SliderValue &&) = delete; // due to ImplControlValue
};
+class VCL_DLLPUBLIC TabPaneValue : public ImplControlValue
+{
+public:
+ tools::Rectangle m_aTabHeaderRect;
+ tools::Rectangle m_aSelectedTabRect;
+ // increased tab size, so it'll overlab the frame rect when draing
+ // static value, as there is currently no sane way to return additional data
+ static int m_nOverlap;
+
+ TabPaneValue(const tools::Rectangle &rTabHeaderRect, const tools::Rectangle &rSelectedTabRect)
+ : ImplControlValue(ControlType::TabPane, 0)
+ , m_aTabHeaderRect(rTabHeaderRect)
+ , m_aSelectedTabRect(rSelectedTabRect)
+ {
+ }
+ TabPaneValue* clone() const override;
+
+ TabPaneValue(TabPaneValue const &) = default;
+ TabPaneValue(TabPaneValue &&) = default;
+ TabPaneValue & operator =(TabPaneValue const &) = delete;
+ TabPaneValue & operator =(TabPaneValue &&) = delete;
+};
+
/* TabitemValue:
*
* Value container for tabitems.