20#include <com/sun/star/document/EventObject.hpp>
21#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
24#include <osl/diagnose.h>
45 uno::Reference< uno::XInterface > xHoldAlive( getXWeak() );
51 catch(css::uno::Exception&)
65 OWeakAggObject::release();
74 uno::Reference< lang::XComponent > xSelf(
this );
78 bool bDoDispose =
false;
95 uno::Reference< uno::XInterface > xSource( uno::Reference< uno::XInterface >::query(
static_cast<lang::XComponent *
>(
this) ) );
96 document::EventObject aEvt;
97 aEvt.Source = xSource;
104 catch(
const css::uno::Exception&)
123 SAL_INFO(
"svx",
"dispose called twice" );
167 throw lang::IndexOutOfBoundsException();
188 return "com.sun.star.drawing.SvxShapeCollection";
198 return {
"com.sun.star.drawing.Shapes",
"com.sun.star.drawing.ShapeCollection" };
206extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface *
208 css::uno::XComponentContext *,
209 css::uno::Sequence<css::uno::Any>
const &)
void getAllShapes(std::vector< css::uno::Reference< css::drawing::XShape > > &rShapes) const
virtual void SAL_CALL remove(const css::uno::Reference< css::drawing::XShape > &xShape) override
std::vector< css::uno::Reference< css::drawing::XShape > > maShapeContainer
SvxShapeCollection() noexcept
virtual css::uno::Type SAL_CALL getElementType() override
virtual void SAL_CALL removeEventListener(const css::uno::Reference< css::lang::XEventListener > &aListener) override
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual void SAL_CALL add(const css::uno::Reference< css::drawing::XShape > &xShape) override
virtual sal_Int32 SAL_CALL getCount() override
virtual void SAL_CALL release() noexcept override
virtual css::uno::Any SAL_CALL getByIndex(sal_Int32 Index) override
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
virtual void SAL_CALL addEventListener(const css::uno::Reference< css::lang::XEventListener > &aListener) override
virtual void SAL_CALL dispose() override
virtual OUString SAL_CALL getImplementationName() override
comphelper::OInterfaceContainerHelper4< css::lang::XEventListener > maEventListeners
virtual sal_Bool SAL_CALL hasElements() override
sal_Int32 addInterface(std::unique_lock< std::mutex > &rGuard, const css::uno::Reference< ListenerT > &rxIFace)
void disposeAndClear(::std::unique_lock<::std::mutex > &rGuard, const css::lang::EventObject &rEvt)
sal_Int32 removeInterface(std::unique_lock< std::mutex > &rGuard, const css::uno::Reference< ListenerT > &rxIFace)
css::uno::WeakReferenceHelper xDelegator
oslInterlockedCount m_refCount
css::uno::Type const & get()
#define SAL_INFO(area, stream)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
SAL_DLLPUBLIC_EXPORT css::uno::XInterface * com_sun_star_drawing_SvxShapeCollection_get_implementation(css::uno::XComponentContext *, css::uno::Sequence< css::uno::Any > const &)