diff --git a/swing/src/main/java/info/openrocket/swing/gui/dialogs/componentanalysis/CAPlotTypeSelector.java b/swing/src/main/java/info/openrocket/swing/gui/dialogs/componentanalysis/CAPlotTypeSelector.java index 55a3d8ba4..9eb4c1bf6 100644 --- a/swing/src/main/java/info/openrocket/swing/gui/dialogs/componentanalysis/CAPlotTypeSelector.java +++ b/swing/src/main/java/info/openrocket/swing/gui/dialogs/componentanalysis/CAPlotTypeSelector.java @@ -4,6 +4,7 @@ import info.openrocket.core.componentanalysis.CADataType; import info.openrocket.core.componentanalysis.CADataTypeGroup; import info.openrocket.core.rocketcomponent.RocketComponent; import info.openrocket.core.unit.Unit; +import info.openrocket.core.util.StringUtils; import info.openrocket.swing.gui.plot.PlotTypeSelector; import javax.swing.JComboBox; @@ -64,4 +65,9 @@ public class CAPlotTypeSelector extends PlotTypeSelector & UnitValue, G extends Grou this.index = plotIndex; - typeSelector = new GroupableAndSearchableComboBox<>(availableTypes, trans.get("FlightDataComboBox.placeholder")); + typeSelector = new GroupableAndSearchableComboBox<>(availableTypes, trans.get("FlightDataComboBox.placeholder")) { + @Serial + private static final long serialVersionUID = 1L; + + @Override + public String getDisplayString(T item) { + return PlotTypeSelector.this.getDisplayString(item); + } + }; typeSelector.setSelectedItem(type); this.add(typeSelector, "gapright para"); @@ -108,4 +117,8 @@ public class PlotTypeSelector & UnitValue, G extends Grou public void setUnitGroup(UnitGroup unitGroup) { unitSelector.setUnitGroup(unitGroup); } + + protected String getDisplayString(T item) { + return item.toString(); + } } diff --git a/swing/src/main/java/info/openrocket/swing/gui/widgets/GroupableAndSearchableComboBox.java b/swing/src/main/java/info/openrocket/swing/gui/widgets/GroupableAndSearchableComboBox.java index c0212e266..66c74cc3f 100644 --- a/swing/src/main/java/info/openrocket/swing/gui/widgets/GroupableAndSearchableComboBox.java +++ b/swing/src/main/java/info/openrocket/swing/gui/widgets/GroupableAndSearchableComboBox.java @@ -48,6 +48,7 @@ import java.util.SortedSet; import java.util.TreeMap; import java.util.TreeSet; import java.util.Vector; +import java.util.regex.Pattern; /** * A combo box that has a search box for searching the items in the combobox. @@ -606,7 +607,7 @@ public class GroupableAndSearchableComboBox$1"); + itemName = itemName.replaceAll("(?i)(" + Pattern.quote(searchFieldSearch.getText()) + ")", "$1"); label.setText("" + itemName + ""); }