コード例 #1
0
ファイル: CommonHelper.cs プロジェクト: rambom/Source
        /// <summary>
        /// 转换命令状态
        /// </summary>
        /// <param name="cmdViewStatus"></param>
        /// <returns></returns>
        public static vsCommandStatus Convert2VsCmdStatus(CommandViewStatus cmdViewStatus)
        {
            vsCommandStatus status = vsCommandStatus.vsCommandStatusSupported;;

            switch (cmdViewStatus)
            {
            case CommandViewStatus.Enabled:
                status |= vsCommandStatus.vsCommandStatusEnabled;
                break;

            case CommandViewStatus.Disabled:
                status = vsCommandStatus.vsCommandStatusSupported;
                break;

            case CommandViewStatus.Visible:
                status |= vsCommandStatus.vsCommandStatusEnabled;
                break;

            case CommandViewStatus.Invisible:
                status |= vsCommandStatus.vsCommandStatusInvisible;
                break;

            default:
                status = vsCommandStatus.vsCommandStatusInvisible;
                break;
            }
            return(status);
        }
コード例 #2
0
ファイル: CommandAttribute.cs プロジェクト: Nacro8/xiaobier
 /// <summary>
 /// constructor 2
 /// </summary>
 /// <param name="key">唯一键值</param>
 /// <param name="controlType">控件类型</param>
 /// <param name="iconResource">图标资源索引</param>
 /// <param name="useMsoButton">使用msobutton</param>
 /// <param name="position">插入位置</param>
 /// <param name="tooltip">提示</param>
 /// <param name="caption">显示文字</param>
 /// <param name="initViewStatus">初始状态</param>
 public CommandAttribute(string key, MsoControlType controlType, int iconResource, bool useMsoButton, int position, string tooltip, string caption, CommandViewStatus initViewStatus)
 {
     Key = key;
     ControlType = controlType;
     IconResource = iconResource;
     UseMsoButton = useMsoButton;
     Position = position;
     Tooltip = tooltip;
     Caption = caption;
 }
コード例 #3
0
ファイル: Main.cs プロジェクト: rambom/Source
        /// <summary>实现 IDTCommandTarget 接口的 QueryStatus 方法。此方法在更新该命令的可用性时调用</summary>
        /// <param term='commandName'>要确定其状态的命令的名称。</param>
        /// <param term='neededText'>该命令所需的文本。</param>
        /// <param term='viewStatus'>该命令在用户界面中的状态。</param>
        /// <param term='commandText'>neededText 参数所要求的文本。</param>
        /// <seealso class='Exec' />
        public void QueryStatus(string commandName, vsCommandStatusTextWanted neededText, ref vsCommandStatus status, ref object commandText)
        {
            if (neededText != vsCommandStatusTextWanted.vsCommandStatusTextWantedNone)
            {
                return;
            }

            status = vsCommandStatus.vsCommandStatusSupported;

            if (_dicCommand.ContainsKey(commandName))
            {
                CommandViewStatus cmdViewStatus = _dicCommand[commandName].GetStatus();

                status = CommonHelper.Convert2VsCmdStatus(cmdViewStatus);
            }
        }
コード例 #4
0
        /// <summary>
        /// 获得命令呈现状态
        /// </summary>
        /// <param name="dteHelper"> </param>
        /// <returns></returns>
        public virtual CommandViewStatus GetStatus()
        {
            CommandViewStatus viewStatus = CommandViewStatus.Disabled;

            if (null != _dteHelper.Dte2.ActiveWindow && vsWindowType.vsWindowTypeDocument == _dteHelper.Dte2.ActiveWindow.Type &&
                _dteHelper.Dte2.ActiveWindow.Document.FullName.EndsWith(Constant.CSharpFileExtension))   //csharp文档窗口
            {
                //当前光标处元素是方法
                viewStatus = CommandViewStatus.Enabled;
            }
            else if (null != _dteHelper.Dte2.ActiveWindow && vsWindowType.vsWindowTypeSolutionExplorer == _dteHelper.Dte2.ActiveWindow.Type && null != CurrentCodeElement)
            {//解决方案窗口
                viewStatus = CommandViewStatus.Enabled;
            }
            return(viewStatus);
        }
コード例 #5
0
ファイル: CommonHelper.cs プロジェクト: Nacro8/xiaobier
        /// <summary>
        /// 转换命令状态
        /// </summary>
        /// <param name="cmdViewStatus"></param>
        /// <returns></returns>
        public static vsCommandStatus Convert2VsCmdStatus(CommandViewStatus cmdViewStatus)
        {
            vsCommandStatus status = vsCommandStatus.vsCommandStatusSupported; ;

            switch (cmdViewStatus)
            {
                case CommandViewStatus.Enabled:
                    status |= vsCommandStatus.vsCommandStatusEnabled;
                    break;
                case CommandViewStatus.Disabled:
                    status = vsCommandStatus.vsCommandStatusSupported;
                    break;
                case CommandViewStatus.Visible:
                    status |= vsCommandStatus.vsCommandStatusEnabled;
                    break;
                case CommandViewStatus.Invisible:
                    status |= vsCommandStatus.vsCommandStatusInvisible;
                    break;
                default:
                    status = vsCommandStatus.vsCommandStatusInvisible;
                    break;
            }
            return status;
        }
コード例 #6
0
 /// <summary>
 /// constructor 2
 /// </summary>
 /// <param name="key">唯一键值</param>
 /// <param name="controlType">控件类型</param>
 /// <param name="iconResource">图标资源索引</param>
 /// <param name="useMsoButton">使用msobutton</param>
 /// <param name="position">插入位置</param>
 /// <param name="tooltip">提示</param>
 /// <param name="caption">显示文字</param>
 /// <param name="initViewStatus">初始状态</param>
 public CommandAttribute(string key, MsoControlType controlType, int iconResource, bool useMsoButton, int position, string tooltip, string caption, CommandViewStatus initViewStatus)
 {
     Key          = key;
     ControlType  = controlType;
     IconResource = iconResource;
     UseMsoButton = useMsoButton;
     Position     = position;
     Tooltip      = tooltip;
     Caption      = caption;
 }