diff --git a/Mage.Client/src/main/java/mage/client/MageFrame.form b/Mage.Client/src/main/java/mage/client/MageFrame.form
index e09247ea97b..189853af519 100644
--- a/Mage.Client/src/main/java/mage/client/MageFrame.form
+++ b/Mage.Client/src/main/java/mage/client/MageFrame.form
@@ -82,7 +82,7 @@
-
+
@@ -107,14 +107,6 @@
-
-
-
-
-
-
-
-
@@ -174,7 +166,7 @@
-
+
diff --git a/Mage.Client/src/main/java/mage/client/MageFrame.java b/Mage.Client/src/main/java/mage/client/MageFrame.java
index a15e4ba4f8f..d8c427933b2 100644
--- a/Mage.Client/src/main/java/mage/client/MageFrame.java
+++ b/Mage.Client/src/main/java/mage/client/MageFrame.java
@@ -105,6 +105,7 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
private static final String GRAY_MODE_ARG = "-gray";
private static final String FILL_SCREEN_ARG = "-fullscreen";
+ private static final String NOT_CONNECTED_TEXT = "";
private static MageFrame instance;
private final ConnectDialog connectDialog;
@@ -300,7 +301,7 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
}
setGUISize();
-
+ setConnectButtonText(NOT_CONNECTED_TEXT);
SwingUtilities.invokeLater(() -> {
disableButtons();
if (PreferencesDialog.getCachedValue(PreferencesDialog.KEY_CARD_IMAGES_CHECK, "false").equals("true")) {
@@ -329,7 +330,7 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
private void setWindowTitle() {
setTitle(TITLE_NAME + " Client: "
+ (VERSION == null ? "" : VERSION.toString()) + " Server: "
- + ((SessionHandler.getSession() != null && SessionHandler.isConnected()) ? SessionHandler.getVersionInfo() : ""));
+ + ((SessionHandler.getSession() != null && SessionHandler.isConnected()) ? SessionHandler.getVersionInfo() : NOT_CONNECTED_TEXT));
}
private void addTooltipContainer() {
@@ -431,13 +432,13 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
}
}
- public static boolean isChrismasTime(Date currentTime){
+ public static boolean isChrismasTime(Date currentTime) {
// from december 15 to january 15
Calendar cal = new GregorianCalendar();
cal.setTime(currentTime);
- int currentYear = cal.get(Calendar.YEAR);
- if (cal.get(Calendar.MONTH) == Calendar.JANUARY){
+ int currentYear = cal.get(Calendar.YEAR);
+ if (cal.get(Calendar.MONTH) == Calendar.JANUARY) {
currentYear = currentYear - 1;
}
@@ -455,12 +456,12 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
String filename;
float ratio;
- if (isChrismasTime(Calendar.getInstance().getTime())){
+ if (isChrismasTime(Calendar.getInstance().getTime())) {
// chrismass logo
LOGGER.info("Yo Ho Ho, Merry Christmas and a Happy New Year");
filename = "/label-xmage-christmas.png";
ratio = 539.0f / 318.0f;
- }else{
+ } else {
// standard logo
filename = "/label-xmage.png";
ratio = 509.0f / 288.0f;
@@ -797,7 +798,6 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnPreferences = new javax.swing.JButton();
jSeparator4 = new javax.swing.JToolBar.Separator();
btnConnect = new javax.swing.JButton();
- lblStatus = new javax.swing.JLabel();
jSeparator1 = new javax.swing.JToolBar.Separator();
btnDeckEditor = new javax.swing.JButton();
jSeparator2 = new javax.swing.JToolBar.Separator();
@@ -827,11 +827,15 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnPreferences.setIcon(new javax.swing.ImageIcon(getClass().getResource("/menu/preferences.png"))); // NOI18N
btnPreferences.setText("Preferences");
- btnPreferences.setToolTipText("Change the settings for the different areas of XMage.");
+ btnPreferences.setToolTipText("By changing the settings in the preferences window you can adjust the look and behaviour of xmage.");
btnPreferences.setFocusable(false);
btnPreferences.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnPreferences.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnPreferences.addActionListener(evt -> btnPreferencesActionPerformed(evt));
+ btnPreferences.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnPreferencesActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnPreferences);
mageToolbar.add(jSeparator4);
@@ -840,14 +844,12 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnConnect.setFocusable(false);
btnConnect.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnConnect.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnConnect.addActionListener(evt -> btnConnectActionPerformed(evt));
+ btnConnect.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnConnectActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnConnect);
-
- lblStatus.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
- lblStatus.setText("Not connected");
- lblStatus.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
- lblStatus.setInheritsPopupMenu(false);
- mageToolbar.add(lblStatus);
mageToolbar.add(jSeparator1);
btnDeckEditor.setIcon(new javax.swing.ImageIcon(getClass().getResource("/menu/deck_editor.png"))); // NOI18N
@@ -856,7 +858,11 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnDeckEditor.setFocusable(false);
btnDeckEditor.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnDeckEditor.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnDeckEditor.addActionListener(evt -> btnDeckEditorActionPerformed(evt));
+ btnDeckEditor.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnDeckEditorActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnDeckEditor);
mageToolbar.add(jSeparator2);
@@ -866,7 +872,11 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnCollectionViewer.setFocusable(false);
btnCollectionViewer.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnCollectionViewer.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnCollectionViewer.addActionListener(evt -> btnCollectionViewerActionPerformed(evt));
+ btnCollectionViewer.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnCollectionViewerActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnCollectionViewer);
mageToolbar.add(jSeparator5);
@@ -876,17 +886,25 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnSendFeedback.setFocusable(false);
btnSendFeedback.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnSendFeedback.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnSendFeedback.addActionListener(evt -> btnSendFeedbackActionPerformed(evt));
+ btnSendFeedback.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnSendFeedbackActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnSendFeedback);
mageToolbar.add(jSeparator6);
btnSymbols.setIcon(new javax.swing.ImageIcon(getClass().getResource("/menu/symbol.png"))); // NOI18N
btnSymbols.setText("Symbols");
- btnSymbols.setToolTipText("Load symbols from the internet.
\nYou need to do that only once.");
+ btnSymbols.setToolTipText("Load the mana and other card symbols from the internet.
\nOtherwise you only see the replacement sequence like {U} for blue mana symbol.
\nYou need to do that only once.");
btnSymbols.setFocusable(false);
btnSymbols.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnSymbols.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnSymbols.addActionListener(evt -> btnSymbolsActionPerformed(evt));
+ btnSymbols.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnSymbolsActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnSymbols);
mageToolbar.add(jSeparatorSymbols);
@@ -896,7 +914,11 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnImages.setFocusable(false);
btnImages.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnImages.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnImages.addActionListener(evt -> btnImagesActionPerformed(evt));
+ btnImages.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnImagesActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnImages);
mageToolbar.add(jSeparatorImages);
@@ -906,7 +928,11 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
btnAbout.setFocusable(false);
btnAbout.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);
btnAbout.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
- btnAbout.addActionListener(evt -> btnAboutActionPerformed(evt));
+ btnAbout.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ btnAboutActionPerformed(evt);
+ }
+ });
mageToolbar.add(btnAbout);
mageToolbar.add(jSeparator7);
@@ -1201,20 +1227,18 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
private javax.swing.JToolBar.Separator jSeparator7;
private javax.swing.JToolBar.Separator jSeparatorImages;
private javax.swing.JToolBar.Separator jSeparatorSymbols;
- private javax.swing.JLabel lblStatus;
private javax.swing.JToolBar mageToolbar;
// End of variables declaration//GEN-END:variables
private static final long serialVersionUID = -9104885239063142218L;
private ImagePanel backgroundPane;
private final TablesPane tablesPane;
-// private CollectionViewerPane collectionViewerPane;
- public void setStatusText(String status) {
- this.lblStatus.setText(status);
+ public void setConnectButtonText(String status) {
+ this.btnConnect.setText(status);
changeGUISize(); // Needed to layout the tooltbar after text length change
- this.lblStatus.repaint();
- this.lblStatus.revalidate();
+ this.btnConnect.repaint();
+ this.btnConnect.revalidate();
}
public static MageUI getUI() {
@@ -1272,11 +1296,11 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
@Override
public void connected(final String message) {
if (SwingUtilities.isEventDispatchThread()) {
- setStatusText(message);
+ setConnectButtonText(message);
enableButtons();
} else {
SwingUtilities.invokeLater(() -> {
- setStatusText(message);
+ setConnectButtonText(message);
enableButtons();
});
}
@@ -1286,14 +1310,14 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
public void disconnected(final boolean errorCall) {
if (SwingUtilities.isEventDispatchThread()) { // Returns true if the current thread is an AWT event dispatching thread.
LOGGER.info("DISCONNECTED (Event Dispatch Thread)");
- setStatusText("Not connected");
+ setConnectButtonText(NOT_CONNECTED_TEXT);
disableButtons();
hideGames();
hideTables();
} else {
LOGGER.info("DISCONNECTED (NO Event Dispatch Thread)");
SwingUtilities.invokeLater(() -> {
- setStatusText("Not connected");
+ setConnectButtonText(NOT_CONNECTED_TEXT);
disableButtons();
hideGames();
hideTables();
diff --git a/Mage.Client/src/main/java/mage/client/MagePane.java b/Mage.Client/src/main/java/mage/client/MagePane.java
index 6ba8b902041..63c7bc78cc6 100644
--- a/Mage.Client/src/main/java/mage/client/MagePane.java
+++ b/Mage.Client/src/main/java/mage/client/MagePane.java
@@ -35,15 +35,13 @@ package mage.client;
import java.awt.AWTEvent;
import java.awt.KeyboardFocusManager;
-import java.beans.PropertyVetoException;
-import javax.swing.*;
-import javax.swing.plaf.basic.BasicInternalFrameUI;
/**
*
* @author BetaSteward_at_googlemail.com
*/
public abstract class MagePane extends javax.swing.JLayeredPane {
+
private String title = "no title set";
/**