示例#1
0
        private bool SetTaskStatus(VSConstants.VsSearchTaskStatus status) {
            if (status == Started && !TrySetTaskStatus(status, Created)) {
                return false;
            }

            if (status == Stopped && !TrySetTaskStatus(status, Started) && !TrySetTaskStatus(status, Created)) {
                return false;
            }

            if ((status == Completed || status == Error) && !TrySetTaskStatus(status, Started)) {
                return false;
            }

            return _taskStatus != (long)Stopped;
        }
        public TextBufferInitializationTracker(
            string documentName,
            IVsHierarchy hierarchy,
            VSConstants.VSITEMID itemid,
            IVsTextLines textLines,
            Guid languageServiceId,
            List<TextBufferInitializationTracker> trackers) {
            VsAppShell.Current.CompositionService.SatisfyImportsOnce(this);

            _documentName = documentName;
            _hierarchy = hierarchy;
            _itemid = itemid;
            _textLines = textLines;
            _languageServiceGuid = languageServiceId;
            _trackers = trackers;

            IConnectionPointContainer cpc = textLines as IConnectionPointContainer;
            Guid g = typeof(IVsTextBufferDataEvents).GUID;
            cpc.FindConnectionPoint(g, out cp);
            cp.Advise(this, out cookie);

            _trackers.Add(this);
        }
 public override string Goto(VSConstants.VSStd97CmdID cmd, IVsTextView textView, int line, int col, out TextSpan span)
 {
     span = new TextSpan();
     return null;
 }
 public EmacsCommandAttribute(VSConstants.VSStd2KCmdID command)
     : this((int)command, typeof(VSConstants.VSStd2KCmdID).GUID)
 { }
示例#5
0
 private bool TrySetTaskStatus(VSConstants.VsSearchTaskStatus value, VSConstants.VsSearchTaskStatus comparand) {
     var v = (long)value;
     var c = (long)comparand;
     return Interlocked.CompareExchange(ref _taskStatus, v, c) == c;
 }