+ SetValue(SynchronosLoadingProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Gets or sets whether to automatically correct the orientation of an image.<br />
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public bool OrientationCorrection
+ {
+ get
+ {
+ return (bool)GetValue(OrientationCorrectionProperty);
+ }
+ set
+ {
+ SetValue(OrientationCorrectionProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Gets the loading state of the visual resource.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public ImageView.LoadingStatusType LoadingStatus
+ {
+ get
+ {
+ return (ImageView.LoadingStatusType)NDalicManualPINVOKE.View_GetVisualResourceStatus(swigCPtr, (int)Property.IMAGE);
+ }
+ }
+
+ /// <summary>
+ /// Downcasts a handle to imageView handle.
+ /// </summary>
+ /// Please do not use! this will be deprecated!
+ /// Instead please use as keyword.
+ /// <since_tizen> 3 </since_tizen>
+ [Obsolete("Please do not use! This will be deprecated! Please use as keyword instead! " +
+ "Like: " +
+ "BaseHandle handle = new ImageView(imagePath); " +
+ "ImageView image = handle as ImageView")]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public static ImageView DownCast(BaseHandle handle)
+ {
+ ImageView ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as ImageView;
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return ret;
+ }
+
+ /// <summary>
+ /// Sets this ImageView from the given URL.<br />
+ /// If the URL is empty, ImageView will not display anything.<br />
+ /// </summary>
+ /// <param name="url">The URL to the image resource to display.</param>
+ /// <since_tizen> 3 </since_tizen>
+ public void SetImage(string url)
+ {
+ _url = url;
+ NDalicPINVOKE.ImageView_SetImage__SWIG_1(swigCPtr, url);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
+ /// Queries if all resources required by a control are loaded and ready.<br />
+ /// Most resources are only loaded when the control is placed on the stage.<br />
+ /// True if the resources are loaded and ready, false otherwise.<br />
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ public new bool IsResourceReady()
+ {
+ bool ret = NDalicPINVOKE.IsResourceReady(swigCPtr);
+ if (NDalicPINVOKE.SWIGPendingException.Pending)
+ throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return ret;
+ }
+
+ /// <summary>
+ /// Forcefully reloads the image. All the visuals using this image will reload to the latest image.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public void Reload()
+ {
+ this.DoAction(ImageView.Property.IMAGE, Property.ACTION_RELOAD, new PropertyValue(0));
+ }
+
+ /// <summary>
+ /// Plays the animated GIF. This is also the default playback mode.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public void Play()
+ {
+ this.DoAction(ImageView.Property.IMAGE, Property.ACTION_PLAY, new PropertyValue(0));
+ }
+
+ /// <summary>
+ /// Pauses the animated GIF.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public void Pause()
+ {
+ this.DoAction(ImageView.Property.IMAGE, Property.ACTION_PAUSE, new PropertyValue(0));
+ }
+
+ /// <summary>
+ /// Stops the animated GIF.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public void Stop()
+ {
+ this.DoAction(ImageView.Property.IMAGE, Property.ACTION_STOP, new PropertyValue(0));
+ }
+
+ internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ImageView obj)
+ {
+ return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
+ }
+
+ internal void SetImage(string url, Uint16Pair size)
+ {
+ _url = url;
+ NDalicPINVOKE.ImageView_SetImage__SWIG_2(swigCPtr, url, Uint16Pair.getCPtr(size));
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ internal ViewResourceReadySignal ResourceReadySignal(View view)
+ {
+ ViewResourceReadySignal ret = new ViewResourceReadySignal(NDalicPINVOKE.ResourceReadySignal(View.getCPtr(view)), false);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return ret;
+ }
+
+ internal ResourceLoadingStatusType GetResourceStatus()
+ {
+ return (ResourceLoadingStatusType)NDalicManualPINVOKE.View_GetVisualResourceStatus(this.swigCPtr, Property.IMAGE);
+ }
+
+ /// <summary>
+ /// you can override it to clean-up your own resources.
+ /// </summary>
+ /// <param name="type">DisposeTypes</param>
+ /// <since_tizen> 3 </since_tizen>
+ 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.
+ _border?.Dispose();
+ _border = null;
+ _nPatchMap?.Dispose();
+ _nPatchMap = null;
+ }
+
+ //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.
+
+ if (swigCPtr.Handle != global::System.IntPtr.Zero)
+ {
+ if (swigCMemOwn)
+ {
+ swigCMemOwn = false;
+ NDalicPINVOKE.delete_ImageView(swigCPtr);
+ }
+ swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
+ }
+
+ base.Dispose(type);
+ }
+
+ // Callback for View ResourceReady signal
+ private void OnResourceReady(IntPtr data)
+ {
+ ResourceReadyEventArgs e = new ResourceReadyEventArgs();
+ if (data != null)
+ {
+ e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
+ }
+
+ if (_resourceReadyEventHandler != null)
+ {
+ _resourceReadyEventHandler(this, e);