mirror of
https://github.com/jneug/zeichenmaschine.git
synced 2026-04-14 06:33:34 +02:00
WindowAdapter beendet die ZM nun direkt, und wartet nicht auf den Thread
Bisher hat ein Schließen des Fensters dazu geführt, dass `running = false` gestzt wurde und die Maschine den aktuellen Frame noch beenden konnte. Da ein Frame durch die Verwendung von `delay(int)` aber auch lange dauern kann, hatte man als Nutzer dann den Eindruck, dass der Klick nicht registriert wurde. Nun beendet das Programm direkt, ruft aber trotzdem vorher `teardown()` und `cleanup()` auf.
This commit is contained in:
@@ -291,6 +291,7 @@ public class Zeichenmaschine extends Constants {
|
|||||||
// Das Icon des Fensters ändern
|
// Das Icon des Fensters ändern
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// TODO: Add image sizes
|
||||||
ImageIcon icon = new ImageIcon(ImageIO.read(new File("res/icon_64.png")));
|
ImageIcon icon = new ImageIcon(ImageIO.read(new File("res/icon_64.png")));
|
||||||
|
|
||||||
if( MACOS ) {
|
if( MACOS ) {
|
||||||
@@ -334,7 +335,10 @@ public class Zeichenmaschine extends Constants {
|
|||||||
frame.addWindowListener(new WindowAdapter() {
|
frame.addWindowListener(new WindowAdapter() {
|
||||||
@Override
|
@Override
|
||||||
public void windowClosing( WindowEvent e ) {
|
public void windowClosing( WindowEvent e ) {
|
||||||
exit();
|
//exit();
|
||||||
|
teardown();
|
||||||
|
cleanup();
|
||||||
|
quit(true);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -1033,7 +1037,7 @@ public class Zeichenmaschine extends Constants {
|
|||||||
* @param delta
|
* @param delta
|
||||||
*/
|
*/
|
||||||
public void update( double delta ) {
|
public void update( double delta ) {
|
||||||
//running = !run_once;
|
running = !run_once;
|
||||||
stop_after_update = run_once;
|
stop_after_update = run_once;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1048,7 +1052,7 @@ public class Zeichenmaschine extends Constants {
|
|||||||
* dar, da hier die Zeichnung des Programms erstellt wird.
|
* dar, da hier die Zeichnung des Programms erstellt wird.
|
||||||
*/
|
*/
|
||||||
public void draw() {
|
public void draw() {
|
||||||
running = !stop_after_update;
|
//running = !stop_after_update;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user