From 97c0b18dc73cdd2cc81964661ee0dffed2ba56e9 Mon Sep 17 00:00:00 2001 From: GG Z <903524121@qq.com> Date: Fri, 20 Feb 2026 16:47:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E7=90=86=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Assists/RevitFileAssist.cs | 2 +- .../ShrlAlgoToolkit.Revit.projitems | 1 + .../Assists/EnumAssist.cs | 21 -- .../Assists/ImageAssist.cs | 12 +- .../Assists/LogAssist.cs | 4 - .../Assists/SingletonViewAssist.cs | 4 - .../Assists/StringAssist.cs | 339 ------------------ .../Assists/ThumbnailOptions.cs | 6 +- .../Assists/ValidatorAssist.cs | 4 - .../Assists/WinDialogAssist.cs | 2 - .../Assists/WindowsThumbnailProvider.cs | 4 - .../Attributes/GreaterThanAttribute.cs | 2 +- .../Attributes/IsNumericAttribute.cs | 2 +- .../Attributes/MaximumAttribute.cs | 2 +- .../Attributes/MinimumAttribute.cs | 2 +- .../Attributes/NotNullOrEmptyAttribute.cs | 2 +- .../Attributes/UndefinedCharAttribute.cs | 2 +- .../Converters/BooleanConverter.cs | 7 +- .../Converters/BooleanToVisConverter.cs | 8 +- .../Converters/ColorToBrushConverter.cs | 4 - .../Converters/ComparisonConverter.cs | 4 - .../Converters/EnumDescriptionExtension.cs | 8 +- .../EnumDescriptionTypeConverter.cs | 4 - .../Converters/EnumSourceAndConverter.cs | 4 - .../Converters/InvertBooleanConverter.cs | 4 - .../InverterBooleanToVisConverter.cs | 4 - .../Converters/MarkupConverters.cs | 3 +- .../NotNullToVisibilityConverter.cs | 8 +- .../Converters/SearchValueConverter.cs | 4 - .../Extensions/CommonExtensions.cs | 18 + .../Extensions/DistinctExtensions.cs | 4 +- .../Extensions/StringExtensions.cs | 300 ++++++++++++++++ ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs | 6 +- .../ModelManager/CorrectReferLevelExecutes.cs | 2 - .../ModelManager/ModelCheckCmd.cs | 1 - .../ModelManager/ModelCheckView.xaml.cs | 8 +- .../ModelManager/ModelCheckViewModel.cs | 10 - .../ModelManager/SeparateModelCmd.cs | 1 - .../ModelManager/SeparateModelViewModel.cs | 10 +- .../RvCivil/BricksFinishesCmd.cs | 9 +- .../RvCivil/BricksFinishesViewModel.cs | 31 +- .../RvCivil/CivilConnectionCmd.cs | 7 - .../RvCivil/CreateOpeningsCmd.cs | 1 - .../RvCivil/CreateOpeningsViewModel.cs | 7 - .../RvCivil/FloorFinishesViewModel.cs | 1 - .../RvCivil/ModelSplitterCmd.cs | 1 - .../RvCivil/ResolveCivilConnectViewModel.cs | 1 - .../RvCivil/WallFinishesViewModel.cs | 20 -- .../RvCommon/AutoSaveCmd.cs | 1 - .../RvCommon/DetailSelectFiltersViewModel.cs | 1 - .../RvCommon/InstanceCreatorViewModel.cs | 15 - .../RvCommon/MergeSharedParametersCmd.cs | 4 - .../RvCommon/ModelByCurveCreatorViewModel.cs | 33 +- .../RvCommon/MoveElementByRelationshipCmd.cs | 8 +- .../RvCommon/PipesCreatorViewModel.cs | 7 - .../RvCommon/PlaceInstanceByCircleCmd.cs | 5 +- .../RvCommon/SplitImportInstanceCmd.cs | 8 +- .../RvFamily/CutGeologyByLoopCmd.cs | 3 +- .../RvFamily/ExplodeDwgCmd.cs | 1 - .../FamilyLibrary/FamilyLibraryViewModel.cs | 22 +- .../RvFamily/FamilyLibrary/FamilyModel.cs | 16 +- .../FamilyLibrary/LoadedFamilyDropHandler.cs | 1 - .../RvFamily/FamilyProcessorViewModel.cs | 21 +- .../RvFamily/RenameFamilyItem.cs | 3 +- .../RvFamily/RenameFamilyView.xaml | 82 ++--- .../RvFamily/RenameFamilyViewModel.cs | 1 - .../RvFamily/RenameTypeItem.cs | 3 +- .../RvFamily/RenameTypeViewModel.cs | 1 - .../RvFamily/ReplaceInstanceCmd.cs | 1 - .../RvFamily/UpgradeFamilyCmd.cs | 4 +- .../RvMEP/BloomConnectorCmd.cs | 1 - .../RvMEP/CableLayoutViewModel.cs | 1 - .../RvMEP/ClashReportViewModel.cs | 1 - .../RvMEP/ClashResolveViewModel.cs | 28 +- .../RvMEP/HeadroomCheckViewModel.cs | 2 - .../RvMEP/InsulationItem.cs | 3 +- .../RvMEP/MoveMEPCurveViewModel.cs | 4 +- .../RvMEP/RevitCommandEndedMonitor.cs | 3 +- .../RvView/ArrangeTagsCmd.cs | 1 - .../RvView/CivilViewFilterCmd.cs | 19 - .../RvView/ElementControlDock.xaml.cs | 2 - .../RvView/ElementsControlCmd.cs | 10 - .../RvView/ExportSchedulesCmd.cs | 6 +- .../RvView/PanelScheduleCmd.cs | 1 - .../RvView/SectionBoxControllerViewModel.cs | 2 - .../RvView/SystemDisplayViewModel.cs | 1 - .../RvView/ViewManagerViewModel.cs | 34 +- .../RvView/VisibilityViewModel.cs | 1 - .../UIRibbon/DrawingViewApp.cs | 1 - .../UIRibbon/FamilyApp.cs | 14 +- .../UIRibbon/ModifyTabApp.cs | 125 +------ ShrlAlgoToolkit.RevitAddins/UIRibbon/RvApp.cs | 10 +- .../UIRibbon/TabManagerApp.cs | 17 +- ShrlAlgoToolkit.RevitAddins/Variables.cs | 2 - .../Windows/MessageViewModel.cs | 1 - .../Windows/NavigateViewViewModel.cs | 1 - .../Windows/ProcessEventHandler.cs | 8 - .../Windows/ProgressBarManager.cs | 1 - 98 files changed, 435 insertions(+), 1017 deletions(-) rename {ShrlAlgoToolkit.RevitAddins => ShrlAlgoToolkit.Revit}/Assists/RevitFileAssist.cs (99%) delete mode 100644 ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs delete mode 100644 ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs create mode 100644 ShrlAlgoToolkit.RevitAddins/Extensions/CommonExtensions.cs create mode 100644 ShrlAlgoToolkit.RevitAddins/Extensions/StringExtensions.cs diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/RevitFileAssist.cs b/ShrlAlgoToolkit.Revit/Assists/RevitFileAssist.cs similarity index 99% rename from ShrlAlgoToolkit.RevitAddins/Assists/RevitFileAssist.cs rename to ShrlAlgoToolkit.Revit/Assists/RevitFileAssist.cs index 4902f9f..1ed19b5 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/RevitFileAssist.cs +++ b/ShrlAlgoToolkit.Revit/Assists/RevitFileAssist.cs @@ -7,7 +7,7 @@ using System.Text; using System.Windows.Media.Imaging; using System.Xml; -namespace ShrlAlgoToolkit.RevitAddins.Assists +namespace ShrlAlgoToolkit.Revit.Assists { /// /// 直接读取文件的信息(不依赖RevitAPI) diff --git a/ShrlAlgoToolkit.Revit/ShrlAlgoToolkit.Revit.projitems b/ShrlAlgoToolkit.Revit/ShrlAlgoToolkit.Revit.projitems index 1497086..01d508f 100644 --- a/ShrlAlgoToolkit.Revit/ShrlAlgoToolkit.Revit.projitems +++ b/ShrlAlgoToolkit.Revit/ShrlAlgoToolkit.Revit.projitems @@ -10,6 +10,7 @@ + diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs deleted file mode 100644 index 4e63f7f..0000000 --- a/ShrlAlgoToolkit.RevitAddins/Assists/EnumAssist.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System.Reflection; - -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - -namespace ShrlAlgoToolkit.RevitAddins.Assists; - -public static class EnumAssist -{ - /// - /// 获取当前枚举值的描述,没有描述则返回空字符串 - /// - /// - /// - public static T GetAttribute(this Enum value) where T : Attribute - { - var fieldInfo = value.GetType().GetField(value.ToString()); - return fieldInfo.GetCustomAttribute(); - } -} diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs index e4bcfbf..e56ab7a 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/ImageAssist.cs @@ -1,23 +1,13 @@ -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Drawing; +using System.Drawing; using System.Drawing.Text; using System.Globalization; using System.IO; -using System.Linq; using System.Reflection; -using System.Text; -using System.Threading.Tasks; using System.Windows; using System.Windows.Interop; using System.Windows.Media; using System.Windows.Media.Imaging; -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - namespace ShrlAlgoToolkit.RevitAddins.Assists; public static class ImageAssist diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs index 47b7049..d2405c4 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/LogAssist.cs @@ -2,10 +2,6 @@ using System.IO; using System.Text; -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - namespace ShrlAlgoToolkit.RevitAddins.Assists; public static class LogAssist diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs index e7d7291..6c325ca 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/SingletonViewAssist.cs @@ -1,9 +1,5 @@ using System.Windows; -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - namespace ShrlAlgoToolkit.RevitAddins.Assists; public sealed record SingletonViewAssist diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs deleted file mode 100644 index 9ae7356..0000000 --- a/ShrlAlgoToolkit.RevitAddins/Assists/StringAssist.cs +++ /dev/null @@ -1,339 +0,0 @@ -using System.Text; -using System.Text.RegularExpressions; - -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - -namespace ShrlAlgoToolkit.RevitAddins.Assists; - -public class StringAssist -{ - /// - /// 获取大写字母列表 - /// - /// - /// - public List GetChar(int n) - { - var list = new List(); - if (n > 26) - { - n = 26; - } - - for (var i = 0; i < n; i++) - { - var c = ((char)(i + 65)).ToString(); - list.Add(c); - } - - return list; - } - - /// - /// 取得中文字符 - /// - /// - /// - public static string GetChineseWord(string oriText) - { - var x = @"[\u4E00-\u9FFF]+"; - var matches = Regex.Matches(oriText, x, RegexOptions.IgnoreCase); - var sb = new StringBuilder(); - foreach (Match nextMatch in matches) - { - sb.Append(nextMatch.Value); - } - - return sb.ToString(); - } - - /// - /// 固定间隔插入字符 - /// - /// 源字符串 - /// 间隔 - /// 插入字符 - /// - public static string InsertFormat(string input, int interval, string value) - { - for (var i = interval - 1; i < input.Length; i += interval + 1) - { - input = input.Insert(i, value); - } - - return input; - } - - /// - /// 判断更严谨,包含的有空串("")、空白符(空格""," ",制表符"\t",回车符"\r","\n"等)以及null值; - /// - /// - /// - public static bool IsBlank(string str) - { - int strLen; - if (str == null || (strLen = str.Length) == 0) - { - return true; - } - - for (var i = 0; i < strLen; i++) - { - if (char.IsWhiteSpace(str.ElementAt(i)) == false) - { - return false; - } - } - - return true; - } - - /// - /// 是否为Double类型 - /// - /// - /// - public static bool IsDouble(object expression) - { - return expression != null && Regex.IsMatch(expression.ToString(), @"^([0-9])[0-9]*(\.\w*)?$"); - } - - /// - /// 判断对象是否为Int32类型的数字 - /// - /// The expression - /// - public static bool IsNumeric(string expression) - { - if (expression != null) - { - var str = expression; - if (str.Length > 0 && str.Length <= 11 && Regex.IsMatch(str, @"^[-]?[0-9]*[.]?[0-9]*$")) - { - if (str.Length < 10 || (str.Length == 10 && str[0] == '1') || (str.Length == 11 && str[0] == '-' && str[1] == '1')) - { - return true; - } - } - } - - return false; - } - - /// - /// 比较字符串相似度 - /// - /// - /// - /// - public static float Levenshtein(string str1, string str2) - { - var len1 = str1.Length; - var len2 = str2.Length; - var dif = new int[len1 + 1, len2 + 1]; - for (var a = 0; a <= len1; a++) - { - dif[a, 0] = a; - } - - for (var a = 0; a <= len2; a++) - { - dif[0, a] = a; - } - - int temp; - for (var i = 1; i <= len1; i++) - { - for (var j = 1; j <= len2; j++) - { - temp = str1.ElementAt(i - 1) == str2.ElementAt(j - 1) ? 0 : 1; - - dif[i, j] = Min(dif[i - 1, j - 1] + temp, dif[i, j - 1] + 1, dif[i - 1, j] + 1); - } - } - - var similarity = 1 - ((float)dif[len1, len2] / Math.Max(len1, len2)); - return similarity; - } - - /// - /// 获取最短长度 - /// - /// - /// - private static int Min(params int[] arr) - { - var min = int.MaxValue; - foreach (var i in arr) - { - if (min > i) - { - min = i; - } - } - - return min; - } - - /// - /// 数字转字母 - /// - /// - /// - public static string NumberToLetter(int index) - { - var str = string.Empty; - if (index >= "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Length) - { - var num = index / "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Length; - index %= "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Length; - str += num.ToString(); - } - - return str + "ABCDEFGHIJKLMNOPQRSTUVWXYZ"[index]; - } - - /// - /// 指定字符串的固定长度,如果字符串小于固定长度, - /// 则在字符串的前面补足零,可设置的固定长度最大为9位 - /// - /// 原始字符串 - /// 字符串的固定长度 - /// The - public static string RepairZero(string text, int limitedLength) - { - //补足0的字符串 - var temp = string.Empty; - - //补足0 - for (var i = 0; i < limitedLength - text.Length; i++) - { - temp += "0"; - } - - //连接text - temp += text; - - //返回补足0的字符串 - return temp; - } - - /// - /// 使用指定字符集将string转换成byte[] - /// - /// 要转换的字符串 - /// 字符编码 - public static byte[] StringToBytes(string text, Encoding encoding) - { - return encoding.GetBytes(text); - } - - /// - /// string型转换为decimal型 - /// - /// The expression - /// 缺省值 - /// 转换后的decimal类型结果 - public static decimal StrToDecimal(string expression, decimal defValue) - { - if (expression == null || expression.Length > 10) - { - return defValue; - } - - var intValue = defValue; - { - var isDecimal = Regex.IsMatch(expression, @"^([-]|[0-9])[0-9]*(\.\w*)?$"); - if (isDecimal) - { - decimal.TryParse(expression, out intValue); - } - } - - return intValue; - } - - /// - /// string型转换为float型 - /// - /// The expression - /// 缺省值 - /// 转换后的int类型结果 - public static float StrToFloat(string expression, float defValue) - { - if (expression == null || expression.Length > 10) - { - return defValue; - } - - var intValue = defValue; - { - var isFloat = Regex.IsMatch(expression, @"^([-]|[0-9])[0-9]*(\.\w*)?$"); - if (isFloat) - { - float.TryParse(expression, out intValue); - } - } - - return intValue; - } - - /// - /// 将字符串转换为Int32类型 - /// - /// 要转换的字符串 - /// 缺省值 - /// 转换后的int类型结果 - public static int StrToInt(string expression, int defValue) - { - return string.IsNullOrEmpty(expression) || expression.Trim().Length >= 11 || !Regex.IsMatch(expression.Trim(), @"^([-]|[0-9])[0-9]*(\.\w*)?$") - ? defValue - : int.TryParse(expression, out var rv) - ? rv - : Convert.ToInt32(StrToFloat(expression, defValue)); - } - #region 格式化 - - //StringFormat={}{0:C} $123.46 - //StringFormat={}{0:C1} $123.5 - //StringFormat=单价:{0:C} 单价:$123.46 - //StringFormat={}{0}元 123.45678元 - //StringFormat={}{0:D6} 086723 - //StringFormat={}{0:F4} 28768234.9329 - //StringFormat={}{0:N3} 28,768,234.933 - //StringFormat={}{0:P1} 78.9 % - //StringFormat={}{0:0000.00} 0123.46 - //StringFormat={}{0:####.##} 123.46 - //StringFormat={}{0:d} 5/4/2015 - //StringFormat={}{0:D} Monday, May 04, 2015 - //StringFormat={}{0:f} Monday, May 04, 2015 5:46 PM - //StringFormat={}{0:F} Monday, May 04, 2015 5:46:56 PM - //StringFormat={}{0:g} 5/4/2015 5:46 PM - //StringFormat={}{0:G} 5/4/2015 5:46:56 PM - //StringFormat={}{0:m} May 04 - //StringFormat={}{0:Distinct} May 04 - //StringFormat={}{0:t} 5:46 PM - //StringFormat={}{0:Command} 5:46:56 PM - //StringFormat={}{0:yyyy年MM月dd日} 2015年05月04日 - //StringFormat={}{0:yyyy-MM-dd} 2015-05-04 - //StringFormat={}{0:yyyy-MM-dd HH:mm} 2015-05-04 17:46 - //StringFormat={}{0:yyyy-MM-dd HH:mm:ss},,ConverterCulture=zh-CN||StringFormat='yyyy:MM:dd HH:mm:ss',,ConverterCulture=zh-CN 2015-05-04 17:46:56 - //< TextBox.Text > - // < MultiBinding StringFormat = "姓名:{0} {1}" > - // < Binding Path = "FristName" /> - // < Binding Path = "LastName" /> - // - // - // < !-- - // \a  BEL - // \b  BS - Backspace - // \f FF - Formfeed - // \n LF, NL - Linefeed, New Line - // \r CR - Carriage return - // \t HT - Tab, Horizontal Tabelator - // \v VT - Vertical Tabelator - - #endregion -} diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs b/ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs index b05e0a8..3b2db9b 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/ThumbnailOptions.cs @@ -1,8 +1,4 @@ -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - -namespace ShrlAlgoToolkit.RevitAddins.Assists; +namespace ShrlAlgoToolkit.RevitAddins.Assists; public enum ThumbnailOptions { diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs index 5913af0..c0781d4 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/ValidatorAssist.cs @@ -2,10 +2,6 @@ using System.Text; using System.Text.RegularExpressions; -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - namespace ShrlAlgoToolkit.RevitAddins.Assists; /// diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs b/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs index fb3e908..902d3a7 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/WinDialogAssist.cs @@ -11,8 +11,6 @@ using CommunityToolkit.Mvvm.ComponentModel; using Microsoft.Win32; -using ShrlAlgoToolkit.Core.Assists; - namespace ShrlAlgoToolkit.RevitAddins.Assists; public static class WinDialogAssist diff --git a/ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs b/ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs index 66a1e9b..3eb8d4b 100644 --- a/ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs +++ b/ShrlAlgoToolkit.RevitAddins/Assists/WindowsThumbnailProvider.cs @@ -3,10 +3,6 @@ using System.Drawing.Imaging; using System.IO; using System.Runtime.InteropServices; -using ShrlAlgoToolkit.Core.Assists; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Core; - namespace ShrlAlgoToolkit.RevitAddins.Assists; /// diff --git a/ShrlAlgoToolkit.RevitAddins/Attributes/GreaterThanAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/GreaterThanAttribute.cs index 3b4fb84..060292a 100644 --- a/ShrlAlgoToolkit.RevitAddins/Attributes/GreaterThanAttribute.cs +++ b/ShrlAlgoToolkit.RevitAddins/Attributes/GreaterThanAttribute.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace ShrlAlgoToolkit.Mvvm.Attributes; +namespace ShrlAlgoToolkit.RevitAddins.Attributes; [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public sealed class GreaterThanAttribute : ValidationAttribute diff --git a/ShrlAlgoToolkit.RevitAddins/Attributes/IsNumericAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/IsNumericAttribute.cs index a01c52e..55bcaff 100644 --- a/ShrlAlgoToolkit.RevitAddins/Attributes/IsNumericAttribute.cs +++ b/ShrlAlgoToolkit.RevitAddins/Attributes/IsNumericAttribute.cs @@ -1,7 +1,7 @@ using System.ComponentModel.DataAnnotations; using System.Globalization; -namespace ShrlAlgoToolkit.Mvvm.Attributes; +namespace ShrlAlgoToolkit.RevitAddins.Attributes; [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public sealed class IsNumericAttribute : ValidationAttribute diff --git a/ShrlAlgoToolkit.RevitAddins/Attributes/MaximumAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/MaximumAttribute.cs index 18b12f1..b088f1e 100644 --- a/ShrlAlgoToolkit.RevitAddins/Attributes/MaximumAttribute.cs +++ b/ShrlAlgoToolkit.RevitAddins/Attributes/MaximumAttribute.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace ShrlAlgoToolkit.Mvvm.Attributes; +namespace ShrlAlgoToolkit.RevitAddins.Attributes; [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public sealed class MaximumAttribute : ValidationAttribute diff --git a/ShrlAlgoToolkit.RevitAddins/Attributes/MinimumAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/MinimumAttribute.cs index b0b1b2e..a66b95b 100644 --- a/ShrlAlgoToolkit.RevitAddins/Attributes/MinimumAttribute.cs +++ b/ShrlAlgoToolkit.RevitAddins/Attributes/MinimumAttribute.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace ShrlAlgoToolkit.Mvvm.Attributes; +namespace ShrlAlgoToolkit.RevitAddins.Attributes; [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public sealed class MinimumAttribute : ValidationAttribute diff --git a/ShrlAlgoToolkit.RevitAddins/Attributes/NotNullOrEmptyAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/NotNullOrEmptyAttribute.cs index 88ae6ed..45f236e 100644 --- a/ShrlAlgoToolkit.RevitAddins/Attributes/NotNullOrEmptyAttribute.cs +++ b/ShrlAlgoToolkit.RevitAddins/Attributes/NotNullOrEmptyAttribute.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace ShrlAlgoToolkit.Mvvm.Attributes; +namespace ShrlAlgoToolkit.RevitAddins.Attributes; [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public sealed class NotNullOrEmptyAttribute : ValidationAttribute diff --git a/ShrlAlgoToolkit.RevitAddins/Attributes/UndefinedCharAttribute.cs b/ShrlAlgoToolkit.RevitAddins/Attributes/UndefinedCharAttribute.cs index 93ba279..2cf4222 100644 --- a/ShrlAlgoToolkit.RevitAddins/Attributes/UndefinedCharAttribute.cs +++ b/ShrlAlgoToolkit.RevitAddins/Attributes/UndefinedCharAttribute.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace ShrlAlgoToolkit.Mvvm.Attributes +namespace ShrlAlgoToolkit.RevitAddins.Attributes { [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter)] public class UndefinedCharAttribute : ValidationAttribute diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs index da50234..17e8aa5 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanConverter.cs @@ -1,11 +1,6 @@ -using System; -using System.Globalization; +using System.Globalization; using System.Windows.Data; -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 index 1e50abc..68756d5 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/BooleanToVisConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/BooleanToVisConverter.cs @@ -1,10 +1,4 @@ -using System; -using System.Linq; -using System.Windows; - -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; +using System.Windows; namespace ShrlAlgoToolkit.RevitAddins.Converters; diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs index 4d45fd5..d34e7d0 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/ColorToBrushConverter.cs @@ -2,10 +2,6 @@ using System.Windows.Data; using System.Windows.Media; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters; public class ColorToBrushConverter : IValueConverter diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs index 2d9209f..20e3a44 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/ComparisonConverter.cs @@ -1,10 +1,6 @@ using System.Globalization; using System.Windows.Data; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters; public class ComparisonConverter : IValueConverter diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs index fd2caa3..efdbf1a 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionExtension.cs @@ -1,12 +1,6 @@ -using System; -using System.ComponentModel; -using System.Linq; +using System.ComponentModel; using System.Windows.Markup; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters { public class EnumDescriptionExtension : MarkupExtension diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs index 7c6969c..4692b12 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/EnumDescriptionTypeConverter.cs @@ -2,10 +2,6 @@ using System.Globalization; using System.Reflection; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters; /// diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs index 37fb51c..2f35d11 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/EnumSourceAndConverter.cs @@ -4,10 +4,6 @@ using System.Globalization; using System.Reflection; using System.Windows.Data; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters; /// diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs index 8241739..6203cdd 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/InvertBooleanConverter.cs @@ -1,10 +1,6 @@ using System.Globalization; using System.Windows.Data; -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 index ddbd31b..af4a0a7 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/InverterBooleanToVisConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/InverterBooleanToVisConverter.cs @@ -1,9 +1,5 @@ using System.Windows; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters; public class InverterBooleanToVisConverter : Converters.BooleanConverter diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/MarkupConverters.cs b/ShrlAlgoToolkit.RevitAddins/Converters/MarkupConverters.cs index 1745e07..4090c0b 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/MarkupConverters.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/MarkupConverters.cs @@ -1,5 +1,4 @@ -using System; -using System.Globalization; +using System.Globalization; using System.Windows; using System.Windows.Data; using System.Windows.Markup; diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs index 5cd7f29..d8cd42c 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/NotNullToVisibilityConverter.cs @@ -1,13 +1,7 @@ -using System; -using System.Globalization; -using System.Linq; +using System.Globalization; using System.Windows; using System.Windows.Data; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters { /// diff --git a/ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs b/ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs index 674cb59..4838ea3 100644 --- a/ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs +++ b/ShrlAlgoToolkit.RevitAddins/Converters/SearchValueConverter.cs @@ -1,9 +1,5 @@ using System.Windows.Data; -using ShrlAlgoToolkit.RevitAddins.Converters; -using ShrlAlgoToolkit; -using ShrlAlgoToolkit.Mvvm; - namespace ShrlAlgoToolkit.RevitAddins.Converters; public class SearchValueConverter : IMultiValueConverter diff --git a/ShrlAlgoToolkit.RevitAddins/Extensions/CommonExtensions.cs b/ShrlAlgoToolkit.RevitAddins/Extensions/CommonExtensions.cs new file mode 100644 index 0000000..faeafc0 --- /dev/null +++ b/ShrlAlgoToolkit.RevitAddins/Extensions/CommonExtensions.cs @@ -0,0 +1,18 @@ +using System.Reflection; + +namespace ShrlAlgoToolkit.RevitAddins.Extensions +{ + public static class CommonExtensions + { + /// + /// 获取当前枚举值的描述,没有描述则返回空字符串 + /// + /// + /// + public static T GetAttribute(this Enum value) where T : Attribute + { + var fieldInfo = value.GetType().GetField(value.ToString()); + return fieldInfo.GetCustomAttribute(); + } + } +} diff --git a/ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs b/ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs index 735ac27..682bd4e 100644 --- a/ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs +++ b/ShrlAlgoToolkit.RevitAddins/Extensions/DistinctExtensions.cs @@ -1,6 +1,4 @@ -using ShrlAlgoToolkit.RevitAddins.Extensions; - -namespace ShrlAlgoToolkit.RevitAddins.Extensions; +namespace ShrlAlgoToolkit.RevitAddins.Extensions; /// /// 自定义Distinct扩展方法 diff --git a/ShrlAlgoToolkit.RevitAddins/Extensions/StringExtensions.cs b/ShrlAlgoToolkit.RevitAddins/Extensions/StringExtensions.cs new file mode 100644 index 0000000..d24b3cb --- /dev/null +++ b/ShrlAlgoToolkit.RevitAddins/Extensions/StringExtensions.cs @@ -0,0 +1,300 @@ +using System.Text; +using System.Text.RegularExpressions; + +namespace ShrlAlgoToolkit.RevitAddins.Extensions; +#region 格式化 + +//StringFormat={}{0:C} $123.46 +//StringFormat={}{0:C1} $123.5 +//StringFormat=单价:{0:C} 单价:$123.46 +//StringFormat={}{0}元 123.45678元 +//StringFormat={}{0:D6} 086723 +//StringFormat={}{0:F4} 28768234.9329 +//StringFormat={}{0:N3} 28,768,234.933 +//StringFormat={}{0:P1} 78.9 % +//StringFormat={}{0:0000.00} 0123.46 +//StringFormat={}{0:####.##} 123.46 +//StringFormat={}{0:d} 5/4/2015 +//StringFormat={}{0:D} Monday, May 04, 2015 +//StringFormat={}{0:f} Monday, May 04, 2015 5:46 PM +//StringFormat={}{0:F} Monday, May 04, 2015 5:46:56 PM +//StringFormat={}{0:g} 5/4/2015 5:46 PM +//StringFormat={}{0:G} 5/4/2015 5:46:56 PM +//StringFormat={}{0:m} May 04 +//StringFormat={}{0:Distinct} May 04 +//StringFormat={}{0:t} 5:46 PM +//StringFormat={}{0:Command} 5:46:56 PM +//StringFormat={}{0:yyyy年MM月dd日} 2015年05月04日 +//StringFormat={}{0:yyyy-MM-dd} 2015-05-04 +//StringFormat={}{0:yyyy-MM-dd HH:mm} 2015-05-04 17:46 +//StringFormat={}{0:yyyy-MM-dd HH:mm:ss},,ConverterCulture=zh-CN||StringFormat='yyyy:MM:dd HH:mm:ss',,ConverterCulture=zh-CN 2015-05-04 17:46:56 +//< TextBox.Text > +// < MultiBinding StringFormat = "姓名:{0} {1}" > +// < Binding Path = "FristName" /> +// < Binding Path = "LastName" /> +// +// +// < !-- +// \a  BEL +// \b  BS - Backspace +// \f FF - Formfeed +// \n LF, NL - Linefeed, New Line +// \r CR - Carriage return +// \t HT - Tab, Horizontal Tabelator +// \v VT - Vertical Tabelator + +#endregion +public static class StringExtensions +{ + /// + /// 取得中文字符 + /// + /// + /// + public static string GetChineseWord(this string oriText) + { + var x = @"[\u4E00-\u9FFF]+"; + var matches = Regex.Matches(oriText, x, RegexOptions.IgnoreCase); + var sb = new StringBuilder(); + foreach (Match nextMatch in matches) + { + sb.Append(nextMatch.Value); + } + + return sb.ToString(); + } + + /// + /// 固定间隔插入字符 + /// + /// 源字符串 + /// 间隔 + /// 插入字符 + /// + public static string InsertFormat(this string input, int interval, string value) + { + for (var i = interval - 1; i < input.Length; i += interval + 1) + { + input = input.Insert(i, value); + } + + return input; + } + + /// + /// 判断更严谨,包含的有空串("")、空白符(空格""," ",制表符"\t",回车符"\r","\n"等)以及null值; + /// + /// + /// + public static bool IsBlank(this string str) + { + int strLen; + if (str == null || (strLen = str.Length) == 0) + { + return true; + } + + for (var i = 0; i < strLen; i++) + { + if (char.IsWhiteSpace(str.ElementAt(i)) == false) + { + return false; + } + } + + return true; + } + + /// + /// 是否为Double类型 + /// + /// + /// + public static bool IsDouble(this string expression) + { + return expression != null && Regex.IsMatch(expression.ToString(), @"^([0-9])[0-9]*(\.\w*)?$"); + } + + /// + /// 判断对象是否为Int32类型的数字 + /// + /// The expression + /// + public static bool IsNumeric(this string expression) + { + if (expression != null) + { + var str = expression; + if (str.Length > 0 && str.Length <= 11 && Regex.IsMatch(str, @"^[-]?[0-9]*[.]?[0-9]*$")) + { + if (str.Length < 10 || (str.Length == 10 && str[0] == '1') || (str.Length == 11 && str[0] == '-' && str[1] == '1')) + { + return true; + } + } + } + + return false; + } + + /// + /// 比较字符串相似度 + /// + /// + /// + /// + public static float Levenshtein(this string str1, string str2) + { + var len1 = str1.Length; + var len2 = str2.Length; + var dif = new int[len1 + 1, len2 + 1]; + for (var a = 0; a <= len1; a++) + { + dif[a, 0] = a; + } + + for (var a = 0; a <= len2; a++) + { + dif[0, a] = a; + } + + int temp; + for (var i = 1; i <= len1; i++) + { + for (var j = 1; j <= len2; j++) + { + temp = str1.ElementAt(i - 1) == str2.ElementAt(j - 1) ? 0 : 1; + + dif[i, j] = Min(dif[i - 1, j - 1] + temp, dif[i, j - 1] + 1, dif[i - 1, j] + 1); + } + } + + var similarity = 1 - ((float)dif[len1, len2] / Math.Max(len1, len2)); + return similarity; + } + + /// + /// 获取最短长度 + /// + /// + /// + private static int Min(params int[] arr) + { + var min = int.MaxValue; + foreach (var i in arr) + { + if (min > i) + { + min = i; + } + } + + return min; + } + + /// + /// 数字转字母 + /// + /// + /// + public static string NumberToLetter(int index) + { + var str = string.Empty; + if (index >= "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Length) + { + var num = index / "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Length; + index %= "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Length; + str += num.ToString(); + } + + return str + "ABCDEFGHIJKLMNOPQRSTUVWXYZ"[index]; + } + + /// + /// 指定字符串的固定长度,如果字符串小于固定长度, + /// 则在字符串的前面补足零,可设置的固定长度最大为9位 + /// + /// 原始字符串 + /// 字符串的固定长度 + /// The + public static string RepairZero(this string text, int limitedLength) + { + return text.PadRight(limitedLength, '0'); + } + + /// + /// 使用指定字符集将string转换成byte[] + /// + /// 要转换的字符串 + /// 字符编码 + public static byte[] StringToBytes(this string text, Encoding encoding) + { + return encoding.GetBytes(text); + } + + /// + /// string型转换为decimal型 + /// + /// The expression + /// 缺省值 + /// 转换后的decimal类型结果 + public static decimal StrToDecimal(this string expression, decimal defValue) + { + if (expression == null || expression.Length > 10) + { + return defValue; + } + + var intValue = defValue; + { + var isDecimal = Regex.IsMatch(expression, @"^([-]|[0-9])[0-9]*(\.\w*)?$"); + if (isDecimal) + { + decimal.TryParse(expression, out intValue); + } + } + + return intValue; + } + + /// + /// string型转换为float型 + /// + /// The expression + /// 缺省值 + /// 转换后的int类型结果 + public static float StrToFloat(this string expression, float defValue) + { + if (expression == null || expression.Length > 10) + { + return defValue; + } + + var intValue = defValue; + { + var isFloat = Regex.IsMatch(expression, @"^([-]|[0-9])[0-9]*(\.\w*)?$"); + if (isFloat) + { + float.TryParse(expression, out intValue); + } + } + + return intValue; + } + + /// + /// 将字符串转换为Int32类型 + /// + /// 要转换的字符串 + /// 缺省值 + /// 转换后的int类型结果 + public static int StrToInt(this string expression, int defValue) + { + return string.IsNullOrEmpty(expression) || expression.Trim().Length >= 11 || !Regex.IsMatch(expression.Trim(), @"^([-]|[0-9])[0-9]*(\.\w*)?$") + ? defValue + : int.TryParse(expression, out var rv) + ? rv + : Convert.ToInt32(StrToFloat(expression, defValue)); + } + +} diff --git a/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs b/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs index e3d55c4..42a0711 100644 --- a/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs +++ b/ShrlAlgoToolkit.RevitAddins/GlobalUsings.cs @@ -1,4 +1,4 @@ -global using ShrlAlgoToolkit.Revit.Assists; -global using ShrlAlgoToolkit.Revit.Extensions; +global using Autodesk.Revit.UI; global using JetBrains.Annotations; -global using Autodesk.Revit.UI; +global using ShrlAlgoToolkit.Revit.Assists; +global using ShrlAlgoToolkit.Revit.Extensions; diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/CorrectReferLevelExecutes.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/CorrectReferLevelExecutes.cs index 99395d9..3cea904 100644 --- a/ShrlAlgoToolkit.RevitAddins/ModelManager/CorrectReferLevelExecutes.cs +++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/CorrectReferLevelExecutes.cs @@ -2,8 +2,6 @@ using Autodesk.Revit.DB.Electrical; using Autodesk.Revit.DB.Mechanical; using Autodesk.Revit.DB.Plumbing; -using Autodesk.Revit.UI; - using ShrlAlgoToolkit.RevitAddins.Windows; namespace ShrlAlgoToolkit.RevitAddins.ModelManager; diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckCmd.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckCmd.cs index fb1a701..5f43e4d 100644 --- a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckCmd.cs @@ -1,7 +1,6 @@ using Autodesk.Revit.Attributes; using Nice3point.Revit.Toolkit.External; -using ShrlAlgoToolkit.Core.Assists; using ShrlAlgoToolkit.RevitAddins.Assists; namespace ShrlAlgoToolkit.RevitAddins.ModelManager; diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckView.xaml.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckView.xaml.cs index f2961df..4c3009d 100644 --- a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckView.xaml.cs +++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckView.xaml.cs @@ -1,8 +1,4 @@ -using System.Windows; - -using Melskin.Appearance; - -namespace ShrlAlgoToolkit.RevitAddins.ModelManager +namespace ShrlAlgoToolkit.RevitAddins.ModelManager { /// /// ModelCheckView.xaml 的交互逻辑 @@ -11,9 +7,7 @@ namespace ShrlAlgoToolkit.RevitAddins.ModelManager { public ModelCheckView() { - //this.Style = (Style)this.FindResource("MelWindowStyle"); InitializeComponent(); - //ThemeManager.ApplyResourcesToElement(this); } } } diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs index 5341ef6..e707a51 100644 --- a/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/ModelCheckViewModel.cs @@ -5,22 +5,12 @@ using Autodesk.Revit.DB.Architecture; using Autodesk.Revit.DB.Electrical; using Autodesk.Revit.DB.Mechanical; using Autodesk.Revit.DB.Plumbing; -using Autodesk.Revit.UI; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; -using JetBrains.Annotations; using Microsoft.Win32; using Nice3point.Revit.Toolkit.External.Handlers; -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; diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelCmd.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelCmd.cs index cd34ca8..ddf4639 100644 --- a/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelCmd.cs @@ -1,6 +1,5 @@ using Autodesk.Revit.Attributes; using Nice3point.Revit.Toolkit.External; -using ShrlAlgoToolkit.Core.Assists; using ShrlAlgoToolkit.RevitAddins.Assists; namespace ShrlAlgoToolkit.RevitAddins.ModelManager; diff --git a/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelViewModel.cs b/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelViewModel.cs index e04273a..94d60c5 100644 --- a/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/ModelManager/SeparateModelViewModel.cs @@ -1,13 +1,9 @@ -using Autodesk.Revit.DB; - +using System.IO; +using System.Windows; +using Autodesk.Revit.DB; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; - using Nice3point.Revit.Toolkit.External.Handlers; - -using System.IO; -using System.Windows; - using UIFrameworkServices; namespace ShrlAlgoToolkit.RevitAddins.ModelManager diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesCmd.cs index eb9f057..0655f89 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesCmd.cs @@ -9,13 +9,6 @@ public class BricksFinishesCmd : ExternalCommand { public override void Execute() { - WinDialogAssist.ShowModeless(new BricksFinishesViewModel()); - //var fl = SingletonViewHelpers.GetInstance(out var isNewCreate); - //if (isNewCreate) - //{ - // fl.DataContext = new BricksFinishesViewModel(); - // fl.ShowAhead(); - //} - //fl.Activate(); + WinDialogAssist.ShowOrActivate(); } } diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesViewModel.cs index b2d7402..7401119 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/BricksFinishesViewModel.cs @@ -1,19 +1,12 @@ -using Autodesk.Revit.DB; +using System.ComponentModel.DataAnnotations; +using System.Windows; +using Autodesk.Revit.DB; using Autodesk.Revit.DB.Architecture; -using Autodesk.Revit.UI; using Autodesk.Revit.UI.Selection; - using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; - using Nice3point.Revit.Toolkit.External.Handlers; -using ShrlAlgoToolkit.Mvvm.Attributes; - -using System.ComponentModel.DataAnnotations; -using System.Windows; - - namespace ShrlAlgoToolkit.RevitAddins.RvCivil; @@ -49,8 +42,8 @@ public partial class BricksFinishesViewModel : ObservableValidator public partial bool IsEdgeExistGap { get; set; } [Required(ErrorMessage = "不可为空")] - [IsNumeric] - [Minimum(10.0)] + [Attributes.IsNumeric] + [Attributes.Minimum(10.0)] [ObservableProperty] [NotifyDataErrorInfo] public partial double PavementWidth { get; set; } @@ -62,7 +55,7 @@ public partial class BricksFinishesViewModel : ObservableValidator //} [Required(ErrorMessage = "不可为空")] - [IsNumeric] + [Attributes.IsNumeric] [ObservableProperty] [NotifyDataErrorInfo] public partial double WallBaseOffset { get; set; } @@ -74,8 +67,8 @@ public partial class BricksFinishesViewModel : ObservableValidator //} [Required(ErrorMessage = "不可为空")] - [IsNumeric] - [Minimum(1.0)] + [Attributes.IsNumeric] + [Attributes.Minimum(1.0)] [ObservableProperty] [NotifyDataErrorInfo] public partial double PavementThickness { get; set; } @@ -87,8 +80,8 @@ public partial class BricksFinishesViewModel : ObservableValidator //} [Required(ErrorMessage = "不可为空")] - [IsNumeric] - [Minimum(10.0)] + [Attributes.IsNumeric] + [Attributes.Minimum(10.0)] [ObservableProperty] [NotifyDataErrorInfo] public partial double PavementLength { get; set; } @@ -100,8 +93,8 @@ public partial class BricksFinishesViewModel : ObservableValidator //} [Required(ErrorMessage = "不可为空")] - [IsNumeric] - [Minimum(1.0)] + [Attributes.IsNumeric] + [Attributes.Minimum(1.0)] [ObservableProperty] [NotifyDataErrorInfo] public partial double PavementGap { get; set; } diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs index ae69766..4ad62dc 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/CivilConnectionCmd.cs @@ -1,14 +1,7 @@ using System.Windows; 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/CreateOpeningsCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsCmd.cs index 0fa291c..41f2461 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsCmd.cs @@ -1,6 +1,5 @@ using Autodesk.Revit.Attributes; using Nice3point.Revit.Toolkit.External; -using ShrlAlgoToolkit.Core.Assists; using ShrlAlgoToolkit.RevitAddins.Assists; namespace ShrlAlgoToolkit.RevitAddins.RvCivil; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs index 1cf9ac0..2c4feed 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/CreateOpeningsViewModel.cs @@ -1,18 +1,11 @@ using System.IO; using System.Windows; using Autodesk.Revit.DB; -using Autodesk.Revit.UI; using Autodesk.Revit.UI.Selection; 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/FloorFinishesViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/FloorFinishesViewModel.cs index ca33000..528ca7f 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/FloorFinishesViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/FloorFinishesViewModel.cs @@ -1,7 +1,6 @@ using System.ComponentModel.DataAnnotations; using Autodesk.Revit.DB; using Autodesk.Revit.DB.Architecture; -using Autodesk.Revit.UI; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; using Nice3point.Revit.Toolkit.External.Handlers; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/ModelSplitterCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/ModelSplitterCmd.cs index 7a9162e..eaf5d13 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/ModelSplitterCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/ModelSplitterCmd.cs @@ -3,7 +3,6 @@ using System.Text; using System.Windows; using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; -using Autodesk.Revit.UI; using Nice3point.Revit.Toolkit.External; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/ResolveCivilConnectViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/ResolveCivilConnectViewModel.cs index 3424607..713b81d 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/ResolveCivilConnectViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/ResolveCivilConnectViewModel.cs @@ -1,6 +1,5 @@ using System.Windows; using Autodesk.Revit.DB; -using Autodesk.Revit.UI; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; using Nice3point.Revit.Toolkit.External.Handlers; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs index 2e635dc..a0d673e 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCivil/WallFinishesViewModel.cs @@ -1,30 +1,10 @@ using System.Windows; using Autodesk.Revit.DB; using Autodesk.Revit.DB.Architecture; -using Autodesk.Revit.UI; using Autodesk.Revit.UI.Selection; 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; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/AutoSaveCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/AutoSaveCmd.cs index 5ad2991..9a96214 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/AutoSaveCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/AutoSaveCmd.cs @@ -1,5 +1,4 @@ using Autodesk.Revit.Attributes; -using Autodesk.Revit.UI; using Nice3point.Revit.Toolkit.External; namespace ShrlAlgoToolkit.RevitAddins.RvCommon; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/DetailSelectFiltersViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/DetailSelectFiltersViewModel.cs index 7d2ae9e..ecf4666 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/DetailSelectFiltersViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/DetailSelectFiltersViewModel.cs @@ -3,7 +3,6 @@ using System.ComponentModel; using System.Windows; using System.Windows.Data; using Autodesk.Revit.DB; -using Autodesk.Revit.UI; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; using Nice3point.Revit.Toolkit.External.Handlers; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs index 86921fe..25e099c 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/InstanceCreatorViewModel.cs @@ -1,27 +1,12 @@ using System.Windows; -using System.Windows.Input; using System.Windows.Media.Imaging; - using Autodesk.Revit.DB; using Autodesk.Revit.DB.Structure; -using Autodesk.Revit.UI; using Autodesk.Revit.UI.Selection; - using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; - -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; - - // ReSharper disable ConditionIsAlwaysTrueOrFalse diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/MergeSharedParametersCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/MergeSharedParametersCmd.cs index 857297d..28cc07f 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/MergeSharedParametersCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/MergeSharedParametersCmd.cs @@ -1,8 +1,4 @@ using Autodesk.Revit.Attributes; -using Autodesk.Revit.DB; -using Autodesk.Revit.UI; -using Autodesk.Revit.UI.Selection; - using Nice3point.Revit.Toolkit.External; namespace ShrlAlgoToolkit.RevitAddins.RvCommon; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs index 3920108..9a125fd 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/ModelByCurveCreatorViewModel.cs @@ -1,28 +1,11 @@ using System.ComponentModel.DataAnnotations; using System.Windows; - using Autodesk.Revit.DB; using Autodesk.Revit.UI.Selection; - using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; - 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 { @@ -37,13 +20,13 @@ namespace ShrlAlgoToolkit.RevitAddins.RvCommon private readonly ActionEventHandler handler; [Required(ErrorMessage = "不可为空")] - [IsNumeric] + [Attributes.IsNumeric] [ObservableProperty] public partial double InstanceOffsetX { get; set; } = 0; [ObservableProperty] [Required(ErrorMessage = "不可为空")] - [IsNumeric] + [Attributes.IsNumeric] public partial double InstanceOffsetY { get; set; } = 0; [ObservableProperty] @@ -57,18 +40,18 @@ namespace ShrlAlgoToolkit.RevitAddins.RvCommon public partial List Materials { get; set; } [Required(ErrorMessage = "不可为空")] - [IsNumeric] + [Attributes.IsNumeric] [ObservableProperty] public partial double OffsetX { get; set; } = 0; [ObservableProperty] [Required(ErrorMessage = "不可为空")] - [IsNumeric] + [Attributes.IsNumeric] public partial double OffsetY { get; set; } = 0; [Required(ErrorMessage = "不可为空")] - [IsNumeric] - [Minimum(0.5)] + [Attributes.IsNumeric] + [Attributes.Minimum(0.5)] [ObservableProperty] [NotifyDataErrorInfo] public partial double Precision { get; set; } = 1.0; @@ -89,8 +72,8 @@ namespace ShrlAlgoToolkit.RevitAddins.RvCommon public partial FamilySymbol SelectedProfileFamilyType { get; set; } [Required(ErrorMessage = "不可为空")] - [IsNumeric] - [Minimum(100)] + [Attributes.IsNumeric] + [Attributes.Minimum(100)] [NotifyDataErrorInfo] [ObservableProperty] public partial double Spacing { get; set; } = 100; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/MoveElementByRelationshipCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/MoveElementByRelationshipCmd.cs index 167a723..dac38ed 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/MoveElementByRelationshipCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/MoveElementByRelationshipCmd.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -using Autodesk.Revit.Attributes; +using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; using Nice3point.Revit.Toolkit.External; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs index 669d1fd..8d5985e 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/PipesCreatorViewModel.cs @@ -7,13 +7,6 @@ using Autodesk.Revit.UI.Selection; 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; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/PlaceInstanceByCircleCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/PlaceInstanceByCircleCmd.cs index 1ddf7c1..fdaccad 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/PlaceInstanceByCircleCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/PlaceInstanceByCircleCmd.cs @@ -1,8 +1,5 @@ -using System; - -using Autodesk.Revit.Attributes; +using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; -using Autodesk.Revit.UI; using Autodesk.Revit.UI.Selection; using Nice3point.Revit.Toolkit.External; diff --git a/ShrlAlgoToolkit.RevitAddins/RvCommon/SplitImportInstanceCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvCommon/SplitImportInstanceCmd.cs index 7c34b53..5df0ea8 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvCommon/SplitImportInstanceCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvCommon/SplitImportInstanceCmd.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -using Autodesk.Revit.Attributes; +using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; using Nice3point.Revit.Toolkit.External; diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/CutGeologyByLoopCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/CutGeologyByLoopCmd.cs index c0a78e1..95dc335 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/CutGeologyByLoopCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/CutGeologyByLoopCmd.cs @@ -1,5 +1,4 @@ -using System.Linq; -using System.Windows; +using System.Windows; using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/ExplodeDwgCmd.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/ExplodeDwgCmd.cs index 8631e32..9981b6d 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/ExplodeDwgCmd.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/ExplodeDwgCmd.cs @@ -3,7 +3,6 @@ using System.Windows; using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; -using Autodesk.Revit.UI; using Autodesk.Revit.UI.Selection; namespace ShrlAlgoToolkit.RevitAddins.RvFamily; diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs index 3a03a1f..a08b7a0 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyLibraryViewModel.cs @@ -2,34 +2,14 @@ using System.IO; using System.Windows; using System.Windows.Controls; - using Autodesk.Revit.DB; - using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; - using FuzzySharp; - using Nice3point.Revit.Toolkit.External.Handlers; - -using ShrlAlgoToolkit.Core.Assists; using ShrlAlgoToolkit.RevitAddins.Assists; - -using static ShrlAlgoToolkit.RevitAddins.Assists.RevitFileAssist; - +using static ShrlAlgoToolkit.Revit.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 9339bf7..e5594cc 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/FamilyModel.cs @@ -1,19 +1,9 @@ -using Autodesk.Revit.DB; -using Autodesk.Revit.UI; - +using System.IO; +using System.Windows.Media.Imaging; +using Autodesk.Revit.DB; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; - -using ShrlAlgoToolkit.Core.Assists; - -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; diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/LoadedFamilyDropHandler.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/LoadedFamilyDropHandler.cs index 354e78b..23ddd4d 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/LoadedFamilyDropHandler.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyLibrary/LoadedFamilyDropHandler.cs @@ -1,5 +1,4 @@ using Autodesk.Revit.DB; -using Autodesk.Revit.UI; namespace ShrlAlgoToolkit.RevitAddins.RvFamily.FamilyLibrary { diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs index 6e948db..29995ba 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/FamilyProcessorViewModel.cs @@ -1,23 +1,12 @@ -using Autodesk.Revit.DB; -using Autodesk.Revit.UI; - -using CommunityToolkit.Mvvm.ComponentModel; -using CommunityToolkit.Mvvm.Input; - -using Nice3point.Revit.Toolkit.External.Handlers; - -using ShrlAlgoToolkit.Core.Assists; - -using System.Collections; +using System.Collections; using System.IO; using System.Text; using System.Windows; +using Autodesk.Revit.DB; +using CommunityToolkit.Mvvm.ComponentModel; +using CommunityToolkit.Mvvm.Input; +using Nice3point.Revit.Toolkit.External.Handlers; 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/RenameFamilyItem.cs b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyItem.cs index 388e925..184fd0c 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyItem.cs +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyItem.cs @@ -1,6 +1,5 @@ using Autodesk.Revit.DB; using CommunityToolkit.Mvvm.ComponentModel; -using ShrlAlgoToolkit.Mvvm.Attributes; namespace ShrlAlgoToolkit.RevitAddins.RvFamily; @@ -10,7 +9,7 @@ public partial class RenameFamilyItem : ObservableValidator public partial bool IsSelected { get; set; } [ObservableProperty] - [UndefinedChar] + [Attributes.UndefinedChar] [NotifyDataErrorInfo] public partial string NewFamilyName { get; set; } diff --git a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml index 0a5d6dd..bbe3879 100644 --- a/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml +++ b/ShrlAlgoToolkit.RevitAddins/RvFamily/RenameFamilyView.xaml @@ -1,7 +1,12 @@  + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> @@ -24,17 +24,17 @@ Columns="250,*,*,*" Rows="*,Auto"> + Style="{StaticResource ChipListBoxStyle}" + d:ItemsSource="{d:SampleData ItemCount=5}" + x:Name="LbCategories"> @@ -55,23 +55,23 @@ + Text="{Binding CategoryCount, StringFormat=类别数:{}{0:D}}" + VerticalAlignment="Center" /> - + + SelectionUnit="Cell" + mvvm:TextSearchAssist.SearchValue="{Binding Text, ElementName=TbFound, UpdateSourceTrigger=PropertyChanged}" + x:Name="DgRename">