final String where = "updatePartControl"; //$NON-NLS-1$ if (setFocusIsRunning) { trace(where, "ERROR: trying to call update while processing focus", fStatusControl); //$NON-NLS-1$ } else { trace(where, "START", fStatusControl); //$NON-NLS-1$ restoreFocus= containsFocus(fStatusControl); trace(where, "status control disposed", fStatusControl); //$NON-NLS-1$ fStatusControl= null; if (getDocumentProvider() instanceof IDocumentProviderExtension) { IDocumentProviderExtension extension= (IDocumentProviderExtension) getDocumentProvider(); IStatus status= extension.getStatus(input); if (!isErrorStatus(status)) { front= fDefaultComposite; } else { fStatusControl= createStatusControl(fParent, status); trace(where, "status control created", fStatusControl); //$NON-NLS-1$ front= fStatusControl; fStackLayout.topControl= front; fParent.layout(); updateStatusFields(); if (restoreFocus && fStatusControl != null && !containsFocus(fStatusControl)) { fParent.setFocus(); trace(where, "END", fStatusControl); //$NON-NLS-1$
protected void updateStatusField(String category) { IDocumentProvider provider= getDocumentProvider(); if (provider instanceof IDocumentProviderExtension) { IDocumentProviderExtension extension= (IDocumentProviderExtension) provider; IStatus status= extension.getStatus(getEditorInput()); if (isErrorStatus(status)) { IStatusField field= getStatusField(category); if (field != null) { field.setText(fErrorLabel); return; } } } super.updateStatusField(category); }
public void dispose() { if (fSourceViewerDecorationSupport != null) { fSourceViewerDecorationSupport.dispose(); fSourceViewerDecorationSupport= null; } fAnnotationAccess= null; fAnnotationPreferences= null; fLineNumberRulerColumn= null; fLineColumn= null; super.dispose(); }
public String getEncoding() { IDocumentProvider p= fTextEditor.getDocumentProvider(); if (p instanceof IStorageDocumentProvider) { IStorageDocumentProvider provider= (IStorageDocumentProvider) p; return provider.getEncoding(fTextEditor.getEditorInput()); } return null; }
private void updatePartControl() { if (fParent != null && !fParent.isDisposed()) { updatePartControl(getEditorInput()); } }
public boolean validateEditorInputState() { if (!super.validateEditorInputState()) return false; if (getDocumentProvider() instanceof IDocumentProviderExtension) { IDocumentProviderExtension extension= (IDocumentProviderExtension)getDocumentProvider(); IStatus status= extension.getStatus(getEditorInput()); return !isErrorStatus(status) && status.getSeverity() != IStatus.CANCEL; } return true; }
IDocumentProvider p= fTextEditor.getDocumentProvider(); if (p instanceof IStorageDocumentProvider) { final IEditorInput input= fTextEditor.getEditorInput(); IStorageDocumentProvider provider= (IStorageDocumentProvider)p; String current= provider.getEncoding(input); if (!fTextEditor.isDirty()) { String internal= encoding == null ? "" : encoding; //$NON-NLS-1$ boolean apply= (overwrite || current == null) && !internal.equals(current); Display display= fTextEditor.getSite().getShell().getDisplay(); if (display != null && !display.isDisposed()) BusyIndicator.showWhile(display, encodingSetter);
@Override public IDocumentProvider getDocumentProvider() { IDocumentProvider provider= super.getDocumentProvider(); if (provider == null) return fImplicitDocumentProvider; return provider; }
protected boolean isErrorStatus(IStatus status) { if (!super.isErrorStatus(status)) return false; if (!status.isMultiStatus()) return !isReadOnlyLocalStatus(status); IStatus[] childrenStatus= status.getChildren(); for (int i= 0; i < childrenStatus.length; i++) { if (childrenStatus[i].getSeverity() == IStatus.ERROR && !isReadOnlyLocalStatus(childrenStatus[i])) return true; } return false; }
@Override protected Control createStatusControl(Composite parent, final IStatus status) { Object adapter= getAdapter(IEncodingSupport.class); DefaultEncodingSupport encodingSupport= null; if (adapter instanceof DefaultEncodingSupport) encodingSupport= (DefaultEncodingSupport)adapter; if (encodingSupport == null || !encodingSupport.isEncodingError(status)) return super.createStatusControl(parent, status); Shell shell= getSite().getShell(); Display display= shell.getDisplay(); Color bgColor= display.getSystemColor(SWT.COLOR_LIST_BACKGROUND); Color fgColor= display.getSystemColor(SWT.COLOR_LIST_FOREGROUND); Composite composite= new Composite(parent, SWT.NONE); composite.setLayout(new GridLayout()); composite.setBackground(bgColor); composite.setForeground(fgColor); Control control= super.createStatusControl(composite, status); control.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); Composite buttonComposite= new Composite(composite, SWT.NONE); buttonComposite.setLayout(new GridLayout()); buttonComposite.setLayoutData(new GridData(GridData.FILL_BOTH)); buttonComposite.setBackground(bgColor); buttonComposite.setForeground(fgColor); encodingSupport.createStatusEncodingChangeControl(buttonComposite, status); return composite; }
protected void doSetInput(IEditorInput input) throws CoreException { fIsDerivedStateValidated= false; fIsEditingDerivedFileAllowed= true; if (fLineColumn != null) fLineColumn.hideRevisionInformation(); super.doSetInput(input); RulerColumnDescriptor lineNumberColumnDescriptor= RulerColumnRegistry.getDefault().getColumnDescriptor(LineNumberColumn.ID); if (lineNumberColumnDescriptor != null) { IColumnSupport columnSupport= (IColumnSupport)getAdapter(IColumnSupport.class); columnSupport.setColumnVisible(lineNumberColumnDescriptor, isLineNumberRulerVisible() || isPrefQuickDiffAlwaysOn()); } }
protected void editorContextMenuAboutToShow(IMenuManager menu) { super.editorContextMenuAboutToShow(menu); IAction preferencesAction= getAction(ITextEditorActionConstants.CONTEXT_PREFERENCES); menu.appendToGroup(IWorkbenchActionConstants.MB_ADDITIONS, new Separator(ITextEditorActionConstants.GROUP_SETTINGS)); menu.appendToGroup(ITextEditorActionConstants.GROUP_SETTINGS, preferencesAction); menu.appendToGroup(ITextEditorActionConstants.GROUP_SAVE, new Separator(ITextEditorActionConstants.GROUP_OPEN)); MenuManager showInSubMenu= new MenuManager(getShowInMenuLabel()); showInSubMenu.add(ContributionItemFactory.VIEWS_SHOW_IN.create(getEditorSite().getWorkbenchWindow())); menu.appendToGroup(ITextEditorActionConstants.GROUP_OPEN, showInSubMenu); }
public Object getAdapter(Class adapter) { if (IGotoMarker.class.equals(adapter)) return fGotoMarkerAdapter; if (IAnnotationAccess.class.equals(adapter)) return getAnnotationAccess(); if (adapter == IShowInSource.class) { return new IShowInSource() { public ShowInContext getShowInContext() { ISelection selection= null; ISelectionProvider selectionProvider= getSelectionProvider(); if (selectionProvider != null) selection= selectionProvider.getSelection(); return new ShowInContext(getEditorInput(), selection); } }; } if (IRevisionRulerColumn.class.equals(adapter)) { if (fLineNumberRulerColumn instanceof IRevisionRulerColumn) return fLineNumberRulerColumn; } return super.getAdapter(adapter); }
public void createPartControl(Composite parent) { super.createPartControl(parent); if (fSourceViewerDecorationSupport != null) fSourceViewerDecorationSupport.install(getPreferenceStore()); IColumnSupport columnSupport= (IColumnSupport)getAdapter(IColumnSupport.class); if (isLineNumberRulerVisible()) { RulerColumnDescriptor lineNumberColumnDescriptor= RulerColumnRegistry.getDefault().getColumnDescriptor(LineNumberColumn.ID); if (lineNumberColumnDescriptor != null) columnSupport.setColumnVisible(lineNumberColumnDescriptor, true); } if (isPrefQuickDiffAlwaysOn()) showChangeInformation(true); if (!isOverwriteModeEnabled()) enableOverwriteMode(false); if (!isRangeIndicatorEnabled()) { getSourceViewer().removeRangeIndication(); getSourceViewer().setRangeIndicator(null); } // Assign the quick assist assistant to the annotation access. ISourceViewer viewer= getSourceViewer(); if (fAnnotationAccess instanceof IAnnotationAccessExtension2 && viewer instanceof ISourceViewerExtension3) ((IAnnotationAccessExtension2)fAnnotationAccess).setQuickAssistAssistant(((ISourceViewerExtension3)viewer).getQuickAssistAssistant()); }
protected void createActions() { super.createActions();
@Override protected void doSetInput(IEditorInput input) throws CoreException { super.doSetInput(input); if (fParent != null && !fParent.isDisposed()) updatePartControl(getEditorInput()); }
@Override public boolean validateEditorInputState() { if (!super.validateEditorInputState()) return false; if (getDocumentProvider() instanceof IDocumentProviderExtension) { IDocumentProviderExtension extension= (IDocumentProviderExtension)getDocumentProvider(); IStatus status= extension.getStatus(getEditorInput()); return !isErrorStatus(status) && status.getSeverity() != IStatus.CANCEL; } return true; }
IDocumentProvider p= fTextEditor.getDocumentProvider(); if (p instanceof IStorageDocumentProvider) { final IEditorInput input= fTextEditor.getEditorInput(); IStorageDocumentProvider provider= (IStorageDocumentProvider)p; String current= provider.getEncoding(input); if (!fTextEditor.isDirty()) { String internal= encoding == null ? "" : encoding; //$NON-NLS-1$ boolean apply= (overwrite || current == null) && !internal.equals(current); Display display= fTextEditor.getSite().getShell().getDisplay(); if (display != null && !display.isDisposed()) BusyIndicator.showWhile(display, encodingSetter);
@Override public String getEncoding() { IDocumentProvider p= fTextEditor.getDocumentProvider(); if (p instanceof IStorageDocumentProvider) { IStorageDocumentProvider provider= (IStorageDocumentProvider) p; return provider.getEncoding(fTextEditor.getEditorInput()); } return null; }
public IDocumentProvider getDocumentProvider() { IDocumentProvider provider= super.getDocumentProvider(); if (provider == null) return fImplicitDocumentProvider; return provider; }