Final tweaking of motor filter in the MotorChooserPanel.
This commit is contained in:
parent
fbc7cf69f5
commit
9420390ea8
@ -39,7 +39,7 @@ public class MotorChooserDialog extends JDialog implements CloseableDialog {
|
|||||||
|
|
||||||
selectionPanel = new ThrustCurveMotorSelectionPanel();
|
selectionPanel = new ThrustCurveMotorSelectionPanel();
|
||||||
|
|
||||||
panel.add(selectionPanel, "grow, wrap para");
|
panel.add(selectionPanel, "grow, wrap");
|
||||||
|
|
||||||
|
|
||||||
// OK / Cancel buttons
|
// OK / Cancel buttons
|
||||||
|
@ -11,6 +11,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import javax.swing.BorderFactory;
|
import javax.swing.BorderFactory;
|
||||||
import javax.swing.JButton;
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JCheckBox;
|
||||||
import javax.swing.JLabel;
|
import javax.swing.JLabel;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
import javax.swing.JScrollPane;
|
import javax.swing.JScrollPane;
|
||||||
@ -90,6 +91,21 @@ public abstract class MotorFilterPanel extends JPanel {
|
|||||||
List<Manufacturer> unselectedManusFromPreferences = ((SwingPreferences) Application.getPreferences()).getExcludedMotorManufacturers();
|
List<Manufacturer> unselectedManusFromPreferences = ((SwingPreferences) Application.getPreferences()).getExcludedMotorManufacturers();
|
||||||
filter.setExcludedManufacturers(unselectedManusFromPreferences);
|
filter.setExcludedManufacturers(unselectedManusFromPreferences);
|
||||||
|
|
||||||
|
//// Hide used motor files
|
||||||
|
{
|
||||||
|
final JCheckBox hideUsedBox = new JCheckBox(trans.get("TCMotorSelPan.checkbox.hideUsed"));
|
||||||
|
GUIUtil.changeFontSize(hideUsedBox, -1);
|
||||||
|
hideUsedBox.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
MotorFilterPanel.this.filter.setHideUsedMotors(hideUsedBox.isSelected());
|
||||||
|
onSelectionChanged();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.add(hideUsedBox, "gapleft para, spanx, growx, wrap");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Manufacturer selection
|
// Manufacturer selection
|
||||||
JPanel sub = new JPanel(new MigLayout("fill"));
|
JPanel sub = new JPanel(new MigLayout("fill"));
|
||||||
TitledBorder border = BorderFactory.createTitledBorder(trans.get("TCurveMotorCol.MANUFACTURER"));
|
TitledBorder border = BorderFactory.createTitledBorder(trans.get("TCurveMotorCol.MANUFACTURER"));
|
||||||
@ -292,7 +308,7 @@ public abstract class MotorFilterPanel extends JPanel {
|
|||||||
diameterSlider.setValueAt(1, i-1);
|
diameterSlider.setValueAt(1, i-1);
|
||||||
|
|
||||||
motorMountDimension.setText( trans.get("TCMotorSelPan.MotorMountDimensions") + " " +
|
motorMountDimension.setText( trans.get("TCMotorSelPan.MotorMountDimensions") + " " +
|
||||||
UnitGroup.UNITS_MOTOR_DIMENSIONS.toStringUnit(mountDiameter)+ "x" + UnitGroup.UNITS_MOTOR_DIMENSIONS.toStringUnit(mountLength));
|
UnitGroup.UNITS_MOTOR_DIMENSIONS.toStringUnit(mountDiameter)+ " x " + UnitGroup.UNITS_MOTOR_DIMENSIONS.toStringUnit(mountLength));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -164,7 +164,7 @@ public class ThrustCurveMotorSelectionPanel extends JPanel implements MotorSelec
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
panel.add(curveSelectionBox, "growx");
|
panel.add(curveSelectionBox, "growx, wrap");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ejection charge delay:
|
// Ejection charge delay:
|
||||||
@ -190,40 +190,25 @@ public class ThrustCurveMotorSelectionPanel extends JPanel implements MotorSelec
|
|||||||
setDelays(false);
|
setDelays(false);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
panel.add(delayBox, "split 2, growx");
|
panel.add(delayBox, "growx,wrap");
|
||||||
//// (Number of seconds or \"None\")
|
//// (Number of seconds or \"None\")
|
||||||
panel.add(new StyledLabel(trans.get("TCMotorSelPan.lbl.NumberofsecondsorNone"), -3), "wrap para");
|
panel.add(new StyledLabel(trans.get("TCMotorSelPan.lbl.NumberofsecondsorNone"), -3), "skip, wrap");
|
||||||
setDelays(false);
|
setDelays(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Search field
|
//// Hide very similar thrust curves
|
||||||
{
|
{
|
||||||
//// Search:
|
hideSimilarBox = new JCheckBox(trans.get("TCMotorSelPan.checkbox.hideSimilar"));
|
||||||
StyledLabel label = new StyledLabel(trans.get("TCMotorSelPan.lbl.Search"));
|
GUIUtil.changeFontSize(hideSimilarBox, -1);
|
||||||
panel.add(label);
|
hideSimilarBox.setSelected(Application.getPreferences().getBoolean(net.sf.openrocket.startup.Preferences.MOTOR_HIDE_SIMILAR, true));
|
||||||
searchField = new JTextField();
|
hideSimilarBox.addActionListener(new ActionListener() {
|
||||||
searchField.getDocument().addDocumentListener(new DocumentListener() {
|
|
||||||
@Override
|
@Override
|
||||||
public void changedUpdate(DocumentEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
update();
|
Application.getPreferences().putBoolean(net.sf.openrocket.startup.Preferences.MOTOR_HIDE_SIMILAR, hideSimilarBox.isSelected());
|
||||||
}
|
updateData();
|
||||||
@Override
|
|
||||||
public void insertUpdate(DocumentEvent e) {
|
|
||||||
update();
|
|
||||||
}
|
|
||||||
@Override
|
|
||||||
public void removeUpdate(DocumentEvent e) {
|
|
||||||
update();
|
|
||||||
}
|
|
||||||
private void update() {
|
|
||||||
String text = searchField.getText().trim();
|
|
||||||
String[] split = text.split("\\s+");
|
|
||||||
rowFilter.setSearchTerms(Arrays.asList(split));
|
|
||||||
sorter.sort();
|
|
||||||
scrollSelectionVisible();
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
panel.add(searchField, "span, growx, wrap");
|
panel.add(hideSimilarBox, "gapleft para, spanx, growx, wrap");
|
||||||
}
|
}
|
||||||
|
|
||||||
//// Motor selection table
|
//// Motor selection table
|
||||||
@ -285,38 +270,38 @@ public class ThrustCurveMotorSelectionPanel extends JPanel implements MotorSelec
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//// Hide used motor files
|
// Search field
|
||||||
{
|
{
|
||||||
final JCheckBox hideUsedBox = new JCheckBox(trans.get("TCMotorSelPan.checkbox.hideUsed"));
|
//// Search:
|
||||||
GUIUtil.changeFontSize(hideUsedBox, -1);
|
StyledLabel label = new StyledLabel(trans.get("TCMotorSelPan.lbl.Search"));
|
||||||
hideUsedBox.addActionListener(new ActionListener() {
|
panel.add(label);
|
||||||
|
searchField = new JTextField();
|
||||||
|
searchField.getDocument().addDocumentListener(new DocumentListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void changedUpdate(DocumentEvent e) {
|
||||||
rowFilter.setHideUsedMotors(hideUsedBox.isSelected());
|
update();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void insertUpdate(DocumentEvent e) {
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void removeUpdate(DocumentEvent e) {
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
private void update() {
|
||||||
|
String text = searchField.getText().trim();
|
||||||
|
String[] split = text.split("\\s+");
|
||||||
|
rowFilter.setSearchTerms(Arrays.asList(split));
|
||||||
sorter.sort();
|
sorter.sort();
|
||||||
scrollSelectionVisible();
|
scrollSelectionVisible();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
panel.add(hideUsedBox, "gapleft para, spanx, growx, wrap");
|
panel.add(searchField, "span, growx");
|
||||||
}
|
|
||||||
|
|
||||||
//// Hide very similar thrust curves
|
|
||||||
{
|
|
||||||
hideSimilarBox = new JCheckBox(trans.get("TCMotorSelPan.checkbox.hideSimilar"));
|
|
||||||
GUIUtil.changeFontSize(hideSimilarBox, -1);
|
|
||||||
hideSimilarBox.setSelected(Application.getPreferences().getBoolean(net.sf.openrocket.startup.Preferences.MOTOR_HIDE_SIMILAR, true));
|
|
||||||
hideSimilarBox.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
Application.getPreferences().putBoolean(net.sf.openrocket.startup.Preferences.MOTOR_HIDE_SIMILAR, hideSimilarBox.isSelected());
|
|
||||||
updateData();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
panel.add(hideSimilarBox, "gapleft para, spanx, growx, wrap");
|
|
||||||
}
|
}
|
||||||
|
this.add(panel, "grow");
|
||||||
|
|
||||||
// Vertical split
|
// Vertical split
|
||||||
this.add(panel, "grow");
|
|
||||||
this.add(new JSeparator(JSeparator.VERTICAL), "growy, gap para para");
|
this.add(new JSeparator(JSeparator.VERTICAL), "growy, gap para para");
|
||||||
|
|
||||||
JTabbedPane rightSide = new JTabbedPane();
|
JTabbedPane rightSide = new JTabbedPane();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user