1*721f296aSOliver-Rainer Wittmann /**************************************************************
2*721f296aSOliver-Rainer Wittmann *
3*721f296aSOliver-Rainer Wittmann * Licensed to the Apache Software Foundation (ASF) under one
4*721f296aSOliver-Rainer Wittmann * or more contributor license agreements.  See the NOTICE file
5*721f296aSOliver-Rainer Wittmann * distributed with this work for additional information
6*721f296aSOliver-Rainer Wittmann * regarding copyright ownership.  The ASF licenses this file
7*721f296aSOliver-Rainer Wittmann * to you under the Apache License, Version 2.0 (the
8*721f296aSOliver-Rainer Wittmann * "License"); you may not use this file except in compliance
9*721f296aSOliver-Rainer Wittmann * with the License.  You may obtain a copy of the License at
10*721f296aSOliver-Rainer Wittmann *
11*721f296aSOliver-Rainer Wittmann *   http://www.apache.org/licenses/LICENSE-2.0
12*721f296aSOliver-Rainer Wittmann *
13*721f296aSOliver-Rainer Wittmann * Unless required by applicable law or agreed to in writing,
14*721f296aSOliver-Rainer Wittmann * software distributed under the License is distributed on an
15*721f296aSOliver-Rainer Wittmann * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*721f296aSOliver-Rainer Wittmann * KIND, either express or implied.  See the License for the
17*721f296aSOliver-Rainer Wittmann * specific language governing permissions and limitations
18*721f296aSOliver-Rainer Wittmann * under the License.
19*721f296aSOliver-Rainer Wittmann *
20*721f296aSOliver-Rainer Wittmann *************************************************************/
21*721f296aSOliver-Rainer Wittmann 
22*721f296aSOliver-Rainer Wittmann #ifndef SW_SIDEBAR_WRAP_PROPERTY_PANEL_HXX
23*721f296aSOliver-Rainer Wittmann #define SW_SIDEBAR_WRAP_PROPERTY_PANEL_HXX
24*721f296aSOliver-Rainer Wittmann 
25*721f296aSOliver-Rainer Wittmann #include <vcl/button.hxx>
26*721f296aSOliver-Rainer Wittmann #include <vcl/image.hxx>
27*721f296aSOliver-Rainer Wittmann 
28*721f296aSOliver-Rainer Wittmann #include <sfx2/sidebar/ControllerItem.hxx>
29*721f296aSOliver-Rainer Wittmann #include <com/sun/star/frame/XFrame.hpp>
30*721f296aSOliver-Rainer Wittmann 
31*721f296aSOliver-Rainer Wittmann #include <boost/scoped_ptr.hpp>
32*721f296aSOliver-Rainer Wittmann 
33*721f296aSOliver-Rainer Wittmann 
34*721f296aSOliver-Rainer Wittmann namespace sw { namespace sidebar {
35*721f296aSOliver-Rainer Wittmann 
36*721f296aSOliver-Rainer Wittmann     class WrapPropertyPanel
37*721f296aSOliver-Rainer Wittmann         : public Control
38*721f296aSOliver-Rainer Wittmann         , public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
39*721f296aSOliver-Rainer Wittmann     {
40*721f296aSOliver-Rainer Wittmann     public:
41*721f296aSOliver-Rainer Wittmann         static WrapPropertyPanel* Create(
42*721f296aSOliver-Rainer Wittmann             Window* pParent,
43*721f296aSOliver-Rainer Wittmann             const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame>& rxFrame,
44*721f296aSOliver-Rainer Wittmann             SfxBindings* pBindings );
45*721f296aSOliver-Rainer Wittmann 
46*721f296aSOliver-Rainer Wittmann         // interface of ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
47*721f296aSOliver-Rainer Wittmann         virtual void NotifyItemUpdate(
48*721f296aSOliver-Rainer Wittmann             const sal_uInt16 nSId,
49*721f296aSOliver-Rainer Wittmann             const SfxItemState eState,
50*721f296aSOliver-Rainer Wittmann             const SfxPoolItem* pState );
51*721f296aSOliver-Rainer Wittmann 
52*721f296aSOliver-Rainer Wittmann     private:
53*721f296aSOliver-Rainer Wittmann         WrapPropertyPanel(
54*721f296aSOliver-Rainer Wittmann             Window* pParent,
55*721f296aSOliver-Rainer Wittmann             const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rxFrame,
56*721f296aSOliver-Rainer Wittmann             SfxBindings* pBindings );
57*721f296aSOliver-Rainer Wittmann 
58*721f296aSOliver-Rainer Wittmann         virtual ~WrapPropertyPanel();
59*721f296aSOliver-Rainer Wittmann 
60*721f296aSOliver-Rainer Wittmann         ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > mxFrame;
61*721f296aSOliver-Rainer Wittmann         SfxBindings* mpBindings;
62*721f296aSOliver-Rainer Wittmann 
63*721f296aSOliver-Rainer Wittmann         ::boost::scoped_ptr<ImageRadioButton> mpRBNoWrap;
64*721f296aSOliver-Rainer Wittmann         ::boost::scoped_ptr<ImageRadioButton> mpRBWrapLeft;
65*721f296aSOliver-Rainer Wittmann         ::boost::scoped_ptr<ImageRadioButton> mpRBWrapRight;
66*721f296aSOliver-Rainer Wittmann         ::boost::scoped_ptr<ImageRadioButton> mpRBWrapParallel;
67*721f296aSOliver-Rainer Wittmann         ::boost::scoped_ptr<ImageRadioButton> mpRBWrapThrough;
68*721f296aSOliver-Rainer Wittmann         ::boost::scoped_ptr<ImageRadioButton> mpRBIdealWrap;
69*721f296aSOliver-Rainer Wittmann 
70*721f296aSOliver-Rainer Wittmann         //Image resource.
71*721f296aSOliver-Rainer Wittmann         ImageList aWrapIL;
72*721f296aSOliver-Rainer Wittmann         ImageList aWrapILH;
73*721f296aSOliver-Rainer Wittmann 
74*721f296aSOliver-Rainer Wittmann         //Controler Items==================================
75*721f296aSOliver-Rainer Wittmann         ::sfx2::sidebar::ControllerItem maSwNoWrapControl;
76*721f296aSOliver-Rainer Wittmann         ::sfx2::sidebar::ControllerItem maSwWrapLeftControl;
77*721f296aSOliver-Rainer Wittmann         ::sfx2::sidebar::ControllerItem maSwWrapRightControl;
78*721f296aSOliver-Rainer Wittmann         ::sfx2::sidebar::ControllerItem maSwWrapParallelControl;
79*721f296aSOliver-Rainer Wittmann         ::sfx2::sidebar::ControllerItem maSwWrapThroughControl;
80*721f296aSOliver-Rainer Wittmann         ::sfx2::sidebar::ControllerItem maSwWrapIdealControl;
81*721f296aSOliver-Rainer Wittmann 
82*721f296aSOliver-Rainer Wittmann         void Initialize();
83*721f296aSOliver-Rainer Wittmann 
84*721f296aSOliver-Rainer Wittmann         DECL_LINK(WrapTypeHdl, void*);
85*721f296aSOliver-Rainer Wittmann     };
86*721f296aSOliver-Rainer Wittmann 
87*721f296aSOliver-Rainer Wittmann } } // end of namespace ::sw::sidebar
88*721f296aSOliver-Rainer Wittmann 
89*721f296aSOliver-Rainer Wittmann #endif
90