.
This commit is contained in:
parent
f630d1ef99
commit
132b8c35d5
@ -14,7 +14,9 @@ import java.awt.event.ActionListener;
|
|||||||
import java.awt.event.MouseEvent;
|
import java.awt.event.MouseEvent;
|
||||||
import java.awt.event.MouseListener;
|
import java.awt.event.MouseListener;
|
||||||
import java.awt.event.MouseMotionListener;
|
import java.awt.event.MouseMotionListener;
|
||||||
import java.util.ArrayList;
|
import javax.security.auth.callback.ConfirmationCallback;
|
||||||
|
import javax.swing.JOptionPane;
|
||||||
|
import javax.swing.SwingUtilities;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@ -25,12 +27,12 @@ public class Gaertner implements MouseMotionListener, MouseListener,
|
|||||||
{
|
{
|
||||||
private Garten meinGarten;
|
private Garten meinGarten;
|
||||||
private Fenster fenster;
|
private Fenster fenster;
|
||||||
private FlaecheBeet flbeet;
|
|
||||||
private FlaecheWeg flweg;
|
|
||||||
private FlaechePflanzen flpfl;
|
|
||||||
private boolean pflanzebewegt;
|
private boolean pflanzebewegt;
|
||||||
private ArrayList<Pflanze> pflanzen;
|
private boolean gartenexistiert;
|
||||||
private ArrayList<Beet> beete;
|
private boolean bepflanzungexistiert;
|
||||||
|
private Beet bepflanzeBeet;
|
||||||
|
|
||||||
|
MouseEvent koordinbeet; //x,y Koordinaten reichen eigentlich
|
||||||
|
|
||||||
Pflanze1 pfl1;
|
Pflanze1 pfl1;
|
||||||
Pflanze2 pfl2;
|
Pflanze2 pfl2;
|
||||||
@ -38,54 +40,14 @@ public class Gaertner implements MouseMotionListener, MouseListener,
|
|||||||
int height;
|
int height;
|
||||||
int width;
|
int width;
|
||||||
|
|
||||||
int[] randomwertex;
|
|
||||||
int[] randomwertey;
|
|
||||||
|
|
||||||
public Gaertner(Fenster fenster, FlaecheBeet flbeet, FlaecheWeg flweg,
|
public Gaertner(Fenster fenster, FlaecheBeet flbeet, FlaecheWeg flweg,
|
||||||
FlaechePflanzen flpfl)
|
FlaechePflanzen flpfl)
|
||||||
{
|
{
|
||||||
meinGarten = new Garten(flbeet, flweg, flpfl);
|
meinGarten = new Garten(flbeet, flweg, flpfl);
|
||||||
this.fenster = fenster; //Zur späteren Steuerung Pop up usw.
|
this.fenster = fenster; //Zur späteren Steuerung Pop up usw.
|
||||||
this.flpfl = flpfl;
|
|
||||||
|
|
||||||
pflanzen = new ArrayList<>();
|
|
||||||
beete = new ArrayList<>();
|
|
||||||
|
|
||||||
pflanzebewegt = false;
|
pflanzebewegt = false;
|
||||||
//Initialisierung der Wege/Beete
|
gartenexistiert = false;
|
||||||
height = fenster.getHeight();
|
bepflanzungexistiert = false;
|
||||||
width = fenster.getWidth();
|
|
||||||
randomwertex = new int[4];
|
|
||||||
randomwertey = new int[4];
|
|
||||||
randomwertex[0] = 10;
|
|
||||||
randomwertey[0] = 10;
|
|
||||||
randomwertex[3] = width - 50;
|
|
||||||
randomwertey[3] = height - 50;
|
|
||||||
|
|
||||||
for (int i = 1; i < 3; i++) //erstelle Random Punkte für Wege + Beete
|
|
||||||
{
|
|
||||||
int wegendex = (int) (Math.random() * (170 * i) + (200 * i));
|
|
||||||
int wegendey = (int) (Math.random() * (170 * i) + (200 * i));
|
|
||||||
randomwertex[i] = wegendex;
|
|
||||||
randomwertey[i] = wegendey;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i = 0; i < randomwertex.length; i++) //Garten Wege hinzufügen
|
|
||||||
{
|
|
||||||
meinGarten.hinzufuegenWeg(randomwertex[i], randomwertey[0], randomwertex[i], randomwertey[3]);
|
|
||||||
meinGarten.hinzufuegenWeg(randomwertex[0], randomwertey[i], randomwertex[3], randomwertey[i]);
|
|
||||||
}
|
|
||||||
for (int i = 0; i < randomwertex.length - 1; i++) //Garten Beete hinzufügen
|
|
||||||
{
|
|
||||||
for (int j = 0; j < randomwertey.length - 1; j++)
|
|
||||||
{
|
|
||||||
meinGarten.hinzufuegenBeet(randomwertex[i] + 10, randomwertey[j] + 10, randomwertex[i + 1] - randomwertex[i] - 20, randomwertey[j + 1] - randomwertey[j] - 20);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
meinGarten.zeichneWeg();
|
|
||||||
meinGarten.zeichneBeete();
|
|
||||||
meinGarten.randomBepflanzung();
|
|
||||||
meinGarten.zeichnePflanzen();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,17 +55,38 @@ public class Gaertner implements MouseMotionListener, MouseListener,
|
|||||||
{
|
{
|
||||||
fenster.addMouseListener(this);
|
fenster.addMouseListener(this);
|
||||||
fenster.addMouseMotionListener(this);
|
fenster.addMouseMotionListener(this);
|
||||||
|
|
||||||
|
fenster.getMnGartenanlegen().addActionListener(this);
|
||||||
|
fenster.getMnRandomPflanzenanlegen().addActionListener(this);
|
||||||
|
|
||||||
|
fenster.getMnbepflanzen1().addActionListener(this);
|
||||||
|
fenster.getMnbepflanzen2().addActionListener(this);
|
||||||
|
fenster.getMnbepflanzen3().addActionListener(this);
|
||||||
|
|
||||||
|
fenster.getBtnbepfl1().addActionListener(this);
|
||||||
|
fenster.getBtnbepfl2().addActionListener(this);
|
||||||
|
fenster.getBtnbepfl3().addActionListener(this);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void mouseClicked(MouseEvent e)
|
public void mouseClicked(MouseEvent e)
|
||||||
{
|
{
|
||||||
|
if (SwingUtilities.isRightMouseButton(e))//Bei Rechtsklick Popup Menü
|
||||||
|
{
|
||||||
|
koordinbeet =e; //abspeichern wegen koordinaten zur weiterverarbeitung
|
||||||
|
fenster.showPoPup(e);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
fenster.hidePopup();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void mousePressed(MouseEvent e)
|
public void mousePressed(MouseEvent e)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -125,16 +108,69 @@ public class Gaertner implements MouseMotionListener, MouseListener,
|
|||||||
@Override
|
@Override
|
||||||
public void mouseExited(MouseEvent e)
|
public void mouseExited(MouseEvent e)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e)
|
public void actionPerformed(ActionEvent e)
|
||||||
{
|
{
|
||||||
|
Object key = e.getSource();
|
||||||
|
if (key.equals(fenster.getMnGartenanlegen())) //Garten anlegen
|
||||||
|
{
|
||||||
|
if (gartenexistiert == false)
|
||||||
|
{
|
||||||
|
meinGarten.erstelleGarten();
|
||||||
|
gartenexistiert = true;
|
||||||
|
}
|
||||||
|
else //Falls schon angelegt nachfragen ob neu anlegen
|
||||||
|
{
|
||||||
|
if (JOptionPane.showConfirmDialog(fenster, "Garten neu anlegen?", "Info", JOptionPane.YES_NO_OPTION) == ConfirmationCallback.YES)
|
||||||
|
{
|
||||||
|
meinGarten.löscheGarten();
|
||||||
|
meinGarten.erstelleGarten();
|
||||||
|
gartenexistiert = true;
|
||||||
|
bepflanzungexistiert = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (key.equals(fenster.getMnRandomPflanzenanlegen())) //Garten Random Bepflanzen
|
||||||
|
{
|
||||||
|
if (gartenexistiert == true && bepflanzungexistiert == false) //falls garten existiert bepflanzen
|
||||||
|
{
|
||||||
|
if (meinGarten.randomBepflanzung() == true)
|
||||||
|
{
|
||||||
|
bepflanzungexistiert = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
JOptionPane.showConfirmDialog(null,
|
||||||
|
"Beet war leider für eine Pflanzengruppe zu klein", "Info", JOptionPane.DEFAULT_OPTION);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (gartenexistiert == true && bepflanzungexistiert == true)//falls schon ein teil bepflanzt
|
||||||
|
{
|
||||||
|
if (JOptionPane.showConfirmDialog(fenster, "Beete neu bepflanzen?", "Info?", JOptionPane.YES_NO_OPTION) == ConfirmationCallback.YES)
|
||||||
|
{
|
||||||
|
meinGarten.löscheBepflanzung();
|
||||||
|
meinGarten.randomBepflanzung();
|
||||||
|
bepflanzungexistiert = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
JOptionPane.showConfirmDialog(fenster, "Erst muss ein Garten angelegt werden", "Info", JOptionPane.DEFAULT_OPTION);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (key.equals(fenster.getBtnbepfl1()) || key.equals(fenster.getBtnbepfl2()) ||key.equals(fenster.getBtnbepfl3()))
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void mouseDragged(MouseEvent e)
|
public void mouseDragged(MouseEvent e)
|
||||||
{
|
{
|
||||||
|
fenster.hidePopup();
|
||||||
if (pflanzebewegt == false)
|
if (pflanzebewegt == false)
|
||||||
{
|
{
|
||||||
if (meinGarten.getmovePflanze(e) != null)
|
if (meinGarten.getmovePflanze(e) != null)
|
||||||
@ -142,10 +178,12 @@ public class Gaertner implements MouseMotionListener, MouseListener,
|
|||||||
pflanzebewegt = true;
|
pflanzebewegt = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void mouseMoved(MouseEvent e)
|
public void mouseMoved(MouseEvent e)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -21,6 +21,7 @@ public class Garten extends Kompositum
|
|||||||
private ArrayList<Beet> beete;
|
private ArrayList<Beet> beete;
|
||||||
private ArrayList<Pflanze> pflanzen;
|
private ArrayList<Pflanze> pflanzen;
|
||||||
|
|
||||||
|
private Pflanze pfl;
|
||||||
private Pflanze1 pfl1;
|
private Pflanze1 pfl1;
|
||||||
private Pflanze2 pfl2;
|
private Pflanze2 pfl2;
|
||||||
private Pflanze3 pfl3;
|
private Pflanze3 pfl3;
|
||||||
@ -29,7 +30,7 @@ public class Garten extends Kompositum
|
|||||||
FlaecheWeg flweg;
|
FlaecheWeg flweg;
|
||||||
FlaechePflanzen flpfl;
|
FlaechePflanzen flpfl;
|
||||||
|
|
||||||
public Garten(FlaecheBeet flbeet,FlaecheWeg flweg,FlaechePflanzen flpfl)
|
public Garten(FlaecheBeet flbeet, FlaecheWeg flweg, FlaechePflanzen flpfl)
|
||||||
{
|
{
|
||||||
wege = new ArrayList();
|
wege = new ArrayList();
|
||||||
beete = new ArrayList();
|
beete = new ArrayList();
|
||||||
@ -39,97 +40,178 @@ public class Garten extends Kompositum
|
|||||||
this.flweg = flweg;
|
this.flweg = flweg;
|
||||||
this.flpfl = flpfl;
|
this.flpfl = flpfl;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Funktionen Beete
|
//Funktionen Beete
|
||||||
public void hinzufuegenBeet(int x, int y, int a, int b)
|
public void hinzufuegenBeet(int x, int y, int a, int b)
|
||||||
{
|
{
|
||||||
Beet neuesBeet = new Beet(x, y, a, b);
|
Beet neuesBeet = new Beet(x, y, a, b);
|
||||||
beete.add(neuesBeet);
|
beete.add(neuesBeet);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList<Beet> getBeete()
|
public ArrayList<Beet> getBeete()
|
||||||
{
|
{
|
||||||
return beete;
|
return beete;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void zeichneBeete()
|
public void zeichneBeete()
|
||||||
{
|
{
|
||||||
flbeet.zeichneBeete(beete);
|
flbeet.zeichneBeete(beete);
|
||||||
}
|
}
|
||||||
//Funktionen Wege
|
/*
|
||||||
|
public int getBeet(MouseEvent e)
|
||||||
|
{
|
||||||
|
Beet tempBeet;
|
||||||
|
for (Beet b : beete)
|
||||||
|
{
|
||||||
|
tempBeet = b;
|
||||||
|
}
|
||||||
|
|
||||||
|
//return tempBeet;
|
||||||
|
}
|
||||||
|
//Funktionen Wege
|
||||||
|
*/
|
||||||
public void hinzufuegenWeg(int sx, int sy, int ex, int ey)
|
public void hinzufuegenWeg(int sx, int sy, int ex, int ey)
|
||||||
{
|
{
|
||||||
Weg neuerWeg = new Weg(sx, sy, ex, ey);
|
Weg neuerWeg = new Weg(sx, sy, ex, ey);
|
||||||
wege.add(neuerWeg);
|
wege.add(neuerWeg);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void zeichneWeg()
|
public void zeichneWeg()
|
||||||
{
|
{
|
||||||
flweg.zeichneWeg(wege);
|
flweg.zeichneWeg(wege);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Funktionen Pflanzen
|
//Funktionen Pflanzen
|
||||||
public void hinzufuegenPflanze(Pflanze pflanze)
|
public void hinzufuegenPflanze(Pflanze pflanze)
|
||||||
{
|
{
|
||||||
pflanzen.add(pflanze);
|
pflanzen.add(pflanze);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void zeichnePflanzen()
|
public void zeichnePflanzen()
|
||||||
{
|
{
|
||||||
flpfl.setPflanzen(pflanzen);
|
flpfl.setPflanzen(pflanzen);
|
||||||
}
|
}
|
||||||
public void randomBepflanzung()
|
|
||||||
|
public Boolean randomBepflanzung()
|
||||||
{
|
{
|
||||||
for (Beet b : beete)
|
for (Beet b : beete)
|
||||||
{
|
{
|
||||||
int randomAlter = (int) (Math.random() * 3 + 1);
|
try
|
||||||
int randomTyp = (int) (Math.random() * 3 + 1);
|
|
||||||
Boolean bepflanzung = true;
|
|
||||||
Boolean versetzt = true;
|
|
||||||
int[] temp = b.getKoordinaten();
|
|
||||||
|
|
||||||
int tempx = temp[0]+10;
|
|
||||||
int tempy = temp[1]+20;
|
|
||||||
int tempxrand = temp[2] + temp[0];
|
|
||||||
int tempyrand = temp[3] + temp[1];
|
|
||||||
|
|
||||||
int deltax = (temp[2]-40)/((temp[2]-40)/40);
|
|
||||||
int deltay = (temp[3]-40)/((temp[3]-40)/50);
|
|
||||||
|
|
||||||
do
|
|
||||||
{
|
{
|
||||||
if (randomTyp == 1)
|
|
||||||
|
int randomAlter = (int) (Math.random() * 3 + 1);
|
||||||
|
int randomTyp = (int) (Math.random() * 3 + 1);
|
||||||
|
Boolean bepflanzung = true;
|
||||||
|
Boolean versetzt = true;
|
||||||
|
int[] temp = b.getKoordinaten();
|
||||||
|
|
||||||
|
int tempx = temp[0] + 10;
|
||||||
|
int tempy = temp[1] + 20;
|
||||||
|
int tempxrand = temp[2] + temp[0];
|
||||||
|
int tempyrand = temp[3] + temp[1];
|
||||||
|
|
||||||
|
int deltax = (temp[2] - 40) / ((temp[2] - 40) / 40);
|
||||||
|
int deltay = (temp[3] - 40) / ((temp[3] - 40) / 50);
|
||||||
|
do
|
||||||
{
|
{
|
||||||
pfl1 = new Pflanze1(tempx, tempy, randomAlter);
|
if (randomTyp == 1)
|
||||||
hinzufuegenPflanze(pfl1);
|
|
||||||
}
|
|
||||||
else if (randomTyp == 2)
|
|
||||||
{
|
|
||||||
pfl2 = new Pflanze2(tempx, tempy, randomAlter);
|
|
||||||
hinzufuegenPflanze(pfl2);
|
|
||||||
}
|
|
||||||
else if (randomTyp == 3)
|
|
||||||
{
|
|
||||||
pfl3 = new Pflanze3(tempx, tempy, randomAlter);
|
|
||||||
hinzufuegenPflanze(pfl3);
|
|
||||||
}
|
|
||||||
tempx += deltax;
|
|
||||||
if (tempx > tempxrand )
|
|
||||||
{
|
|
||||||
if (versetzt)
|
|
||||||
{
|
{
|
||||||
tempx = temp[0]+30;
|
pfl1 = new Pflanze1(tempx, tempy, randomAlter,20);
|
||||||
versetzt = false;
|
float[] tempbound = pfl1.getBoundingBoxes();
|
||||||
|
System.out.println("Bounding Boxes: " + tempbound[0] + " " + tempbound[1] + " " + tempbound[2] + " " + tempbound[3]);
|
||||||
|
hinzufuegenPflanze(pfl1);
|
||||||
}
|
}
|
||||||
else
|
else if (randomTyp == 2)
|
||||||
{
|
{
|
||||||
tempx = temp[0]+20;
|
pfl2 = new Pflanze2(tempx, tempy, randomAlter,15);
|
||||||
versetzt = true;
|
hinzufuegenPflanze(pfl2);
|
||||||
|
}
|
||||||
|
else if (randomTyp == 3)
|
||||||
|
{
|
||||||
|
pfl3 = new Pflanze3(tempx, tempy, randomAlter,10);
|
||||||
|
hinzufuegenPflanze(pfl3);
|
||||||
|
}
|
||||||
|
tempx += deltax;
|
||||||
|
if (tempx > tempxrand)
|
||||||
|
{
|
||||||
|
if (versetzt)
|
||||||
|
{
|
||||||
|
tempx = temp[0] + 30;
|
||||||
|
versetzt = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tempx = temp[0] + 20;
|
||||||
|
versetzt = true;
|
||||||
|
}
|
||||||
|
tempy += deltay;
|
||||||
|
}
|
||||||
|
if (tempy > tempyrand)
|
||||||
|
{
|
||||||
|
bepflanzung = false;
|
||||||
}
|
}
|
||||||
tempy += deltay;
|
|
||||||
}
|
|
||||||
if (tempy > tempyrand)
|
|
||||||
{
|
|
||||||
bepflanzung = false;
|
|
||||||
}
|
}
|
||||||
|
while (bepflanzung);
|
||||||
}
|
}
|
||||||
while (bepflanzung);
|
catch (ArithmeticException e)
|
||||||
|
{
|
||||||
|
pflanzen.removeAll(pflanzen);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
zeichnePflanzen();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void löscheBepflanzung()
|
||||||
|
{
|
||||||
|
pflanzen.removeAll(pflanzen);
|
||||||
|
flpfl.löschePflanzen();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void erstelleGarten()
|
||||||
|
{
|
||||||
|
int height = flbeet.getHeight();
|
||||||
|
int width = flbeet.getWidth();
|
||||||
|
int[] randomwertex = new int[4];
|
||||||
|
int[] randomwertey = new int[4];
|
||||||
|
randomwertex[0] = 10;
|
||||||
|
randomwertey[0] = 10;
|
||||||
|
randomwertex[3] = width - 50;
|
||||||
|
randomwertey[3] = height - 50;
|
||||||
|
|
||||||
|
for (int i = 1; i < 3; i++) //erstelle Random Punkte für Wege + Beete
|
||||||
|
{
|
||||||
|
int wegendex = (int) (Math.random() * (170 * i) + (200 * i));
|
||||||
|
int wegendey = (int) (Math.random() * (170 * i) + (200 * i));
|
||||||
|
randomwertex[i] = wegendex;
|
||||||
|
randomwertey[i] = wegendey;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < randomwertex.length; i++) //Garten Wege hinzufügen
|
||||||
|
{
|
||||||
|
hinzufuegenWeg(randomwertex[i], randomwertey[0], randomwertex[i], randomwertey[3]);
|
||||||
|
hinzufuegenWeg(randomwertex[0], randomwertey[i], randomwertex[3], randomwertey[i]);
|
||||||
|
}
|
||||||
|
for (int i = 0; i < randomwertex.length - 1; i++) //Garten Beete hinzufügen
|
||||||
|
{
|
||||||
|
for (int j = 0; j < randomwertey.length - 1; j++)
|
||||||
|
{
|
||||||
|
hinzufuegenBeet(randomwertex[i] + 10, randomwertey[j] + 10, randomwertex[i + 1] - randomwertex[i] - 20, randomwertey[j + 1] - randomwertey[j] - 20);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
zeichneWeg();
|
||||||
|
zeichneBeete();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void löscheGarten()
|
||||||
|
{
|
||||||
|
wege.removeAll(wege);
|
||||||
|
beete.removeAll(beete);
|
||||||
|
pflanzen.removeAll(pflanzen);
|
||||||
|
flpfl.löschePflanzen();
|
||||||
|
flbeet.löscheBeete();
|
||||||
|
flweg.löscheWeg();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Pflanze getmovePflanze(MouseEvent e)
|
public Pflanze getmovePflanze(MouseEvent e)
|
||||||
@ -137,20 +219,22 @@ public class Garten extends Kompositum
|
|||||||
Pflanze diePflanze = null;
|
Pflanze diePflanze = null;
|
||||||
int abstand = 30;
|
int abstand = 30;
|
||||||
|
|
||||||
for(int i = 0; i< pflanzen.size();i++)
|
for (int i = 0; i < pflanzen.size(); i++)
|
||||||
{
|
{
|
||||||
|
|
||||||
if( Math.abs(pflanzen.get(i).getPositionx()-e.getX()) + Math.abs(pflanzen.get(i).getPositiony()-e.getY()) < abstand)
|
if (Math.abs(pflanzen.get(i).getPositionx() - e.getX()) + Math.abs(pflanzen.get(i).getPositiony() - e.getY()) < abstand)
|
||||||
{
|
{
|
||||||
diePflanze = pflanzen.get(i);
|
diePflanze = pflanzen.get(i);
|
||||||
abstand = Math.abs(pflanzen.get(i).getPositionx()-e.getX()) + Math.abs(pflanzen.get(i).getPositiony()-e.getY());
|
abstand = Math.abs(pflanzen.get(i).getPositionx() - e.getX()) + Math.abs(pflanzen.get(i).getPositiony() - e.getY());
|
||||||
System.out.println("Pflanze: " +diePflanze.getPositionx() + " " + diePflanze.getPositiony());
|
System.out.println("Pflanze: " + diePflanze.getPositionx() + " " + diePflanze.getPositiony());
|
||||||
|
|
||||||
intmovePflanze = i;
|
intmovePflanze = i;
|
||||||
System.out.println("Alte Position: "+pflanzen.get(intmovePflanze).getPositionx() + " " +pflanzen.get(intmovePflanze).getPositiony());
|
System.out.println("Alte Position: " + pflanzen.get(intmovePflanze).getPositionx() + " " + pflanzen.get(intmovePflanze).getPositiony());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return diePflanze;
|
return diePflanze;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setmovePflanze(MouseEvent e)
|
public void setmovePflanze(MouseEvent e)
|
||||||
{
|
{
|
||||||
pflanzen.get(intmovePflanze).setPositionx(e.getX());
|
pflanzen.get(intmovePflanze).setPositionx(e.getX());
|
||||||
@ -158,29 +242,5 @@ public class Garten extends Kompositum
|
|||||||
pflanzen.get(intmovePflanze).setAlgorithm();
|
pflanzen.get(intmovePflanze).setAlgorithm();
|
||||||
zeichnePflanzen();
|
zeichnePflanzen();
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
public Pflanze naechstePflanze(int x, int y)
|
|
||||||
{
|
|
||||||
Pflanze diePflanze = null;
|
|
||||||
int abstand = 1000;
|
|
||||||
for(int i = 0; i < pflanzen.size(); i++)
|
|
||||||
{
|
|
||||||
if(pflanzen.get(i).getPositionx()-x + pflanzen.get(i).getPositiony()-y < abstand)
|
|
||||||
{
|
|
||||||
diePflanze = pflanzen.get(i);
|
|
||||||
abstand = Math.abs(x-pflanzen.get(i).getPositionx()) + Math.abs(y-pflanzen.get(i).getPositiony()) ;
|
|
||||||
print(pflanzen.get(i).getPositionx());
|
|
||||||
print(pflanzen.get(i).getPositiony());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(abstand < 20)
|
|
||||||
{
|
|
||||||
return diePflanze;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
@ -14,11 +14,10 @@ import lsystem.StochasticGrammar;
|
|||||||
|
|
||||||
class Pflanze1 extends PflanzeImpl
|
class Pflanze1 extends PflanzeImpl
|
||||||
{
|
{
|
||||||
Pflanze1(int Xstart, int Ystart, int Generation)
|
Pflanze1(int Xstart, int Ystart, int Generation,int startLength)//30-50, Generations 3
|
||||||
{
|
{
|
||||||
super(Xstart,Ystart,Generation);
|
super(Xstart,Ystart,Generation,startLength);
|
||||||
DELTA = (float) ((Math.PI)/10);
|
DELTA = (float) ((Math.PI)/10);
|
||||||
startLength = 30;
|
|
||||||
createLSystem();
|
createLSystem();
|
||||||
translateRules();
|
translateRules();
|
||||||
}
|
}
|
||||||
@ -29,6 +28,6 @@ class Pflanze1 extends PflanzeImpl
|
|||||||
grammar.addRule('F',"F[+F]F", (float) 0.45);
|
grammar.addRule('F',"F[+F]F", (float) 0.45);
|
||||||
grammar.addRule('F',"F[-F]F", (float) 0.45);
|
grammar.addRule('F',"F[-F]F", (float) 0.45);
|
||||||
grammar.generateGrammar(generations);
|
grammar.generateGrammar(generations);
|
||||||
drawLength =(float) (startLength * Math.pow(0.7, (double) generations));
|
drawLength =(float) (startLength * Math.pow(0.6, (double) generations));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,12 +14,10 @@ import lsystem.StochasticGrammar;
|
|||||||
|
|
||||||
class Pflanze2 extends PflanzeImpl
|
class Pflanze2 extends PflanzeImpl
|
||||||
{
|
{
|
||||||
Pflanze2(int Xstart, int Ystart, int Generation)
|
Pflanze2(int Xstart, int Ystart, int Generation,int startLength)//startLength 10-20 (Verzweigte Pflanze)3 Generationen
|
||||||
{
|
{
|
||||||
super(Xstart,Ystart,Generation);
|
super(Xstart,Ystart,Generation,startLength);
|
||||||
|
|
||||||
DELTA = (float) ((Math.PI)/5);
|
DELTA = (float) ((Math.PI)/5);
|
||||||
startLength = 10;
|
|
||||||
createLSystem();
|
createLSystem();
|
||||||
translateRules();
|
translateRules();
|
||||||
}
|
}
|
||||||
|
@ -14,12 +14,10 @@ import lsystem.StochasticGrammar;
|
|||||||
|
|
||||||
class Pflanze3 extends PflanzeImpl
|
class Pflanze3 extends PflanzeImpl
|
||||||
{
|
{
|
||||||
Pflanze3(int Xstart, int Ystart, int Generation)
|
Pflanze3(int Xstart, int Ystart, int Generation,int startLength) //Unkraut 10-20, 4 Generations
|
||||||
{
|
{
|
||||||
super(Xstart,Ystart,Generation);
|
super(Xstart,Ystart,Generation,startLength);
|
||||||
|
|
||||||
DELTA = (float) ((Math.PI)/5);
|
DELTA = (float) ((Math.PI)/5);
|
||||||
startLength = 10;
|
|
||||||
createLSystem();
|
createLSystem();
|
||||||
translateRules();
|
translateRules();
|
||||||
}
|
}
|
||||||
|
@ -11,6 +11,7 @@ package garten.model;
|
|||||||
*/
|
*/
|
||||||
import java.text.CharacterIterator;
|
import java.text.CharacterIterator;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
import javax.swing.JComponent;
|
import javax.swing.JComponent;
|
||||||
import lsystem.Grammar;
|
import lsystem.Grammar;
|
||||||
import lsystem.collection.TurtleStack;
|
import lsystem.collection.TurtleStack;
|
||||||
@ -34,16 +35,24 @@ public class PflanzeImpl extends JComponent implements Pflanze
|
|||||||
protected int positiony;
|
protected int positiony;
|
||||||
|
|
||||||
protected int flaeche;
|
protected int flaeche;
|
||||||
|
|
||||||
|
protected float[] boundingBoxes;
|
||||||
|
ArrayList<Float> tempx;
|
||||||
|
ArrayList<Float> tempy;
|
||||||
//Position();
|
//Position();
|
||||||
TurtleStack ts;
|
TurtleStack ts;
|
||||||
|
|
||||||
public PflanzeImpl(int Xstart, int Ystart, int Generation)
|
public PflanzeImpl(int xstart, int ystart, int generation, int startLength)
|
||||||
{
|
{
|
||||||
positionx = Xstart;
|
this.positionx = xstart;
|
||||||
positiony = Ystart;
|
this.positiony = ystart;
|
||||||
generations = Generation;
|
this.generations = generation;
|
||||||
|
this.startLength = startLength;
|
||||||
pts = new ArrayList<float[]>();
|
pts = new ArrayList<float[]>();
|
||||||
ts = new TurtleStack();
|
ts = new TurtleStack();
|
||||||
|
boundingBoxes=new float[4]; //minx, miny, maxx, maxy
|
||||||
|
tempx = new ArrayList<>();
|
||||||
|
tempy = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void translateRules()
|
public void translateRules()
|
||||||
@ -65,7 +74,13 @@ public class PflanzeImpl extends JComponent implements Pflanze
|
|||||||
{
|
{
|
||||||
x_temp, y_temp, turtle.getX(), turtle.getY()
|
x_temp, y_temp, turtle.getX(), turtle.getY()
|
||||||
};
|
};
|
||||||
|
tempx.add(x_temp);
|
||||||
|
tempx.add(turtle.getX());
|
||||||
|
tempy.add(y_temp);
|
||||||
|
tempy.add(turtle.getY());
|
||||||
|
|
||||||
pts.add(temp);
|
pts.add(temp);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case '+':
|
case '+':
|
||||||
turtle.setTheta(turtle.getTheta() + DELTA);
|
turtle.setTheta(turtle.getTheta() + DELTA);
|
||||||
@ -83,12 +98,25 @@ public class PflanzeImpl extends JComponent implements Pflanze
|
|||||||
System.err.println("character " + ch + " not in grammar");
|
System.err.println("character " + ch + " not in grammar");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
setBoundingBoxes();
|
||||||
|
}
|
||||||
|
|
||||||
|
void setBoundingBoxes()
|
||||||
|
{
|
||||||
|
boundingBoxes[0] = Collections.min(tempx);
|
||||||
|
boundingBoxes[1] = Collections.min(tempy);
|
||||||
|
boundingBoxes[2] = Collections.max(tempx);
|
||||||
|
boundingBoxes[3] = Collections.max(tempy);
|
||||||
|
}
|
||||||
|
public float [] getBoundingBoxes()
|
||||||
|
{
|
||||||
|
return boundingBoxes;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ArrayList<float[]> getPoints()
|
public ArrayList<float[]> getPoints()
|
||||||
{
|
{
|
||||||
|
|
||||||
return pts;
|
return pts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,19 +14,18 @@ class Pflanzengruppe
|
|||||||
{
|
{
|
||||||
private int alter;
|
private int alter;
|
||||||
private int pflanzentyp;
|
private int pflanzentyp;
|
||||||
|
private int startlaenge;
|
||||||
|
|
||||||
|
Pflanze1 pfl1;
|
||||||
|
Pflanze2 pfl2;
|
||||||
|
Pflanze3 pfl3;
|
||||||
|
|
||||||
|
|
||||||
|
Pflanzengruppe(int pflanzenTyp,int alter, int startlaenge)
|
||||||
private int anzahlPflanzen = 1;
|
|
||||||
|
|
||||||
|
|
||||||
//Pflanze[] Pflanzengruppe = new Pflanze[anzahlPflanzen];
|
|
||||||
|
|
||||||
Pflanzengruppe(int Alter,int PflanzenTyp,int AnzahlPflanzen)
|
|
||||||
{
|
{
|
||||||
alter = Alter;
|
this.alter = alter;
|
||||||
pflanzentyp = PflanzenTyp;
|
this.pflanzentyp = pflanzenTyp;
|
||||||
anzahlPflanzen = AnzahlPflanzen;
|
this.startlaenge = startlaenge;
|
||||||
}
|
}
|
||||||
public void anzeigen()
|
public void anzeigen()
|
||||||
{
|
{
|
||||||
|
@ -13,53 +13,52 @@ package garten.model;
|
|||||||
class PflanzengruppenKonfigurator
|
class PflanzengruppenKonfigurator
|
||||||
{
|
{
|
||||||
private int alter = 1;
|
private int alter = 1;
|
||||||
private int pflanzenTyp = 1;
|
private int pflanzenTyp =1;
|
||||||
private int anzahlPflanzen = 1;
|
private int startlaenge =1;
|
||||||
|
|
||||||
public PflanzengruppenKonfigurator()
|
public PflanzengruppenKonfigurator()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
public Pflanzengruppe erstellen() throws IllegalArgumentException
|
||||||
public PflanzengruppenKonfigurator alter(int Alter)
|
|
||||||
{
|
|
||||||
this.alter = Alter;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public PflanzengruppenKonfigurator pflanzenTyp(int PflanzenTyp)
|
|
||||||
{
|
|
||||||
this.pflanzenTyp = PflanzenTyp;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public PflanzengruppenKonfigurator anzahlPflanzen(int AnzahlPflanzen)
|
|
||||||
{
|
|
||||||
this.anzahlPflanzen = AnzahlPflanzen;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void setanzPflanzen(int tempanz)
|
|
||||||
{
|
|
||||||
anzahlPflanzen=tempanz;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Pflanzengruppe erstellen() throws IllegalArgumentException
|
|
||||||
{
|
{
|
||||||
konfigurationPruefen();
|
konfigurationPruefen();
|
||||||
Pflanzengruppe pflgruppe = new Pflanzengruppe(alter,pflanzenTyp,anzahlPflanzen);
|
Pflanzengruppe pflgruppe = new Pflanzengruppe(pflanzenTyp,alter,startlaenge);
|
||||||
return pflgruppe;
|
return pflgruppe;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PflanzengruppenKonfigurator alter(int alter)
|
||||||
|
{
|
||||||
|
this.alter = alter;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public PflanzengruppenKonfigurator pflanzenTyp(int pflanzenTyp)
|
||||||
|
{
|
||||||
|
this.pflanzenTyp = pflanzenTyp;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public PflanzengruppenKonfigurator startlaenge(int startlaenge)
|
||||||
|
{
|
||||||
|
this.startlaenge = startlaenge;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
private void konfigurationPruefen() throws IllegalArgumentException
|
private void konfigurationPruefen() throws IllegalArgumentException
|
||||||
{
|
{
|
||||||
if((this.pflanzenTyp ==2 ||this.pflanzenTyp ==3 )&& alter > 4)
|
if((pflanzenTyp ==1 || pflanzenTyp ==2) && alter > 3|| pflanzenTyp ==3 && alter > 4)
|
||||||
{
|
{
|
||||||
throw new IllegalArgumentException("Ein geringeres Alter muss gewählt werden");
|
throw new IllegalArgumentException("Ein geringeres Alter muss gewählt werden");
|
||||||
}
|
}
|
||||||
if(this.pflanzenTyp ==1 && alter > 5)
|
if(pflanzenTyp ==1 && (startlaenge < 30 || startlaenge >50))
|
||||||
{
|
{
|
||||||
throw new IllegalArgumentException("Ein geringeres Alter muss gewählt werden");
|
throw new IllegalArgumentException("Größe muss zwischen 30-50 liegen");
|
||||||
|
}
|
||||||
|
if((pflanzenTyp ==2 || pflanzenTyp ==3) && (startlaenge <10 || startlaenge >20))
|
||||||
|
{
|
||||||
|
throw new IllegalArgumentException("Größe muss zwischen 10-20 liegen");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -23,18 +23,19 @@ public class start
|
|||||||
{
|
{
|
||||||
public start()
|
public start()
|
||||||
{
|
{
|
||||||
|
|
||||||
Color hintergrund = new Color(34, 139, 34);
|
Color hintergrund = new Color(34, 139, 34);
|
||||||
Fenster view = new Fenster();
|
|
||||||
|
|
||||||
FlaecheBeet flbeet = new FlaecheBeet();
|
FlaecheBeet flbeet = new FlaecheBeet();
|
||||||
FlaecheWeg flweg = new FlaecheWeg();
|
FlaecheWeg flweg = new FlaecheWeg();
|
||||||
FlaechePflanzen flpflanzen = new FlaechePflanzen();
|
FlaechePflanzen flpflanzen = new FlaechePflanzen();
|
||||||
|
Fenster view = new Fenster();
|
||||||
flpflanzen.setOpaque(false);
|
flpflanzen.setOpaque(false);
|
||||||
flweg.setOpaque(false);
|
|
||||||
flbeet.setOpaque(false);
|
flbeet.setOpaque(false);
|
||||||
|
flbeet.setComponentPopupMenu(view.getPopup());
|
||||||
|
flweg.setOpaque(false);
|
||||||
Container hauptkiste = view.getContentPane();
|
Container hauptkiste = view.getContentPane();
|
||||||
|
|
||||||
hauptkiste.setLayout(new OverlayLayout(hauptkiste));
|
hauptkiste.setLayout(new OverlayLayout(hauptkiste));
|
||||||
hauptkiste.setBackground(hintergrund);
|
hauptkiste.setBackground(hintergrund);
|
||||||
hauptkiste.add(flpflanzen);
|
hauptkiste.add(flpflanzen);
|
||||||
|
@ -5,7 +5,15 @@
|
|||||||
*/
|
*/
|
||||||
package garten.view;
|
package garten.view;
|
||||||
|
|
||||||
|
import java.awt.MouseInfo;
|
||||||
|
import java.awt.event.MouseEvent;
|
||||||
|
import javax.swing.ButtonGroup;
|
||||||
|
import javax.swing.JButton;
|
||||||
import javax.swing.JFrame;
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JMenu;
|
||||||
|
import javax.swing.JMenuItem;
|
||||||
|
import javax.swing.JPopupMenu;
|
||||||
|
import javax.swing.JRadioButton;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@ -13,22 +21,114 @@ import javax.swing.JFrame;
|
|||||||
*/
|
*/
|
||||||
public class Fenster extends JFrame
|
public class Fenster extends JFrame
|
||||||
{
|
{
|
||||||
|
JPopupMenu popup;
|
||||||
|
JMenu mnbepflanzen1;
|
||||||
|
JMenu mnbepflanzen2;
|
||||||
|
JMenu mnbepflanzen3;
|
||||||
|
JMenuItem mnGartenanlegen;
|
||||||
|
JMenuItem mnRandomPflanzenanlegen;
|
||||||
|
|
||||||
|
JButton btnbepfl1;
|
||||||
|
JButton btnbepfl2;
|
||||||
|
JButton btnbepfl3;
|
||||||
|
|
||||||
|
JRadioButton radiobtn1pfl1;
|
||||||
|
JRadioButton radiobtn2pfl1;
|
||||||
|
JRadioButton radiobtn3pfl1;
|
||||||
|
JRadioButton radiobtn4pfl1;
|
||||||
|
|
||||||
|
JRadioButton radiobtn1pfl2;
|
||||||
|
JRadioButton radiobtn2pfl2;
|
||||||
|
JRadioButton radiobtn3pfl2;
|
||||||
|
JRadioButton radiobtn4pfl2;
|
||||||
|
|
||||||
|
JRadioButton radiobtn1pfl3;
|
||||||
|
JRadioButton radiobtn2pfl3;
|
||||||
|
JRadioButton radiobtn3pfl3;
|
||||||
|
JRadioButton radiobtn4pfl3;
|
||||||
|
|
||||||
public Fenster()
|
public Fenster()
|
||||||
{
|
{
|
||||||
|
|
||||||
/*
|
//PoPupMenü
|
||||||
JPopupMenu popup = new JPopupMenu();
|
popup = new JPopupMenu();
|
||||||
JMenuItem menuItem = new JMenuItem("Hallo");
|
|
||||||
JRadioButtonMenuItem radioButtonItem = new JRadioButtonMenuItem("Ich bin ein JRadionButtonMenuItem",true);
|
mnGartenanlegen = new JMenuItem("Garten anlegen");
|
||||||
popup.add(menuItem);
|
mnRandomPflanzenanlegen = new JMenuItem("Random Bepflanzung");
|
||||||
popup.add(radioButtonItem);
|
|
||||||
popup.setLocation(200,200);
|
popup.add(mnGartenanlegen);
|
||||||
popup.setVisible(true);
|
popup.addSeparator();
|
||||||
JPopupMenu.setDefaultLightWeightPopupEnabled(false);
|
popup.add(mnRandomPflanzenanlegen);
|
||||||
popup.setVisible(true);
|
popup.addSeparator();
|
||||||
|
|
||||||
|
//PopUpmenü Pflanze 1
|
||||||
|
mnbepflanzen1 = new JMenu("Bepflanze mit Pflanze1");
|
||||||
|
btnbepfl1 = new JButton("Bepflanzen");
|
||||||
|
radiobtn1pfl1 = new JRadioButton("1 Jahr alt");
|
||||||
|
radiobtn2pfl1 = new JRadioButton("2 Jahre alt");
|
||||||
|
radiobtn3pfl1= new JRadioButton("3 Jahre alt");
|
||||||
|
radiobtn4pfl1 = new JRadioButton("4 Jahre alt");
|
||||||
|
//Btn Gruppe Pflanz1
|
||||||
|
ButtonGroup radiobtngrp1 = new ButtonGroup();
|
||||||
|
radiobtngrp1.add(radiobtn1pfl1);
|
||||||
|
radiobtngrp1.add(radiobtn2pfl1);
|
||||||
|
radiobtngrp1.add(radiobtn3pfl1);
|
||||||
|
radiobtngrp1.add(radiobtn4pfl1);
|
||||||
|
//Alle Elemente zu PopUpmenü Pflanze 1 hinzufügen
|
||||||
|
mnbepflanzen1.add(radiobtn1pfl1);
|
||||||
|
mnbepflanzen1.add(radiobtn2pfl1);
|
||||||
|
mnbepflanzen1.add(radiobtn3pfl1);
|
||||||
|
mnbepflanzen1.add(radiobtn4pfl1);
|
||||||
|
mnbepflanzen1.add(btnbepfl1);
|
||||||
|
|
||||||
|
//PopUpmenü Pflanze 2
|
||||||
|
mnbepflanzen2 = new JMenu("Bepflanze mit Pflanze2");
|
||||||
|
btnbepfl2 = new JButton("Bepflanzen");
|
||||||
|
radiobtn1pfl2 = new JRadioButton("1 Jahr alt");
|
||||||
|
radiobtn2pfl2 = new JRadioButton("2 Jahre alt");
|
||||||
|
radiobtn3pfl2= new JRadioButton("3 Jahre alt");
|
||||||
|
radiobtn4pfl2= new JRadioButton("4 Jahre alt");
|
||||||
|
//Btn Gruppe Pflanz2
|
||||||
|
radiobtngrp1.add(radiobtn1pfl2);
|
||||||
|
radiobtngrp1.add(radiobtn2pfl2);
|
||||||
|
radiobtngrp1.add(radiobtn3pfl2);
|
||||||
|
radiobtngrp1.add(radiobtn4pfl2);
|
||||||
|
//Alle Elemente zu PopUpmenü Pflanze 2 hinzufügen
|
||||||
|
mnbepflanzen2.add(radiobtn1pfl2);
|
||||||
|
mnbepflanzen2.add(radiobtn2pfl2);
|
||||||
|
mnbepflanzen2.add(radiobtn3pfl2);
|
||||||
|
mnbepflanzen2.add(radiobtn4pfl2);
|
||||||
|
mnbepflanzen2.add(btnbepfl2);
|
||||||
|
|
||||||
|
|
||||||
|
//PopUpmenü Pflanze 3
|
||||||
|
mnbepflanzen3 = new JMenu("Bepflanze mit Pflanze3");
|
||||||
|
btnbepfl3 = new JButton("Bepflanzen");
|
||||||
|
|
||||||
|
radiobtn1pfl3 = new JRadioButton("1 Jahr alt");
|
||||||
|
radiobtn2pfl3 = new JRadioButton("2 Jahre alt");
|
||||||
|
radiobtn3pfl3= new JRadioButton("3 Jahre alt");
|
||||||
|
radiobtn4pfl3= new JRadioButton("4 Jahre alt");
|
||||||
|
//Btn Gruppe Pflanz3
|
||||||
|
radiobtngrp1.add(radiobtn1pfl3);
|
||||||
|
radiobtngrp1.add(radiobtn2pfl3);
|
||||||
|
radiobtngrp1.add(radiobtn3pfl3);
|
||||||
|
radiobtngrp1.add(radiobtn4pfl3);
|
||||||
|
//Alle Elemente zu PopUpmenü Pflanze 3 hinzufügen
|
||||||
|
mnbepflanzen3.add(radiobtn1pfl3);
|
||||||
|
mnbepflanzen3.add(radiobtn2pfl3);
|
||||||
|
mnbepflanzen3.add(radiobtn3pfl3);
|
||||||
|
mnbepflanzen3.add(radiobtn4pfl3);
|
||||||
|
mnbepflanzen3.add(btnbepfl3);
|
||||||
|
|
||||||
|
//Alle PopUpmenüs dem PoPup hinzufügen
|
||||||
|
popup.add(mnbepflanzen1);
|
||||||
|
popup.addSeparator();
|
||||||
|
popup.add(mnbepflanzen2);
|
||||||
|
popup.addSeparator();
|
||||||
|
popup.add(mnbepflanzen3);
|
||||||
|
|
||||||
|
|
||||||
*/
|
|
||||||
this.setTitle("Garten von Paul und Jan");
|
this.setTitle("Garten von Paul und Jan");
|
||||||
this.pack();
|
this.pack();
|
||||||
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
|
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
|
||||||
@ -36,4 +136,52 @@ public class Fenster extends JFrame
|
|||||||
this.setVisible(true);
|
this.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void showPoPup(MouseEvent e)
|
||||||
|
{
|
||||||
|
popup.setLocation(MouseInfo.getPointerInfo().getLocation().x,MouseInfo.getPointerInfo().getLocation().y);
|
||||||
|
popup.setVisible(true);
|
||||||
|
}
|
||||||
|
public void hidePopup()
|
||||||
|
{
|
||||||
|
popup.setVisible(false);
|
||||||
|
}
|
||||||
|
public JPopupMenu getPopup()
|
||||||
|
{
|
||||||
|
return popup;
|
||||||
|
}
|
||||||
|
public JMenuItem getMnGartenanlegen()
|
||||||
|
{
|
||||||
|
return mnGartenanlegen;
|
||||||
|
}
|
||||||
|
public JMenuItem getMnRandomPflanzenanlegen()
|
||||||
|
{
|
||||||
|
return mnRandomPflanzenanlegen;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JMenu getMnbepflanzen1()
|
||||||
|
{
|
||||||
|
return mnbepflanzen1;
|
||||||
|
}
|
||||||
|
public JMenu getMnbepflanzen2()
|
||||||
|
{
|
||||||
|
return mnbepflanzen2;
|
||||||
|
}
|
||||||
|
public JMenu getMnbepflanzen3()
|
||||||
|
{
|
||||||
|
return mnbepflanzen3;
|
||||||
|
}
|
||||||
|
|
||||||
|
public JButton getBtnbepfl1()
|
||||||
|
{
|
||||||
|
return btnbepfl1;
|
||||||
|
}
|
||||||
|
public JButton getBtnbepfl2()
|
||||||
|
{
|
||||||
|
return btnbepfl2;
|
||||||
|
}
|
||||||
|
public JButton getBtnbepfl3()
|
||||||
|
{
|
||||||
|
return btnbepfl2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,6 @@ import javax.swing.JPanel;
|
|||||||
public class FlaecheBeet extends JPanel
|
public class FlaecheBeet extends JPanel
|
||||||
{
|
{
|
||||||
int[] temppunkte;
|
int[] temppunkte;
|
||||||
|
|
||||||
Color colorBeet;
|
Color colorBeet;
|
||||||
private ArrayList<Beet> beete;
|
private ArrayList<Beet> beete;
|
||||||
|
|
||||||
@ -44,7 +43,13 @@ public class FlaecheBeet extends JPanel
|
|||||||
|
|
||||||
public void zeichneBeete(ArrayList<Beet> tempBeet)
|
public void zeichneBeete(ArrayList<Beet> tempBeet)
|
||||||
{
|
{
|
||||||
|
|
||||||
beete.addAll(0, tempBeet);
|
beete.addAll(0, tempBeet);
|
||||||
repaint();
|
repaint();
|
||||||
}
|
}
|
||||||
|
public void löscheBeete()
|
||||||
|
{
|
||||||
|
beete.removeAll(beete);
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -31,6 +31,7 @@ public class FlaechePflanzen extends JPanel
|
|||||||
pflanzen = new ArrayList<>();
|
pflanzen = new ArrayList<>();
|
||||||
Gerade = new Line2D.Float();
|
Gerade = new Line2D.Float();
|
||||||
pinsel = new BasicStroke(1f);
|
pinsel = new BasicStroke(1f);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void paintComponent(Graphics g)
|
public void paintComponent(Graphics g)
|
||||||
@ -57,4 +58,9 @@ public class FlaechePflanzen extends JPanel
|
|||||||
pflanzen.addAll(0, temppflanzen);
|
pflanzen.addAll(0, temppflanzen);
|
||||||
repaint();
|
repaint();
|
||||||
}
|
}
|
||||||
|
public void löschePflanzen()
|
||||||
|
{
|
||||||
|
pflanzen.removeAll(pflanzen);
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -53,4 +53,8 @@ public class FlaecheWeg extends JPanel
|
|||||||
weg.addAll(0, tempWeg);
|
weg.addAll(0, tempWeg);
|
||||||
repaint();
|
repaint();
|
||||||
}
|
}
|
||||||
|
public void löscheWeg()
|
||||||
|
{
|
||||||
|
weg.removeAll(weg);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
145
Garten/src/garten/view/GUI.form
Normal file
145
Garten/src/garten/view/GUI.form
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
|
||||||
|
<Form version="1.9" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
|
||||||
|
<NonVisualComponents>
|
||||||
|
<Container class="javax.swing.JPopupMenu" name="mnPopup">
|
||||||
|
<Properties>
|
||||||
|
<Property name="focusable" type="boolean" value="false"/>
|
||||||
|
</Properties>
|
||||||
|
|
||||||
|
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout">
|
||||||
|
<Property name="useNullLayout" type="boolean" value="true"/>
|
||||||
|
</Layout>
|
||||||
|
<SubComponents>
|
||||||
|
<Menu class="javax.swing.JMenu" name="mnPflanze1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="jMenu2"/>
|
||||||
|
</Properties>
|
||||||
|
<SubComponents>
|
||||||
|
<MenuItem class="javax.swing.JRadioButtonMenuItem" name="radiobuttonpfl1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="selected" type="boolean" value="true"/>
|
||||||
|
<Property name="text" type="java.lang.String" value="jRadioButtonMenuItem1"/>
|
||||||
|
</Properties>
|
||||||
|
</MenuItem>
|
||||||
|
<MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonMenuItem1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="selected" type="boolean" value="true"/>
|
||||||
|
<Property name="text" type="java.lang.String" value="jRadioButtonMenuItem1"/>
|
||||||
|
</Properties>
|
||||||
|
</MenuItem>
|
||||||
|
<MenuItem class="javax.swing.JRadioButtonMenuItem" name="jRadioButtonMenuItem2">
|
||||||
|
<Properties>
|
||||||
|
<Property name="selected" type="boolean" value="true"/>
|
||||||
|
<Property name="text" type="java.lang.String" value="jRadioButtonMenuItem2"/>
|
||||||
|
</Properties>
|
||||||
|
</MenuItem>
|
||||||
|
</SubComponents>
|
||||||
|
</Menu>
|
||||||
|
<Menu class="javax.swing.JMenu" name="mnPflanze2">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="jMenu2"/>
|
||||||
|
</Properties>
|
||||||
|
</Menu>
|
||||||
|
<Menu class="javax.swing.JMenu" name="mnPflanze3">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="jMenu2"/>
|
||||||
|
</Properties>
|
||||||
|
</Menu>
|
||||||
|
</SubComponents>
|
||||||
|
</Container>
|
||||||
|
<Menu class="javax.swing.JMenuBar" name="jMenuBar1">
|
||||||
|
<SubComponents>
|
||||||
|
<Menu class="javax.swing.JMenu" name="jMenu1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="File"/>
|
||||||
|
</Properties>
|
||||||
|
</Menu>
|
||||||
|
<Menu class="javax.swing.JMenu" name="mnfunktionen">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="Funktionen"/>
|
||||||
|
</Properties>
|
||||||
|
<SubComponents>
|
||||||
|
<MenuItem class="javax.swing.JMenuItem" name="mnzeichneGarten">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="Garten anlegen"/>
|
||||||
|
</Properties>
|
||||||
|
</MenuItem>
|
||||||
|
<MenuItem class="javax.swing.JMenuItem" name="mnzeichneRandPflanzen">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="Random Bepflanzung"/>
|
||||||
|
</Properties>
|
||||||
|
</MenuItem>
|
||||||
|
</SubComponents>
|
||||||
|
</Menu>
|
||||||
|
</SubComponents>
|
||||||
|
</Menu>
|
||||||
|
</NonVisualComponents>
|
||||||
|
<Properties>
|
||||||
|
<Property name="defaultCloseOperation" type="int" value="3"/>
|
||||||
|
</Properties>
|
||||||
|
<SyntheticProperties>
|
||||||
|
<SyntheticProperty name="menuBar" type="java.lang.String" value="jMenuBar1"/>
|
||||||
|
<SyntheticProperty name="formSizePolicy" type="int" value="1"/>
|
||||||
|
<SyntheticProperty name="generateCenter" type="boolean" value="false"/>
|
||||||
|
</SyntheticProperties>
|
||||||
|
<AuxValues>
|
||||||
|
<AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
|
||||||
|
<AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
|
||||||
|
<AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
|
||||||
|
<AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
|
||||||
|
<AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
|
||||||
|
<AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
|
||||||
|
<AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
|
||||||
|
<AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
|
||||||
|
<AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
|
||||||
|
<AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,1,-112"/>
|
||||||
|
</AuxValues>
|
||||||
|
|
||||||
|
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
|
||||||
|
<SubComponents>
|
||||||
|
<Container class="javax.swing.JPanel" name="jPanel1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
|
||||||
|
<Color blue="99" green="ff" red="99" type="rgb"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="componentPopupMenu" type="javax.swing.JPopupMenu" editor="org.netbeans.modules.form.ComponentChooserEditor">
|
||||||
|
<ComponentRef name="mnPopup"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="opaque" type="boolean" value="false"/>
|
||||||
|
</Properties>
|
||||||
|
<Constraints>
|
||||||
|
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
||||||
|
<BorderConstraints direction="Center"/>
|
||||||
|
</Constraint>
|
||||||
|
</Constraints>
|
||||||
|
<LayoutCode>
|
||||||
|
<CodeStatement>
|
||||||
|
<CodeExpression id="1_jPanel1">
|
||||||
|
<CodeVariable name="jPanel1" type="8194" declaredType="javax.swing.JPanel"/>
|
||||||
|
<ExpressionOrigin>
|
||||||
|
<ExpressionProvider type="ComponentRef">
|
||||||
|
<ComponentRef name="jPanel1"/>
|
||||||
|
</ExpressionProvider>
|
||||||
|
</ExpressionOrigin>
|
||||||
|
</CodeExpression>
|
||||||
|
<StatementProvider type="CodeMethod">
|
||||||
|
<CodeMethod name="setLayout" class="java.awt.Container" parameterTypes="java.awt.LayoutManager"/>
|
||||||
|
</StatementProvider>
|
||||||
|
<Parameters>
|
||||||
|
<CodeExpression id="2">
|
||||||
|
<ExpressionOrigin>
|
||||||
|
<ExpressionProvider type="CodeConstructor">
|
||||||
|
<CodeConstructor class="javax.swing.OverlayLayout" parameterTypes="java.awt.Container"/>
|
||||||
|
</ExpressionProvider>
|
||||||
|
<Parameters>
|
||||||
|
<CodeExpression id="1_jPanel1"/>
|
||||||
|
</Parameters>
|
||||||
|
</ExpressionOrigin>
|
||||||
|
</CodeExpression>
|
||||||
|
</Parameters>
|
||||||
|
</CodeStatement>
|
||||||
|
</LayoutCode>
|
||||||
|
</Container>
|
||||||
|
</SubComponents>
|
||||||
|
</Form>
|
161
Garten/src/garten/view/GUI.java
Normal file
161
Garten/src/garten/view/GUI.java
Normal file
@ -0,0 +1,161 @@
|
|||||||
|
/*
|
||||||
|
* To change this license header, choose License Headers in Project Properties.
|
||||||
|
* To change this template file, choose Tools | Templates
|
||||||
|
* and open the template in the editor.
|
||||||
|
*/
|
||||||
|
package garten.view;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author Jan
|
||||||
|
*/
|
||||||
|
public class GUI extends javax.swing.JFrame
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates new form GUI
|
||||||
|
*/
|
||||||
|
public GUI()
|
||||||
|
{
|
||||||
|
initComponents();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This method is called from within the constructor to initialize the form.
|
||||||
|
* WARNING: Do NOT modify this code. The content of this method is always
|
||||||
|
* regenerated by the Form Editor.
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
||||||
|
private void initComponents()
|
||||||
|
{
|
||||||
|
|
||||||
|
mnPopup = new javax.swing.JPopupMenu();
|
||||||
|
mnPflanze1 = new javax.swing.JMenu();
|
||||||
|
radiobuttonpfl1 = new javax.swing.JRadioButtonMenuItem();
|
||||||
|
jRadioButtonMenuItem1 = new javax.swing.JRadioButtonMenuItem();
|
||||||
|
jRadioButtonMenuItem2 = new javax.swing.JRadioButtonMenuItem();
|
||||||
|
mnPflanze2 = new javax.swing.JMenu();
|
||||||
|
mnPflanze3 = new javax.swing.JMenu();
|
||||||
|
jPanel1 = new javax.swing.JPanel();
|
||||||
|
jMenuBar1 = new javax.swing.JMenuBar();
|
||||||
|
jMenu1 = new javax.swing.JMenu();
|
||||||
|
mnfunktionen = new javax.swing.JMenu();
|
||||||
|
mnzeichneGarten = new javax.swing.JMenuItem();
|
||||||
|
mnzeichneRandPflanzen = new javax.swing.JMenuItem();
|
||||||
|
|
||||||
|
mnPopup.setFocusable(false);
|
||||||
|
|
||||||
|
mnPflanze1.setText("jMenu2");
|
||||||
|
|
||||||
|
radiobuttonpfl1.setSelected(true);
|
||||||
|
radiobuttonpfl1.setText("jRadioButtonMenuItem1");
|
||||||
|
mnPflanze1.add(radiobuttonpfl1);
|
||||||
|
|
||||||
|
jRadioButtonMenuItem1.setSelected(true);
|
||||||
|
jRadioButtonMenuItem1.setText("jRadioButtonMenuItem1");
|
||||||
|
mnPflanze1.add(jRadioButtonMenuItem1);
|
||||||
|
|
||||||
|
jRadioButtonMenuItem2.setSelected(true);
|
||||||
|
jRadioButtonMenuItem2.setText("jRadioButtonMenuItem2");
|
||||||
|
mnPflanze1.add(jRadioButtonMenuItem2);
|
||||||
|
|
||||||
|
mnPopup.add(mnPflanze1);
|
||||||
|
|
||||||
|
mnPflanze2.setText("jMenu2");
|
||||||
|
mnPopup.add(mnPflanze2);
|
||||||
|
|
||||||
|
mnPflanze3.setText("jMenu2");
|
||||||
|
mnPopup.add(mnPflanze3);
|
||||||
|
|
||||||
|
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
jPanel1.setBackground(new java.awt.Color(153, 255, 153));
|
||||||
|
jPanel1.setComponentPopupMenu(mnPopup);
|
||||||
|
jPanel1.setOpaque(false);
|
||||||
|
jPanel1.setLayout(new javax.swing.OverlayLayout(jPanel1));
|
||||||
|
getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
|
||||||
|
|
||||||
|
jMenu1.setText("File");
|
||||||
|
jMenuBar1.add(jMenu1);
|
||||||
|
|
||||||
|
mnfunktionen.setText("Funktionen");
|
||||||
|
|
||||||
|
mnzeichneGarten.setText("Garten anlegen");
|
||||||
|
mnfunktionen.add(mnzeichneGarten);
|
||||||
|
|
||||||
|
mnzeichneRandPflanzen.setText("Random Bepflanzung");
|
||||||
|
mnfunktionen.add(mnzeichneRandPflanzen);
|
||||||
|
|
||||||
|
jMenuBar1.add(mnfunktionen);
|
||||||
|
|
||||||
|
setJMenuBar(jMenuBar1);
|
||||||
|
|
||||||
|
pack();
|
||||||
|
}// </editor-fold>//GEN-END:initComponents
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param args the command line arguments
|
||||||
|
*/
|
||||||
|
public static void main(String args[])
|
||||||
|
{
|
||||||
|
/* Set the Nimbus look and feel */
|
||||||
|
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
|
||||||
|
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
|
||||||
|
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
|
||||||
|
*/
|
||||||
|
try
|
||||||
|
{
|
||||||
|
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels())
|
||||||
|
{
|
||||||
|
if ("Nimbus".equals(info.getName()))
|
||||||
|
{
|
||||||
|
javax.swing.UIManager.setLookAndFeel(info.getClassName());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (ClassNotFoundException ex)
|
||||||
|
{
|
||||||
|
java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
|
||||||
|
}
|
||||||
|
catch (InstantiationException ex)
|
||||||
|
{
|
||||||
|
java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
|
||||||
|
}
|
||||||
|
catch (IllegalAccessException ex)
|
||||||
|
{
|
||||||
|
java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
|
||||||
|
}
|
||||||
|
catch (javax.swing.UnsupportedLookAndFeelException ex)
|
||||||
|
{
|
||||||
|
java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
|
||||||
|
}
|
||||||
|
//</editor-fold>
|
||||||
|
|
||||||
|
/* Create and display the form */
|
||||||
|
java.awt.EventQueue.invokeLater(new Runnable()
|
||||||
|
{
|
||||||
|
public void run()
|
||||||
|
{
|
||||||
|
new GUI().setVisible(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
|
private javax.swing.JMenu jMenu1;
|
||||||
|
private javax.swing.JMenuBar jMenuBar1;
|
||||||
|
private javax.swing.JPanel jPanel1;
|
||||||
|
private javax.swing.JRadioButtonMenuItem jRadioButtonMenuItem1;
|
||||||
|
private javax.swing.JRadioButtonMenuItem jRadioButtonMenuItem2;
|
||||||
|
private javax.swing.JMenu mnPflanze1;
|
||||||
|
private javax.swing.JMenu mnPflanze2;
|
||||||
|
private javax.swing.JMenu mnPflanze3;
|
||||||
|
private javax.swing.JPopupMenu mnPopup;
|
||||||
|
private javax.swing.JMenu mnfunktionen;
|
||||||
|
private javax.swing.JMenuItem mnzeichneGarten;
|
||||||
|
private javax.swing.JMenuItem mnzeichneRandPflanzen;
|
||||||
|
private javax.swing.JRadioButtonMenuItem radiobuttonpfl1;
|
||||||
|
// End of variables declaration//GEN-END:variables
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user