public abstract class AbstractView extends AbstractDrawableObject
GroupView
reprezentujuci skupinu do ktorej mozno pridavat zobrazitelne objekty.
Metody add(AbstractDrawableObject)
a remove(AbstractDrawableObject)
sluzia na pridavanie a odoberanie objektov do/zo skupiny.
Metoda getBaseGroup()
vracia referenciu na skupinu objektov.
Tato referencia umoznuje vyuzit dalsie metody skupiny, napr. praca s polohou, rotaciu, pridavanie listenerov.
//chceme aby sa dala zistovat pozicia, ale aby sa nedala menit zvonku //preto dedime od AbstractView a musime doplnit definiciu metody getPosition() public class House extends AbstractView{ private PolygonView roof; private RectangleView wall; public House(GroupView parent, double positionX, double positionY) { super(parent, positionX, positionY, 0); add( roof = new PolygonView(0, -20, Color.RED, true, 20,0, 0,-20, -20,0)); add( wall = new RectangleView(0, -10, 30, 20, 0, Color.LIGHT_GRAY, true)); } public Position getPosition() { return getBaseGroup().getPosition(); } } public static void main(String[] args) { MainWindow window = new MainWindow("vytvorenie triedy dediacej od AbstractView"); window.setVisible(true); GroupView group = window.getRootGroup(); House house = new House(group, 100, 100); Position position = house.getPosition(); }
Constructor and Description |
---|
AbstractView(double positionX,
double positionY,
double rotation)
Nastavenie podla parametrov.
|
AbstractView(GroupView parent,
double positionX,
double positionY,
double rotation)
Nastavenie podla parametrov
|
AbstractView(GroupView parent,
Position position,
double rotation)
Nastavenie podla parametrov
|
Modifier and Type | Method and Description |
---|---|
protected void |
add(AbstractDrawableObject view)
Prida do zakladnej skupiny objektov dalsi objekt.
|
protected void |
add(AbstractView view) |
void |
addDrawableChangeListener(DrawableChangeListener listener)
Prida
listener , ktory bude informovany o zmenach objektu |
void |
draw(java.awt.Graphics2D g2d)
Vykreslenie objektu.
|
protected GroupView |
getBaseGroup()
Vrati referenciu na skupinu objektov ktoru instancia obsahuje
|
protected void |
remove(AbstractDrawableObject view)
Vyberie zo zakladnej skupiny objekt.
|
protected void |
remove(AbstractView view) |
void |
removeDrawableChangeListener(DrawableChangeListener listener)
Odstrani
listener zo zoznamu listenerov |
java.lang.String |
toString() |
externalToInternalCoordinates, fireChanged, getParent, globalToInternalCoordinates, internalToExternalCoordinates, internalToGlobalCoordinates, setParent, throwIfNegative
public AbstractView(double positionX, double positionY, double rotation)
positionX
- x-ova zlozka pozicie novej instancie (relativne, vzhladom na poziciu skupiny (ak neskor bude patrit do niektorej skupiny))positionY
- y-ova zlozka pozicie novej instancie (relativne, vzhladom na poziciu skupiny (ak neskor bude patrit do niektorej skupiny))rotation
- natocenie novej instancie (relativne, vzhladom na skupinu (ak neskor bude patrit do niektorej skupiny))public AbstractView(GroupView parent, double positionX, double positionY, double rotation)
parent
- skupina do ktorej bude patrit nova instanciapositionX
- x-ova zlozka pozicie novej instancie (relativne, vzhladom na poziciu skupiny do ktorej patri)positionY
- y-ova zlozka pozicie novej instancie (relativne, vzhladom na poziciu skupiny do ktorej patri)rotation
- natocenie novej instancie (relativne, vzhladom na skupinu do ktorej patri)public AbstractView(GroupView parent, Position position, double rotation)
parent
- skupina do ktorej bude patrit nova instanciaposition
- pozicia novej instancie (relativne, vzhladom na poziciu skupiny do ktorej patri}rotation
- natocenie novej instancie (relativne, vzhladom na skupinu do ktorej patri)protected GroupView getBaseGroup()
protected void add(AbstractDrawableObject view)
getBaseGroup().add(view)
)view
- objekt, ktory prida do zakladnej skupinyprotected void add(AbstractView view)
protected void remove(AbstractDrawableObject view)
getBaseGroup().remove(view)
)view
- objekt, ktory vyberie zo zakladnej skupinyprotected void remove(AbstractView view)
public void addDrawableChangeListener(DrawableChangeListener listener)
AbstractDrawableObject
listener
, ktory bude informovany o zmenach objektuaddDrawableChangeListener
in class AbstractDrawableObject
public void removeDrawableChangeListener(DrawableChangeListener listener)
AbstractDrawableObject
listener
zo zoznamu listenerovremoveDrawableChangeListener
in class AbstractDrawableObject
public void draw(java.awt.Graphics2D g2d)
AbstractDrawableObject
g2d
, takze
1) g2d
obsahuje defaultne stavove informacie
2) stavove informacie v g2d
nie je potrebne vratit do povodneho stavu.draw
in class AbstractDrawableObject
public java.lang.String toString()
toString
in class java.lang.Object