1*facb16e7SArmin Le Grand /**************************************************************
2*facb16e7SArmin Le Grand  *
3*facb16e7SArmin Le Grand  * Licensed to the Apache Software Foundation (ASF) under one
4*facb16e7SArmin Le Grand  * or more contributor license agreements.  See the NOTICE file
5*facb16e7SArmin Le Grand  * distributed with this work for additional information
6*facb16e7SArmin Le Grand  * regarding copyright ownership.  The ASF licenses this file
7*facb16e7SArmin Le Grand  * to you under the Apache License, Version 2.0 (the
8*facb16e7SArmin Le Grand  * "License"); you may not use this file except in compliance
9*facb16e7SArmin Le Grand  * with the License.  You may obtain a copy of the License at
10*facb16e7SArmin Le Grand  *
11*facb16e7SArmin Le Grand  *   http://www.apache.org/licenses/LICENSE-2.0
12*facb16e7SArmin Le Grand  *
13*facb16e7SArmin Le Grand  * Unless required by applicable law or agreed to in writing,
14*facb16e7SArmin Le Grand  * software distributed under the License is distributed on an
15*facb16e7SArmin Le Grand  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*facb16e7SArmin Le Grand  * KIND, either express or implied.  See the License for the
17*facb16e7SArmin Le Grand  * specific language governing permissions and limitations
18*facb16e7SArmin Le Grand  * under the License.
19*facb16e7SArmin Le Grand  *
20*facb16e7SArmin Le Grand  *************************************************************/
21*facb16e7SArmin Le Grand 
22*facb16e7SArmin Le Grand #ifndef SC_SIDEBAR_CELL_LINE_STYLE_CONTROL_HXX
23*facb16e7SArmin Le Grand #define SC_SIDEBAR_CELL_LINE_STYLE_CONTROL_HXX
24*facb16e7SArmin Le Grand 
25*facb16e7SArmin Le Grand #include <svx/sidebar/PopupControl.hxx>
26*facb16e7SArmin Le Grand #include <vcl/button.hxx>
27*facb16e7SArmin Le Grand #include <CellLineStyleValueSet.hxx>
28*facb16e7SArmin Le Grand 
29*facb16e7SArmin Le Grand namespace sc { namespace sidebar {
30*facb16e7SArmin Le Grand 
31*facb16e7SArmin Le Grand class CellAppearancePropertyPanel;
32*facb16e7SArmin Le Grand 
33*facb16e7SArmin Le Grand class CellLineStyleControl : public svx::sidebar::PopupControl
34*facb16e7SArmin Le Grand {
35*facb16e7SArmin Le Grand private:
36*facb16e7SArmin Le Grand     CellAppearancePropertyPanel&       mrCellAppearancePropertyPanel;
37*facb16e7SArmin Le Grand     PushButton                         maPushButtonMoreOptions;
38*facb16e7SArmin Le Grand     CellLineStyleValueSet              maCellLineStyleValueSet;
39*facb16e7SArmin Le Grand     XubString*                         mpStr;
40*facb16e7SArmin Le Grand 
41*facb16e7SArmin Le Grand     /// bitfield
42*facb16e7SArmin Le Grand     bool                               mbVSfocus : 1;
43*facb16e7SArmin Le Grand 
44*facb16e7SArmin Le Grand     void Initialize();
45*facb16e7SArmin Le Grand     void SetAllNoSel();
46*facb16e7SArmin Le Grand 
47*facb16e7SArmin Le Grand     DECL_LINK(VSSelectHdl, void*);
48*facb16e7SArmin Le Grand     DECL_LINK(PBClickHdl, PushButton*);
49*facb16e7SArmin Le Grand 
50*facb16e7SArmin Le Grand public:
51*facb16e7SArmin Le Grand     CellLineStyleControl(Window* pParent, CellAppearancePropertyPanel& rPanel);
52*facb16e7SArmin Le Grand     virtual ~CellLineStyleControl(void);
53*facb16e7SArmin Le Grand 
54*facb16e7SArmin Le Grand     void GetFocus();
55*facb16e7SArmin Le Grand     void SetLineStyleSelect(sal_uInt16 out, sal_uInt16 in, sal_uInt16 dis);
56*facb16e7SArmin Le Grand 
57*facb16e7SArmin Le Grand     ValueSet& GetValueSet()
58*facb16e7SArmin Le Grand     {
59*facb16e7SArmin Le Grand         return maCellLineStyleValueSet;
60*facb16e7SArmin Le Grand     }
61*facb16e7SArmin Le Grand 
62*facb16e7SArmin Le Grand     Control& GetPushButton()
63*facb16e7SArmin Le Grand     {
64*facb16e7SArmin Le Grand         return maPushButtonMoreOptions;
65*facb16e7SArmin Le Grand     }
66*facb16e7SArmin Le Grand };
67*facb16e7SArmin Le Grand 
68*facb16e7SArmin Le Grand } } // end of namespace svx::sidebar
69*facb16e7SArmin Le Grand 
70*facb16e7SArmin Le Grand #endif // SC_SIDEBAR_CELL_LINE_STYLE_CONTROL_HXX
71*facb16e7SArmin Le Grand 
72*facb16e7SArmin Le Grand // eof
73