public void settingsChanged() { DaemonCodeAnalyzerSettings settings = DaemonCodeAnalyzerSettings.getInstance(); if (settings.isCodeHighlightingChanged(myLastSettings)) { restart(); } myLastSettings = (DaemonCodeAnalyzerSettings) settings.clone(); }
void repaintErrorStripeRenderer(Editor editor) { if (!myProject.isInitialized()) return; final Document document = editor.getDocument(); final PsiFile psiFile = PsiDocumentManager.getInstance(myProject).getPsiFile(document); final EditorMarkupModel markup = (EditorMarkupModel) editor.getMarkupModel(); markup.setErrorPanelPopupHandler(new DaemonEditorPopup(psiFile)); markup.setErrorStripTooltipRendererProvider(new DaemonTooltipRendererProvider(myProject)); markup.setMinMarkHeight(DaemonCodeAnalyzerSettings.getInstance().ERROR_STRIPE_MARK_MIN_HEIGHT); TrafficLightRenderer.setOrRefreshErrorStripeRenderer(markup, myProject, document, psiFile); }
private boolean showAddImportHint(HighlightInfo info) { if (!DaemonCodeAnalyzerSettings.getInstance().isImportHintEnabled()) return false; if (!DaemonCodeAnalyzer.getInstance(myProject).isImportHintsEnabled(myFile)) return false; PsiElement element = myFile.findElementAt(info.startOffset); if (element == null || !element.isValid()) return false; final List<Pair<HighlightInfo.IntentionActionDescriptor, TextRange>> list = info.quickFixActionRanges; for (Pair<HighlightInfo.IntentionActionDescriptor, TextRange> pair : list) { final IntentionAction action = pair.getFirst().getAction(); if (action instanceof HintAction && action.isAvailable(myProject, myEditor, myFile)) { return ((HintAction) action).showHint(myEditor); } } return false; }