1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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/.
10 #ifndef INCLUDED_CHART2_SOURCE_CONTROLLER_SIDEBAR_CHARTLINEPANEL_HXX
11 #define INCLUDED_CHART2_SOURCE_CONTROLLER_SIDEBAR_CHARTLINEPANEL_HXX
13 #include <vcl/ctrl.hxx>
14 #include <sfx2/sidebar/ControllerItem.hxx>
15 #include <sfx2/sidebar/SidebarModelUpdate.hxx>
16 #include <svx/xgrad.hxx>
17 #include <svx/itemwin.hxx>
18 #include <svx/xfillit0.hxx>
19 #include <svx/xflclit.hxx>
20 #include <svx/xflgrit.hxx>
21 #include <svx/xflhtit.hxx>
22 #include <svx/xbtmpit.hxx>
23 #include <svx/drawitem.hxx>
24 #include <svx/sidebar/PanelLayout.hxx>
25 #include <svl/intitem.hxx>
26 #include <com/sun/star/ui/XUIElement.hpp>
28 #include <svx/sidebar/LinePropertyPanelBase.hxx>
30 #include "ChartSidebarModifyListener.hxx"
31 #include "ChartSidebarSelectionListener.hxx"
32 #include "ChartColorWrapper.hxx"
34 class XFillFloatTransparenceItem
;
35 class XFillTransparenceItem
;
37 class XFillGradientItem
;
40 class XFillBitmapItem
;
44 class ChartController
;
48 class ChartLinePanel
: public svx::sidebar::LinePropertyPanelBase
,
49 public sfx2::sidebar::SidebarModelUpdate
,
50 public ChartSidebarModifyListenerParent
,
51 public ChartSidebarSelectionListenerParent
54 static VclPtr
<vcl::Window
> Create(
56 const css::uno::Reference
<css::frame::XFrame
>& rxFrame
,
57 ChartController
* pController
);
59 // constructor/destructor
62 const css::uno::Reference
<css::frame::XFrame
>& rxFrame
,
63 ChartController
* pController
);
65 virtual ~ChartLinePanel() override
;
67 virtual void updateData() override
;
68 virtual void modelInvalid() override
;
70 virtual void selectionChanged(bool bCorrectType
) override
;
71 virtual void SelectionInvalid() override
;
73 virtual void dispose() override
;
75 virtual void updateModel(css::uno::Reference
<css::frame::XModel
> xModel
) override
;
77 virtual void setLineWidth(const XLineWidthItem
& rItem
) override
;
81 virtual void setLineStyle(const XLineStyleItem
& rItem
) override
;
82 virtual void setLineDash(const XLineDashItem
& rItem
) override
;
83 virtual void setLineEndStyle(const XLineEndItem
* pItem
) override
;
84 virtual void setLineStartStyle(const XLineStartItem
* pItem
) override
;
85 virtual void setLineTransparency(const XLineTransparenceItem
& rItem
) override
;
86 virtual void setLineJoint(const XLineJointItem
* pItem
) override
;
87 virtual void setLineCap(const XLineCapItem
* pItem
) override
;
91 css::uno::Reference
<css::frame::XModel
> mxModel
;
92 css::uno::Reference
<css::util::XModifyListener
> mxListener
;
93 rtl::Reference
<ChartSidebarSelectionListener
> mxSelectionListener
;
99 ChartColorWrapper maLineColorWrapper
;
102 } } // end of namespace svx::sidebar
106 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */