vcl: allow for overriding the default PDF rendering resolution
[LibreOffice.git] / chart2 / source / controller / sidebar / ChartLinePanel.hxx
blobedc01f1e55379a0ff5c4b0386006719f8bbfe97d
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
10 #ifndef INCLUDED_CHART2_SOURCE_CONTROLLER_SIDEBAR_CHARTLINEPANEL_HXX
11 #define INCLUDED_CHART2_SOURCE_CONTROLLER_SIDEBAR_CHARTLINEPANEL_HXX
13 #include <sfx2/sidebar/SidebarModelUpdate.hxx>
14 #include <svx/sidebar/LinePropertyPanelBase.hxx>
16 #include "ChartSidebarModifyListener.hxx"
17 #include "ChartSidebarSelectionListener.hxx"
18 #include "ChartColorWrapper.hxx"
20 class XLineCapItem;
21 class XLineDashItem;
22 class XLineEndItem;
23 class XLineJointItem;
24 class XLineStartItem;
25 class XLineStyleItem;
26 class XLineTransparenceItem;
27 class XLineWidthItem;
29 namespace chart {
31 class ChartController;
33 namespace sidebar {
35 class ChartLinePanel : public svx::sidebar::LinePropertyPanelBase,
36 public sfx2::sidebar::SidebarModelUpdate,
37 public ChartSidebarModifyListenerParent,
38 public ChartSidebarSelectionListenerParent
40 public:
41 static VclPtr<vcl::Window> Create(
42 vcl::Window* pParent,
43 const css::uno::Reference<css::frame::XFrame>& rxFrame,
44 ChartController* pController);
46 // constructor/destructor
47 ChartLinePanel(
48 vcl::Window* pParent,
49 const css::uno::Reference<css::frame::XFrame>& rxFrame,
50 ChartController* pController);
52 virtual ~ChartLinePanel() override;
54 virtual void updateData() override;
55 virtual void modelInvalid() override;
57 virtual void selectionChanged(bool bCorrectType) override;
59 virtual void dispose() override;
61 virtual void updateModel(css::uno::Reference<css::frame::XModel> xModel) override;
63 virtual void setLineWidth(const XLineWidthItem& rItem) override;
65 protected:
67 virtual void setLineStyle(const XLineStyleItem& rItem) override;
68 virtual void setLineDash(const XLineDashItem& rItem) override;
69 virtual void setLineEndStyle(const XLineEndItem* pItem) override;
70 virtual void setLineStartStyle(const XLineStartItem* pItem) override;
71 virtual void setLineTransparency(const XLineTransparenceItem& rItem) override;
72 virtual void setLineJoint(const XLineJointItem* pItem) override;
73 virtual void setLineCap(const XLineCapItem* pItem) override;
75 virtual void updateLineWidth(bool bDisabled, bool bSetOrDefault, const SfxPoolItem* pItem) override;
77 private:
79 css::uno::Reference<css::frame::XModel> mxModel;
80 css::uno::Reference<css::util::XModifyListener> mxListener;
81 rtl::Reference<ChartSidebarSelectionListener> mxSelectionListener;
83 void Initialize();
85 bool mbUpdate;
86 bool mbModelValid;
87 ChartColorWrapper maLineColorWrapper;
90 } } // end of namespace svx::sidebar
92 #endif
94 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */