* limitations under the License.
*
*/
-
-using System;
-using System.ComponentModel;
using Tizen.Applications;
using Tizen.Applications.CoreBackend;
-using Tizen.NUI;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System;
namespace Tizen.NUI
{
-
/// <summary>
/// Represents an application that have UI screen. The NUIWidgetApplication class has a default stage.
/// </summary>
/// <since_tizen> 4 </since_tizen>
- [Obsolete("Please do not use! This will be deprecated!")]
- [EditorBrowsable(EditorBrowsableState.Never)]
public class NUIWidgetApplication : CoreApplication
{
-
/// <summary>
/// The default constructor.
/// </summary>
- /// <since_tizen> 4 </since_tizen>
- public NUIWidgetApplication() : base(new NUIWidgetCoreBackend())
+ /// <remarks>Widget ID will be replaced as the application ID.</remarks>
+ /// <param name="widgetType">Derived widget class type.</param>
+ public NUIWidgetApplication( System.Type widgetType ) : base(new NUIWidgetCoreBackend())
+ {
+ NUIWidgetCoreBackend core = Backend as NUIWidgetCoreBackend;
+ core?.RegisterWidgetInfo(new Dictionary<System.Type, string> { { widgetType, ApplicationInfo.ApplicationId } });
+ }
+
+ /// <summary>
+ /// The constructor for multi widget class and instance.
+ /// </summary>
+ /// <param name="widgetTypes">List of derived widget class type.</param>
+ public NUIWidgetApplication(Dictionary<System.Type, string> widgetTypes) : base(new NUIWidgetCoreBackend())
{
- Tizen.Log.Fatal("NUI", "### NUIWidgetApplication called");
+ if( widgetTypes == null )
+ {
+ throw new InvalidOperationException("Dictionary is null");
+ }
+ else
+ {
+ NUIWidgetCoreBackend core = Backend as NUIWidgetCoreBackend;
+ core?.RegisterWidgetInfo(widgetTypes);
+ }
}
/// <summary>
- /// The constructor with stylesheet.
+ /// The default constructor with stylesheet.
/// </summary>
+ /// <remarks>Widget ID will be replaced as the application ID.</remarks>
+ /// <param name="widgetType">Derived widget class type.</param>
/// <param name="styleSheet">The styleSheet url.</param>
/// <since_tizen> 4 </since_tizen>
- public NUIWidgetApplication(string styleSheet) : base(new NUIWidgetCoreBackend(styleSheet))
+ public NUIWidgetApplication(System.Type widgetType, string styleSheet) : base(new NUIWidgetCoreBackend(styleSheet))
+ {
+ NUIWidgetCoreBackend core = Backend as NUIWidgetCoreBackend;
+ core?.RegisterWidgetInfo(new Dictionary<System.Type, string> { { widgetType, ApplicationInfo.ApplicationId } });
+ }
+
+ /// <summary>
+ /// Add WidgetInfo in runtime
+ /// </summary>
+ /// <param name="widgetType">Derived widget class type.</param>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void AddWidgetType( System.Type widgetType )
{
- Tizen.Log.Fatal("NUI", "### NUIWidgetApplication(string) called");
+ NUIWidgetCoreBackend core = Backend as NUIWidgetCoreBackend;
+ core?.AddWidgetInfo(new Dictionary<System.Type, string> { { widgetType, ApplicationInfo.ApplicationId } });
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Add WidgetInfo in runtime
+ /// </summary>
+ /// <param name="widgetTypes">Derived widget class type.</param>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void AddWidgetType( Dictionary<System.Type, string> widgetTypes )
+ {
+ NUIWidgetCoreBackend core = Backend as NUIWidgetCoreBackend;
+ core?.AddWidgetInfo(widgetTypes);
+ }
+
+ internal WidgetApplication ApplicationHandle
+ {
+ get
+ {
+ return ((NUIWidgetCoreBackend)this.Backend).WidgetApplicationHandle;
+ }
+ }
+
+ /// <summary>
+ /// Run NUIWidgetApplication.
+ /// </summary>
+ /// <param name="args">Arguments from commandline.</param>
+ /// <since_tizen> 4 </since_tizen>
+ public override void Run(string[] args)
+ {
+ Backend.AddEventHandler(EventType.PreCreated, OnPreCreate);
+ base.Run(args);
+ }
+
+ /// <summary>
+ /// Exit NUIWidgetApplication.
+ /// </summary>
+ /// <since_tizen> 4 </since_tizen>
+ public override void Exit()
+ {
+ Tizen.Log.Fatal("NUI", "### NUIWidgetApplication Exit called");
+ base.Exit();
+ }
+
+ /// <summary>
+ /// Overrides this method if want to handle OnLocaleChanged behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected override void OnLocaleChanged(LocaleChangedEventArgs e)
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Overrides this method if want to handle OnLowBattery behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected override void OnLowBattery(LowBatteryEventArgs e)
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Overrides this method if want to handle OnLowMemory behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected override void OnLowMemory(LowMemoryEventArgs e)
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Overrides this method if want to handle OnRegionFormatChanged behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e)
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Overrides this method if want to handle OnTerminate behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected override void OnTerminate()
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Overrides this method if want to handle OnPreCreate behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected virtual void OnPreCreate()
}
/// <summary>
- /// Overrides this method if want to handle behavior.
+ /// Overrides this method if want to handle OnCreate behavior.
/// </summary>
/// <since_tizen> 4 </since_tizen>
protected override void OnCreate()
Log.Fatal("NUI","OnCreate() is called!");
base.OnCreate();
}
-
- /// <summary>
- /// Run NUIWidgetApplication.
- /// </summary>
- /// <param name="args">Arguments from commandline.</param>
- /// <since_tizen> 4 </since_tizen>
- public override void Run(string[] args)
- {
- Backend.AddEventHandler(EventType.PreCreated, OnPreCreate);
- base.Run(args);
- }
-
- /// <summary>
- /// Exit NUIWidgetApplication.
- /// </summary>
- /// <since_tizen> 4 </since_tizen>
- public override void Exit()
- {
- Tizen.Log.Fatal("NUI", "### NUIWidgetApplication Exit called");
- base.Exit();
- }
-
- internal WidgetApplication ApplicationHandle
- {
- get
- {
- return ((NUIWidgetCoreBackend)this.Backend).WidgetApplicationHandle;
- }
- }
}
}
\ No newline at end of file