20#include <com/sun/star/lang/XComponent.hpp>
21#include <com/sun/star/lang/XTypeProvider.hpp>
34 public css::lang::XComponent
40 virtual void SAL_CALL
dispose()
override;
42 addEventListener(css::uno::Reference<css::lang::XEventListener>
const& rxListener)
override;
44 removeEventListener(css::uno::Reference<css::lang::XEventListener>
const& rxListener)
override;
46 virtual css::uno::Any SAL_CALL
queryInterface(css::uno::Type
const& rType)
override;
52 virtual void disposing(std::unique_lock<std::mutex>&);
58 throw css::lang::DisposedException(OUString(),
static_cast<cppu::OWeakObject*
>(
this));
63template <
typename... Ifc>
65 public css::lang::XTypeProvider,
69 virtual void SAL_CALL
acquire() noexcept
override { OWeakObject::acquire(); }
71 virtual void SAL_CALL
release() noexcept
override { OWeakObject::release(); }
74 virtual void SAL_CALL
dispose() noexcept final
override
79 css::uno::Reference<css::lang::XEventListener>
const& rxListener)
final override
84 css::uno::Reference<css::lang::XEventListener>
const& rxListener)
final override
89 virtual css::uno::Any SAL_CALL
queryInterface(css::uno::Type
const& rType)
override
95 virtual css::uno::Sequence<css::uno::Type> SAL_CALL
getTypes()
override
97 static const css::uno::Sequence<css::uno::Type> aTypeList{
105 return css::uno::Sequence<sal_Int8>();
119 WeakComponentImplHelperBase* pBase);
This class is meant to be used as a base class for UNO object implementations that want to use std::m...
Serves two purposes (1) extracts code that doesn't need to be templated (2) helps to handle the custo...
virtual void SAL_CALL dispose() override
comphelper::OInterfaceContainerHelper4< css::lang::XEventListener > maEventListeners
void throwIfDisposed(std::unique_lock< std::mutex > &)
virtual void SAL_CALL removeEventListener(css::uno::Reference< css::lang::XEventListener > const &rxListener) override
virtual void SAL_CALL addEventListener(css::uno::Reference< css::lang::XEventListener > const &rxListener) override
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
static cppu::class_data * class_data_get()
virtual void SAL_CALL acquire() noexcept override
virtual void SAL_CALL removeEventListener(css::uno::Reference< css::lang::XEventListener > const &rxListener) final override
virtual void SAL_CALL release() noexcept override
virtual void SAL_CALL addEventListener(css::uno::Reference< css::lang::XEventListener > const &rxListener) final override
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
virtual void SAL_CALL dispose() noexcept final override
virtual css::uno::Any SAL_CALL queryInterface(css::uno::Type const &rType) override
css::uno::Type const & get()
#define COMPHELPER_DLLPUBLIC
css::uno::Any WeakComponentImplHelper_query(css::uno::Type const &rType, cppu::class_data *cd, WeakComponentImplHelperBase *pBase)
WeakComponentImplHelper.
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType, Interface1 *p1)