fdo#46808, Adapt animations::SequenceTimeContainer UNO service to new style

The service already existed, it just did not have an IDL file

Change-Id: I9698830f9c01936a12669ee950e2b231f303c2f8
This commit is contained in:
Noel Grandin
2013-02-04 10:20:53 +02:00
parent 790b0c4d53
commit 37ef449b93
4 changed files with 71 additions and 45 deletions

View File

@@ -31,6 +31,7 @@ $(eval $(call gb_UnoApi_set_include,offapi,\
$(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,offapi/com/sun/star/animations,\
SequenceTimeContainer \
TargetPropertiesCreator \
))
$(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,offapi/com/sun/star/auth,\

View File

@@ -0,0 +1,38 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* 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 .
*/
#ifndef __com_sun_star_animations_SequenceTimeContainer_idl__
#define __com_sun_star_animations_SequenceTimeContainer_idl__
#include <com/sun/star/animations/XTimeContainer.idl>
module com { module sun { module star { module animations {
/**
@since LibreOffice 4.1
*/
service SequenceTimeContainer : XTimeContainer;
}; }; }; };
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -20,6 +20,7 @@
#include <tools/debug.hxx>
#include <com/sun/star/util/XCloneable.hpp>
#include <com/sun/star/animations/AnimationFill.hpp>
#include <com/sun/star/animations/SequenceTimeContainer.hpp>
#include <com/sun/star/container/XEnumerationAccess.hpp>
#include <com/sun/star/presentation/EffectNodeType.hpp>
#include <com/sun/star/presentation/EffectCommands.hpp>
@@ -3208,7 +3209,7 @@ void SAL_CALL AnimationChangeListener::disposing( const ::com::sun::star::lang::
// ====================================================================
MainSequence::MainSequence()
: mxTimingRootNode( ::comphelper::getProcessServiceFactory()->createInstance("com.sun.star.animations.SequenceTimeContainer"), UNO_QUERY )
: mxTimingRootNode( SequenceTimeContainer::create( ::comphelper::getProcessComponentContext() ) )
, mbRebuilding( false )
, mnRebuildLockGuard( 0 )
, mbPendingRebuildRequest( false )
@@ -3312,9 +3313,8 @@ void MainSequence::createMainSequence()
// see if we have a mainsequence at all. if not, create one...
if( !mxSequenceRoot.is() )
{
mxSequenceRoot = Reference< XTimeContainer >::query(::comphelper::getProcessServiceFactory()->createInstance("com.sun.star.animations.SequenceTimeContainer"));
if( mxSequenceRoot.is() )
{
mxSequenceRoot = SequenceTimeContainer::create( ::comphelper::getProcessComponentContext() );
uno::Sequence< ::com::sun::star::beans::NamedValue > aUserData( 1 );
aUserData[0].Name = "node-type";
aUserData[0].Value <<= ::com::sun::star::presentation::EffectNodeType::MAIN_SEQUENCE;
@@ -3328,7 +3328,6 @@ void MainSequence::createMainSequence()
Reference< XAnimationNode > xMainSequenceNode( mxSequenceRoot, UNO_QUERY_THROW );
mxTimingRootNode->appendChild( xMainSequenceNode );
}
}
updateTextGroups();
@@ -3377,10 +3376,8 @@ InteractiveSequencePtr MainSequence::createInteractiveSequence( const ::com::sun
InteractiveSequencePtr pIS;
// create a new interactive sequence container
Reference< XTimeContainer > xISRoot( ::comphelper::getProcessServiceFactory()->createInstance("com.sun.star.animations.SequenceTimeContainer"), UNO_QUERY );
DBG_ASSERT( xISRoot.is(), "sd::MainSequence::createInteractiveSequence(), could not create \"com.sun.star.animations.SequenceTimeContainer\"!");
if( xISRoot.is() )
{
Reference< XTimeContainer > xISRoot = SequenceTimeContainer::create( ::comphelper::getProcessComponentContext() );
uno::Sequence< ::com::sun::star::beans::NamedValue > aUserData( 1 );
aUserData[0].Name = "node-type";
aUserData[0].Value <<= ::com::sun::star::presentation::EffectNodeType::INTERACTIVE_SEQUENCE ;
@@ -3390,7 +3387,7 @@ InteractiveSequencePtr MainSequence::createInteractiveSequence( const ::com::sun
Reference< XAnimationNode > xISNode( xISRoot, UNO_QUERY_THROW );
Reference< XTimeContainer > xParent( xChild->getParent(), UNO_QUERY_THROW );
xParent->appendChild( xISNode );
}
pIS.reset( new InteractiveSequence( xISRoot, this) );
pIS->setTriggerShape( xShape );
pIS->addListener( this );

View File

@@ -26,6 +26,7 @@
#include <com/sun/star/presentation/AnimationEffect.hpp>
#include <com/sun/star/presentation/AnimationSpeed.hpp>
#include <com/sun/star/animations/AnimationNodeType.hpp>
#include <com/sun/star/animations/SequenceTimeContainer.hpp>
#include <com/sun/star/animations/XIterateContainer.hpp>
#include <com/sun/star/animations/XAnimateMotion.hpp>
#include <com/sun/star/animations/XAnimateColor.hpp>
@@ -75,19 +76,10 @@ using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::animations;
using namespace ::com::sun::star::presentation;
using namespace ::com::sun::star::drawing;
using namespace ::com::sun::star::uno;
using namespace ::xmloff::token;
using ::com::sun::star::xml::sax::XAttributeList;
using ::com::sun::star::uno::Any;
using ::com::sun::star::uno::makeAny;
using ::com::sun::star::uno::UNO_QUERY;
using ::com::sun::star::uno::UNO_QUERY_THROW;
using ::com::sun::star::uno::Reference;
using ::com::sun::star::uno::Sequence;
using ::com::sun::star::uno::RuntimeException;
using ::com::sun::star::uno::Exception;
using ::com::sun::star::uno::XInterface;
using ::com::sun::star::uno::Type;
using ::com::sun::star::beans::NamedValue;
using ::com::sun::star::text::XTextRange;
using ::com::sun::star::text::XTextCursor;
@@ -1267,7 +1259,7 @@ SvXMLImportContext * AnimationNodeContext::CreateChildContext( sal_uInt16 nPrefi
class AnimationsImport: public SvXMLImport, public XAnimationNodeSupplier
{
public:
AnimationsImport( const Reference< XMultiServiceFactory > & rSMgr );
AnimationsImport( const Reference< XComponentContext > & rxContext );
~AnimationsImport() throw ();
SvXMLImportContext* CreateContext(sal_uInt16 nPrefix, const OUString& rLocalName, const Reference<XAttributeList>& xAttrList);
@@ -1289,8 +1281,8 @@ private:
Reference< XAnimationNode > mxRootNode;
};
AnimationsImport::AnimationsImport( const Reference< XMultiServiceFactory > & rSMgr )
: SvXMLImport( rSMgr, true )
AnimationsImport::AnimationsImport( const Reference< XComponentContext > & rxContext )
: SvXMLImport( Reference<XMultiServiceFactory>(rxContext->getServiceManager(), UNO_QUERY_THROW) , true )
{
// add namespaces
GetNamespaceMap().Add(
@@ -1308,8 +1300,7 @@ AnimationsImport::AnimationsImport( const Reference< XMultiServiceFactory > & rS
GetXMLToken(XML_N_ANIMATION),
XML_NAMESPACE_ANIMATION);
mxRootNode = Reference< XAnimationNode >::query(rSMgr->createInstance(
OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.animations.SequenceTimeContainer"))));
mxRootNode = Reference<XAnimationNode>( SequenceTimeContainer::create(rxContext), UNO_QUERY_THROW );
}
AnimationsImport::~AnimationsImport() throw ()
@@ -1456,8 +1447,7 @@ OUString SAL_CALL AnimationsImport_getImplementationName() throw()
Reference< XInterface > SAL_CALL AnimationsImport_createInstance(const Reference< XMultiServiceFactory > & rSMgr) throw( Exception )
{
return (cppu::OWeakObject*)new xmloff::AnimationsImport( rSMgr );
return (cppu::OWeakObject*)new xmloff::AnimationsImport( comphelper::getComponentContext(rSMgr) );
}
namespace xmloff