修改命名空间
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
using Autodesk.Windows;
|
||||
|
||||
using ShrlAlgoToolkit.RevitCore.Assists;
|
||||
|
||||
namespace ShrlAlgoToolkit.RevitCore.Extensions
|
||||
{
|
||||
/// <summary>
|
||||
/// 为菜单按钮设置快捷键的扩展类
|
||||
/// </summary>
|
||||
/// <para>
|
||||
/// private void SetShortcuts(Autodesk.Revit.UI.RibbonItem ribbonItem, params string[] shortcuts)
|
||||
/// {
|
||||
/// App.app.ControlledApplication.ApplicationInitialized += (object s, ApplicationInitializedEventArgs e)=>
|
||||
/// {
|
||||
/// KeyboardShortcutExtension.SetShortcutUnique(Autodesk.Windows.RibbonItem(需要转换), shortcuts);
|
||||
/// };
|
||||
///}
|
||||
/// </para>
|
||||
public static class KeyboardShortcutExtension
|
||||
{
|
||||
/// <summary>
|
||||
/// 设置快捷键
|
||||
/// </summary>
|
||||
/// <param name="ribbonItem"></param>
|
||||
/// <param name="shortcuts"></param>
|
||||
/// <returns></returns>
|
||||
public static bool SetShortcut(this Autodesk.Windows.RibbonItem ribbonItem, params string[] shortcuts)
|
||||
{
|
||||
KeyboardShortcutService keyboardShortcutService = new KeyboardShortcutService();
|
||||
keyboardShortcutService.RemoveRibbonItemShortcut(ribbonItem.Id);
|
||||
return keyboardShortcutService.SetRibbonItemShortcut(ribbonItem.Id, string.Join("#", shortcuts));
|
||||
}
|
||||
/// <summary>
|
||||
/// 设置唯一快捷键
|
||||
/// </summary>
|
||||
/// <param name="ribbonItem"></param>
|
||||
/// <param name="shortcuts"></param>
|
||||
/// <returns></returns>
|
||||
public static bool SetShortcutUnique(this Autodesk.Windows.RibbonItem ribbonItem, params string[] shortcuts)
|
||||
{
|
||||
KeyboardShortcutService keyboardShortcutService = new KeyboardShortcutService();
|
||||
string text = shortcuts[0];
|
||||
return !keyboardShortcutService.HasRibbonItemShortcut(ribbonItem.Id) && !keyboardShortcutService.HasCommandShortcut(text) && keyboardShortcutService.SetRibbonItemShortcut(ribbonItem.Id, string.Join("#", shortcuts));
|
||||
}
|
||||
/// <summary>
|
||||
/// 是否具有快捷键
|
||||
/// </summary>
|
||||
/// <param name="ribbonItem"></param>
|
||||
/// <returns></returns>
|
||||
public static bool HasShortcut(this Autodesk.Windows.RibbonItem ribbonItem)
|
||||
{
|
||||
return new KeyboardShortcutService().HasRibbonItemShortcut(ribbonItem.Id);
|
||||
}
|
||||
/// <summary>
|
||||
/// 移除快捷键
|
||||
/// </summary>
|
||||
/// <param name="ribbonItem"></param>
|
||||
/// <returns></returns>
|
||||
public static bool RemoveShortcut(this Autodesk.Windows.RibbonItem ribbonItem)
|
||||
{
|
||||
return new KeyboardShortcutService().RemoveRibbonItemShortcut(ribbonItem.Id);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user