LibreOffice Module svx (master) 1
unoshap4.cxx
Go to the documentation of this file.
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#include <com/sun/star/util/XModifiable.hpp>
21#include <com/sun/star/embed/XEmbeddedObject.hpp>
22#include <com/sun/star/embed/XLinkageSupport.hpp>
23#include <com/sun/star/embed/NoVisualAreaSizeException.hpp>
24#include <com/sun/star/embed/Aspects.hpp>
25#include <com/sun/star/task/XInteractionHandler.hpp>
26#include <com/sun/star/ucb/CommandFailedException.hpp>
27#include <com/sun/star/ucb/ContentCreationException.hpp>
28
29#include <svx/svdoole2.hxx>
30#include <svx/svdomedia.hxx>
31#include <svx/svdpool.hxx>
37
39
40#include <sot/exchange.hxx>
41
42#include <svx/svdmodel.hxx>
43#include "shapeimpl.hxx"
44
45#include <svx/unoshprp.hxx>
46
47#include <utility>
48#include <vcl/gdimtf.hxx>
49#include <vcl/wmf.hxx>
50#include <svtools/embedhlp.hxx>
51#include <sal/log.hxx>
52#include <tools/debug.hxx>
53#include <tools/globname.hxx>
54#include <tools/stream.hxx>
55
56#include <config_features.h>
57
58
59using namespace ::cppu;
60using namespace ::com::sun::star;
61using namespace ::com::sun::star::uno;
62using namespace ::com::sun::star::lang;
63using namespace ::com::sun::star::container;
64using namespace ::com::sun::star::beans;
65
66
69 getSvxMapProvider().GetPropertySet(SVXMAP_OLE2,SdrObject::GetGlobalDrawObjectItemPool()) )
70{
71}
72
74: SvxShapeText( pObject, pPropertyMap, pPropertySet )
75{
76}
77
79{
80}
81
82//XPropertySet
83bool SvxOle2Shape::setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue )
84{
85 switch( pProperty->nWID )
86 {
88 {
89 // TODO/LATER: seems to make no sense for iconified object
90
91 awt::Rectangle aVisArea;
92 if( !(rValue >>= aVisArea))
93 break;
94 if( auto pOle2Obj = dynamic_cast<SdrOle2Obj* >(GetSdrObject()) )
95 {
96 Size aTmp( aVisArea.X + aVisArea.Width, aVisArea.Y + aVisArea.Height );
97 uno::Reference < embed::XEmbeddedObject > xObj = pOle2Obj->GetObjRef();
98 if( xObj.is() )
99 {
100 try
101 {
102 // the API handles with MapUnit::Map100thMM map mode
103 MapUnit aObjUnit = VCLUnoHelper::UnoEmbed2VCLMapUnit( xObj->getMapUnit( embed::Aspects::MSOLE_CONTENT ) );
104 aTmp = OutputDevice::LogicToLogic(aTmp, MapMode(MapUnit::Map100thMM), MapMode(aObjUnit));
105 xObj->setVisualAreaSize( embed::Aspects::MSOLE_CONTENT, awt::Size( aTmp.Width(), aTmp.Height() ) );
106 }
107 catch( uno::Exception& )
108 {
109 OSL_FAIL( "Couldn't set the visual area for the object!" );
110 }
111 }
112
113 return true;
114 }
115 break;
116 }
118 {
119 sal_Int64 nAspect = 0;
120 if( rValue >>= nAspect )
121 {
122 static_cast<SdrOle2Obj*>(GetSdrObject())->SetAspect( nAspect );
123 return true;
124 }
125 break;
126 }
127 case OWN_ATTR_CLSID:
128 {
129 OUString aCLSID;
130 if( rValue >>= aCLSID )
131 {
132 // init an OLE object with a global name
133 SvGlobalName aClassName;
134 if( aClassName.MakeId( aCLSID ) )
135 {
136 if( createObject( aClassName ) )
137 return true;
138 }
139 }
140 break;
141 }
143 {
144 uno::Reference< graphic::XGraphic > xGraphic( rValue, uno::UNO_QUERY );
145 if( xGraphic.is() )
146 {
147 const Graphic aGraphic(xGraphic);
148 static_cast<SdrOle2Obj*>(GetSdrObject())->SetGraphic(aGraphic);
149 return true;
150 }
151 break;
152 }
154 {
155 uno::Reference< graphic::XGraphic > xGraphic( rValue, uno::UNO_QUERY );
156 if( xGraphic.is() )
157 {
158 SdrOle2Obj* pOle = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
159 if( pOle )
160 {
161 GraphicObject aGrafObj( xGraphic );
162 const Graphic& aGraphic( aGrafObj.GetGraphic() );
163 pOle->SetGraphicToObj( aGraphic );
164 }
165 return true;
166 }
167 break;
168 }
170 {
171 OUString aPersistName;
172 if( rValue >>= aPersistName )
173 {
174 SdrOle2Obj *pOle;
175#if OSL_DEBUG_LEVEL > 0
176 pOle = dynamic_cast<SdrOle2Obj*>(GetSdrObject());
177 assert(pOle);
178#else
179 pOle = static_cast<SdrOle2Obj*>(GetSdrObject());
180#endif
181 pOle->SetPersistName( aPersistName );
182 return true;
183 }
184 break;
185 }
187 {
188 OUString aLinkURL;
189 if( rValue >>= aLinkURL )
190 {
191 createLink( aLinkURL );
192 return true;
193 }
194 break;
195 }
196 default:
197 return SvxShapeText::setPropertyValueImpl( rName, pProperty, rValue );
198 }
199
200 throw IllegalArgumentException();
201}
202
203bool SvxOle2Shape::getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue )
204{
205 switch( pProperty->nWID )
206 {
207 case OWN_ATTR_CLSID:
208 {
209 OUString aCLSID;
210 GetClassName_Impl(aCLSID);
211 rValue <<= aCLSID;
212 break;
213 }
214
216 {
217 OUString sCLSID;
218 rValue <<= SotExchange::IsInternal( GetClassName_Impl(sCLSID) );
219 break;
220 }
221
223 {
224 SdrOle2Obj* pObj = dynamic_cast<SdrOle2Obj*>(GetSdrObject());
225 if( pObj )
226 {
227 const Graphic* pGraphic = pObj->GetGraphic();
228 if( pGraphic )
229 {
230 bool bIsWMF = false;
231 if ( pGraphic->IsGfxLink() )
232 {
233 GfxLink aLnk = pGraphic->GetGfxLink();
234 if ( aLnk.GetType() == GfxLinkType::NativeWmf )
235 {
236 bIsWMF = true;
237 uno::Sequence<sal_Int8> aSeq(reinterpret_cast<sal_Int8 const *>(aLnk.GetData()), static_cast<sal_Int32>(aLnk.GetDataSize()));
238 rValue <<= aSeq;
239 }
240 }
241 if ( !bIsWMF )
242 {
243 // #i119735# just use GetGDIMetaFile, it will create a buffered version of contained bitmap now automatically
244 GDIMetaFile aMtf(pObj->GetGraphic()->GetGDIMetaFile());
245 SvMemoryStream aDestStrm( 65535, 65535 );
246 ConvertGDIMetaFileToWMF( aMtf, aDestStrm, nullptr, false );
247 const uno::Sequence<sal_Int8> aSeq(
248 static_cast< const sal_Int8* >(aDestStrm.GetData()),
249 aDestStrm.GetEndOfData());
250 rValue <<= aSeq;
251 }
252 }
253 }
254 else
255 {
256 rValue = GetBitmap( true );
257 }
258 break;
259 }
260
262 {
263 awt::Rectangle aVisArea;
264 if( dynamic_cast<const SdrOle2Obj* >(GetSdrObject()) != nullptr)
265 {
266 MapMode aMapMode( MapUnit::Map100thMM ); // the API uses this map mode
267 Size aTmp = static_cast<SdrOle2Obj*>(GetSdrObject())->GetOrigObjSize( &aMapMode ); // get the size in the requested map mode
268 aVisArea = awt::Rectangle( 0, 0, aTmp.Width(), aTmp.Height() );
269 }
270
271 rValue <<= aVisArea;
272 break;
273 }
274
275 case OWN_ATTR_OLESIZE:
276 {
277 Size aTmp( static_cast<SdrOle2Obj*>(GetSdrObject())->GetOrigObjSize() );
278 rValue <<= awt::Size( aTmp.Width(), aTmp.Height() );
279 break;
280 }
281
283 {
284 rValue <<= static_cast<SdrOle2Obj*>(GetSdrObject())->GetAspect();
285 break;
286 }
287
291 {
292 SdrOle2Obj* pObj = dynamic_cast<SdrOle2Obj*>( GetSdrObject() );
293 if( pObj )
294 {
295 uno::Reference < embed::XEmbeddedObject > xObj( pObj->GetObjRef() );
296 if ( xObj.is()
298 {
299 // Discussed with CL fue to the before GetPaintingPageView
300 // usage. Removed it, former fallback is used now
301 if ( pProperty->nWID == OWN_ATTR_OLEMODEL || pProperty->nWID == OWN_ATTR_OLE_EMBEDDED_OBJECT )
302 {
303 const bool bSuccess(pObj->AddOwnLightClient());
304 SAL_WARN_IF(!bSuccess, "svx.svdraw", "An object without client is provided!");
305 }
306
307 if ( pProperty->nWID == OWN_ATTR_OLEMODEL )
308 rValue <<= pObj->GetObjRef()->getComponent();
309 else
310 rValue <<= xObj;
311 }
312 }
313 break;
314 }
315
317 {
318 uno::Reference< graphic::XGraphic > xGraphic;
319 const Graphic* pGraphic = static_cast<SdrOle2Obj*>( GetSdrObject() )->GetGraphic();
320 if( pGraphic )
321 xGraphic = pGraphic->GetXGraphic();
322 rValue <<= xGraphic;
323 break;
324 }
325
327 {
328 uno::Reference< graphic::XGraphic > xGraphic;
329 const Graphic* pGraphic = static_cast<SdrOle2Obj*>( GetSdrObject() )->GetGraphic();
330 if( pGraphic )
331 xGraphic = pGraphic->GetXGraphic();
332 rValue <<= xGraphic;
333 break;
334 }
336 {
337 OUString aPersistName;
338 SdrOle2Obj* pOle = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
339
340 if( pOle )
341 {
342 aPersistName = pOle->GetPersistName();
343 if( !aPersistName.isEmpty() )
344 {
345 ::comphelper::IEmbeddedHelper* pPersist(GetSdrObject()->getSdrModelFromSdrObject().GetPersist());
346 if( (nullptr == pPersist) || !pPersist->getEmbeddedObjectContainer().HasEmbeddedObject( pOle->GetPersistName() ) )
347 aPersistName.clear();
348 }
349 }
350
351 rValue <<= aPersistName;
352 break;
353 }
355 {
356 OUString aLinkURL;
357 SdrOle2Obj* pOle = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
358
359 if( pOle )
360 {
361 uno::Reference< embed::XLinkageSupport > xLink( pOle->GetObjRef(), uno::UNO_QUERY );
362 if ( xLink.is() && xLink->isLink() )
363 aLinkURL = xLink->getLinkURL();
364 }
365
366 rValue <<= aLinkURL;
367 break;
368 }
369 default:
370 return SvxShapeText::getPropertyValueImpl( rName, pProperty, rValue );
371 }
372
373 return true;
374}
375
377{
379
380 SdrOle2Obj* pOle2Obj = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
381 if ( !pOle2Obj || !pOle2Obj->IsEmpty() )
382 return false;
383
384 // create storage and inplace object
386 OUString aPersistName;
387 OUString aTmpStr;
389 aPersistName = aTmpStr;
390
391 uno::Sequence<beans::PropertyValue> objArgs( comphelper::InitPropertySequence({
392 { "DefaultParentBaseURL", Any(pPersist->getDocumentBaseURL()) }
393 }));
394 //TODO/LATER: how to cope with creation failure?!
395 uno::Reference<embed::XEmbeddedObject> xObj(
397 aClassName.GetByteSequence(), objArgs, aPersistName));
398 if( xObj.is() )
399 {
400 tools::Rectangle aRect = pOle2Obj->GetLogicRect();
401 if ( aRect.GetWidth() == 101 && aRect.GetHeight() == 101 )
402 {
403 // TODO/LATER: is it possible that this method is used to create an iconified object?
404 // default size
405 try
406 {
407 awt::Size aSz = xObj->getVisualAreaSize( pOle2Obj->GetAspect() );
408 aRect.SetSize( Size( aSz.Width, aSz.Height ) );
409 }
410 catch( embed::NoVisualAreaSizeException& )
411 {}
412 pOle2Obj->SetLogicRect( aRect );
413 }
414 else
415 {
416 awt::Size aSz;
417 Size aSize = aRect.GetSize();
418 aSz.Width = aSize.Width();
419 aSz.Height = aSize.Height();
420 if (aSz.Width != 0 || aSz.Height != 0)
421 {
422 //HACK: can aSz legally be empty?
423 xObj->setVisualAreaSize( pOle2Obj->GetAspect(), aSz );
424 }
425 }
426
427 // connect the object after the visual area is set
428 aTmpStr = aPersistName;
430
431 // the object is inserted during setting of PersistName property usually
432 if( pOle2Obj->IsEmpty() )
433 pOle2Obj->SetObjRef( xObj );
434 }
435
436 return xObj.is();
437}
438
439void SvxOle2Shape::createLink( const OUString& aLinkURL )
440{
442
443 SdrOle2Obj* pOle2Obj = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
444 if ( !pOle2Obj || !pOle2Obj->IsEmpty() )
445 return;
446
447 OUString aPersistName;
448
450
451 uno::Sequence< beans::PropertyValue > aMediaDescr{ comphelper::makePropertyValue("URL",
452 aLinkURL) };
453
454 uno::Reference< task::XInteractionHandler > xInteraction = pPersist->getInteractionHandler();
455 if ( xInteraction.is() )
456 {
457 aMediaDescr.realloc( 2 );
458 auto pMediaDescr = aMediaDescr.getArray();
459 pMediaDescr[1].Name = "InteractionHandler";
460 pMediaDescr[1].Value <<= xInteraction;
461 }
462
463 //TODO/LATER: how to cope with creation failure?!
464 uno::Reference< embed::XEmbeddedObject > xObj =
465 pPersist->getEmbeddedObjectContainer().InsertEmbeddedLink( aMediaDescr , aPersistName );
466
467 if( !xObj.is() )
468 return;
469
470 tools::Rectangle aRect = pOle2Obj->GetLogicRect();
471 if ( aRect.GetWidth() == 101 && aRect.GetHeight() == 101 )
472 {
473 // default size
474 try
475 {
476 awt::Size aSz = xObj->getVisualAreaSize( pOle2Obj->GetAspect() );
477 aRect.SetSize( Size( aSz.Width, aSz.Height ) );
478 }
479 catch( embed::NoVisualAreaSizeException& )
480 {}
481 pOle2Obj->SetLogicRect( aRect );
482 }
483 else
484 {
485 awt::Size aSz;
486 Size aSize = pOle2Obj->GetLogicRect().GetSize();
487 aSz.Width = aSize.Width();
488 aSz.Height = aSize.Height();
489 xObj->setVisualAreaSize( pOle2Obj->GetAspect(), aSz );
490 }
491
492 // connect the object after the visual area is set
494
495 // the object is inserted during setting of PersistName property usually
496 if ( pOle2Obj->IsEmpty() )
497 pOle2Obj->SetObjRef( xObj );
498}
499
501{
503 if( pPersist && !pPersist->isEnableSetModified() )
504 {
505 SdrOle2Obj* pOle = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
506 if( pOle && !pOle->IsEmpty() )
507 {
508 uno::Reference < util::XModifiable > xMod( pOle->GetObjRef(), uno::UNO_QUERY );
509 if( xMod.is() )
510 // TODO/MBA: what's this?!
511 xMod->setModified( false );
512 }
513 }
514}
515
517{
519 SvGlobalName aClassName;
520 SdrOle2Obj* pOle2Obj = dynamic_cast< SdrOle2Obj* >( GetSdrObject() );
521
522 if( pOle2Obj )
523 {
524 rHexCLSID.clear();
525
526 if( pOle2Obj->IsEmpty() )
527 {
529 if( pPersist )
530 {
531 uno::Reference < embed::XEmbeddedObject > xObj =
533 if ( xObj.is() )
534 {
535 aClassName = SvGlobalName( xObj->getClassID() );
536 rHexCLSID = aClassName.GetHexName();
537 }
538 }
539 }
540
541 if (rHexCLSID.isEmpty())
542 {
543 const uno::Reference < embed::XEmbeddedObject >& xObj( pOle2Obj->GetObjRef() );
544 if ( xObj.is() )
545 {
546 aClassName = SvGlobalName( xObj->getClassID() );
547 rHexCLSID = aClassName.GetHexName();
548 }
549 }
550 }
551
552 return aClassName;
553}
554
556 : SvxOle2Shape( pObject, getSvxMapProvider().GetMap(SVXMAP_APPLET), getSvxMapProvider().GetPropertySet(SVXMAP_APPLET, SdrObject::GetGlobalDrawObjectItemPool()) )
557{
558 SetShapeType( "com.sun.star.drawing.AppletShape" );
559}
560
562{
563}
564
566{
567 SvxShape::Create( pNewObj, pNewPage );
568 const SvGlobalName aAppletClassId( SO3_APPLET_CLASSID );
569 createObject(aAppletClassId);
570 SetShapeType( "com.sun.star.drawing.AppletShape" );
571}
572
573void SAL_CALL SvxAppletShape::setPropertyValue( const OUString& aPropertyName, const css::uno::Any& rValue )
574{
575 SvxShape::setPropertyValue( aPropertyName, rValue );
577}
578
579void SAL_CALL SvxAppletShape::setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& rValues )
580{
581 SvxShape::setPropertyValues( aPropertyNames, rValues );
583}
584
585bool SvxAppletShape::setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue )
586{
587 if( (pProperty->nWID >= OWN_ATTR_APPLET_DOCBASE) && (pProperty->nWID <= OWN_ATTR_APPLET_ISSCRIPT) )
588 {
589 if ( svt::EmbeddedObjectRef::TryRunningState( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef() ) )
590 {
591 uno::Reference < beans::XPropertySet > xSet( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef()->getComponent(), uno::UNO_QUERY );
592 if( xSet.is() )
593 {
594 // allow exceptions to pass through
595 xSet->setPropertyValue( rName, rValue );
596 }
597 }
598 return true;
599 }
600 else
601 {
602 return SvxOle2Shape::setPropertyValueImpl( rName, pProperty, rValue );
603 }
604}
605
606bool SvxAppletShape::getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue )
607{
608 if( (pProperty->nWID >= OWN_ATTR_APPLET_DOCBASE) && (pProperty->nWID <= OWN_ATTR_APPLET_ISSCRIPT) )
609 {
610 if ( svt::EmbeddedObjectRef::TryRunningState( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef() ) )
611 {
612 uno::Reference < beans::XPropertySet > xSet( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef()->getComponent(), uno::UNO_QUERY );
613 if( xSet.is() )
614 {
615 rValue = xSet->getPropertyValue( rName );
616 }
617 }
618 return true;
619 }
620 else
621 {
622 return SvxOle2Shape::getPropertyValueImpl( rName, pProperty, rValue );
623 }
624}
625
627 : SvxOle2Shape( pObject, getSvxMapProvider().GetMap(SVXMAP_PLUGIN), getSvxMapProvider().GetPropertySet(SVXMAP_PLUGIN, SdrObject::GetGlobalDrawObjectItemPool()) )
628{
629 SetShapeType( "com.sun.star.drawing.PluginShape" );
630}
631
633{
634}
635
637{
638 SvxShape::Create( pNewObj, pNewPage );
639 const SvGlobalName aPluginClassId( SO3_PLUGIN_CLASSID );
640 createObject(aPluginClassId);
641 SetShapeType( "com.sun.star.drawing.PluginShape" );
642}
643
644void SAL_CALL SvxPluginShape::setPropertyValue( const OUString& aPropertyName, const css::uno::Any& rValue )
645{
646 SvxShape::setPropertyValue( aPropertyName, rValue );
648}
649
650void SAL_CALL SvxPluginShape::setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& rValues )
651{
652 SvxShape::setPropertyValues( aPropertyNames, rValues );
654}
655
656bool SvxPluginShape::setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue )
657{
658 if( (pProperty->nWID >= OWN_ATTR_PLUGIN_MIMETYPE) && (pProperty->nWID <= OWN_ATTR_PLUGIN_COMMANDS) )
659 {
660 if( svt::EmbeddedObjectRef::TryRunningState( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef() ) )
661 {
662 uno::Reference < beans::XPropertySet > xSet( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef()->getComponent(), uno::UNO_QUERY );
663 if( xSet.is() )
664 {
665 // allow exceptions to pass through
666 xSet->setPropertyValue( rName, rValue );
667 }
668 }
669 return true;
670 }
671 else
672 {
673 return SvxOle2Shape::setPropertyValueImpl( rName, pProperty, rValue );
674 }
675}
676
677bool SvxPluginShape::getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue )
678{
679 if( (pProperty->nWID >= OWN_ATTR_PLUGIN_MIMETYPE) && (pProperty->nWID <= OWN_ATTR_PLUGIN_COMMANDS) )
680 {
681 if( svt::EmbeddedObjectRef::TryRunningState( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef() ) )
682 {
683 uno::Reference < beans::XPropertySet > xSet( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef()->getComponent(), uno::UNO_QUERY );
684 if( xSet.is() )
685 {
686 rValue = xSet->getPropertyValue( rName );
687 }
688 }
689 return true;
690 }
691 else
692 {
693 return SvxOle2Shape::getPropertyValueImpl( rName, pProperty, rValue );
694 }
695}
696
697
699: SvxOle2Shape( pObject, getSvxMapProvider().GetMap(SVXMAP_FRAME), getSvxMapProvider().GetPropertySet(SVXMAP_FRAME, SdrObject::GetGlobalDrawObjectItemPool()) )
700{
701 SetShapeType( "com.sun.star.drawing.FrameShape" );
702}
703
705{
706}
707
708void SvxFrameShape::Create( SdrObject* pNewObj, SvxDrawPage* pNewPage )
709{
710 SvxShape::Create( pNewObj, pNewPage );
711 const SvGlobalName aIFrameClassId( SO3_IFRAME_CLASSID );
712 createObject(aIFrameClassId);
713 SetShapeType( "com.sun.star.drawing.FrameShape" );
714}
715
716void SAL_CALL SvxFrameShape::setPropertyValue( const OUString& aPropertyName, const css::uno::Any& rValue )
717{
718 SvxShape::setPropertyValue( aPropertyName, rValue );
720}
721
722void SAL_CALL SvxFrameShape::setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& rValues )
723{
724 SvxShape::setPropertyValues( aPropertyNames, rValues );
726}
727
728bool SvxFrameShape::setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue )
729{
730 if( (pProperty->nWID >= OWN_ATTR_FRAME_URL) && (pProperty->nWID <= OWN_ATTR_FRAME_MARGIN_HEIGHT) )
731 {
732 if( svt::EmbeddedObjectRef::TryRunningState( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef() ) )
733 {
734 uno::Reference < beans::XPropertySet > xSet( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef()->getComponent(), uno::UNO_QUERY );
735 if( xSet.is() )
736 {
737 // allow exceptions to pass through
738 xSet->setPropertyValue( rName, rValue );
739 }
740 }
741 return true;
742 }
743 else
744 {
745 return SvxOle2Shape::setPropertyValueImpl( rName, pProperty, rValue );
746 }
747}
748
749bool SvxFrameShape::getPropertyValueImpl(const OUString& rName, const SfxItemPropertyMapEntry* pProperty,
750 css::uno::Any& rValue)
751{
752 if( (pProperty->nWID >= OWN_ATTR_FRAME_URL) && (pProperty->nWID <= OWN_ATTR_FRAME_MARGIN_HEIGHT) )
753 {
754 if( svt::EmbeddedObjectRef::TryRunningState( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef() ) )
755 {
756 uno::Reference < beans::XPropertySet > xSet( static_cast<SdrOle2Obj*>(GetSdrObject())->GetObjRef()->getComponent(), uno::UNO_QUERY );
757 if( xSet.is() )
758 {
759 rValue = xSet->getPropertyValue( rName );
760 }
761 }
762 return true;
763 }
764 else
765 {
766 return SvxOle2Shape::getPropertyValueImpl( rName, pProperty, rValue );
767 }
768}
770: SvxShape( pObj, getSvxMapProvider().GetMap(SVXMAP_MEDIA), getSvxMapProvider().GetPropertySet(SVXMAP_MEDIA, SdrObject::GetGlobalDrawObjectItemPool()) ),
771 referer_(std::move(referer))
772{
773 SetShapeType( "com.sun.star.drawing.MediaShape" );
774}
775
776
778{
779}
780
781
782bool SvxMediaShape::setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue )
783{
784 if( ((pProperty->nWID >= OWN_ATTR_MEDIA_URL) && (pProperty->nWID <= OWN_ATTR_MEDIA_ZOOM))
785 || (pProperty->nWID == OWN_ATTR_MEDIA_STREAM)
786 || (pProperty->nWID == OWN_ATTR_MEDIA_MIMETYPE)
787 || (pProperty->nWID == OWN_ATTR_VALUE_GRAPHIC)
788 || (pProperty->nWID == SDRATTR_GRAFCROP))
789 {
790#if HAVE_FEATURE_AVMEDIA
791 SdrMediaObj* pMedia = static_cast< SdrMediaObj* >( GetSdrObject() );
793 bool bOk = false;
794#endif
795
796 switch( pProperty->nWID )
797 {
799#if HAVE_FEATURE_AVMEDIA
800 {
801 OUString aURL;
802 if( rValue >>= aURL )
803 {
804 bOk = true;
805 aItem.setURL( aURL, "", referer_ );
806 }
807 }
808#endif
809 break;
810
812#if HAVE_FEATURE_AVMEDIA
813 {
814 bool bLoop;
815
816 if( rValue >>= bLoop )
817 {
818 bOk = true;
819 aItem.setLoop( bLoop );
820 }
821 }
822#endif
823 break;
824
826#if HAVE_FEATURE_AVMEDIA
827 {
828 bool bMute;
829
830 if( rValue >>= bMute )
831 {
832 bOk = true;
833 aItem.setMute( bMute );
834 }
835 }
836#endif
837 break;
838
840#if HAVE_FEATURE_AVMEDIA
841 {
842 sal_Int16 nVolumeDB = sal_Int16();
843
844 if( rValue >>= nVolumeDB )
845 {
846 bOk = true;
847 aItem.setVolumeDB( nVolumeDB );
848 }
849 }
850#endif
851 break;
852
854#if HAVE_FEATURE_AVMEDIA
855 {
856 css::media::ZoomLevel eLevel;
857
858 if( rValue >>= eLevel )
859 {
860 bOk = true;
861 aItem.setZoom( eLevel );
862 }
863 }
864#endif
865 break;
866
868#if HAVE_FEATURE_AVMEDIA
869 {
870 OUString sMimeType;
871 if( rValue >>= sMimeType )
872 {
873 bOk = true;
874 aItem.setMimeType( sMimeType );
875 }
876 }
877#endif
878 break;
879
881#if HAVE_FEATURE_AVMEDIA
882 {
883 uno::Reference<graphic::XGraphic> xGraphic(rValue, uno::UNO_QUERY);
884 if (xGraphic.is())
885 {
886 bOk = true;
887 aItem.setGraphic(Graphic(xGraphic));
888 }
889 }
890#endif
891 break;
892
893 case SDRATTR_GRAFCROP:
894#if HAVE_FEATURE_AVMEDIA
895 {
896 text::GraphicCrop aCrop;
897 if (rValue >>= aCrop)
898 {
899 bOk = true;
900 aItem.setCrop(aCrop);
901 }
902 }
903#endif
904 break;
905
907#if HAVE_FEATURE_AVMEDIA
908 try
909 {
910 uno::Reference<io::XInputStream> xStream;
911 if (rValue >>= xStream)
912 {
913 pMedia->SetInputStream(xStream);
914 }
915 }
916 catch (const css::ucb::ContentCreationException&)
917 {
918 css::uno::Any exc = cppu::getCaughtException();
919 throw css::lang::WrappedTargetException(
920 "ContentCreationException Setting InputStream!",
921 static_cast<OWeakObject *>(this),
922 exc);
923 }
924 catch (const css::ucb::CommandFailedException&)
925 {
926 css::uno::Any anyEx = cppu::getCaughtException();
927 throw css::lang::WrappedTargetException(
928 "CommandFailedException Setting InputStream!",
929 static_cast<OWeakObject *>(this),
930 anyEx);
931 }
932#endif
933 break;
934
935 default:
936 OSL_FAIL("SvxMediaShape::setPropertyValueImpl(), unknown argument!");
937 }
938
939#if HAVE_FEATURE_AVMEDIA
940 if( bOk )
941 {
942 pMedia->setMediaProperties( aItem );
943 return true;
944 }
945#endif
946 }
947 else
948 {
949 return SvxShape::setPropertyValueImpl( rName, pProperty, rValue );
950 }
951
952 throw IllegalArgumentException();
953}
954
955
956bool SvxMediaShape::getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue )
957{
958 if ( ((pProperty->nWID >= OWN_ATTR_MEDIA_URL) &&
959 (pProperty->nWID <= OWN_ATTR_MEDIA_ZOOM))
960 || (pProperty->nWID == OWN_ATTR_MEDIA_STREAM)
961 || (pProperty->nWID == OWN_ATTR_MEDIA_TEMPFILEURL)
962 || (pProperty->nWID == OWN_ATTR_MEDIA_MIMETYPE)
963 || (pProperty->nWID == OWN_ATTR_FALLBACK_GRAPHIC)
964 || (pProperty->nWID == OWN_ATTR_VALUE_GRAPHIC)
965 || (pProperty->nWID == SDRATTR_GRAFCROP))
966 {
967 SdrMediaObj* pMedia = static_cast< SdrMediaObj* >( GetSdrObject() );
968#if HAVE_FEATURE_AVMEDIA
969 const ::avmedia::MediaItem aItem( pMedia->getMediaProperties() );
970#endif
971
972 switch( pProperty->nWID )
973 {
975#if HAVE_FEATURE_AVMEDIA
976 rValue <<= aItem.getURL();
977#endif
978 break;
979
981#if HAVE_FEATURE_AVMEDIA
982 rValue <<= aItem.isLoop();
983#endif
984 break;
985
987#if HAVE_FEATURE_AVMEDIA
988 rValue <<= aItem.isMute();
989#endif
990 break;
991
993#if HAVE_FEATURE_AVMEDIA
994 rValue <<= aItem.getVolumeDB();
995#endif
996 break;
997
999#if HAVE_FEATURE_AVMEDIA
1000 rValue <<= aItem.getZoom();
1001#endif
1002 break;
1003
1005 try
1006 {
1007 rValue <<= pMedia->GetInputStream();
1008 }
1009 catch (const css::ucb::ContentCreationException&)
1010 {
1011 css::uno::Any anyEx = cppu::getCaughtException();
1012 throw css::lang::WrappedTargetException(
1013 "ContentCreationException Getting InputStream!",
1014 static_cast < OWeakObject * > ( this ), anyEx );
1015 }
1016 catch (const css::ucb::CommandFailedException&)
1017 {
1018 css::uno::Any anyEx = cppu::getCaughtException();
1019 throw css::lang::WrappedTargetException(
1020 "CommandFailedException Getting InputStream!",
1021 static_cast < OWeakObject * > ( this ), anyEx );
1022 }
1023
1024 break;
1025
1027#if HAVE_FEATURE_AVMEDIA
1028 rValue <<= aItem.getTempURL();
1029#endif
1030 break;
1031
1033#if HAVE_FEATURE_AVMEDIA
1034 rValue <<= aItem.getMimeType();
1035#endif
1036 break;
1037
1039#if HAVE_FEATURE_AVMEDIA
1040 {
1041 Graphic aGraphic = aItem.getGraphic();
1042 if (!aGraphic.IsNone())
1043 {
1044 rValue <<= aGraphic.GetXGraphic();
1045 }
1046 }
1047#endif
1048 break;
1049
1050 case SDRATTR_GRAFCROP:
1051#if HAVE_FEATURE_AVMEDIA
1052 {
1053 text::GraphicCrop aCrop = aItem.getCrop();
1054 rValue <<= aCrop;
1055 }
1056#endif
1057 break;
1058
1060 rValue <<= pMedia->getSnapshot();
1061 break;
1062
1063 default:
1064 OSL_FAIL("SvxMediaShape::getPropertyValueImpl(), unknown property!");
1065 }
1066 return true;
1067 }
1068 else
1069 {
1070 return SvxShape::getPropertyValueImpl( rName, pProperty, rValue );
1071 }
1072}
1073
1075 css::beans::PropertyState& rState)
1076{
1077#if HAVE_FEATURE_AVMEDIA
1078 if (pProperty->nWID == SDRATTR_GRAFCROP)
1079 {
1080 auto pMedia = static_cast<SdrMediaObj*>(GetSdrObject());
1081 const avmedia::MediaItem& rItem = pMedia->getMediaProperties();
1082 const text::GraphicCrop& rCrop = rItem.getCrop();
1083 if (rCrop.Bottom > 0 || rCrop.Left > 0 || rCrop.Right > 0 || rCrop.Top > 0)
1084 {
1085 // The media has a crop, expose it to UNO-based export filters.
1086 rState = beans::PropertyState_DIRECT_VALUE;
1087 }
1088 else
1089 {
1090 rState = beans::PropertyState_AMBIGUOUS_VALUE;
1091 }
1092 return true;
1093 }
1094#endif
1095
1096 return SvxShape::getPropertyStateImpl(pProperty, rState);
1097}
1098
1099/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Reference< XInputStream > xStream
const Graphic & GetGraphic() const
css::uno::Reference< css::graphic::XGraphic > GetXGraphic() const
const GDIMetaFile & GetGDIMetaFile() const
GfxLink GetGfxLink() const
bool IsNone() const
bool IsGfxLink() const
SAL_WARN_UNUSED_RESULT Point LogicToLogic(const Point &rPtSource, const MapMode *pMapModeSource, const MapMode *pMapModeDest) const
css::uno::Reference< css::io::XInputStream > GetInputStream() const
Definition: svdomedia.cxx:301
void setMediaProperties(const ::avmedia::MediaItem &rState)
Definition: svdomedia.cxx:290
css::uno::Reference< css::graphic::XGraphic > const & getSnapshot() const
Definition: svdomedia.cxx:159
const ::avmedia::MediaItem & getMediaProperties() const
Definition: svdomedia.cxx:296
void SetInputStream(css::uno::Reference< css::io::XInputStream > const &)
Definition: svdomedia.cxx:318
::comphelper::IEmbeddedHelper * GetPersist() const
Definition: svdmodel.hxx:355
Abstract DrawObject.
Definition: svdobj.hxx:261
SdrModel & getSdrModelFromSdrObject() const
Definition: svdobj.cxx:289
virtual void SetLogicRect(const tools::Rectangle &rRect)
Definition: svdobj.cxx:1699
sal_Int64 GetAspect() const
Definition: svdoole2.cxx:812
bool IsEmpty() const
Definition: svdoole2.cxx:854
css::uno::Reference< css::embed::XEmbeddedObject > const & GetObjRef() const
Definition: svdoole2.cxx:1793
const Graphic * GetGraphic() const
Definition: svdoole2.cxx:1637
const OUString & GetPersistName() const
Definition: svdoole2.cxx:1367
void SetObjRef(const css::uno::Reference< css::embed::XEmbeddedObject > &rNewObjRef)
Definition: svdoole2.cxx:1298
void SetGraphicToObj(const Graphic &aGraphic)
Definition: svdoole2.cxx:1822
bool AddOwnLightClient()
Definition: svdoole2.cxx:1882
void SetPersistName(const OUString &rPersistName)
Definition: svdoole2.cxx:1349
virtual const tools::Rectangle & GetLogicRect() const override
Definition: svdotxtr.cxx:69
constexpr tools::Long Height() const
constexpr tools::Long Width() const
static bool IsInternal(const SvGlobalName &)
OUString GetHexName() const
bool MakeId(std::u16string_view rId)
css::uno::Sequence< sal_Int8 > GetByteSequence() const
const void * GetData()
std::size_t GetEndOfData() const
SvxAppletShape(SdrObject *pObj)
Definition: unoshap4.cxx:555
virtual void SAL_CALL setPropertyValues(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Sequence< css::uno::Any > &aValues) override
Definition: unoshap4.cxx:579
virtual ~SvxAppletShape() noexcept override
Definition: unoshap4.cxx:561
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap4.cxx:585
virtual void Create(SdrObject *pNewOpj, SvxDrawPage *pNewPage) override
Definition: unoshap4.cxx:565
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap4.cxx:606
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
Definition: unoshap4.cxx:573
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap4.cxx:749
virtual void Create(SdrObject *pNewOpj, SvxDrawPage *pNewPage) override
Definition: unoshap4.cxx:708
virtual void SAL_CALL setPropertyValues(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Sequence< css::uno::Any > &aValues) override
Definition: unoshap4.cxx:722
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
Definition: unoshap4.cxx:716
SvxFrameShape(SdrObject *pObj)
Definition: unoshap4.cxx:698
virtual ~SvxFrameShape() noexcept override
Definition: unoshap4.cxx:704
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap4.cxx:728
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap4.cxx:782
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap4.cxx:956
bool getPropertyStateImpl(const SfxItemPropertyMapEntry *pProperty, css::beans::PropertyState &rState) override
Definition: unoshap4.cxx:1074
OUString referer_
Definition: unoshape.hxx:850
virtual ~SvxMediaShape() noexcept override
Definition: unoshap4.cxx:777
SvxMediaShape(SdrObject *pObj, OUString referer)
Definition: unoshap4.cxx:769
bool createObject(const SvGlobalName &aClassName)
Definition: unoshap4.cxx:376
SvxOle2Shape(SdrObject *pObj)
Definition: unoshap4.cxx:67
void createLink(const OUString &aLinkURL)
Definition: unoshap4.cxx:439
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap4.cxx:83
virtual ~SvxOle2Shape() noexcept override
Definition: unoshap4.cxx:78
SvGlobalName GetClassName_Impl(OUString &rHexCLSID)
Definition: unoshap4.cxx:516
void resetModifiedState()
Definition: unoshap4.cxx:500
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap4.cxx:203
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
Definition: unoshap4.cxx:644
virtual void SAL_CALL setPropertyValues(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Sequence< css::uno::Any > &aValues) override
Definition: unoshap4.cxx:650
SvxPluginShape(SdrObject *pObj)
Definition: unoshap4.cxx:626
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap4.cxx:656
virtual void Create(SdrObject *pNewOpj, SvxDrawPage *pNewPage) override
Definition: unoshap4.cxx:636
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap4.cxx:677
virtual ~SvxPluginShape() noexcept override
Definition: unoshap4.cxx:632
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshape.cxx:3937
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshape.cxx:3914
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue)
Definition: unoshape.cxx:2526
virtual bool getPropertyStateImpl(const SfxItemPropertyMapEntry *pProperty, css::beans::PropertyState &rState)
Definition: unoshape.cxx:2947
virtual void Create(SdrObject *pNewOpj, SvxDrawPage *pNewPage)
Definition: unoshape.cxx:357
virtual void SAL_CALL setPropertyValues(const css::uno::Sequence< OUString > &aPropertyNames, const css::uno::Sequence< css::uno::Any > &aValues) override
Definition: unoshape.cxx:1678
virtual css::uno::Any SAL_CALL getPropertyValue(const OUString &PropertyName) override
Definition: unoshape.cxx:1611
void SetShapeType(const OUString &ShapeType)
Definition: unoshape.hxx:176
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
Definition: unoshape.cxx:1472
css::uno::Any GetBitmap(bool bMetaFile=false) const
Definition: unoshape.cxx:600
SdrObject * GetSdrObject() const
Definition: unoshape.hxx:173
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue)
Definition: unoshape.cxx:2019
static MapUnit UnoEmbed2VCLMapUnit(sal_Int32 nUnoEmbedMapUnit)
bool setMute(bool bMute)
bool setURL(const OUString &rURL, const OUString &rTempURL, const OUString &rReferer)
bool setZoom(css::media::ZoomLevel eZoom)
bool setVolumeDB(sal_Int16 nDB)
bool setMimeType(const OUString &rMimeType)
bool setGraphic(const Graphic &rGraphic)
bool setLoop(bool bLoop)
const css::text::GraphicCrop & getCrop() const
bool setCrop(const css::text::GraphicCrop &rCrop)
bool HasEmbeddedObject(const OUString &)
css::uno::Reference< css::embed::XEmbeddedObject > InsertEmbeddedLink(const css::uno::Sequence< css::beans::PropertyValue > &, OUString &)
css::uno::Reference< css::embed::XEmbeddedObject > GetEmbeddedObject(const OUString &, OUString const *pBaseURL=nullptr)
css::uno::Reference< css::embed::XEmbeddedObject > CreateEmbeddedObject(const css::uno::Sequence< sal_Int8 > &, OUString &, OUString const *pBaseURL=nullptr)
virtual bool isEnableSetModified() const=0
virtual EmbeddedObjectContainer & getEmbeddedObjectContainer() const=0
virtual css::uno::Reference< css::task::XInteractionHandler > getInteractionHandler() const=0
virtual OUString getDocumentBaseURL() const=0
#define SO3_PLUGIN_CLASSID
#define SO3_IFRAME_CLASSID
#define SO3_APPLET_CLASSID
static bool TryRunningState(const css::uno::Reference< css::embed::XEmbeddedObject > &)
constexpr tools::Long GetWidth() const
void SetSize(const Size &)
constexpr Size GetSize() const
constexpr tools::Long GetHeight() const
#define DBG_TESTSOLARMUTEX()
URL aURL
EmbeddedObjectRef * pObject
Sequence< sal_Int8 > aSeq
#define SAL_WARN_IF(condition, area, stream)
MapUnit
css::uno::Sequence< css::beans::PropertyValue > InitPropertySequence(::std::initializer_list< ::std::pair< OUString, css::uno::Any > > vInit)
css::beans::PropertyValue makePropertyValue(const OUString &rName, T &&rValue)
Any SAL_CALL getCaughtException()
SvxUnoPropertyMapProvider & getSvxMapProvider()
Definition: unoprov.cxx:861
constexpr TypedWhichId< SdrGrafCropItem > SDRATTR_GRAFCROP(SDRATTR_GRAF_FIRST+9)
signed char sal_Int8
constexpr OUStringLiteral UNO_NAME_OLE2_PERSISTNAME
#define SVXMAP_MEDIA
Definition: unoprov.hxx:74
#define SVXMAP_PLUGIN
Definition: unoprov.hxx:68
#define SVXMAP_APPLET
Definition: unoprov.hxx:70
#define SVXMAP_FRAME
Definition: unoprov.hxx:69
#define SVXMAP_OLE2
Definition: unoprov.hxx:67
#define OWN_ATTR_MEDIA_VOLUMEDB
Definition: unoshprp.hxx:157
#define OWN_ATTR_METAFILE
Definition: unoshprp.hxx:96
#define OWN_ATTR_VALUE_GRAPHIC
Definition: unoshprp.hxx:161
#define OWN_ATTR_OLESIZE
Definition: unoshprp.hxx:101
#define OWN_ATTR_MEDIA_MUTE
Definition: unoshprp.hxx:156
#define OWN_ATTR_PLUGIN_MIMETYPE
Definition: unoshprp.hxx:127
#define OWN_ATTR_OLE_EMBEDDED_OBJECT
Definition: unoshprp.hxx:163
#define OWN_ATTR_OLE_EMBEDDED_OBJECT_NONEWCLIENT
Definition: unoshprp.hxx:152
#define OWN_ATTR_PERSISTNAME
Definition: unoshprp.hxx:151
#define OWN_ATTR_MEDIA_STREAM
Definition: unoshprp.hxx:180
#define OWN_ATTR_OLEMODEL
Definition: unoshprp.hxx:103
#define OWN_ATTR_OLE_VISAREA
Definition: unoshprp.hxx:147
#define OWN_ATTR_MEDIA_URL
Definition: unoshprp.hxx:153
#define OWN_ATTR_INTERNAL_OLE
Definition: unoshprp.hxx:162
#define OWN_ATTR_OLE_LINKURL
Definition: unoshprp.hxx:174
#define OWN_ATTR_APPLET_ISSCRIPT
Definition: unoshprp.hxx:126
#define OWN_ATTR_THUMBNAIL
Definition: unoshprp.hxx:150
#define OWN_ATTR_MEDIA_MIMETYPE
Definition: unoshprp.hxx:183
#define OWN_ATTR_APPLET_DOCBASE
Definition: unoshprp.hxx:121
#define OWN_ATTR_PLUGIN_COMMANDS
Definition: unoshprp.hxx:129
#define OWN_ATTR_FALLBACK_GRAPHIC
Definition: unoshprp.hxx:184
#define OWN_ATTR_FRAME_MARGIN_HEIGHT
Definition: unoshprp.hxx:135
#define OWN_ATTR_MEDIA_ZOOM
Definition: unoshprp.hxx:158
#define OWN_ATTR_MEDIA_TEMPFILEURL
Definition: unoshprp.hxx:181
#define OWN_ATTR_MEDIA_LOOP
Definition: unoshprp.hxx:155
#define OWN_ATTR_OLE_ASPECT
Definition: unoshprp.hxx:164
#define OWN_ATTR_FRAME_URL
Definition: unoshprp.hxx:130
#define OWN_ATTR_CLSID
Definition: unoshprp.hxx:105
VCL_DLLPUBLIC bool ConvertGDIMetaFileToWMF(const GDIMetaFile &rMTF, SvStream &rTargetStream, FilterConfigItem const *pConfigItem, bool bPlaceable=true)