LCOV - code coverage report
Current view: top level - svx/source/form - fmexpl.cxx (source / functions) Hit Total Coverage
Test: commit c8344322a7af75b84dd3ca8f78b05543a976dfd5 Lines: 2 271 0.7 %
Date: 2015-06-13 12:38:46 Functions: 3 75 4.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : 
      21             : #include "svx/fmresids.hrc"
      22             : #include "fmexpl.hxx"
      23             : 
      24             : #include "fmhelp.hrc"
      25             : #include <svx/fmglob.hxx>
      26             : #include "fmservs.hxx"
      27             : #include <svx/fmmodel.hxx>
      28             : #include "fmexch.hxx"
      29             : #include "fmundo.hxx"
      30             : #include "fmpgeimp.hxx"
      31             : 
      32             : #include <svx/svxids.hrc>
      33             : 
      34             : #include "fmprop.hrc"
      35             : #include <svx/dialmgr.hxx>
      36             : #include "svx/svditer.hxx"
      37             : #include <svx/svdouno.hxx>
      38             : #include <svx/svdobj.hxx>
      39             : #include <vcl/msgbox.hxx>
      40             : #include <sfx2/dispatch.hxx>
      41             : #include <sfx2/objsh.hxx>
      42             : #include <sfx2/viewsh.hxx>
      43             : #include <sfx2/viewfrm.hxx>
      44             : #include <com/sun/star/lang/XServiceInfo.hpp>
      45             : #include <com/sun/star/form/FormComponentType.hpp>
      46             : #include <com/sun/star/awt/XTabControllerModel.hpp>
      47             : #include <vcl/menu.hxx>
      48             : #include <sfx2/objitem.hxx>
      49             : #include <sfx2/request.hxx>
      50             : 
      51             : #include <vcl/wrkwin.hxx>
      52             : #include <svx/fmshell.hxx>
      53             : #include "fmshimp.hxx"
      54             : #include <svx/fmpage.hxx>
      55             : #include <com/sun/star/io/XPersistObject.hpp>
      56             : #include <com/sun/star/script/XEventAttacherManager.hpp>
      57             : #include <com/sun/star/sdb/CommandType.hpp>
      58             : #include <com/sun/star/beans/PropertyAttribute.hpp>
      59             : #include <comphelper/property.hxx>
      60             : #include <comphelper/processfactory.hxx>
      61             : #include <osl/diagnose.h>
      62             : 
      63             : using namespace ::svxform;
      64             : using namespace ::com::sun::star::uno;
      65             : using namespace ::com::sun::star::sdbc;
      66             : using namespace ::com::sun::star::sdb;
      67             : using namespace ::com::sun::star::form;
      68             : using namespace ::com::sun::star::beans;
      69             : using namespace ::com::sun::star::lang;
      70             : using namespace ::com::sun::star::container;
      71             : 
      72           0 : FmNavInsertedHint::FmNavInsertedHint( FmEntryData* pInsertedEntryData, sal_uInt32 nRelPos )
      73             :     :pEntryData( pInsertedEntryData )
      74           0 :     ,nPos( nRelPos )
      75             : 
      76             : {
      77           0 : }
      78             : 
      79             : 
      80           0 : FmNavInsertedHint::~FmNavInsertedHint()
      81             : {
      82           0 : }
      83             : 
      84             : 
      85             : 
      86             : // class FmNavInsertedHint
      87             : 
      88           0 : FmNavModelReplacedHint::FmNavModelReplacedHint( FmEntryData* pAffectedEntryData )
      89           0 :     :pEntryData( pAffectedEntryData )
      90             : {
      91           0 : }
      92             : 
      93             : 
      94           0 : FmNavModelReplacedHint::~FmNavModelReplacedHint()
      95             : {
      96           0 : }
      97             : 
      98           0 : FmNavRemovedHint::FmNavRemovedHint( FmEntryData* pRemovedEntryData )
      99           0 :     :pEntryData( pRemovedEntryData )
     100             : {
     101           0 : }
     102             : 
     103             : 
     104           0 : FmNavRemovedHint::~FmNavRemovedHint()
     105             : {
     106           0 : }
     107             : 
     108           0 : FmNavNameChangedHint::FmNavNameChangedHint( FmEntryData* pData, const OUString& rNewName )
     109             :     :pEntryData( pData )
     110           0 :     ,aNewName( rNewName )
     111             : {
     112           0 : }
     113             : 
     114             : 
     115           0 : FmNavNameChangedHint::~FmNavNameChangedHint()
     116             : {
     117           0 : }
     118             : 
     119           0 : FmNavClearedHint::FmNavClearedHint()
     120             : {
     121           0 : }
     122             : 
     123             : 
     124           0 : FmNavClearedHint::~FmNavClearedHint()
     125             : {
     126           0 : }
     127             : 
     128             : 
     129           0 : FmEntryDataList::FmEntryDataList()
     130             : {
     131           0 : }
     132             : 
     133             : 
     134           0 : FmEntryDataList::~FmEntryDataList()
     135             : {
     136           0 : }
     137             : 
     138             : 
     139           0 : FmEntryData* FmEntryDataList::remove( FmEntryData* pItem )
     140             : {
     141           0 :     for ( FmEntryDataBaseList::iterator it = maEntryDataList.begin();
     142           0 :           it != maEntryDataList.end();
     143             :           ++it
     144             :         )
     145             :     {
     146           0 :         if ( *it == pItem )
     147             :         {
     148           0 :             maEntryDataList.erase( it );
     149           0 :             break;
     150             :         }
     151             :     }
     152           0 :     return pItem;
     153             : }
     154             : 
     155             : 
     156           0 : void FmEntryDataList::insert( FmEntryData* pItem, size_t Index )
     157             : {
     158           0 :     if ( Index < maEntryDataList.size() )
     159             :     {
     160           0 :         FmEntryDataBaseList::iterator it = maEntryDataList.begin();
     161           0 :         ::std::advance( it, Index );
     162           0 :         maEntryDataList.insert( it, pItem );
     163             :     }
     164             :     else
     165           0 :         maEntryDataList.push_back( pItem );
     166           0 : }
     167             : 
     168             : 
     169           0 : void FmEntryDataList::clear()
     170             : {
     171           0 :     for ( size_t i = 0, n = maEntryDataList.size(); i < n; ++i )
     172           0 :         delete maEntryDataList[ i ];
     173           0 :     maEntryDataList.clear();
     174           0 : }
     175             : 
     176           0 : TYPEINIT0( FmEntryData );
     177             : 
     178           0 : FmEntryData::FmEntryData( FmEntryData* pParentData, const Reference< XInterface >& _rxIFace )
     179           0 :     :pParent( pParentData )
     180             : {
     181           0 :     pChildList = new FmEntryDataList();
     182             : 
     183           0 :     newObject( _rxIFace );
     184           0 : }
     185             : 
     186             : 
     187           0 : FmEntryData::~FmEntryData()
     188             : {
     189           0 :     Clear();
     190           0 :     delete pChildList;
     191           0 : }
     192             : 
     193             : 
     194           0 : void FmEntryData::newObject( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxIFace )
     195             : {
     196             :     // do not just copy, normalize it
     197           0 :     m_xNormalizedIFace = Reference< XInterface >( _rxIFace, UNO_QUERY );
     198           0 :     m_xProperties.set(m_xNormalizedIFace, css::uno::UNO_QUERY);
     199           0 :     m_xChild.set(m_xNormalizedIFace, css::uno::UNO_QUERY);
     200           0 : }
     201             : 
     202             : 
     203           0 : FmEntryData::FmEntryData( const FmEntryData& rEntryData )
     204             : {
     205           0 :     pChildList = new FmEntryDataList();
     206           0 :     aText = rEntryData.GetText();
     207           0 :     m_aNormalImage = rEntryData.GetNormalImage();
     208           0 :     pParent = rEntryData.GetParent();
     209             : 
     210             :     FmEntryData* pChildData;
     211           0 :     size_t nEntryCount = rEntryData.GetChildList()->size();
     212           0 :     for( size_t i = 0; i < nEntryCount; i++ )
     213             :     {
     214           0 :         pChildData = rEntryData.GetChildList()->at( i );
     215           0 :         FmEntryData* pNewChildData = pChildData->Clone();
     216           0 :         pChildList->insert( pNewChildData, size_t(-1) );
     217             :     }
     218             : 
     219           0 :     m_xNormalizedIFace = rEntryData.m_xNormalizedIFace;
     220           0 :     m_xProperties = rEntryData.m_xProperties;
     221           0 :     m_xChild = rEntryData.m_xChild;
     222           0 : }
     223             : 
     224             : 
     225           0 : void FmEntryData::Clear()
     226             : {
     227           0 :     GetChildList()->clear();
     228           0 : }
     229             : 
     230             : 
     231           0 : bool FmEntryData::IsEqualWithoutChildren( FmEntryData* pEntryData )
     232             : {
     233           0 :     if(this == pEntryData)
     234           0 :         return true;
     235             : 
     236           0 :     if( !pEntryData )
     237           0 :         return false;
     238             : 
     239           0 :     if( !aText.equals(pEntryData->GetText()))
     240           0 :         return false;
     241             : 
     242           0 :     if( !pEntryData->GetParent() && pParent )
     243           0 :         return false;
     244             : 
     245           0 :     if( pEntryData->GetParent() && !pParent )
     246           0 :         return false;
     247             : 
     248           0 :     if( !pEntryData->GetParent() && !pParent )
     249           0 :         return true;
     250             : 
     251           0 :     if( !pParent->IsEqualWithoutChildren(pEntryData->GetParent()) )
     252           0 :         return false;
     253             : 
     254           0 :     return true;
     255             : }
     256             : 
     257           0 : TYPEINIT1( FmFormData, FmEntryData );
     258             : 
     259           0 : FmFormData::FmFormData(
     260             :     const Reference< XForm >& _rxForm,
     261             :     const ImageList& _rNormalImages,
     262             :     FmFormData* _pParent
     263             : )
     264             : :   FmEntryData( _pParent, _rxForm ),
     265           0 :     m_xForm( _rxForm )
     266             : {
     267             : 
     268             :     // Images setzen
     269             : 
     270           0 :     m_aNormalImage = _rNormalImages.GetImage( RID_SVXIMG_FORM );
     271             : 
     272             : 
     273             :     // Titel setzen
     274           0 :     if (m_xForm.is())
     275             :     {
     276           0 :         Reference< XPropertySet >  xSet(m_xForm, UNO_QUERY);
     277           0 :         if (xSet.is())
     278             :         {
     279           0 :             OUString aEntryName(::comphelper::getString(xSet->getPropertyValue( FM_PROP_NAME )));
     280           0 :             SetText(aEntryName);
     281           0 :         }
     282             :     }
     283             :     else
     284           0 :         SetText( OUString() );
     285           0 : }
     286             : 
     287             : 
     288           0 : FmFormData::~FmFormData()
     289             : {
     290           0 : }
     291             : 
     292             : 
     293           0 : FmFormData::FmFormData( const FmFormData& rFormData )
     294           0 :     :FmEntryData( rFormData )
     295             : {
     296           0 :     m_xForm = rFormData.GetFormIface();
     297           0 : }
     298             : 
     299             : 
     300           0 : FmEntryData* FmFormData::Clone()
     301             : {
     302           0 :     return new FmFormData( *this );
     303             : }
     304             : 
     305             : 
     306           0 : bool FmFormData::IsEqualWithoutChildren( FmEntryData* pEntryData )
     307             : {
     308           0 :     if(this == pEntryData)
     309           0 :         return true;
     310           0 :     if( !pEntryData->ISA(FmFormData) )
     311           0 :         return false;
     312           0 :     FmFormData* pFormData = static_cast<FmFormData*>(pEntryData);
     313           0 :     if( m_xForm.get() != pFormData->GetFormIface().get() )
     314           0 :         return false;
     315             : 
     316           0 :     return FmEntryData::IsEqualWithoutChildren( pFormData );
     317             : }
     318             : 
     319           0 : TYPEINIT1( FmControlData, FmEntryData );
     320             : 
     321           0 : FmControlData::FmControlData(
     322             :     const Reference< XFormComponent >& _rxComponent,
     323             :     const ImageList& _rNormalImages,
     324             :     FmFormData* _pParent
     325             : )
     326             : :   FmEntryData( _pParent, _rxComponent ),
     327           0 :     m_xFormComponent( _rxComponent )
     328             : {
     329             : 
     330             :     // Images setzen
     331           0 :     m_aNormalImage = GetImage( _rNormalImages );
     332             : 
     333             : 
     334             :     // Titel setzen
     335           0 :     Reference< XPropertySet >  xSet(m_xFormComponent, UNO_QUERY);
     336           0 :     if( xSet.is() )
     337             :     {
     338           0 :         SetText( ::comphelper::getString(xSet->getPropertyValue( FM_PROP_NAME )));
     339           0 :     }
     340           0 : }
     341             : 
     342             : 
     343           0 : FmControlData::~FmControlData()
     344             : {
     345           0 : }
     346             : 
     347             : 
     348           0 : FmControlData::FmControlData( const FmControlData& rControlData )
     349           0 :     :FmEntryData( rControlData )
     350             : {
     351           0 :     m_xFormComponent = rControlData.GetFormComponent();
     352           0 : }
     353             : 
     354             : 
     355           0 : FmEntryData* FmControlData::Clone()
     356             : {
     357           0 :     return new FmControlData( *this );
     358             : }
     359             : 
     360             : 
     361           0 : Image FmControlData::GetImage(const ImageList& ilNavigatorImages) const
     362             : {
     363             : 
     364             :     // Default-Image
     365           0 :     Image aImage = ilNavigatorImages.GetImage( RID_SVXIMG_CONTROL );
     366             : 
     367           0 :     Reference< XServiceInfo > xInfo( m_xFormComponent, UNO_QUERY );
     368           0 :     if (!m_xFormComponent.is())
     369           0 :         return aImage;
     370             : 
     371             : 
     372             :     // Spezielle Control-Images
     373           0 :     sal_Int16 nObjectType = getControlTypeByObject(xInfo);
     374           0 :     switch (nObjectType)
     375             :     {
     376             :     case OBJ_FM_BUTTON:
     377           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_BUTTON );
     378           0 :         break;
     379             : 
     380             :     case OBJ_FM_FIXEDTEXT:
     381           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_FIXEDTEXT );
     382           0 :         break;
     383             : 
     384             :     case OBJ_FM_EDIT:
     385           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_EDIT );
     386           0 :         break;
     387             : 
     388             :     case OBJ_FM_RADIOBUTTON:
     389           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_RADIOBUTTON );
     390           0 :         break;
     391             : 
     392             :     case OBJ_FM_CHECKBOX:
     393           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_CHECKBOX );
     394           0 :         break;
     395             : 
     396             :     case OBJ_FM_LISTBOX:
     397           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_LISTBOX );
     398           0 :         break;
     399             : 
     400             :     case OBJ_FM_COMBOBOX:
     401           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_COMBOBOX );
     402           0 :         break;
     403             : 
     404             :     case OBJ_FM_NAVIGATIONBAR:
     405           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_NAVIGATIONBAR );
     406           0 :         break;
     407             : 
     408             :     case OBJ_FM_GROUPBOX:
     409           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_GROUPBOX );
     410           0 :         break;
     411             : 
     412             :     case OBJ_FM_IMAGEBUTTON:
     413           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_IMAGEBUTTON );
     414           0 :         break;
     415             : 
     416             :     case OBJ_FM_FILECONTROL:
     417           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_FILECONTROL );
     418           0 :         break;
     419             : 
     420             :     case OBJ_FM_HIDDEN:
     421           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_HIDDEN );
     422           0 :         break;
     423             : 
     424             :     case OBJ_FM_DATEFIELD:
     425           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_DATEFIELD );
     426           0 :         break;
     427             : 
     428             :     case OBJ_FM_TIMEFIELD:
     429           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_TIMEFIELD );
     430           0 :         break;
     431             : 
     432             :     case OBJ_FM_NUMERICFIELD:
     433           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_NUMERICFIELD );
     434           0 :         break;
     435             : 
     436             :     case OBJ_FM_CURRENCYFIELD:
     437           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_CURRENCYFIELD );
     438           0 :         break;
     439             : 
     440             :     case OBJ_FM_PATTERNFIELD:
     441           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_PATTERNFIELD );
     442           0 :         break;
     443             : 
     444             :     case OBJ_FM_IMAGECONTROL:
     445           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_IMAGECONTROL );
     446           0 :         break;
     447             : 
     448             :     case OBJ_FM_FORMATTEDFIELD:
     449           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_FORMATTEDFIELD );
     450           0 :         break;
     451             : 
     452             :     case OBJ_FM_GRID:
     453           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_GRID );
     454           0 :         break;
     455             : 
     456             :     case OBJ_FM_SCROLLBAR:
     457           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_SCROLLBAR );
     458           0 :         break;
     459             : 
     460             :     case OBJ_FM_SPINBUTTON:
     461           0 :         aImage = ilNavigatorImages.GetImage( RID_SVXIMG_SPINBUTTON);
     462           0 :         break;
     463             :     }
     464             : 
     465           0 :     return aImage;
     466             : }
     467             : 
     468             : 
     469           0 : bool FmControlData::IsEqualWithoutChildren( FmEntryData* pEntryData )
     470             : {
     471           0 :     if(this == pEntryData)
     472           0 :         return true;
     473             : 
     474           0 :     if( !pEntryData->ISA(FmControlData) )
     475           0 :         return false;
     476           0 :     FmControlData* pControlData = static_cast<FmControlData*>(pEntryData);
     477             : 
     478           0 :     if( m_xFormComponent.get() != pControlData->GetFormComponent().get() )
     479           0 :         return false;
     480             : 
     481           0 :     return FmEntryData::IsEqualWithoutChildren( pControlData );
     482             : }
     483             : 
     484             : 
     485           0 : void FmControlData::ModelReplaced(
     486             :     const Reference< XFormComponent >& _rxNew,
     487             :     const ImageList& _rNormalImages
     488             : )
     489             : {
     490           0 :     m_xFormComponent = _rxNew;
     491           0 :     newObject( m_xFormComponent );
     492             : 
     493             :     // Images neu setzen
     494           0 :     m_aNormalImage = GetImage( _rNormalImages );
     495           0 : }
     496             : 
     497             : 
     498             : namespace svxform
     499             : {
     500             : 
     501           0 :     NavigatorFrame::NavigatorFrame( SfxBindings* _pBindings, SfxChildWindow* _pMgr,
     502             :                                   vcl::Window* _pParent )
     503             :       :SfxDockingWindow( _pBindings, _pMgr, _pParent, WinBits(WB_STDMODELESS|WB_SIZEABLE|WB_ROLLABLE|WB_3DLOOK|WB_DOCKABLE) )
     504           0 :       ,SfxControllerItem( SID_FM_FMEXPLORER_CONTROL, *_pBindings )
     505             :     {
     506           0 :         SetHelpId( HID_FORM_NAVIGATOR_WIN );
     507             : 
     508           0 :         m_pNavigatorTree = VclPtr<NavigatorTree>::Create( this );
     509           0 :         m_pNavigatorTree->Show();
     510           0 :         SetText( SVX_RES(RID_STR_FMEXPLORER) );
     511           0 :         SfxDockingWindow::SetFloatingSize( Size(200,200) );
     512           0 :     }
     513             : 
     514             : 
     515           0 :     NavigatorFrame::~NavigatorFrame()
     516             :     {
     517           0 :         disposeOnce();
     518           0 :     }
     519             : 
     520           0 :     void NavigatorFrame::dispose()
     521             :     {
     522           0 :         m_pNavigatorTree.disposeAndClear();
     523           0 :         ::SfxControllerItem::dispose();
     524           0 :         SfxDockingWindow::dispose();
     525           0 :     }
     526             : 
     527             : 
     528           0 :     void NavigatorFrame::UpdateContent( FmFormShell* pFormShell )
     529             :     {
     530           0 :         m_pNavigatorTree->UpdateContent( pFormShell );
     531           0 :     }
     532             : 
     533             : 
     534           0 :     void NavigatorFrame::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState )
     535             :     {
     536           0 :         if( !pState  || SID_FM_FMEXPLORER_CONTROL != nSID )
     537           0 :             return;
     538             : 
     539           0 :         if( eState >= SfxItemState::DEFAULT )
     540             :         {
     541           0 :             FmFormShell* pShell = PTR_CAST( FmFormShell, static_cast<const SfxObjectItem*>(pState)->GetShell() );
     542           0 :             UpdateContent( pShell );
     543             :         }
     544             :         else
     545           0 :             UpdateContent( NULL );
     546             :     }
     547             : 
     548             : 
     549           0 :     void NavigatorFrame::GetFocus()
     550             :     {
     551           0 :         if ( m_pNavigatorTree )
     552           0 :             m_pNavigatorTree->GrabFocus();
     553             :         else
     554           0 :             SfxDockingWindow::GetFocus();
     555           0 :     }
     556             : 
     557             : 
     558           0 :     bool NavigatorFrame::Close()
     559             :     {
     560           0 :         UpdateContent( NULL );
     561           0 :         return SfxDockingWindow::Close();
     562             :     }
     563             : 
     564             : 
     565           0 :     void NavigatorFrame::FillInfo( SfxChildWinInfo& rInfo ) const
     566             :     {
     567           0 :         SfxDockingWindow::FillInfo( rInfo );
     568           0 :         rInfo.bVisible = false;
     569           0 :     }
     570             : 
     571             : 
     572           0 :     Size NavigatorFrame::CalcDockingSize( SfxChildAlignment eAlign )
     573             :     {
     574           0 :         if ( ( eAlign == SfxChildAlignment::TOP ) || ( eAlign == SfxChildAlignment::BOTTOM ) )
     575           0 :             return Size();
     576             : 
     577           0 :         return SfxDockingWindow::CalcDockingSize( eAlign );
     578             :     }
     579             : 
     580             : 
     581           0 :     SfxChildAlignment NavigatorFrame::CheckAlignment( SfxChildAlignment _eActAlign, SfxChildAlignment _eAlign )
     582             :     {
     583           0 :         if ( ( _eAlign == SfxChildAlignment::LEFT ) || ( _eAlign == SfxChildAlignment::RIGHT ) || ( _eAlign == SfxChildAlignment::NOALIGNMENT ) )
     584           0 :             return _eAlign;
     585           0 :         return _eActAlign;
     586             :     }
     587             : 
     588             : 
     589           0 :     void NavigatorFrame::Resize()
     590             :     {
     591           0 :         SfxDockingWindow::Resize();
     592             : 
     593           0 :         Size aLogOutputSize = PixelToLogic( GetOutputSizePixel(), MAP_APPFONT );
     594           0 :         Size aLogExplSize = aLogOutputSize;
     595           0 :         aLogExplSize.Width() -= 6;
     596           0 :         aLogExplSize.Height() -= 6;
     597             : 
     598           0 :         Point aExplPos = LogicToPixel( Point(3,3), MAP_APPFONT );
     599           0 :         Size aExplSize = LogicToPixel( aLogExplSize, MAP_APPFONT );
     600             : 
     601           0 :         m_pNavigatorTree->SetPosSizePixel( aExplPos, aExplSize );
     602           0 :     }
     603             : 
     604             : 
     605             : 
     606             :     // class NavigatorFrameManager
     607             : 
     608             : 
     609             : 
     610         114 :     SFX_IMPL_DOCKINGWINDOW( NavigatorFrameManager, SID_FM_SHOW_FMEXPLORER )
     611             : 
     612             : 
     613           0 :     NavigatorFrameManager::NavigatorFrameManager( vcl::Window* _pParent, sal_uInt16 _nId,
     614             :                                         SfxBindings* _pBindings, SfxChildWinInfo* _pInfo )
     615           0 :                      :SfxChildWindow( _pParent, _nId )
     616             :     {
     617           0 :         pWindow = VclPtr<NavigatorFrame>::Create( _pBindings, this, _pParent );
     618           0 :         eChildAlignment = SfxChildAlignment::NOALIGNMENT;
     619           0 :         static_cast<SfxDockingWindow*>(pWindow.get())->Initialize( _pInfo );
     620           0 :     }
     621             : 
     622             : 
     623         435 : }
     624             : 
     625             : 
     626             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.11