- /*
- * @(#)GTKGraphicsUtils.java 1.13 03/12/19
- *
- * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
- * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
- */
- package com.sun.java.swing.plaf.gtk;
-
- import javax.swing.*;
- import javax.swing.plaf.synth.*;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Rectangle;
-
- /**
- * @version 1.13, 12/19/03
- * @author Joshua Outwater
- */
- class GTKGraphicsUtils extends SynthGraphicsUtils {
- public void paintText(SynthContext context, Graphics g, String text,
- int x, int y, int mnemonicIndex) {
- int componentState = context.getComponentState();
- if ((componentState & SynthConstants.DISABLED) ==
- SynthConstants.DISABLED){
- Color orgColor = g.getColor();
- g.setColor(context.getStyle().getColor(context,
- GTKColorType.WHITE));
- x += 1;
- y += 1;
- super.paintText(context, g, text, x, y, mnemonicIndex);
-
- g.setColor(orgColor);
- x -= 1;
- y -= 1;
- super.paintText(context, g, text, x, y, mnemonicIndex);
- }
- else {
- super.paintText(context, g, text, x, y, mnemonicIndex);
- }
- }
-
- /**
- * Paints text at the specified location. This will not attempt to
- * render the text as html nor will it offset by the insets of the
- * component.
- *
- * @param ss SynthContext
- * @param g Graphics used to render string in.
- * @param text Text to render
- * @param bounds Bounds of the text to be drawn.
- * @param mnemonicIndex Index to draw string at.
- */
- public void paintText(SynthContext context, Graphics g, String text,
- Rectangle bounds, int mnemonicIndex) {
- Color color = g.getColor();
-
- Region region = context.getRegion();
- if ((region == Region.RADIO_BUTTON || region == Region.CHECK_BOX ||
- region == Region.TABBED_PANE_TAB) &&
- (context.getComponentState() & SynthConstants.FOCUSED) != 0) {
- JComponent source = context.getComponent();
- if (!(source instanceof AbstractButton) ||
- ((AbstractButton)source).isFocusPainted()) {
- ((GTKStyle)(context.getStyle())).getEngine(context).paintFocus(
- context, g, SynthConstants.ENABLED,
- "checkbutton", bounds.x - 2, bounds.y - 2,
- bounds.width + 4, bounds.height + 4);
- g.setColor(color);
- }
- }
- super.paintText(context, g, text, bounds, mnemonicIndex);
- }
- }