Java Code Examples for org.eclipse.jface.text.TextAttribute#getBackground()
The following examples show how to use
org.eclipse.jface.text.TextAttribute#getBackground() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: TextAttributeProvider.java From xtext-eclipse with Eclipse Public License 2.0 | 6 votes |
private TextAttribute merge(TextAttribute first, TextAttribute second) { if (first == null) return second; if (second == null) return first; int style = first.getStyle() | second.getStyle(); Color fgColor = second.getForeground(); if (fgColor == null) fgColor = first.getForeground(); Color bgColor = second.getBackground(); if (bgColor == null) bgColor = first.getBackground(); Font font = second.getFont(); if (font == null) font = first.getFont(); return new TextAttribute(fgColor, bgColor, style, font); }
Example 2
Source File: StyleRanges.java From statecharts with Eclipse Public License 1.0 | 6 votes |
public List<StyleRange> getRanges(String expression) { final List<StyleRange> ranges = Lists.newArrayList(); DocumentEvent event = new DocumentEvent(); event.fDocument = new DummyDocument(expression); DocumentTokenSource tokenSource = tokenSourceProvider.get(); tokenSource.updateStructure(event); Iterator<ILexerTokenRegion> iterator = tokenSource.getTokenInfos().iterator(); while (iterator.hasNext()) { ILexerTokenRegion next = iterator.next(); TextAttribute attribute = attributeProvider.getAttribute(tokenTypeMapper.getId(next.getLexerTokenType())); StyleRange range = new StyleRange(next.getOffset(), next.getLength(), attribute.getForeground(), attribute.getBackground()); range.font = attribute.getFont(); range.fontStyle = attribute.getStyle(); ranges.add(range); } return merge(ranges); }
Example 3
Source File: DamageRepairer.java From LogViewer with Eclipse Public License 2.0 | 6 votes |
/** * Adds style information to the given text presentation. * * @param presentation the text presentation to be extended * @param offset the offset of the range to be styled * @param length the length of the range to be styled * @param attr the attribute describing the style of the range to be styled * @param wholeLine the boolean switch to declare that the whole line should be colored */ private void addRange(TextPresentation presentation, int offset, int length, TextAttribute attr, boolean wholeLine) { if (attr != null) { int style= attr.getStyle(); int fontStyle= style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); if(wholeLine) { try { int line = document.getLineOfOffset(offset); int start = document.getLineOffset(line); length = document.getLineLength(line); offset = start; } catch (BadLocationException e) { } } StyleRange styleRange = new StyleRange(offset,length,attr.getForeground(),attr.getBackground(),fontStyle); styleRange.strikeout = (style & TextAttribute.STRIKETHROUGH) != 0; styleRange.underline = (style & TextAttribute.UNDERLINE) != 0; presentation.addStyleRange(styleRange); } }
Example 4
Source File: NonRuleBasedDamagerRepairer.java From birt with Eclipse Public License 1.0 | 6 votes |
/** * Adds style information to the given text presentation. * * @param presentation * the text presentation to be extended * @param offset * the offset of the range to be styled * @param length * the length of the range to be styled * @param attr * the attribute describing the style of the range to be styled */ protected void addRange( TextPresentation presentation, int offset, int length, TextAttribute attr ) { if ( attr != null ) { int style= attr.getStyle(); int fontStyle= style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); StyleRange range = new StyleRange( offset, length, attr.getForeground( ), attr.getBackground( ), fontStyle ); range.strikeout = ( attr.getStyle( ) & TextAttribute.STRIKETHROUGH ) != 0; range.underline = ( attr.getStyle( ) & TextAttribute.UNDERLINE ) != 0; range.font= attr.getFont(); presentation.addStyleRange( range ); } }
Example 5
Source File: StyledTextForShowingCodeFactory.java From Pydev with Eclipse Public License 1.0 | 6 votes |
/** * Creates the ranges from parsing the code with the PyCodeScanner. * * @param textPresentation this is the container of the style ranges. * @param scanner the scanner used to parse the document. * @param doc document to parse. * @param partitionOffset the offset of the document we should parse. * @param partitionLen the length to be parsed. */ private void createDefaultRanges(TextPresentation textPresentation, PyCodeScanner scanner, Document doc, int partitionOffset, int partitionLen) { scanner.setRange(doc, partitionOffset, partitionLen); IToken nextToken = scanner.nextToken(); while (!nextToken.isEOF()) { Object data = nextToken.getData(); if (data instanceof TextAttribute) { TextAttribute textAttribute = (TextAttribute) data; int offset = scanner.getTokenOffset(); int len = scanner.getTokenLength(); Color foreground = textAttribute.getForeground(); Color background = textAttribute.getBackground(); int style = textAttribute.getStyle(); textPresentation.addStyleRange(new StyleRange(offset, len, foreground, background, style)); } nextToken = scanner.nextToken(); } }
Example 6
Source File: AttributedPosition.java From xtext-eclipse with Eclipse Public License 2.0 | 5 votes |
/** * @return Returns a corresponding style range. */ public StyleRange createStyleRange() { int len = getLength(); TextAttribute textAttribute = attribute; int style = textAttribute.getStyle(); int fontStyle = style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); StyleRange styleRange = new StyleRange(getOffset(), len, textAttribute.getForeground(), textAttribute.getBackground(), fontStyle); styleRange.strikeout = (style & TextAttribute.STRIKETHROUGH) != 0; styleRange.underline = (style & TextAttribute.UNDERLINE) != 0; styleRange.font = textAttribute.getFont(); return styleRange; }
Example 7
Source File: Theme.java From APICloud-Studio with GNU General Public License v3.0 | 5 votes |
public Color getBackground(String scope) { TextAttribute attr = getTextAttribute(scope); if (attr == null) { return null; } return attr.getBackground(); }
Example 8
Source File: ThemeingDamagerRepairer.java From APICloud-Studio with GNU General Public License v3.0 | 5 votes |
private boolean matchesDefaults(TextAttribute attr) { if (attr == null) { return false; } // Make sure font is just normal int style = attr.getStyle(); int fontStyle = style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); if (fontStyle != SWT.NORMAL) { return false; } if ((style & TextAttribute.STRIKETHROUGH) != 0) { return false; } if ((style & TextAttribute.UNDERLINE) != 0) { return false; } // Is FG different? Color fg = attr.getForeground(); if (fg != null && !fg.getRGB().equals(getCurrentTheme().getForeground())) { return false; } // Is BG different? Color bg = attr.getBackground(); if (bg != null && !bg.getRGB().equals(getCurrentTheme().getBackground())) { return false; } return true; }
Example 9
Source File: SemanticHighlightingManager.java From Eclipse-Postfix-Code-Completion with Eclipse Public License 1.0 | 5 votes |
/** * @return Returns a corresponding style range. */ public StyleRange createStyleRange() { int len= 0; if (fStyle.isEnabled()) len= getLength(); TextAttribute textAttribute= fStyle.getTextAttribute(); int style= textAttribute.getStyle(); int fontStyle= style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); StyleRange styleRange= new StyleRange(getOffset(), len, textAttribute.getForeground(), textAttribute.getBackground(), fontStyle); styleRange.strikeout= (style & TextAttribute.STRIKETHROUGH) != 0; styleRange.underline= (style & TextAttribute.UNDERLINE) != 0; return styleRange; }
Example 10
Source File: PyDefaultDamagerRepairer.java From Pydev with Eclipse Public License 1.0 | 5 votes |
/** * Adds style information to the given text presentation. * * @param presentation the text presentation to be extended * @param offset the offset of the range to be styled * @param length the length of the range to be styled * @param attr the attribute describing the style of the range to be styled */ protected void addRange(TextPresentation presentation, int offset, int length, TextAttribute attr) { if (attr != null) { int style = attr.getStyle(); int fontStyle = style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); StyleRange styleRange = new StyleRange(offset, length, attr.getForeground(), attr.getBackground(), fontStyle); styleRange.strikeout = (style & TextAttribute.STRIKETHROUGH) != 0; styleRange.underline = (style & TextAttribute.UNDERLINE) != 0; styleRange.font = attr.getFont(); presentation.addStyleRange(styleRange); } }
Example 11
Source File: LineBackgroundPainter.java From APICloud-Studio with GNU General Public License v3.0 | 4 votes |
public void lineGetBackground(LineBackgroundEvent event) { if (fViewer == null) { return; } final StyledText textWidget = fViewer.getTextWidget(); if (textWidget == null) { return; } try { final int offset = event.lineOffset; IDocument document = fViewer.getDocument(); int line = document.getLineOfOffset(offset); final IRegion lineRegion = document.getLineInformation(line); // Handle fully opaque line highlight here. A modified approach from CursorLinePainter. if (fEnabled && isOpaque() && isCurrentLine(line)) { // draw current line drawCurrentLine(event, lineRegion); return; } // Not drawing an opaque line highlight, so we need to do our normal line coloring here. // This extends the bg color out for a given line based on it's end scope. String endOfLineScope = getScopeManager().getScopeAtOffset(document, lineRegion.getLength() + offset); String commonPrefix = getScope(document, line, endOfLineScope); TextAttribute at = getCurrentTheme().getTextAttribute(commonPrefix); // if we have no color we need to extend to end of line, but this used to be the highlight line, force the // theme bg color if (at.getBackground() == null && isOpaque() && fLastLine.includes(offset)) { event.lineBackground = getColorManager().getColor(getCurrentTheme().getBackground()); } else { event.lineBackground = at.getBackground(); } } catch (BadLocationException e) { IdeLog.logError(CommonEditorPlugin.getDefault(), e); } }
Example 12
Source File: ExpressionSyntaxColoringPage.java From birt with Eclipse Public License 1.0 | 4 votes |
private void activate( String namedStyle ) { Color foreground = fDefaultForeground; Color background = fDefaultBackground; if ( namedStyle == null ) { fClearStyle.setEnabled( false ); fBold.setEnabled( false ); fItalic.setEnabled( false ); fStrike.setEnabled( false ); fUnderline.setEnabled( false ); fForegroundLabel.setEnabled( false ); fBackgroundLabel.setEnabled( false ); fForegroundColorEditor.setEnabled( false ); fBackgroundColorEditor.setEnabled( false ); fBold.setSelection( false ); fItalic.setSelection( false ); fStrike.setSelection( false ); fUnderline.setSelection( false ); } else { TextAttribute attribute = getAttributeFor( namedStyle ); fClearStyle.setEnabled( true ); fBold.setEnabled( true ); fItalic.setEnabled( true ); fStrike.setEnabled( true ); fUnderline.setEnabled( true ); fForegroundLabel.setEnabled( true ); fBackgroundLabel.setEnabled( true ); fForegroundColorEditor.setEnabled( true ); fBackgroundColorEditor.setEnabled( true ); fBold.setSelection( ( attribute.getStyle( ) & SWT.BOLD ) != 0 ); fItalic.setSelection( ( attribute.getStyle( ) & SWT.ITALIC ) != 0 ); fStrike.setSelection( ( attribute.getStyle( ) & TextAttribute.STRIKETHROUGH ) != 0 ); fUnderline.setSelection( ( attribute.getStyle( ) & TextAttribute.UNDERLINE ) != 0 ); if ( attribute.getForeground( ) != null ) { foreground = attribute.getForeground( ); } if ( attribute.getBackground( ) != null ) { background = attribute.getBackground( ); } } fForegroundColorEditor.setColorValue( foreground.getRGB( ) ); fBackgroundColorEditor.setColorValue( background.getRGB( ) ); }
Example 13
Source File: ExpressionSyntaxColoringPage.java From birt with Eclipse Public License 1.0 | 4 votes |
/** * Color the text in the sample area according to the current preferences */ void applyStyles( ) { if ( fText == null || fText.isDisposed( ) ) return; try { ITypedRegion[] regions = TextUtilities.computePartitioning( fDocument, IDocumentExtension3.DEFAULT_PARTITIONING, 0, fDocument.getLength( ), true ); if ( regions.length > 0 ) { for ( int i = 0; i < regions.length; i++ ) { ITypedRegion region = regions[i]; String namedStyle = (String) fContextToStyleMap.get( region.getType( ) ); if ( namedStyle == null ) continue; TextAttribute attribute = getAttributeFor( namedStyle ); if ( attribute == null ) continue; int fontStyle = attribute.getStyle( ) & ( SWT.ITALIC | SWT.BOLD | SWT.NORMAL ); StyleRange style = new StyleRange( region.getOffset( ), region.getLength( ), attribute.getForeground( ), attribute.getBackground( ), fontStyle ); style.strikeout = ( attribute.getStyle( ) & TextAttribute.STRIKETHROUGH ) != 0; style.underline = ( attribute.getStyle( ) & TextAttribute.UNDERLINE ) != 0; style.font = attribute.getFont( ); fText.setStyleRange( style ); } } } catch ( BadLocationException e ) { ExceptionHandler.handle( e ); } }
Example 14
Source File: ConsoleStyleProvider.java From Pydev with Eclipse Public License 1.0 | 4 votes |
private ScriptStyleRange getIt(String content, int offset, TextAttribute attr, int scriptStyle) { //background is the default (already set) Color background = attr.getBackground(); return new ScriptStyleRange(offset, content.length(), attr.getForeground(), background, scriptStyle, attr.getStyle()); }
Example 15
Source File: TMPresentationReconciler.java From tm4e with Eclipse Public License 1.0 | 3 votes |
/** * Adds style information to the given text presentation. * * @param presentation * the text presentation to be extended * @param offset * the offset of the range to be styled * @param length * the length of the range to be styled * @param attr * the attribute describing the style of the range to be styled * @param lastLineStyleRanges */ protected void addRange(TextPresentation presentation, int offset, int length, TextAttribute attr) { if (attr != null) { int style = attr.getStyle(); int fontStyle = style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); StyleRange styleRange = new StyleRange(offset, length, attr.getForeground(), attr.getBackground(), fontStyle); styleRange.strikeout = (style & TextAttribute.STRIKETHROUGH) != 0; styleRange.underline = (style & TextAttribute.UNDERLINE) != 0; styleRange.font = attr.getFont(); presentation.addStyleRange(styleRange); } }
Example 16
Source File: AbstractSyntaxColoringTest.java From dsl-devkit with Eclipse Public License 1.0 | 3 votes |
/** * Creates a {@link StyleRange} from the given parameters. * * @param offset * the offset * @param length * the length of the range * @param textAttribute * the {@link TextAttribute} * @return a {@link StyleRange} from the given parameters */ public static StyleRange createStyleRange(final int offset, final int length, final TextAttribute textAttribute) { int style = textAttribute.getStyle(); int fontStyle = style & (SWT.ITALIC | SWT.BOLD | SWT.NORMAL); StyleRange styleRange = new StyleRange(offset, length, textAttribute.getForeground(), textAttribute.getBackground(), fontStyle); styleRange.strikeout = (style & TextAttribute.STRIKETHROUGH) != 0; styleRange.underline = (style & TextAttribute.UNDERLINE) != 0; styleRange.font = textAttribute.getFont(); return styleRange; }