1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
21 module com
{ module sun
{ module star
{ module util
{
24 /** allows to control notification behavior of a broadcaster.
28 interface XBroadcaster
: com
::sun
::star
::uno
::XInterface
30 /** suspends broadcasts to the registered listeners.
33 The calls to XBroadcaster::lockBroadcasts() and
34 XBroadcaster::unlockBroadcasts() may be
35 nested and even overlapping, but they must be in pairs. While
36 there is at least one lock remaining, no broadcasts are
37 sent to registered listeners.
40 void lockBroadcasts
();
42 /** resumes the broadcasts which were suspended by
43 XBroadcaster::lockBroadcasts().
46 The calls to XBroadcaster::lockBroadcasts() and
47 XBroadcaster::unlockBroadcasts() may be
48 nested and even overlapping, but they must be in pairs. While
49 there is at least one lock remaining, no broadcasts are
50 sent to registered listeners.
53 <p> Pending broadcasts will be sent immediately after the last
54 call to XBroadcaster::lockBroadcasts() is matched
55 by a call to XBroadcaster::unlockBroadcasts().
56 An implementation can decide to broadcast all pending notification in
57 order or batch them in single broadcasts.
60 void unlockBroadcasts
();
66 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */