mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 18:28:00 +00:00
Refactor event handling system to be much faster and more reliable
This commit is contained in:
@@ -21,6 +21,7 @@ import com.google.common.base.Function;
|
||||
|
||||
import forge.assets.FSkinProp;
|
||||
import forge.assets.ISkinImage;
|
||||
import forge.control.GuiTimer;
|
||||
import forge.deck.CardPool;
|
||||
import forge.error.BugReportDialog;
|
||||
import forge.game.GameObject;
|
||||
@@ -30,6 +31,7 @@ import forge.gui.CardListViewer;
|
||||
import forge.gui.GuiChoose;
|
||||
import forge.gui.framework.FScreen;
|
||||
import forge.interfaces.IGuiBase;
|
||||
import forge.interfaces.IGuiTimer;
|
||||
import forge.item.PaperCard;
|
||||
import forge.model.FModel;
|
||||
import forge.screens.deckeditor.CDeckEditorUI;
|
||||
@@ -93,6 +95,11 @@ public class GuiDesktop implements IGuiBase {
|
||||
return SwingUtilities.isEventDispatchThread();
|
||||
}
|
||||
|
||||
@Override
|
||||
public IGuiTimer createGuiTimer(Runnable proc, int interval) {
|
||||
return new GuiTimer(proc, interval);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ISkinImage getSkinIcon(FSkinProp skinProp) {
|
||||
if (skinProp == null) { return null; }
|
||||
|
||||
25
forge-gui-desktop/src/main/java/forge/control/GuiTimer.java
Normal file
25
forge-gui-desktop/src/main/java/forge/control/GuiTimer.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package forge.control;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
import javax.swing.Timer;
|
||||
|
||||
import forge.interfaces.IGuiTimer;
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
public class GuiTimer extends Timer implements IGuiTimer {
|
||||
public GuiTimer(final Runnable proc0, int interval0) {
|
||||
super(interval0, new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
proc0.run();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setInterval(int interval0) {
|
||||
setDelay(interval0);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user