diff options
author | Kangho Hur <kangho.hur@samsung.com> | 2016-12-16 11:00:07 +0900 |
---|---|---|
committer | Kangho Hur <kangho.hur@samsung.com> | 2017-07-10 11:11:14 +0900 |
commit | 79bf87f2bc00d823cf8b25ed7d0d3650cf819b4c (patch) | |
tree | 99d3412413a92c057cb8ad8429ddb0c7d4cb8c14 /Xamarin.Forms.Platform.Tizen/Renderers/ProgressBarRenderer.cs | |
parent | b7297c8ac01d6ce2d5f038d3df8f4bc9e74a8162 (diff) | |
download | xamarin-forms-79bf87f2bc00d823cf8b25ed7d0d3650cf819b4c.tar.gz xamarin-forms-79bf87f2bc00d823cf8b25ed7d0d3650cf819b4c.tar.bz2 xamarin-forms-79bf87f2bc00d823cf8b25ed7d0d3650cf819b4c.zip |
Add Tizen backend renderer
- Xamarin.Forms.Platform.Tizen has been added
- Xamarin.Forms.Maps.Tizen has been added
- RPM build spec has been added
Change-Id: I0021e0f040d97345affc87512ee0f6ce437f4e6d
Diffstat (limited to 'Xamarin.Forms.Platform.Tizen/Renderers/ProgressBarRenderer.cs')
-rw-r--r-- | Xamarin.Forms.Platform.Tizen/Renderers/ProgressBarRenderer.cs | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/Xamarin.Forms.Platform.Tizen/Renderers/ProgressBarRenderer.cs b/Xamarin.Forms.Platform.Tizen/Renderers/ProgressBarRenderer.cs new file mode 100644 index 00000000..3aacd3f4 --- /dev/null +++ b/Xamarin.Forms.Platform.Tizen/Renderers/ProgressBarRenderer.cs @@ -0,0 +1,60 @@ +using System.ComponentModel; +using EProgressBar = ElmSharp.ProgressBar; + +namespace Xamarin.Forms.Platform.Tizen +{ + public class ProgressBarRenderer : ViewRenderer<ProgressBar, EProgressBar> + { + public ProgressBarRenderer() + { + } + + protected override void OnElementChanged(ElementChangedEventArgs<ProgressBar> e) + { + if (base.Control == null) + { + var progressBar = new EProgressBar(Forms.Context.MainWindow); + SetNativeControl(progressBar); + } + + if (e.OldElement != null) + { + } + + if (e.NewElement != null) + { + if (e.NewElement.MinimumWidthRequest == -1 && + e.NewElement.MinimumHeightRequest == -1 && + e.NewElement.WidthRequest == -1 && + e.NewElement.HeightRequest == -1) + { + Log.Warn("Need to size request"); + } + + UpdateAll(); + } + + base.OnElementChanged(e); + } + + void UpdateAll() + { + UpdateProgress(); + } + + void UpdateProgress() + { + Control.Value = Element.Progress; + } + + protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) + { + base.OnElementPropertyChanged(sender, e); + if (e.PropertyName == ProgressBar.ProgressProperty.PropertyName) + { + UpdateProgress(); + } + } + } +} + |