diff --git a/core/resources/l10n/messages.properties b/core/resources/l10n/messages.properties index 9942047e7..6c16499ad 100644 --- a/core/resources/l10n/messages.properties +++ b/core/resources/l10n/messages.properties @@ -1494,6 +1494,7 @@ OBJOptionChooser.checkbox.exportAppearance = Export appearance OBJOptionChooser.checkbox.exportAppearance.ttip = If true, export the component appearances to an MTL file. OBJOptionChooser.checkbox.exportAsSeparateFiles = Export as separate files OBJOptionChooser.checkbox.exportAsSeparateFiles.ttip = If true, export each component as a separate OBJ file. +OBJOptionChooser.checkbox.exportAppearance.ttip.triangulate = You can not export the appearance with the triangulate feature enabled. OBJOptionChooser.checkbox.removeOffset = Remove origin offset OBJOptionChooser.checkbox.removeOffset.ttip = If true, remove the offset of the component from the origin.
If false, the component is exported at its original location in the rocket. OBJOptionChooser.btn.showAdvanced = Show Advanced options diff --git a/swing/src/net/sf/openrocket/file/wavefrontobj/OBJOptionChooser.java b/swing/src/net/sf/openrocket/file/wavefrontobj/OBJOptionChooser.java index 674fa6d15..4329bfaa9 100644 --- a/swing/src/net/sf/openrocket/file/wavefrontobj/OBJOptionChooser.java +++ b/swing/src/net/sf/openrocket/file/wavefrontobj/OBJOptionChooser.java @@ -102,6 +102,22 @@ public class OBJOptionChooser extends JPanel { this.triangulate = new JCheckBox(trans.get("OBJOptionChooser.checkbox.triangulate")); this.triangulate.setToolTipText(trans.get("OBJOptionChooser.checkbox.triangulate.ttip")); advancedOptionsPanel.add(triangulate, "spanx, wrap"); + this.triangulate.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + if (e.getStateChange() == ItemEvent.SELECTED) { + // Disable the export appearance, it is not supported in combination with triangulate + exportAppearance.setEnabled(false); + exportAppearance.setSelected(false); + exportAppearance.setToolTipText(trans.get("OBJOptionChooser.checkbox.exportAppearance.ttip.triangulate")); + } else { + // Re-enable + exportAppearance.setEnabled(true); + exportAppearance.setSelected(opts.isExportAppearance()); + exportAppearance.setToolTipText(trans.get("OBJOptionChooser.checkbox.exportAppearance.ttip")); + } + } + }); //// Level of detail JLabel LODLabel = new JLabel(trans.get("OBJOptionChooser.lbl.LevelOfDetail"));