Add "Exit" button on main view
authorLukasz Stanislawski <l.stanislaws@samsung.com>
Thu, 21 Jan 2021 17:42:01 +0000 (18:42 +0100)
committerPiotr Czaja <p.czaja@samsung.com>
Tue, 14 Sep 2021 11:01:34 +0000 (13:01 +0200)
Fitness/ViewModels/MainViewModel.cs
Fitness/Views/MainView.xaml.cs
Fitness/Views/Styles/Buttons.cs
Fitness/res/layout/MainView.xaml
Fitness/res/styles/button/icon_exit.png [new file with mode: 0644]

index b2e33f8611c09b0b201223c2fb4342a1eae4eb5f..265c28e3d662ca5749ca74004d8836a13b5ba3b8 100644 (file)
@@ -155,6 +155,7 @@ namespace Fitness.ViewModels
 
             WatchPreview = new Command(() => { NavigationService.Instance.NavigateToExercisePreviewView(SelectedWorkout.Id); });
             StartWorkout = new Command(() => { NavigationService.Instance.NavigateToScanningView(); });
+            Exit = new Command(() => { Tizen.NUI.NUIApplication.Current.Exit(); });
         }
 
         /// <summary>
@@ -187,5 +188,10 @@ namespace Fitness.ViewModels
         /// Start selected workout.
         /// </summary>
         public ICommand StartWorkout { get; private set; }
+
+        /// <summary>
+        /// Exit
+        /// </summary>
+        public ICommand Exit { get; private set; }
     }
 }
index 0d8005c7abb7bbe5bc65df16e4dab9e1ef5055ef..897419eff98efe2d2fc625fe4d34573283436d60 100644 (file)
@@ -16,8 +16,6 @@ namespace Fitness.Views
 
             InitializeComponent();
 
-            this.button1.ApplyStyle(Styles.Buttons.Inverse);
-            this.button2.ApplyStyle(Styles.Buttons.Regular);
             this.scroller.SelectionMode = BindableRecyclerView.RecyclerViewSelectionMode.Single;
 
             this.scroller.LayoutManager = new LinearRecycleLayoutManager()
index 23274bfb67afc1ae7b27484685402007ab6d3f02..399ac65a19be86118f7d4a71deadb197f3e0e801 100644 (file)
@@ -194,6 +194,15 @@ namespace Fitness.Views.Styles
             }
         }
 
+        public static ButtonStyle Back => new ButtonStyle
+        {
+            BackgroundColor = Color.Transparent,
+            Overlay = new ImageViewStyle
+            {
+                ResourceUrl = NUIApplication.Current.DirectoryInfo.Resource + "/styles/button/icon_exit.png",
+            },
+        };
+
         private static Selector<string> GetNavigationFont()
         {
             return new Selector<string>
index 59d5dd15d8057113c537d3c749a36fef724ed103..35cb6490541ab113f8aa6d618521dbfe3691d1d1 100644 (file)
@@ -7,13 +7,16 @@
   xmlns:ctrl="clr-namespace:Fitness.Controls"
   xmlns:nui="clr-namespace:Tizen.NUI.Components;assembly=Tizen.NUI.Components"
   xmlns:converters="clr-namespace:Fitness.Views.Converters"
-  HeightResizePolicy="FillToParent" WidthResizePolicy="FillToParent" BackgroundColor="#EEEFF1" ParentOrigin="Center" PivotPoint="Center" PositionUsesPivotPoint="true" Padding="{views:ExtentsInUnits Top=26}" >
+  xmlns:styles="clr-namespace:Fitness.Views.Styles"
+  xmlns:behaviors="clr-namespace:Fitness.Views.Behaviors"
+    HeightResizePolicy="FillToParent" WidthResizePolicy="FillToParent" BackgroundColor="#EEEFF1" ParentOrigin="Center" PivotPoint="Center" PositionUsesPivotPoint="true" >
   <View.BindingContext>
       <vm:MainViewModel x:Name="context"/>
   </View.BindingContext>
   <View.Layout>
       <LinearLayout LinearOrientation="Vertical" LinearAlignment="Top"/>
   </View.Layout>
+  <nui:Button BindingContext="{Binding Source={x:Reference context}}" Size="{views:SizeInUnits Width=12, Height=12}" Margin="{views:ExtentsInUnits Start=12, Top=12, Bottom=8}" behaviors:StyleSetter.Style="{x:Static styles:Buttons.Back}" Command="{Binding Exit}" />
   <View Margin="{views:ExtentsInUnits Start=16,End=16}" Weight="1.0" WidthResizePolicy="FillToParent" >
       <View.Layout>
           <LinearLayout LinearOrientation="Horizontal" LinearAlignment="End"/>
@@ -22,8 +25,8 @@
           <ImageView.Layout>
               <LinearLayout LinearOrientation="Vertical" LinearAlignment="Center" CellPadding="0,40"/>
           </ImageView.Layout>
-          <ctrl:NinePatchButton BindingContext="{Binding Source={x:Reference context}}" PositionUsesPivotPoint="true" ParentOrigin="0.5,0.5" PivotPoint="0.5,0.5" Text="Let's try!" Command="{Binding StartWorkout}" x:Name="button1" Size="{views:SizeInUnits Width=112,Height=24}"/>
-          <ctrl:NinePatchButton BindingContext="{Binding Source={x:Reference context}}" PositionUsesPivotPoint="true" ParentOrigin="0.5,0.5" PivotPoint="0.5,0.5" Text="Watch preview" Command="{Binding WatchPreview}" x:Name="button2" Size="{views:SizeInUnits Width=112,Height=24}"/>
+          <ctrl:NinePatchButton BindingContext="{Binding Source={x:Reference context}}" PositionUsesPivotPoint="true" ParentOrigin="0.5,0.5" PivotPoint="0.5,0.5" Text="Let's try!" Command="{Binding StartWorkout}" Size="{views:SizeInUnits Width=112,Height=24}" behaviors:StyleSetter.Style="{x:Static styles:Buttons.Inverse}"/>
+          <ctrl:NinePatchButton BindingContext="{Binding Source={x:Reference context}}" PositionUsesPivotPoint="true" ParentOrigin="0.5,0.5" PivotPoint="0.5,0.5" Text="Watch preview" Command="{Binding WatchPreview}" Size="{views:SizeInUnits Width=112,Height=24}" behaviors:StyleSetter.Style="{x:Static styles:Buttons.Regular}"/>
       </ImageView>
       <View Size="{views:SizeInUnits Width=107}" Margin="{views:ExtentsInUnits Start=8}" HeightResizePolicy="FillToParent">
           <View HeightResizePolicy="FillToParent" WidthResizePolicy="FillToParent">
diff --git a/Fitness/res/styles/button/icon_exit.png b/Fitness/res/styles/button/icon_exit.png
new file mode 100644 (file)
index 0000000..b28f122
Binary files /dev/null and b/Fitness/res/styles/button/icon_exit.png differ