mirror of
https://github.com/LibreOffice/core.git
synced 2025-07-26 15:45:26 +00:00

so we can identify what document is requesting their contents extends: commit5668e73beb
Date: Wed Nov 20 14:43:45 2013 +0100 avmedia: Implement "block untrusted referer links" feature Seef0a9ca24fd
"rhbz#887420 Implement 'block untrusted referer links' feature" for details. This adds some further /*TODO?*/ comments, and one known problem (marked /*TODO!*/) is that movies/sounds are not blocked during a slideshow presentation. to these objects too, namely OLE2Shape and derivatives AppletShape, FrameShape and PluginShape so in paranoid mode we won't load the contents of such objects from documents considered "untrusted". Change-Id: I6d988035d0cd09fd3fade5f6885fe336c95579ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156612 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
98 lines
4.2 KiB
C++
98 lines
4.2 KiB
C++
/* -*- 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 INCLUDED_SVX_SOURCE_UNODRAW_SHAPEIMPL_HXX
|
|
#define INCLUDED_SVX_SOURCE_UNODRAW_SHAPEIMPL_HXX
|
|
|
|
#include <svx/unoprov.hxx>
|
|
#include <svx/unoshape.hxx>
|
|
|
|
class SvxShapeCaption : public SvxShapeText
|
|
{
|
|
public:
|
|
explicit SvxShapeCaption(SdrObject* pObj);
|
|
virtual ~SvxShapeCaption() noexcept override;
|
|
};
|
|
class SvxPluginShape : public SvxOle2Shape
|
|
{
|
|
protected:
|
|
// override these for special property handling in subcasses. Return true if property is handled
|
|
virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
|
|
virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
|
|
|
|
public:
|
|
explicit SvxPluginShape(SdrObject* pObj, OUString referer);
|
|
virtual ~SvxPluginShape() noexcept override;
|
|
|
|
virtual void SAL_CALL setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue ) override;
|
|
using SvxUnoTextRangeBase::setPropertyValue;
|
|
|
|
virtual void SAL_CALL setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& aValues ) override;
|
|
|
|
virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage ) override;
|
|
};
|
|
|
|
class SvxAppletShape : public SvxOle2Shape
|
|
{
|
|
protected:
|
|
// override these for special property handling in subcasses. Return true if property is handled
|
|
virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
|
|
virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
|
|
|
|
public:
|
|
explicit SvxAppletShape(SdrObject* pObj, OUString referer);
|
|
virtual ~SvxAppletShape() noexcept override;
|
|
|
|
virtual void SAL_CALL setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue ) override;
|
|
using SvxUnoTextRangeBase::setPropertyValue;
|
|
|
|
virtual void SAL_CALL setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& aValues ) override;
|
|
|
|
virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage ) override;
|
|
};
|
|
|
|
class SvxFrameShape : public SvxOle2Shape
|
|
{
|
|
private:
|
|
OUString m_sInitialFrameURL;
|
|
protected:
|
|
// override these for special property handling in subcasses. Return true if property is handled
|
|
virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
|
|
virtual bool getPropertyValueImpl(const OUString& rName, const SfxItemPropertyMapEntry* pProperty,
|
|
css::uno::Any& rValue) override;
|
|
|
|
public:
|
|
explicit SvxFrameShape(SdrObject* pObj, OUString referer);
|
|
virtual ~SvxFrameShape() noexcept override;
|
|
|
|
virtual void SAL_CALL setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue ) override;
|
|
using SvxUnoTextRangeBase::setPropertyValue;
|
|
|
|
virtual void SAL_CALL setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& aValues ) override;
|
|
|
|
virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage ) override;
|
|
|
|
virtual OUString GetAndClearInitialFrameURL() override;
|
|
};
|
|
|
|
SvxUnoPropertyMapProvider& getSvxMapProvider();
|
|
|
|
#endif
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|