1*22de8995SAndre Fischer /************************************************************** 2*22de8995SAndre Fischer * 3*22de8995SAndre Fischer * Licensed to the Apache Software Foundation (ASF) under one 4*22de8995SAndre Fischer * or more contributor license agreements. See the NOTICE file 5*22de8995SAndre Fischer * distributed with this work for additional information 6*22de8995SAndre Fischer * regarding copyright ownership. The ASF licenses this file 7*22de8995SAndre Fischer * to you under the Apache License, Version 2.0 (the 8*22de8995SAndre Fischer * "License"); you may not use this file except in compliance 9*22de8995SAndre Fischer * with the License. You may obtain a copy of the License at 10*22de8995SAndre Fischer * 11*22de8995SAndre Fischer * http://www.apache.org/licenses/LICENSE-2.0 12*22de8995SAndre Fischer * 13*22de8995SAndre Fischer * Unless required by applicable law or agreed to in writing, 14*22de8995SAndre Fischer * software distributed under the License is distributed on an 15*22de8995SAndre Fischer * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*22de8995SAndre Fischer * KIND, either express or implied. See the License for the 17*22de8995SAndre Fischer * specific language governing permissions and limitations 18*22de8995SAndre Fischer * under the License. 19*22de8995SAndre Fischer * 20*22de8995SAndre Fischer *************************************************************/ 21*22de8995SAndre Fischer 22*22de8995SAndre Fischer #ifndef SFX_SIDEBAR_PANEL_HXX 23*22de8995SAndre Fischer #define SFX_SIDEBAR_PANEL_HXX 24*22de8995SAndre Fischer 25*22de8995SAndre Fischer #include "vcl/window.hxx" 26*22de8995SAndre Fischer #include <com/sun/star/ui/XUIElement.hpp> 27*22de8995SAndre Fischer #include <com/sun/star/ui/XVerticalStackLayoutElement.hpp> 28*22de8995SAndre Fischer 29*22de8995SAndre Fischer namespace css = ::com::sun::star; 30*22de8995SAndre Fischer namespace cssu = ::com::sun::star::uno; 31*22de8995SAndre Fischer 32*22de8995SAndre Fischer namespace sfx2 { 33*22de8995SAndre Fischer 34*22de8995SAndre Fischer class ContentPanelDescriptor; 35*22de8995SAndre Fischer class TitleBar; 36*22de8995SAndre Fischer 37*22de8995SAndre Fischer 38*22de8995SAndre Fischer class Panel 39*22de8995SAndre Fischer : public Window 40*22de8995SAndre Fischer { 41*22de8995SAndre Fischer public: 42*22de8995SAndre Fischer Panel ( 43*22de8995SAndre Fischer const ContentPanelDescriptor& rPanelDescriptor, 44*22de8995SAndre Fischer Window* pParentWindow); 45*22de8995SAndre Fischer virtual ~Panel (void); 46*22de8995SAndre Fischer 47*22de8995SAndre Fischer const ::rtl::OUString& GetLayoutHint (void) const; 48*22de8995SAndre Fischer TitleBar* GetTitleBar (void) const; 49*22de8995SAndre Fischer bool IsTitleBarOptional (void) const; 50*22de8995SAndre Fischer void SetUIElement (const cssu::Reference<css::ui::XUIElement>& rxElement); 51*22de8995SAndre Fischer cssu::Reference<css::ui::XVerticalStackLayoutElement> Panel::GetVerticalStackElement (void) const; 52*22de8995SAndre Fischer 53*22de8995SAndre Fischer virtual void Paint (const Rectangle& rUpdateArea); 54*22de8995SAndre Fischer 55*22de8995SAndre Fischer private: 56*22de8995SAndre Fischer const ::rtl::OUString msLayoutHint; 57*22de8995SAndre Fischer TitleBar* mpTitleBar; 58*22de8995SAndre Fischer const bool mbIsTitleBarOptional; 59*22de8995SAndre Fischer cssu::Reference<css::ui::XUIElement> mxElement; 60*22de8995SAndre Fischer cssu::Reference<css::ui::XVerticalStackLayoutElement> mxVerticalStackLayoutElement; 61*22de8995SAndre Fischer }; 62*22de8995SAndre Fischer 63*22de8995SAndre Fischer 64*22de8995SAndre Fischer } // end of namespace sfx2 65*22de8995SAndre Fischer 66*22de8995SAndre Fischer #endif 67