1 /**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License. You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied. See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24 #include <sfx2/sidebar/ResourceDefinitions.hrc>
25 #include <sfx2/sidebar/Theme.hxx>
26 #include <sfx2/sidebar/ControlFactory.hxx>
27 #include <sfx2/sidebar/Layouter.hxx>
28 #include <GraphicPropertyPanel.hxx>
29 #include <GraphicPropertyPanel.hrc>
30 #include <svx/dialogs.hrc>
31 #include <svx/dialmgr.hxx>
32 #include <vcl/field.hxx>
33 #include <vcl/lstbox.hxx>
34 #include <svl/intitem.hxx>
35 #include <sfx2/bindings.hxx>
36 #include <sfx2/dispatch.hxx>
37 #include "svx/dialogs.hrc"
38
39 using namespace css;
40 using namespace cssu;
41 using ::sfx2::sidebar::Layouter;
42 using ::sfx2::sidebar::Theme;
43
44 #define A2S(pString) (::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(pString)))
45
46 //////////////////////////////////////////////////////////////////////////////
47
48
49 namespace svx { namespace sidebar {
50
51 //////////////////////////////////////////////////////////////////////////////
52
GraphicPropertyPanel(Window * pParent,const cssu::Reference<css::frame::XFrame> & rxFrame,SfxBindings * pBindings)53 GraphicPropertyPanel::GraphicPropertyPanel(
54 Window* pParent,
55 const cssu::Reference<css::frame::XFrame>& rxFrame,
56 SfxBindings* pBindings)
57 : Control(
58 pParent,
59 SVX_RES(RID_SIDEBAR_GRAPHIC_PANEL)),
60 mpFtBrightness(new FixedText(this, SVX_RES(FT_BRIGHTNESS))),
61 mpMtrBrightness(new MetricField(this, SVX_RES(MTR_BRIGHTNESS))),
62 mpFtContrast(new FixedText(this, SVX_RES(FT_CONTRAST))),
63 mpMtrContrast(new MetricField(this, SVX_RES(MTR_CONTRAST))),
64 mpFtColorMode(new FixedText(this, SVX_RES(FT_COLOR_MODE))),
65 mpLBColorMode(new ListBox(this, SVX_RES(LB_COLOR_MODE))),
66 mpFtTrans(new FixedText(this, SVX_RES(FT_TRANSPARENT))),
67 mpMtrTrans(new MetricField(this, SVX_RES(MTR_TRANSPARENT))),
68 mpMtrRed(new MetricField(this, SVX_RES(MF_RED))),
69 mpMtrGreen(new MetricField(this, SVX_RES(MF_GREEN))),
70 mpMtrBlue(new MetricField(this, SVX_RES(MF_BLUE))),
71 mpMtrGamma(new MetricField(this, SVX_RES(MF_GAMMA))),
72 maBrightControl(SID_ATTR_GRAF_LUMINANCE, *pBindings, *this),
73 maContrastControl(SID_ATTR_GRAF_CONTRAST, *pBindings, *this),
74 maTransparenceControl(SID_ATTR_GRAF_TRANSPARENCE, *pBindings, *this),
75 maRedControl(SID_ATTR_GRAF_RED, *pBindings, *this),
76 maGreenControl(SID_ATTR_GRAF_GREEN, *pBindings, *this),
77 maBlueControl(SID_ATTR_GRAF_BLUE, *pBindings, *this),
78 maGammaControl(SID_ATTR_GRAF_GAMMA, *pBindings, *this),
79 maModeControl(SID_ATTR_GRAF_MODE, *pBindings, *this),
80 maImgRed(this, SVX_RES(IMG_RED)),
81 maImgGreen(this, SVX_RES(IMG_GREEN)),
82 maImgBlue(this, SVX_RES(IMG_BLUE)),
83 maImgGamma(this, SVX_RES(IMG_GAMMA)),
84 mxFrame(rxFrame),
85 mpBindings(pBindings),
86 maLayouter(*this)
87 {
88 Initialize();
89 FreeResource();
90
91 // Setup the grid layouter.
92 maLayouter.GetCell(0,0).SetControl(*mpFtBrightness).SetGridWidth(2);
93 maLayouter.GetCell(1,0).SetControl(*mpMtrBrightness).SetGridWidth(2);
94
95 maLayouter.GetCell(0,3).SetControl(*mpFtContrast).SetGridWidth(2);
96 maLayouter.GetCell(1,3).SetControl(*mpMtrContrast).SetGridWidth(2);
97
98 maLayouter.GetCell(2,0).SetControl(*mpFtColorMode).SetGridWidth(2);
99 maLayouter.GetCell(3,0).SetControl(*mpLBColorMode).SetGridWidth(2);
100
101 maLayouter.GetCell(2,3).SetControl(*mpFtTrans).SetGridWidth(2);
102 maLayouter.GetCell(3,3).SetControl(*mpMtrTrans).SetGridWidth(2);
103
104 maLayouter.GetCell(4,0).SetControl(maImgRed).SetFixedWidth();
105 maLayouter.GetCell(4,1).SetControl(*mpMtrRed);
106
107 maLayouter.GetCell(5,0).SetControl(maImgBlue).SetFixedWidth();
108 maLayouter.GetCell(5,1).SetControl(*mpMtrBlue);
109
110 maLayouter.GetCell(4,3).SetControl(maImgGreen).SetFixedWidth();
111 maLayouter.GetCell(4,4).SetControl(*mpMtrGreen);
112 maLayouter.GetCell(5,3).SetControl(maImgGamma).SetFixedWidth();
113 maLayouter.GetCell(5,4).SetControl(*mpMtrGamma);
114
115 maLayouter.GetColumn(0)
116 .SetWeight(0)
117 .SetLeftPadding(Layouter::MapWidth(*this,SECTIONPAGE_MARGIN_HORIZONTAL));
118 maLayouter.GetColumn(1)
119 .SetWeight(1)
120 .SetMinimumWidth(Layouter::MapWidth(*this, MBOX_WIDTH - 10));
121 maLayouter.GetColumn(2)
122 .SetWeight(0)
123 .SetMinimumWidth(Layouter::MapWidth(*this, CONTROL_SPACING_HORIZONTAL));
124 maLayouter.GetColumn(3)
125 .SetWeight(0);
126 maLayouter.GetColumn(4)
127 .SetWeight(1)
128 .SetMinimumWidth(Layouter::MapWidth(*this, MBOX_WIDTH - 10))
129 .SetRightPadding(Layouter::MapWidth(*this,SECTIONPAGE_MARGIN_HORIZONTAL));
130
131 // Make controls that display text handle short widths more
132 // graceful.
133 Layouter::PrepareForLayouting(*mpFtBrightness);
134 Layouter::PrepareForLayouting(*mpFtContrast);
135 Layouter::PrepareForLayouting(*mpFtColorMode);
136 Layouter::PrepareForLayouting(*mpFtTrans);
137 }
138
139 //////////////////////////////////////////////////////////////////////////////
140
~GraphicPropertyPanel()141 GraphicPropertyPanel::~GraphicPropertyPanel()
142 {
143 }
144
145 //////////////////////////////////////////////////////////////////////////////
146
Initialize()147 void GraphicPropertyPanel::Initialize()
148 {
149 mpFtBrightness->SetBackground(Wallpaper());
150 mpFtContrast->SetBackground(Wallpaper());
151 mpFtColorMode->SetBackground(Wallpaper());
152 mpFtTrans->SetBackground(Wallpaper());
153
154 mpMtrBrightness->SetModifyHdl( LINK( this, GraphicPropertyPanel, ModifyBrightnessHdl ) );
155 mpMtrBrightness->SetAccessibleName(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Brightness")));
156 mpMtrContrast->SetModifyHdl( LINK( this, GraphicPropertyPanel, ModifyContrastHdl ) );
157 mpMtrContrast->SetAccessibleName(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Contrast")));
158 mpMtrTrans->SetModifyHdl( LINK( this, GraphicPropertyPanel, ModifyTransHdl ) );
159 mpMtrTrans->SetAccessibleName(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Transparency")));
160
161 mpLBColorMode->InsertEntry(String(SVX_RES(RID_SVXSTR_GRAFMODE_STANDARD)));
162 mpLBColorMode->InsertEntry(String(SVX_RES(RID_SVXSTR_GRAFMODE_GREYS)));
163 mpLBColorMode->InsertEntry(String(SVX_RES(RID_SVXSTR_GRAFMODE_MONO)));
164 mpLBColorMode->InsertEntry(String(SVX_RES(RID_SVXSTR_GRAFMODE_WATERMARK)));
165 mpLBColorMode->SetSelectHdl( LINK( this, GraphicPropertyPanel, ClickColorModeHdl ));
166 mpLBColorMode->SetAccessibleName(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Color mode")));
167
168 mpMtrRed->SetModifyHdl( LINK( this, GraphicPropertyPanel, RedHdl ) );
169 mpMtrGreen->SetModifyHdl( LINK( this, GraphicPropertyPanel, GreenHdl ) );
170 mpMtrBlue->SetModifyHdl( LINK( this, GraphicPropertyPanel, BlueHdl ) );
171 mpMtrGamma->SetModifyHdl( LINK( this, GraphicPropertyPanel, GammaHdl ) );
172 mpMtrRed->SetAccessibleName(mpMtrRed->GetQuickHelpText());
173 mpMtrGreen->SetAccessibleName(mpMtrGreen->GetQuickHelpText());
174 mpMtrBlue->SetAccessibleName(mpMtrBlue->GetQuickHelpText());
175 mpMtrGamma->SetAccessibleName(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Gamma value")));
176
177 mpMtrRed->SetAccessibleRelationLabeledBy(mpMtrRed.get());
178 mpMtrGreen->SetAccessibleRelationLabeledBy(mpMtrGreen.get());
179 mpMtrBlue->SetAccessibleRelationLabeledBy(mpMtrBlue.get());
180 mpMtrGamma->SetAccessibleRelationLabeledBy(mpMtrGamma.get());
181 mpMtrBrightness->SetAccessibleRelationLabeledBy(mpFtBrightness.get());
182 mpMtrContrast->SetAccessibleRelationLabeledBy(mpFtContrast.get());
183 mpMtrTrans->SetAccessibleRelationLabeledBy(mpFtTrans.get());
184 mpLBColorMode->SetAccessibleRelationLabeledBy(mpFtColorMode.get());
185
186 // Fix left position of some controls that may be wrong due to
187 // rounding errors.
188 const sal_Int32 nRight0 (mpLBColorMode->GetPosPixel().X() + mpLBColorMode->GetSizePixel().Width());
189 const sal_Int32 nRight1 (mpMtrTrans->GetPosPixel().X() + mpMtrTrans->GetSizePixel().Width());
190 mpMtrRed->SetPosPixel(Point(
191 nRight0 - mpMtrRed->GetSizePixel().Width(),
192 mpMtrRed->GetPosPixel().Y()));
193 mpMtrBlue->SetPosPixel(Point(
194 nRight0 - mpMtrBlue->GetSizePixel().Width(),
195 mpMtrBlue->GetPosPixel().Y()));
196 mpMtrGreen->SetPosPixel(Point(
197 nRight1 - mpMtrGreen->GetSizePixel().Width(),
198 mpMtrGreen->GetPosPixel().Y()));
199 mpMtrGamma->SetPosPixel(Point(
200 nRight1 - mpMtrGamma->GetSizePixel().Width(),
201 mpMtrGamma->GetPosPixel().Y()));
202 }
203
204
205
206
207 //////////////////////////////////////////////////////////////////////////////
208
IMPL_LINK(GraphicPropertyPanel,ModifyBrightnessHdl,void *,EMPTYARG)209 IMPL_LINK( GraphicPropertyPanel, ModifyBrightnessHdl, void *, EMPTYARG )
210 {
211 const sal_Int16 nBright = mpMtrBrightness->GetValue();
212 const SfxInt16Item aBrightItem( SID_ATTR_GRAF_LUMINANCE, nBright );
213 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_LUMINANCE, SFX_CALLMODE_RECORD, &aBrightItem, 0L);
214 return 0L;
215 }
216
217 //////////////////////////////////////////////////////////////////////////////
218
IMPL_LINK(GraphicPropertyPanel,ModifyContrastHdl,void *,EMPTYARG)219 IMPL_LINK( GraphicPropertyPanel, ModifyContrastHdl, void *, EMPTYARG )
220 {
221 const sal_Int16 nContrast = mpMtrContrast->GetValue();
222 const SfxInt16Item aContrastItem( SID_ATTR_GRAF_CONTRAST, nContrast );
223 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_CONTRAST, SFX_CALLMODE_RECORD, &aContrastItem, 0L);
224 return 0L;
225 }
226
227 //////////////////////////////////////////////////////////////////////////////
228
IMPL_LINK(GraphicPropertyPanel,ModifyTransHdl,void *,EMPTYARG)229 IMPL_LINK( GraphicPropertyPanel, ModifyTransHdl, void *, EMPTYARG )
230 {
231 const sal_Int16 nTrans = mpMtrTrans->GetValue();
232 const SfxInt16Item aTransItem( SID_ATTR_GRAF_TRANSPARENCE, nTrans );
233 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_TRANSPARENCE, SFX_CALLMODE_RECORD, &aTransItem, 0L);
234 return 0L;
235 }
236
237 //////////////////////////////////////////////////////////////////////////////
238
239 IMPL_LINK( GraphicPropertyPanel, ClickColorModeHdl, ToolBox *, /* pBox */)
240 {
241 const sal_Int16 nTrans = mpLBColorMode->GetSelectEntryPos();
242 const SfxInt16Item aTransItem( SID_ATTR_GRAF_MODE, nTrans );
243 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_MODE, SFX_CALLMODE_RECORD, &aTransItem, 0L);
244 return 0L;
245 }
246
247 //////////////////////////////////////////////////////////////////////////////
248
IMPL_LINK(GraphicPropertyPanel,RedHdl,void *,EMPTYARG)249 IMPL_LINK( GraphicPropertyPanel, RedHdl, void*, EMPTYARG )
250 {
251 const sal_Int16 nRed = mpMtrRed->GetValue();
252 const SfxInt16Item aRedItem( SID_ATTR_GRAF_RED, nRed );
253 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_RED, SFX_CALLMODE_RECORD, &aRedItem, 0L);
254 return 0L;
255 }
256
257 //////////////////////////////////////////////////////////////////////////////
258
IMPL_LINK(GraphicPropertyPanel,GreenHdl,void *,EMPTYARG)259 IMPL_LINK( GraphicPropertyPanel, GreenHdl, void*, EMPTYARG )
260 {
261 const sal_Int16 nGreen = mpMtrGreen->GetValue();
262 const SfxInt16Item aGreenItem( SID_ATTR_GRAF_GREEN, nGreen );
263 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_GREEN, SFX_CALLMODE_RECORD, &aGreenItem, 0L);
264 return 0L;
265 }
266
267 //////////////////////////////////////////////////////////////////////////////
268
IMPL_LINK(GraphicPropertyPanel,BlueHdl,void *,EMPTYARG)269 IMPL_LINK(GraphicPropertyPanel, BlueHdl, void *, EMPTYARG)
270 {
271 const sal_Int16 nBlue = mpMtrBlue->GetValue();
272 const SfxInt16Item aBlueItem( SID_ATTR_GRAF_BLUE, nBlue );
273 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_BLUE, SFX_CALLMODE_RECORD, &aBlueItem, 0L);
274 return 0L;
275 }
276
277 //////////////////////////////////////////////////////////////////////////////
278
IMPL_LINK(GraphicPropertyPanel,GammaHdl,void *,EMPTYARG)279 IMPL_LINK(GraphicPropertyPanel, GammaHdl, void *, EMPTYARG)
280 {
281 const sal_Int32 nGamma = mpMtrGamma->GetValue();
282 const SfxInt32Item nGammaItem( SID_ATTR_GRAF_GAMMA, nGamma );
283 GetBindings()->GetDispatcher()->Execute(SID_ATTR_GRAF_GAMMA, SFX_CALLMODE_RECORD, &nGammaItem, 0L);
284 return 0L;
285 }
286
287 //////////////////////////////////////////////////////////////////////////////
288
SetupIcons(void)289 void GraphicPropertyPanel::SetupIcons(void)
290 {
291 if(Theme::GetBoolean(Theme::Bool_UseSymphonyIcons))
292 {
293 // todo
294 }
295 else
296 {
297 // todo
298 }
299 }
300
301 //////////////////////////////////////////////////////////////////////////////
302
Create(Window * pParent,const cssu::Reference<css::frame::XFrame> & rxFrame,SfxBindings * pBindings)303 GraphicPropertyPanel* GraphicPropertyPanel::Create (
304 Window* pParent,
305 const cssu::Reference<css::frame::XFrame>& rxFrame,
306 SfxBindings* pBindings)
307 {
308 if (pParent == NULL)
309 throw lang::IllegalArgumentException(A2S("no parent window given to GraphicPropertyPanel::Create"), NULL, 0);
310 if ( ! rxFrame.is())
311 throw lang::IllegalArgumentException(A2S("no XFrame given to GraphicPropertyPanel::Create"), NULL, 1);
312 if (pBindings == NULL)
313 throw lang::IllegalArgumentException(A2S("no SfxBindings given to GraphicPropertyPanel::Create"), NULL, 2);
314
315 return new GraphicPropertyPanel(
316 pParent,
317 rxFrame,
318 pBindings);
319 }
320
321 //////////////////////////////////////////////////////////////////////////////
322
DataChanged(const DataChangedEvent & rEvent)323 void GraphicPropertyPanel::DataChanged(
324 const DataChangedEvent& rEvent)
325 {
326 (void)rEvent;
327
328 SetupIcons();
329 }
330
331 //////////////////////////////////////////////////////////////////////////////
332
NotifyItemUpdate(sal_uInt16 nSID,SfxItemState eState,const SfxPoolItem * pState,const bool bIsEnabled)333 void GraphicPropertyPanel::NotifyItemUpdate(
334 sal_uInt16 nSID,
335 SfxItemState eState,
336 const SfxPoolItem* pState,
337 const bool bIsEnabled)
338 {
339 (void)bIsEnabled;
340
341 switch( nSID )
342 {
343 case SID_ATTR_GRAF_LUMINANCE:
344 {
345 if(eState >= SFX_ITEM_AVAILABLE)
346 {
347 mpMtrBrightness->Enable();
348 const SfxInt16Item* pItem = dynamic_cast< const SfxInt16Item* >(pState);
349
350 if(pItem)
351 {
352 const sal_Int64 nBright = pItem->GetValue();
353 mpMtrBrightness->SetValue(nBright);
354 }
355 }
356 else if(SFX_ITEM_DISABLED == eState)
357 {
358 mpMtrBrightness->Disable();
359 }
360 else
361 {
362 mpMtrBrightness->Enable();
363 mpMtrBrightness->SetText(String());
364 }
365 break;
366 }
367 case SID_ATTR_GRAF_CONTRAST:
368 {
369 if(eState >= SFX_ITEM_AVAILABLE)
370 {
371 mpMtrContrast->Enable();
372 const SfxInt16Item* pItem = dynamic_cast< const SfxInt16Item* >(pState);
373
374 if(pItem)
375 {
376 const sal_Int64 nContrast = pItem->GetValue();
377 mpMtrContrast->SetValue(nContrast);
378 }
379 }
380 else if(SFX_ITEM_DISABLED == eState)
381 {
382 mpMtrContrast->Disable();
383 }
384 else
385 {
386 mpMtrContrast->Enable();
387 mpMtrContrast->SetText(String());
388 }
389 break;
390 }
391 case SID_ATTR_GRAF_TRANSPARENCE:
392 {
393 if(eState >= SFX_ITEM_AVAILABLE)
394 {
395 mpMtrTrans->Enable();
396 const SfxUInt16Item* pItem = dynamic_cast< const SfxUInt16Item* >(pState);
397
398 if(pItem)
399 {
400 const sal_Int64 nTrans = pItem->GetValue();
401 mpMtrTrans->SetValue(nTrans);
402 }
403 }
404 else if(SFX_ITEM_DISABLED == eState)
405 {
406 mpMtrTrans->Disable();
407 }
408 else
409 {
410 mpMtrTrans->Enable();
411 mpMtrTrans->SetText(String());
412 }
413 break;
414 }
415 case SID_ATTR_GRAF_MODE:
416 {
417 if(eState >= SFX_ITEM_AVAILABLE)
418 {
419 mpLBColorMode->Enable();
420 const SfxUInt16Item* pItem = dynamic_cast< const SfxUInt16Item* >(pState);
421
422 if(pItem)
423 {
424 const sal_Int64 nTrans = pItem->GetValue();
425 mpLBColorMode->SelectEntryPos(nTrans);
426 }
427 }
428 else if(SFX_ITEM_DISABLED == eState)
429 {
430 mpLBColorMode->Disable();
431 }
432 else
433 {
434 mpLBColorMode->Enable();
435 mpLBColorMode->SetNoSelection();
436 }
437 break;
438 }
439 case SID_ATTR_GRAF_RED:
440 {
441 if(eState >= SFX_ITEM_AVAILABLE)
442 {
443 mpMtrRed->Enable();
444 const SfxInt16Item* pItem = dynamic_cast< const SfxInt16Item* >(pState);
445
446 if(pItem)
447 {
448 const sal_Int64 nRed = pItem->GetValue();
449 mpMtrRed->SetValue( nRed );
450 }
451 }
452 else if(SFX_ITEM_DISABLED == eState)
453 {
454 mpMtrRed->Disable();
455 }
456 else
457 {
458 mpMtrRed->Enable();
459 mpMtrRed->SetText(String());
460 }
461 break;
462 }
463 case SID_ATTR_GRAF_GREEN:
464 {
465 if(eState >= SFX_ITEM_AVAILABLE)
466 {
467 mpMtrGreen->Enable();
468 const SfxInt16Item* pItem = dynamic_cast< const SfxInt16Item* >(pState);
469
470 if(pItem)
471 {
472 const sal_Int64 nGreen = pItem->GetValue();
473 mpMtrGreen->SetValue( nGreen );
474 }
475 }
476 else if(SFX_ITEM_DISABLED == eState)
477 {
478 mpMtrGreen->Disable();
479 }
480 else
481 {
482 mpMtrGreen->Enable();
483 mpMtrGreen->SetText(String());
484 }
485 break;
486 }
487 case SID_ATTR_GRAF_BLUE:
488 {
489 if(eState >= SFX_ITEM_AVAILABLE)
490 {
491 mpMtrBlue->Enable();
492 const SfxInt16Item* pItem = dynamic_cast< const SfxInt16Item* >(pState);
493
494 if(pItem)
495 {
496 const sal_Int64 nBlue = pItem->GetValue();
497 mpMtrBlue->SetValue( nBlue );
498 }
499 }
500 else if(SFX_ITEM_DISABLED == eState)
501 {
502 mpMtrBlue->Disable();
503 }
504 else
505 {
506 mpMtrBlue->Enable();
507 mpMtrBlue->SetText(String());
508 }
509 break;
510 }
511 case SID_ATTR_GRAF_GAMMA:
512 {
513 if(eState >= SFX_ITEM_AVAILABLE)
514 {
515 mpMtrGamma->Enable();
516 const SfxUInt32Item* pItem = dynamic_cast< const SfxUInt32Item* >(pState);
517
518 if(pItem)
519 {
520 const sal_Int64 nGamma = pItem->GetValue();
521 mpMtrGamma->SetValue( nGamma );
522 }
523 }
524 else if(SFX_ITEM_DISABLED == eState)
525 {
526 mpMtrGamma->Disable();
527 }
528 else
529 {
530 mpMtrGamma->Enable();
531 mpMtrGamma->SetText(String());
532 }
533 break;
534 }
535 }
536 }
537
538
539
540
GetBindings()541 SfxBindings* GraphicPropertyPanel::GetBindings()
542 {
543 return mpBindings;
544 }
545
546
547
548
Resize(void)549 void GraphicPropertyPanel::Resize (void)
550 {
551 maLayouter.Layout();
552 }
553
554
555
556 }} // end of namespace ::svx::sidebar
557