infobar errors
This commit is contained in:
@@ -117,6 +117,9 @@
|
|||||||
<resheader name="writer">
|
<resheader name="writer">
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
|
<data name="ErrorInfoBar.Title" xml:space="preserve">
|
||||||
|
<value>Error</value>
|
||||||
|
</data>
|
||||||
<data name="OptionBarDownloadAll.Label" xml:space="preserve">
|
<data name="OptionBarDownloadAll.Label" xml:space="preserve">
|
||||||
<value>Download all</value>
|
<value>Download all</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -23,13 +23,6 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
{
|
{
|
||||||
#region ENUMS
|
#region ENUMS
|
||||||
|
|
||||||
public enum OptionBarMessageIconType
|
|
||||||
{
|
|
||||||
None,
|
|
||||||
ProgressRing,
|
|
||||||
Error
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum OptionBarContentType
|
public enum OptionBarContentType
|
||||||
{
|
{
|
||||||
None,
|
None,
|
||||||
@@ -80,6 +73,11 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
[ObservableProperty]
|
[ObservableProperty]
|
||||||
private Type _mainContent;
|
private Type _mainContent;
|
||||||
|
|
||||||
|
[ObservableProperty]
|
||||||
|
private string _optionBarError;
|
||||||
|
|
||||||
|
[ObservableProperty]
|
||||||
|
private bool _optionBarIsErrorOpened;
|
||||||
|
|
||||||
[ObservableProperty]
|
[ObservableProperty]
|
||||||
private OptionBarContentType _optionBarContent;
|
private OptionBarContentType _optionBarContent;
|
||||||
@@ -88,7 +86,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
private string _optionBarMessage;
|
private string _optionBarMessage;
|
||||||
|
|
||||||
[ObservableProperty]
|
[ObservableProperty]
|
||||||
private OptionBarMessageIconType _optionBarMessageIcon;
|
private bool _optionBarLoading;
|
||||||
|
|
||||||
[ObservableProperty]
|
[ObservableProperty]
|
||||||
private bool _optionBarLoadSubscriptionButtonChecked;
|
private bool _optionBarLoadSubscriptionButtonChecked;
|
||||||
@@ -149,8 +147,10 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
MainContent = _downloadsView;
|
MainContent = _downloadsView;
|
||||||
|
|
||||||
OptionBarContent = OptionBarContentType.None;
|
OptionBarContent = OptionBarContentType.None;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
OptionBarMessage = null;
|
OptionBarMessage = null;
|
||||||
|
OptionBarError = null;
|
||||||
|
OptionBarIsErrorOpened = true;
|
||||||
OptionBarLoadSubscriptionButtonChecked = false;
|
OptionBarLoadSubscriptionButtonChecked = false;
|
||||||
OptionBarVideoSearchButtonChecked = false;
|
OptionBarVideoSearchButtonChecked = false;
|
||||||
OptionBarPlaylistSearchButtonChecked = false;
|
OptionBarPlaylistSearchButtonChecked = false;
|
||||||
@@ -164,7 +164,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
public async Task LoadFromSubscription()
|
public async Task LoadFromSubscription()
|
||||||
{
|
{
|
||||||
MainContent = _downloadsView;
|
MainContent = _downloadsView;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
OptionBarMessage = null;
|
OptionBarMessage = null;
|
||||||
|
|
||||||
if (OptionBarLoadSubscriptionButtonChecked)
|
if (OptionBarLoadSubscriptionButtonChecked)
|
||||||
@@ -174,7 +174,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
OptionBarPlaylistSearchButtonChecked = false;
|
OptionBarPlaylistSearchButtonChecked = false;
|
||||||
|
|
||||||
OptionBarSearchNotPending = false;
|
OptionBarSearchNotPending = false;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.ProgressRing;
|
OptionBarLoading = true;
|
||||||
OptionBarMessage = _stringResourcesService.HomeViewResources.Get("OptionBarMessageLoading");
|
OptionBarMessage = _stringResourcesService.HomeViewResources.Get("OptionBarMessageLoading");
|
||||||
|
|
||||||
SubscriptionsVideoList subList = new SubscriptionsVideoList { Name = _stringResourcesService.CommonResources.Get("SubscriptionVideoListName") };
|
SubscriptionsVideoList subList = new SubscriptionsVideoList { Name = _stringResourcesService.CommonResources.Get("SubscriptionVideoListName") };
|
||||||
@@ -217,7 +217,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
}
|
}
|
||||||
|
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -225,7 +225,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
public void VideoSearchShow()
|
public void VideoSearchShow()
|
||||||
{
|
{
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
OptionBarMessage = null;
|
OptionBarMessage = null;
|
||||||
MainContent = _downloadsView;
|
MainContent = _downloadsView;
|
||||||
|
|
||||||
@@ -245,7 +245,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
public void PlaylistSearchShow()
|
public void PlaylistSearchShow()
|
||||||
{
|
{
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
OptionBarMessage = null;
|
OptionBarMessage = null;
|
||||||
MainContent = _downloadsView;
|
MainContent = _downloadsView;
|
||||||
|
|
||||||
@@ -265,7 +265,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
public async Task VideoSearchStart()
|
public async Task VideoSearchStart()
|
||||||
{
|
{
|
||||||
OptionBarSearchNotPending = false;
|
OptionBarSearchNotPending = false;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.ProgressRing;
|
OptionBarLoading = true;
|
||||||
OptionBarMessage = _stringResourcesService.HomeViewResources.Get("OptionBarMessageLoading");
|
OptionBarMessage = _stringResourcesService.HomeViewResources.Get("OptionBarMessageLoading");
|
||||||
|
|
||||||
Video video;
|
Video video;
|
||||||
@@ -275,9 +275,10 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
}
|
}
|
||||||
catch (MediaSearchException ex)
|
catch (MediaSearchException ex)
|
||||||
{
|
{
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.Error;
|
OptionBarError = _stringResourcesService.SearchResources.Get(ex.StringCode);
|
||||||
OptionBarMessage = _stringResourcesService.SearchResources.Get(ex.StringCode);
|
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
|
OptionBarLoading = false;
|
||||||
|
OptionBarMessage = null;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -286,7 +287,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
MainContent = _videoView;
|
MainContent = _videoView;
|
||||||
|
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
OptionBarMessage = null;
|
OptionBarMessage = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -294,7 +295,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
public async Task PlaylistSearchStart()
|
public async Task PlaylistSearchStart()
|
||||||
{
|
{
|
||||||
OptionBarSearchNotPending = false;
|
OptionBarSearchNotPending = false;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.ProgressRing;
|
OptionBarLoading = true;
|
||||||
OptionBarMessage = _stringResourcesService.HomeViewResources.Get("OptionBarMessageLoading");
|
OptionBarMessage = _stringResourcesService.HomeViewResources.Get("OptionBarMessageLoading");
|
||||||
|
|
||||||
Playlist playlist;
|
Playlist playlist;
|
||||||
@@ -304,9 +305,10 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
}
|
}
|
||||||
catch (MediaSearchException ex)
|
catch (MediaSearchException ex)
|
||||||
{
|
{
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.Error;
|
OptionBarError = _stringResourcesService.SearchResources.Get(ex.StringCode);
|
||||||
OptionBarMessage = _stringResourcesService.SearchResources.Get(ex.StringCode);
|
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
|
OptionBarLoading = false;
|
||||||
|
OptionBarMessage = null;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -315,7 +317,7 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
MainContent = _videoCollectionView;
|
MainContent = _videoCollectionView;
|
||||||
|
|
||||||
OptionBarSearchNotPending = true;
|
OptionBarSearchNotPending = true;
|
||||||
OptionBarMessageIcon = OptionBarMessageIconType.None;
|
OptionBarLoading = false;
|
||||||
OptionBarMessage = null;
|
OptionBarMessage = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -339,6 +341,13 @@ namespace VDownload.Core.ViewModels.Home
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[RelayCommand]
|
||||||
|
public void CloseError()
|
||||||
|
{
|
||||||
|
OptionBarError = null;
|
||||||
|
OptionBarIsErrorOpened = true;
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -25,130 +25,128 @@
|
|||||||
<Frame Content="{Binding MainContent, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource ViewModelToViewConverter}}">
|
<Frame Content="{Binding MainContent, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource ViewModelToViewConverter}}">
|
||||||
|
|
||||||
</Frame>
|
</Frame>
|
||||||
<Grid Grid.Row="1"
|
<ctuc:SwitchPresenter Grid.Row="1"
|
||||||
Background="{ThemeResource OptionBarBackgroundColor}"
|
Value="{Binding OptionBarError, Converter={StaticResource IsNotNullConverter}}">
|
||||||
CornerRadius="10">
|
<ctuc:Case Value="False">
|
||||||
<Grid.ColumnDefinitions>
|
<Grid Background="{ThemeResource OptionBarBackgroundColor}"
|
||||||
<ColumnDefinition/>
|
CornerRadius="10">
|
||||||
<ColumnDefinition Width="50"/>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto"/>
|
<ColumnDefinition/>
|
||||||
</Grid.ColumnDefinitions>
|
<ColumnDefinition Width="50"/>
|
||||||
<ctuc:UniformGrid Grid.Column="0"
|
<ColumnDefinition Width="Auto"/>
|
||||||
Rows="1"
|
</Grid.ColumnDefinitions>
|
||||||
Margin="15,0,0,0">
|
<ctuc:UniformGrid Grid.Column="0"
|
||||||
<ctuc:UniformGrid.RowDefinitions>
|
Rows="1"
|
||||||
<RowDefinition/>
|
Margin="15,0,0,0">
|
||||||
</ctuc:UniformGrid.RowDefinitions>
|
<ctuc:UniformGrid.RowDefinitions>
|
||||||
<ctuc:UniformGrid.ColumnDefinitions>
|
<RowDefinition/>
|
||||||
<ColumnDefinition/>
|
</ctuc:UniformGrid.RowDefinitions>
|
||||||
<ColumnDefinition Width="Auto"/>
|
<ctuc:UniformGrid.ColumnDefinitions>
|
||||||
</ctuc:UniformGrid.ColumnDefinitions>
|
<ColumnDefinition/>
|
||||||
<ctuc:SwitchPresenter Grid.Row="0"
|
<ColumnDefinition Width="Auto"/>
|
||||||
VerticalAlignment="Stretch"
|
</ctuc:UniformGrid.ColumnDefinitions>
|
||||||
Margin="0,0,15,0"
|
<ctuc:SwitchPresenter Grid.Row="0"
|
||||||
Value="{Binding OptionBarContent, Converter={StaticResource ObjectToStringConverter}}">
|
VerticalAlignment="Stretch"
|
||||||
<i:Interaction.Behaviors>
|
Margin="0,0,15,0"
|
||||||
<ic:DataTriggerBehavior Binding="{Binding OptionBarContent, Converter={StaticResource ObjectToStringConverter}}"
|
Value="{Binding OptionBarContent, Converter={StaticResource ObjectToStringConverter}}">
|
||||||
ComparisonCondition="Equal"
|
<i:Interaction.Behaviors>
|
||||||
Value="None">
|
<ic:DataTriggerBehavior Binding="{Binding OptionBarContent, Converter={StaticResource ObjectToStringConverter}}"
|
||||||
<ic:ChangePropertyAction PropertyName="Visibility"
|
ComparisonCondition="Equal"
|
||||||
Value="Collapsed"/>
|
Value="None">
|
||||||
</ic:DataTriggerBehavior>
|
<ic:ChangePropertyAction PropertyName="Visibility"
|
||||||
<ic:DataTriggerBehavior Binding="{Binding OptionBarContent, Converter={StaticResource ObjectToStringConverter}}"
|
Value="Collapsed"/>
|
||||||
ComparisonCondition="NotEqual"
|
</ic:DataTriggerBehavior>
|
||||||
Value="None">
|
<ic:DataTriggerBehavior Binding="{Binding OptionBarContent, Converter={StaticResource ObjectToStringConverter}}"
|
||||||
<ic:ChangePropertyAction PropertyName="Visibility"
|
ComparisonCondition="NotEqual"
|
||||||
Value="Visible"/>
|
Value="None">
|
||||||
</ic:DataTriggerBehavior>
|
<ic:ChangePropertyAction PropertyName="Visibility"
|
||||||
</i:Interaction.Behaviors>
|
Value="Visible"/>
|
||||||
<ctuc:Case Value="VideoSearch">
|
</ic:DataTriggerBehavior>
|
||||||
<Grid ColumnSpacing="10"
|
</i:Interaction.Behaviors>
|
||||||
VerticalAlignment="Stretch">
|
<ctuc:Case Value="VideoSearch">
|
||||||
<Grid.ColumnDefinitions>
|
<Grid ColumnSpacing="10"
|
||||||
<ColumnDefinition/>
|
VerticalAlignment="Stretch">
|
||||||
<ColumnDefinition Width="Auto"/>
|
<Grid.ColumnDefinitions>
|
||||||
</Grid.ColumnDefinitions>
|
<ColumnDefinition/>
|
||||||
<TextBox x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarVideoSearchContentTextBox"
|
<ColumnDefinition Width="Auto"/>
|
||||||
Grid.Column="0"
|
</Grid.ColumnDefinitions>
|
||||||
VerticalAlignment="Center"
|
<TextBox x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarVideoSearchContentTextBox"
|
||||||
Text="{Binding OptionBarVideoSearchTBValue, Mode=TwoWay}"/>
|
Grid.Column="0"
|
||||||
<Button x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarSearchButton"
|
VerticalAlignment="Center"
|
||||||
Grid.Column="1"
|
Text="{Binding OptionBarVideoSearchTBValue, Mode=TwoWay}"/>
|
||||||
IsEnabled="{Binding OptionBarSearchNotPending}"
|
<Button x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarSearchButton"
|
||||||
Command="{Binding VideoSearchStartCommand}"/>
|
Grid.Column="1"
|
||||||
</Grid>
|
IsEnabled="{Binding OptionBarSearchNotPending}"
|
||||||
</ctuc:Case>
|
Command="{Binding VideoSearchStartCommand}"/>
|
||||||
<ctuc:Case Value="PlaylistSearch">
|
</Grid>
|
||||||
<Grid ColumnSpacing="10">
|
</ctuc:Case>
|
||||||
<Grid.ColumnDefinitions>
|
<ctuc:Case Value="PlaylistSearch">
|
||||||
<ColumnDefinition/>
|
<Grid ColumnSpacing="10">
|
||||||
<ColumnDefinition Width="Auto"/>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto"/>
|
<ColumnDefinition/>
|
||||||
</Grid.ColumnDefinitions>
|
<ColumnDefinition Width="Auto"/>
|
||||||
<TextBox x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarPlaylistSearchContentTextBox"
|
<ColumnDefinition Width="Auto"/>
|
||||||
Grid.Column="0"
|
</Grid.ColumnDefinitions>
|
||||||
VerticalAlignment="Center"
|
<TextBox x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarPlaylistSearchContentTextBox"
|
||||||
Text="{Binding OptionBarPlaylistSearchTBValue, Mode=TwoWay}"/>
|
Grid.Column="0"
|
||||||
<NumberBox x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarPlaylistSearchContentNumberBox"
|
VerticalAlignment="Center"
|
||||||
Grid.Column="1"
|
Text="{Binding OptionBarPlaylistSearchTBValue, Mode=TwoWay}"/>
|
||||||
VerticalAlignment="Center"
|
<NumberBox x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarPlaylistSearchContentNumberBox"
|
||||||
SpinButtonPlacementMode="Compact"
|
Grid.Column="1"
|
||||||
SmallChange="1"
|
VerticalAlignment="Center"
|
||||||
LargeChange="10"
|
SpinButtonPlacementMode="Compact"
|
||||||
Value="{Binding OptionBarPlaylistSearchNBValue, Mode=TwoWay}"
|
SmallChange="1"
|
||||||
Minimum="0"/>
|
LargeChange="10"
|
||||||
<Button x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarSearchButton"
|
Value="{Binding OptionBarPlaylistSearchNBValue, Mode=TwoWay}"
|
||||||
Grid.Column="2"
|
Minimum="0"/>
|
||||||
IsEnabled="{Binding OptionBarSearchNotPending}"
|
<Button x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarSearchButton"
|
||||||
Command="{Binding PlaylistSearchStartCommand}"/>
|
Grid.Column="2"
|
||||||
</Grid>
|
IsEnabled="{Binding OptionBarSearchNotPending}"
|
||||||
</ctuc:Case>
|
Command="{Binding PlaylistSearchStartCommand}"/>
|
||||||
</ctuc:SwitchPresenter>
|
</Grid>
|
||||||
<StackPanel VerticalAlignment="Center"
|
</ctuc:Case>
|
||||||
Orientation="Horizontal">
|
</ctuc:SwitchPresenter>
|
||||||
<StackPanel.Resources>
|
<StackPanel VerticalAlignment="Center"
|
||||||
<x:Double x:Key="IconSize">20</x:Double>
|
Orientation="Horizontal">
|
||||||
<Thickness x:Key="IconMargin">0,0,10,0</Thickness>
|
<ProgressRing Width="20"
|
||||||
</StackPanel.Resources>
|
Height="20"
|
||||||
<ctuc:SwitchPresenter Value="{Binding OptionBarMessageIcon, Converter={StaticResource ObjectToStringConverter}}">
|
Margin="0,0,10,0"
|
||||||
<ctuc:Case Value="None"/>
|
Visibility="{Binding OptionBarLoading, Converter={StaticResource BoolToVisibilityConverter}}"/>
|
||||||
<ctuc:Case Value="ProgressRing">
|
<TextBlock Text="{Binding OptionBarMessage}"/>
|
||||||
<ProgressRing Width="{StaticResource IconSize}"
|
</StackPanel>
|
||||||
Height="{StaticResource IconSize}"
|
</ctuc:UniformGrid>
|
||||||
Margin="{StaticResource IconMargin}"/>
|
<StackPanel Grid.Column="2"
|
||||||
</ctuc:Case>
|
Orientation="Horizontal">
|
||||||
<ctuc:Case Value="Error">
|
<AppBarToggleButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarLoadSubscription"
|
||||||
<Image Width="{StaticResource IconSize}"
|
Icon="Favorite"
|
||||||
Height="{StaticResource IconSize}"
|
IsEnabled="{Binding OptionBarSearchNotPending}"
|
||||||
Margin="{StaticResource IconMargin}"
|
IsChecked="{Binding OptionBarLoadSubscriptionButtonChecked, Mode=TwoWay}"
|
||||||
Source="{StaticResource ImageHomeViewError}"/>
|
Command="{Binding LoadFromSubscriptionCommand}"/>
|
||||||
</ctuc:Case>
|
<AppBarToggleButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarVideoSearch"
|
||||||
</ctuc:SwitchPresenter>
|
Icon="Video"
|
||||||
<TextBlock Text="{Binding OptionBarMessage}"/>
|
IsEnabled="{Binding OptionBarSearchNotPending}"
|
||||||
</StackPanel>
|
IsChecked="{Binding OptionBarVideoSearchButtonChecked, Mode=TwoWay}"
|
||||||
</ctuc:UniformGrid>
|
Command="{Binding VideoSearchShowCommand}"/>
|
||||||
<StackPanel Grid.Column="2"
|
<AppBarToggleButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarPlaylistSearch"
|
||||||
Orientation="Horizontal">
|
Icon="List"
|
||||||
<AppBarToggleButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarLoadSubscription"
|
IsEnabled="{Binding OptionBarSearchNotPending}"
|
||||||
Icon="Favorite"
|
IsChecked="{Binding OptionBarPlaylistSearchButtonChecked, Mode=TwoWay}"
|
||||||
IsEnabled="{Binding OptionBarSearchNotPending}"
|
Command="{Binding PlaylistSearchShowCommand}"/>
|
||||||
IsChecked="{Binding OptionBarLoadSubscriptionButtonChecked, Mode=TwoWay}"
|
<AppBarSeparator/>
|
||||||
Command="{Binding LoadFromSubscriptionCommand}"/>
|
<AppBarButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarDownloadAll"
|
||||||
<AppBarToggleButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarVideoSearch"
|
Icon="Download"
|
||||||
Icon="Video"
|
Command="{Binding DownloadCommand}"/>
|
||||||
IsEnabled="{Binding OptionBarSearchNotPending}"
|
</StackPanel>
|
||||||
IsChecked="{Binding OptionBarVideoSearchButtonChecked, Mode=TwoWay}"
|
</Grid>
|
||||||
Command="{Binding VideoSearchShowCommand}"/>
|
</ctuc:Case>
|
||||||
<AppBarToggleButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarPlaylistSearch"
|
<ctuc:Case Value="True">
|
||||||
Icon="List"
|
<InfoBar x:Uid="/VDownload.Core.Strings/HomeViewResources/ErrorInfoBar"
|
||||||
IsEnabled="{Binding OptionBarSearchNotPending}"
|
Severity="Error"
|
||||||
IsChecked="{Binding OptionBarPlaylistSearchButtonChecked, Mode=TwoWay}"
|
IsOpen="{Binding OptionBarIsErrorOpened, Mode=TwoWay}"
|
||||||
Command="{Binding PlaylistSearchShowCommand}"/>
|
Message="{Binding OptionBarError}"
|
||||||
<AppBarSeparator/>
|
CloseButtonCommand="{Binding CloseErrorCommand}"/>
|
||||||
<AppBarButton x:Uid="/VDownload.Core.Strings/HomeViewResources/OptionBarDownloadAll"
|
</ctuc:Case>
|
||||||
Icon="Download"
|
</ctuc:SwitchPresenter>
|
||||||
Command="{Binding DownloadCommand}"/>
|
|
||||||
</StackPanel>
|
|
||||||
</Grid>
|
|
||||||
</Grid>
|
</Grid>
|
||||||
</Page>
|
</Page>
|
||||||
|
|||||||
@@ -107,7 +107,7 @@
|
|||||||
<ctuc:Case Value="True">
|
<ctuc:Case Value="True">
|
||||||
<InfoBar x:Uid="/VDownload.Core.Strings/SubscriptionsViewResources/ErrorInfoBar"
|
<InfoBar x:Uid="/VDownload.Core.Strings/SubscriptionsViewResources/ErrorInfoBar"
|
||||||
Severity="Error"
|
Severity="Error"
|
||||||
IsOpen="{Binding IsErrorOpened, Mode=TwoWay}"
|
IsOpen="{Binding OptionBarIsErrorOpened, Mode=TwoWay}"
|
||||||
Message="{Binding Error}"
|
Message="{Binding Error}"
|
||||||
CloseButtonCommand="{Binding CloseErrorCommand}"/>
|
CloseButtonCommand="{Binding CloseErrorCommand}"/>
|
||||||
</ctuc:Case>
|
</ctuc:Case>
|
||||||
|
|||||||
Reference in New Issue
Block a user