xref: /AOO41X/main/svx/source/sidebar/graphic/GraphicPropertyPanel.hxx (revision d3e0dd8eb215533c15e891ee35bd141abe9397ee)
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 
228dcb2a10SAndre Fischer #ifndef SVX_PROPERTYPANEL_GRAPHICPAGE_HXX
238dcb2a10SAndre Fischer #define SVX_PROPERTYPANEL_GRAPHICPAGE_HXX
248dcb2a10SAndre Fischer 
258dcb2a10SAndre Fischer #include <vcl/ctrl.hxx>
268dcb2a10SAndre Fischer #include <sfx2/sidebar/SidebarPanelBase.hxx>
278dcb2a10SAndre Fischer #include <sfx2/sidebar/ControllerItem.hxx>
28*6a606da0SAndre Fischer #include <sfx2/sidebar/GridLayouter.hxx>
298dcb2a10SAndre Fischer #include <vcl/fixed.hxx>
308dcb2a10SAndre Fischer #include <boost/scoped_ptr.hpp>
318dcb2a10SAndre Fischer 
328dcb2a10SAndre Fischer class FixedText;
338dcb2a10SAndre Fischer class MetricField;
348dcb2a10SAndre Fischer class ListBox;
358dcb2a10SAndre Fischer class FloatingWindow;
368dcb2a10SAndre Fischer 
378dcb2a10SAndre Fischer 
388dcb2a10SAndre Fischer namespace svx { namespace sidebar {
398dcb2a10SAndre Fischer 
408dcb2a10SAndre Fischer class GraphicPropertyPanel
418dcb2a10SAndre Fischer :   public Control,
428dcb2a10SAndre Fischer     public ::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
438dcb2a10SAndre Fischer {
448dcb2a10SAndre Fischer public:
458dcb2a10SAndre Fischer     static GraphicPropertyPanel* Create(
468dcb2a10SAndre Fischer         Window* pParent,
478dcb2a10SAndre Fischer         const cssu::Reference<css::frame::XFrame>& rxFrame,
488dcb2a10SAndre Fischer         SfxBindings* pBindings);
498dcb2a10SAndre Fischer 
508dcb2a10SAndre Fischer     virtual void DataChanged(
518dcb2a10SAndre Fischer         const DataChangedEvent& rEvent);
528dcb2a10SAndre Fischer 
538dcb2a10SAndre Fischer     virtual void NotifyItemUpdate(
548dcb2a10SAndre Fischer         const sal_uInt16 nSId,
558dcb2a10SAndre Fischer         const SfxItemState eState,
5645da7d5eSAndre Fischer         const SfxPoolItem* pState,
5745da7d5eSAndre Fischer         const bool bIsEnabled);
588dcb2a10SAndre Fischer 
598dcb2a10SAndre Fischer     SfxBindings* GetBindings();
608dcb2a10SAndre Fischer 
61*6a606da0SAndre Fischer     virtual void Resize (void);
62*6a606da0SAndre Fischer 
638dcb2a10SAndre Fischer private:
648dcb2a10SAndre Fischer     //ui controls
658dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtBrightness;
668dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrBrightness;
678dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtContrast;
688dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrContrast;
698dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtColorMode;
708dcb2a10SAndre Fischer     ::boost::scoped_ptr< ListBox >                      mpLBColorMode;
718dcb2a10SAndre Fischer     ::boost::scoped_ptr< FixedText >                    mpFtTrans;
728dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrTrans;
738dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrRed;
748dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrGreen;
758dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrBlue;
768dcb2a10SAndre Fischer     ::boost::scoped_ptr< MetricField >                  mpMtrGamma;
778dcb2a10SAndre Fischer 
788dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maBrightControl;
798dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maContrastControl;
808dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maTransparenceControl;
818dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maRedControl;
828dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maGreenControl;
838dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maBlueControl;
848dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maGammaControl;
858dcb2a10SAndre Fischer     ::sfx2::sidebar::ControllerItem                     maModeControl;
868dcb2a10SAndre Fischer 
878dcb2a10SAndre Fischer     Image                                               maImgNormal;
888dcb2a10SAndre Fischer     Image                                               maImgBW;
898dcb2a10SAndre Fischer     Image                                               maImgGray;
908dcb2a10SAndre Fischer     Image                                               maImgWater;
918dcb2a10SAndre Fischer 
928dcb2a10SAndre Fischer     FixedImage                                          maImgRed;
938dcb2a10SAndre Fischer     FixedImage                                          maImgGreen;
948dcb2a10SAndre Fischer     FixedImage                                          maImgBlue;
958dcb2a10SAndre Fischer     FixedImage                                          maImgGamma;
968dcb2a10SAndre Fischer 
978dcb2a10SAndre Fischer     String                                              msNormal;
988dcb2a10SAndre Fischer     String                                              msBW;
998dcb2a10SAndre Fischer     String                                              msGray;
1008dcb2a10SAndre Fischer     String                                              msWater;
1018dcb2a10SAndre Fischer 
1028dcb2a10SAndre Fischer     cssu::Reference<css::frame::XFrame>                 mxFrame;
1038dcb2a10SAndre Fischer     SfxBindings*                                        mpBindings;
104*6a606da0SAndre Fischer     ::sfx2::sidebar::GridLayouter maLayouter;
1058dcb2a10SAndre Fischer 
1068dcb2a10SAndre Fischer     DECL_LINK( ModifyBrightnessHdl, void * );
1078dcb2a10SAndre Fischer     DECL_LINK( ModifyContrastHdl, void * );
1088dcb2a10SAndre Fischer     DECL_LINK( ModifyTransHdl, void * );
1098dcb2a10SAndre Fischer     DECL_LINK( ClickColorModeHdl, ToolBox * );
1108dcb2a10SAndre Fischer     DECL_LINK( ImplPopupModeEndHdl, FloatingWindow* );
1118dcb2a10SAndre Fischer     DECL_LINK( RedHdl, void*);
1128dcb2a10SAndre Fischer     DECL_LINK( GreenHdl, void*);
1138dcb2a10SAndre Fischer     DECL_LINK( BlueHdl, void*);
1148dcb2a10SAndre Fischer     DECL_LINK( GammaHdl, void*);
1158dcb2a10SAndre Fischer 
1168dcb2a10SAndre Fischer     // constructor/destuctor
1178dcb2a10SAndre Fischer     GraphicPropertyPanel(
1188dcb2a10SAndre Fischer         Window* pParent,
1198dcb2a10SAndre Fischer         const cssu::Reference<css::frame::XFrame>& rxFrame,
1208dcb2a10SAndre Fischer         SfxBindings* pBindings);
1218dcb2a10SAndre Fischer     virtual ~GraphicPropertyPanel();
1228dcb2a10SAndre Fischer 
1238dcb2a10SAndre Fischer     void SetupIcons(void);
1248dcb2a10SAndre Fischer     void Initialize();
1258dcb2a10SAndre Fischer };
1268dcb2a10SAndre Fischer 
1278dcb2a10SAndre Fischer 
1288dcb2a10SAndre Fischer } } // end of namespace ::svx::sidebar
1298dcb2a10SAndre Fischer 
130f120fe41SAndre Fischer #endif
1314e8031e0SArmin Le Grand 
132facb16e7SArmin Le Grand // eof
133