Final tweaking of motor filter in the MotorChooserPanel.

This commit is contained in:
kruland2607 2013-10-08 21:08:05 -05:00
parent fbc7cf69f5
commit 9420390ea8
3 changed files with 53 additions and 52 deletions

View File

@ -39,7 +39,7 @@ public class MotorChooserDialog extends JDialog implements CloseableDialog {
selectionPanel = new ThrustCurveMotorSelectionPanel();
panel.add(selectionPanel, "grow, wrap para");
panel.add(selectionPanel, "grow, wrap");
// OK / Cancel buttons

View File

@ -11,6 +11,7 @@ import java.util.List;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
@ -90,6 +91,21 @@ public abstract class MotorFilterPanel extends JPanel {
List<Manufacturer> unselectedManusFromPreferences = ((SwingPreferences) Application.getPreferences()).getExcludedMotorManufacturers();
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
JPanel sub = new JPanel(new MigLayout("fill"));
TitledBorder border = BorderFactory.createTitledBorder(trans.get("TCurveMotorCol.MANUFACTURER"));
@ -292,7 +308,7 @@ public abstract class MotorFilterPanel extends JPanel {
diameterSlider.setValueAt(1, i-1);
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));
}
}

View File

@ -164,7 +164,7 @@ public class ThrustCurveMotorSelectionPanel extends JPanel implements MotorSelec
}
}
});
panel.add(curveSelectionBox, "growx");
panel.add(curveSelectionBox, "growx, wrap");
}
// Ejection charge delay:
@ -190,40 +190,25 @@ public class ThrustCurveMotorSelectionPanel extends JPanel implements MotorSelec
setDelays(false);
}
});
panel.add(delayBox, "split 2, growx");
panel.add(delayBox, "growx,wrap");
//// (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);
}
// Search field
//// Hide very similar thrust curves
{
//// Search:
StyledLabel label = new StyledLabel(trans.get("TCMotorSelPan.lbl.Search"));
panel.add(label);
searchField = new JTextField();
searchField.getDocument().addDocumentListener(new DocumentListener() {
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 changedUpdate(DocumentEvent e) {
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();
scrollSelectionVisible();
public void actionPerformed(ActionEvent e) {
Application.getPreferences().putBoolean(net.sf.openrocket.startup.Preferences.MOTOR_HIDE_SIMILAR, hideSimilarBox.isSelected());
updateData();
}
});
panel.add(searchField, "span, growx, wrap");
panel.add(hideSimilarBox, "gapleft para, spanx, growx, wrap");
}
//// 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"));
GUIUtil.changeFontSize(hideUsedBox, -1);
hideUsedBox.addActionListener(new ActionListener() {
//// Search:
StyledLabel label = new StyledLabel(trans.get("TCMotorSelPan.lbl.Search"));
panel.add(label);
searchField = new JTextField();
searchField.getDocument().addDocumentListener(new DocumentListener() {
@Override
public void actionPerformed(ActionEvent e) {
rowFilter.setHideUsedMotors(hideUsedBox.isSelected());
public void changedUpdate(DocumentEvent e) {
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();
scrollSelectionVisible();
}
});
panel.add(hideUsedBox, "gapleft para, spanx, growx, wrap");
}
//// 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");
panel.add(searchField, "span, growx");
}
this.add(panel, "grow");
// Vertical split
this.add(panel, "grow");
this.add(new JSeparator(JSeparator.VERTICAL), "growy, gap para para");
JTabbedPane rightSide = new JTabbedPane();