Set Wait Cursor : GUI Utilities « Swing JFC « Java

Set Wait Cursor


//  GuiUtil
//  Copyright (C) by Andrea Carboni.
//   This file may be distributed under the terms of the LGPL license.

import java.awt.Color;
import java.awt.Component;
import java.awt.Cursor;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;

public class GuiUtil
  private static Cursor defCursor  = Cursor.getDefaultCursor();
  private static Cursor waitCursor = Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR);


  public static void setWaitCursor(Component c, boolean yesno)
    c.setCursor(yesno ? waitCursor : defCursor);
    getFrame(c).setCursor(yesno ? waitCursor : defCursor);


  public static void setWaitCursor(boolean yesno)
    Frame.getFrames()[0].setCursor(yesno ? waitCursor : defCursor);


  public static Frame getFrame(Component c)
    Object obj = c;

    while (!(obj instanceof Frame))
      obj = ((Component)obj).getParent();

    return (Frame)obj;


  public static Color cloneColor(Color c)
    return new Color(c.getRed(), c.getGreen(), c.getBlue());


  public static final void setTextAntiAliasing(Graphics g, boolean yesno)
    Object obj = yesno ? RenderingHints.VALUE_TEXT_ANTIALIAS_ON
                 : RenderingHints.VALUE_TEXT_ANTIALIAS_OFF;

    ((Graphics2D) g).setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, obj);


  public static final void setAntiAliasing(Graphics g, boolean yesno)
    Object obj = yesno ? RenderingHints.VALUE_ANTIALIAS_ON
                 : RenderingHints.VALUE_ANTIALIAS_OFF;

    ((Graphics2D) g).setRenderingHint(RenderingHints.KEY_ANTIALIASING, obj);


Related examples in the same category

1.Utilities for GUI work.
2.A utility class to tune the Metal look and feel.
3.Renders a component into an image
4.Positions the specified dialog at a position relative to its parent.
5.Computes the maximum bounds of the current screen device. If this method is called on JDK 1.4, Xinerama-aware results are returned.
6.Computes the center point of the current screen device.
7.Positions the specified frame at a relative position in the screen, where 50% is considered to be the center of the screen.
8.Positions the specified frame in the middle of the screen.
9.Positions the specified frame at a random location on the screen while ensuring that the
10.AWT Utilities
11.Center On Screen
12.Center Within Parent
13.Center window
14.Calculates preferred max height for the given components without checking isVisible
15.Calculates preferred max width for the given components without checking isVisible
16.Is Focusable
17.Loading the given image
18.Press a key pragmatically
19.Set All Opaque
20.Set Frame Location Relative To
21.Shadow Popup Border
22.Unit conversions
23.Unit measure
24.Get Point For Centering
25.Get Point For Staggering