Remove remaining references to java.awt from forge-gui and forge-gui-mobile

This commit is contained in:
drdev
2014-04-27 22:07:12 +00:00
parent 8858249b69
commit e6efda2716
31 changed files with 134 additions and 93 deletions

View File

@@ -1,9 +1,13 @@
package forge;
import java.awt.Desktop;
import java.awt.Toolkit;
import java.awt.datatransfer.StringSelection;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.io.File;
import java.lang.reflect.InvocationTargetException;
import java.net.URI;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -398,4 +402,15 @@ public class GuiDesktop implements IGuiBase {
fc.showSaveDialog(null);
return fc.getSelectedFile();
}
@Override
public void copyToClipboard(String text) {
StringSelection ss = new StringSelection(text);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
}
@Override
public void browseToUrl(String url) throws Exception {
Desktop.getDesktop().browse(new URI(url));
}
}

View File

@@ -35,6 +35,7 @@ import forge.player.HumanPlay;
import forge.properties.ForgePreferences;
import forge.screens.match.ZoneAction;
import forge.screens.match.views.VField;
import forge.toolbox.MouseTriggerEvent;
import java.awt.event.ActionEvent;
import java.awt.event.MouseAdapter;
@@ -53,9 +54,12 @@ public class CField implements ICDoc {
private final VField view;
private boolean initializedAlready = false;
private final MouseListener madAvatar = new MouseAdapter() { @Override
private final MouseListener madAvatar = new MouseAdapter() {
@Override
public void mousePressed(final MouseEvent e) {
CPrompt.SINGLETON_INSTANCE.getInputControl().selectPlayer(player, e); } };
CPrompt.SINGLETON_INSTANCE.getInputControl().selectPlayer(player, new MouseTriggerEvent(e));
}
};
/**
* Controls Swing components of a player's field instance.

View File

@@ -0,0 +1,19 @@
package forge.toolbox;
import java.awt.event.MouseEvent;
import forge.interfaces.ITriggerEvent;
//MouseEvent wrapper used for passing trigger to input classes
public class MouseTriggerEvent implements ITriggerEvent {
private final MouseEvent event;
public MouseTriggerEvent(MouseEvent event0) {
event = event0;
}
@Override
public int getButton() {
return event.getButton();
}
}

View File

@@ -0,0 +1,33 @@
package forge.util;
import java.awt.*;
import java.util.ArrayList;
public class AwtUtil {
/**
* Find all components of the given type at or under the given component
* @param compType
* @param searchComp
*/
public static <T extends Component> ArrayList<T> findAllComponents(Class<T> compType, Component searchComp) {
ArrayList<T> comps = new ArrayList<T>();
searchForComponents(compType, searchComp, comps);
return comps;
}
@SuppressWarnings("unchecked")
private static <T extends Component> void searchForComponents(Class<T> compType, Component searchComp, ArrayList<T> comps) {
if (compType.isInstance(searchComp)) {
comps.add((T) searchComp);
}
if (searchComp instanceof Container) {
//search child components
for (Component c : ((Container)searchComp).getComponents()) {
searchForComponents(compType, c, comps);
}
}
}
}

View File

@@ -20,6 +20,7 @@ package forge.view.arcane;
import forge.screens.match.CMatchUI;
import forge.screens.match.controllers.CPrompt;
import forge.toolbox.FScrollPane;
import forge.toolbox.MouseTriggerEvent;
import java.awt.event.MouseEvent;
@@ -61,14 +62,14 @@ public class HandArea extends CardArea {
/** {@inheritDoc} */
@Override
public final void mouseLeftClicked(final CardPanel panel, final MouseEvent evt) {
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), evt);
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), new MouseTriggerEvent(evt));
super.mouseLeftClicked(panel, evt);
}
/** {@inheritDoc} */
@Override
public final void mouseRightClicked(final CardPanel panel, final MouseEvent evt) {
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), evt);
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), new MouseTriggerEvent(evt));
super.mouseRightClicked(panel, evt);
}
}

View File

@@ -22,6 +22,7 @@ import forge.game.card.Card;
import forge.screens.match.CMatchUI;
import forge.screens.match.controllers.CPrompt;
import forge.toolbox.FScrollPane;
import forge.toolbox.MouseTriggerEvent;
import forge.view.arcane.util.Animation;
import forge.view.arcane.util.CardPanelMouseListener;
@@ -498,7 +499,7 @@ public class PlayArea extends CardPanelContainer implements CardPanelMouseListen
/** {@inheritDoc} */
@Override
public final void mouseLeftClicked(final CardPanel panel, final MouseEvent evt) {
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), evt);
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), new MouseTriggerEvent(evt));
if ((panel.getTappedAngle() != 0) && (panel.getTappedAngle() != CardPanel.TAPPED_ANGLE)) {
return;
}
@@ -508,7 +509,7 @@ public class PlayArea extends CardPanelContainer implements CardPanelMouseListen
/** {@inheritDoc} */
@Override
public final void mouseRightClicked(final CardPanel panel, final MouseEvent evt) {
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), evt);
CPrompt.SINGLETON_INSTANCE.getInputControl().selectCard(panel.getCard(), new MouseTriggerEvent(evt));
super.mouseRightClicked(panel, evt);
}