21#include <com/sun/star/uno/Sequence.hxx>
22#include <com/sun/star/beans/PropertyChangeEvent.hpp>
23#include <com/sun/star/beans/XPropertySetInfoChangeListener.hpp>
24#include <com/sun/star/beans/XPropertiesChangeListener.hpp>
25#include <com/sun/star/ucb/XContentIdentifier.hpp>
26#include <com/sun/star/ucb/XContent.hpp>
28#include <unordered_map>
41 css::uno::Reference< css::ucb::XContentIdentifier >
m_xOldId;
42 std::vector< css::uno::Reference< css::ucb::XContentEventListener > >
m_sListeners;
47 const css::uno::Reference< css::ucb::XContent >& xCreatorContent,
48 const css::uno::Reference< css::ucb::XContentIdentifier >& xCreatorId,
49 std::vector< css::uno::Reference< css::ucb::XContentEventListener > >&& sListeners );
53 const css::uno::Reference< css::ucb::XContent >& xCreatorContent,
54 const css::uno::Reference< css::ucb::XContentIdentifier >& xCreatorId,
55 const css::uno::Reference< css::ucb::XContentIdentifier >& xOldId,
56 std::vector< css::uno::Reference< css::ucb::XContentEventListener > >&& sListeners );
69 std::vector< css::uno::Reference< css::beans::XPropertySetInfoChangeListener > >
m_sListeners;
72 const css::uno::Reference< css::ucb::XContent >& xCreatorContent,
73 std::vector< css::uno::Reference< css::beans::XPropertySetInfoChangeListener > >&& sListeners );
80 typedef std::unordered_map< OUString,
81 std::vector< css::uno::Reference< css::beans::XPropertiesChangeListener > > >
ListenerMap;
90 const css::uno::Reference< css::ucb::XContent >& xCreatorContent,
94 const css::uno::Sequence< css::beans::PropertyChangeEvent >& seqChanged )
const;
102 virtual std::optional<ContentEventNotifier>
cEXC(
const OUString& aNewName ) = 0;
104 virtual std::optional<ContentEventNotifier>
cDEL() = 0;
105 virtual std::optional<ContentEventNotifier>
cCEL() = 0;
106 virtual std::optional<PropertySetInfoChangeNotifier>
cPSL() = 0;
107 virtual std::optional<PropertyChangeNotifier>
cPCL() = 0;
css::uno::Reference< css::ucb::XContentIdentifier > m_xCreatorId
ContentEventNotifier(TaskManager *pMyShell, const css::uno::Reference< css::ucb::XContent > &xCreatorContent, const css::uno::Reference< css::ucb::XContentIdentifier > &xCreatorId, std::vector< css::uno::Reference< css::ucb::XContentEventListener > > &&sListeners)
void notifyRemoved(const OUString &aChildName) const
std::vector< css::uno::Reference< css::ucb::XContentEventListener > > m_sListeners
css::uno::Reference< css::ucb::XContent > m_xCreatorContent
void notifyExchanged() const
void notifyChildInserted(const OUString &aChildName) const
css::uno::Reference< css::ucb::XContentIdentifier > m_xOldId
void notifyDeleted() const
ContentEventNotifier(TaskManager *pMyShell, const css::uno::Reference< css::ucb::XContent > &xCreatorContent, const css::uno::Reference< css::ucb::XContentIdentifier > &xCreatorId, const css::uno::Reference< css::ucb::XContentIdentifier > &xOldId, std::vector< css::uno::Reference< css::ucb::XContentEventListener > > &&sListeners)
virtual std::optional< PropertySetInfoChangeNotifier > cPSL()=0
virtual std::optional< ContentEventNotifier > cCEL()=0
virtual std::optional< ContentEventNotifier > cDEL()=0
virtual std::optional< ContentEventNotifier > cEXC(const OUString &aNewName)=0
virtual std::optional< PropertyChangeNotifier > cPCL()=0
css::uno::Reference< css::ucb::XContent > m_xCreatorContent
void notifyPropertyChanged(const css::uno::Sequence< css::beans::PropertyChangeEvent > &seqChanged) const
PropertyChangeNotifier(const css::uno::Reference< css::ucb::XContent > &xCreatorContent, ListenerMap &&pListeners)
std::vector< css::uno::Reference< css::beans::XPropertySetInfoChangeListener > > m_sListeners
PropertySetInfoChangeNotifier(const css::uno::Reference< css::ucb::XContent > &xCreatorContent, std::vector< css::uno::Reference< css::beans::XPropertySetInfoChangeListener > > &&sListeners)
void notifyPropertyAdded(const OUString &aPropertyName) const
css::uno::Reference< css::ucb::XContent > m_xCreatorContent
void notifyPropertyRemoved(const OUString &aPropertyName) const
std::unordered_map< OUString, std::vector< css::uno::Reference< css::beans::XPropertiesChangeListener > > > ListenerMap