Class CPuzzleField
java.lang.Object
|
+----java.awt.Component
|
+----java.awt.Canvas
|
+----CPuzzleField
- public class CPuzzleField
- extends Canvas
- implements MouseListener
CPuzzelField ist ein Kontainer fuer die 9 CPuzzleElement(e), der grafisch dargestellt wird.
Die Steuerung des Puzzels wird durch das Interface MouseListener uebernommen.
- Version:
- 1.0 date 07.06.1997
- Author:
- Mirko Mumberg
- See Also:
- CPuzzleElement
-
m_PuzzlePos
- Beinhaltet die Positionen der Puzzelteile auf dem Puzzelfeld.
-
m_PuzzleState
- Beinhaltet die jeweiligen Drehpositionen(0-3) der 9 Puzzelteile.
-
CPuzzleField(Dimension, CPuzzleElement[])
- Der Konstruktor initialisiert m_PuzzleState, m_PuzzlePos und die internen Variablen.
-
ChangePos(int)
- Vertauscht die Positionen zweier Puzzelteile.
-
ChangePosNeighbour(int)
- Vertauscht nur Puzzelteile, die neben dem Puzzelteil an m_OldPos liegen.
-
getMinimumSize()
- Um die Größe bezubehalten.
-
getPos_isin(int, int)
- Wandelt die Pixelposition(x,y) in die Puzzelteilposition (0-8) um.
-
getPreferredSize()
- Um die Größe beizubehalten.
-
merge()
- Mischt das Puzzelfeld.
-
mouseClicked(MouseEvent)
- Dieser Mausaktion wird nicht beachtet.
-
mouseEntered(MouseEvent)
- Dieser Mausaktion wird nicht beachtet.
-
mouseExited(MouseEvent)
- Dieser Mausaktion wird nicht beachtet.
-
mousePressed(MouseEvent)
- Holt sich die Position(0-8) des Puzzelteils, auf dem die Maus steht und speichert diesen.
-
mouseReleased(MouseEvent)
- Holt sich die Position(0-8) des Puzzelteils, auf dem die Maus steht.
-
paint(Graphics)
- Neuzeichnen des Puzzelfeldes.
-
setNextPuzzleState(int)
- Dreht ein angegebenes Puzzelteil um 90 Grad.
-
update(Graphics)
- Neuzeichnen des Puzzelfeldes.
m_PuzzleState
public CArrayRandom m_PuzzleState
- Beinhaltet die jeweiligen Drehpositionen(0-3) der 9 Puzzelteile.
m_PuzzlePos
public CArrayRandom m_PuzzlePos
- Beinhaltet die Positionen der Puzzelteile auf dem Puzzelfeld.
CPuzzleField
public CPuzzleField(Dimension d,
CPuzzleElement _Element[])
- Der Konstruktor initialisiert m_PuzzleState, m_PuzzlePos und die internen Variablen.
- Parameters:
- d - Die Groesse des Puzzelfeldes.
- _Element - Ein Array mit den 9 Puzzeltteilen.
merge
public void merge()
- Mischt das Puzzelfeld.
getPreferredSize
public Dimension getPreferredSize()
- Um die Größe beizubehalten.
- Overrides:
- getPreferredSize in class Component
getMinimumSize
public Dimension getMinimumSize()
- Um die Größe bezubehalten.
- Overrides:
- getMinimumSize in class Component
paint
public void paint(Graphics g)
- Neuzeichnen des Puzzelfeldes.
- Parameters:
- g - Grafikoberflaeche, auf die gezeichnet werden soll.
- Overrides:
- paint in class Canvas
update
public void update(Graphics g)
- Neuzeichnen des Puzzelfeldes.
- Parameters:
- g - Grafikoberflaeche, auf die gezeichnet werden soll.
- Overrides:
- update in class Component
getPos_isin
protected int getPos_isin(int x,
int y)
- Wandelt die Pixelposition(x,y) in die Puzzelteilposition (0-8) um.
- Parameters:
- x - Pixel x-Position.
- y - Pixel y-Position.
- Returns:
- Puzzelteilposition(0-8) oder -1 fuer ausserhalb des Puzzelfeldes.
setNextPuzzleState
protected void setNextPuzzleState(int i)
- Dreht ein angegebenes Puzzelteil um 90 Grad.
- Parameters:
- i - Position des zu drehenden Puzzelteils.
ChangePos
protected void ChangePos(int newpos)
- Vertauscht die Positionen zweier Puzzelteile.
- Parameters:
- newpos - Position des zweiten Puzzelteils(m_OldPos ist das erste Puzzelteil).
ChangePosNeighbour
protected void ChangePosNeighbour(int newpos)
- Vertauscht nur Puzzelteile, die neben dem Puzzelteil an m_OldPos liegen.
- Parameters:
- newpos - Position des zweiten Puzzelteils(m_OldPos ist das erste Puzzelteil).
mousePressed
public void mousePressed(MouseEvent e)
- Holt sich die Position(0-8) des Puzzelteils, auf dem die Maus steht und speichert diesen.
mouseReleased
public void mouseReleased(MouseEvent e)
- Holt sich die Position(0-8) des Puzzelteils, auf dem die Maus steht. Vertauscht oder Dreht Puzzelteile in Abhaengigkeit von der alten Position (beim mousePressed gespeichert) und der jetzigen Position der Maus. Neuzeichnen des Puzzelfeldes.
mouseClicked
public void mouseClicked(MouseEvent e)
- Dieser Mausaktion wird nicht beachtet.
mouseEntered
public void mouseEntered(MouseEvent e)
- Dieser Mausaktion wird nicht beachtet.
mouseExited
public void mouseExited(MouseEvent e)
- Dieser Mausaktion wird nicht beachtet.