[Jrisk-cvs] SF.net SVN: domination-code:[2726] Domination/swingUI/src/net/yura/ domination
Brought to you by:
yuranet
|
From: <yu...@us...> - 2026-02-09 19:36:17
|
Revision: 2726
http://sourceforge.net/p/domination/code/2726
Author: yuranet
Date: 2026-02-09 19:36:15 +0000 (Mon, 09 Feb 2026)
Log Message:
-----------
better dashbaord layout and fix for Q or Esc in MainMenu causing it to stop listening to game events
Modified Paths:
--------------
Domination/swingUI/src/net/yura/domination/guishared/PicturePanel.java
Domination/swingUI/src/net/yura/domination/guishared/RiskUIUtil.java
Domination/swingUI/src/net/yura/domination/ui/flashgui/FlashRiskAdapter.java
Domination/swingUI/src/net/yura/domination/ui/flashgui/MainMenu.java
Modified: Domination/swingUI/src/net/yura/domination/guishared/PicturePanel.java
===================================================================
--- Domination/swingUI/src/net/yura/domination/guishared/PicturePanel.java 2026-02-07 16:07:20 UTC (rev 2725)
+++ Domination/swingUI/src/net/yura/domination/guishared/PicturePanel.java 2026-02-09 19:36:15 UTC (rev 2726)
@@ -237,24 +237,21 @@
*/
public void paintComponent(Graphics g) {
super.paintComponent(g);
+ //System.out.print("#################################################### Repainted\n");
try {
- g.setFont(getFont());
- RiskUIUtil.drawDashboard(g, myrisk.getGame());
+ if (img != null) {
+ double s = getScale();
+ //System.out.println("scale: "+s);
+ int drawImageX = getDrawImageX(s);
- if (img != null) {
+ // draw the dashbard
+ g.setFont(getFont());
+ RiskUIUtil.drawDashboard(g, myrisk.getGame(), drawImageX > 0);
- //System.out.print("#################################################### Repainted\n");
-
- //super.paintComponent(g);
-
Graphics2D g2 = (Graphics2D)g;
- double s = getScale();
-
- //System.out.println("scale: "+s);
-
- g2.translate(getDrawImageX(s),getDrawImageY(s));
+ g2.translate(drawImageX, getDrawImageY(s));
g2.scale(s,s);
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
Modified: Domination/swingUI/src/net/yura/domination/guishared/RiskUIUtil.java
===================================================================
--- Domination/swingUI/src/net/yura/domination/guishared/RiskUIUtil.java 2026-02-07 16:07:20 UTC (rev 2725)
+++ Domination/swingUI/src/net/yura/domination/guishared/RiskUIUtil.java 2026-02-09 19:36:15 UTC (rev 2726)
@@ -1630,7 +1630,7 @@
/**
* @see net.yura.domination.mobile.flashgui.GameWindow
*/
- public static void drawDashboard(Graphics g, RiskGame game) {
+ public static void drawDashboard(Graphics g, RiskGame game, boolean wrap) {
FontMetrics font = g.getFontMetrics();
List<Player> players = game.getPlayers();
@@ -1637,7 +1637,7 @@
Player current = game.getCurrentPlayer();
final int lineHeight = font.getHeight();
- int y = lineHeight;
+ int y = (wrap ? lineHeight * 2 : lineHeight);
int xPadding = font.stringWidth(" ");
String[][] data = RiskUtil.getDashboardText(game);
@@ -1652,17 +1652,17 @@
// Draw each row
for (int row = 0; row < data.length; row++) {
- int x = font.getHeight();
+ int x = wrap ? lineHeight : lineHeight * 2;
Player p = players.get(row);
if (p == current) {
g.setColor(Color.WHITE);
String arrow = "\u25ba";
- g.drawString(arrow, lineHeight - font.stringWidth(arrow), y);
+ g.drawString(arrow, x - font.stringWidth(arrow), y);
}
g.setColor(new Color(p.getColor()));
for (int col = 0; col < data[row].length; col++) {
g.drawString(data[row][col], x, y);
- if (col == 0) {
+ if (wrap && col == 0) {
x += lineHeight + font.stringWidth(" "); // player emoji width + space
y += lineHeight;
}
@@ -1670,7 +1670,7 @@
x += colWidths[col] + xPadding;
}
}
- y += lineHeight + xPadding;
+ y += lineHeight + (wrap ? xPadding : xPadding / 2);
}
}
}
Modified: Domination/swingUI/src/net/yura/domination/ui/flashgui/FlashRiskAdapter.java
===================================================================
--- Domination/swingUI/src/net/yura/domination/ui/flashgui/FlashRiskAdapter.java 2026-02-07 16:07:20 UTC (rev 2725)
+++ Domination/swingUI/src/net/yura/domination/ui/flashgui/FlashRiskAdapter.java 2026-02-09 19:36:15 UTC (rev 2726)
@@ -13,7 +13,6 @@
import javax.swing.SwingUtilities;
import net.yura.domination.engine.Risk;
import net.yura.domination.engine.RiskListener;
-import net.yura.domination.engine.RiskSettings;
import net.yura.domination.guishared.RiskUIUtil;
import net.yura.domination.engine.core.Country;
import net.yura.domination.engine.core.RiskGame;
Modified: Domination/swingUI/src/net/yura/domination/ui/flashgui/MainMenu.java
===================================================================
--- Domination/swingUI/src/net/yura/domination/ui/flashgui/MainMenu.java 2026-02-07 16:07:20 UTC (rev 2725)
+++ Domination/swingUI/src/net/yura/domination/ui/flashgui/MainMenu.java 2026-02-09 19:36:15 UTC (rev 2726)
@@ -16,6 +16,7 @@
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
+import java.awt.event.WindowEvent;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.prefs.Preferences;
@@ -414,7 +415,9 @@
break;
}
case MainMenu.BUTTON_EXIT: {
- exit();
+ // do the same thing as if the user clicked on [X] in the window
+ // what that action will be will depend on if this is run directly or from SwingGUI
+ window.dispatchEvent(new WindowEvent(window, WindowEvent.WINDOW_CLOSING));
break;
}
case MainMenu.BUTTON_DONATE: {
@@ -605,22 +608,6 @@
public void keyPressed( KeyEvent event ) {}
public void keyTyped( KeyEvent event ) {}
- private void exit() {
-
- //Frame frame = RiskUtil.findParentFrame(this);
- //
- //if ( frame instanceof JFrame && ((JFrame)frame).getDefaultCloseOperation() == JFrame.EXIT_ON_CLOSE && RiskUtil.checkForNoSandbox()) {
- //
- // // not actually needed as it will auto be done
- // System.exit(0);
- //}
-
- myrisk.deleteRiskListener(fra);
-
- //frame.setVisible(false);
- //frame.dispose();
- }
-
public void hide() {
window.setVisible(false);
}
@@ -711,7 +698,7 @@
RiskUIUtil.checkForUpdates(risk);
}
- public static MainMenu newMainMenuFrame(Risk risk, int defaultCloseOperation) {
+ public static MainMenu newMainMenuFrame(final Risk risk, int defaultCloseOperation) {
JFrame gui = new JFrame();
@@ -721,8 +708,8 @@
gui.setDefaultCloseOperation(defaultCloseOperation);
gui.addWindowListener(new java.awt.event.WindowAdapter() {
- public void windowClosing(java.awt.event.WindowEvent evt) {
- mm.exit();
+ public void windowClosing(java.awt.event.WindowEvent evt) {
+ risk.deleteRiskListener(mm.fra);
}
});
|