Inheritance: ReactiveUI.ReactiveObject
コード例 #1
0
 public PopupItemViewModel(int symbolId, FileVm file, NSpan span, bool isDefenition, IntelliSensePopupViewModel popup)
 {
     SymbolId     = symbolId;
     File         = file;
     Span         = span;
     IsDefenition = isDefenition;
     Text         = file.Name + " (" + span + ")"; // TODO: convert to line pos and make line preview
     Popup        = popup;
 }
コード例 #2
0
ファイル: PopupItemViewModel.cs プロジェクト: rsdn/nitra
 public PopupItemViewModel(int symbolId, FileVm file, NSpan span, bool isDefenition, IntelliSensePopupViewModel popup)
 {
   SymbolId     = symbolId;
   File         = file;
   Span         = span;
   IsDefenition = isDefenition;
   Text         = file.Name + " (" + span + ")"; // TODO: convert to line pos and make line preview
   Popup        = popup;
 }
コード例 #3
0
    public NitraTextEditorViewModel(MainWindowViewModel host)
    {
      Host = host;

      IntelliSensePopup = new IntelliSensePopupViewModel(this);
      
      TryHighlightBraces = ReactiveCommand.Create();
      TryHighlightBraces.Subscribe(_ => {
        //if (_matchedBracketsMarkers.Count > 0)
        //{
        //  foreach (var marker in _matchedBracketsMarkers)
        //    _textMarkerService.Remove(marker);
        //  _matchedBracketsMarkers.Clear();
        //}

        //var context = new MatchBracketsWalker.Context(caretPos);
        //_matchBracketsWalker.Walk(_parseResult, context);
        //_matchedBrackets = context.Brackets;

        //if (context.Brackets != null)
        //{
        //  foreach (var bracket in context.Brackets)
        //  {
        //    var marker1 = _textMarkerService.Create(bracket.OpenBracket.StartPos, bracket.OpenBracket.Length);
        //    marker1.BackgroundColor = Colors.LightGray;
        //    _matchedBracketsMarkers.Add(marker1);

        //    var marker2 = _textMarkerService.Create(bracket.CloseBracket.StartPos, bracket.CloseBracket.Length);
        //    marker2.BackgroundColor = Colors.LightGray;
        //    _matchedBracketsMarkers.Add(marker2);
        //  }
        //}
      });

      this.WhenAnyValue(vm => vm.CaretOffset)
          .InvokeCommand(TryHighlightBraces);
    }
コード例 #4
0
        public NitraTextEditorViewModel(MainWindowViewModel host)
        {
            Host = host;

            IntelliSensePopup = new IntelliSensePopupViewModel(this);

            TryHighlightBraces = ReactiveCommand.Create();
            TryHighlightBraces.Subscribe(_ => {
                //if (_matchedBracketsMarkers.Count > 0)
                //{
                //  foreach (var marker in _matchedBracketsMarkers)
                //    _textMarkerService.Remove(marker);
                //  _matchedBracketsMarkers.Clear();
                //}

                //var context = new MatchBracketsWalker.Context(caretPos);
                //_matchBracketsWalker.Walk(_parseResult, context);
                //_matchedBrackets = context.Brackets;

                //if (context.Brackets != null)
                //{
                //  foreach (var bracket in context.Brackets)
                //  {
                //    var marker1 = _textMarkerService.Create(bracket.OpenBracket.StartPos, bracket.OpenBracket.Length);
                //    marker1.BackgroundColor = Colors.LightGray;
                //    _matchedBracketsMarkers.Add(marker1);

                //    var marker2 = _textMarkerService.Create(bracket.CloseBracket.StartPos, bracket.CloseBracket.Length);
                //    marker2.BackgroundColor = Colors.LightGray;
                //    _matchedBracketsMarkers.Add(marker2);
                //  }
                //}
            });

            this.WhenAnyValue(vm => vm.CaretOffset)
            .InvokeCommand(TryHighlightBraces);
        }