@Inject public CTabRendering(CTabFolder parent) { super(parent); parentWrapper = new CTabFolderWrapper(parent); }
private void drawTabBackground(GC gc, Rectangle partHeaderBounds, int state, boolean vertical, Color defaultBackground) { Color[] colors = selectedTabFillColors; int[] percents = selectedTabFillPercents; if (colors != null && colors.length == 2) { colors = new Color[] { colors[1], colors[1] }; } if (colors == null) { boolean selected = (state & SWT.SELECTED) != 0; colors = selected ? parentWrapper.getSelectionGradientColors() : parentWrapper.getGradientColors(); percents = selected ? parentWrapper.getSelectionGradientPercents() : parentWrapper.getGradientPercents(); } if (colors == null) { colors = new Color[] { gc.getDevice().getSystemColor(SWT.COLOR_WHITE) }; percents = new int[] { 100 }; } drawBackground(gc, partHeaderBounds.x, partHeaderBounds.height - 1, partHeaderBounds.width, parent.getBounds().height, defaultBackground, colors, percents, vertical); }
private void drawUnselectedTabBackground(GC gc, Rectangle partHeaderBounds, int state, boolean vertical, Color defaultBackground) { if (unselectedTabsColors == null) { boolean selected = (state & SWT.SELECTED) != 0; unselectedTabsColors = selected ? parentWrapper.getSelectionGradientColors() : parentWrapper.getGradientColors(); unselectedTabsPercents = selected ? parentWrapper.getSelectionGradientPercents() : parentWrapper.getGradientPercents(); } if (unselectedTabsColors == null) { unselectedTabsColors = new Color[] { gc.getDevice().getSystemColor(SWT.COLOR_WHITE) }; unselectedTabsPercents = new int[] { 100 }; } drawBackground(gc, partHeaderBounds.x, partHeaderBounds.y - 1, partHeaderBounds.width, partHeaderBounds.height, defaultBackground, unselectedTabsColors, unselectedTabsPercents, vertical); }
public int[] getSelectionGradientPercents() { if (selectionGradientPercentsField == null) { selectionGradientPercentsField = getField("selectionGradientPercents"); //$NON-NLS-1$ } return (int[]) getFieldValue(selectionGradientPercentsField); }
public Color[] getSelectionGradientColors() { if (selectionGradientColorsField == null) { selectionGradientColorsField = getField("selectionGradientColorsField"); //$NON-NLS-1$ } return (Color[]) getFieldValue(selectionGradientColorsField); }
public int[] getGradientPercents() { if (gradientPercentsField == null) { gradientPercentsField = getField("gradientPercents"); //$NON-NLS-1$ } return (int[]) getFieldValue(gradientPercentsField); } }
private void drawCustomBackground(GC gc, Rectangle bounds, int state) { boolean selected = (state & SWT.SELECTED) != 0; Color defaultBackground = selected ? parent.getSelectionBackground() : parent.getBackground(); boolean vertical = selected ? parentWrapper.isSelectionGradientVertical() : parentWrapper.isGradientVertical(); Rectangle partHeaderBounds = computeTrim(PART_HEADER, state, bounds.x, bounds.y, bounds.width, bounds.height); drawUnselectedTabBackground(gc, partHeaderBounds, state, vertical, defaultBackground); drawTabBackground(gc, partHeaderBounds, state, vertical, defaultBackground); }
public boolean isSelectionGradientVertical() { if (selectionGradientVerticalField == null) { selectionGradientVerticalField = getField("selectionGradientVertical"); //$NON-NLS-1$ } Boolean result = (Boolean) getFieldValue(selectionGradientVerticalField); return result != null ? result : true; }
public Color[] getGradientColors() { if (gradientColorsField == null) { gradientColorsField = getField("gradientColors"); //$NON-NLS-1$ } return (Color[]) getFieldValue(gradientColorsField); }
public boolean isGradientVertical() { if (gradientVerticalField == null) { gradientVerticalField = getField("gradientVertical"); //$NON-NLS-1$ } Boolean result = (Boolean) getFieldValue(gradientVerticalField); return result != null ? result : true; }