view game/IDMWidget.java @ 134:4c0dec72e2f0

Whitespace cosmetic cleanup.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 24 Nov 2011 21:51:54 +0200
parents b586ce4f6d97
children d6d92845d6a2
line wrap: on
line source

/*
 * Ristipolku IDM base widget
 * (C) Copyright 2011 Matti 'ccr' Hämäläinen <ccr@tnsp.org>
 */
package game;

import java.awt.*;
import java.awt.event.*;


public class IDMWidget
{
    IDMWidget parent;
    IDMPoint pos, size, scale;
    int keyCode;

    public IDMWidget()
    {
        keyCode = -1;
        this.scale = new IDMPoint(1, 1);
        this.pos = new IDMPoint(0, 0);
        this.size = new IDMPoint(0, 0);
    }

    public IDMWidget(IDMPoint pos)
    {
        this();
        this.pos = pos;
    }

    public IDMWidget(IDMPoint pos, IDMPoint size)
    {
        this();
        this.pos = pos;
        this.size = size;
    }

    public void setParent(IDMWidget par)
    {
        this.parent = par;
    }

    public void add(IDMWidget widget)
    {
    }

    public void remove(IDMWidget widget)
    {
    }

    public void setPos(IDMPoint pos)
    {
        this.pos = pos;
    }

    public void setPos(float x, float y)
    {
        this.pos = new IDMPoint(x, y);
    }

    public void setSize(IDMPoint size)
    {
        this.size = size;
    }

    public void setSize(float w, float h)
    {
        this.size = new IDMPoint(w, h);
    }

    public void setScale(IDMPoint scale)
    {
        this.scale = scale;
    }

    public void setScale(float x, float y)
    {
        this.setScale(new IDMPoint(x, y));
    }

    public int getScaledX()
    {
        return (int) (pos.x * scale.x);
    }

    public int getScaledY()
    {
        return (int) (pos.y * scale.y);
    }

    public int getScaledWidth()
    {
        return (int) (size.x * scale.x);
    }

    public int getScaledHeight()
    {
        return (int) (size.y * scale.y);
    }

    public boolean contains(float x, float y)
    {
        return (x >= getScaledX() &&
                y >= getScaledY() &&
                x < getScaledX() + getScaledWidth() &&
                y < getScaledY() + getScaledHeight());
    }

    public boolean contains(Point where)
    {
        return contains(where.x, where.y);
    }

    public boolean contains(IDMPoint where)
    {
        return contains(where.x, where.y);
    }

    public void paint(Graphics2D g)
    {
    }

    public boolean mousePressed(MouseEvent e)
    {
        return false;
    }

    public boolean mouseReleased(MouseEvent e)
    {
        if (contains(e.getPoint()))
        {
            clicked();
            return true;
        }
        return false;
    }

    public boolean mouseEntered(MouseEvent e)
    {
        return false;
    }

    public boolean mouseExited(MouseEvent e)
    {
        return false;
    }

    // Generic key handler
    public boolean keyPressed(KeyEvent e)
    {
        if (e.getKeyCode() == keyCode)
        {
            clicked();
            return true;
        }
        else
            return false;
    }

    public void clicked()
    {
    }
}