AerithScrollButton.java :  » Rule-Engine » zilonis » org » zilonis » tool » ext » aerith » ui » Java Open Source

Java Open Source » Rule Engine » zilonis 
zilonis » org » zilonis » tool » ext » aerith » ui » AerithScrollButton.java
package org.zilonis.tool.ext.aerith.ui;


import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.plaf.basic.BasicArrowButton;
import javax.swing.plaf.metal.MetalScrollButton;

class AerithScrollButton extends MetalScrollButton {
    private static Icon BUTTON_WEST;
    private static Icon BUTTON_EAST;
    private static Icon BUTTON_NORTH;
    private static Icon BUTTON_SOUTH;
    static {
        BUTTON_WEST = new ImageIcon(AerithScrollbarUI.class.getResource("/resources/photos/scrollbar-button-west.png"));
        BUTTON_EAST = new ImageIcon(AerithScrollbarUI.class.getResource("/resources/photos/scrollbar-button-east.png"));
        BUTTON_NORTH = new ImageIcon(AerithScrollbarUI.class.getResource("/resources/photos/scrollbar-button-north.png"));
        BUTTON_SOUTH = new ImageIcon(AerithScrollbarUI.class.getResource("/resources/photos/scrollbar-button-south.png"));
    }
    
    AerithScrollButton(int direction, int width, boolean freeStanding) {
        super(direction, width, freeStanding);
        setOpaque(false);
    }

    @Override
    public Dimension getMaximumSize() {
        return this.getPreferredSize();
    }

    @Override
    public Dimension getMinimumSize() {
        return this.getPreferredSize();
    }

    @Override
    public Dimension getPreferredSize() {
        return new Dimension(17, 17);
    }

    @Override
    public void paint(Graphics g) {
        switch (getDirection()) {
            case BasicArrowButton.WEST:
                BUTTON_WEST.paintIcon(null, g, 0, 0);
                break;
            case BasicArrowButton.EAST:
                BUTTON_EAST.paintIcon(null, g, 0, 0);
                break;
            case BasicArrowButton.NORTH:
                BUTTON_NORTH.paintIcon(null, g, 0, 0);
                break;
            case BasicArrowButton.SOUTH:
                BUTTON_SOUTH.paintIcon(null, g, 0, 0);
                break;
        }
    }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.