1 //------------------------------------------------------------------------------
4 // This file was automatically generated by SWIG (http://www.swig.org).
7 // Do not make changes to this file unless you know what you are doing--modify
8 // the SWIG interface file instead.
9 //------------------------------------------------------------------------------
15 using System.Runtime.InteropServices;
17 public class StyleManager : BaseHandle
19 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
21 internal StyleManager(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.StyleManager_SWIGUpcast(cPtr), cMemoryOwn)
23 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
26 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(StyleManager obj)
28 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
33 DisposeQueue.Instance.Add(this);
36 public override void Dispose()
38 if (!Stage.IsInstalled())
40 DisposeQueue.Instance.Add(this);
46 if (swigCPtr.Handle != global::System.IntPtr.Zero)
51 NDalicPINVOKE.delete_StyleManager(swigCPtr);
53 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
55 global::System.GC.SuppressFinalize(this);
64 * @brief Event arguments that passed via StyleChanged signal
67 public class StyleChangedEventArgs : EventArgs
69 private StyleManager _styleManager;
70 private StyleChangeType _styleChange;
73 * @brief StyleManager - is the StyleManager that informs applications of system theme change,
74 * and supports application theme change at runtime.
77 public StyleManager StyleManager
85 _styleManager = value;
90 * @brief StyleChange - contains Style change information (default font changed or
91 * default font size changed or theme has changed)
94 public StyleChangeType StyleChange
102 _styleChange = value;
108 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
109 private delegate void StyleChangedCallbackDelegate(IntPtr styleManager, Tizen.NUI.StyleChangeType styleChange);
110 private EventHandler<StyleChangedEventArgs> _styleManagerStyleChangedEventHandler;
111 private StyleChangedCallbackDelegate _styleManagerStyleChangedCallbackDelegate;
114 * @brief Event for StyleChanged signal which can be used to subscribe/unsubscribe the
115 * event handler (in the type of StyleChangedEventHandler-DaliEventHandler<object,StyleChangedEventArgs>)
116 * provided by the user. StyleChanged signal is is emitted after the style (e.g. theme/font change) has changed
117 * and the controls have been informed.
119 public event EventHandler<StyleChangedEventArgs> StyleChanged
123 if (_styleManagerStyleChangedEventHandler == null)
125 _styleManagerStyleChangedCallbackDelegate = (OnStyleChanged);
126 StyleChangedSignal().Connect(_styleManagerStyleChangedCallbackDelegate);
128 _styleManagerStyleChangedEventHandler += value;
132 _styleManagerStyleChangedEventHandler -= value;
133 if (_styleManagerStyleChangedEventHandler == null && _styleManagerStyleChangedCallbackDelegate != null)
135 StyleChangedSignal().Disconnect(_styleManagerStyleChangedCallbackDelegate);
140 // Callback for StyleManager StyleChangedsignal
141 private void OnStyleChanged(IntPtr styleManager, StyleChangeType styleChange)
143 StyleChangedEventArgs e = new StyleChangedEventArgs();
145 // Populate all members of "e" (StyleChangedEventArgs) with real data
146 e.StyleManager = StyleManager.GetStyleManagerFromPtr(styleManager);
147 e.StyleChange = styleChange;
149 if (_styleManagerStyleChangedEventHandler != null)
151 //here we send all data to user event handlers
152 _styleManagerStyleChangedEventHandler(this, e);
156 internal static StyleManager GetStyleManagerFromPtr(global::System.IntPtr cPtr)
158 StyleManager ret = new StyleManager(cPtr, false);
159 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
164 public StyleManager() : this(NDalicPINVOKE.new_StyleManager(), true)
166 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
169 public static StyleManager Get()
171 StyleManager ret = new StyleManager(NDalicPINVOKE.StyleManager_Get(), true);
172 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
176 public void ApplyTheme(string themeFile)
178 NDalicPINVOKE.StyleManager_ApplyTheme(swigCPtr, themeFile);
179 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
182 public void ApplyDefaultTheme()
184 NDalicPINVOKE.StyleManager_ApplyDefaultTheme(swigCPtr);
185 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
188 public void SetStyleConstant(string key, PropertyValue value)
190 NDalicPINVOKE.StyleManager_SetStyleConstant(swigCPtr, key, PropertyValue.getCPtr(value));
191 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
194 public bool GetStyleConstant(string key, PropertyValue valueOut)
196 bool ret = NDalicPINVOKE.StyleManager_GetStyleConstant(swigCPtr, key, PropertyValue.getCPtr(valueOut));
197 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
201 public void ApplyStyle(View control, string jsonFileName, string styleName)
203 NDalicPINVOKE.StyleManager_ApplyStyle(swigCPtr, View.getCPtr(control), jsonFileName, styleName);
204 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
207 internal StyleChangedSignal StyleChangedSignal()
209 StyleChangedSignal ret = new StyleChangedSignal(NDalicPINVOKE.StyleManager_StyleChangedSignal(swigCPtr), false);
210 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
216 public enum StyleChangeType
219 DefaultFontSizeChange,