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 2222de8995SAndre Fischer #include "precompiled_sfx2.hxx" 2322de8995SAndre Fischer 2413e1c3b4SAndre Fischer #include "TabBar.hxx" 257a32b0c8SAndre Fischer #include "sfx2/sidebar/SidebarChildWindow.hxx" 2622de8995SAndre Fischer #include "SidebarDockingWindow.hxx" 2722de8995SAndre Fischer #include "sfx2/sfxsids.hrc" 2822de8995SAndre Fischer #include "helpid.hrc" 2922de8995SAndre Fischer #include "sfx2/dockwin.hxx" 30*d29c2fc2SAndre Fischer #include <sfx2/sidebar/ResourceDefinitions.hrc> 3122de8995SAndre Fischer 3222de8995SAndre Fischer 337a32b0c8SAndre Fischer namespace sfx2 { namespace sidebar { 3422de8995SAndre Fischer 3522de8995SAndre Fischer 3622de8995SAndre Fischer SFX_IMPL_DOCKINGWINDOW(SidebarChildWindow, SID_SIDEBAR); 3722de8995SAndre Fischer 3822de8995SAndre Fischer 3922de8995SAndre Fischer SidebarChildWindow::SidebarChildWindow ( 4045da7d5eSAndre Fischer Window* pParentWindow, 4122de8995SAndre Fischer sal_uInt16 nId, 4222de8995SAndre Fischer SfxBindings* pBindings, 4345da7d5eSAndre Fischer SfxChildWinInfo* pInfo) 4445da7d5eSAndre Fischer : SfxChildWindow(pParentWindow, nId) 4522de8995SAndre Fischer { 4622de8995SAndre Fischer this->pWindow = new SidebarDockingWindow( 4722de8995SAndre Fischer pBindings, 4822de8995SAndre Fischer *this, 4945da7d5eSAndre Fischer pParentWindow, 5022de8995SAndre Fischer WB_STDDOCKWIN | WB_OWNERDRAWDECORATION | WB_CLIPCHILDREN | WB_SIZEABLE | WB_3DLOOK | WB_ROLLABLE); 5122de8995SAndre Fischer eChildAlignment = SFX_ALIGN_RIGHT; 5222de8995SAndre Fischer 5322de8995SAndre Fischer this->pWindow->SetHelpId(HID_SIDEBAR_WINDOW); 5413e1c3b4SAndre Fischer this->pWindow->SetOutputSizePixel(Size(GetDefaultWidth(this->pWindow), 450)); 5522de8995SAndre Fischer 5613e1c3b4SAndre Fischer SfxDockingWindow* pDockingParent = dynamic_cast<SfxDockingWindow*>(this->pWindow); 5745da7d5eSAndre Fischer if (pDockingParent != NULL) 5845da7d5eSAndre Fischer pDockingParent->Initialize(pInfo); 5922de8995SAndre Fischer SetHideNotDelete(sal_True); 6022de8995SAndre Fischer 6122de8995SAndre Fischer this->pWindow->Show(); 6222de8995SAndre Fischer } 6322de8995SAndre Fischer 6422de8995SAndre Fischer 6513e1c3b4SAndre Fischer 6613e1c3b4SAndre Fischer 6713e1c3b4SAndre Fischer sal_Int32 SidebarChildWindow::GetDefaultWidth (Window* pWindow) 6813e1c3b4SAndre Fischer { 6913e1c3b4SAndre Fischer if (pWindow != NULL) 7013e1c3b4SAndre Fischer { 7113e1c3b4SAndre Fischer // Width of the paragraph panel. 7213e1c3b4SAndre Fischer const static sal_Int32 nMaxPropertyPageWidth (115); 7313e1c3b4SAndre Fischer 7413e1c3b4SAndre Fischer return pWindow->LogicToPixel(Point(nMaxPropertyPageWidth,1), MAP_APPFONT).X() 7513e1c3b4SAndre Fischer + TabBar::GetDefaultWidth(); 7613e1c3b4SAndre Fischer } 7713e1c3b4SAndre Fischer else 7813e1c3b4SAndre Fischer return 0; 7913e1c3b4SAndre Fischer } 8013e1c3b4SAndre Fischer 8113e1c3b4SAndre Fischer 827a32b0c8SAndre Fischer } } // end of namespace sfx2::sidebar 83