summaryrefslogtreecommitdiff
path: root/svtools/source/misc
diff options
context:
space:
mode:
authorRĂ¼diger Timm <rt@openoffice.org>2004-11-26 15:15:10 +0000
committerRĂ¼diger Timm <rt@openoffice.org>2004-11-26 15:15:10 +0000
commitc3d27fded5cc0d13aa38bd2a5bb67eaf5d528292 (patch)
tree7ecda8dd7359dd7e315bb7188a79311c921cc405 /svtools/source/misc
parenta056d316d0e778eaf89e966d394fbb90d0a4145d (diff)
INTEGRATION: CWS leanobjects (1.2.94); FILE MERGED
2004/11/18 11:05:05 mba 1.2.94.1: #i37278#: make objects loadable on demand
Diffstat (limited to 'svtools/source/misc')
-rw-r--r--svtools/source/misc/embedtransfer.cxx27
1 files changed, 12 insertions, 15 deletions
diff --git a/svtools/source/misc/embedtransfer.cxx b/svtools/source/misc/embedtransfer.cxx
index 5ed25697db1f..9897be413be6 100644
--- a/svtools/source/misc/embedtransfer.cxx
+++ b/svtools/source/misc/embedtransfer.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: embedtransfer.cxx,v $
*
- * $Revision: 1.2 $
+ * $Revision: 1.3 $
*
- * last change: $Author: kz $ $Date: 2004-10-04 19:47:10 $
+ * last change: $Author: rt $ $Date: 2004-11-26 16:15:10 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -87,6 +87,8 @@
#include <unotools/tempfile.hxx>
#include <toolkit/helper/vclunohelper.hxx>
+#include "embedhlp.hxx"
+
using namespace ::com::sun::star;
SvEmbedTransferHelper::SvEmbedTransferHelper( const uno::Reference< embed::XEmbeddedObject >& xObj )
@@ -180,21 +182,14 @@ sal_Bool SvEmbedTransferHelper::GetData( const ::com::sun::star::datatransfer::D
{
}
}
- else
+ else if ( m_xObj.is() && :: svt::EmbeddedObjectRef::TryRunningState( m_xObj ) )
{
- uno::Reference< embed::XComponentSupplier > xCompSupplier( m_xObj, uno::UNO_QUERY );
- if ( xCompSupplier.is() )
+ uno::Reference< datatransfer::XTransferable > xTransferable( m_xObj->getComponent(), uno::UNO_QUERY );
+ if ( xTransferable.is() )
{
- if ( m_xObj->getCurrentState() == embed::EmbedStates::LOADED )
- m_xObj->changeState( embed::EmbedStates::RUNNING );
-
- uno::Reference< datatransfer::XTransferable > xTransferable( xCompSupplier->getComponent(), uno::UNO_QUERY );
- if ( xTransferable.is() )
- {
- uno::Any aAny = xTransferable->getTransferData( rFlavor );
- SetAny( aAny, rFlavor );
- bRet = sal_True;
- }
+ uno::Any aAny = xTransferable->getTransferData( rFlavor );
+ SetAny( aAny, rFlavor );
+ bRet = sal_True;
}
}
}
@@ -232,6 +227,8 @@ void SvEmbedTransferHelper::FillTransferableObjectDescriptor( TransferableObject
rDesc.mnOle2Misc = xObj->getStatus( rDesc.mnViewAspect );
awt::Size aSz = xObj->getVisualAreaSize( rDesc.mnViewAspect );
+ // TODO/LEAN: getMapUnit still needs running state
+ svt::EmbeddedObjectRef::TryRunningState( xObj );
MapUnit aMapUnit = VCLUnoHelper::UnoEmbed2VCLMapUnit( xObj->getMapUnit( rDesc.mnViewAspect ) );
rDesc.maSize = OutputDevice::LogicToLogic( Size( aSz.Width, aSz.Height ), aMapUnit, MAP_100TH_MM );
rDesc.maDragStartPos = Point();