146 lines
9.2 KiB
XML
146 lines
9.2 KiB
XML
<UserControl x:Class="ClassicAssist.Browser.MacroBrowserControl"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:resources="clr-namespace:ClassicAssist.Shared.Resources;assembly=ClassicAssist.Shared"
|
|
xmlns:avalonedit="http://icsharpcode.net/sharpdevelop/avalonedit"
|
|
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
|
|
xmlns:misc="clr-namespace:ClassicAssist.UI.Misc"
|
|
xmlns:controls="clr-namespace:ClassicAssist.Browser.Controls"
|
|
xmlns:data="clr-namespace:ClassicAssist.Browser.Data"
|
|
xmlns:browser="clr-namespace:ClassicAssist.Browser"
|
|
xmlns:controls1="clr-namespace:ClassicAssist.UI.Controls"
|
|
mc:Ignorable="d"
|
|
d:DesignHeight="550" d:DesignWidth="900">
|
|
<UserControl.DataContext>
|
|
<browser:MacroBrowserViewModel />
|
|
</UserControl.DataContext>
|
|
<UserControl.Resources>
|
|
<ResourceDictionary>
|
|
<ResourceDictionary.MergedDictionaries>
|
|
<ResourceDictionary Source="../Resources/DarkTheme.xaml" />
|
|
<ResourceDictionary Source="../Resources/Icons.xaml" />
|
|
<ResourceDictionary
|
|
Source="../UI/Views/Debug/DebugToolBarStyle.xaml" />
|
|
<ResourceDictionary Source="Controls/ClearableComboBox.xaml" />
|
|
<ResourceDictionary Source="../Resources/LeftRightIconToggleButton.xaml" />
|
|
</ResourceDictionary.MergedDictionaries>
|
|
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
|
|
</ResourceDictionary>
|
|
</UserControl.Resources>
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="5" />
|
|
</Grid.RowDefinitions>
|
|
<Grid Grid.Row="0">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
<controls1:StretchyWrapPanel Orientation="Horizontal" Grid.Row="0" Margin="10,0,10,10">
|
|
<controls1:StretchyWrapPanel.Resources>
|
|
<Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
|
|
<Setter Property="Margin" Value="10,0,10,0" />
|
|
<Setter Property="VerticalAlignment" Value="Center" />
|
|
<Setter Property="HorizontalAlignment" Value="Right" />
|
|
</Style>
|
|
<Style TargetType="{x:Type controls:ClearableComboBox}"
|
|
BasedOn="{StaticResource {x:Type controls:ClearableComboBox}}">
|
|
<Setter Property="MinWidth" Value="80" />
|
|
</Style>
|
|
</controls1:StretchyWrapPanel.Resources>
|
|
<TextBlock Text="{x:Static resources:Strings.Shard_}" Margin="0,0,10,0" />
|
|
<controls:ClearableComboBox ItemsSource="{Binding Shards}" ClearCommand="{Binding ClearCommand}"
|
|
ClearCommandParameter="{x:Static data:FilterType.Shard}"
|
|
SelectedItem="{Binding ShardFilter}" />
|
|
<TextBlock Text="{x:Static resources:Strings.Era}" />
|
|
<controls:ClearableComboBox ItemsSource="{Binding Eras}" ClearCommand="{Binding ClearCommand}"
|
|
ClearCommandParameter="{x:Static data:FilterType.Era}"
|
|
SelectedItem="{Binding EraFilter}" />
|
|
<TextBlock Text="{x:Static resources:Strings.Author}" />
|
|
<controls:ClearableComboBox ItemsSource="{Binding Authors}" ClearCommand="{Binding ClearCommand}"
|
|
ClearCommandParameter="{x:Static data:FilterType.Author}"
|
|
SelectedItem="{Binding AuthorFilter}" />
|
|
<TextBlock Text="{x:Static resources:Strings.Category}" />
|
|
<controls:ClearableComboBox ItemsSource="{Binding Categories}" ClearCommand="{Binding ClearCommand}"
|
|
ClearCommandParameter="{x:Static data:FilterType.Category}"
|
|
SelectedItem="{Binding CategoryFilter}" />
|
|
</controls1:StretchyWrapPanel>
|
|
<Grid Row="1" Margin="10,0,10,0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition>
|
|
<ColumnDefinition.Style>
|
|
<Style TargetType="{x:Type ColumnDefinition}">
|
|
<Setter Property="Width" Value="200" />
|
|
<Style.Triggers>
|
|
<DataTrigger Binding="{Binding IsChecked, ElementName=ToggleButton}" Value="True">
|
|
<Setter Property="Width" Value="0" />
|
|
</DataTrigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
</ColumnDefinition.Style>
|
|
</ColumnDefinition>
|
|
<ColumnDefinition Width="5" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid Grid.Column="0">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<ListBox x:Name="listBox" ItemsSource="{Binding Macros}" Grid.Column="0" Grid.Row="0"
|
|
SelectedItem="{Binding SelectedItem}">
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<TextBlock Text="{Binding}" ToolTip="{Binding}" />
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
<TextBlock Grid.Row="1" TextWrapping="Wrap">
|
|
<Hyperlink NavigateUri="https://github.com/Reetus/ClassicAssist-Macros/blob/master/README.md"
|
|
RequestNavigate="Hyperlink_RequestNavigate">
|
|
<Run Text="{x:Static resources:Strings.Learn_how_to_contribute_your_own_macros___}" />
|
|
</Hyperlink>
|
|
</TextBlock>
|
|
</Grid>
|
|
<GridSplitter Grid.Column="1" Width="5" HorizontalAlignment="Stretch" />
|
|
<Grid Grid.Column="2">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<avalonedit:TextEditor ShowLineNumbers="True" x:Name="CodeTextEditor" Grid.Row="0"
|
|
HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"
|
|
FontFamily="Consolas" Margin="10,0,0,0" IsReadOnly="True">
|
|
<i:Interaction.Behaviors>
|
|
<misc:AvalonEditBehaviour
|
|
TextBinding="{Binding SelectedMacro}" />
|
|
</i:Interaction.Behaviors>
|
|
</avalonedit:TextEditor>
|
|
<WrapPanel Grid.Row="1" Orientation="Horizontal" Margin="10,10,0,0">
|
|
<WrapPanel.Resources>
|
|
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
|
<Setter Property="Margin" Value="0,0,10,0" />
|
|
<Setter Property="Padding" Value="10,5" />
|
|
<Setter Property="FontSize" Value="11" />
|
|
</Style>
|
|
</WrapPanel.Resources>
|
|
<ToggleButton x:Name="ToggleButton" Height="15" Margin="0"
|
|
Style="{DynamicResource LeftRightIconToggleButton}" VerticalAlignment="Center" />
|
|
<Button Content="{x:Static resources:Strings.Copy_to_clipboard}"
|
|
Command="{Binding CopyToClipboardCommand}" CommandParameter="{Binding SelectedMacro}" />
|
|
<Button Content="{x:Static resources:Strings.Create_Macro}"
|
|
Command="{Binding CreateMacroCommand}" CommandParameter="{Binding SelectedItem}" />
|
|
<Button Content="{x:Static resources:Strings.Open_in_Github}"
|
|
Command="{Binding OpenGithubCommand}"
|
|
CommandParameter="{Binding SelectedItem, ElementName=listBox}" />
|
|
</WrapPanel>
|
|
</Grid>
|
|
</Grid>
|
|
</Grid>
|
|
<ProgressBar Grid.Row="1" IsIndeterminate="True"
|
|
Visibility="{Binding Loading, Converter={StaticResource BooleanToVisibilityConverter}}" />
|
|
</Grid>
|
|
</UserControl> |