xref: /aoo42x/main/sfx2/inc/sfx2/sidebar/Sidebar.hxx (revision 3091fa8a)
122de8995SAndre Fischer /**************************************************************
222de8995SAndre Fischer  *
322de8995SAndre Fischer  * Licensed to the Apache Software Foundation (ASF) under one
422de8995SAndre Fischer  * or more contributor license agreements.  See the NOTICE file
522de8995SAndre Fischer  * distributed with this work for additional information
622de8995SAndre Fischer  * regarding copyright ownership.  The ASF licenses this file
722de8995SAndre Fischer  * to you under the Apache License, Version 2.0 (the
822de8995SAndre Fischer  * "License"); you may not use this file except in compliance
922de8995SAndre Fischer  * with the License.  You may obtain a copy of the License at
1022de8995SAndre Fischer  *
1122de8995SAndre Fischer  *   http://www.apache.org/licenses/LICENSE-2.0
1222de8995SAndre Fischer  *
1322de8995SAndre Fischer  * Unless required by applicable law or agreed to in writing,
1422de8995SAndre Fischer  * software distributed under the License is distributed on an
1522de8995SAndre Fischer  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
1622de8995SAndre Fischer  * KIND, either express or implied.  See the License for the
1722de8995SAndre Fischer  * specific language governing permissions and limitations
1822de8995SAndre Fischer  * under the License.
1922de8995SAndre Fischer  *
2022de8995SAndre Fischer  *************************************************************/
2122de8995SAndre Fischer 
22*3091fa8aSAndre Fischer #ifndef SFX_SIDEBAR_SIDEBAR_HXX
23*3091fa8aSAndre Fischer #define SFX_SIDEBAR_SIDEBAR_HXX
2422de8995SAndre Fischer 
2522de8995SAndre Fischer #include "sfx2/dllapi.h"
2622de8995SAndre Fischer #include <com/sun/star/frame/XFrame.hpp>
2722de8995SAndre Fischer 
2822de8995SAndre Fischer namespace css = ::com::sun::star;
2922de8995SAndre Fischer namespace cssu = ::com::sun::star::uno;
3022de8995SAndre Fischer 
3122de8995SAndre Fischer 
32*3091fa8aSAndre Fischer namespace sfx2 { namespace sidebar {
3322de8995SAndre Fischer 
34*3091fa8aSAndre Fischer /** Accept requests for switching to certain panels or decks.
3522de8995SAndre Fischer */
3622de8995SAndre Fischer class SFX2_DLLPUBLIC Sidebar
3722de8995SAndre Fischer {
3822de8995SAndre Fischer public:
39*3091fa8aSAndre Fischer     /** Switch to the deck that contains the specified panel and make
40*3091fa8aSAndre Fischer         sure that the panel is visible (expanded and scrolled into the
41*3091fa8aSAndre Fischer         visible area.)
42*3091fa8aSAndre Fischer         Note that most of the work is done asynchronously and that
43*3091fa8aSAndre Fischer         this function probably returns before the requested panel is visible.
44*3091fa8aSAndre Fischer     */
45*3091fa8aSAndre Fischer     static void ShowPanel (
46*3091fa8aSAndre Fischer         const ::rtl::OUString& rsPanelId,
47*3091fa8aSAndre Fischer         const cssu::Reference<css::frame::XFrame>& rxFrame);
48*3091fa8aSAndre Fischer 
49*3091fa8aSAndre Fischer     /** Switch to the specified deck.
50*3091fa8aSAndre Fischer         Note that most of the work is done asynchronously and that
51*3091fa8aSAndre Fischer         this function probably returns before the requested deck is visible.
52*3091fa8aSAndre Fischer     */
53*3091fa8aSAndre Fischer     static void ShowDeck (
54*3091fa8aSAndre Fischer         const ::rtl::OUString& rsDeckId,
55*3091fa8aSAndre Fischer         const cssu::Reference<css::frame::XFrame>& rxFrame);
5622de8995SAndre Fischer };
5722de8995SAndre Fischer 
58ff12d537SAndre Fischer } } // end of namespace sfx2::sidebar
5922de8995SAndre Fischer 
6022de8995SAndre Fischer #endif
61