2021-08-05 20:45:26 -05:00
|
|
|
<ResourceDictionary
|
|
|
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
|
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
|
|
|
x:Class="OwlCore.Wpf.AbstractUI.Themes.AbstractUIGroupPresenterStyle"
|
|
|
|
|
xmlns:controls="clr-namespace:OwlCore.Wpf.AbstractUI.Controls"
|
|
|
|
|
xmlns:abstractUIVm="clr-namespace:OwlCore.AbstractUI.ViewModels;assembly=OwlCore"
|
|
|
|
|
xmlns:themes="clr-namespace:OwlCore.Wpf.AbstractUI.Themes"
|
|
|
|
|
xmlns:convertvis="clr-namespace:OwlCore.Wpf.Converters.Bools.Visible">
|
|
|
|
|
|
|
|
|
|
<ResourceDictionary.MergedDictionaries>
|
|
|
|
|
<ResourceDictionary Source="pack://application:,,,/OwlCore.Wpf;component/AbstractUI/Themes/AbstractUIResources.xaml"/>
|
|
|
|
|
<themes:AbstractBooleanStyle />
|
|
|
|
|
<themes:AbstractButtonStyle />
|
|
|
|
|
<themes:AbstractDataListStyle />
|
|
|
|
|
<themes:AbstractMultiChoiceUIElementStyle />
|
|
|
|
|
<themes:AbstractProgressUIElementStyle />
|
|
|
|
|
<themes:AbstractRichTextBlockStyle />
|
|
|
|
|
<themes:AbstractTextBoxStyle />
|
|
|
|
|
</ResourceDictionary.MergedDictionaries>
|
|
|
|
|
|
|
|
|
|
<convertvis:NotNullOrEmptyToVisibilityConverter x:Key="NotNullOrEmptyToVisibilityConverter"/>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector x:Key="GroupTemplateSelector">
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.BooleanTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractBooleanViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractBooleanPresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.BooleanTemplate>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.ButtonTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractButtonViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractButtonPresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.ButtonTemplate>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.DataListTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractDataListViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractDataListPresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.DataListTemplate>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.MultiChoiceTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractMultiChoiceUIElementViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractMultiChoicePresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.MultiChoiceTemplate>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.ProgressTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractProgressUIElementViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractProgessUIElementPresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.ProgressTemplate>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.TextBoxTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractTextBoxViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractTextBoxPresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.TextBoxTemplate>
|
|
|
|
|
|
|
|
|
|
<controls:AbstractUIGroupItemTemplateSelector.ElementGroupTemplate>
|
|
|
|
|
<DataTemplate DataType="abstractUIVm:AbstractUIElementGroupViewModel">
|
2021-10-23 21:51:51 -05:00
|
|
|
<controls:AbstractUIGroupPresenter DataContext="{Binding}" />
|
2021-08-05 20:45:26 -05:00
|
|
|
</DataTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector.ElementGroupTemplate>
|
|
|
|
|
</controls:AbstractUIGroupItemTemplateSelector>
|
|
|
|
|
|
|
|
|
|
<DataTemplate x:Key="DefaultAbstractUIElementGroupTemplate" DataType="abstractUIVm:AbstractUIElementGroupViewModel">
|
|
|
|
|
<StackPanel Margin="10,20">
|
|
|
|
|
|
|
|
|
|
<TextBlock Text="{Binding Title, Mode=OneWay}" FontSize="30" ToolTipService.ToolTip="{Binding TooltipText, Mode=OneWay}"
|
|
|
|
|
Visibility="{Binding Path=Title, Converter={StaticResource NotNullOrEmptyToVisibilityConverter}, Mode=OneWay}"/>
|
|
|
|
|
|
|
|
|
|
<TextBlock Text="{Binding Subtitle, Mode=OneWay}" FontSize="18" FontWeight="Light" Opacity="0.5"
|
|
|
|
|
Visibility="{Binding Path=Subtitle, TargetNullValue=Collapsed, Mode=OneWay}"/>
|
|
|
|
|
|
|
|
|
|
<ItemsControl ItemsSource="{Binding Items, Mode=OneWay}"
|
|
|
|
|
ItemTemplateSelector="{StaticResource GroupTemplateSelector}" />
|
|
|
|
|
</StackPanel>
|
|
|
|
|
</DataTemplate>
|
|
|
|
|
|
|
|
|
|
<Style TargetType="controls:AbstractUIGroupPresenter">
|
|
|
|
|
<Style.Setters>
|
|
|
|
|
<Setter Property="Template">
|
|
|
|
|
<Setter.Value>
|
|
|
|
|
<ControlTemplate TargetType="controls:AbstractUIGroupPresenter">
|
|
|
|
|
<ContentControl ContentTemplate="{StaticResource DefaultAbstractUIElementGroupTemplate}"
|
|
|
|
|
Content="{TemplateBinding ViewModel}"
|
|
|
|
|
HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" />
|
|
|
|
|
</ControlTemplate>
|
|
|
|
|
</Setter.Value>
|
|
|
|
|
</Setter>
|
|
|
|
|
</Style.Setters>
|
|
|
|
|
</Style>
|
|
|
|
|
|
|
|
|
|
</ResourceDictionary>
|
|
|
|
|
|