diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml index fee86e88..c3db71b0 100644 --- a/dependency-reduced-pom.xml +++ b/dependency-reduced-pom.xml @@ -4,7 +4,7 @@ org.pamguard Pamguard Pamguard - 2.02.11f + 2.02.12 Pamguard using Maven to control dependencies www.pamguard.org diff --git a/src/PamView/dialog/GenericSwingDialog.java b/src/PamView/dialog/GenericSwingDialog.java index 208bd386..72ea3821 100644 --- a/src/PamView/dialog/GenericSwingDialog.java +++ b/src/PamView/dialog/GenericSwingDialog.java @@ -10,6 +10,8 @@ import javax.swing.JComponent; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; +import PamController.PamController; + public class GenericSwingDialog extends PamDialog { private boolean allOk; @@ -45,6 +47,9 @@ public class GenericSwingDialog extends PamDialog { * @return */ public static boolean showDialog(Window parentFrame, String title, Point screenPoint, PamDialogPanel ...dialogPanels) { + if (parentFrame == null) { + parentFrame = PamController.getMainFrame(); + } GenericSwingDialog swingDialog = new GenericSwingDialog(parentFrame, title, dialogPanels); swingDialog.setParams(); swingDialog.pack(); diff --git a/src/PamView/dialog/PamDialogPanel.java b/src/PamView/dialog/PamDialogPanel.java index d8dcc706..19e83808 100644 --- a/src/PamView/dialog/PamDialogPanel.java +++ b/src/PamView/dialog/PamDialogPanel.java @@ -5,6 +5,7 @@ import javax.swing.JComponent; /** * General class for dialog panels which will be incorporated into one or * more actual dialogs. + * Can be quickly opened with GenericSwingDialog * @author Doug Gillespie * */ diff --git a/src/PamView/symbol/modifier/SymbolModifier.java b/src/PamView/symbol/modifier/SymbolModifier.java index 3e33d0eb..96ccfa53 100644 --- a/src/PamView/symbol/modifier/SymbolModifier.java +++ b/src/PamView/symbol/modifier/SymbolModifier.java @@ -150,7 +150,8 @@ abstract public class SymbolModifier { if (dialogPanel == null) { return null; } - JMenuItem menuItem = new JMenuItem("Options ..."); + JMenuItem menuItem = new JMenuItem("More options ..."); + menuItem.setToolTipText("More symbol options"); menuItem.addActionListener(new ActionListener() { @Override diff --git a/src/PamView/symbol/modifier/swing/ModifierTreeNode.java b/src/PamView/symbol/modifier/swing/ModifierTreeNode.java index 746fa43b..70285206 100644 --- a/src/PamView/symbol/modifier/swing/ModifierTreeNode.java +++ b/src/PamView/symbol/modifier/swing/ModifierTreeNode.java @@ -8,12 +8,13 @@ import java.util.Enumeration; import javax.swing.tree.TreeNode; import PamUtils.PamUtils; +import PamView.dialog.PamDialogPanel; import PamView.symbol.modifier.SymbolModifier; public class ModifierTreeNode implements TreeNode { private SymbolModifier modifier; private SymbolTreeRoot rootNode; - private ArrayList choiceNodes; + private ArrayList choiceNodes; public ModifierTreeNode(SymbolTreeRoot rootNode, SymbolModifier modifier) { super(); @@ -22,17 +23,25 @@ public class ModifierTreeNode implements TreeNode { int modBits = modifier.getModifyableBits(); int nMod = Integer.bitCount(modBits); choiceNodes = new ArrayList<>(); + + int leafIndex = 0; + for (int i = 0; i < nMod; i++) { - choiceNodes.add(new ChoiceTreeNode(this, 1< children() { + return null; + } + +} diff --git a/src/PamView/symbol/modifier/swing/SymbolModifierPanel.java b/src/PamView/symbol/modifier/swing/SymbolModifierPanel.java index 922a4c16..70fa539b 100644 --- a/src/PamView/symbol/modifier/swing/SymbolModifierPanel.java +++ b/src/PamView/symbol/modifier/swing/SymbolModifierPanel.java @@ -137,6 +137,7 @@ public class SymbolModifierPanel implements PamDialogPanel { JMenuItem optsItem = modifier.getModifierOptionsMenu(); if (optsItem != null) { popMenu.add(optsItem); + popMenu.addSeparator(); } } if (nodeInd > 0) { diff --git a/src/PamView/symbol/modifier/swing/SymbolTreeRenderer.java b/src/PamView/symbol/modifier/swing/SymbolTreeRenderer.java index da04fedf..f96d563b 100644 --- a/src/PamView/symbol/modifier/swing/SymbolTreeRenderer.java +++ b/src/PamView/symbol/modifier/swing/SymbolTreeRenderer.java @@ -43,6 +43,10 @@ public class SymbolTreeRenderer extends DefaultTreeCellRenderer { if (value instanceof ChoiceTreeNode) { return checkboxChoice(tree, (ChoiceTreeNode) value, sel, expanded, leaf, row, hasFocus); } + + if (value instanceof OptionsTreeNode) { + return ((OptionsTreeNode) value).optionsButton; + } Component component = super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus); if (value instanceof ModifierTreeNode) { diff --git a/src/clickDetector/tdPlots/ClickClassSymbolModifier.java b/src/clickDetector/tdPlots/ClickClassSymbolModifier.java index 2ad9c3c7..e27b9a4a 100644 --- a/src/clickDetector/tdPlots/ClickClassSymbolModifier.java +++ b/src/clickDetector/tdPlots/ClickClassSymbolModifier.java @@ -1,7 +1,13 @@ package clickDetector.tdPlots; +import javax.swing.JCheckBox; +import javax.swing.JComponent; +import javax.swing.JPanel; +import javax.swing.border.TitledBorder; + import PamView.GeneralProjector; import PamView.PamSymbol; +import PamView.dialog.PamDialogPanel; import PamView.symbol.PamSymbolChooser; import PamView.symbol.SymbolData; import PamView.symbol.modifier.SymbolModType; @@ -32,4 +38,41 @@ public class ClickClassSymbolModifier extends SymbolModifier { } } + @Override + public PamDialogPanel getDialogPanel() { + // Just a play to check buttons and menus work. Not actually used at all so revert to super: returns null. + return super.getDialogPanel(); +// return new DumyPanel(); + } + + private class DumyPanel implements PamDialogPanel { + + private JPanel mainPanel; + public DumyPanel() { + super(); + mainPanel = new JPanel(); + mainPanel.setBorder(new TitledBorder("More options")); + mainPanel.add(new JCheckBox("Dummy option")); + } + + @Override + public JComponent getDialogComponent() { + // TODO Auto-generated method stub + return mainPanel; + } + + @Override + public void setParams() { + // TODO Auto-generated method stub + + } + + @Override + public boolean getParams() { + // TODO Auto-generated method stub + return false; + } + + } + } diff --git a/src/whistlesAndMoans/dataSelector/WMDDataSelector.java b/src/whistlesAndMoans/dataSelector/WMDDataSelector.java index 34ec0027..9ded69a2 100644 --- a/src/whistlesAndMoans/dataSelector/WMDDataSelector.java +++ b/src/whistlesAndMoans/dataSelector/WMDDataSelector.java @@ -39,6 +39,9 @@ public class WMDDataSelector extends DataSelector { @Override public double scoreData(PamDataUnit pamDataUnit) { + if (getParams().getCombinationFlag() == DataSelectParams.DATA_SELECT_DISABLE) { + return 1; + } ConnectedRegionDataUnit crDataUnit = (ConnectedRegionDataUnit) pamDataUnit; return (wantWhistle(crDataUnit) ? 1: 0); }