forked from External/mage
115 lines
2.8 KiB
Java
115 lines
2.8 KiB
Java
|
|
|
|
/*
|
|
* GamePane.java
|
|
*
|
|
* Created on Dec 17, 2009, 9:34:10 AM
|
|
*/
|
|
package mage.client.game;
|
|
|
|
import java.awt.AWTEvent;
|
|
import java.util.UUID;
|
|
import javax.swing.*;
|
|
|
|
import mage.client.MagePane;
|
|
|
|
/**
|
|
*
|
|
* @author BetaSteward_at_googlemail.com
|
|
*/
|
|
public class GamePane extends MagePane {
|
|
|
|
/**
|
|
* Creates new form GamePane
|
|
*/
|
|
public GamePane() {
|
|
initComponents();
|
|
SwingUtilities.invokeLater(() -> {
|
|
gamePanel.setJLayeredPane(this);
|
|
gamePanel.installComponents();
|
|
});
|
|
|
|
}
|
|
|
|
public void showGame(UUID gameId, UUID playerId) {
|
|
this.setTitle("Game " + gameId);
|
|
this.gameId = gameId;
|
|
gamePanel.showGame(gameId, playerId, this);
|
|
}
|
|
|
|
public void cleanUp() {
|
|
gamePanel.cleanUp();
|
|
}
|
|
|
|
@Override
|
|
public void changeGUISize() {
|
|
super.changeGUISize();
|
|
gamePanel.changeGUISize();
|
|
this.revalidate();
|
|
this.repaint();
|
|
}
|
|
|
|
public void removeGame() {
|
|
this.cleanUp();
|
|
this.removeFrame();
|
|
}
|
|
|
|
public void watchGame(UUID gameId) {
|
|
this.setTitle("Watching " + gameId);
|
|
this.gameId = gameId;
|
|
gamePanel.watchGame(gameId, this);
|
|
}
|
|
|
|
public void replayGame(UUID gameId) {
|
|
this.setTitle("Replaying " + gameId);
|
|
this.gameId = gameId;
|
|
gamePanel.replayGame(gameId);
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
private void initComponents() {
|
|
|
|
jScrollPane1 = new javax.swing.JScrollPane();
|
|
jScrollPane1.setBorder(BorderFactory.createEmptyBorder());
|
|
gamePanel = new mage.client.game.GamePanel();
|
|
|
|
jScrollPane1.setViewportView(gamePanel);
|
|
|
|
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
|
this.setLayout(layout);
|
|
layout.setHorizontalGroup(
|
|
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
|
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 600, Short.MAX_VALUE)
|
|
.addGap(0, 600, Short.MAX_VALUE)
|
|
);
|
|
layout.setVerticalGroup(
|
|
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
|
.addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
|
|
.addGap(0, 400, Short.MAX_VALUE)
|
|
);
|
|
|
|
}
|
|
|
|
public UUID getGameId() {
|
|
return gameId;
|
|
}
|
|
|
|
@Override
|
|
public void deactivated() {
|
|
gamePanel.deactivated();
|
|
}
|
|
|
|
@Override
|
|
public void activated() {
|
|
gamePanel.activated();
|
|
}
|
|
|
|
@Override
|
|
public void handleEvent(AWTEvent event) {
|
|
gamePanel.handleEvent(event);
|
|
}
|
|
|
|
private mage.client.game.GamePanel gamePanel;
|
|
private javax.swing.JScrollPane jScrollPane1;
|
|
private UUID gameId;
|
|
}
|