Files
ShrlAlgoToolkit/ShrlAlgo.RvKits/WPFUI.xaml

160 lines
11 KiB
XML

<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:convrv="clr-namespace:ShrlAlgo.Toolkit.Mvvm.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:familyLibrary="clr-namespace:ShrlAlgo.RvKits.RvFamily.FamilyLibrary"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ui="https://github.com/ShrlAlgo/WPFluent"
mc:Ignorable="d">
<ResourceDictionary.MergedDictionaries>
<!--<materialDesign:BundledTheme
BaseTheme="Light"
PrimaryColor="LightBlue"
SecondaryColor="Green" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Dark.xaml" />
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesign3.Defaults.xaml" />-->
<!--<ResourceDictionary Source="pack://application:,,,/Wpf.Ui;component/Resources/Theme/Dark.xaml" />
<ResourceDictionary Source="pack://application:,,,/Wpf.Ui;component/Resources/Wpf.Ui.xaml" />-->
<ui:ThemesDictionary Theme="Dark" />
<ui:ControlsDictionary />
</ResourceDictionary.MergedDictionaries>
<!--#region Fonts-->
<!--<FontFamily x:Key="SegoeFluentIcons">pack://application:,,,/ShrlAlgo.RvKits;component/Fonts/#Segoe Fluent Icons</FontFamily>
<FontFamily x:Key="FontAwesome">pack://application:,,,/ShrlAlgo.RvKits;component/Fonts/#Font Awesome 6 Free Regular</FontFamily>-->
<!--<FontFamily x:Key="IconFont">pack://application:,,,/ShrlAlgo.RvKits;component/Fonts/#iconfont</FontFamily>-->
<FontFamily x:Key="BoxIcons">pack://application:,,,/ShrlAlgo.RvKits;component/Fonts/#BoxIcons</FontFamily>
<FontFamily x:Key="SourceHanSansSC">pack://application:,,,/ShrlAlgo.RvKits;component/Fonts/#Source Han Sans SC</FontFamily>
<!--#endregion-->
<!--<Viewbox x:Key="RevitIcon">
<Grid>
<Path Data="M821.333333 912H202.666667a26.666667 26.666667 0 0 1-26.666667-26.666667V138.666667a26.666667 26.666667 0 0 1 26.666667-26.666667h477.792L848 279.541333V885.333333a26.666667 26.666667 0 0 1-26.666667 26.666667z" Fill="#138FFB" />
<Path Data="M512 117.333333h170.666667l160 160v608a21.333333 21.333333 0 0 1-21.333334 21.333334H512V117.333333z" Fill="#0889FB" />
<Path Data="M682.666667 106.666667l170.666666 170.666666H714.666667a32 32 0 0 1-32-32V106.666667z" Fill="#0065CF" />
<Path Data="M606.421333 568.768c0-35.84 45.866667-43.008 45.866667-121.834667 0-65.418667-33.994667-105.813333-96.032-124.704C520.416 311.317333 473.333333 309.333333 422.954667 309.333333h-68.8v216.426667l57.333333 58.773333h91.733333l114.666667 126.133334L721.109333 768s-114.666667-164.832-114.666666-199.232zM537.621333 446.933333a45.866667 45.866667 0 0 1-45.866666 45.866667h-11.466667a22.922667 22.922667 0 0 1-22.933333-22.933333v-45.866667c0-12.672 10.261333-22.933333 22.933333-22.933333h22.933333a34.4 34.4 0 0 1 34.389334 34.4V446.933333h0.010666z" Fill="#D0E9FE" />
<Path Data="M537.514667 447.786667A45.813333 45.813333 0 0 1 491.733333 492.8s-2.858667 11.466667-24.373333 31.530667c-11.84 11.061333-44.426667 25.802667-44.426667 25.802666s127.242667 8.394667 162.794667-62.261333c-5.952-20.458667-22.869333-36.405333-48.224-40.085333z" Fill="#E3F2FE" />
<Path
Data="M514.666667 366.666667h-45.866667a34.4 34.4 0 0 0-34.389333 34.4v34.4c0 29.088 19.370667 52.864 40.298666 56.576a22.890667 22.890667 0 0 1-17.376-22.165334v-45.866666c0-12.682667 10.261333-22.933333 22.933334-22.933334h22.933333a34.4 34.4 0 0 1 34.4 34.389334v11.477333c0 0.288-0.085333 0.565333-0.096 0.853333 25.354667 3.68 42.261333 19.605333 48.213333 40.074667 5.781333-11.456 9.216-24.928 9.216-40.938667a80.245333 80.245333 0 0 0-80.256-80.266666z"
Fill="#FFFFFF"
Opacity=".6" />
<Path Data="M468.8 366.666667a34.4 34.4 0 0 0-34.4 34.4v34.4c0 29.088 19.381333 52.864 40.309333 56.576a22.890667 22.890667 0 0 1-17.376-22.165334v-45.866666c0-12.682667 10.261333-22.933333 22.933334-22.933334h22.933333a34.4 34.4 0 0 1 34.4 34.389334v11.477333a45.866667 45.866667 0 0 1-45.866667 45.866667s68.8 0 68.8-68.8v-11.413334c0-24.544-19.285333-45.269333-43.808-45.898666l-2.069333-0.021334H468.8v-0.010666zM354.133333 309.333333v435.733334L400 768l22.933333-217.866667c0.010667 0-68.8-34.4-68.8-240.8z" Fill="#A1D2FD" />
<Path Data="M400 768l22.933333-217.866667s68.8 0 103.2 22.933334c14.954667 9.973333 56.512 58.528 94.602667 101.76C673.770667 735.04 721.077333 768 721.077333 768s-78.837333-5.738667-110.24-10.133333c-10.026667-1.408-19.306667-6.08-25.173333-14.336-17.173333-24.170667-48.064-84.458667-93.930667-130.325334-2.698667-2.698667-5.738667-5.674667-11.466666-5.674666-5.834667 0-11.466667 4.554667-11.466667 11.52v117.76c0 4.928-3.168 9.322667-7.850667 10.88L400.021333 768z" Fill="#FFFFFF" />
</Grid>
</Viewbox>-->
<!--<SolidColorBrush x:Key="PrimaryHueLightBrush" Color="#744CE0" />-->
<!--<ObjectDataProvider
x:Key="DetailLevelEnumKey"
MethodName="GetValues"
ObjectType="{x:Type core:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type Type="db:ViewDetailLevel" />
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>-->
<!--#region Converters-->
<ui:BooleanToVisConverter x:Key="BooleanToVisConverter" />
<ui:InvertBooleanConverter x:Key="InvertBooleanConverter" />
<ui:ColorToBrushConverter x:Key="ColorToBrushConverter" />
<convrv:ComparisonConverter x:Key="ComparisonConverter" />
<convrv:TaskResultConverter x:Key="TaskResultConverter" />
<convrv:Null2EnableConverter x:Key="Null2EnableConverter" />
<convrv:Rv2WinColorConverter x:Key="Revit2MediaColorConverter" />
<convrv:IdToNameConverter x:Key="IdToNameConverter" />
<convrv:SearchTypeValueConverter x:Key="SearchTypeValueConverter" />
<convrv:SearchFamilyValueConverter x:Key="SearchFamilyValueConverter" />
<!--#endregion-->
<Style BasedOn="{StaticResource DefaultDataGridColumnHeaderStyle}" TargetType="DataGridColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center" />
</Style>
<Style BasedOn="{StaticResource DefaultRadioButtonStyle}" TargetType="RadioButton">
<Setter Property="MinWidth" Value="5" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="HorizontalContentAlignment" Value="Left" />
</Style>
<Style BasedOn="{StaticResource DefaultFluentWindowExStyle}" TargetType="ui:FluentWindowEx">
<Setter Property="ui:Design.Background" Value="{DynamicResource WindowBackground}" />
<Setter Property="ui:Design.Foreground" Value="{DynamicResource WindowForeground}" />
<Setter Property="FontFamily" Value="{StaticResource SourceHanSansSC}" />
<Setter Property="SizeToContent" Value="Height" />
<Setter Property="ShowInTaskbar" Value="False" />
<Setter Property="MaxHeight" Value="800" />
<Setter Property="TitleIcon" Value="{ui:SymbolIcon Toolbox20}" />
<!--<Setter Property="TitleIcon" Value="{ui:FontIcon &#xe60d;, {StaticResource IconFont}}" />-->
<!--<Setter Property="TitleIcon" Value="{ui:ImageIcon Resources/revit-Fill.png}" />-->
</Style>
<DataTemplate x:Key="FamilyGalleryItemTemplate" DataType="{x:Type familyLibrary:FamilyModel}">
<Grid>
<Button
Command="{Binding PlaceRecentFamilyCommand}"
CommandParameter="{Binding}"
ToolTip="{Binding ToolTip}">
<!--<Button.ContextMenu>
<ContextMenu>
<MenuItem
Command="{Binding RemoveRecentFamilyCommand}"
CommandParameter="{Binding}"
Header="移除" />
</ContextMenu>
</Button.ContextMenu>-->
<Button.Style>
<Style TargetType="{x:Type Button}">
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Height" Value="56" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Grid Margin="0" Background="#01000000">
<Border
HorizontalAlignment="Center"
VerticalAlignment="Center"
BorderBrush="Black"
BorderThickness="1">
<Image
Name="Image"
Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
Source="{Binding BitmapImage}"
Stretch="Fill" />
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="Image" Property="RenderTransform">
<Setter.Value>
<ScaleTransform CenterX="28" CenterY="28" ScaleX="1.1" ScaleY="1.1" />
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="Image" Property="RenderTransform">
<Setter.Value>
<ScaleTransform CenterX="28" CenterY="28" ScaleX="1" ScaleY="1" />
</Setter.Value>
</Setter>
</Trigger>
<EventTrigger RoutedEvent="Click" />
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="Width" Value="56" />
</Style>
</Button.Style>
</Button>
</Grid>
</DataTemplate>
<DataTemplate x:Key="MultiDisplayMemberPath">
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} - {1}">
<Binding Path="FamilyName" />
<Binding Path="Name" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</DataTemplate>
</ResourceDictionary>