private void IndentGuideGeneralOptionUpdated(GeneralOptionProvider sender) { // ReSharper disable CompareOfFloatsByEqualityOperator if (sender.IsEnabledIndentGuides == _isEnabled && sender.IndentGuideThickness == _thickness && sender.IndentGuideDashSize == _dashSize && sender.IndentGuideSpaceSize == _spaceSize && sender.IndentGuideOffsetX == _offsetX && sender.IndentGuideOffsetY == _offsetY) { return; } // ReSharper restore CompareOfFloatsByEqualityOperator _isEnabled = sender.IsEnabledIndentGuides; _thickness = sender.IndentGuideThickness; _dashSize = sender.IndentGuideDashSize; _spaceSize = sender.IndentGuideSpaceSize; _offsetX = sender.IndentGuideOffsetX; _offsetY = sender.IndentGuideOffsetY; _currentResult = _documentAnalysis.CurrentResult; if (_isEnabled) { UpdateIndentGuides(); } else { ClearIndentGuides(); } }
public ScopedCompletionProvider(GeneralOptionProvider generalOptionProvider, INavigationTokenService navigationTokenService) : base(generalOptionProvider) { _navigationTokenService = navigationTokenService; _autocompleteLabels = generalOptionProvider.AutocompleteLabels; _autocompleteVariables = generalOptionProvider.AutocompleteVariables; }
private void OptionsUpdated(GeneralOptionProvider sender) { if (sender.SortOptions != SortState) { SortState = sender.SortOptions; SortAndReloadFunctionList(); } Autoscroll = sender.AutoScroll; }
public InstructionCompletionProvider(GeneralOptionProvider generalOptionProvider, IInstructionListManager instructionListManager) : base(generalOptionProvider) { _autocomplete = generalOptionProvider.AutocompleteInstructions; _asm1InstructionCompletions = new List <InstructionCompletionItem>(); _asm2InstructionCompletions = new List <InstructionCompletionItem>(); instructionListManager.InstructionsUpdated += InstructionsUpdated; InstructionsUpdated(instructionListManager, AsmType.RadAsmCode); }
private void OptionsUpdated(GeneralOptionProvider provider) { var sb = new StringBuilder(); var newInstructionPaths = new HashSet <string>(StringComparer.OrdinalIgnoreCase); foreach (var directory in provider.InstructionsPaths) { try { foreach (var path in Directory.EnumerateFiles(directory, $"*{Constants.FileExtensionAsm1Doc}") .Concat(Directory.EnumerateFiles(directory, $"*{Constants.FileExtensionAsm2Doc}"))) { newInstructionPaths.Add(path); } } catch (Exception e) when( e is DirectoryNotFoundException || e is PathTooLongException || e is SecurityException || e is IOException || e is UnauthorizedAccessException) { sb.AppendLine(e.Message); } } if (sb.Length != 0) { Error.ShowErrorMessage(sb.ToString(), "Instruction loader"); } lock (_lock) { var invalidatedPaths = newInstructionPaths.ToHashSet(); invalidatedPaths.SymmetricExceptWith(_instructionSetPaths.Keys); // skip if options haven't changed if (invalidatedPaths.Count == 0) { return; } invalidatedPaths.ExceptWith(newInstructionPaths); CleanInstructionSets(invalidatedPaths); // now _instructionSetPaths contains only elements which is both in new sets and old sets newInstructionPaths.ExceptWith(_instructionSetPaths.Keys); } _ = Task.Run(() => LoadInstructionsFromDirectoriesAsync(newInstructionPaths)); }
public FunctionListControl(GeneralOptionProvider generalOptionProvider, OleMenuCommandService service) { items = new List <FunctionListItem>(); hideLineNumber = false; searchText = string.Empty; SortState = generalOptionProvider.SortOptions; Autoscroll = generalOptionProvider.AutoScroll; _commandService = service; InitializeComponent(); tokens.LayoutUpdated += (s, e) => SetLineNumberColumnWidth(); generalOptionProvider.OptionsUpdated += OptionsUpdated; typeFilter.Content = TypeFilterState.ToString(); }
public IndentGuide(IWpfTextView textView, IDocumentAnalysis documentAnalysis, GeneralOptionProvider generalOptionProvider) { _textView = textView ?? throw new NullReferenceException(); _generalOption = generalOptionProvider ?? throw new NullReferenceException(); _documentAnalysis = documentAnalysis ?? throw new NullReferenceException(); _currentAdornments = new List <Line>(); _canvas = new Canvas { HorizontalAlignment = HorizontalAlignment.Stretch, VerticalAlignment = VerticalAlignment.Stretch }; _layer = _textView.GetAdornmentLayer(Constants.IndentGuideAdornmentLayerName) ?? throw new NullReferenceException(); _layer.AddAdornment(AdornmentPositioningBehavior.OwnerControlled, null, null, _canvas, CanvasRemoved); _textView.LayoutChanged += LayoutChanged; _documentAnalysis.AnalysisUpdated += AnalysisUpdated; _generalOption.OptionsUpdated += IndentGuideGeneralOptionUpdated; _textView.Options.OptionChanged += TabSizeOptionsChanged; _tabSize = textView.Options.GetOptionValue(DefaultOptions.TabSizeOptionId); IndentGuideGeneralOptionUpdated(_generalOption); }
public override void DisplayOptionsUpdated(GeneralOptionProvider sender) { _autocompleteLabels = sender.AutocompleteLabels; _autocompleteVariables = sender.AutocompleteVariables; }
public IndentGuideFactory(IDocumentFactory documentFactory) { _documentFactory = documentFactory; _generalOptionProvider = GeneralOptionProvider.Instance; _documentFactory.DocumentDisposed += DisposeRequest; }
private static void OptionsUpdated(GeneralOptionProvider sender) { SignatureConfig.Asm1Instance.Enabled = sender.SignatureHelp; SignatureConfig.Asm2Instance.Enabled = sender.SignatureHelp; }
public abstract void DisplayOptionsUpdated(GeneralOptionProvider sender);
public RadCompletionProvider(GeneralOptionProvider generalOptionProvider) { generalOptionProvider.OptionsUpdated += DisplayOptionsUpdated; }
public override void DisplayOptionsUpdated(GeneralOptionProvider sender) => _autocompleteFunctions = sender.AutocompleteFunctions;
public FunctionCompletionProvider(GeneralOptionProvider generalOptionProvider, INavigationTokenService navigationTokenService) : base(generalOptionProvider) { _autocompleteFunctions = generalOptionProvider.AutocompleteFunctions; _navigationTokenService = navigationTokenService; }