当前位置: 首页>>代码示例>>C#>>正文


C# SnapshotSpan.IsCommand方法代码示例

本文整理汇总了C#中SnapshotSpan.IsCommand方法的典型用法代码示例。如果您正苦于以下问题:C# SnapshotSpan.IsCommand方法的具体用法?C# SnapshotSpan.IsCommand怎么用?C# SnapshotSpan.IsCommand使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SnapshotSpan的用法示例。


在下文中一共展示了SnapshotSpan.IsCommand方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GetClassificationSpans

        /// <summary>
        /// This method scans the given SnapshotSpan for potential matches for this classification.
        /// In this instance, it classifies everything and returns each span as a new ClassificationSpan.
        /// </summary>
        /// <param name="trackingSpan">The span currently being classified</param>
        /// <returns>A list of ClassificationSpans that represent spans identified to be of this classification</returns>
        public IList<ClassificationSpan> GetClassificationSpans(SnapshotSpan span)
        {
            List<ClassificationSpan> classifications = new List<ClassificationSpan>();

            /*
             * Comment Classifications
             */
            if (span.IsComment())
                classifications.Add(new ClassificationSpan(span, _commentClassificationType));

            /*
             * Keyword Classifications
             */
            if (span.IsCommand())
            {
                string command = span.GetCommand();
                classifications.Add(new ClassificationSpan(new SnapshotSpan(span.Start, command.Length), _keywordClassificationType));
            }

            return classifications;
        }
开发者ID:managedfusion,项目名称:managedfusion-rewriter-visualstudio,代码行数:27,代码来源:ApacheClassifier.cs

示例2: OnKeyDown

        private void OnKeyDown(object sender, KeyEventArgs e)
        {
            // Make sure that this event happened on the same text view to which we're attached.
            ITextView textView = sender as ITextView;
            if (this.subjectTextView != textView)
                return;

            // if there is a session already leave it be
            if (activeSession != null)
                return;

            // determine which subject buffer is affected by looking at the caret position
            SnapshotPoint? caret = textView.Caret.Position.Point.GetPoint(textBuffer => (
                    subjectBuffers.Contains(textBuffer)),
                    PositionAffinity.Predecessor);

            // return if no suitable buffer found
            if (!caret.HasValue)
                return;

            SnapshotPoint caretPoint = caret.Value;
            ITextSnapshotLine line = caretPoint.GetContainingLine();
            SnapshotSpan span = new SnapshotSpan(line.Start, line.End);

            if (span.IsComment() || span.IsCommand())
                return;

            // the invocation occurred in a subject buffer of interest to us
            triggerPosition = caretPoint.Position;
            ITrackingPoint triggerPoint = caretPoint.Snapshot.CreateTrackingPoint(triggerPosition, PointTrackingMode.Negative);
            completionSpan = caretPoint.Snapshot.CreateTrackingSpan(caretPoint.Position, 0, SpanTrackingMode.EdgeInclusive);

            // Create a completion session
            activeSession = completionBroker.CreateCompletionSession(textView, triggerPoint, true);

            // Put the completion context and original (empty) completion span
            // on the session so that it can be used by the completion source
            activeSession.Properties.AddProperty(typeof(ApacheIntellisenseController), completionSpan);

            // Attach to the session events
            activeSession.Dismissed += new System.EventHandler(OnActiveSessionDismissed);
            activeSession.Committed += new System.EventHandler(OnActiveSessionCommitted);

            // Start the completion session. The intellisense will be triggered.
            activeSession.Start();
        }
开发者ID:managedfusion,项目名称:managedfusion-rewriter-visualstudio,代码行数:46,代码来源:ApacheIntellisenseController.cs

示例3: IsCommand

 public static bool IsCommand(this ITextSnapshotLine line)
 {
     SnapshotSpan span = new SnapshotSpan(line.Start, line.End);
     return span.IsCommand();
 }
开发者ID:managedfusion,项目名称:managedfusion-rewriter-visualstudio,代码行数:5,代码来源:ApacheLineExtensions.cs


注:本文中的SnapshotSpan.IsCommand方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。