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 #include "precompiled_sc.hxx"
23*b1cdbd2cSJim Jagielski
24*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/ResourceDefinitions.hrc>
25*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/Theme.hxx>
26*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/ControlFactory.hxx>
27*b1cdbd2cSJim Jagielski #include <sfx2/sidebar/Layouter.hxx>
28*b1cdbd2cSJim Jagielski #include <CellAppearancePropertyPanel.hxx>
29*b1cdbd2cSJim Jagielski #include <CellAppearancePropertyPanel.hrc>
30*b1cdbd2cSJim Jagielski #include "sc.hrc"
31*b1cdbd2cSJim Jagielski #include "scresid.hxx"
32*b1cdbd2cSJim Jagielski #include <sfx2/bindings.hxx>
33*b1cdbd2cSJim Jagielski #include <sfx2/dispatch.hxx>
34*b1cdbd2cSJim Jagielski #include <vcl/fixed.hxx>
35*b1cdbd2cSJim Jagielski #include <svx/tbxcolorupdate.hxx>
36*b1cdbd2cSJim Jagielski #include <svl/eitem.hxx>
37*b1cdbd2cSJim Jagielski #include <editeng/bolnitem.hxx>
38*b1cdbd2cSJim Jagielski #include <editeng/boxitem.hxx>
39*b1cdbd2cSJim Jagielski #include <editeng/colritem.hxx>
40*b1cdbd2cSJim Jagielski #include <vcl/svapp.hxx>
41*b1cdbd2cSJim Jagielski #include <svx/sidebar/ColorControl.hxx>
42*b1cdbd2cSJim Jagielski #include <boost/bind.hpp>
43*b1cdbd2cSJim Jagielski #include <svx/sidebar/PopupContainer.hxx>
44*b1cdbd2cSJim Jagielski #include <CellLineStyleControl.hxx>
45*b1cdbd2cSJim Jagielski #include <CellLineStylePopup.hxx>
46*b1cdbd2cSJim Jagielski #include <CellBorderUpdater.hxx>
47*b1cdbd2cSJim Jagielski #include <CellBorderStyleControl.hxx>
48*b1cdbd2cSJim Jagielski #include <CellBorderStylePopup.hxx>
49*b1cdbd2cSJim Jagielski
50*b1cdbd2cSJim Jagielski using namespace css;
51*b1cdbd2cSJim Jagielski using namespace cssu;
52*b1cdbd2cSJim Jagielski using ::sfx2::sidebar::Layouter;
53*b1cdbd2cSJim Jagielski
54*b1cdbd2cSJim Jagielski
55*b1cdbd2cSJim Jagielski #define A2S(pString) (::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(pString)))
56*b1cdbd2cSJim Jagielski
57*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
58*b1cdbd2cSJim Jagielski // helpers
59*b1cdbd2cSJim Jagielski
60*b1cdbd2cSJim Jagielski namespace
61*b1cdbd2cSJim Jagielski {
GetTransparentColor(void)62*b1cdbd2cSJim Jagielski Color GetTransparentColor(void)
63*b1cdbd2cSJim Jagielski {
64*b1cdbd2cSJim Jagielski return COL_TRANSPARENT;
65*b1cdbd2cSJim Jagielski }
66*b1cdbd2cSJim Jagielski } // end of anonymous namespace
67*b1cdbd2cSJim Jagielski
68*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
69*b1cdbd2cSJim Jagielski // namespace open
70*b1cdbd2cSJim Jagielski
71*b1cdbd2cSJim Jagielski namespace sc { namespace sidebar {
72*b1cdbd2cSJim Jagielski
73*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
74*b1cdbd2cSJim Jagielski
CreateFillColorPopupControl(svx::sidebar::PopupContainer * pParent)75*b1cdbd2cSJim Jagielski svx::sidebar::PopupControl* CellAppearancePropertyPanel::CreateFillColorPopupControl(svx::sidebar::PopupContainer* pParent)
76*b1cdbd2cSJim Jagielski {
77*b1cdbd2cSJim Jagielski const ScResId aResId(VS_NOFILLCOLOR);
78*b1cdbd2cSJim Jagielski
79*b1cdbd2cSJim Jagielski return new svx::sidebar::ColorControl(
80*b1cdbd2cSJim Jagielski pParent,
81*b1cdbd2cSJim Jagielski mpBindings,
82*b1cdbd2cSJim Jagielski ScResId(RID_POPUPPANEL_CELLAPPEARANCE_FILLCOLOR),
83*b1cdbd2cSJim Jagielski ScResId(VS_FILLCOLOR),
84*b1cdbd2cSJim Jagielski ::boost::bind(GetTransparentColor),
85*b1cdbd2cSJim Jagielski ::boost::bind(&CellAppearancePropertyPanel::SetFillColor, this, _1, _2),
86*b1cdbd2cSJim Jagielski pParent,
87*b1cdbd2cSJim Jagielski &aResId);
88*b1cdbd2cSJim Jagielski }
89*b1cdbd2cSJim Jagielski
SetFillColor(const String &,const Color aColor)90*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::SetFillColor(
91*b1cdbd2cSJim Jagielski const String& /*rsColorName*/,
92*b1cdbd2cSJim Jagielski const Color aColor)
93*b1cdbd2cSJim Jagielski {
94*b1cdbd2cSJim Jagielski const SvxColorItem aColorItem(aColor, SID_BACKGROUND_COLOR);
95*b1cdbd2cSJim Jagielski mpBindings->GetDispatcher()->Execute(SID_BACKGROUND_COLOR, SFX_CALLMODE_RECORD, &aColorItem, 0L);
96*b1cdbd2cSJim Jagielski maBackColor = aColor;
97*b1cdbd2cSJim Jagielski }
98*b1cdbd2cSJim Jagielski
99*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
100*b1cdbd2cSJim Jagielski
CreateLineColorPopupControl(svx::sidebar::PopupContainer * pParent)101*b1cdbd2cSJim Jagielski svx::sidebar::PopupControl* CellAppearancePropertyPanel::CreateLineColorPopupControl(svx::sidebar::PopupContainer* pParent)
102*b1cdbd2cSJim Jagielski {
103*b1cdbd2cSJim Jagielski return new svx::sidebar::ColorControl(
104*b1cdbd2cSJim Jagielski pParent,
105*b1cdbd2cSJim Jagielski mpBindings,
106*b1cdbd2cSJim Jagielski ScResId(RID_POPUPPANEL_CELLAPPEARANCE_LINECOLOR),
107*b1cdbd2cSJim Jagielski ScResId(VS_LINECOLOR),
108*b1cdbd2cSJim Jagielski ::boost::bind(GetTransparentColor),
109*b1cdbd2cSJim Jagielski ::boost::bind(&CellAppearancePropertyPanel::SetLineColor, this, _1, _2),
110*b1cdbd2cSJim Jagielski pParent,
111*b1cdbd2cSJim Jagielski 0);
112*b1cdbd2cSJim Jagielski }
113*b1cdbd2cSJim Jagielski
SetLineColor(const String &,const Color aColor)114*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::SetLineColor(
115*b1cdbd2cSJim Jagielski const String& /*rsColorName*/,
116*b1cdbd2cSJim Jagielski const Color aColor)
117*b1cdbd2cSJim Jagielski {
118*b1cdbd2cSJim Jagielski const SvxColorItem aColorItem(aColor, SID_FRAME_LINECOLOR);
119*b1cdbd2cSJim Jagielski mpBindings->GetDispatcher()->Execute(SID_FRAME_LINECOLOR, SFX_CALLMODE_RECORD, &aColorItem, 0L);
120*b1cdbd2cSJim Jagielski maLineColor = aColor;
121*b1cdbd2cSJim Jagielski }
122*b1cdbd2cSJim Jagielski
123*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
124*b1cdbd2cSJim Jagielski
CreateCellLineStylePopupControl(svx::sidebar::PopupContainer * pParent)125*b1cdbd2cSJim Jagielski svx::sidebar::PopupControl* CellAppearancePropertyPanel::CreateCellLineStylePopupControl(svx::sidebar::PopupContainer* pParent)
126*b1cdbd2cSJim Jagielski {
127*b1cdbd2cSJim Jagielski return new CellLineStyleControl(pParent, *this);
128*b1cdbd2cSJim Jagielski }
129*b1cdbd2cSJim Jagielski
EndCellLineStylePopupMode(void)130*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::EndCellLineStylePopupMode(void)
131*b1cdbd2cSJim Jagielski {
132*b1cdbd2cSJim Jagielski if(mpCellLineStylePopup.get())
133*b1cdbd2cSJim Jagielski {
134*b1cdbd2cSJim Jagielski mpCellLineStylePopup->Hide();
135*b1cdbd2cSJim Jagielski }
136*b1cdbd2cSJim Jagielski }
137*b1cdbd2cSJim Jagielski
138*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
139*b1cdbd2cSJim Jagielski
CreateCellBorderStylePopupControl(svx::sidebar::PopupContainer * pParent)140*b1cdbd2cSJim Jagielski svx::sidebar::PopupControl* CellAppearancePropertyPanel::CreateCellBorderStylePopupControl(svx::sidebar::PopupContainer* pParent)
141*b1cdbd2cSJim Jagielski {
142*b1cdbd2cSJim Jagielski return new CellBorderStyleControl(pParent, *this);
143*b1cdbd2cSJim Jagielski }
144*b1cdbd2cSJim Jagielski
EndCellBorderStylePopupMode(void)145*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::EndCellBorderStylePopupMode(void)
146*b1cdbd2cSJim Jagielski {
147*b1cdbd2cSJim Jagielski if(mpCellBorderStylePopup.get())
148*b1cdbd2cSJim Jagielski {
149*b1cdbd2cSJim Jagielski mpCellBorderStylePopup->Hide();
150*b1cdbd2cSJim Jagielski }
151*b1cdbd2cSJim Jagielski }
152*b1cdbd2cSJim Jagielski
153*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
154*b1cdbd2cSJim Jagielski
CellAppearancePropertyPanel(Window * pParent,const cssu::Reference<css::frame::XFrame> & rxFrame,SfxBindings * pBindings)155*b1cdbd2cSJim Jagielski CellAppearancePropertyPanel::CellAppearancePropertyPanel(
156*b1cdbd2cSJim Jagielski Window* pParent,
157*b1cdbd2cSJim Jagielski const cssu::Reference<css::frame::XFrame>& rxFrame,
158*b1cdbd2cSJim Jagielski SfxBindings* pBindings)
159*b1cdbd2cSJim Jagielski : Control(
160*b1cdbd2cSJim Jagielski pParent,
161*b1cdbd2cSJim Jagielski ScResId(RID_PROPERTYPANEL_SC_APPEAR)),
162*b1cdbd2cSJim Jagielski
163*b1cdbd2cSJim Jagielski mpFTFillColor(new FixedText(this, ScResId(FT_BK_COLOR))),
164*b1cdbd2cSJim Jagielski mpTBFillColorBackground(sfx2::sidebar::ControlFactory::CreateToolBoxBackground(this)),
165*b1cdbd2cSJim Jagielski mpTBFillColor(sfx2::sidebar::ControlFactory::CreateToolBox(mpTBFillColorBackground.get(), ScResId(TB_BK_COLOR))),
166*b1cdbd2cSJim Jagielski mpFillColorUpdater(new ::svx::ToolboxButtonColorUpdater(SID_ATTR_BRUSH, TBI_BK_COLOR, mpTBFillColor.get(), TBX_UPDATER_MODE_CHAR_COLOR_NEW)),
167*b1cdbd2cSJim Jagielski
168*b1cdbd2cSJim Jagielski mpFTCellBorder(new FixedText(this, ScResId(FT_BORDER))),
169*b1cdbd2cSJim Jagielski mpTBCellBorderBackground(sfx2::sidebar::ControlFactory::CreateToolBoxBackground(this)),
170*b1cdbd2cSJim Jagielski mpTBCellBorder(sfx2::sidebar::ControlFactory::CreateToolBox(mpTBCellBorderBackground.get(), ScResId(TB_APP_BORDER))),
171*b1cdbd2cSJim Jagielski mpCellBorderUpdater(new CellBorderUpdater(TBI_BORDER, *mpTBCellBorder)),
172*b1cdbd2cSJim Jagielski
173*b1cdbd2cSJim Jagielski mpTBLineStyleBackground(sfx2::sidebar::ControlFactory::CreateToolBoxBackground(this)),
174*b1cdbd2cSJim Jagielski mpTBLineStyle(sfx2::sidebar::ControlFactory::CreateToolBox(mpTBLineStyleBackground.get(), ScResId(TB_BORDER_LINE_STYLE))),
175*b1cdbd2cSJim Jagielski
176*b1cdbd2cSJim Jagielski mpTBLineColorBackground(sfx2::sidebar::ControlFactory::CreateToolBoxBackground(this)),
177*b1cdbd2cSJim Jagielski mpTBLineColor(sfx2::sidebar::ControlFactory::CreateToolBox(mpTBLineColorBackground.get(), ScResId(TB_BORDER_LINE_COLOR))),
178*b1cdbd2cSJim Jagielski mpLineColorUpdater(new ::svx::ToolboxButtonColorUpdater(SID_FRAME_LINECOLOR, TBI_LINE_COLOR, mpTBLineColor.get(), TBX_UPDATER_MODE_CHAR_COLOR_NEW)),
179*b1cdbd2cSJim Jagielski
180*b1cdbd2cSJim Jagielski mpCBXShowGrid(new CheckBox(this, ScResId(CBX_SHOW_GRID))),
181*b1cdbd2cSJim Jagielski
182*b1cdbd2cSJim Jagielski maBackColorControl(SID_BACKGROUND_COLOR, *pBindings, *this),
183*b1cdbd2cSJim Jagielski maLineColorControl(SID_FRAME_LINECOLOR, *pBindings, *this),
184*b1cdbd2cSJim Jagielski maLineStyleControl(SID_FRAME_LINESTYLE, *pBindings, *this),
185*b1cdbd2cSJim Jagielski maBorderOuterControl(SID_ATTR_BORDER_OUTER, *pBindings, *this),
186*b1cdbd2cSJim Jagielski maBorderInnerControl(SID_ATTR_BORDER_INNER, *pBindings, *this),
187*b1cdbd2cSJim Jagielski maGridShowControl(SID_SCGRIDSHOW, *pBindings, *this),
188*b1cdbd2cSJim Jagielski maBorderTLBRControl(SID_ATTR_BORDER_DIAG_TLBR, *pBindings, *this),
189*b1cdbd2cSJim Jagielski maBorderBLTRControl(SID_ATTR_BORDER_DIAG_BLTR, *pBindings, *this),
190*b1cdbd2cSJim Jagielski
191*b1cdbd2cSJim Jagielski maIMGBKColor(ScResId(IMG_BK_COLOR)),
192*b1cdbd2cSJim Jagielski maIMGCellBorder(ScResId(IMG_CELL_BORDER)),
193*b1cdbd2cSJim Jagielski maIMGLineColor(ScResId(IMG_LINE_COLOR)),
194*b1cdbd2cSJim Jagielski maIMGLineStyle1(ScResId(IMG_LINE_STYLE1)),
195*b1cdbd2cSJim Jagielski maIMGLineStyle2(ScResId(IMG_LINE_STYLE2)),
196*b1cdbd2cSJim Jagielski maIMGLineStyle3(ScResId(IMG_LINE_STYLE3)),
197*b1cdbd2cSJim Jagielski maIMGLineStyle4(ScResId(IMG_LINE_STYLE4)),
198*b1cdbd2cSJim Jagielski maIMGLineStyle5(ScResId(IMG_LINE_STYLE5)),
199*b1cdbd2cSJim Jagielski maIMGLineStyle6(ScResId(IMG_LINE_STYLE6)),
200*b1cdbd2cSJim Jagielski maIMGLineStyle7(ScResId(IMG_LINE_STYLE7)),
201*b1cdbd2cSJim Jagielski maIMGLineStyle8(ScResId(IMG_LINE_STYLE8)),
202*b1cdbd2cSJim Jagielski maIMGLineStyle9(ScResId(IMG_LINE_STYLE9)),
203*b1cdbd2cSJim Jagielski
204*b1cdbd2cSJim Jagielski maIMGBKColorH(ScResId(IMG_BK_COLOR_H)),
205*b1cdbd2cSJim Jagielski maIMGLineStyle1H(ScResId(IMG_LINE_STYLE1_H)),
206*b1cdbd2cSJim Jagielski maIMGLineStyle2H(ScResId(IMG_LINE_STYLE2_H)),
207*b1cdbd2cSJim Jagielski maIMGLineStyle3H(ScResId(IMG_LINE_STYLE3_H)),
208*b1cdbd2cSJim Jagielski maIMGLineStyle4H(ScResId(IMG_LINE_STYLE4_H)),
209*b1cdbd2cSJim Jagielski maIMGLineStyle5H(ScResId(IMG_LINE_STYLE5_H)),
210*b1cdbd2cSJim Jagielski maIMGLineStyle6H(ScResId(IMG_LINE_STYLE6_H)),
211*b1cdbd2cSJim Jagielski maIMGLineStyle7H(ScResId(IMG_LINE_STYLE7_H)),
212*b1cdbd2cSJim Jagielski maIMGLineStyle8H(ScResId(IMG_LINE_STYLE8_H)),
213*b1cdbd2cSJim Jagielski maIMGLineStyle9H(ScResId(IMG_LINE_STYLE9_H)),
214*b1cdbd2cSJim Jagielski
215*b1cdbd2cSJim Jagielski maBackColor(COL_TRANSPARENT),
216*b1cdbd2cSJim Jagielski maLineColor(COL_BLACK),
217*b1cdbd2cSJim Jagielski maTLBRColor(COL_BLACK),
218*b1cdbd2cSJim Jagielski maBLTRColor(COL_BLACK),
219*b1cdbd2cSJim Jagielski mnIn(0),
220*b1cdbd2cSJim Jagielski mnOut(0),
221*b1cdbd2cSJim Jagielski mnDis(0),
222*b1cdbd2cSJim Jagielski mnTLBRIn(0),
223*b1cdbd2cSJim Jagielski mnTLBROut(0),
224*b1cdbd2cSJim Jagielski mnTLBRDis(0),
225*b1cdbd2cSJim Jagielski mnBLTRIn(0),
226*b1cdbd2cSJim Jagielski mnBLTROut(0),
227*b1cdbd2cSJim Jagielski mnBLTRDis(0),
228*b1cdbd2cSJim Jagielski mbBackColorAvailable(true),
229*b1cdbd2cSJim Jagielski mbLineColorAvailable(true),
230*b1cdbd2cSJim Jagielski mbBorderStyleAvailable(true),
231*b1cdbd2cSJim Jagielski mbLeft(false),
232*b1cdbd2cSJim Jagielski mbRight(false),
233*b1cdbd2cSJim Jagielski mbTop(false),
234*b1cdbd2cSJim Jagielski mbBottom(false),
235*b1cdbd2cSJim Jagielski mbVer(false),
236*b1cdbd2cSJim Jagielski mbHor(false),
237*b1cdbd2cSJim Jagielski mbOuterBorder(false),
238*b1cdbd2cSJim Jagielski mbInnerBorder(false),
239*b1cdbd2cSJim Jagielski mbTLBR(false),
240*b1cdbd2cSJim Jagielski mbBLTR(false),
241*b1cdbd2cSJim Jagielski
242*b1cdbd2cSJim Jagielski maFillColorPopup(this, ::boost::bind(&CellAppearancePropertyPanel::CreateFillColorPopupControl, this, _1)),
243*b1cdbd2cSJim Jagielski maLineColorPopup(this, ::boost::bind(&CellAppearancePropertyPanel::CreateLineColorPopupControl, this, _1)),
244*b1cdbd2cSJim Jagielski mpCellLineStylePopup(),
245*b1cdbd2cSJim Jagielski mpCellBorderStylePopup(),
246*b1cdbd2cSJim Jagielski
247*b1cdbd2cSJim Jagielski mxFrame(rxFrame),
248*b1cdbd2cSJim Jagielski maContext(),
249*b1cdbd2cSJim Jagielski mpBindings(pBindings)
250*b1cdbd2cSJim Jagielski {
251*b1cdbd2cSJim Jagielski Initialize();
252*b1cdbd2cSJim Jagielski FreeResource();
253*b1cdbd2cSJim Jagielski
254*b1cdbd2cSJim Jagielski Layouter::PrepareForLayouting(*mpFTFillColor);
255*b1cdbd2cSJim Jagielski Layouter::PrepareForLayouting(*mpFTCellBorder);
256*b1cdbd2cSJim Jagielski }
257*b1cdbd2cSJim Jagielski
258*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
259*b1cdbd2cSJim Jagielski
~CellAppearancePropertyPanel()260*b1cdbd2cSJim Jagielski CellAppearancePropertyPanel::~CellAppearancePropertyPanel()
261*b1cdbd2cSJim Jagielski {
262*b1cdbd2cSJim Jagielski // Destroy the toolboxes, then their background windows.
263*b1cdbd2cSJim Jagielski mpTBFillColor.reset();
264*b1cdbd2cSJim Jagielski mpTBCellBorder.reset();
265*b1cdbd2cSJim Jagielski mpTBLineStyle.reset();
266*b1cdbd2cSJim Jagielski mpTBLineColor.reset();
267*b1cdbd2cSJim Jagielski
268*b1cdbd2cSJim Jagielski mpTBFillColorBackground.reset();
269*b1cdbd2cSJim Jagielski mpTBCellBorderBackground.reset();
270*b1cdbd2cSJim Jagielski mpTBLineStyleBackground.reset();
271*b1cdbd2cSJim Jagielski mpTBLineColorBackground.reset();
272*b1cdbd2cSJim Jagielski }
273*b1cdbd2cSJim Jagielski
274*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
275*b1cdbd2cSJim Jagielski
Initialize()276*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::Initialize()
277*b1cdbd2cSJim Jagielski {
278*b1cdbd2cSJim Jagielski mpTBFillColor->SetItemImage(TBI_BK_COLOR, GetDisplayBackground().GetColor().IsDark() ? maIMGBKColorH : maIMGBKColor);
279*b1cdbd2cSJim Jagielski mpTBFillColor->SetItemBits( TBI_BK_COLOR, mpTBFillColor->GetItemBits( TBI_BK_COLOR ) | TIB_DROPDOWNONLY );
280*b1cdbd2cSJim Jagielski mpTBFillColor->SetQuickHelpText(TBI_BK_COLOR,String(ScResId(STR_QH_BK_COLOR))); //Add
281*b1cdbd2cSJim Jagielski Size aTbxSize1( mpTBFillColor->CalcWindowSizePixel() );
282*b1cdbd2cSJim Jagielski mpTBFillColor->SetOutputSizePixel( aTbxSize1 );
283*b1cdbd2cSJim Jagielski mpTBFillColor->SetBackground(Wallpaper());
284*b1cdbd2cSJim Jagielski mpTBFillColor->SetPaintTransparent(true);
285*b1cdbd2cSJim Jagielski Link aLink = LINK(this, CellAppearancePropertyPanel, TbxBKColorSelectHdl);
286*b1cdbd2cSJim Jagielski mpTBFillColor->SetDropdownClickHdl ( aLink );
287*b1cdbd2cSJim Jagielski mpTBFillColor->SetSelectHdl ( aLink );
288*b1cdbd2cSJim Jagielski
289*b1cdbd2cSJim Jagielski mpTBCellBorder->SetItemImage(TBI_BORDER, maIMGCellBorder);
290*b1cdbd2cSJim Jagielski mpTBCellBorder->SetItemBits( TBI_BORDER, mpTBCellBorder->GetItemBits( TBI_BORDER ) | TIB_DROPDOWNONLY );
291*b1cdbd2cSJim Jagielski mpTBCellBorder->SetQuickHelpText(TBI_BORDER,String(ScResId(STR_QH_BORDER))); //Add
292*b1cdbd2cSJim Jagielski Size aTbxSize2( mpTBCellBorder->CalcWindowSizePixel() );
293*b1cdbd2cSJim Jagielski mpTBCellBorder->SetOutputSizePixel( aTbxSize2 );
294*b1cdbd2cSJim Jagielski mpTBCellBorder->SetBackground(Wallpaper());
295*b1cdbd2cSJim Jagielski mpTBCellBorder->SetPaintTransparent(true);
296*b1cdbd2cSJim Jagielski aLink = LINK(this, CellAppearancePropertyPanel, TbxCellBorderSelectHdl);
297*b1cdbd2cSJim Jagielski mpTBCellBorder->SetDropdownClickHdl ( aLink );
298*b1cdbd2cSJim Jagielski mpTBCellBorder->SetSelectHdl ( aLink );
299*b1cdbd2cSJim Jagielski
300*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, maIMGLineStyle1);
301*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemBits( TBI_LINE_STYLE, mpTBLineStyle->GetItemBits( TBI_LINE_STYLE ) | TIB_DROPDOWNONLY );
302*b1cdbd2cSJim Jagielski mpTBLineStyle->SetQuickHelpText(TBI_LINE_STYLE,String(ScResId(STR_QH_BORDER_LINE_STYLE))); //Add
303*b1cdbd2cSJim Jagielski Size aTbxSize3( mpTBLineStyle->CalcWindowSizePixel() );
304*b1cdbd2cSJim Jagielski mpTBLineStyle->SetOutputSizePixel( aTbxSize3 );
305*b1cdbd2cSJim Jagielski mpTBLineStyle->SetBackground(Wallpaper());
306*b1cdbd2cSJim Jagielski mpTBLineStyle->SetPaintTransparent(true);
307*b1cdbd2cSJim Jagielski aLink = LINK(this, CellAppearancePropertyPanel, TbxLineStyleSelectHdl);
308*b1cdbd2cSJim Jagielski mpTBLineStyle->SetDropdownClickHdl ( aLink );
309*b1cdbd2cSJim Jagielski mpTBLineStyle->SetSelectHdl ( aLink );
310*b1cdbd2cSJim Jagielski mpTBLineStyle->Disable();
311*b1cdbd2cSJim Jagielski
312*b1cdbd2cSJim Jagielski mpTBLineColor->SetItemImage(TBI_LINE_COLOR, maIMGLineColor);
313*b1cdbd2cSJim Jagielski mpTBLineColor->SetItemBits( TBI_LINE_COLOR, mpTBLineColor->GetItemBits( TBI_LINE_COLOR ) | TIB_DROPDOWNONLY );
314*b1cdbd2cSJim Jagielski mpTBLineColor->SetQuickHelpText(TBI_LINE_COLOR,String(ScResId(STR_QH_BORDER_LINE_COLOR))); //Add
315*b1cdbd2cSJim Jagielski Size aTbxSize4( mpTBLineColor->CalcWindowSizePixel() );
316*b1cdbd2cSJim Jagielski mpTBLineColor->SetOutputSizePixel( aTbxSize4 );
317*b1cdbd2cSJim Jagielski mpTBLineColor->SetBackground(Wallpaper());
318*b1cdbd2cSJim Jagielski mpTBLineColor->SetPaintTransparent(true);
319*b1cdbd2cSJim Jagielski aLink = LINK(this, CellAppearancePropertyPanel, TbxLineColorSelectHdl);
320*b1cdbd2cSJim Jagielski mpTBLineColor->SetDropdownClickHdl ( aLink );
321*b1cdbd2cSJim Jagielski mpTBLineColor->SetSelectHdl ( aLink );
322*b1cdbd2cSJim Jagielski mpTBLineColor->Disable();
323*b1cdbd2cSJim Jagielski
324*b1cdbd2cSJim Jagielski aLink = LINK(this, CellAppearancePropertyPanel, CBOXGridShowClkHdl);
325*b1cdbd2cSJim Jagielski mpCBXShowGrid->SetClickHdl ( aLink );
326*b1cdbd2cSJim Jagielski
327*b1cdbd2cSJim Jagielski mpTBFillColor->SetAccessibleRelationLabeledBy(mpFTFillColor.get());
328*b1cdbd2cSJim Jagielski mpTBLineColor->SetAccessibleRelationLabeledBy(mpTBLineColor.get());
329*b1cdbd2cSJim Jagielski mpTBCellBorder->SetAccessibleRelationLabeledBy(mpFTCellBorder.get());
330*b1cdbd2cSJim Jagielski mpTBLineStyle->SetAccessibleRelationLabeledBy(mpTBLineStyle.get());
331*b1cdbd2cSJim Jagielski }
332*b1cdbd2cSJim Jagielski
333*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
334*b1cdbd2cSJim Jagielski
IMPL_LINK(CellAppearancePropertyPanel,TbxBKColorSelectHdl,ToolBox *,pToolBox)335*b1cdbd2cSJim Jagielski IMPL_LINK(CellAppearancePropertyPanel, TbxBKColorSelectHdl, ToolBox*, pToolBox)
336*b1cdbd2cSJim Jagielski {
337*b1cdbd2cSJim Jagielski sal_uInt16 nId = pToolBox->GetCurItemId();
338*b1cdbd2cSJim Jagielski if(nId == TBI_BK_COLOR)
339*b1cdbd2cSJim Jagielski {
340*b1cdbd2cSJim Jagielski maFillColorPopup.Show(*pToolBox);
341*b1cdbd2cSJim Jagielski maFillColorPopup.SetCurrentColor(maBackColor, mbBackColorAvailable);
342*b1cdbd2cSJim Jagielski }
343*b1cdbd2cSJim Jagielski return 0;
344*b1cdbd2cSJim Jagielski }
345*b1cdbd2cSJim Jagielski
346*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
347*b1cdbd2cSJim Jagielski
IMPL_LINK(CellAppearancePropertyPanel,TbxLineColorSelectHdl,ToolBox *,pToolBox)348*b1cdbd2cSJim Jagielski IMPL_LINK(CellAppearancePropertyPanel, TbxLineColorSelectHdl, ToolBox*, pToolBox)
349*b1cdbd2cSJim Jagielski {
350*b1cdbd2cSJim Jagielski sal_uInt16 nId = pToolBox->GetCurItemId();
351*b1cdbd2cSJim Jagielski if(nId == TBI_LINE_COLOR)
352*b1cdbd2cSJim Jagielski {
353*b1cdbd2cSJim Jagielski maLineColorPopup.Show(*pToolBox);
354*b1cdbd2cSJim Jagielski maLineColorPopup.SetCurrentColor(maLineColor, mbLineColorAvailable);
355*b1cdbd2cSJim Jagielski }
356*b1cdbd2cSJim Jagielski return 0;
357*b1cdbd2cSJim Jagielski }
358*b1cdbd2cSJim Jagielski
359*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
360*b1cdbd2cSJim Jagielski
IMPL_LINK(CellAppearancePropertyPanel,TbxCellBorderSelectHdl,ToolBox *,pToolBox)361*b1cdbd2cSJim Jagielski IMPL_LINK(CellAppearancePropertyPanel, TbxCellBorderSelectHdl, ToolBox*, pToolBox)
362*b1cdbd2cSJim Jagielski {
363*b1cdbd2cSJim Jagielski sal_uInt16 nId = pToolBox->GetCurItemId();
364*b1cdbd2cSJim Jagielski
365*b1cdbd2cSJim Jagielski if(nId == TBI_BORDER)
366*b1cdbd2cSJim Jagielski {
367*b1cdbd2cSJim Jagielski // create popup on demand
368*b1cdbd2cSJim Jagielski if(!mpCellBorderStylePopup.get())
369*b1cdbd2cSJim Jagielski {
370*b1cdbd2cSJim Jagielski mpCellBorderStylePopup.reset(
371*b1cdbd2cSJim Jagielski new CellBorderStylePopup(
372*b1cdbd2cSJim Jagielski this,
373*b1cdbd2cSJim Jagielski ::boost::bind(&CellAppearancePropertyPanel::CreateCellBorderStylePopupControl, this, _1)));
374*b1cdbd2cSJim Jagielski }
375*b1cdbd2cSJim Jagielski
376*b1cdbd2cSJim Jagielski if(mpCellBorderStylePopup.get())
377*b1cdbd2cSJim Jagielski {
378*b1cdbd2cSJim Jagielski mpCellBorderStylePopup->Show(*pToolBox);
379*b1cdbd2cSJim Jagielski }
380*b1cdbd2cSJim Jagielski }
381*b1cdbd2cSJim Jagielski return 0;
382*b1cdbd2cSJim Jagielski }
383*b1cdbd2cSJim Jagielski
384*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
385*b1cdbd2cSJim Jagielski
IMPL_LINK(CellAppearancePropertyPanel,TbxLineStyleSelectHdl,ToolBox *,pToolBox)386*b1cdbd2cSJim Jagielski IMPL_LINK(CellAppearancePropertyPanel, TbxLineStyleSelectHdl, ToolBox*, pToolBox)
387*b1cdbd2cSJim Jagielski {
388*b1cdbd2cSJim Jagielski sal_uInt16 nId = pToolBox->GetCurItemId();
389*b1cdbd2cSJim Jagielski if(nId == TBI_LINE_STYLE)
390*b1cdbd2cSJim Jagielski {
391*b1cdbd2cSJim Jagielski // create popup on demand
392*b1cdbd2cSJim Jagielski if(!mpCellLineStylePopup.get())
393*b1cdbd2cSJim Jagielski {
394*b1cdbd2cSJim Jagielski mpCellLineStylePopup.reset(
395*b1cdbd2cSJim Jagielski new CellLineStylePopup(
396*b1cdbd2cSJim Jagielski this,
397*b1cdbd2cSJim Jagielski ::boost::bind(&CellAppearancePropertyPanel::CreateCellLineStylePopupControl, this, _1)));
398*b1cdbd2cSJim Jagielski }
399*b1cdbd2cSJim Jagielski
400*b1cdbd2cSJim Jagielski if(mpCellLineStylePopup.get())
401*b1cdbd2cSJim Jagielski {
402*b1cdbd2cSJim Jagielski mpCellLineStylePopup->SetLineStyleSelect(mnOut, mnIn, mnDis);
403*b1cdbd2cSJim Jagielski mpCellLineStylePopup->Show(*pToolBox);
404*b1cdbd2cSJim Jagielski }
405*b1cdbd2cSJim Jagielski }
406*b1cdbd2cSJim Jagielski return 0;
407*b1cdbd2cSJim Jagielski }
408*b1cdbd2cSJim Jagielski
409*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
410*b1cdbd2cSJim Jagielski
IMPL_LINK(CellAppearancePropertyPanel,CBOXGridShowClkHdl,void *,EMPTYARG)411*b1cdbd2cSJim Jagielski IMPL_LINK(CellAppearancePropertyPanel, CBOXGridShowClkHdl, void*, EMPTYARG)
412*b1cdbd2cSJim Jagielski {
413*b1cdbd2cSJim Jagielski bool bState = mpCBXShowGrid->IsChecked();
414*b1cdbd2cSJim Jagielski SfxBoolItem aItem( SID_SCGRIDSHOW , bState);
415*b1cdbd2cSJim Jagielski GetBindings()->GetDispatcher()->Execute(SID_SCGRIDSHOW, SFX_CALLMODE_RECORD, &aItem, false, 0L);
416*b1cdbd2cSJim Jagielski return 0;
417*b1cdbd2cSJim Jagielski }
418*b1cdbd2cSJim Jagielski
419*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
420*b1cdbd2cSJim Jagielski
Create(Window * pParent,const cssu::Reference<css::frame::XFrame> & rxFrame,SfxBindings * pBindings)421*b1cdbd2cSJim Jagielski CellAppearancePropertyPanel* CellAppearancePropertyPanel::Create (
422*b1cdbd2cSJim Jagielski Window* pParent,
423*b1cdbd2cSJim Jagielski const cssu::Reference<css::frame::XFrame>& rxFrame,
424*b1cdbd2cSJim Jagielski SfxBindings* pBindings)
425*b1cdbd2cSJim Jagielski {
426*b1cdbd2cSJim Jagielski if (pParent == NULL)
427*b1cdbd2cSJim Jagielski throw lang::IllegalArgumentException(A2S("no parent Window given to CellAppearancePropertyPanel::Create"), NULL, 0);
428*b1cdbd2cSJim Jagielski if ( ! rxFrame.is())
429*b1cdbd2cSJim Jagielski throw lang::IllegalArgumentException(A2S("no XFrame given to CellAppearancePropertyPanel::Create"), NULL, 1);
430*b1cdbd2cSJim Jagielski if (pBindings == NULL)
431*b1cdbd2cSJim Jagielski throw lang::IllegalArgumentException(A2S("no SfxBindings given to CellAppearancePropertyPanel::Create"), NULL, 2);
432*b1cdbd2cSJim Jagielski
433*b1cdbd2cSJim Jagielski return new CellAppearancePropertyPanel(
434*b1cdbd2cSJim Jagielski pParent,
435*b1cdbd2cSJim Jagielski rxFrame,
436*b1cdbd2cSJim Jagielski pBindings);
437*b1cdbd2cSJim Jagielski }
438*b1cdbd2cSJim Jagielski
439*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
440*b1cdbd2cSJim Jagielski
DataChanged(const DataChangedEvent & rEvent)441*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::DataChanged(
442*b1cdbd2cSJim Jagielski const DataChangedEvent& rEvent)
443*b1cdbd2cSJim Jagielski {
444*b1cdbd2cSJim Jagielski (void)rEvent;
445*b1cdbd2cSJim Jagielski }
446*b1cdbd2cSJim Jagielski
447*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
448*b1cdbd2cSJim Jagielski
HandleContextChange(const::sfx2::sidebar::EnumContext aContext)449*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::HandleContextChange(
450*b1cdbd2cSJim Jagielski const ::sfx2::sidebar::EnumContext aContext)
451*b1cdbd2cSJim Jagielski {
452*b1cdbd2cSJim Jagielski if(maContext == aContext)
453*b1cdbd2cSJim Jagielski {
454*b1cdbd2cSJim Jagielski // Nothing to do.
455*b1cdbd2cSJim Jagielski return;
456*b1cdbd2cSJim Jagielski }
457*b1cdbd2cSJim Jagielski
458*b1cdbd2cSJim Jagielski maContext = aContext;
459*b1cdbd2cSJim Jagielski
460*b1cdbd2cSJim Jagielski
461*b1cdbd2cSJim Jagielski
462*b1cdbd2cSJim Jagielski // todo
463*b1cdbd2cSJim Jagielski }
464*b1cdbd2cSJim Jagielski
465*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
466*b1cdbd2cSJim Jagielski
NotifyItemUpdate(sal_uInt16 nSID,SfxItemState eState,const SfxPoolItem * pState,const bool bIsEnabled)467*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::NotifyItemUpdate(
468*b1cdbd2cSJim Jagielski sal_uInt16 nSID,
469*b1cdbd2cSJim Jagielski SfxItemState eState,
470*b1cdbd2cSJim Jagielski const SfxPoolItem* pState,
471*b1cdbd2cSJim Jagielski const bool bIsEnabled)
472*b1cdbd2cSJim Jagielski {
473*b1cdbd2cSJim Jagielski (void)bIsEnabled;
474*b1cdbd2cSJim Jagielski
475*b1cdbd2cSJim Jagielski switch(nSID)
476*b1cdbd2cSJim Jagielski {
477*b1cdbd2cSJim Jagielski case SID_BACKGROUND_COLOR:
478*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
479*b1cdbd2cSJim Jagielski {
480*b1cdbd2cSJim Jagielski const SvxColorItem* pSvxColorItem = dynamic_cast< const SvxColorItem* >(pState);
481*b1cdbd2cSJim Jagielski
482*b1cdbd2cSJim Jagielski if(pSvxColorItem)
483*b1cdbd2cSJim Jagielski {
484*b1cdbd2cSJim Jagielski maBackColor = ((const SvxColorItem*)pState)->GetValue();
485*b1cdbd2cSJim Jagielski mbBackColorAvailable = true;
486*b1cdbd2cSJim Jagielski mpFillColorUpdater->Update(maBackColor);
487*b1cdbd2cSJim Jagielski break;
488*b1cdbd2cSJim Jagielski }
489*b1cdbd2cSJim Jagielski }
490*b1cdbd2cSJim Jagielski
491*b1cdbd2cSJim Jagielski mbBackColorAvailable = false;
492*b1cdbd2cSJim Jagielski maBackColor.SetColor(COL_TRANSPARENT);
493*b1cdbd2cSJim Jagielski mpFillColorUpdater->Update(COL_TRANSPARENT);
494*b1cdbd2cSJim Jagielski break;
495*b1cdbd2cSJim Jagielski case SID_FRAME_LINECOLOR:
496*b1cdbd2cSJim Jagielski if( eState == SFX_ITEM_DONTCARE)
497*b1cdbd2cSJim Jagielski {
498*b1cdbd2cSJim Jagielski mbLineColorAvailable = true;
499*b1cdbd2cSJim Jagielski maLineColor.SetColor( COL_TRANSPARENT );
500*b1cdbd2cSJim Jagielski UpdateControlState();
501*b1cdbd2cSJim Jagielski break;
502*b1cdbd2cSJim Jagielski }
503*b1cdbd2cSJim Jagielski
504*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT && pState && pState->ISA(SvxColorItem) )
505*b1cdbd2cSJim Jagielski {
506*b1cdbd2cSJim Jagielski const SvxColorItem* pSvxColorItem = dynamic_cast< const SvxColorItem* >(pState);
507*b1cdbd2cSJim Jagielski
508*b1cdbd2cSJim Jagielski if(pSvxColorItem)
509*b1cdbd2cSJim Jagielski {
510*b1cdbd2cSJim Jagielski maLineColor = ((const SvxColorItem*)pState)->GetValue();
511*b1cdbd2cSJim Jagielski if(maLineColor == COL_AUTO)
512*b1cdbd2cSJim Jagielski mbLineColorAvailable = false;
513*b1cdbd2cSJim Jagielski else
514*b1cdbd2cSJim Jagielski {
515*b1cdbd2cSJim Jagielski mbLineColorAvailable = true;
516*b1cdbd2cSJim Jagielski // mpLineColorUpdater->Update(maLineColor);
517*b1cdbd2cSJim Jagielski }
518*b1cdbd2cSJim Jagielski
519*b1cdbd2cSJim Jagielski UpdateControlState();
520*b1cdbd2cSJim Jagielski break;
521*b1cdbd2cSJim Jagielski }
522*b1cdbd2cSJim Jagielski }
523*b1cdbd2cSJim Jagielski
524*b1cdbd2cSJim Jagielski mbLineColorAvailable = false;
525*b1cdbd2cSJim Jagielski maLineColor.SetColor(COL_AUTO);
526*b1cdbd2cSJim Jagielski // mpLineColorUpdater->Update(maLineColor);
527*b1cdbd2cSJim Jagielski UpdateControlState();
528*b1cdbd2cSJim Jagielski break;
529*b1cdbd2cSJim Jagielski case SID_FRAME_LINESTYLE:
530*b1cdbd2cSJim Jagielski if( eState == SFX_ITEM_DONTCARE )
531*b1cdbd2cSJim Jagielski {
532*b1cdbd2cSJim Jagielski mbBorderStyleAvailable = true;
533*b1cdbd2cSJim Jagielski mnIn = 0;
534*b1cdbd2cSJim Jagielski mnOut = 0;
535*b1cdbd2cSJim Jagielski mnDis = 0;
536*b1cdbd2cSJim Jagielski SetStyleIcon();
537*b1cdbd2cSJim Jagielski break;
538*b1cdbd2cSJim Jagielski }
539*b1cdbd2cSJim Jagielski
540*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
541*b1cdbd2cSJim Jagielski {
542*b1cdbd2cSJim Jagielski const SvxLineItem* pSvxLineItem = dynamic_cast< const SvxLineItem* >(pState);
543*b1cdbd2cSJim Jagielski
544*b1cdbd2cSJim Jagielski if(pSvxLineItem)
545*b1cdbd2cSJim Jagielski {
546*b1cdbd2cSJim Jagielski const SvxBorderLine* mbLineItem = pSvxLineItem->GetLine();
547*b1cdbd2cSJim Jagielski mnIn = mbLineItem->GetInWidth();
548*b1cdbd2cSJim Jagielski mnOut = mbLineItem->GetOutWidth();
549*b1cdbd2cSJim Jagielski mnDis = mbLineItem->GetDistance();
550*b1cdbd2cSJim Jagielski
551*b1cdbd2cSJim Jagielski if(mnIn == 0 && mnOut == 0 && mnDis == 0)
552*b1cdbd2cSJim Jagielski mbBorderStyleAvailable = false;
553*b1cdbd2cSJim Jagielski else
554*b1cdbd2cSJim Jagielski mbBorderStyleAvailable = true;
555*b1cdbd2cSJim Jagielski
556*b1cdbd2cSJim Jagielski SetStyleIcon();
557*b1cdbd2cSJim Jagielski break;
558*b1cdbd2cSJim Jagielski }
559*b1cdbd2cSJim Jagielski }
560*b1cdbd2cSJim Jagielski
561*b1cdbd2cSJim Jagielski mbBorderStyleAvailable = false;
562*b1cdbd2cSJim Jagielski SetStyleIcon();
563*b1cdbd2cSJim Jagielski break;
564*b1cdbd2cSJim Jagielski case SID_ATTR_BORDER_OUTER:
565*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
566*b1cdbd2cSJim Jagielski {
567*b1cdbd2cSJim Jagielski const SvxBoxItem* pBoxItem = dynamic_cast< const SvxBoxItem* >(pState);
568*b1cdbd2cSJim Jagielski
569*b1cdbd2cSJim Jagielski if(pBoxItem)
570*b1cdbd2cSJim Jagielski {
571*b1cdbd2cSJim Jagielski mbLeft=false, mbRight=false, mbTop=false, mbBottom=false;
572*b1cdbd2cSJim Jagielski
573*b1cdbd2cSJim Jagielski if(pBoxItem->GetLeft())
574*b1cdbd2cSJim Jagielski mbLeft = true;
575*b1cdbd2cSJim Jagielski
576*b1cdbd2cSJim Jagielski if(pBoxItem->GetRight())
577*b1cdbd2cSJim Jagielski mbRight = true;
578*b1cdbd2cSJim Jagielski
579*b1cdbd2cSJim Jagielski if(pBoxItem->GetTop())
580*b1cdbd2cSJim Jagielski mbTop = true;
581*b1cdbd2cSJim Jagielski
582*b1cdbd2cSJim Jagielski if(pBoxItem->GetBottom())
583*b1cdbd2cSJim Jagielski mbBottom = true;
584*b1cdbd2cSJim Jagielski
585*b1cdbd2cSJim Jagielski if(!Application::GetSettings().GetLayoutRTL())
586*b1cdbd2cSJim Jagielski mpCellBorderUpdater->UpdateCellBorder(mbTop, mbBottom, mbLeft, mbRight, maIMGCellBorder, mbVer, mbHor);
587*b1cdbd2cSJim Jagielski else
588*b1cdbd2cSJim Jagielski mpCellBorderUpdater->UpdateCellBorder(mbTop, mbBottom, mbRight, mbLeft, maIMGCellBorder, mbVer, mbHor);
589*b1cdbd2cSJim Jagielski
590*b1cdbd2cSJim Jagielski if(mbLeft || mbRight || mbTop || mbBottom)
591*b1cdbd2cSJim Jagielski mbOuterBorder = true;
592*b1cdbd2cSJim Jagielski else
593*b1cdbd2cSJim Jagielski mbOuterBorder = false;
594*b1cdbd2cSJim Jagielski
595*b1cdbd2cSJim Jagielski UpdateControlState();
596*b1cdbd2cSJim Jagielski }
597*b1cdbd2cSJim Jagielski }
598*b1cdbd2cSJim Jagielski break;
599*b1cdbd2cSJim Jagielski case SID_ATTR_BORDER_INNER:
600*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
601*b1cdbd2cSJim Jagielski {
602*b1cdbd2cSJim Jagielski const SvxBoxInfoItem* pBoxInfoItem = dynamic_cast< const SvxBoxInfoItem* >(pState);
603*b1cdbd2cSJim Jagielski
604*b1cdbd2cSJim Jagielski if(pBoxInfoItem)
605*b1cdbd2cSJim Jagielski {
606*b1cdbd2cSJim Jagielski bool bLeft(false), bRight(false), bTop(false), bBottom(false);
607*b1cdbd2cSJim Jagielski
608*b1cdbd2cSJim Jagielski mbVer = false, mbHor = false;
609*b1cdbd2cSJim Jagielski
610*b1cdbd2cSJim Jagielski if(!pBoxInfoItem->IsValid( VALID_VERT ) || pBoxInfoItem->GetVert())
611*b1cdbd2cSJim Jagielski mbVer = true;
612*b1cdbd2cSJim Jagielski
613*b1cdbd2cSJim Jagielski if(!pBoxInfoItem->IsValid( VALID_HORI ) || pBoxInfoItem->GetHori())
614*b1cdbd2cSJim Jagielski mbHor = true;
615*b1cdbd2cSJim Jagielski
616*b1cdbd2cSJim Jagielski if(!pBoxInfoItem->IsValid( VALID_LEFT ) || mbLeft)
617*b1cdbd2cSJim Jagielski bLeft = true;
618*b1cdbd2cSJim Jagielski
619*b1cdbd2cSJim Jagielski if(!pBoxInfoItem->IsValid( VALID_RIGHT ) || mbRight)
620*b1cdbd2cSJim Jagielski bRight = true;
621*b1cdbd2cSJim Jagielski
622*b1cdbd2cSJim Jagielski if(!pBoxInfoItem->IsValid( VALID_TOP ) || mbTop)
623*b1cdbd2cSJim Jagielski bTop = true;
624*b1cdbd2cSJim Jagielski
625*b1cdbd2cSJim Jagielski if(!pBoxInfoItem->IsValid( VALID_BOTTOM ) || mbBottom)
626*b1cdbd2cSJim Jagielski bBottom = true;
627*b1cdbd2cSJim Jagielski
628*b1cdbd2cSJim Jagielski if(!Application::GetSettings().GetLayoutRTL())
629*b1cdbd2cSJim Jagielski mpCellBorderUpdater->UpdateCellBorder(bTop, bBottom, bLeft, bRight, maIMGCellBorder, mbVer, mbHor);
630*b1cdbd2cSJim Jagielski else
631*b1cdbd2cSJim Jagielski mpCellBorderUpdater->UpdateCellBorder(bTop, bBottom, bRight, bLeft, maIMGCellBorder, mbVer, mbHor);
632*b1cdbd2cSJim Jagielski
633*b1cdbd2cSJim Jagielski if(mbVer || mbHor || bLeft || bRight || bTop || bBottom)
634*b1cdbd2cSJim Jagielski mbInnerBorder = true;
635*b1cdbd2cSJim Jagielski else
636*b1cdbd2cSJim Jagielski mbInnerBorder = false;
637*b1cdbd2cSJim Jagielski
638*b1cdbd2cSJim Jagielski UpdateControlState();
639*b1cdbd2cSJim Jagielski }
640*b1cdbd2cSJim Jagielski }
641*b1cdbd2cSJim Jagielski break;
642*b1cdbd2cSJim Jagielski case SID_ATTR_BORDER_DIAG_TLBR:
643*b1cdbd2cSJim Jagielski if( eState == SFX_ITEM_DONTCARE )
644*b1cdbd2cSJim Jagielski {
645*b1cdbd2cSJim Jagielski mbTLBR = true;
646*b1cdbd2cSJim Jagielski maTLBRColor.SetColor(COL_TRANSPARENT);
647*b1cdbd2cSJim Jagielski mnTLBRIn = mnTLBROut = mnTLBRDis = 0;
648*b1cdbd2cSJim Jagielski UpdateControlState();
649*b1cdbd2cSJim Jagielski break;
650*b1cdbd2cSJim Jagielski }
651*b1cdbd2cSJim Jagielski
652*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
653*b1cdbd2cSJim Jagielski {
654*b1cdbd2cSJim Jagielski const SvxLineItem* pItem = dynamic_cast< const SvxLineItem* >(pState);
655*b1cdbd2cSJim Jagielski
656*b1cdbd2cSJim Jagielski if(pItem)
657*b1cdbd2cSJim Jagielski {
658*b1cdbd2cSJim Jagielski const SvxBorderLine* aLine = pItem->GetLine();
659*b1cdbd2cSJim Jagielski
660*b1cdbd2cSJim Jagielski if(!aLine)
661*b1cdbd2cSJim Jagielski {
662*b1cdbd2cSJim Jagielski mbTLBR = false;
663*b1cdbd2cSJim Jagielski }
664*b1cdbd2cSJim Jagielski else
665*b1cdbd2cSJim Jagielski {
666*b1cdbd2cSJim Jagielski mbTLBR = true;
667*b1cdbd2cSJim Jagielski maTLBRColor = aLine->GetColor();
668*b1cdbd2cSJim Jagielski mnTLBRIn = aLine->GetInWidth();
669*b1cdbd2cSJim Jagielski mnTLBROut = aLine->GetOutWidth();
670*b1cdbd2cSJim Jagielski mnTLBRDis = aLine->GetDistance();
671*b1cdbd2cSJim Jagielski
672*b1cdbd2cSJim Jagielski if(mnTLBRIn == 0 && mnTLBROut == 0 && mnTLBRDis == 0)
673*b1cdbd2cSJim Jagielski mbTLBR = false;
674*b1cdbd2cSJim Jagielski }
675*b1cdbd2cSJim Jagielski
676*b1cdbd2cSJim Jagielski UpdateControlState();
677*b1cdbd2cSJim Jagielski break;
678*b1cdbd2cSJim Jagielski }
679*b1cdbd2cSJim Jagielski }
680*b1cdbd2cSJim Jagielski
681*b1cdbd2cSJim Jagielski mbTLBR = false;
682*b1cdbd2cSJim Jagielski UpdateControlState();
683*b1cdbd2cSJim Jagielski break;
684*b1cdbd2cSJim Jagielski case SID_ATTR_BORDER_DIAG_BLTR:
685*b1cdbd2cSJim Jagielski if( eState == SFX_ITEM_DONTCARE )
686*b1cdbd2cSJim Jagielski {
687*b1cdbd2cSJim Jagielski mbBLTR = true;
688*b1cdbd2cSJim Jagielski maBLTRColor.SetColor( COL_TRANSPARENT );
689*b1cdbd2cSJim Jagielski mnBLTRIn = mnBLTROut = mnBLTRDis = 0;
690*b1cdbd2cSJim Jagielski UpdateControlState();
691*b1cdbd2cSJim Jagielski break;
692*b1cdbd2cSJim Jagielski }
693*b1cdbd2cSJim Jagielski
694*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
695*b1cdbd2cSJim Jagielski {
696*b1cdbd2cSJim Jagielski const SvxLineItem* pItem = dynamic_cast< const SvxLineItem* >(pState);
697*b1cdbd2cSJim Jagielski
698*b1cdbd2cSJim Jagielski if(pItem)
699*b1cdbd2cSJim Jagielski {
700*b1cdbd2cSJim Jagielski const SvxBorderLine* aLine = pItem->GetLine();
701*b1cdbd2cSJim Jagielski
702*b1cdbd2cSJim Jagielski if(!aLine)
703*b1cdbd2cSJim Jagielski {
704*b1cdbd2cSJim Jagielski mbBLTR = false;
705*b1cdbd2cSJim Jagielski }
706*b1cdbd2cSJim Jagielski else
707*b1cdbd2cSJim Jagielski {
708*b1cdbd2cSJim Jagielski mbBLTR = true;
709*b1cdbd2cSJim Jagielski maBLTRColor = aLine->GetColor();
710*b1cdbd2cSJim Jagielski mnBLTRIn = aLine->GetInWidth();
711*b1cdbd2cSJim Jagielski mnBLTROut = aLine->GetOutWidth();
712*b1cdbd2cSJim Jagielski mnBLTRDis = aLine->GetDistance();
713*b1cdbd2cSJim Jagielski
714*b1cdbd2cSJim Jagielski if(mnBLTRIn == 0 && mnBLTROut == 0 && mnBLTRDis == 0)
715*b1cdbd2cSJim Jagielski mbBLTR = false;
716*b1cdbd2cSJim Jagielski }
717*b1cdbd2cSJim Jagielski
718*b1cdbd2cSJim Jagielski UpdateControlState();
719*b1cdbd2cSJim Jagielski }
720*b1cdbd2cSJim Jagielski break;
721*b1cdbd2cSJim Jagielski }
722*b1cdbd2cSJim Jagielski
723*b1cdbd2cSJim Jagielski mbBLTR = false;
724*b1cdbd2cSJim Jagielski UpdateControlState();
725*b1cdbd2cSJim Jagielski break;
726*b1cdbd2cSJim Jagielski case SID_SCGRIDSHOW:
727*b1cdbd2cSJim Jagielski if(eState >= SFX_ITEM_DEFAULT)
728*b1cdbd2cSJim Jagielski {
729*b1cdbd2cSJim Jagielski const SfxBoolItem* pItem = dynamic_cast< const SfxBoolItem* >(pState);
730*b1cdbd2cSJim Jagielski
731*b1cdbd2cSJim Jagielski if(pItem)
732*b1cdbd2cSJim Jagielski {
733*b1cdbd2cSJim Jagielski const bool bVal = pItem->GetValue();
734*b1cdbd2cSJim Jagielski
735*b1cdbd2cSJim Jagielski if(bVal)
736*b1cdbd2cSJim Jagielski mpCBXShowGrid->Check(true);
737*b1cdbd2cSJim Jagielski else
738*b1cdbd2cSJim Jagielski mpCBXShowGrid->Check(false);
739*b1cdbd2cSJim Jagielski }
740*b1cdbd2cSJim Jagielski }
741*b1cdbd2cSJim Jagielski break;
742*b1cdbd2cSJim Jagielski }
743*b1cdbd2cSJim Jagielski }
744*b1cdbd2cSJim Jagielski
745*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
746*b1cdbd2cSJim Jagielski
GetBindings()747*b1cdbd2cSJim Jagielski SfxBindings* CellAppearancePropertyPanel::GetBindings()
748*b1cdbd2cSJim Jagielski {
749*b1cdbd2cSJim Jagielski return mpBindings;
750*b1cdbd2cSJim Jagielski }
751*b1cdbd2cSJim Jagielski
752*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
753*b1cdbd2cSJim Jagielski
SetStyleIcon()754*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::SetStyleIcon()
755*b1cdbd2cSJim Jagielski {
756*b1cdbd2cSJim Jagielski if(mnOut == DEF_LINE_WIDTH_0 && mnIn == 0 && mnDis == 0) //1
757*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle1H : maIMGLineStyle1);
758*b1cdbd2cSJim Jagielski else if(mnOut == DEF_LINE_WIDTH_2 && mnIn == 0 && mnDis == 0) //2
759*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle2H :maIMGLineStyle2);
760*b1cdbd2cSJim Jagielski else if(mnOut == DEF_LINE_WIDTH_3 && mnIn == 0 && mnDis == 0) //3
761*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle3H :maIMGLineStyle3);
762*b1cdbd2cSJim Jagielski else if(mnOut == DEF_LINE_WIDTH_4 && mnIn == 0 && mnDis == 0) //4
763*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle4H :maIMGLineStyle4);
764*b1cdbd2cSJim Jagielski else if(mnOut == DEF_DOUBLE_LINE0_OUT && mnIn == DEF_DOUBLE_LINE0_IN && mnDis == DEF_DOUBLE_LINE0_DIST) //5
765*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle5H :maIMGLineStyle5);
766*b1cdbd2cSJim Jagielski else if(mnOut == DEF_DOUBLE_LINE7_OUT && mnIn == DEF_DOUBLE_LINE7_IN && mnDis == DEF_DOUBLE_LINE7_DIST) //6
767*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle6H :maIMGLineStyle6);
768*b1cdbd2cSJim Jagielski else if(mnOut == DEF_DOUBLE_LINE4_OUT && mnIn == DEF_DOUBLE_LINE4_IN && mnDis == DEF_DOUBLE_LINE4_DIST) //7
769*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle7H :maIMGLineStyle7);
770*b1cdbd2cSJim Jagielski else if(mnOut == DEF_DOUBLE_LINE9_OUT && mnIn == DEF_DOUBLE_LINE9_IN && mnDis == DEF_DOUBLE_LINE9_DIST) //8
771*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle8H :maIMGLineStyle8);
772*b1cdbd2cSJim Jagielski else if(mnOut == DEF_DOUBLE_LINE2_OUT && mnIn == DEF_DOUBLE_LINE2_IN && mnDis == DEF_DOUBLE_LINE2_DIST) //9
773*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle9H :maIMGLineStyle9);
774*b1cdbd2cSJim Jagielski else
775*b1cdbd2cSJim Jagielski mpTBLineStyle->SetItemImage(TBI_LINE_STYLE, GetDisplayBackground().GetColor().IsDark() ? maIMGLineStyle1H :maIMGLineStyle1);
776*b1cdbd2cSJim Jagielski }
777*b1cdbd2cSJim Jagielski
778*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
779*b1cdbd2cSJim Jagielski
UpdateControlState()780*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::UpdateControlState()
781*b1cdbd2cSJim Jagielski {
782*b1cdbd2cSJim Jagielski if(mbOuterBorder || mbInnerBorder || mbTLBR || mbBLTR)
783*b1cdbd2cSJim Jagielski {
784*b1cdbd2cSJim Jagielski mpTBLineColor->Enable();
785*b1cdbd2cSJim Jagielski mpTBLineStyle->Enable();
786*b1cdbd2cSJim Jagielski
787*b1cdbd2cSJim Jagielski //set line color state
788*b1cdbd2cSJim Jagielski if( mbLineColorAvailable && !mbTLBR && !mbBLTR )
789*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(maLineColor);
790*b1cdbd2cSJim Jagielski else if( !mbLineColorAvailable && mbTLBR && !mbBLTR )
791*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(maTLBRColor);
792*b1cdbd2cSJim Jagielski else if ( !mbLineColorAvailable && !mbTLBR && mbBLTR )
793*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(maBLTRColor);
794*b1cdbd2cSJim Jagielski else if( !mbLineColorAvailable && mbTLBR && mbBLTR)
795*b1cdbd2cSJim Jagielski {
796*b1cdbd2cSJim Jagielski if( maTLBRColor == maBLTRColor)
797*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(maBLTRColor);
798*b1cdbd2cSJim Jagielski else
799*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(COL_TRANSPARENT);
800*b1cdbd2cSJim Jagielski }
801*b1cdbd2cSJim Jagielski else if( mbLineColorAvailable && mbTLBR && !mbBLTR )
802*b1cdbd2cSJim Jagielski {
803*b1cdbd2cSJim Jagielski if( maTLBRColor == maLineColor)
804*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(maLineColor);
805*b1cdbd2cSJim Jagielski else
806*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(COL_TRANSPARENT);
807*b1cdbd2cSJim Jagielski }
808*b1cdbd2cSJim Jagielski else if( mbLineColorAvailable && !mbTLBR && mbBLTR )
809*b1cdbd2cSJim Jagielski {
810*b1cdbd2cSJim Jagielski if( maBLTRColor == maLineColor)
811*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(maLineColor);
812*b1cdbd2cSJim Jagielski else
813*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(COL_TRANSPARENT);
814*b1cdbd2cSJim Jagielski }
815*b1cdbd2cSJim Jagielski else
816*b1cdbd2cSJim Jagielski mpLineColorUpdater->Update(COL_TRANSPARENT);
817*b1cdbd2cSJim Jagielski
818*b1cdbd2cSJim Jagielski //set line style state
819*b1cdbd2cSJim Jagielski if( mbBorderStyleAvailable && !mbTLBR && !mbBLTR )
820*b1cdbd2cSJim Jagielski {
821*b1cdbd2cSJim Jagielski }
822*b1cdbd2cSJim Jagielski else if( !mbBorderStyleAvailable && mbTLBR && !mbBLTR )
823*b1cdbd2cSJim Jagielski {
824*b1cdbd2cSJim Jagielski mnIn = mnTLBRIn;
825*b1cdbd2cSJim Jagielski mnOut = mnTLBROut;
826*b1cdbd2cSJim Jagielski mnDis = mnTLBRDis;
827*b1cdbd2cSJim Jagielski }
828*b1cdbd2cSJim Jagielski else if ( !mbBorderStyleAvailable && !mbTLBR && mbBLTR )
829*b1cdbd2cSJim Jagielski {
830*b1cdbd2cSJim Jagielski mnIn = mnBLTRIn;
831*b1cdbd2cSJim Jagielski mnOut = mnBLTROut;
832*b1cdbd2cSJim Jagielski mnDis = mnBLTRDis;
833*b1cdbd2cSJim Jagielski }
834*b1cdbd2cSJim Jagielski else if( !mbBorderStyleAvailable && mbTLBR && mbBLTR)
835*b1cdbd2cSJim Jagielski {
836*b1cdbd2cSJim Jagielski if( mnTLBRIn == mnBLTRIn && mnTLBROut == mnBLTROut && mnTLBRDis == mnBLTRDis)
837*b1cdbd2cSJim Jagielski {
838*b1cdbd2cSJim Jagielski mnIn = mnTLBRIn;
839*b1cdbd2cSJim Jagielski mnOut = mnTLBROut;
840*b1cdbd2cSJim Jagielski mnDis = mnTLBRDis;
841*b1cdbd2cSJim Jagielski }
842*b1cdbd2cSJim Jagielski else
843*b1cdbd2cSJim Jagielski {
844*b1cdbd2cSJim Jagielski mnIn = 0;
845*b1cdbd2cSJim Jagielski mnOut = 0;
846*b1cdbd2cSJim Jagielski mnDis = 0;
847*b1cdbd2cSJim Jagielski }
848*b1cdbd2cSJim Jagielski }
849*b1cdbd2cSJim Jagielski else if( mbBorderStyleAvailable && mbTLBR && !mbBLTR )
850*b1cdbd2cSJim Jagielski {
851*b1cdbd2cSJim Jagielski if( mnTLBRIn != mnIn || mnTLBROut != mnOut || mnTLBRDis != mnDis)
852*b1cdbd2cSJim Jagielski {
853*b1cdbd2cSJim Jagielski mnIn = 0;
854*b1cdbd2cSJim Jagielski mnOut = 0;
855*b1cdbd2cSJim Jagielski mnDis = 0;
856*b1cdbd2cSJim Jagielski }
857*b1cdbd2cSJim Jagielski }
858*b1cdbd2cSJim Jagielski else if( mbBorderStyleAvailable && !mbTLBR && mbBLTR )
859*b1cdbd2cSJim Jagielski {
860*b1cdbd2cSJim Jagielski if( mnBLTRIn != mnIn || mnBLTROut != mnOut || mnBLTRDis != mnDis )
861*b1cdbd2cSJim Jagielski {
862*b1cdbd2cSJim Jagielski mnIn = 0;
863*b1cdbd2cSJim Jagielski mnOut = 0;
864*b1cdbd2cSJim Jagielski mnDis = 0;
865*b1cdbd2cSJim Jagielski }
866*b1cdbd2cSJim Jagielski }
867*b1cdbd2cSJim Jagielski else
868*b1cdbd2cSJim Jagielski {
869*b1cdbd2cSJim Jagielski mnIn = 0;
870*b1cdbd2cSJim Jagielski mnOut = 0;
871*b1cdbd2cSJim Jagielski mnDis = 0;
872*b1cdbd2cSJim Jagielski }
873*b1cdbd2cSJim Jagielski SetStyleIcon();
874*b1cdbd2cSJim Jagielski }
875*b1cdbd2cSJim Jagielski else
876*b1cdbd2cSJim Jagielski {
877*b1cdbd2cSJim Jagielski mpTBLineColor->Disable();
878*b1cdbd2cSJim Jagielski mpTBLineStyle->Disable();
879*b1cdbd2cSJim Jagielski }
880*b1cdbd2cSJim Jagielski }
881*b1cdbd2cSJim Jagielski
882*b1cdbd2cSJim Jagielski
883*b1cdbd2cSJim Jagielski
884*b1cdbd2cSJim Jagielski
Resize(void)885*b1cdbd2cSJim Jagielski void CellAppearancePropertyPanel::Resize (void)
886*b1cdbd2cSJim Jagielski {
887*b1cdbd2cSJim Jagielski const sal_Int32 nRight (GetSizePixel().Width() - Layouter::MapWidth(*this, TB_BORDER));
888*b1cdbd2cSJim Jagielski Layouter::SetRight(*mpFTFillColor, nRight);
889*b1cdbd2cSJim Jagielski Layouter::SetRight(*mpFTCellBorder, nRight);
890*b1cdbd2cSJim Jagielski Layouter::SetRight(*mpCBXShowGrid, nRight);
891*b1cdbd2cSJim Jagielski }
892*b1cdbd2cSJim Jagielski
893*b1cdbd2cSJim Jagielski
894*b1cdbd2cSJim Jagielski
895*b1cdbd2cSJim Jagielski }} // end of namespace ::sc::sidebar
896*b1cdbd2cSJim Jagielski
897*b1cdbd2cSJim Jagielski //////////////////////////////////////////////////////////////////////////////
898*b1cdbd2cSJim Jagielski // eof
899