From 86822b655bb6a5f49154ee0a5c5ca12d27b801b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrik=20Karlstr=C3=B6m?= Date: Tue, 3 Dec 2024 19:18:03 +0100 Subject: [PATCH] Fix this and that --- main/pom.xml | 2 -- main/src/main/java/se/trixon/yaya/Options.java | 8 ++++---- .../main/java/se/trixon/yaya/OptionsPanel.form | 11 ++++++++--- .../main/java/se/trixon/yaya/OptionsPanel.java | 16 +++++++++++++--- .../main/java/se/trixon/yaya/PopupManager.java | 5 +---- .../trixon/yaya/actions/RootNewRoundAction.java | 2 +- .../trixon/yaya/actions/RootOptionsAction.java | 2 +- .../yaya/actions/ScorecardIndicatorAction.java | 2 +- .../trixon/yaya/actions/ScorecardLimAction.java | 2 +- .../trixon/yaya/actions/ScorecardMaxAction.java | 2 +- .../yaya/actions/SystemFullScreenAction.java | 2 +- .../yaya/actions/SystemPlaySoundAction.java | 13 ++++++++++++- .../yaya/actions/SystemRemovePlayerAction.java | 2 -- .../main/java/se/trixon/yaya/boot/DoOnStart.java | 1 - .../java/se/trixon/yaya/scorecard/ScoreCard.java | 2 ++ .../resources/se/trixon/yaya/Bundle.properties | 4 ++-- .../se/trixon/yaya/Bundle_sv_SE.properties | 4 ++++ .../resources/se/trixon/yaya/about.properties | 2 +- .../trixon/yaya/actions/Bundle_sv_SE.properties | 3 ++- 19 files changed, 55 insertions(+), 30 deletions(-) diff --git a/main/pom.xml b/main/pom.xml index d5fe9b5..854601a 100644 --- a/main/pom.xml +++ b/main/pom.xml @@ -38,7 +38,6 @@ org.netbeans.api org-openide-util - ${netbeans.version} org.netbeans.api @@ -63,7 +62,6 @@ org.netbeans.api org-openide-awt - ${netbeans.version} org.netbeans.api diff --git a/main/src/main/java/se/trixon/yaya/Options.java b/main/src/main/java/se/trixon/yaya/Options.java index 0c7bc9e..ca6f7b1 100644 --- a/main/src/main/java/se/trixon/yaya/Options.java +++ b/main/src/main/java/se/trixon/yaya/Options.java @@ -32,6 +32,9 @@ public class Options extends OptionsBase { public static final String DEFAULT_PLAYERS_ALL = "Ask;Embla"; public static final boolean DEFAULT_PLAY_SOUND = true; public static final String DEFAULT_RULE_ID = "se.trixon.yaya.rules.yaya_scandinavian"; + public static final boolean DEFAULT_SHOW_INDICATORS = true; + public static final boolean DEFAULT_SHOW_LIM_COLUMN = false; + public static final boolean DEFAULT_SHOW_MAX_COLUMN = false; public static final String KEY_FONT_SIZE = "font.size"; public static final String KEY_GAME_START_COUNTER = "game.start_counter"; public static final String KEY_NUM_OF_PLAYERS = "numOfPlayers"; @@ -44,13 +47,10 @@ public class Options extends OptionsBase { public static final String KEY_SHOW_LIM_COLUMN = "showLimColumn"; public static final String KEY_SHOW_MAX_COLUMN = "showMaxColumn"; public static final String KEY_THEME = "theme"; - private static final int DEFAULT_FONT_SIZE = 12; + private static final int DEFAULT_FONT_SIZE = 24; private static final String DEFAULT_GAME_VARIANT = "standard"; private static final int DEFAULT_NUM_OF_PLAYERS = 2; private static final boolean DEFAULT_REVERSE_DIRECTION = false; - private static final boolean DEFAULT_SHOW_INDICATORS = true; - private static final boolean DEFAULT_SHOW_LIM_COLUMN = false; - private static final boolean DEFAULT_SHOW_MAX_COLUMN = false; private static final String DEFAULT_THEME = "default"; private Player[] mPlayers; diff --git a/main/src/main/java/se/trixon/yaya/OptionsPanel.form b/main/src/main/java/se/trixon/yaya/OptionsPanel.form index 38e29e8..bc730db 100644 --- a/main/src/main/java/se/trixon/yaya/OptionsPanel.form +++ b/main/src/main/java/se/trixon/yaya/OptionsPanel.form @@ -189,9 +189,10 @@ - + - + + @@ -204,7 +205,9 @@ - + + + @@ -230,6 +233,8 @@ + + diff --git a/main/src/main/java/se/trixon/yaya/OptionsPanel.java b/main/src/main/java/se/trixon/yaya/OptionsPanel.java index 87147f1..f596aeb 100644 --- a/main/src/main/java/se/trixon/yaya/OptionsPanel.java +++ b/main/src/main/java/se/trixon/yaya/OptionsPanel.java @@ -15,7 +15,9 @@ */ package se.trixon.yaya; +import javax.swing.Action; import javax.swing.DefaultComboBoxModel; +import org.openide.awt.Actions; import se.trixon.almond.util.Dict; import se.trixon.almond.util.swing.DelayedResetRunner; import se.trixon.yaya.themes.Theme; @@ -41,6 +43,9 @@ public OptionsPanel() { initComponents(); initListeners(); loadOptions(); + var a = Actions.forID("Game", "se.trixon.yaya.actions.RemovePlayerAction"); + Actions.connect(removeButton, a); + removeButton.setText((String) a.getValue(Action.NAME)); } private void initListeners() { @@ -81,6 +86,7 @@ private void initComponents() { systemPanel = new javax.swing.JPanel(); soundCheckBox = new javax.swing.JCheckBox(); reverseScrollCheckBox = new javax.swing.JCheckBox(); + removeButton = new javax.swing.JButton(); scorecardPanel.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle.getMessage(OptionsPanel.class, "OptionsPanel.scorecardPanel.border.title"))); // NOI18N @@ -190,9 +196,10 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { systemPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(systemPanelLayout.createSequentialGroup() .addContainerGap() - .addGroup(systemPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(systemPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(soundCheckBox) - .addComponent(reverseScrollCheckBox)) + .addComponent(reverseScrollCheckBox, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(removeButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); systemPanelLayout.setVerticalGroup( @@ -202,7 +209,9 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { .addComponent(soundCheckBox) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(reverseScrollCheckBox) - .addContainerGap()) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(removeButton) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); @@ -259,6 +268,7 @@ private void soundCheckBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN private javax.swing.JCheckBox indicatorCheckBox; private javax.swing.JCheckBox limCheckBox; private javax.swing.JCheckBox maxCheckBox; + private javax.swing.JButton removeButton; private javax.swing.JCheckBox reverseScrollCheckBox; private javax.swing.JPanel scorecardPanel; private javax.swing.JLabel sizeLabel; diff --git a/main/src/main/java/se/trixon/yaya/PopupManager.java b/main/src/main/java/se/trixon/yaya/PopupManager.java index 9b113a0..d20480f 100644 --- a/main/src/main/java/se/trixon/yaya/PopupManager.java +++ b/main/src/main/java/se/trixon/yaya/PopupManager.java @@ -63,13 +63,11 @@ private void initMenu() { var newMenuItem = new JMenuItem(); var fullscreenMenuItem = new JMenuItem(); var optionsMenuItem = new JMenuItem(); - var removePlayerMenuItem = new JMenuItem(); var helpMenuItem = new JMenuItem(); var aboutMenuItem = new JMenuItem(); var quitMenuItem = new JMenuItem(); Actions.connect(newMenuItem, Actions.forID("Game", "se.trixon.yaya.actions.NewRoundAction"), false); - Actions.connect(removePlayerMenuItem, Actions.forID("Game", "se.trixon.yaya.actions.RemovePlayerAction"), false); Actions.connect(optionsMenuItem, Actions.forID("Game", "se.trixon.yaya.actions.OptionsAction"), false); Actions.connect(fullscreenMenuItem, Actions.forID("Help", "se.trixon.yaya.actions.FullScreenAction"), false); Actions.connect(helpMenuItem, Actions.forID("Help", "se.trixon.yaya.actions.HelpAction"), false); @@ -77,10 +75,9 @@ private void initMenu() { Actions.connect(quitMenuItem, Actions.forID("File", "se.trixon.almond.nbp.actions.QuitAction"), false); mPopupMenu.add(newMenuItem); - mPopupMenu.add(fullscreenMenuItem); mPopupMenu.add(new JPopupMenu.Separator()); mPopupMenu.add(optionsMenuItem); - mPopupMenu.add(removePlayerMenuItem); + mPopupMenu.add(fullscreenMenuItem); mPopupMenu.add(new JPopupMenu.Separator()); mPopupMenu.add(helpMenuItem); mPopupMenu.add(aboutMenuItem); diff --git a/main/src/main/java/se/trixon/yaya/actions/RootNewRoundAction.java b/main/src/main/java/se/trixon/yaya/actions/RootNewRoundAction.java index 1c970da..5b991c0 100644 --- a/main/src/main/java/se/trixon/yaya/actions/RootNewRoundAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/RootNewRoundAction.java @@ -33,7 +33,7 @@ @ActionRegistration( displayName = "#CTL_NewRoundAction" ) -@ActionReference(path = "Shortcuts", name = "N") +@ActionReference(path = "Shortcuts", name = "F2") @Messages("CTL_NewRoundAction=New round") public final class RootNewRoundAction extends BaseAction { diff --git a/main/src/main/java/se/trixon/yaya/actions/RootOptionsAction.java b/main/src/main/java/se/trixon/yaya/actions/RootOptionsAction.java index 300a6c2..e7be02d 100644 --- a/main/src/main/java/se/trixon/yaya/actions/RootOptionsAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/RootOptionsAction.java @@ -38,7 +38,7 @@ @ActionRegistration( displayName = "#CTL_OptionsAction" ) -@ActionReference(path = "Shortcuts", name = "O") +@ActionReference(path = "Shortcuts", name = "F3") @NbBundle.Messages("CTL_OptionsAction=Options") public final class RootOptionsAction extends BaseAction { diff --git a/main/src/main/java/se/trixon/yaya/actions/ScorecardIndicatorAction.java b/main/src/main/java/se/trixon/yaya/actions/ScorecardIndicatorAction.java index de5329c..d6278b9 100644 --- a/main/src/main/java/se/trixon/yaya/actions/ScorecardIndicatorAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/ScorecardIndicatorAction.java @@ -37,6 +37,6 @@ public class ScorecardIndicatorAction extends BaseAction { @Override public void actionPerformed(ActionEvent e) { - mOptions.invert(Options.KEY_SHOW_INDICATORS); + mOptions.invert(Options.KEY_SHOW_INDICATORS, Options.DEFAULT_SHOW_INDICATORS); } } diff --git a/main/src/main/java/se/trixon/yaya/actions/ScorecardLimAction.java b/main/src/main/java/se/trixon/yaya/actions/ScorecardLimAction.java index adc36b8..71472a3 100644 --- a/main/src/main/java/se/trixon/yaya/actions/ScorecardLimAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/ScorecardLimAction.java @@ -37,6 +37,6 @@ public class ScorecardLimAction extends BaseAction { @Override public void actionPerformed(ActionEvent e) { - mOptions.invert(Options.KEY_SHOW_LIM_COLUMN); + mOptions.invert(Options.KEY_SHOW_LIM_COLUMN, Options.DEFAULT_SHOW_LIM_COLUMN); } } diff --git a/main/src/main/java/se/trixon/yaya/actions/ScorecardMaxAction.java b/main/src/main/java/se/trixon/yaya/actions/ScorecardMaxAction.java index 8f20456..71a83c6 100644 --- a/main/src/main/java/se/trixon/yaya/actions/ScorecardMaxAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/ScorecardMaxAction.java @@ -37,6 +37,6 @@ public class ScorecardMaxAction extends BaseAction { @Override public void actionPerformed(ActionEvent e) { - mOptions.invert(Options.KEY_SHOW_MAX_COLUMN); + mOptions.invert(Options.KEY_SHOW_MAX_COLUMN, Options.DEFAULT_SHOW_MAX_COLUMN); } } diff --git a/main/src/main/java/se/trixon/yaya/actions/SystemFullScreenAction.java b/main/src/main/java/se/trixon/yaya/actions/SystemFullScreenAction.java index b44a7a0..0c3995b 100644 --- a/main/src/main/java/se/trixon/yaya/actions/SystemFullScreenAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/SystemFullScreenAction.java @@ -32,7 +32,7 @@ id = "se.trixon.yaya.actions.FullScreenAction" ) @ActionRegistration(displayName = "#CTL_FullScreenAction") -@ActionReference(path = "Shortcuts", name = "F") +@ActionReference(path = "Shortcuts", name = "F11") @NbBundle.Messages("CTL_FullScreenAction=Full screen") public class SystemFullScreenAction extends BaseAction { diff --git a/main/src/main/java/se/trixon/yaya/actions/SystemPlaySoundAction.java b/main/src/main/java/se/trixon/yaya/actions/SystemPlaySoundAction.java index f44d57d..67df650 100644 --- a/main/src/main/java/se/trixon/yaya/actions/SystemPlaySoundAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/SystemPlaySoundAction.java @@ -16,16 +16,27 @@ package se.trixon.yaya.actions; import java.awt.event.ActionEvent; +import org.openide.awt.ActionID; +import org.openide.awt.ActionReference; +import org.openide.awt.ActionRegistration; +import org.openide.util.NbBundle; import se.trixon.yaya.Options; /** * * @author Patrik Karlström */ +@ActionID( + category = "Game", + id = "se.trixon.yaya.actions.PlaySoundAction" +) +@ActionRegistration(displayName = "#CTL_PlaySoundAction") +@ActionReference(path = "Shortcuts", name = "F4") +@NbBundle.Messages("CTL_PlaySoundAction=Play sound") public class SystemPlaySoundAction extends BaseAction { @Override public void actionPerformed(ActionEvent e) { - mOptions.invert(Options.KEY_PLAY_SOUND); + mOptions.invert(Options.KEY_PLAY_SOUND, Options.DEFAULT_PLAY_SOUND); } } diff --git a/main/src/main/java/se/trixon/yaya/actions/SystemRemovePlayerAction.java b/main/src/main/java/se/trixon/yaya/actions/SystemRemovePlayerAction.java index 7018501..abc86f6 100644 --- a/main/src/main/java/se/trixon/yaya/actions/SystemRemovePlayerAction.java +++ b/main/src/main/java/se/trixon/yaya/actions/SystemRemovePlayerAction.java @@ -23,7 +23,6 @@ import org.openide.DialogDisplayer; import org.openide.NotifyDescriptor; import org.openide.awt.ActionID; -import org.openide.awt.ActionReference; import org.openide.awt.ActionRegistration; import org.openide.util.NbBundle; import se.trixon.yaya.Options; @@ -37,7 +36,6 @@ id = "se.trixon.yaya.actions.RemovePlayerAction" ) @ActionRegistration(displayName = "#CTL_RemovePlayerAction") -@ActionReference(path = "Shortcuts", name = "DELETE") @NbBundle.Messages("CTL_RemovePlayerAction=Remove player") public final class SystemRemovePlayerAction extends BaseAction { diff --git a/main/src/main/java/se/trixon/yaya/boot/DoOnStart.java b/main/src/main/java/se/trixon/yaya/boot/DoOnStart.java index abdaba0..02b2678 100644 --- a/main/src/main/java/se/trixon/yaya/boot/DoOnStart.java +++ b/main/src/main/java/se/trixon/yaya/boot/DoOnStart.java @@ -134,5 +134,4 @@ public void run() { contentPane.add(Yaya.getInstance().getPanel()); }); } - } diff --git a/main/src/main/java/se/trixon/yaya/scorecard/ScoreCard.java b/main/src/main/java/se/trixon/yaya/scorecard/ScoreCard.java index eba3ef5..9646b33 100644 --- a/main/src/main/java/se/trixon/yaya/scorecard/ScoreCard.java +++ b/main/src/main/java/se/trixon/yaya/scorecard/ScoreCard.java @@ -150,6 +150,8 @@ public void setEnabledUndo(boolean enabled) { public void setVisibleIndicators(boolean visible) { mShowIndicators = visible; getActivePlayerColumn().setVisibleIndicators(visible); + mScoreCardPanel.repaint(); + mScoreCardPanel.revalidate(); } public void undo() { diff --git a/main/src/main/resources/se/trixon/yaya/Bundle.properties b/main/src/main/resources/se/trixon/yaya/Bundle.properties index 5ab43b8..1b4d175 100644 --- a/main/src/main/resources/se/trixon/yaya/Bundle.properties +++ b/main/src/main/resources/se/trixon/yaya/Bundle.properties @@ -10,10 +10,10 @@ confirmQuitMessage=Cancel this round and quit Yaya... confirmQuitTitle=Quit Yaya? OptionsPanel.scorecardPanel.border.title=Scorecard OptionsPanel.limCheckBox.text=Lim -OptionsPanel.indicatorCheckBox.text=Indicator +OptionsPanel.indicatorCheckBox.text=Indicators OptionsPanel.maxCheckBox.text=Max OptionsPanel.reverseScrollCheckBox.text=Reversed scroll direction -OptionsPanel.soundCheckBox.text=Sound +OptionsPanel.soundCheckBox.text=Play sound OptionsPanel.limCheckBox.toolTipText=F5 OptionsPanel.maxCheckBox.toolTipText=F6 OptionsPanel.indicatorCheckBox.toolTipText=F7 diff --git a/main/src/main/resources/se/trixon/yaya/Bundle_sv_SE.properties b/main/src/main/resources/se/trixon/yaya/Bundle_sv_SE.properties index c55a38a..d9d0261 100644 --- a/main/src/main/resources/se/trixon/yaya/Bundle_sv_SE.properties +++ b/main/src/main/resources/se/trixon/yaya/Bundle_sv_SE.properties @@ -6,3 +6,7 @@ confirmQuitTitle=Avsluta Yaya? confirmQuitMessage=Avbryt denna omg\u00e5ng och avsluta Yaya... diceRreversedDirection=Omv\u00e4nd rullningsriktning scorecardIndicators=Indikatorer +OptionsPanel.scorecardPanel.border.title=Protokoll +OptionsPanel.indicatorCheckBox.text=Indikatorer +OptionsPanel.reverseScrollCheckBox.text=Omv\u00e4nd rullningsrikting +OptionsPanel.soundCheckBox.text=Spela ljud diff --git a/main/src/main/resources/se/trixon/yaya/about.properties b/main/src/main/resources/se/trixon/yaya/about.properties index b2c9a3d..153f664 100644 --- a/main/src/main/resources/se/trixon/yaya/about.properties +++ b/main/src/main/resources/se/trixon/yaya/about.properties @@ -22,4 +22,4 @@ app.name=Yaya app.description=Yet Another Yahtzee-esque Application authors=Patrik Karlstr\u00f6m thanksTo=Magnus Myhrberg;Kulturelle Anton Fagerlund;Freddie Juza -libraries=Apache Commons (IO, Lang3, Text);Google Gson;Apache NetBeans Platform;j2html +libraries=Apache Commons (Lang3);Google Gson;Apache NetBeans Platform;j2html diff --git a/main/src/main/resources/se/trixon/yaya/actions/Bundle_sv_SE.properties b/main/src/main/resources/se/trixon/yaya/actions/Bundle_sv_SE.properties index 3f8d049..18128dc 100644 --- a/main/src/main/resources/se/trixon/yaya/actions/Bundle_sv_SE.properties +++ b/main/src/main/resources/se/trixon/yaya/actions/Bundle_sv_SE.properties @@ -6,10 +6,11 @@ max=Max lim=Lim colors=F\u00e4rger scorecard=Protokoll -fullscreen=Helsk\u00e4rm +CTL_FullScreenAction=Helsk\u00e4rm reverseDiceDirection=Omv\u00e4nd rullningsriktning dice=T\u00e4rningar indicator=Indikatorer removePlayerInfo=V\u00e4lj spelare att ta bort confirmQuitTitle=Avsluta Yaya? confirmQuitMessage=Avbryt denna omg\u00e5ng och avsluta Yaya... +CTL_OptionsAction=Alternativ \ No newline at end of file