c3c7b48fa9
This patch includes all marshalling and proxy handling code on the .NET side as well as the native side needed for a fully functional UNO bridge. It also includes some changes and corrections to net_basetypes and netmaker needed for the bridge to work properly. It also includes the FirstUnoContact example in C# as demonstration. Change-Id: I406932938a4415d24408fb41ddfa7d8eeb5d1f94 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170916 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org>
25 lines
697 B
C#
25 lines
697 B
C#
/*
|
|
* 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 com.sun.star.lang;
|
|
|
|
namespace com.sun.star.uno.helper
|
|
{
|
|
// This class can be used to auto-dispose UNO components
|
|
// from managed code with a using block/statement.
|
|
public class DisposeGuard : IDisposable
|
|
{
|
|
private readonly XComponent _component;
|
|
public DisposeGuard(XComponent component) => _component = component;
|
|
|
|
public void Dispose() => _component?.dispose();
|
|
}
|
|
|
|
}
|