LibreOffice Module package (master)
1
package
source
xstor
disposelistener.cxx
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
#include "
disposelistener.hxx
"
21
#include "
xstorage.hxx
"
22
23
using namespace
::
com::sun::star
;
24
25
OChildDispListener_Impl::OChildDispListener_Impl
(
OStorage
& aStorage )
26
: m_pStorage( &aStorage )
27
{}
28
29
OChildDispListener_Impl::~OChildDispListener_Impl
()
30
{}
31
32
void
OChildDispListener_Impl::OwnerIsDisposed
()
33
{
34
std::scoped_lock aGuard(
m_aMutex
);
35
m_pStorage
=
nullptr
;
36
}
37
38
void
SAL_CALL
OChildDispListener_Impl::disposing
(
const
lang::EventObject& Source )
39
{
40
std::scoped_lock aGuard(
m_aMutex
);
41
// ObjectIsDisposed must not contain any locking!
42
if
(
m_pStorage
&&
Source
.Source.is() )
43
m_pStorage
->
ChildIsDisposed
(
Source
.Source );
44
}
45
46
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Blend::Source
@ Source
OChildDispListener_Impl::m_aMutex
std::mutex m_aMutex
Definition:
disposelistener.hxx:30
OChildDispListener_Impl::m_pStorage
OStorage * m_pStorage
Definition:
disposelistener.hxx:31
OChildDispListener_Impl::OwnerIsDisposed
void OwnerIsDisposed()
Definition:
disposelistener.cxx:32
OChildDispListener_Impl::~OChildDispListener_Impl
virtual ~OChildDispListener_Impl() override
Definition:
disposelistener.cxx:29
OChildDispListener_Impl::disposing
virtual void SAL_CALL disposing(const css::lang::EventObject &Source) override
Definition:
disposelistener.cxx:38
OChildDispListener_Impl::OChildDispListener_Impl
OChildDispListener_Impl(OStorage &aStorage)
Definition:
disposelistener.cxx:25
OStorage
Definition:
xstorage.hxx:280
OStorage::ChildIsDisposed
void ChildIsDisposed(const css::uno::Reference< css::uno::XInterface > &xChild)
Definition:
xstorage.cxx:1863
disposelistener.hxx
com::sun::star
xstorage.hxx
Generated on Sun Jul 30 2023 04:38:01 for LibreOffice Module package (master) by
1.9.3