LibreOffice Module xmloff (master) 1
eventimport.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20#pragma once
21
22#include <sal/config.h>
23
24#include <map>
25
27#include "callbacks.hxx"
28#include <com/sun/star/container/XIndexAccess.hpp>
29
30class SvXMLImport;
31namespace xmloff
32{
33
34 //= OFormEventsImportContext
36 {
38
39 public:
41 IEventAttacher& _rEventAttacher);
42
43 protected:
44 virtual void SAL_CALL endFastElement(sal_Int32 nElement) override;
45 };
46
47 //= ODefaultEventAttacherManager
49 {
50 typedef std::map<
51 css::uno::Reference< css::beans::XPropertySet >,
52 css::uno::Sequence< css::script::ScriptEventDescriptor >>
54 // usually an event attacher manager will need to collect all script events registered, 'cause
55 // the _real_ XEventAttacherManager handles it's events by index, but out indices are not fixed
56 // until _all_ controls have been inserted.
57
59
60 public:
61 // IEventAttacherManager
62 virtual void registerEvents(
63 const css::uno::Reference< css::beans::XPropertySet >& _rxElement,
64 const css::uno::Sequence< css::script::ScriptEventDescriptor >& _rEvents
65 ) override;
66
67 protected:
68 void setEvents(
69 const css::uno::Reference< css::container::XIndexAccess >& _rxContainer
70 );
71
73 };
74
75} // namespace xmloff
76
77/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
friend class SvXMLImport
Definition: xmlictxt.hxx:49
Import <script:events> element.
MapPropertySet2ScriptSequence m_aEvents
Definition: eventimport.hxx:58
std::map< css::uno::Reference< css::beans::XPropertySet >, css::uno::Sequence< css::script::ScriptEventDescriptor > > MapPropertySet2ScriptSequence
Definition: eventimport.hxx:53
virtual void registerEvents(const css::uno::Reference< css::beans::XPropertySet > &_rxElement, const css::uno::Sequence< css::script::ScriptEventDescriptor > &_rEvents) override
Definition: eventimport.cxx:99
void setEvents(const css::uno::Reference< css::container::XIndexAccess > &_rxContainer)
OFormEventsImportContext(SvXMLImport &_rImport, IEventAttacher &_rEventAttacher)
Definition: eventimport.cxx:35
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override
endFastElement is called before a context will be destructed, but after an elements context has been ...
Definition: eventimport.cxx:41