Improved multi-edit interface

This commit is contained in:
2015-12-07 10:43:55 +01:00
parent f4ff363cb9
commit 907e4a2a36
4 changed files with 59 additions and 9 deletions
+38 -6
View File
@@ -61,14 +61,46 @@
<Page.BottomAppBar> <Page.BottomAppBar>
<CommandBar> <CommandBar>
<AppBarButton Icon="Edit" Label="Change values" Name="ValuesButton" Click="ValuesButton_Click" Visibility="Collapsed"/> <!-- Update values -->
<AppBarButton Icon="LikeDislike" Label="On/Off" Name="OnOffButton" Click="OnOffButton_Click" Visibility="Collapsed"/> <AppBarButton Label="Change values" Name="ValuesButton" Click="ValuesButton_Click" Visibility="Collapsed">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe MDL2 Assets" Glyph="&#xE70F;"/>
</AppBarButton.Icon>
</AppBarButton>
<!-- Update on/off -->
<AppBarButton Label="On" Name="OnOffButton" Click="OnOffButton_Click" Visibility="Collapsed">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe MDL2 Assets" Glyph="&#xE8B1;"/>
</AppBarButton.Icon>
</AppBarButton>
<!-- Group -->
<AppBarToggleButton Label="Group" Name="GroupButton" Click="GroupButton_Click">
<AppBarToggleButton.Icon>
<FontIcon FontFamily="Segoe MDL2 Assets" Glyph="&#xE73A;"/>
</AppBarToggleButton.Icon>
</AppBarToggleButton>
<AppBarToggleButton Icon="SelectAll" Label="Group" Name="GroupButton" Click="GroupButton_Click"/>
<AppBarSeparator Name="Seperator" /> <AppBarSeparator Name="Seperator" />
<AppBarToggleButton Icon="Audio" Label="Disco" Name="DiscoButton" Click="DiscoButton_Click"/>
<AppBarButton Icon="Setting" Label="Settings" Name="SettingsButton" Click="SettingsButton_Click"/> <!-- Disco -->
<AppBarButton Icon="Refresh" Label="Refresh" Name="RefreshButton" Click="RefreshButton_Click"/> <AppBarToggleButton Label="Disco" Name="DiscoButton" Click="DiscoButton_Click">
<AppBarToggleButton.Icon>
<FontIcon FontFamily="Segoe MDL2 Assets" Glyph="&#xE8D6;"/>
</AppBarToggleButton.Icon>
</AppBarToggleButton>
<!-- Settings -->
<AppBarButton Label="Settings" Name="SettingsButton" Click="SettingsButton_Click">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe MDL2 Assets" Glyph="&#xE713;"/>
</AppBarButton.Icon>
</AppBarButton>
<!-- Refresh -->
<AppBarButton Label="Refresh" Name="RefreshButton" Click="RefreshButton_Click">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe MDL2 Assets" Glyph="&#xE72C;"/>
</AppBarButton.Icon>
</AppBarButton>
<CommandBar.SecondaryCommands> <CommandBar.SecondaryCommands>
+14 -1
View File
@@ -161,11 +161,24 @@ namespace HueUWP
private void OnOffButton_Click(object sender, RoutedEventArgs e) private void OnOffButton_Click(object sender, RoutedEventArgs e)
{ {
bool first = false;
if(OnOffButton.Label == "Off")
{
first = false;
OnOffButton.Label = "On";
}
else
{
first = true;
OnOffButton.Label = "Off";
}
if ((bool)GroupButton.IsChecked) if ((bool)GroupButton.IsChecked)
{ {
foreach(var v in myListView.SelectedItems) foreach(var v in myListView.SelectedItems)
{ {
((Light)v).UpdateState(!((Light)v).IsOn); ((Light)v).UpdateState(first);
} }
} }
} }
+1 -1
View File
@@ -34,7 +34,7 @@
</RelativePanel> </RelativePanel>
<StackPanel Grid.Row="3"> <StackPanel Grid.Row="3">
<ToggleSwitch Margin="20,10,0,10" Toggled="ToggleSwitch_Toggled" IsOn="False"> <ToggleSwitch Margin="20,10,0,10" Name="OnOffButton" Toggled="ToggleSwitch_Toggled" IsOn="False">
<ToggleSwitch.OffContent>Off</ToggleSwitch.OffContent> <ToggleSwitch.OffContent>Off</ToggleSwitch.OffContent>
<ToggleSwitch.OnContent>On</ToggleSwitch.OnContent> <ToggleSwitch.OnContent>On</ToggleSwitch.OnContent>
</ToggleSwitch> </ToggleSwitch>
+6 -1
View File
@@ -36,7 +36,12 @@ namespace HueUWP
{ {
main = e.Parameter as MainPage; main = e.Parameter as MainPage;
foreach(var v in main.GetListView().SelectedItems) HueSlider.Value = ((Light) main.GetListView().SelectedItems[0]).Hue;
SaturationSlider.Value = ((Light)main.GetListView().SelectedItems[0]).Saturation;
BrightnessSlider.Value = ((Light)main.GetListView().SelectedItems[0]).Brightness;
OnOffButton.IsOn = ((Light)main.GetListView().SelectedItems[0]).IsOn;
foreach (var v in main.GetListView().SelectedItems)
{ {
Light l = (Light)v; Light l = (Light)v;
lights.Add(l); lights.Add(l);