2011-08-04 15:39:25 +01:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2012-10-02 14:13:40 +01:00
|
|
|
/*
|
|
|
|
* This file is part of the LibreOffice project.
|
|
|
|
*
|
|
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*
|
|
|
|
* This file incorporates work covered by the following license notice:
|
|
|
|
*
|
|
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
* contributor license agreements. See the NOTICE file distributed
|
|
|
|
* with this work for additional information regarding copyright
|
|
|
|
* ownership. The ASF licenses this file to you under the Apache
|
|
|
|
* License, Version 2.0 (the "License"); you may not use this file
|
|
|
|
* except in compliance with the License. You may obtain a copy of
|
|
|
|
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
|
|
*/
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2013-10-23 19:15:52 +02:00
|
|
|
#ifndef INCLUDED_TOOLKIT_CONTROLS_CONTROLMODELCONTAINERBASE_HXX
|
|
|
|
#define INCLUDED_TOOLKIT_CONTROLS_CONTROLMODELCONTAINERBASE_HXX
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
#include <com/sun/star/container/XNameContainer.hpp>
|
|
|
|
#include <com/sun/star/container/XContainer.hpp>
|
|
|
|
#include <com/sun/star/awt/XTabControllerModel.hpp>
|
|
|
|
#include <com/sun/star/util/XChangesNotifier.hpp>
|
|
|
|
#include <com/sun/star/util/XChangesListener.hpp>
|
|
|
|
#include <com/sun/star/util/XModifyListener.hpp>
|
|
|
|
#include <com/sun/star/beans/XPropertyChangeListener.hpp>
|
|
|
|
#include <com/sun/star/resource/XStringResourceResolver.hpp>
|
|
|
|
#include <cppuhelper/implbase8.hxx>
|
2012-12-20 17:28:53 +00:00
|
|
|
#include <cppuhelper/implbase3.hxx>
|
2010-08-12 17:44:19 +02:00
|
|
|
#include <toolkit/helper/listenermultiplexer.hxx>
|
|
|
|
#include <toolkit/controls/unocontrolmodel.hxx>
|
|
|
|
#include <toolkit/controls/unocontrolcontainer.hxx>
|
|
|
|
#include <cppuhelper/propshlp.hxx>
|
|
|
|
#include <cppuhelper/basemutex.hxx>
|
|
|
|
#include <com/sun/star/graphic/XGraphic.hpp>
|
|
|
|
#include <com/sun/star/awt/tab/XTabPageModel.hpp>
|
|
|
|
#include <com/sun/star/uno/XComponentContext.hpp>
|
|
|
|
#include <com/sun/star/lang/XInitialization.hpp>
|
2012-09-05 17:59:46 +01:00
|
|
|
#include <tools/gen.hxx>
|
2014-02-25 19:06:16 +01:00
|
|
|
|
2010-08-12 17:44:19 +02:00
|
|
|
// class ControlModelContainerBase
|
2014-02-25 19:06:16 +01:00
|
|
|
|
2010-08-12 17:44:19 +02:00
|
|
|
typedef UnoControlModel ControlModel_Base;
|
2010-08-27 12:13:59 +02:00
|
|
|
typedef ::cppu::AggImplInheritanceHelper8 < ControlModel_Base
|
|
|
|
, ::com::sun::star::lang::XMultiServiceFactory
|
2010-08-12 17:44:19 +02:00
|
|
|
, ::com::sun::star::container::XContainer
|
|
|
|
, ::com::sun::star::container::XNameContainer
|
|
|
|
, ::com::sun::star::awt::XTabControllerModel
|
|
|
|
, ::com::sun::star::util::XChangesNotifier
|
|
|
|
, ::com::sun::star::beans::XPropertyChangeListener
|
|
|
|
, ::com::sun::star::awt::tab::XTabPageModel
|
|
|
|
, ::com::sun::star::lang::XInitialization
|
|
|
|
> ControlModelContainer_IBase;
|
|
|
|
|
|
|
|
class ControlModelContainerBase : public ControlModelContainer_IBase
|
|
|
|
{
|
|
|
|
public:
|
2011-03-22 16:07:51 +00:00
|
|
|
enum ChildOperation { Insert = 0, Remove };
|
2010-08-12 17:44:19 +02:00
|
|
|
// would like to make this typedef private, too, but the Forte 7 compiler does have
|
|
|
|
// problems with this .....
|
2013-04-07 12:06:47 +02:00
|
|
|
typedef ::std::pair< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >, OUString >
|
2010-08-12 17:44:19 +02:00
|
|
|
UnoControlModelHolder;
|
|
|
|
private:
|
|
|
|
typedef ::std::list< UnoControlModelHolder > UnoControlModelHolderList;
|
|
|
|
|
2011-03-11 18:04:44 +00:00
|
|
|
public:
|
2010-08-12 17:44:19 +02:00
|
|
|
// for grouping control models (XTabControllerModel::getGroupXXX)
|
|
|
|
typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >
|
|
|
|
ModelGroup;
|
|
|
|
typedef ::std::vector< ModelGroup > AllGroups;
|
|
|
|
|
|
|
|
friend struct CloneControlModel;
|
|
|
|
friend struct FindControlModel;
|
|
|
|
friend struct CompareControlModel;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
ContainerListenerMultiplexer maContainerListeners;
|
|
|
|
::cppu::OInterfaceContainerHelper maChangeListeners;
|
|
|
|
UnoControlModelHolderList maModels;
|
|
|
|
|
|
|
|
AllGroups maGroups;
|
2014-02-24 11:13:09 +01:00
|
|
|
bool mbGroupsUpToDate;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2014-02-24 11:13:09 +01:00
|
|
|
bool m_bEnabled;
|
2013-04-07 12:06:47 +02:00
|
|
|
OUString m_sImageURL;
|
|
|
|
OUString m_sTooltip;
|
2013-12-20 12:40:17 +00:00
|
|
|
sal_Int16 m_nTabPageId;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2011-02-11 18:06:45 +01:00
|
|
|
void Clone_Impl(ControlModelContainerBase& _rClone) const;
|
2010-08-12 17:44:19 +02:00
|
|
|
protected:
|
2014-03-26 16:37:00 +01:00
|
|
|
::com::sun::star::uno::Any ImplGetDefaultValue( sal_uInt16 nPropId ) const SAL_OVERRIDE;
|
|
|
|
::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2013-04-07 12:06:47 +02:00
|
|
|
UnoControlModelHolderList::iterator ImplFindElement( const OUString& rName );
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2013-04-07 12:06:47 +02:00
|
|
|
void updateUserFormChildren( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& xAllChildren, const OUString& aName, ChildOperation Operation, const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& xTarget ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::ElementExistException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
|
2010-08-12 17:44:19 +02:00
|
|
|
public:
|
2013-01-07 11:05:58 +02:00
|
|
|
ControlModelContainerBase( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
|
2010-08-12 17:44:19 +02:00
|
|
|
ControlModelContainerBase( const ControlModelContainerBase& rModel );
|
2014-04-01 19:18:35 +02:00
|
|
|
virtual ~ControlModelContainerBase();
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2014-03-26 16:37:00 +01:00
|
|
|
UnoControlModel* Clone() const SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::container::XContainer
|
2014-03-26 16:37:00 +01:00
|
|
|
void SAL_CALL addContainerListener( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener >& xListener ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL removeContainerListener( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener >& xListener ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::container::XElementAcces
|
2014-03-26 16:37:00 +01:00
|
|
|
::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::container::XNameContainer, XNameReplace, XNameAccess
|
2014-03-26 16:37:00 +01:00
|
|
|
void SAL_CALL replaceByName( const OUString& aName, const ::com::sun::star::uno::Any& aElement ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName ) throw(::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
sal_Bool SAL_CALL hasByName( const OUString& aName ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL insertByName( const OUString& aName, const ::com::sun::star::uno::Any& aElement ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::ElementExistException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL removeByName( const OUString& Name ) throw(::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::beans::XMultiPropertySet
|
2014-03-26 16:37:00 +01:00
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::lang::XMultiServiceFactory
|
2014-03-26 16:37:00 +01:00
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstance( const OUString& aServiceSpecifier ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstanceWithArguments( const OUString& ServiceSpecifier, const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments ) throw(::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
::com::sun::star::uno::Sequence< OUString > SAL_CALL getAvailableServiceNames( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XComponent
|
2014-03-26 16:37:00 +01:00
|
|
|
void SAL_CALL dispose( ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XTabControllerModel
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual sal_Bool SAL_CALL getGroupControl( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setGroupControl( sal_Bool GroupControl ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setControlModels( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >& Controls ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > > SAL_CALL getControlModels( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setGroup( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >& Group, const OUString& GroupName ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual sal_Int32 SAL_CALL getGroupCount( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL getGroup( sal_Int32 nGroup, ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >& Group, OUString& Name ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL getGroupByName( const OUString& Name, ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel > >& Group ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XChangesNotifier
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL addChangesListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XChangesListener >& aListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL removeChangesListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XChangesListener >& aListener ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XPropertyChangeListener
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL propertyChange( const ::com::sun::star::beans::PropertyChangeEvent& evt ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XEventListener
|
|
|
|
using cppu::OPropertySetHelper::disposing;
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& evt ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XServiceInfo
|
|
|
|
DECLIMPL_SERVICEINFO_DERIVED(ControlModelContainerBase, ControlModel_Base, "toolkit.ControlModelContainerBase" )
|
|
|
|
|
|
|
|
// XInitialization
|
|
|
|
virtual void SAL_CALL initialize (const com::sun::star::uno::Sequence<com::sun::star::uno::Any>& rArguments)
|
2014-03-26 16:37:00 +01:00
|
|
|
throw (com::sun::star::uno::Exception, com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::awt::tab::XTabPageModel
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual ::sal_Int16 SAL_CALL getTabPageID() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2014-04-03 13:52:06 +02:00
|
|
|
virtual sal_Bool SAL_CALL getEnabled() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setEnabled( sal_Bool _enabled ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual OUString SAL_CALL getTitle() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setTitle( const OUString& _title ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual OUString SAL_CALL getImageURL() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setImageURL( const OUString& _imageurl ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual OUString SAL_CALL getToolTip() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL setToolTip( const OUString& _tooltip ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
protected:
|
|
|
|
void startControlListening( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxChildModel );
|
|
|
|
void stopControlListening( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& _rxChildModel );
|
|
|
|
|
2013-04-07 12:06:47 +02:00
|
|
|
void implNotifyTabModelChange( const OUString& _rAccessor );
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
void implUpdateGroupStructure();
|
|
|
|
};
|
|
|
|
|
|
|
|
class ResourceListener :public ::com::sun::star::util::XModifyListener,
|
|
|
|
public ::cppu::OWeakObject,
|
|
|
|
public ::cppu::BaseMutex
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
ResourceListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& xListener );
|
|
|
|
virtual ~ResourceListener();
|
|
|
|
|
|
|
|
void startListening( const ::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceResolver >& rResource );
|
|
|
|
void stopListening();
|
|
|
|
|
|
|
|
// XInterface
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL acquire() throw () SAL_OVERRIDE;
|
|
|
|
virtual void SAL_CALL release() throw () SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XModifyListener
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL modified( const ::com::sun::star::lang::EventObject& aEvent ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XEventListener
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
private:
|
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceResolver > m_xResource;
|
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xListener;
|
|
|
|
bool m_bListening;
|
|
|
|
};
|
|
|
|
|
2012-12-20 17:28:53 +00:00
|
|
|
typedef ::cppu::AggImplInheritanceHelper3 < UnoControlContainer
|
2010-08-27 12:13:59 +02:00
|
|
|
, ::com::sun::star::container::XContainerListener
|
2010-08-12 17:44:19 +02:00
|
|
|
, ::com::sun::star::util::XChangesListener
|
2012-12-20 17:28:53 +00:00
|
|
|
, ::com::sun::star::util::XModifyListener
|
2010-08-12 17:44:19 +02:00
|
|
|
> ContainerControl_IBase;
|
|
|
|
|
2010-08-27 12:13:59 +02:00
|
|
|
class ControlContainerBase : public ContainerControl_IBase
|
2010-08-12 17:44:19 +02:00
|
|
|
{
|
2012-09-05 17:59:46 +01:00
|
|
|
::Size ImplGetSizePixel( const ::Size& inSize );
|
2010-08-12 17:44:19 +02:00
|
|
|
protected:
|
2013-01-07 11:05:58 +02:00
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
|
2010-08-12 17:44:19 +02:00
|
|
|
bool mbSizeModified;
|
|
|
|
bool mbPosModified;
|
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::awt::XTabController > mxTabController;
|
|
|
|
::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > mxListener;
|
|
|
|
|
2013-04-07 12:06:47 +02:00
|
|
|
void ImplInsertControl( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& rxModel, const OUString& rName );
|
2010-08-12 17:44:19 +02:00
|
|
|
void ImplRemoveControl( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& rxModel );
|
|
|
|
virtual void ImplSetPosSize( ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& rxCtrl );
|
|
|
|
void ImplUpdateResourceResolver();
|
|
|
|
void ImplStartListingForResourceEvents();
|
2011-02-03 09:41:02 +01:00
|
|
|
|
2013-01-07 11:05:58 +02:00
|
|
|
#ifdef _MSC_VER
|
|
|
|
// just implemented to let the various FooImplInheritanceHelper compile
|
2010-08-12 17:44:19 +02:00
|
|
|
ControlContainerBase();
|
2013-01-07 11:05:58 +02:00
|
|
|
#endif
|
2011-02-03 09:41:02 +01:00
|
|
|
|
|
|
|
public:
|
2013-01-07 11:05:58 +02:00
|
|
|
ControlContainerBase( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
|
2014-04-01 19:18:35 +02:00
|
|
|
virtual ~ControlContainerBase();
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
DECLIMPL_SERVICEINFO_DERIVED( ControlContainerBase, UnoControlBase, "toolkit.ControlContainerBase" )
|
|
|
|
|
2014-03-26 16:37:00 +01:00
|
|
|
void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL dispose() throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
2014-03-26 16:37:00 +01:00
|
|
|
void SAL_CALL createPeer( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XToolkit >& Toolkit, const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer >& Parent ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::container::XContainerListener
|
2014-03-26 16:37:00 +01:00
|
|
|
void SAL_CALL elementInserted( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL elementRemoved( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL elementReplaced( const ::com::sun::star::container::ContainerEvent& Event ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// XChangesListener
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL changesOccurred( const ::com::sun::star::util::ChangesEvent& Event ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
|
|
|
|
// ::com::sun::star::awt::XControl
|
2014-03-26 16:37:00 +01:00
|
|
|
sal_Bool SAL_CALL setModel( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControlModel >& Model ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
|
|
|
void SAL_CALL setDesignMode( sal_Bool bOn ) throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
|
2012-12-20 17:28:53 +00:00
|
|
|
// XModifyListener
|
|
|
|
// Using a dummy/no-op implementation here, not sure if every container control needs
|
|
|
|
// to implement this, certainly Dialog does, lets see about others
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void SAL_CALL modified( const ::com::sun::star::lang::EventObject& ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE {}
|
2010-08-12 17:44:19 +02:00
|
|
|
protected:
|
2014-03-26 16:37:00 +01:00
|
|
|
virtual void ImplModelPropertiesChanged( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyChangeEvent >& rEvents ) throw(::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
|
|
|
virtual void removingControl( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxControl ) SAL_OVERRIDE;
|
|
|
|
virtual void addingControl( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XControl >& _rxControl ) SAL_OVERRIDE;
|
2010-08-12 17:44:19 +02:00
|
|
|
};
|
|
|
|
#endif
|
2011-08-04 15:39:25 +01:00
|
|
|
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|