summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2011-12-12 19:40:38 +0100
committerMichael Stahl <mstahl@redhat.com>2011-12-12 21:53:46 +0100
commit5924454a867bd500fdc696bb9939c84425c5e025 (patch)
treeab99a45ad189265259385d68a089a5de62004b7c /svx
parent41927a4f2fe824dd1588c4ed0e14de0f2220c039 (diff)
slideshow: play back embedded media:
The slideshow uses the UNO API to access the drawing objects, so add a property to get the temp file URL from the media object.
Diffstat (limited to 'svx')
-rw-r--r--svx/inc/svx/unoshprp.hxx6
-rw-r--r--svx/source/unodraw/unoprov.cxx3
-rw-r--r--svx/source/unodraw/unoshap4.cxx9
3 files changed, 14 insertions, 4 deletions
diff --git a/svx/inc/svx/unoshprp.hxx b/svx/inc/svx/unoshprp.hxx
index 5e4bdf568ba2..6cf3619cb0d1 100644
--- a/svx/inc/svx/unoshprp.hxx
+++ b/svx/inc/svx/unoshprp.hxx
@@ -187,7 +187,11 @@
#define OWN_ATTR_STYLE (OWN_ATTR_VALUE_START+87)
-#define OWN_ATTR_EDGE_POLYPOLYGONBEZIER (OWN_ATTR_VALUE_START+88) // maximum is OWN_ATTR_VALUE_START+88, see svl/inc/svl/solar.hrc
+#define OWN_ATTR_EDGE_POLYPOLYGONBEZIER (OWN_ATTR_VALUE_START+88)
+
+#define OWN_ATTR_MEDIA_STREAM (OWN_ATTR_VALUE_START+89)
+#define OWN_ATTR_MEDIA_TEMPFILEURL (OWN_ATTR_VALUE_START+90)
+// ATTENTION: maximum is OWN_ATTR_VALUE_START+90, see svl/inc/svl/solar.hrc
// #FontWork#
#define FONTWORK_PROPERTIES \
diff --git a/svx/source/unodraw/unoprov.cxx b/svx/source/unodraw/unoprov.cxx
index f800afba3c34..c46967269c38 100644
--- a/svx/source/unodraw/unoprov.cxx
+++ b/svx/source/unodraw/unoprov.cxx
@@ -761,7 +761,8 @@ SfxItemPropertyMapEntry* ImplGetSvxMediaShapePropertyMap()
// #i68101#
{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_TITLE), OWN_ATTR_MISC_OBJ_TITLE , &::getCppuType((const ::rtl::OUString*)0), 0, 0},
{ MAP_CHAR_LEN(UNO_NAME_MISC_OBJ_DESCRIPTION), OWN_ATTR_MISC_OBJ_DESCRIPTION , &::getCppuType((const ::rtl::OUString*)0), 0, 0},
- {MAP_CHAR_LEN("PrivateStream"), OWN_ATTR_GRAPHIC_STREAM, &::com::sun::star::io::XInputStream::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
+ {MAP_CHAR_LEN("PrivateStream"), OWN_ATTR_MEDIA_STREAM, &::com::sun::star::io::XInputStream::static_type(), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
+ {MAP_CHAR_LEN("PrivateTempFileURL"), OWN_ATTR_MEDIA_TEMPFILEURL, &::getCppuType((const ::rtl::OUString*)0), ::com::sun::star::beans::PropertyAttribute::READONLY, 0},
{0,0,0,0,0,0}
};
diff --git a/svx/source/unodraw/unoshap4.cxx b/svx/source/unodraw/unoshap4.cxx
index c4c7e687df2c..ad517c25a17e 100644
--- a/svx/source/unodraw/unoshap4.cxx
+++ b/svx/source/unodraw/unoshap4.cxx
@@ -955,7 +955,8 @@ bool SvxMediaShape::getPropertyValueImpl( const ::rtl::OUString& rName, const Sf
{
if ( ((pProperty->nWID >= OWN_ATTR_MEDIA_URL) &&
(pProperty->nWID <= OWN_ATTR_MEDIA_ZOOM))
- || (pProperty->nWID == OWN_ATTR_GRAPHIC_STREAM))
+ || (pProperty->nWID == OWN_ATTR_MEDIA_STREAM)
+ || (pProperty->nWID == OWN_ATTR_MEDIA_TEMPFILEURL))
{
SdrMediaObj* pMedia = static_cast< SdrMediaObj* >( mpObj.get() );
const ::avmedia::MediaItem aItem( pMedia->getMediaProperties() );
@@ -982,10 +983,14 @@ bool SvxMediaShape::getPropertyValueImpl( const ::rtl::OUString& rName, const Sf
rValue <<= aItem.getZoom();
break;
- case OWN_ATTR_GRAPHIC_STREAM:
+ case OWN_ATTR_MEDIA_STREAM:
rValue <<= pMedia->GetInputStream();
break;
+ case OWN_ATTR_MEDIA_TEMPFILEURL:
+ rValue <<= aItem.getTempURL();
+ break;
+
default:
OSL_FAIL("SvxMediaShape::getPropertyValueImpl(), unknown property!");
}