/* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq;
using com.sun.star.uno; using com.sun.star.lang;
namespace com.sun.star.uno.helper
{ // This class can be used as a helper base class for UNO interfaces. // It allows taking weak references to the object (com.sun.star.uno.XWeak), // using the object from StarBasic (com.sun.star.lang.XTypeProvider) // and explicitly controlling its lifetime (com.sun.star.lang.XComponent) publicclass WeakComponentBase : WeakBase, XComponent
{ privatereadonly List<XEventListener> _listeners; public WeakComponentBase() => _listeners = new List<XEventListener>();
// XComponent publicvoid dispose()
{
EventObject e = new EventObject(this); foreach (XEventListener listener in _listeners)
listener.disposing(e);
_listeners.Clear();
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.