X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2FTizen.NUI%2Fsrc%2Finternal%2FActivatedSignalType.cs;h=1f8dfb62452be702609fdf048c2b1a85104f49e5;hb=46b8a31f5c1c75a22b648ca394a4de8a50898513;hp=8728e98760889a8cde854aa82cf54f260e79d881;hpb=ec75666e637b84aededae2ad0f4dcd6b97952452;p=platform%2Fcore%2Fcsapi%2Ftizenfx.git diff --git a/src/Tizen.NUI/src/internal/ActivatedSignalType.cs b/src/Tizen.NUI/src/internal/ActivatedSignalType.cs index 8728e98..1f8dfb6 100755 --- a/src/Tizen.NUI/src/internal/ActivatedSignalType.cs +++ b/src/Tizen.NUI/src/internal/ActivatedSignalType.cs @@ -1,27 +1,32 @@ -/** Copyright (c) 2017 Samsung Electronics Co., Ltd. -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* -*/ +/* + * Copyright(c) 2018 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ using System; using System.Runtime.InteropServices; +using System.ComponentModel; namespace Tizen.NUI { - [Obsolete("Please do not use! this will be deprecated")] - public class ActivatedSignalType : global::System.IDisposable + internal class ActivatedSignalType : Disposable { private global::System.Runtime.InteropServices.HandleRef swigCPtr; + /// + /// swigCMemOwn + /// + /// 3 protected bool swigCMemOwn; internal ActivatedSignalType(global::System.IntPtr cPtr, bool cMemoryOwn) @@ -35,54 +40,17 @@ namespace Tizen.NUI return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; } - //A Flag to check who called Dispose(). (By User or DisposeQueue) - private bool isDisposeQueued = false; - //A Flat to check if it is already disposed. - protected bool disposed = false; - - ~ActivatedSignalType() - { - if (!isDisposeQueued) - { - isDisposeQueued = true; - DisposeQueue.Instance.Add(this); - } - } - - public void Dispose() - { - //Throw excpetion if Dispose() is called in separate thread. - if (!Window.IsInstalled()) - { - throw new System.InvalidOperationException("This API called from separate thread. This API must be called from MainThread."); - } - - if (isDisposeQueued) - { - Dispose(DisposeTypes.Implicit); - } - else - { - Dispose(DisposeTypes.Explicit); - System.GC.SuppressFinalize(this); - } - } - - protected virtual void Dispose(DisposeTypes type) + /// + /// Dispose + /// + /// 3 + protected override void Dispose(DisposeTypes type) { if (disposed) { return; } - if (type == DisposeTypes.Explicit) - { - //Called by User - //Release your own managed resources here. - //You should release all of your own disposable objects here. - - } - //Release your own unmanaged resources here. //You should not access any managed member here except static instance. //because the execution order of Finalizes is non-deterministic. @@ -92,57 +60,84 @@ namespace Tizen.NUI if (swigCMemOwn) { swigCMemOwn = false; - NDalicManualPINVOKE.delete_ActivatedSignalType(swigCPtr); + Interop.ActivatedSignalType.delete_ActivatedSignalType(swigCPtr); } swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); } - disposed = true; + base.Dispose(type); } + /// + /// Queries whether there are any connected slots. + /// + /// True if there are any slots connected to the signal + /// 3 public bool Empty() { - bool ret = NDalicManualPINVOKE.ActivatedSignalType_Empty(swigCPtr); + bool ret = Interop.ActivatedSignalType.ActivatedSignalType_Empty(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } + /// + /// Queries the number of slots. + /// + /// The number of slots connected to this signal + /// 3 public uint GetConnectionCount() { - uint ret = NDalicManualPINVOKE.ActivatedSignalType_GetConnectionCount(swigCPtr); + uint ret = Interop.ActivatedSignalType.ActivatedSignalType_GetConnectionCount(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } + /// + /// Connects a function. + /// + /// The function to connect + /// 3 public void Connect(System.Delegate func) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); + System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); { - NDalicManualPINVOKE.ActivatedSignalType_Connect(swigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); + Interop.ActivatedSignalType.ActivatedSignalType_Connect(swigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } + /// + /// Disconnects a function. + /// + /// The function to disconnect + /// 3 public void Disconnect(System.Delegate func) { - System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); + System.IntPtr ip = System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(func); { - NDalicManualPINVOKE.ActivatedSignalType_Disconnect(swigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); + Interop.ActivatedSignalType.ActivatedSignalType_Disconnect(swigCPtr, new System.Runtime.InteropServices.HandleRef(this, ip)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } } - public void Emit(ImfManager arg) + /// + /// Emits the signal. + /// + /// The first value to pass to callbacks + /// 5 + public void Emit(InputMethodContext arg) { - NDalicManualPINVOKE.ActivatedSignalType_Emit(swigCPtr, ImfManager.getCPtr(arg)); + Interop.ActivatedSignalType.ActivatedSignalType_Emit(swigCPtr, InputMethodContext.getCPtr(arg)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - public ActivatedSignalType() : this(NDalicManualPINVOKE.new_ActivatedSignalType(), true) + /// + /// The contructor. + /// + /// 3 + public ActivatedSignalType() : this(Interop.ActivatedSignalType.new_ActivatedSignalType(), true) { if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - } - }