diff options
Diffstat (limited to 'extensions/source/plugin/base/plmodel.cxx')
-rw-r--r-- | extensions/source/plugin/base/plmodel.cxx | 206 |
1 files changed, 0 insertions, 206 deletions
diff --git a/extensions/source/plugin/base/plmodel.cxx b/extensions/source/plugin/base/plmodel.cxx deleted file mode 100644 index d09bd7c14..000000000 --- a/extensions/source/plugin/base/plmodel.cxx +++ /dev/null @@ -1,206 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -// MARKER(update_precomp.py): autogen include statement, do not remove -#include "precompiled_extensions.hxx" -#include <plugin/model.hxx> -#include <com/sun/star/beans/PropertyAttribute.hpp> - -using namespace com::sun::star::uno; - -//================================================================================================== -Reference< XInterface > SAL_CALL PluginModel_CreateInstance( const Reference< ::com::sun::star::lang::XMultiServiceFactory > & ) throw( Exception ) -{ - Reference< XInterface > xService = *new PluginModel(); - return xService; -} - -Any PluginModel::queryAggregation( const Type& type ) throw( RuntimeException ) -{ - Any aRet( ::cppu::queryInterface( type, - static_cast< ::com::sun::star::lang::XComponent* >(this), - static_cast< ::com::sun::star::io::XPersistObject* >(this ), - static_cast< ::com::sun::star::awt::XControlModel* >(this), - static_cast< ::com::sun::star::beans::XPropertySet* >(this), - static_cast< ::com::sun::star::beans::XMultiPropertySet* >(this), - static_cast< ::com::sun::star::beans::XFastPropertySet* >(this) - ) ); - return aRet.hasValue() ? aRet : OWeakAggObject::queryAggregation( type ); -} - - -// XPluginManager_Impl -Sequence< ::rtl::OUString > PluginModel::getSupportedServiceNames_Static(void) throw() -{ - Sequence< ::rtl::OUString > aSNS( 1 ); - aSNS.getArray()[0] = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.plugin.PluginModel")); - return aSNS; -} - - -static const char* aCreationURL = "URL"; -static const char* aMime = "TYPE"; - -static ::osl::Mutex aPropertyMutex; - -static ::com::sun::star::beans::Property aProps[] = -{ - ::com::sun::star::beans::Property( - ::rtl::OUString::createFromAscii( aMime ), - 1, - ::getCppuType((const ::rtl::OUString*)0), - ::com::sun::star::beans::PropertyAttribute::BOUND ), - ::com::sun::star::beans::Property( - ::rtl::OUString::createFromAscii( aCreationURL ), - 2, - ::getCppuType((const ::rtl::OUString*)0), - ::com::sun::star::beans::PropertyAttribute::BOUND ) -}; - -PluginModel::PluginModel() : - BroadcasterHelperHolder( aPropertyMutex ), - OPropertySetHelper( m_aHelper ), - OPropertyArrayHelper( aProps, 2 ) -{ -} - -PluginModel::PluginModel(const ::rtl::OUString& rURL, const rtl::OUString& rMimeType ) : - BroadcasterHelperHolder( aPropertyMutex ), - OPropertySetHelper( m_aHelper ), - OPropertyArrayHelper( aProps, 2 ), - m_aCreationURL( rURL ), - m_aMimeType( rMimeType ) -{ -} - -PluginModel::~PluginModel() -{ -} - -Reference< ::com::sun::star::beans::XPropertySetInfo > PluginModel::getPropertySetInfo() throw() -{ - static Reference< ::com::sun::star::beans::XPropertySetInfo > aInfo = - createPropertySetInfo( *this ); - return aInfo; -} - -::cppu::IPropertyArrayHelper& PluginModel::getInfoHelper() -{ - return *this; -} - -sal_Bool PluginModel::convertFastPropertyValue( Any & rConvertedValue, - Any & rOldValue, - sal_Int32 nHandle, - const Any& rValue ) throw() -{ - if( nHandle == 1 || nHandle == 2 ) - { - if( rValue.getValueTypeClass() == TypeClass_STRING ) - { - rConvertedValue = rValue; - if( nHandle == 2 ) - rOldValue <<= m_aCreationURL; - else if( nHandle == 1 ) - rOldValue <<= m_aMimeType; - return sal_True; - } - } - return sal_False; -} - -void PluginModel::setFastPropertyValue_NoBroadcast( sal_Int32 nHandle, - const Any& rValue ) - throw(::com::sun::star::uno::Exception) -{ - if( rValue.getValueTypeClass() == TypeClass_STRING ) // FIXME wrong type! - - { - if( nHandle == 2 ) - rValue >>= m_aCreationURL; - else if( nHandle == 1 ) - rValue >>= m_aMimeType; - } - else - throw ::com::sun::star::lang::IllegalArgumentException(); -} - -void PluginModel::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) const throw() -{ - if( nHandle == 2 ) - rValue <<= m_aCreationURL; - else if( nHandle == 1 ) - rValue <<= m_aMimeType; -} - -//---- ::com::sun::star::lang::XComponent ---------------------------------------------------------------------------------- -void PluginModel::addEventListener( const Reference< ::com::sun::star::lang::XEventListener > & l ) throw() -{ - m_aDisposeListeners.push_back( l ); -} - -//---- ::com::sun::star::lang::XComponent ---------------------------------------------------------------------------------- -void PluginModel::removeEventListener( const Reference< ::com::sun::star::lang::XEventListener > & l ) throw() -{ - m_aDisposeListeners.remove( l ); -} - -//---- ::com::sun::star::lang::XComponent ---------------------------------------------------------------------------------- -void PluginModel::dispose(void) throw() -{ - // send disposing events - ::com::sun::star::lang::EventObject aEvt; - aEvt.Source = (::cppu::OWeakObject*)this; - ::std::list< Reference< ::com::sun::star::lang::XEventListener > > aLocalListeners = m_aDisposeListeners; - for( ::std::list< Reference< ::com::sun::star::lang::XEventListener > >::iterator it = aLocalListeners.begin(); - it != aLocalListeners.end(); ++it ) - (*it)->disposing( aEvt ); - - m_aDisposeListeners.clear(); - - disposing(); -} - - -// ::com::sun::star::io::XPersistObject -::rtl::OUString PluginModel::getServiceName() throw() -{ - return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.plugin.PluginModel")); -} - -void PluginModel::write(const Reference< ::com::sun::star::io::XObjectOutputStream > & OutStream) throw() -{ - OutStream->writeUTF( m_aCreationURL ); -} - -void PluginModel::read(const Reference< ::com::sun::star::io::XObjectInputStream > & InStream) throw() -{ - m_aCreationURL = InStream->readUTF(); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |