1*b1cdbd2cSJim Jagielski /**************************************************************
2*b1cdbd2cSJim Jagielski  *
3*b1cdbd2cSJim Jagielski  * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski  * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski  * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski  * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski  * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski  * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski  * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski  *
11*b1cdbd2cSJim Jagielski  *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski  *
13*b1cdbd2cSJim Jagielski  * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski  * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski  * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski  * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski  * under the License.
19*b1cdbd2cSJim Jagielski  *
20*b1cdbd2cSJim Jagielski  *************************************************************/
21*b1cdbd2cSJim Jagielski 
22*b1cdbd2cSJim Jagielski #ifndef SVX_SIDEBAR_PARA_PROPERTY_PANEL_HXX
23*b1cdbd2cSJim Jagielski #define SVX_SIDEBAR_PARA_PROPERTY_PANEL_HXX
24*b1cdbd2cSJim Jagielski 
25*b1cdbd2cSJim Jagielski #include <vcl/ctrl.hxx>
26*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/ControllerItem.hxx>
27*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/IContextChangeReceiver.hxx>
28*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/GridLayouter.hxx>
29*b1cdbd2cSJim Jagielski #include <editeng/lspcitem.hxx>
30*b1cdbd2cSJim Jagielski #include <svtools/ctrlbox.hxx>
31*b1cdbd2cSJim Jagielski #include <svx/tbxcolorupdate.hxx>
32*b1cdbd2cSJim Jagielski #include <svx/relfld.hxx>
33*b1cdbd2cSJim Jagielski #include <editeng/svxenum.hxx>
34*b1cdbd2cSJim Jagielski #include <editeng/fhgtitem.hxx>
35*b1cdbd2cSJim Jagielski 
36*b1cdbd2cSJim Jagielski #include <com/sun/star/frame/XFrame.hpp>
37*b1cdbd2cSJim Jagielski #include <com/sun/star/ui/XSidebar.hpp>
38*b1cdbd2cSJim Jagielski 
39*b1cdbd2cSJim Jagielski #include <boost/scoped_ptr.hpp>
40*b1cdbd2cSJim Jagielski 
41*b1cdbd2cSJim Jagielski #include <svx/sidebar/ColorPopup.hxx>
42*b1cdbd2cSJim Jagielski #include <vcl/vclenum.hxx>
43*b1cdbd2cSJim Jagielski #include <vcl/fixed.hxx>
44*b1cdbd2cSJim Jagielski #include <svl/poolitem.hxx>
45*b1cdbd2cSJim Jagielski #include <tools/fldunit.hxx>
46*b1cdbd2cSJim Jagielski 
47*b1cdbd2cSJim Jagielski #include "ParaBulletsPopup.hxx"
48*b1cdbd2cSJim Jagielski #include "ParaNumberingPopup.hxx"
49*b1cdbd2cSJim Jagielski #include "ParaLineSpacingPopup.hxx"
50*b1cdbd2cSJim Jagielski 
51*b1cdbd2cSJim Jagielski class FloatingWindow;
52*b1cdbd2cSJim Jagielski class ToolBox;
53*b1cdbd2cSJim Jagielski 
54*b1cdbd2cSJim Jagielski namespace css = ::com::sun::star;
55*b1cdbd2cSJim Jagielski namespace cssu = ::com::sun::star::uno;
56*b1cdbd2cSJim Jagielski 
57*b1cdbd2cSJim Jagielski 
58*b1cdbd2cSJim Jagielski namespace svx { namespace sidebar {
59*b1cdbd2cSJim Jagielski 
60*b1cdbd2cSJim Jagielski class PopupControl;
61*b1cdbd2cSJim Jagielski class PopupContainer;
62*b1cdbd2cSJim Jagielski 
63*b1cdbd2cSJim Jagielski class ParaPropertyPanel
64*b1cdbd2cSJim Jagielski     : public Control,
65*b1cdbd2cSJim Jagielski       public ::sfx2::sidebar::IContextChangeReceiver,
66*b1cdbd2cSJim Jagielski       public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
67*b1cdbd2cSJim Jagielski {
68*b1cdbd2cSJim Jagielski public:
69*b1cdbd2cSJim Jagielski     static ParaPropertyPanel* Create (
70*b1cdbd2cSJim Jagielski         Window* pParent,
71*b1cdbd2cSJim Jagielski         const cssu::Reference<css::frame::XFrame>& rxFrame,
72*b1cdbd2cSJim Jagielski         SfxBindings* pBindings,
73*b1cdbd2cSJim Jagielski         const cssu::Reference<css::ui::XSidebar>& rxSidebar);
74*b1cdbd2cSJim Jagielski 
75*b1cdbd2cSJim Jagielski 	virtual void DataChanged (const DataChangedEvent& rEvent);
76*b1cdbd2cSJim Jagielski 	SfxBindings* GetBindings();
77*b1cdbd2cSJim Jagielski 
78*b1cdbd2cSJim Jagielski 	virtual void HandleContextChange (
79*b1cdbd2cSJim Jagielski 	    const ::sfx2::sidebar::EnumContext aContext);
80*b1cdbd2cSJim Jagielski 
81*b1cdbd2cSJim Jagielski 	virtual void NotifyItemUpdate(
82*b1cdbd2cSJim Jagielski 	    const sal_uInt16 nSId,
83*b1cdbd2cSJim Jagielski 	    const SfxItemState eState,
84*b1cdbd2cSJim Jagielski 	    const SfxPoolItem* pState,
85*b1cdbd2cSJim Jagielski         const bool bIsEnabled);
86*b1cdbd2cSJim Jagielski 
87*b1cdbd2cSJim Jagielski 	void ShowMenu (void);
GetBulletTypeIndex()88*b1cdbd2cSJim Jagielski 	sal_uInt16 GetBulletTypeIndex(){ return mnBulletTypeIndex; }
GetNumTypeIndex()89*b1cdbd2cSJim Jagielski 	sal_uInt16 GetNumTypeIndex(){ return mnNumTypeIndex; }
90*b1cdbd2cSJim Jagielski 	FieldUnit GetCurrentUnit( SfxItemState eState, const SfxPoolItem* pState );
91*b1cdbd2cSJim Jagielski 
92*b1cdbd2cSJim Jagielski 	void EndSpacingPopupMode (void);
93*b1cdbd2cSJim Jagielski 	void EndBulletsPopupMode (void);
94*b1cdbd2cSJim Jagielski 	void EndNumberingPopupMode (void);
95*b1cdbd2cSJim Jagielski 
96*b1cdbd2cSJim Jagielski private:
97*b1cdbd2cSJim Jagielski 	/**********************************************************
98*b1cdbd2cSJim Jagielski 	 **
99*b1cdbd2cSJim Jagielski 	 ** UI controls
100*b1cdbd2cSJim Jagielski 	 **
101*b1cdbd2cSJim Jagielski 	***********************************************************/
102*b1cdbd2cSJim Jagielski 	//Alignment
103*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpAlignToolBoxBackground;
104*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpAlignToolBox;
105*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpTBxVertAlignBackground;
106*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpTBxVertAlign;
107*b1cdbd2cSJim Jagielski 	//NumBullet&Backcolor
108*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpTBxNumBulletBackground;
109*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpTBxNumBullet;
110*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpTBxBackColorBackground;
111*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpTBxBackColor;
112*b1cdbd2cSJim Jagielski 	//Paragraph spacing
113*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<FixedText>			mpFTUL;
114*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpTbxUL_IncDecBackground;
115*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpTbxUL_IncDec;
116*b1cdbd2cSJim Jagielski     ::boost::scoped_ptr<SvxRelativeField>	mpTopDist;
117*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<SvxRelativeField>	mpBottomDist;
118*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpLineSPTbxBackground;
119*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpLineSPTbx;
120*b1cdbd2cSJim Jagielski     ::boost::scoped_ptr<FixedText>			mpFTIndent;
121*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpTbxIndent_IncDecBackground;
122*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpTbxIndent_IncDec;
123*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<Window> 			mpTbxProDemoteBackground;
124*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<ToolBox>			mpTbxProDemote;
125*b1cdbd2cSJim Jagielski     ::boost::scoped_ptr<SvxRelativeField>	mpLeftIndent;
126*b1cdbd2cSJim Jagielski     ::boost::scoped_ptr<SvxRelativeField>	mpRightIndent;
127*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr<SvxRelativeField>	mpFLineIndent;
128*b1cdbd2cSJim Jagielski 
129*b1cdbd2cSJim Jagielski 	::boost::scoped_ptr< ::svx::ToolboxButtonColorUpdater > mpColorUpdater;
130*b1cdbd2cSJim Jagielski 
131*b1cdbd2cSJim Jagielski 	/**********************************************************
132*b1cdbd2cSJim Jagielski 	 **
133*b1cdbd2cSJim Jagielski 	 ** Resources
134*b1cdbd2cSJim Jagielski 	 **
135*b1cdbd2cSJim Jagielski 	***********************************************************/
136*b1cdbd2cSJim Jagielski 	FixedImage  maFISpace1;
137*b1cdbd2cSJim Jagielski 	FixedImage  maFISpace2;
138*b1cdbd2cSJim Jagielski 	FixedImage  maFIndent1;
139*b1cdbd2cSJim Jagielski 	FixedImage  maFIndent2;
140*b1cdbd2cSJim Jagielski 	FixedImage  maFIndent3;
141*b1cdbd2cSJim Jagielski 
142*b1cdbd2cSJim Jagielski 	Image  maSpace1;
143*b1cdbd2cSJim Jagielski 	Image  maSpace2;
144*b1cdbd2cSJim Jagielski 	Image  maSpace3;
145*b1cdbd2cSJim Jagielski 	Image  maIndent1;
146*b1cdbd2cSJim Jagielski 	Image  maIndent2;
147*b1cdbd2cSJim Jagielski 	Image  maIndent3;
148*b1cdbd2cSJim Jagielski 
149*b1cdbd2cSJim Jagielski 	Image  maIndHang;
150*b1cdbd2cSJim Jagielski 
151*b1cdbd2cSJim Jagielski 	ImageList	maNumBImageList;
152*b1cdbd2cSJim Jagielski 	ImageList	maNumBImageListH;
153*b1cdbd2cSJim Jagielski 	ImageList	maNumBImageListRTL;
154*b1cdbd2cSJim Jagielski 	Image		maImgBackColorHigh;
155*b1cdbd2cSJim Jagielski 	Image		maImgBackColor;
156*b1cdbd2cSJim Jagielski 
157*b1cdbd2cSJim Jagielski 	/****************************************************************
158*b1cdbd2cSJim Jagielski 	**
159*b1cdbd2cSJim Jagielski 	** Data Member
160*b1cdbd2cSJim Jagielski 	**
161*b1cdbd2cSJim Jagielski 	*****************************************************************/
162*b1cdbd2cSJim Jagielski 	long				maTxtLeft;
163*b1cdbd2cSJim Jagielski 	//Line spacing
164*b1cdbd2cSJim Jagielski 	SvxLineSpacingItem	*mpLnSPItem;
165*b1cdbd2cSJim Jagielski 	SfxItemState			meLnSpState;
166*b1cdbd2cSJim Jagielski 	bool					mbOutLineLeft;
167*b1cdbd2cSJim Jagielski 	bool					mbOutLineRight;
168*b1cdbd2cSJim Jagielski 	long					maUpper;
169*b1cdbd2cSJim Jagielski 	long					maLower;
170*b1cdbd2cSJim Jagielski 
171*b1cdbd2cSJim Jagielski 	sal_uInt16			mnBulletTypeIndex;
172*b1cdbd2cSJim Jagielski 	sal_uInt16			mnNumTypeIndex;
173*b1cdbd2cSJim Jagielski 	Color				maColor;
174*b1cdbd2cSJim Jagielski 	bool					mbColorAvailable;
175*b1cdbd2cSJim Jagielski 	FieldUnit						m_eMetricUnit;
176*b1cdbd2cSJim Jagielski 	FieldUnit						m_last_eMetricUnit;
177*b1cdbd2cSJim Jagielski 	SfxMapUnit                      m_eLRSpaceUnit;
178*b1cdbd2cSJim Jagielski 	SfxMapUnit                      m_eULSpaceUnit;
179*b1cdbd2cSJim Jagielski 	/****************************************************************
180*b1cdbd2cSJim Jagielski 	**
181*b1cdbd2cSJim Jagielski 	** Controll Items
182*b1cdbd2cSJim Jagielski 	**
183*b1cdbd2cSJim Jagielski 	*****************************************************************/
184*b1cdbd2cSJim Jagielski 
185*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maLeftAlignControl;
186*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maCenterAlignControl;
187*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maRightAlignControl;
188*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maJustifyAlignControl;
189*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maLRSpaceControl;
190*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maLNSpaceControl;
191*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maULSpaceControl;
192*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maOutLineLeftControl;
193*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maOutLineRightControl;
194*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maDecIndentControl;
195*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maIncIndentControl;
196*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maVertTop;
197*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maVertCenter;
198*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maVertBottom;
199*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maBulletOnOff;
200*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maNumberOnOff;
201*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maBackColorControl;
202*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  m_aMetricCtl;
203*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maBulletNumRuleIndex;
204*b1cdbd2cSJim Jagielski 	::sfx2::sidebar::ControllerItem  maNumNumRuleIndex;
205*b1cdbd2cSJim Jagielski 
206*b1cdbd2cSJim Jagielski     cssu::Reference<css::frame::XFrame> mxFrame;
207*b1cdbd2cSJim Jagielski     ::sfx2::sidebar::EnumContext maContext;
208*b1cdbd2cSJim Jagielski     SfxBindings* mpBindings;
209*b1cdbd2cSJim Jagielski 	ParaLineSpacingPopup maLineSpacePopup;
210*b1cdbd2cSJim Jagielski 	ParaBulletsPopup maBulletsPopup;
211*b1cdbd2cSJim Jagielski 	ParaNumberingPopup maNumberingPopup;
212*b1cdbd2cSJim Jagielski 	ColorPopup maBGColorPopup;
213*b1cdbd2cSJim Jagielski     cssu::Reference<css::ui::XSidebar> mxSidebar;
214*b1cdbd2cSJim Jagielski     ::sfx2::sidebar::GridLayouter maLayouter;
215*b1cdbd2cSJim Jagielski 
216*b1cdbd2cSJim Jagielski     ParaPropertyPanel (
217*b1cdbd2cSJim Jagielski         Window* pParent,
218*b1cdbd2cSJim Jagielski         const cssu::Reference<css::frame::XFrame>& rxFrame,
219*b1cdbd2cSJim Jagielski         SfxBindings* pBindings,
220*b1cdbd2cSJim Jagielski         const cssu::Reference<css::ui::XSidebar>& rxSidebar);
221*b1cdbd2cSJim Jagielski 	virtual ~ParaPropertyPanel (void);
222*b1cdbd2cSJim Jagielski 
223*b1cdbd2cSJim Jagielski 	void InitImageList(::boost::scoped_ptr<ToolBox>& rTbx, ImageList& rImglst, ImageList& rImgHlst);
224*b1cdbd2cSJim Jagielski 
225*b1cdbd2cSJim Jagielski 	DECL_LINK(AlignStyleModifyHdl_Impl, ToolBox*);
226*b1cdbd2cSJim Jagielski 	DECL_LINK(VertTbxSelectHandler, ToolBox*);
227*b1cdbd2cSJim Jagielski 	DECL_LINK(NumBTbxSelectHandler, ToolBox*);
228*b1cdbd2cSJim Jagielski 	DECL_LINK(ModifyIndentHdl_Impl, SvxRelativeField*);
229*b1cdbd2cSJim Jagielski 	DECL_LINK(ClickIndent_IncDec_Hdl_Impl, ToolBox*);
230*b1cdbd2cSJim Jagielski 	DECL_LINK(ClickProDemote_Hdl_Impl, ToolBox*);
231*b1cdbd2cSJim Jagielski 	DECL_LINK(ULSpaceHdl_Impl, SvxRelativeField*);
232*b1cdbd2cSJim Jagielski 	DECL_LINK(ClickUL_IncDec_Hdl_Impl, ToolBox*);
233*b1cdbd2cSJim Jagielski 	DECL_LINK(ImplPopupModeEndHdl, FloatingWindow* );
234*b1cdbd2cSJim Jagielski 
235*b1cdbd2cSJim Jagielski 	void VertStateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState);
236*b1cdbd2cSJim Jagielski 	void ParaBKGStateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState);
237*b1cdbd2cSJim Jagielski 	void StateChangedAlignmentImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
238*b1cdbd2cSJim Jagielski 	void StateChangedIndentImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
239*b1cdbd2cSJim Jagielski 	void StateChangedLnSPImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
240*b1cdbd2cSJim Jagielski 	void StateChangedULImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
241*b1cdbd2cSJim Jagielski 	void StateChangeOutLineImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
242*b1cdbd2cSJim Jagielski 	void StateChangeIncDecImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
243*b1cdbd2cSJim Jagielski 	// Add toggle state for numbering and bullet icons
244*b1cdbd2cSJim Jagielski 	void StateChangeBulletNumImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
245*b1cdbd2cSJim Jagielski 	//Modified for Numbering&Bullets Dialog UX Enh
246*b1cdbd2cSJim Jagielski 	//Handing the transferred the num rule index data of the current selection
247*b1cdbd2cSJim Jagielski 	void StateChangeBulletNumRuleImpl( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState );
248*b1cdbd2cSJim Jagielski 
249*b1cdbd2cSJim Jagielski 	void initial();
250*b1cdbd2cSJim Jagielski 	void ReSize(bool bSize);
251*b1cdbd2cSJim Jagielski 
252*b1cdbd2cSJim Jagielski     // Inherited from vcl Window.
253*b1cdbd2cSJim Jagielski     virtual void Resize (void);
254*b1cdbd2cSJim Jagielski 
255*b1cdbd2cSJim Jagielski 	PopupControl* CreateLineSpacingControl (PopupContainer* pParent);
256*b1cdbd2cSJim Jagielski 	PopupControl* CreateBulletsPopupControl (PopupContainer* pParent);
257*b1cdbd2cSJim Jagielski 	PopupControl* CreateNumberingPopupControl (PopupContainer* pParent);
258*b1cdbd2cSJim Jagielski 	PopupControl* CreateBGColorPopupControl (PopupContainer* pParent);
259*b1cdbd2cSJim Jagielski 	DECL_LINK(ClickLineSPDropDownHdl_Impl, ToolBox*);
260*b1cdbd2cSJim Jagielski 	DECL_LINK(NumBTbxDDHandler, ToolBox*);
261*b1cdbd2cSJim Jagielski 	DECL_LINK(ToolBoxBackColorDDHandler, ToolBox *);
262*b1cdbd2cSJim Jagielski 
263*b1cdbd2cSJim Jagielski 	void InitToolBoxAlign();
264*b1cdbd2cSJim Jagielski 	void InitToolBoxVertAlign();
265*b1cdbd2cSJim Jagielski 	void InitToolBoxIndent();
266*b1cdbd2cSJim Jagielski 	void InitToolBoxBGColor();
267*b1cdbd2cSJim Jagielski 	void InitToolBoxBulletsNumbering();
268*b1cdbd2cSJim Jagielski 	void InitToolBoxSpacing();
269*b1cdbd2cSJim Jagielski 	void InitToolBoxLineSpacing();
270*b1cdbd2cSJim Jagielski 
271*b1cdbd2cSJim Jagielski 	void SetBGColor (const String& rsColorName, const Color aColor);
272*b1cdbd2cSJim Jagielski };
273*b1cdbd2cSJim Jagielski 
274*b1cdbd2cSJim Jagielski } } // end of namespace ::svx::sidebar
275*b1cdbd2cSJim Jagielski 
276*b1cdbd2cSJim Jagielski #endif
277*b1cdbd2cSJim Jagielski 
278