20#include <com/sun/star/uno/Any.hxx>
21#include <com/sun/star/uno/Reference.hxx>
22#include <com/sun/star/uno/Sequence.hxx>
23#include <com/sun/star/embed/Aspects.hpp>
24#include <com/sun/star/io/XInputStream.hpp>
25#include <com/sun/star/io/XOutputStream.hpp>
26#include <com/sun/star/graphic/GraphicProvider.hpp>
27#include <com/sun/star/graphic/XGraphicProvider.hpp>
28#include <com/sun/star/graphic/XGraphic.hpp>
29#include <com/sun/star/beans/PropertyValue.hpp>
47 const OUString& aMimeType,
56 sal_uInt16 nRetFormat = 0;
58 rFilter.GetImportFormatMediaType(nRetFormat) ==
aMimeType)
60 aResult <<= uno::Sequence< sal_Int8 >(
static_cast< const sal_Int8*
>( aMemoryStream.
GetData() ), aMemoryStream.
TellEnd() );
64 uno::Sequence < sal_Int8 >
aData(
static_cast<sal_Int8*
>(pBuf), nBufSize );
70 "InputStream", xIn) };
71 uno::Reference< graphic::XGraphic > xGraphic( xGraphicProvider->queryGraphic( aMediaProperties ) );
76 uno::Sequence< beans::PropertyValue > aOutMediaProperties{
81 xGraphicProvider->storeGraphic( xGraphic, aOutMediaProperties );
82 aResult <<= uno::Sequence< sal_Int8 >(
static_cast< const sal_Int8*
>( aNewStream.
GetData() ), aNewStream.
TellEnd() );
86 catch (
const uno::Exception&)
97: m_pObject( xObj.
get() )
98, m_xObject( static_cast< embed::XEmbeddedObject* >( xObj.
get() ) )
99, m_nNotificationType( nNotificationType )
100, m_nAspect( nAspect )
109 uno::Reference< uno::XInterface > xLock =
m_xObject.get();
115 else if (
m_nAspect == embed::Aspects::MSOLE_CONTENT )
117 else if (
m_nAspect == embed::Aspects::MSOLE_ICON )
118 OleEmbeddedObject::OnIconChanged_Impl();
121 catch(
const uno::Exception& )
static GraphicFilter & GetGraphicFilter()
ErrCode CanImportGraphic(const INetURLObject &rPath, sal_uInt16 nFormat, sal_uInt16 *pDeterminedFormat)
OleEmbeddedObject * m_pObject
virtual void SAL_CALL notify(const css::uno::Any &rUserData) override
MainThreadNotificationRequest(const ::rtl::Reference< OleEmbeddedObject > &xObj, sal_uInt16 nNotificationType, sal_uInt32 nAspect=0)
sal_uInt16 m_nNotificationType
css::uno::WeakReference< css::embed::XEmbeddedObject > m_xObject
~MainThreadNotificationRequest() override
virtual sal_uInt64 TellEnd() override
bool ConvertBufferToFormat(void *pBuf, sal_uInt32 nBufSize, const OUString &aMimeType, uno::Any &aResult)
#define GRFILTER_FORMAT_DONTKNOW
constexpr OUStringLiteral aData
Reference< XComponentContext > getProcessComponentContext()
css::beans::PropertyValue makePropertyValue(const OUString &rName, T &&rValue)
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)
const sal_Unicode *const aMimeType[]