xref: /trunk/main/svx/source/sidebar/graphic/GraphicPropertyPanel.hxx (revision 6e496631967b81de2ca58b050aa221fc91b6c02b)
18dcb2a10SAndre Fischer /**************************************************************
28dcb2a10SAndre Fischer  *
38dcb2a10SAndre Fischer  * Licensed to the Apache Software Foundation (ASF) under one
48dcb2a10SAndre Fischer  * or more contributor license agreements.  See the NOTICE file
58dcb2a10SAndre Fischer  * distributed with this work for additional information
68dcb2a10SAndre Fischer  * regarding copyright ownership.  The ASF licenses this file
78dcb2a10SAndre Fischer  * to you under the Apache License, Version 2.0 (the
88dcb2a10SAndre Fischer  * "License"); you may not use this file except in compliance
98dcb2a10SAndre Fischer  * with the License.  You may obtain a copy of the License at
108dcb2a10SAndre Fischer  *
118dcb2a10SAndre Fischer  *   http://www.apache.org/licenses/LICENSE-2.0
128dcb2a10SAndre Fischer  *
138dcb2a10SAndre Fischer  * Unless required by applicable law or agreed to in writing,
148dcb2a10SAndre Fischer  * software distributed under the License is distributed on an
158dcb2a10SAndre Fischer  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
168dcb2a10SAndre Fischer  * KIND, either express or implied.  See the License for the
178dcb2a10SAndre Fischer  * specific language governing permissions and limitations
188dcb2a10SAndre Fischer  * under the License.
198dcb2a10SAndre Fischer  *
208dcb2a10SAndre Fischer  *************************************************************/
218dcb2a10SAndre Fischer 
22*6e496631Smseidel 
23*6e496631Smseidel 
248dcb2a10SAndre Fischer #ifndef SVX_PROPERTYPANEL_GRAPHICPAGE_HXX
258dcb2a10SAndre Fischer #define SVX_PROPERTYPANEL_GRAPHICPAGE_HXX
268dcb2a10SAndre Fischer 
278dcb2a10SAndre Fischer #include <vcl/ctrl.hxx>
288dcb2a10SAndre Fischer #include <sfx2/sidebar/SidebarPanelBase.hxx>
298dcb2a10SAndre Fischer #include <sfx2/sidebar/ControllerItem.hxx>
306a606da0SAndre Fischer #include <sfx2/sidebar/GridLayouter.hxx>
318dcb2a10SAndre Fischer #include <vcl/fixed.hxx>
328dcb2a10SAndre Fischer #include <boost/scoped_ptr.hpp>
338dcb2a10SAndre Fischer 
348dcb2a10SAndre Fischer class FixedText;
358dcb2a10SAndre Fischer class MetricField;
368dcb2a10SAndre Fischer class ListBox;
378dcb2a10SAndre Fischer class FloatingWindow;
388dcb2a10SAndre Fischer 
398dcb2a10SAndre Fischer 
408dcb2a10SAndre Fischer namespace svx { namespace sidebar {
418dcb2a10SAndre Fischer 
428dcb2a10SAndre Fischer class GraphicPropertyPanel
438dcb2a10SAndre Fischer :   public Control,
448dcb2a10SAndre Fischer     public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
458dcb2a10SAndre Fischer {
468dcb2a10SAndre Fischer public:
478dcb2a10SAndre Fischer     static GraphicPropertyPanel* Create(
488dcb2a10SAndre Fischer         Window* pParent,
498dcb2a10SAndre Fischer         const cssu::Reference<css::frame::XFrame>& rxFrame,
508dcb2a10SAndre Fischer         SfxBindings* pBindings);
518dcb2a10SAndre Fischer 
528dcb2a10SAndre Fischer     virtual void DataChanged(
538dcb2a10SAndre Fischer         const DataChangedEvent& rEvent);
548dcb2a10SAndre Fischer 
558dcb2a10SAndre Fischer     virtual void NotifyItemUpdate(
568dcb2a10SAndre Fischer         const sal_uInt16 nSId,
578dcb2a10SAndre Fischer         const SfxItemState eState,
5845da7d5eSAndre Fischer         const SfxPoolItem* pState,
5945da7d5eSAndre Fischer         const bool bIsEnabled);
608dcb2a10SAndre Fischer 
618dcb2a10SAndre Fischer     SfxBindings* GetBindings();
628dcb2a10SAndre Fischer 
636a606da0SAndre Fischer     virtual void Resize (void);
646a606da0SAndre Fischer 
658dcb2a10SAndre Fischer private:
668dcb2a10SAndre Fischer     //ui controls
678dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtBrightness;
688dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrBrightness;
698dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtContrast;
708dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrContrast;
718dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtColorMode;
728dcb2a10SAndre Fischer     ::boost::scoped_ptr< ListBox >                      mpLBColorMode;
738dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtTrans;
748dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrTrans;
758dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrRed;
768dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrGreen;
778dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrBlue;
788dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrGamma;
798dcb2a10SAndre Fischer 
808dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maBrightControl;
818dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maContrastControl;
828dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maTransparenceControl;
838dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maRedControl;
848dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maGreenControl;
858dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maBlueControl;
868dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maGammaControl;
878dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maModeControl;
888dcb2a10SAndre Fischer 
898dcb2a10SAndre Fischer     Image                                               maImgNormal;
908dcb2a10SAndre Fischer     Image                                               maImgBW;
918dcb2a10SAndre Fischer     Image                                               maImgGray;
928dcb2a10SAndre Fischer     Image                                               maImgWater;
938dcb2a10SAndre Fischer 
948dcb2a10SAndre Fischer     FixedImage                                          maImgRed;
958dcb2a10SAndre Fischer     FixedImage                                          maImgGreen;
968dcb2a10SAndre Fischer     FixedImage                                          maImgBlue;
978dcb2a10SAndre Fischer     FixedImage                                          maImgGamma;
988dcb2a10SAndre Fischer 
998dcb2a10SAndre Fischer     String                                              msNormal;
1008dcb2a10SAndre Fischer     String                                              msBW;
1018dcb2a10SAndre Fischer     String                                              msGray;
1028dcb2a10SAndre Fischer     String                                              msWater;
1038dcb2a10SAndre Fischer 
1048dcb2a10SAndre Fischer     cssu::Reference<css::frame::XFrame>                 mxFrame;
1058dcb2a10SAndre Fischer     SfxBindings*                                        mpBindings;
1066a606da0SAndre Fischer     ::sfx2::sidebar::GridLayouter maLayouter;
1078dcb2a10SAndre Fischer 
1088dcb2a10SAndre Fischer     DECL_LINK( ModifyBrightnessHdl, void * );
1098dcb2a10SAndre Fischer     DECL_LINK( ModifyContrastHdl, void * );
1108dcb2a10SAndre Fischer     DECL_LINK( ModifyTransHdl, void * );
1118dcb2a10SAndre Fischer     DECL_LINK( ClickColorModeHdl, ToolBox * );
1128dcb2a10SAndre Fischer     DECL_LINK( ImplPopupModeEndHdl, FloatingWindow* );
1138dcb2a10SAndre Fischer     DECL_LINK( RedHdl, void*);
1148dcb2a10SAndre Fischer     DECL_LINK( GreenHdl, void*);
1158dcb2a10SAndre Fischer     DECL_LINK( BlueHdl, void*);
1168dcb2a10SAndre Fischer     DECL_LINK( GammaHdl, void*);
1178dcb2a10SAndre Fischer 
118*6e496631Smseidel     // constructor/destructor
1198dcb2a10SAndre Fischer     GraphicPropertyPanel(
1208dcb2a10SAndre Fischer         Window* pParent,
1218dcb2a10SAndre Fischer         const cssu::Reference<css::frame::XFrame>& rxFrame,
1228dcb2a10SAndre Fischer         SfxBindings* pBindings);
1238dcb2a10SAndre Fischer     virtual ~GraphicPropertyPanel();
1248dcb2a10SAndre Fischer 
1258dcb2a10SAndre Fischer     void SetupIcons(void);
1268dcb2a10SAndre Fischer     void Initialize();
1278dcb2a10SAndre Fischer };
1288dcb2a10SAndre Fischer 
1298dcb2a10SAndre Fischer 
1308dcb2a10SAndre Fischer } } // end of namespace ::svx::sidebar
1318dcb2a10SAndre Fischer 
132f120fe41SAndre Fischer #endif
1334e8031e0SArmin Le Grand 
134facb16e7SArmin Le Grand // eof
135