2 * Copyright(c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using Tizen.NUI.BaseComponents;
24 /// A ToggleButton allows the user to change a setting between two or more states.
26 public class ToggleButton : Tizen.NUI.UIComponents.Button
28 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
30 internal ToggleButton(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.ToggleButton_SWIGUpcast(cPtr), cMemoryOwn)
32 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
35 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ToggleButton obj)
37 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
43 /// <param name="type">The dispose type</param>
44 /// <since_tizen> 3 </since_tizen>
45 protected override void Dispose(DisposeTypes type)
52 if (type == DisposeTypes.Explicit)
55 //Release your own managed resources here.
56 //You should release all of your own disposable objects here.
60 //Release your own unmanaged resources here.
61 //You should not access any managed member here except static instance.
62 //because the execution order of Finalizes is non-deterministic.
64 if (swigCPtr.Handle != global::System.IntPtr.Zero)
69 NDalicPINVOKE.delete_ToggleButton(swigCPtr);
71 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
78 /// This should be internal, please do not use.
80 /// <since_tizen> 3 </since_tizen>
81 public new class Property
84 /// This should be internal, please do not use.
86 /// <since_tizen> 3 </since_tizen>
87 public static readonly int STATE_VISUALS = NDalicPINVOKE.ToggleButton_Property_STATE_VISUALS_get();
89 /// This should be internal, please do not use.
91 /// <since_tizen> 3 </since_tizen>
92 public static readonly int TOOLTIPS = NDalicPINVOKE.ToggleButton_Property_TOOLTIPS_get();
94 /// This should be internal, please do not use.
96 /// <since_tizen> 3 </since_tizen>
97 public static readonly int CURRENT_STATE_INDEX = NDalicPINVOKE.ToggleButton_Property_CURRENT_STATE_INDEX_get();
101 /// Create an instance for toggleButton.
103 /// <since_tizen> 3 </since_tizen>
104 public ToggleButton() : this(NDalicPINVOKE.ToggleButton_New(), true)
106 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
111 /// Gets and Sets the state visual array of toggle button.
113 /// <since_tizen> 3 </since_tizen>
114 public Tizen.NUI.PropertyArray StateVisuals
118 Tizen.NUI.PropertyArray temp = new Tizen.NUI.PropertyArray();
119 GetProperty(ToggleButton.Property.STATE_VISUALS).Get(temp);
124 SetProperty(ToggleButton.Property.STATE_VISUALS, new Tizen.NUI.PropertyValue(value));
129 /// Gets and Sets the tooltips of toggle button.
131 /// <since_tizen> 3 </since_tizen>
132 public Tizen.NUI.PropertyArray Tooltips
136 Tizen.NUI.PropertyArray temp = new Tizen.NUI.PropertyArray();
137 GetProperty(ToggleButton.Property.TOOLTIPS).Get(temp);
142 SetProperty(ToggleButton.Property.TOOLTIPS, new Tizen.NUI.PropertyValue(value));
147 /// Gets and Sets the current state index of toggle button.
149 /// <since_tizen> 3 </since_tizen>
150 public int CurrentStateIndex
155 GetProperty(ToggleButton.Property.CURRENT_STATE_INDEX).Get(out temp);
160 SetProperty(ToggleButton.Property.CURRENT_STATE_INDEX, new Tizen.NUI.PropertyValue(value));