diff --git a/Melskin/Controls/Accordion.xaml b/Melskin/Controls/Accordion.xaml
index 021ed29..0e5c736 100644
--- a/Melskin/Controls/Accordion.xaml
+++ b/Melskin/Controls/Accordion.xaml
@@ -1,14 +1,14 @@
+ xmlns:decorations="clr-namespace:Melskin.Controls.Decorations">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Melskin/Controls/Card.xaml b/Melskin/Controls/Card.xaml
index f273516..f85aca6 100644
--- a/Melskin/Controls/Card.xaml
+++ b/Melskin/Controls/Card.xaml
@@ -1,8 +1,8 @@
+ xmlns:decorations="clr-namespace:Melskin.Controls.Decorations">
-
-
diff --git a/Melskin/Controls/CheckableTag.xaml b/Melskin/Controls/CheckableTag.xaml
index c23c08e..614222f 100644
--- a/Melskin/Controls/CheckableTag.xaml
+++ b/Melskin/Controls/CheckableTag.xaml
@@ -1,8 +1,8 @@
+ xmlns:helpers="clr-namespace:Melskin.Assists">
@@ -26,24 +26,24 @@
+ UseLayoutRounding="True">
+ ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}" />
@@ -66,7 +66,7 @@
-
+
diff --git a/Melskin/Controls/Chip.xaml b/Melskin/Controls/Chip.xaml
index 7ed2fb7..452e50d 100644
--- a/Melskin/Controls/Chip.xaml
+++ b/Melskin/Controls/Chip.xaml
@@ -1,11 +1,11 @@
+ xmlns:decorations="clr-namespace:Melskin.Controls.Decorations">
-
-
-
-
-
-
-
-
-
-
-
-
+ SnapsToDevicePixels="True">
+ Style="{StaticResource DefaultTextBoxDatePickerStyle}" />
+ Background="Transparent" />
+ Margin="5"
+ HorizontalAlignment="Right"
+ Style="{StaticResource CalendarPickerButton}" />
+ Opacity="0" />
+ StaysOpen="True" />
-
+
-
+
-
-
-
-
-
-
-
+
+
-
+
+ VerticalOffset="4">
-
-
+ CornerRadius="4">
+
+
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ Style="{StaticResource FlattenComboBoxToggleButtonStyle}" />
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
-
-
+
+
-
+
@@ -188,14 +188,14 @@
-
-
-
+
+
+
-
diff --git a/Melskin/Controls/ListBox.xaml b/Melskin/Controls/ListBox.xaml
index 88b066b..98513f2 100644
--- a/Melskin/Controls/ListBox.xaml
+++ b/Melskin/Controls/ListBox.xaml
@@ -1,11 +1,11 @@
+ xmlns:internal="clr-namespace:Melskin.Converters.Internal">
-
-
-
-
-
-
-
-
-
+
+ SnapsToDevicePixels="true">
+ Height="16"
+ Margin="3"
+ HorizontalAlignment="Center"
+ VerticalAlignment="Center"
+ ContentSource="Icon"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ FlowDirection="LeftToRight"
+ Foreground="{DynamicResource PrimaryGradientBrush}"
+ Symbol="Check"
+ Visibility="Collapsed" />
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
-
+
-
-
+
+
-
+
-
-
+
+
@@ -190,85 +190,85 @@
-
-
+
+
-
+
+ SnapsToDevicePixels="true">
+ Height="16"
+ Margin="3"
+ HorizontalAlignment="Center"
+ VerticalAlignment="Center"
+ ContentSource="Icon"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ FlowDirection="LeftToRight"
+ Foreground="{DynamicResource PrimaryGradientBrush}"
+ Symbol="Check"
+ Visibility="Collapsed" />
+ PopupAnimation="Fade">
-
-
+ Effect="{DynamicResource PopupShadow}">
+
+
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
@@ -278,112 +278,112 @@
-
+
-
+
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
-
+
+ SnapsToDevicePixels="true">
+ SharedSizeGroup="MenuItemIconColumnGroup" />
-
+
+ Height="16"
+ Margin="3"
+ HorizontalAlignment="Center"
+ VerticalAlignment="Center"
+ ContentSource="Icon"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ Visibility="Hidden">
+ Symbol="Check" />
+ ContentSource="Header"
+ RecognizesAccessKey="True"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ Opacity="0.7"
+ Text="{TemplateBinding InputGestureText}" />
-
+
-
-
+
+
-
+
-
-
+
+
@@ -391,117 +391,117 @@
-
-
+
+
-
+
+ SnapsToDevicePixels="true">
+ SharedSizeGroup="MenuItemIconColumnGroup" />
-
+
+ Height="16"
+ Margin="3"
+ HorizontalAlignment="Center"
+ VerticalAlignment="Center"
+ ContentSource="Icon"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ Visibility="Hidden">
+ Symbol="Check" />
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ Text="{TemplateBinding InputGestureText}" />
+ Foreground="{DynamicResource TextPrimaryBrush}"
+ Symbol="KeyboardArrowRight" />
+ VerticalOffset="-3">
-
-
+ Effect="{DynamicResource PopupShadow}">
+
+
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
@@ -511,26 +511,26 @@
-
+
-
+
-
-
+
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
@@ -584,17 +584,17 @@
+ Effect="{DynamicResource PopupShadow}">
+ KeyboardNavigation.DirectionalNavigation="Cycle" />
+ xmlns:converters="clr-namespace:Melskin.Converters">
-
-
-
-
-
+
+ SnapsToDevicePixels="True">
+ Visibility="Collapsed" />
+ VerticalScrollBarVisibility="Hidden" />
@@ -361,13 +361,13 @@
-
+
-
+
-
+
@@ -375,17 +375,17 @@
-
+
+ UseLayoutRounding="True">
@@ -397,49 +397,49 @@
+ Content="{TemplateBinding assists:InputAssist.Prefix}"
+ Focusable="False" />
+ Visibility="Collapsed" />
+ IsTabStop="False" />
+ Visibility="Collapsed" />
+ IsHitTestVisible="True"
+ IsTabStop="False"
+ Visibility="Collapsed">
-
+
-
+
@@ -211,12 +211,12 @@
-
+ CornerRadius="4">
+
@@ -240,9 +240,9 @@
+ CornerRadius="3" />
@@ -252,11 +252,11 @@
-
-
+
+
-
+
@@ -264,9 +264,9 @@
-
+
-
+
@@ -274,12 +274,12 @@
-
+ CornerRadius="4">
+
@@ -312,11 +312,11 @@
-
-
+
+
-
+
diff --git a/Melskin/Controls/PropertyField.xaml b/Melskin/Controls/PropertyField.xaml
index e210d7e..1988c2c 100644
--- a/Melskin/Controls/PropertyField.xaml
+++ b/Melskin/Controls/PropertyField.xaml
@@ -1,7 +1,7 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:sv="clr-namespace:Melskin.Controls">
-
-
-
-
-
+
+
+ RadiusY="4" />
+ Command="{x:Static ScrollBar.LineUpCommand}"
+ IsEnabled="{TemplateBinding IsMouseOver}"
+ Style="{StaticResource ScrollBarButtonStyle}" />
+ Command="{x:Static ScrollBar.LineDownCommand}"
+ IsEnabled="{TemplateBinding IsMouseOver}"
+ Style="{StaticResource ScrollBarButtonStyle}" />
-
+
@@ -265,37 +265,37 @@
-
-
+
+
-
-
+
+
+ RadiusY="4" />
-
-
+
@@ -328,8 +328,8 @@
-
-
+
+
@@ -359,7 +359,7 @@
-
+
@@ -369,38 +369,38 @@
+ ContentTemplate="{TemplateBinding ContentTemplate}" />
+ Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" />
+ Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" />
diff --git a/Melskin/Controls/Slider.xaml b/Melskin/Controls/Slider.xaml
index 4d2865e..c298e62 100644
--- a/Melskin/Controls/Slider.xaml
+++ b/Melskin/Controls/Slider.xaml
@@ -1,28 +1,28 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:internal="clr-namespace:Melskin.Converters.Internal">
-
+
+ VerticalAlignment="Center"
+ UseLayoutRounding="True">
+ Height="20"
+ Fill="{DynamicResource ControlBackgroundNormalBrush}"
+ StrokeThickness="1">
+ Opacity="0.4"
+ Color="{DynamicResource DarkShadowColor}" />
@@ -30,34 +30,34 @@
-
+
+ ShadowDepth="3"
+ Color="{DynamicResource DarkShadowColor}" />
-
-
-
+
+
+
-
+
+ SnapsToDevicePixels="True">
-
+
@@ -65,29 +65,29 @@
+ Margin="0,0,2,0"
+ Fill="{TemplateBinding Foreground}"
+ Placement="Left"
+ Visibility="Collapsed" />
+ CornerRadius="4">
+ Background="{TemplateBinding Foreground}"
+ CornerRadius="4">
+ Grid.Column="1">
@@ -130,34 +130,34 @@
+ Height="20"
+ VerticalAlignment="Top"
+ Focusable="False"
+ OverridesDefaultStyle="True"
+ Template="{StaticResource ShadowSliderThumbTemplate}" />
+ Margin="2,0,0,0"
+ Fill="{TemplateBinding Foreground}"
+ Placement="Right"
+ Visibility="Collapsed" />
+ Foreground="{DynamicResource PrimaryNormalBrush}"
+ Text="{Binding Value, RelativeSource={RelativeSource TemplatedParent}, StringFormat=F1}">
@@ -166,36 +166,36 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
+
+ SnapsToDevicePixels="True">
@@ -207,29 +207,29 @@
+ Visibility="Collapsed" />
+ BorderBrush="{DynamicResource BorderNormalBrush}"
+ BorderThickness="1"
+ CornerRadius="4">
+ Background="{TemplateBinding Foreground}"
+ CornerRadius="4">
+ Grid.Column="0">
@@ -273,58 +273,58 @@
+ Height="22"
+ VerticalAlignment="Center"
+ Focusable="False"
+ OverridesDefaultStyle="True"
+ Template="{StaticResource ShadowSliderThumbTemplate}" />
+ Visibility="Collapsed" />
+ Foreground="{DynamicResource PrimaryNormalBrush}"
+ Text="{Binding Value, RelativeSource={RelativeSource TemplatedParent}, StringFormat=F1}" />
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
+
-
-
+
+ VerticalAlignment="Center"
+ UseLayoutRounding="True">
+ Height="15"
+ Fill="{DynamicResource ControlBackgroundNormalBrush}"
+ StrokeThickness="1">
-
-
-
+
+
+
-
+
+ SnapsToDevicePixels="True">
-
+
@@ -424,29 +424,29 @@
+ Margin="0,0,2,0"
+ Fill="{TemplateBinding Foreground}"
+ Placement="Left"
+ Visibility="Collapsed" />
+ CornerRadius="4">
+ Background="{TemplateBinding Foreground}"
+ CornerRadius="4">
+ Grid.Column="1">
@@ -489,32 +489,32 @@
+ Template="{StaticResource DefaultSliderThumbTemplate}" />
+ Margin="2,0,0,0"
+ Fill="{TemplateBinding Foreground}"
+ Placement="Right"
+ Visibility="Collapsed" />
+ Foreground="{DynamicResource PrimaryNormalBrush}"
+ Text="{Binding Value, RelativeSource={RelativeSource TemplatedParent}, StringFormat=F1}">
@@ -523,37 +523,37 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
+
+ SnapsToDevicePixels="True">
@@ -565,29 +565,29 @@
+ Visibility="Collapsed" />
+ BorderBrush="{DynamicResource BorderNormalBrush}"
+ BorderThickness="1"
+ CornerRadius="4">
+ Background="{TemplateBinding Foreground}"
+ CornerRadius="4">
+ Grid.Column="0">
@@ -631,54 +631,54 @@
+ Height="22"
+ VerticalAlignment="Center"
+ Focusable="False"
+ OverridesDefaultStyle="True"
+ Template="{StaticResource DefaultSliderThumbTemplate}" />
+ Visibility="Collapsed" />
+ Foreground="{DynamicResource PrimaryNormalBrush}"
+ Text="{Binding Value, RelativeSource={RelativeSource TemplatedParent}, StringFormat=F1}" />
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
+
diff --git a/Melskin/Controls/Spin.xaml b/Melskin/Controls/Spin.xaml
index c00578a..643a385 100644
--- a/Melskin/Controls/Spin.xaml
+++ b/Melskin/Controls/Spin.xaml
@@ -1,8 +1,8 @@
+ xmlns:converters="clr-namespace:Melskin.Converters">
-
-
+ VerticalAlignment="Top" />
+ HorizontalAlignment="Right"
+ VerticalAlignment="Top" />
+
+
+ Content="{TemplateBinding Tip}" />
+ Visibility="Collapsed" />
-
+
@@ -113,53 +113,53 @@
+ To="0.5"
+ Duration="0:0:0.2" />
+ From="45"
+ To="405"
+ Duration="0:0:1.2" />
+ From="0.3"
+ To="1"
+ Duration="0:0:1" />
+ From="0.3"
+ To="1"
+ Duration="0:0:1" />
+ From="0.3"
+ To="1"
+ Duration="0:0:1" />
+ From="0.3"
+ To="1"
+ Duration="0:0:1" />
@@ -177,8 +177,8 @@
-->
-
-
+
+
@@ -186,18 +186,18 @@
-
-
-
+
+
+
-
+
-
-
+
+
diff --git a/Melskin/Controls/TabControl.xaml b/Melskin/Controls/TabControl.xaml
index 56a0a0c..8ae9bb5 100644
--- a/Melskin/Controls/TabControl.xaml
+++ b/Melskin/Controls/TabControl.xaml
@@ -1,10 +1,10 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:assists="clr-namespace:Melskin.Assists">
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Properties/AssemblyInfo.cs b/ShrlAlgo.Toolkit.Wpf/Properties/AssemblyInfo.cs
deleted file mode 100644
index 8d618eb..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,52 +0,0 @@
-using System.Reflection;
-using System.Resources;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-using System.Windows;
-
-// 有关程序集的一般信息由以下
-// 控制。更改这些特性值可修改
-// 与程序集关联的信息。
-[assembly: AssemblyTitle("ShrlAlgo.Toolkit.Wpf")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ShrlAlgo.Toolkit.Wpf")]
-[assembly: AssemblyCopyright("Copyright © 2025")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-//将 ComVisible 设置为 false 将使此程序集中的类型
-//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
-//请将此类型的 ComVisible 特性设置为 true。
-[assembly: ComVisible(false)]
-
-//若要开始生成可本地化的应用程序,请设置
-//.csproj 文件中的 CultureYouAreCodingWith
-//在 中。例如,如果你使用的是美国英语。
-//使用的是美国英语,请将 设置为 en-US。 然后取消
-//对以下 NeutralResourceLanguage 特性的注释。 更新
-//以下行中的“en-US”以匹配项目文件中的 UICulture 设置。
-
-//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
-
-
-[assembly:ThemeInfo(
- ResourceDictionaryLocation.None, //主题特定资源词典所处位置
- //(未在页面中找到资源时使用,
- //或应用程序资源字典中找到时使用)
- ResourceDictionaryLocation.SourceAssembly //常规资源词典所处位置
- //(未在页面中找到资源时使用,
- //、应用程序或任何主题专用资源字典中找到时使用)
-)]
-
-
-// 程序集的版本信息由下列四个值组成:
-//
-// 主版本
-// 次版本
-// 生成号
-// 修订号
-//
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/ShrlAlgo.Toolkit.Wpf/Properties/Resources.Designer.cs b/ShrlAlgo.Toolkit.Wpf/Properties/Resources.Designer.cs
deleted file mode 100644
index 5d9266b..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// 此代码由工具生成。
-// 运行时版本: 4.0.30319.42000
-//
-// 对此文件的更改可能导致不正确的行为,如果
-// 重新生成代码,则所做更改将丢失。
-//
-//------------------------------------------------------------------------------
-
-namespace ShrlAlgo.Toolkit.Wpf.Properties {
-
-
- ///
- /// 强类型资源类,用于查找本地化字符串等。
- ///
- // 此类是由 StronglyTypedResourceBuilder
- // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
- // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
- // (以 /str 作为命令选项),或重新生成 VS 项目。
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources() {
- }
-
- ///
- /// 返回此类使用的缓存 ResourceManager 实例。
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
- get {
- if ((resourceMan == null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ShrlAlgo.Toolkit.Wpf.Properties.Resources", typeof(Resources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- ///
- /// 重写当前线程的 CurrentUICulture 属性,对
- /// 使用此强类型资源类的所有资源查找执行重写。
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
- }
-}
diff --git a/ShrlAlgo.Toolkit.Wpf/Properties/Resources.resx b/ShrlAlgo.Toolkit.Wpf/Properties/Resources.resx
deleted file mode 100644
index af7dbeb..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Properties/Resources.resx
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Properties/Settings.Designer.cs b/ShrlAlgo.Toolkit.Wpf/Properties/Settings.Designer.cs
deleted file mode 100644
index 4cafad5..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Properties/Settings.Designer.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:4.0.30319.42000
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace ShrlAlgo.Toolkit.Wpf.Properties
-{
-
-
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
- internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
- {
-
- private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
-
- public static Settings Default
- {
- get
- {
- return defaultInstance;
- }
- }
- }
-}
diff --git a/ShrlAlgo.Toolkit.Wpf/Properties/Settings.settings b/ShrlAlgo.Toolkit.Wpf/Properties/Settings.settings
deleted file mode 100644
index 033d7a5..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Properties/Settings.settings
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Resources/InternalIcons.xaml b/ShrlAlgo.Toolkit.Wpf/Resources/InternalIcons.xaml
deleted file mode 100644
index 4364699..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Resources/InternalIcons.xaml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/ShrlAlgo.Toolkit.Wpf.csproj b/ShrlAlgo.Toolkit.Wpf/ShrlAlgo.Toolkit.Wpf.csproj
deleted file mode 100644
index cd20d99..0000000
--- a/ShrlAlgo.Toolkit.Wpf/ShrlAlgo.Toolkit.Wpf.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
- net462
- Library
- true
- true
- 12.0
- False
- true
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Themes/Colors.xaml b/ShrlAlgo.Toolkit.Wpf/Themes/Colors.xaml
deleted file mode 100644
index 1074712..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Themes/Colors.xaml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
- #4CFFFFFF
- #26B0C4DE
- #33FFFFFF
- #11000000
- #55D0EFFF
- #22FFFFFF
- #F0F8FF
- #B3FFFFFF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Themes/Controls.xaml b/ShrlAlgo.Toolkit.Wpf/Themes/Controls.xaml
deleted file mode 100644
index f8507ee..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Themes/Controls.xaml
+++ /dev/null
@@ -1,1389 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Themes/Effects.xaml b/ShrlAlgo.Toolkit.Wpf/Themes/Effects.xaml
deleted file mode 100644
index 9c04a0e..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Themes/Effects.xaml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgo.Toolkit.Wpf/Themes/Generic.xaml b/ShrlAlgo.Toolkit.Wpf/Themes/Generic.xaml
deleted file mode 100644
index c784b07..0000000
--- a/ShrlAlgo.Toolkit.Wpf/Themes/Generic.xaml
+++ /dev/null
@@ -1,687 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- Segoe UI
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgoToolkit.Core/Properties/AssemblyInfo.cs b/ShrlAlgoToolkit.Core/Properties/AssemblyInfo.cs
deleted file mode 100644
index d06974b..0000000
--- a/ShrlAlgoToolkit.Core/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// 有关程序集的一般信息由以下
-// 控制。更改这些特性值可修改
-// 与程序集关联的信息。
-[assembly: AssemblyTitle("ShrlAlgoToolkit.Core")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ShrlAlgoToolkit.Core")]
-[assembly: AssemblyCopyright("Copyright © 2025")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// 将 ComVisible 设置为 false 会使此程序集中的类型
-//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
-//请将此类型的 ComVisible 特性设置为 true。
-[assembly: ComVisible(false)]
-
-// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
-[assembly: Guid("8a9a4000-093e-498e-a620-5a035f76c520")]
-
-// 程序集的版本信息由下列四个值组成:
-//
-// 主版本
-// 次版本
-// 生成号
-// 修订号
-//
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/ShrlAlgoToolkit.Core/ShrlAlgoToolkit.Core.csproj b/ShrlAlgoToolkit.Core/ShrlAlgoToolkit.Core.csproj
deleted file mode 100644
index a903df0..0000000
--- a/ShrlAlgoToolkit.Core/ShrlAlgoToolkit.Core.csproj
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
- net472
- Library
- false
- Debug;Release
- 13.0
- enable
- True
- false
- false
- AnyCPU;x64
-
-
-
-
-
-
-
-
- C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.Management.dll
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/BooleanToVisConverter.cs b/ShrlAlgoToolkit.Mvvm/Converters/BooleanToVisConverter.cs
deleted file mode 100644
index 9f2efbf..0000000
--- a/ShrlAlgoToolkit.Mvvm/Converters/BooleanToVisConverter.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Linq;
-using System.Windows;
-
-
-namespace ShrlAlgoToolkit.Mvvm.Converters;
-
-public class BooleanToVisConverter : BooleanConverter
-{
- public BooleanToVisConverter() : base(Visibility.Visible, Visibility.Collapsed)
- {
- }
-}
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/InverterBooleanToVisConverter.cs b/ShrlAlgoToolkit.Mvvm/Converters/InverterBooleanToVisConverter.cs
deleted file mode 100644
index b0d26fe..0000000
--- a/ShrlAlgoToolkit.Mvvm/Converters/InverterBooleanToVisConverter.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using System.Windows;
-
-
-namespace ShrlAlgoToolkit.Mvvm.Converters;
-
-public class InverterBooleanToVisConverter : BooleanConverter
-{
- public InverterBooleanToVisConverter() : base(Visibility.Collapsed, Visibility.Visible)
- {
- }
-}
-
diff --git a/ShrlAlgoToolkit.Mvvm/Properties/AssemblyInfo.cs b/ShrlAlgoToolkit.Mvvm/Properties/AssemblyInfo.cs
deleted file mode 100644
index 59f1307..0000000
--- a/ShrlAlgoToolkit.Mvvm/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// 有关程序集的一般信息由以下
-// 控制。更改这些特性值可修改
-// 与程序集关联的信息。
-[assembly: AssemblyTitle("ShrlAlgo.Toolkit.Mvvm")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ShrlAlgo.Toolkit.Mvvm")]
-[assembly: AssemblyCopyright("Copyright © 2025")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// 将 ComVisible 设置为 false 会使此程序集中的类型
-//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
-//请将此类型的 ComVisible 特性设置为 true。
-[assembly: ComVisible(false)]
-
-// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
-[assembly: Guid("ca20d64f-16b1-4ddc-9e16-754192173f27")]
-
-// 程序集的版本信息由下列四个值组成:
-//
-// 主版本
-// 次版本
-// 生成号
-// 修订号
-//
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/ShrlAlgoToolkit.Mvvm/ShrlAlgoToolkit.Mvvm.csproj b/ShrlAlgoToolkit.Mvvm/ShrlAlgoToolkit.Mvvm.csproj
deleted file mode 100644
index 5c49750..0000000
--- a/ShrlAlgoToolkit.Mvvm/ShrlAlgoToolkit.Mvvm.csproj
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
- net462
- Library
- false
- Debug;Release
- 13.0
- enable
- True
- false
- false
- AnyCPU;x64
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/ShrlAlgoToolkit.Revit/Extensions/UIExtensions.cs b/ShrlAlgoToolkit.Revit/Extensions/UIExtensions.cs
index 601c046..1549492 100644
--- a/ShrlAlgoToolkit.Revit/Extensions/UIExtensions.cs
+++ b/ShrlAlgoToolkit.Revit/Extensions/UIExtensions.cs
@@ -271,9 +271,25 @@ public static class UIExtensions
{
return new ContextualHelp(ContextualHelpType.Url, text);
}
- ImageAssist.ExtractResource(helpFileSafeName, text);
+ ExtractResource(helpFileSafeName, text);
return new ContextualHelp(ContextualHelpType.ChmFile, text);
}
+ ///
+ /// 提取资源
+ ///
+ ///
+ ///
+ private static void ExtractResource(string resourceName, string path)
+ {
+ using var manifestResourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName);
+ using var stream = File.Create(path);
+ var array = new byte[8192];
+ int count;
+ while ((count = manifestResourceStream.Read(array, 0, array.Length)) > 0)
+ {
+ stream.Write(array, 0, count);
+ }
+ }
///
/// 添加按钮
///
diff --git a/ShrlAlgoToolkit.Core/Assists/EnumAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs
similarity index 76%
rename from ShrlAlgoToolkit.Core/Assists/EnumAssist.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs
index 4493b64..4e63f7f 100644
--- a/ShrlAlgoToolkit.Core/Assists/EnumAssist.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs
@@ -1,6 +1,10 @@
using System.Reflection;
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
public static class EnumAssist
{
diff --git a/ShrlAlgoToolkit.Core/Assists/ImageAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs
similarity index 88%
rename from ShrlAlgoToolkit.Core/Assists/ImageAssist.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs
index 3b5b580..e4bcfbf 100644
--- a/ShrlAlgoToolkit.Core/Assists/ImageAssist.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs
@@ -14,7 +14,11 @@ using System.Windows.Interop;
using System.Windows.Media;
using System.Windows.Media.Imaging;
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
public static class ImageAssist
{
@@ -92,7 +96,7 @@ public static class ImageAssist
///
public static BitmapSource LoadFileImage(string filename, int width, int height)
{
- var bm = WindowsThumbnailProvider.GetThumbnail(filename, width, height, ThumbnailOptions.None);
+ var bm = Assists.WindowsThumbnailProvider.GetThumbnail(filename, width, height, Assists.ThumbnailOptions.None);
return Imaging.CreateBitmapSourceFromHBitmap(
bm.GetHbitmap(),
IntPtr.Zero,
@@ -134,18 +138,5 @@ public static class ImageAssist
return bitmap;
}
- public static ImageSource ConvertBitmapToImageSource(Bitmap bitmap)
- {
- using (MemoryStream memory = new MemoryStream())
- {
- bitmap.Save(memory, System.Drawing.Imaging.ImageFormat.Png);
- memory.Position = 0;
- BitmapImage bitmapImage = new BitmapImage();
- bitmapImage.BeginInit();
- bitmapImage.StreamSource = memory;
- bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
- bitmapImage.EndInit();
- return bitmapImage;
- }
- }
+
}
diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs
new file mode 100644
index 0000000..47b7049
--- /dev/null
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs
@@ -0,0 +1,142 @@
+using System.Diagnostics;
+using System.IO;
+using System.Text;
+
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
+
+public static class LogAssist
+{
+ //public static void WriteSeriLog(string path, string message)
+ //{
+ // Log.Logger = new LoggerConfiguration().WriteTo.File(path).CreateLogger();
+ // Log.Error(message);
+ // Log.CloseAndFlush();
+ //}
+ public static void ToLog(this string strLog, string logFolder = default)
+ {
+ if (logFolder == default)
+ {
+ var assemblyPath = typeof(Assists.LogAssist).Assembly.Location;
+ var directory = Path.GetDirectoryName(assemblyPath);
+ logFolder = Path.Combine(directory, "Logs");
+ }
+
+ if (!Directory.Exists(logFolder))
+ {
+ Directory.CreateDirectory(logFolder);
+ }
+ //logFolder = Directory.GetCurrentDirectory();返回是Revit目录
+ var logFile = Path.Combine(logFolder, DateTime.Now.ToString("yyyy-MM-dd") + ".log");
+
+ var fs = File.Exists(logFile)
+ ? new FileStream(logFile, FileMode.Append, FileAccess.Write)
+ : new FileStream(logFile, FileMode.Create, FileAccess.Write);
+
+ using StreamWriter sw = new(fs);
+ sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss-ffff : ") + strLog);
+ sw.Close();
+ fs.Close();
+ }
+
+ public static void ToLog(this Exception execption, string logFolder = default)
+ {
+ if (logFolder == default)
+ {
+ var assemblyPath = typeof(Assists.LogAssist).Assembly.Location;
+ var directory = Path.GetDirectoryName(assemblyPath);
+ logFolder = $"{directory}\\Logs";
+ }
+
+ if (Directory.Exists(logFolder))
+ {
+ logFolder = Directory.GetCurrentDirectory();
+ }
+ else
+ {
+ Directory.CreateDirectory(logFolder);
+ }
+
+ var logFile = Path.Combine(logFolder, DateTime.Now.ToString("yyyy-MM-dd") + ".log");
+
+ var fs = File.Exists(logFile)
+ ? new FileStream(logFile, FileMode.Append, FileAccess.Write)
+ : new FileStream(logFile, FileMode.Create, FileAccess.Write);
+
+ using StreamWriter sw = new(fs);
+ sw.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss-ffff : ") + execption.Message);
+ sw.Close();
+ fs.Close();
+ }
+
+ ///
+ /// 输出到桌面
+ ///
+ ///
+ ///
+ public static void WriteTextFile(this StringBuilder sb, string fileName = "输出日志")
+ {
+ var filePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + $"\\{fileName}.txt";
+ File.WriteAllText(filePath, sb.ToString());
+ System.Diagnostics.Process.Start(filePath);
+ }
+
+ public static void WriteTextFile(this string lineContent, string filePath)
+ {
+ FileStream fs = new(filePath, FileMode.Create, FileAccess.Write);
+ using StreamWriter sw = new(fs);
+ sw.WriteLine(lineContent);
+ sw.Close();
+ fs.Close();
+ }
+
+ public static string GetCurrentMethodFullName()
+ {
+ string str1;
+ try
+ {
+ var num = 2;
+ StackTrace stackTrace = new();
+ var length = stackTrace.GetFrames()!.Length;
+ StackFrame frame;
+ string str;
+ bool flag;
+ do
+ {
+ var num1 = num;
+ num = num1 + 1;
+ frame = stackTrace.GetFrame(num1);
+ str = frame.GetMethod().DeclaringType?.ToString();
+ flag = str!.EndsWith("Exception") && num < length;
+ } while (flag);
+
+ var name = frame.GetMethod().Name;
+ str1 = string.Concat(str, ".", name);
+ }
+ catch
+ {
+ str1 = null;
+ }
+
+ return str1;
+ }
+
+ public static string ToChineseMessage(this Exception ex)
+ {
+ while (ex.InnerException != null)
+ {
+ ex = ex.InnerException;
+ }
+
+ var t = ex.GetType();
+ var currentUICulture = System.Threading.Thread.CurrentThread.CurrentUICulture;
+ System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CN");
+ var o = Activator.CreateInstance(t);
+ System.Threading.Thread.CurrentThread.CurrentUICulture = currentUICulture;
+
+ return ((Exception)o).Message;
+ }
+}
diff --git a/ShrlAlgoToolkit.Core/Assists/SingletonViewAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs
similarity index 84%
rename from ShrlAlgoToolkit.Core/Assists/SingletonViewAssist.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs
index 8c95186..e7d7291 100644
--- a/ShrlAlgoToolkit.Core/Assists/SingletonViewAssist.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs
@@ -1,6 +1,10 @@
using System.Windows;
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
public sealed record SingletonViewAssist
where T : Window, new()
diff --git a/ShrlAlgoToolkit.Core/Assists/StringAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs
similarity index 98%
rename from ShrlAlgoToolkit.Core/Assists/StringAssist.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs
index 26aa037..9ae7356 100644
--- a/ShrlAlgoToolkit.Core/Assists/StringAssist.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs
@@ -1,7 +1,11 @@
using System.Text;
using System.Text.RegularExpressions;
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
public class StringAssist
{
diff --git a/ShrlAlgoToolkit.Core/Assists/ThumbnailOptions.cs b/ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs
similarity index 55%
rename from ShrlAlgoToolkit.Core/Assists/ThumbnailOptions.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs
index e54dfd7..b05e0a8 100644
--- a/ShrlAlgoToolkit.Core/Assists/ThumbnailOptions.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs
@@ -1,4 +1,8 @@
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
public enum ThumbnailOptions
{
diff --git a/ShrlAlgoToolkit.Core/Assists/ValidatorAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs
similarity index 91%
rename from ShrlAlgoToolkit.Core/Assists/ValidatorAssist.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs
index b837e8f..5913af0 100644
--- a/ShrlAlgoToolkit.Core/Assists/ValidatorAssist.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs
@@ -2,32 +2,17 @@
using System.Text;
using System.Text.RegularExpressions;
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
///
/// 各种验证帮助类
///
-internal class ValidatorAssist
+public class ValidatorAssist
{
- ///
- /// 验证用户名:必须以字母开头,可以包含字母、数字、“_”、“.”,至少5个字符
- ///
- ///
- ///
- public static bool CheckUserId(string str)
- {
- var regex = new Regex("[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}");
- if (regex.Match(str).Success)
- {
- if (regex.Matches(str)[0].Value.Length == str.Length)
- {
- return true;
- }
- }
-
- return false;
- }
-
///
/// 截取指定长度字符串
///
@@ -215,26 +200,6 @@ internal class ValidatorAssist
return new Regex(@"^([0-9])[0-9]*(\.\w*)?$").IsMatch(strNumber);
}
- ///
- /// 验证是否全部汉语
- ///
- ///
- ///
- public static bool IsHanyuAll(string str)
- {
- var regex = new Regex("[\u4e00-\u9fa5]");
- //匹配的内容长度和被验证的内容长度相同时,验证通过
- if (regex.Match(str).Success)
- {
- if (regex.Matches(str).Count == str.Length)
- {
- return true;
- }
- }
- //其它,未通过
- return false;
- }
-
///
/// 验证是否为整数 如果为空,认为验证不合格 返回false
///
diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs
index 44e4407..fb3e908 100644
--- a/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs
@@ -194,7 +194,7 @@ public static class WinDialogAssist
where T : Window, new()
{
AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
- var view = SingletonViewAssist.GetInstance(out var isNewCreate);
+ var view = Assists.SingletonViewAssist.GetInstance(out var isNewCreate);
if (isNewCreate)
{
view.DataContext = viewModel;
diff --git a/ShrlAlgoToolkit.Core/Assists/WindowsThumbnailProvider.cs b/ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs
similarity index 80%
rename from ShrlAlgoToolkit.Core/Assists/WindowsThumbnailProvider.cs
rename to ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs
index 3548ce3..66a1e9b 100644
--- a/ShrlAlgoToolkit.Core/Assists/WindowsThumbnailProvider.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs
@@ -3,7 +3,11 @@ using System.Drawing.Imaging;
using System.IO;
using System.Runtime.InteropServices;
-namespace ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit.Core.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Core;
+
+namespace ShrlAlgoToolkit.RevitAddins.Assists;
///
/// 获取Windows缩略图
@@ -80,7 +84,7 @@ public class WindowsThumbnailProvider
// The following parameter is not used - binding context.
IntPtr pbc,
ref Guid riid,
- [MarshalAs(UnmanagedType.Interface)] out IShellItem shellItem
+ [MarshalAs(UnmanagedType.Interface)] out Assists.WindowsThumbnailProvider.IShellItem shellItem
);
private static IntPtr GetHBitmap(string fileName, int width, int height, ThumbnailOptions options)
@@ -93,13 +97,13 @@ public class WindowsThumbnailProvider
throw Marshal.GetExceptionForHR(retCode);
}
- var nativeSize = new NativeSize { Width = width, Height = height };
+ var nativeSize = new Assists.WindowsThumbnailProvider.NativeSize { Width = width, Height = height };
- var hr = ((IShellItemImageFactory)nativeShellItem).GetImage(nativeSize, options, out var hBitmap);
+ var hr = ((Assists.WindowsThumbnailProvider.IShellItemImageFactory)nativeShellItem).GetImage(nativeSize, options, out var hBitmap);
Marshal.ReleaseComObject(nativeShellItem);
- return hr == HResult.Ok ? hBitmap : throw Marshal.GetExceptionForHR((int)hr);
+ return hr == Assists.WindowsThumbnailProvider.HResult.Ok ? hBitmap : throw Marshal.GetExceptionForHR((int)hr);
}
internal enum HResult
@@ -126,13 +130,13 @@ public class WindowsThumbnailProvider
{
void BindToHandler(IntPtr pbc, [MarshalAs(UnmanagedType.LPStruct)] Guid bhid, [MarshalAs(UnmanagedType.LPStruct)] Guid riid, out IntPtr ppv);
- void Compare(IShellItem psi, uint hint, out int piOrder);
+ void Compare(Assists.WindowsThumbnailProvider.IShellItem psi, uint hint, out int piOrder);
void GetAttributes(uint sfgaoMask, out uint psfgaoAttribs);
- void GetDisplayName(SIGDN sigdnName, out IntPtr ppszName);
+ void GetDisplayName(Assists.WindowsThumbnailProvider.SIGDN sigdnName, out IntPtr ppszName);
- void GetParent(out IShellItem ppsi);
+ void GetParent(out Assists.WindowsThumbnailProvider.IShellItem ppsi);
}
[ComImport]
@@ -141,7 +145,7 @@ public class WindowsThumbnailProvider
internal interface IShellItemImageFactory
{
[PreserveSig]
- HResult GetImage([In] [MarshalAs(UnmanagedType.Struct)] NativeSize size, [In] ThumbnailOptions flags, [Out] out IntPtr phbm);
+ Assists.WindowsThumbnailProvider.HResult GetImage([In] [MarshalAs(UnmanagedType.Struct)] Assists.WindowsThumbnailProvider.NativeSize size, [In] ThumbnailOptions flags, [Out] out IntPtr phbm);
}
[StructLayout(LayoutKind.Sequential)]
diff --git a/ShrlAlgoToolkit.Mvvm/Attributes/GreaterThanAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/GreaterThanAttribute.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Attributes/GreaterThanAttribute.cs
rename to ShrlAlgoToolkit.RevitAddins/Attributes/GreaterThanAttribute.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Attributes/IsNumericAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/IsNumericAttribute.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Attributes/IsNumericAttribute.cs
rename to ShrlAlgoToolkit.RevitAddins/Attributes/IsNumericAttribute.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Attributes/MaximumAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/MaximumAttribute.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Attributes/MaximumAttribute.cs
rename to ShrlAlgoToolkit.RevitAddins/Attributes/MaximumAttribute.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Attributes/MinimumAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/MinimumAttribute.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Attributes/MinimumAttribute.cs
rename to ShrlAlgoToolkit.RevitAddins/Attributes/MinimumAttribute.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Attributes/NotNullOrEmptyAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/NotNullOrEmptyAttribute.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Attributes/NotNullOrEmptyAttribute.cs
rename to ShrlAlgoToolkit.RevitAddins/Attributes/NotNullOrEmptyAttribute.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Attributes/UndefinedCharAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/UndefinedCharAttribute.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Attributes/UndefinedCharAttribute.cs
rename to ShrlAlgoToolkit.RevitAddins/Attributes/UndefinedCharAttribute.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/BooleanConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs
similarity index 83%
rename from ShrlAlgoToolkit.Mvvm/Converters/BooleanConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs
index 492e280..da50234 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/BooleanConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs
@@ -2,7 +2,11 @@
using System.Globalization;
using System.Windows.Data;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
public class BooleanConverter : IValueConverter
{
diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/BooleanToVisConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanToVisConverter.cs
new file mode 100644
index 0000000..1e50abc
--- /dev/null
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanToVisConverter.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Linq;
+using System.Windows;
+
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
+
+public class BooleanToVisConverter : Converters.BooleanConverter
+{
+ public BooleanToVisConverter() : base(Visibility.Visible, Visibility.Collapsed)
+ {
+ }
+}
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/ColorToBrushConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs
similarity index 80%
rename from ShrlAlgoToolkit.Mvvm/Converters/ColorToBrushConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs
index a41edd2..4d45fd5 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/ColorToBrushConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs
@@ -2,7 +2,11 @@
using System.Windows.Data;
using System.Windows.Media;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
public class ColorToBrushConverter : IValueConverter
{
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/ComparisonConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs
similarity index 91%
rename from ShrlAlgoToolkit.Mvvm/Converters/ComparisonConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs
index d45da31..2d9209f 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/ComparisonConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs
@@ -1,7 +1,11 @@
using System.Globalization;
using System.Windows.Data;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
public class ComparisonConverter : IValueConverter
{
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/EnumDescriptionExtension.cs b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs
similarity index 84%
rename from ShrlAlgoToolkit.Mvvm/Converters/EnumDescriptionExtension.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs
index 84dff24..fd2caa3 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/EnumDescriptionExtension.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs
@@ -3,7 +3,11 @@ using System.ComponentModel;
using System.Linq;
using System.Windows.Markup;
-namespace ShrlAlgoToolkit.Mvvm.Converters
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters
{
public class EnumDescriptionExtension : MarkupExtension
{
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/EnumDescriptionTypeConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs
similarity index 89%
rename from ShrlAlgoToolkit.Mvvm/Converters/EnumDescriptionTypeConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs
index c0049bc..7c6969c 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/EnumDescriptionTypeConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs
@@ -2,7 +2,11 @@
using System.Globalization;
using System.Reflection;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
///
/// 枚举类上加特性[TypeConverter(typeof(EnumDescriptionTypeConverter))]
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/EnumSourceAndConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs
similarity index 94%
rename from ShrlAlgoToolkit.Mvvm/Converters/EnumSourceAndConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs
index a783cdf..37fb51c 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/EnumSourceAndConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs
@@ -4,7 +4,11 @@ using System.Globalization;
using System.Reflection;
using System.Windows.Data;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
///
/// Description(描述特性)的枚举转换同时也是枚举源的集合
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/InvertBooleanConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs
similarity index 74%
rename from ShrlAlgoToolkit.Mvvm/Converters/InvertBooleanConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs
index 8580f0a..8241739 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/InvertBooleanConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs
@@ -1,7 +1,11 @@
using System.Globalization;
using System.Windows.Data;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
public class InvertBooleanConverter : IValueConverter
{
diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/InverterBooleanToVisConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/InverterBooleanToVisConverter.cs
new file mode 100644
index 0000000..ddbd31b
--- /dev/null
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/InverterBooleanToVisConverter.cs
@@ -0,0 +1,15 @@
+using System.Windows;
+
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
+
+public class InverterBooleanToVisConverter : Converters.BooleanConverter
+{
+ public InverterBooleanToVisConverter() : base(Visibility.Collapsed, Visibility.Visible)
+ {
+ }
+}
+
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/MarkupConverters.cs b/ShrlAlgoToolkit.RevitAddins/Converters/MarkupConverters.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/Converters/MarkupConverters.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/MarkupConverters.cs
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/NotNullToVisibilityConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs
similarity index 87%
rename from ShrlAlgoToolkit.Mvvm/Converters/NotNullToVisibilityConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs
index 2dda641..5cd7f29 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/NotNullToVisibilityConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs
@@ -4,7 +4,11 @@ using System.Linq;
using System.Windows;
using System.Windows.Data;
-namespace ShrlAlgoToolkit.Mvvm.Converters
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters
{
///
/// Converts null or not null to a .
diff --git a/ShrlAlgoToolkit.Mvvm/Converters/SearchValueConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs
similarity index 82%
rename from ShrlAlgoToolkit.Mvvm/Converters/SearchValueConverter.cs
rename to ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs
index 95bba01..674cb59 100644
--- a/ShrlAlgoToolkit.Mvvm/Converters/SearchValueConverter.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs
@@ -1,6 +1,10 @@
using System.Windows.Data;
-namespace ShrlAlgoToolkit.Mvvm.Converters;
+using ShrlAlgoToolkit.RevitAddins.Converters;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.Mvvm;
+
+namespace ShrlAlgoToolkit.RevitAddins.Converters;
public class SearchValueConverter : IMultiValueConverter
{
diff --git a/ShrlAlgoToolkit.Core/Extensions/DistinctExtensions.cs b/ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs
similarity index 81%
rename from ShrlAlgoToolkit.Core/Extensions/DistinctExtensions.cs
rename to ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs
index 4d0ddab..735ac27 100644
--- a/ShrlAlgoToolkit.Core/Extensions/DistinctExtensions.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs
@@ -1,4 +1,6 @@
-namespace ShrlAlgoToolkit.Core.Extensions;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+
+namespace ShrlAlgoToolkit.RevitAddins.Extensions;
///
/// 自定义Distinct扩展方法
@@ -8,9 +10,9 @@ public static class DistinctExtensions
public static IEnumerable Distinct(
this IEnumerable source, Func comparer)
where T : class
- => source.Distinct(new DynamicEqualityComparer(comparer));
+ => source.Distinct(new DistinctExtensions.DynamicEqualityComparer(comparer));
public static IEnumerable Distinct(this IEnumerable source, Func keySelector)
- => source.Distinct(new CommonEqualityComparer(keySelector));
+ => source.Distinct(new DistinctExtensions.CommonEqualityComparer(keySelector));
private sealed class DynamicEqualityComparer : IEqualityComparer
where T : class
{
diff --git a/ShrlAlgoToolkit.Core/Extensions/ImageExtensions.cs b/ShrlAlgoToolkit.RevitAddins/Extensions/ImageExtensions.cs
similarity index 72%
rename from ShrlAlgoToolkit.Core/Extensions/ImageExtensions.cs
rename to ShrlAlgoToolkit.RevitAddins/Extensions/ImageExtensions.cs
index 2fe470c..b471e5f 100644
--- a/ShrlAlgoToolkit.Core/Extensions/ImageExtensions.cs
+++ b/ShrlAlgoToolkit.RevitAddins/Extensions/ImageExtensions.cs
@@ -1,14 +1,12 @@
-using ShrlAlgoToolkit.Core.Assists;
-
-using System.Drawing;
+using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
-using System.Reflection;
using System.Windows;
using System.Windows.Interop;
+using System.Windows.Media;
using System.Windows.Media.Imaging;
-namespace ShrlAlgoToolkit.Core.Extensions;
+namespace ShrlAlgoToolkit.RevitAddins.Extensions;
public static class ImageExtensions
{
@@ -67,5 +65,19 @@ public static class ImageExtensions
BitmapSizeOptions.FromWidthAndHeight(icon.Width, icon.Height)
);
}
+ public static ImageSource ConvertBitmapToImageSource(this Bitmap bitmap)
+ {
+ using (MemoryStream memory = new MemoryStream())
+ {
+ bitmap.Save(memory, System.Drawing.Imaging.ImageFormat.Png);
+ memory.Position = 0;
+ BitmapImage bitmapImage = new BitmapImage();
+ bitmapImage.BeginInit();
+ bitmapImage.StreamSource = memory;
+ bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
+ bitmapImage.EndInit();
+ return bitmapImage;
+ }
+ }
}
diff --git a/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs b/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs
index 54510c1..e3d55c4 100644
--- a/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs
+++ b/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs
@@ -1,5 +1,4 @@
-global using ShrlAlgoToolkit.Core.Extensions;
-global using ShrlAlgoToolkit.Revit.Assists;
+global using ShrlAlgoToolkit.Revit.Assists;
global using ShrlAlgoToolkit.Revit.Extensions;
global using JetBrains.Annotations;
global using Autodesk.Revit.UI;
diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs
index 3197d8c..5341ef6 100644
--- a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs
@@ -15,7 +15,12 @@ using ShrlAlgoToolkit.Core.Assists;
using ShrlAlgoToolkit.RevitAddins.Assists;
using ShrlAlgoToolkit.RevitAddins.Windows;
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.ModelManager;
@@ -426,7 +431,7 @@ public partial class ModelCheckViewModel : ObservableObject
}
catch (Exception ex)
{
- LogAssist.ToLog(ex.Message);
+ Assists.LogAssist.ToLog(ex.Message);
}
}
diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs
index bd0fd57..ae69766 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs
@@ -3,6 +3,12 @@ using Autodesk.Revit.Attributes;
using Nice3point.Revit.Toolkit.External;
using ShrlAlgoToolkit.Core.Assists;
using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvCivil;
diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs
index 4429977..1cf9ac0 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs
@@ -7,8 +7,12 @@ using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using Nice3point.Revit.Toolkit.External.Handlers;
using ShrlAlgoToolkit.Core.Assists;
-
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvCivil
{
diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs
index b3e0e0b..2e635dc 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs
@@ -7,8 +7,24 @@ using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using Nice3point.Revit.Toolkit.External.Handlers;
using ShrlAlgoToolkit.Core.Assists;
-
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvCivil;
@@ -127,7 +143,7 @@ public partial class WallFinishesViewModel(List wallTypes) : Observabl
}
catch (Exception ex)
{
- LogAssist.ToLog(ex.Message);
+ Assists.LogAssist.ToLog(ex.Message);
}
},
"创建墙面饰面"
@@ -240,7 +256,7 @@ public partial class WallFinishesViewModel(List wallTypes) : Observabl
}
catch (Exception ex)
{
- LogAssist.ToLog(ex.Message);
+ Assists.LogAssist.ToLog(ex.Message);
}
}
@@ -302,7 +318,7 @@ public partial class WallFinishesViewModel(List wallTypes) : Observabl
}
catch (Exception ex)
{
- LogAssist.ToLog(ex.Message);
+ Assists.LogAssist.ToLog(ex.Message);
}
//WallUtils.AllowWallJoinAtEnd(w, 0);
diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs
index 35cb188..86921fe 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs
@@ -14,6 +14,13 @@ using Microsoft.Xaml.Behaviors;
using Nice3point.Revit.Toolkit.External.Handlers;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+
diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs
index 634d6c2..3920108 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs
@@ -11,8 +11,18 @@ using Nice3point.Revit.Toolkit.External.Handlers;
using ShrlAlgoToolkit.Core.Assists;
using ShrlAlgoToolkit.Mvvm.Attributes;
-
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvCommon
{
diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs
index 93f3faa..669d1fd 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs
@@ -8,8 +8,12 @@ using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using Nice3point.Revit.Toolkit.External.Handlers;
using ShrlAlgoToolkit.Core.Assists;
-
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvCommon;
@@ -241,7 +245,7 @@ public partial class PipesCreatorViewModel : ObservableObject
//var filePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\问题管线.txt";
//File.WriteAllText(filePath, sb.ToString());
//WinDialogAssist.OpenFolderAndSelectFile(filePath);
- LogAssist.WriteTextFile("问题管线", sb.ToString());
+ Assists.LogAssist.WriteTextFile("问题管线", sb.ToString());
}
//UiDocument.Selection.SetElementIds(ids);
diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs
index 59a2c19..3a03a1f 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs
@@ -18,6 +18,18 @@ using ShrlAlgoToolkit.RevitAddins.Assists;
using static ShrlAlgoToolkit.RevitAddins.Assists.RevitFileAssist;
using Settings = ShrlAlgoToolkit.RevitAddins.Properties.Settings;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvFamily.FamilyLibrary;
diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyModel.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyModel.cs
index 94af6a0..9339bf7 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyModel.cs
@@ -5,10 +5,15 @@ using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using ShrlAlgoToolkit.Core.Assists;
-using ShrlAlgoToolkit.Core.Extensions;
using System.IO;
using System.Windows.Media.Imaging;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvFamily.FamilyLibrary;
@@ -17,7 +22,7 @@ public partial class FamilyModel : ObservableObject
///
/// 族库缩略图
///
- public BitmapSource ImageData => ImageAssist.LoadFileImage(Path, 128, 128);
+ public BitmapSource ImageData => Assists.ImageAssist.LoadFileImage(Path, 128, 128);
///
/// 最近使用面板
diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs
index 0817145..6e948db 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs
@@ -12,7 +12,12 @@ using System.Collections;
using System.IO;
using System.Text;
using System.Windows;
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvFamily;
diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml
index 456e12b..0a5d6dd 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml
+++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml
@@ -2,14 +2,14 @@
x:Class="ShrlAlgoToolkit.RevitAddins.RvFamily.RenameFamilyView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:mvvm="clr-namespace:ShrlAlgoToolkit.RevitAddins.Assists"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
xmlns:conv="clr-namespace:ShrlAlgoToolkit.RevitAddins.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvFamily"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:mvvm="clr-namespace:ShrlAlgoToolkit.RevitAddins.Assists"
xmlns:ui="https://github.com/ShrlAlgo/Melskin"
- xmlns:validationRules="clr-namespace:ShrlAlgoToolkit.Mvvm.ValidationRules;assembly=ShrlAlgoToolkit.Mvvm"
+ xmlns:validationRules="clr-namespace:ShrlAlgoToolkit.Mvvm.ValidationRules"
Title="重命名族"
Width="900"
Height="600"
diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameTypeView.xaml b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameTypeView.xaml
index 615a8b4..a6b185a 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameTypeView.xaml
+++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameTypeView.xaml
@@ -9,7 +9,7 @@
xmlns:local="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvFamily"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ui="https://github.com/ShrlAlgo/Melskin"
- xmlns:validationRules="clr-namespace:ShrlAlgoToolkit.Mvvm.ValidationRules;assembly=ShrlAlgoToolkit.Mvvm"
+ xmlns:validationRules="clr-namespace:ShrlAlgoToolkit.Mvvm.ValidationRules"
Title="重命名族类型"
Width="900"
Height="600"
diff --git a/ShrlAlgoToolkit.RevitAddins/RvMEP/AutoConnectOptionsView.xaml b/ShrlAlgoToolkit.RevitAddins/RvMEP/AutoConnectOptionsView.xaml
index e6e75d9..223b90f 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvMEP/AutoConnectOptionsView.xaml
+++ b/ShrlAlgoToolkit.RevitAddins/RvMEP/AutoConnectOptionsView.xaml
@@ -2,7 +2,7 @@
x:Class="ShrlAlgoToolkit.RevitAddins.RvMEP.AutoConnectOptionsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:converters="clr-namespace:ShrlAlgoToolkit.Mvvm.Converters;assembly=ShrlAlgoToolkit.Mvvm"
+ xmlns:converters="clr-namespace:ShrlAlgoToolkit.RevitAddins.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvMEP"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
@@ -105,7 +105,7 @@
+ IsEnabled="{Binding IsChecked, Converter={StaticResource BooleanToVisibilityConverter}, ElementName=LbCustom}"
+ Text="{Binding Angle, UpdateSourceTrigger=PropertyChanged, StringFormat={}{0}°}" />
diff --git a/ShrlAlgoToolkit.RevitAddins/RvMEP/ClashResolveViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvMEP/ClashResolveViewModel.cs
index 06f7434..6f53de6 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvMEP/ClashResolveViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvMEP/ClashResolveViewModel.cs
@@ -10,8 +10,24 @@ using ShrlAlgoToolkit.Core.Assists;
using System.Diagnostics;
using System.Windows;
-
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvMEP;
diff --git a/ShrlAlgoToolkit.RevitAddins/RvView/CivilViewFilterCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvView/CivilViewFilterCmd.cs
index 331dacd..84142c6 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvView/CivilViewFilterCmd.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvView/CivilViewFilterCmd.cs
@@ -4,8 +4,24 @@ using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Nice3point.Revit.Toolkit.External;
using ShrlAlgoToolkit.Core.Assists;
-
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvView;
@@ -71,7 +87,7 @@ public class CivilViewFilterCmd : ExternalCommand
catch (Exception e)
{
ErrorMessage = e.Message;
- LogAssist.ToLog(e.StackTrace);
+ Assists.LogAssist.ToLog(e.StackTrace);
Result = Result.Failed;
return;
}
@@ -115,7 +131,7 @@ public class CivilViewFilterCmd : ExternalCommand
catch (Exception e)
{
ErrorMessage = e.Message;
- LogAssist.ToLog(e.StackTrace);
+ Assists.LogAssist.ToLog(e.StackTrace);
Result = Result.Failed;
return;
}
@@ -168,7 +184,7 @@ public class CivilViewFilterCmd : ExternalCommand
catch (Exception e)
{
ErrorMessage = e.Message;
- LogAssist.ToLog(e.StackTrace);
+ Assists.LogAssist.ToLog(e.StackTrace);
Result = Result.Failed;
return;
}
@@ -198,7 +214,7 @@ public class CivilViewFilterCmd : ExternalCommand
catch (Exception e)
{
MessageBox.Show(e.Message);
- LogAssist.ToLog(e.StackTrace);
+ Assists.LogAssist.ToLog(e.StackTrace);
}
#endif
@@ -254,7 +270,7 @@ public class CivilViewFilterCmd : ExternalCommand
catch (Exception e)
{
MessageBox.Show(e.Message);
- LogAssist.ToLog(e.StackTrace);
+ Assists.LogAssist.ToLog(e.StackTrace);
}
#elif REVIT2020 || REVIT2019
diff --git a/ShrlAlgoToolkit.RevitAddins/RvView/ElementsControlCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvView/ElementsControlCmd.cs
index 7243d69..d968b49 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvView/ElementsControlCmd.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvView/ElementsControlCmd.cs
@@ -6,7 +6,12 @@ using Autodesk.Revit.UI;
using Nice3point.Revit.Toolkit.External;
using ShrlAlgoToolkit.Core.Assists;
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvView;
diff --git a/ShrlAlgoToolkit.RevitAddins/RvView/SystemDisplayView.xaml b/ShrlAlgoToolkit.RevitAddins/RvView/SystemDisplayView.xaml
index b686fb2..e66cb65 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvView/SystemDisplayView.xaml
+++ b/ShrlAlgoToolkit.RevitAddins/RvView/SystemDisplayView.xaml
@@ -2,7 +2,7 @@
x:Class="ShrlAlgoToolkit.RevitAddins.RvView.SystemDisplayView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:converters="clr-namespace:ShrlAlgoToolkit.Mvvm.Converters;assembly=ShrlAlgoToolkit.Mvvm"
+ xmlns:converters="clr-namespace:ShrlAlgoToolkit.RevitAddins.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvView"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
diff --git a/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerView.xaml b/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerView.xaml
index 89fa243..0d3abb8 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerView.xaml
+++ b/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerView.xaml
@@ -3,7 +3,7 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
- xmlns:converters="clr-namespace:ShrlAlgoToolkit.Mvvm.Converters;assembly=ShrlAlgoToolkit.Mvvm"
+ xmlns:converters="clr-namespace:ShrlAlgoToolkit.RevitAddins.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvView"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
diff --git a/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerViewModel.cs
index b87aa25..6b48a83 100644
--- a/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerViewModel.cs
+++ b/ShrlAlgoToolkit.RevitAddins/RvView/ViewManagerViewModel.cs
@@ -8,7 +8,36 @@ using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using Nice3point.Revit.Toolkit.External.Handlers;
using ShrlAlgoToolkit.Core.Assists;
-
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.RvView;
@@ -185,7 +214,7 @@ public partial class ViewManagerViewModel : ObservableObject
}
catch (Exception e)
{
- LogAssist.ToLog(e.Message);
+ Assists.LogAssist.ToLog(e.Message);
}
},
"复制视图"
@@ -218,7 +247,7 @@ public partial class ViewManagerViewModel : ObservableObject
}
catch (Exception e)
{
- LogAssist.ToLog(e.Message);
+ Assists.LogAssist.ToLog(e.Message);
}
},
"复制视图"
@@ -251,7 +280,7 @@ public partial class ViewManagerViewModel : ObservableObject
}
catch (Exception e)
{
- LogAssist.ToLog(e.Message);
+ Assists.LogAssist.ToLog(e.Message);
}
},
"复制视图"
@@ -312,7 +341,7 @@ public partial class ViewManagerViewModel : ObservableObject
return true;
}
var item = o as ViewManagerModel;
- return item.Name.Contains(SearchText) || EnumAssist.GetAttribute(item.UserViewType).Description.Contains(SearchText);
+ return item.Name.Contains(SearchText) || Assists.EnumAssist.GetAttribute(item.UserViewType).Description.Contains(SearchText);
};
}
diff --git a/ShrlAlgoToolkit.RevitAddins/Sai.RvKitsBak.addin b/ShrlAlgoToolkit.RevitAddins/Sai.RvKitsBak.addin
deleted file mode 100644
index d45e871..0000000
--- a/ShrlAlgoToolkit.RevitAddins/Sai.RvKitsBak.addin
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
- ShrlAlgo.RvKits.UIApp
- FF376A28-B8A4-4053-B06E-A7F9E77768D9
- Revit工具集
- Rv工具集
- Revit工具集
- ShrlAlgo.RvKits.dll
- == Edit in project's properties ==
- == Edit (company + authors + website) in project's properties ==
- NotVisibleInFamily
-
-
-
-
-
diff --git a/ShrlAlgoToolkit.RevitAddins/ShrlAlgo.RvKits.addin b/ShrlAlgoToolkit.RevitAddins/ShrlAlgo.RvKits.addin
index 36b3a47..7ae01d7 100644
--- a/ShrlAlgoToolkit.RevitAddins/ShrlAlgo.RvKits.addin
+++ b/ShrlAlgoToolkit.RevitAddins/ShrlAlgo.RvKits.addin
@@ -1,11 +1,13 @@
- 建模工具集
+ 夏格工具箱
+ 夏格工具箱
F:\04 程序开发\Revit Dev\Sai.RvKit\bin\Debug\2018\ShrlAlgoToolkit.RevitAddins.dll
9f27bd03-06f6-45aa-ad6c-3bbf64d6d2b8
ShrlAlgoToolkit.RevitAddins.UIRibbon.RvApp
ShrlAlgo
ShrlAlgo,https://github.com/ShrlAlgo
+ NotVisibleWhenNoActiveDocument
\ No newline at end of file
diff --git a/ShrlAlgoToolkit.RevitAddins/ShrlAlgoToolkit.RevitAddins.csproj b/ShrlAlgoToolkit.RevitAddins/ShrlAlgoToolkit.RevitAddins.csproj
index f468d2f..2b858b2 100644
--- a/ShrlAlgoToolkit.RevitAddins/ShrlAlgoToolkit.RevitAddins.csproj
+++ b/ShrlAlgoToolkit.RevitAddins/ShrlAlgoToolkit.RevitAddins.csproj
@@ -67,7 +67,7 @@
None
..\bin\Release\$(RevitVersion)
-
+
C:\Program Files (x86)\Inno Setup 6\ISCC.exe
$(MSBuildProjectDirectory)\$(MSBuildProjectName).iss
@@ -94,10 +94,10 @@
-
+
@@ -105,6 +105,7 @@
+
@@ -115,14 +116,10 @@
-
-
- Never
-
Never
@@ -144,8 +141,6 @@
-
-
diff --git a/ShrlAlgoToolkit.RevitAddins/UIRibbon/FamilyApp.cs b/ShrlAlgoToolkit.RevitAddins/UIRibbon/FamilyApp.cs
index 9534d52..f57cc0a 100644
--- a/ShrlAlgoToolkit.RevitAddins/UIRibbon/FamilyApp.cs
+++ b/ShrlAlgoToolkit.RevitAddins/UIRibbon/FamilyApp.cs
@@ -11,6 +11,12 @@ using Autodesk.Windows;
using ShrlAlgoToolkit.RevitAddins.Properties;
using ShrlAlgoToolkit.RevitAddins.RvFamily;
using ShrlAlgoToolkit.RevitAddins.RvFamily.FamilyLibrary;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.UIRibbon;
diff --git a/ShrlAlgoToolkit.RevitAddins/UIRibbon/ModifyTabApp.cs b/ShrlAlgoToolkit.RevitAddins/UIRibbon/ModifyTabApp.cs
index faa89ce..db24195 100644
--- a/ShrlAlgoToolkit.RevitAddins/UIRibbon/ModifyTabApp.cs
+++ b/ShrlAlgoToolkit.RevitAddins/UIRibbon/ModifyTabApp.cs
@@ -11,6 +11,126 @@ using ShrlAlgoToolkit.RevitAddins.Assists;
using ShrlAlgoToolkit.RevitAddins.Properties;
using ShrlAlgoToolkit.RevitAddins.RvCommon;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Assists;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.UIRibbon;
diff --git a/ShrlAlgoToolkit.RevitAddins/UIRibbon/RvApp.cs b/ShrlAlgoToolkit.RevitAddins/UIRibbon/RvApp.cs
index 6e6cae2..ac9a589 100644
--- a/ShrlAlgoToolkit.RevitAddins/UIRibbon/RvApp.cs
+++ b/ShrlAlgoToolkit.RevitAddins/UIRibbon/RvApp.cs
@@ -90,9 +90,9 @@ public class RvApp : ExternalApplication
_ = new TabManagerApp(Application);
_ = new FamilyApp(Application, UiApplication);
- if (RevitAddins.Properties.Settings.Default.IsActiveAutoSave)
+ if (Settings.Default.IsActiveAutoSave)
{
- var interval = RevitAddins.Properties.Settings.Default.AutoSaveIntervalTime * 60_000;
+ var interval = Settings.Default.AutoSaveIntervalTime * 60_000;
saveTimer.Interval = interval;
saveTimer.Elapsed -= OnTimedEvent;
saveTimer.Elapsed += OnTimedEvent;
diff --git a/ShrlAlgoToolkit.RevitAddins/UIRibbon/TabManagerApp.cs b/ShrlAlgoToolkit.RevitAddins/UIRibbon/TabManagerApp.cs
index dcaa878..dc9393d 100644
--- a/ShrlAlgoToolkit.RevitAddins/UIRibbon/TabManagerApp.cs
+++ b/ShrlAlgoToolkit.RevitAddins/UIRibbon/TabManagerApp.cs
@@ -2,6 +2,18 @@
using Autodesk.Windows;
using ShrlAlgoToolkit.RevitAddins.Properties;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
+using ShrlAlgoToolkit.RevitAddins.Extensions;
+using ShrlAlgoToolkit;
+using ShrlAlgoToolkit.RevitAddins;
namespace ShrlAlgoToolkit.RevitAddins.UIRibbon;
diff --git a/ShrlAlgoToolkit.Mvvm/ValidationRules/DoubleValidationRule.cs b/ShrlAlgoToolkit.RevitAddins/ValidationRules/DoubleValidationRule.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/ValidationRules/DoubleValidationRule.cs
rename to ShrlAlgoToolkit.RevitAddins/ValidationRules/DoubleValidationRule.cs
diff --git a/ShrlAlgoToolkit.Mvvm/ValidationRules/RangeVaildationRule.cs b/ShrlAlgoToolkit.RevitAddins/ValidationRules/RangeVaildationRule.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/ValidationRules/RangeVaildationRule.cs
rename to ShrlAlgoToolkit.RevitAddins/ValidationRules/RangeVaildationRule.cs
diff --git a/ShrlAlgoToolkit.Mvvm/ValidationRules/RequiredValidationRule.cs b/ShrlAlgoToolkit.RevitAddins/ValidationRules/RequiredValidationRule.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/ValidationRules/RequiredValidationRule.cs
rename to ShrlAlgoToolkit.RevitAddins/ValidationRules/RequiredValidationRule.cs
diff --git a/ShrlAlgoToolkit.Mvvm/ValidationRules/UndefinedCharRules.cs b/ShrlAlgoToolkit.RevitAddins/ValidationRules/UndefinedCharRules.cs
similarity index 100%
rename from ShrlAlgoToolkit.Mvvm/ValidationRules/UndefinedCharRules.cs
rename to ShrlAlgoToolkit.RevitAddins/ValidationRules/UndefinedCharRules.cs
diff --git a/ShrlAlgoToolkit.RevitAddins/WPFUI.xaml b/ShrlAlgoToolkit.RevitAddins/WPFUI.xaml
index 70f5904..09f8214 100644
--- a/ShrlAlgoToolkit.RevitAddins/WPFUI.xaml
+++ b/ShrlAlgoToolkit.RevitAddins/WPFUI.xaml
@@ -1,12 +1,12 @@
+ mc:Ignorable="d">
@@ -41,7 +41,7 @@
-
+