Wire in prefs dialog to Preferences and RocketFigure3d
This commit is contained in:
parent
d16d1c4a13
commit
321761cf0f
@ -580,35 +580,34 @@ public class PreferencesDialog extends JDialog {
|
|||||||
trans.get("pref.dlg.lbl.effect1"), -2, Style.ITALIC),
|
trans.get("pref.dlg.lbl.effect1"), -2, Style.ITALIC),
|
||||||
"spanx, wrap");
|
"spanx, wrap");
|
||||||
|
|
||||||
BooleanModel enableGLModel = new BooleanModel(true);//TODO
|
BooleanModel enableGLModel = new BooleanModel(preferences.getBoolean(Preferences.OPENGL_ENABLED, true));
|
||||||
final JCheckBox enableGL = new JCheckBox(enableGLModel);
|
final JCheckBox enableGL = new JCheckBox(enableGLModel);
|
||||||
enableGL.setText("Enable 3D Graphics"); //TODO Translation
|
enableGL.setText("Enable 3D Graphics"); //TODO Translation
|
||||||
enableGL.setSelected(true); //TODO
|
|
||||||
enableGL.addActionListener(new ActionListener() {
|
enableGL.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
//TODO
|
preferences.putBoolean(Preferences.OPENGL_ENABLED, enableGL.isSelected());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
panel.add(enableGL, "wrap");
|
panel.add(enableGL, "wrap");
|
||||||
|
|
||||||
final JCheckBox enableAA = new JCheckBox("Enable Antialiasing"); //TODO Translation
|
final JCheckBox enableAA = new JCheckBox("Enable Antialiasing"); //TODO Translation
|
||||||
enableAA.setSelected(true); //TODO
|
enableAA.setSelected(preferences.getBoolean(Preferences.OPENGL_ENABLE_AA, true));
|
||||||
enableAA.addActionListener(new ActionListener() {
|
enableAA.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
//TODO
|
preferences.putBoolean(Preferences.OPENGL_ENABLE_AA, enableAA.isSelected());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
enableGLModel.addEnableComponent(enableAA);
|
enableGLModel.addEnableComponent(enableAA);
|
||||||
panel.add(enableAA, "wrap");
|
panel.add(enableAA, "wrap");
|
||||||
|
|
||||||
final JCheckBox useFBO = new JCheckBox("Use Offscreen Rendering"); //TODO Translation
|
final JCheckBox useFBO = new JCheckBox("Use Offscreen Rendering"); //TODO Translation
|
||||||
useFBO.setSelected(false); //TODO
|
useFBO.setSelected(preferences.getBoolean(Preferences.OPENGL_USE_FBO, false));
|
||||||
useFBO.addActionListener(new ActionListener() {
|
useFBO.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
//TODO
|
preferences.putBoolean(Preferences.OPENGL_USE_FBO, useFBO.isSelected());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
enableGLModel.addEnableComponent(useFBO);
|
enableGLModel.addEnableComponent(useFBO);
|
||||||
|
@ -41,6 +41,8 @@ import net.sf.openrocket.gui.figureelements.FigureElement;
|
|||||||
import net.sf.openrocket.gui.main.Splash;
|
import net.sf.openrocket.gui.main.Splash;
|
||||||
import net.sf.openrocket.rocketcomponent.Configuration;
|
import net.sf.openrocket.rocketcomponent.Configuration;
|
||||||
import net.sf.openrocket.rocketcomponent.RocketComponent;
|
import net.sf.openrocket.rocketcomponent.RocketComponent;
|
||||||
|
import net.sf.openrocket.startup.Application;
|
||||||
|
import net.sf.openrocket.startup.Preferences;
|
||||||
import net.sf.openrocket.util.Coordinate;
|
import net.sf.openrocket.util.Coordinate;
|
||||||
import net.sf.openrocket.util.MathUtil;
|
import net.sf.openrocket.util.MathUtil;
|
||||||
|
|
||||||
@ -125,7 +127,11 @@ public class RocketFigure3d extends JPanel implements GLEventListener {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static boolean is3dEnabled() {
|
public static boolean is3dEnabled() {
|
||||||
return System.getProperty("openrocket.3d.disable") == null;
|
//Allow disable by command line, if program won't even start
|
||||||
|
if (System.getProperty("openrocket.3d.disable") != null)
|
||||||
|
return false;
|
||||||
|
//return by preference
|
||||||
|
return Application.getPreferences().getBoolean(Preferences.OPENGL_ENABLED, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initGLCanvas() {
|
private void initGLCanvas() {
|
||||||
@ -139,18 +145,22 @@ public class RocketFigure3d extends JPanel implements GLEventListener {
|
|||||||
log.trace("GL - creating GLCapabilities");
|
log.trace("GL - creating GLCapabilities");
|
||||||
final GLCapabilities caps = new GLCapabilities(glp);
|
final GLCapabilities caps = new GLCapabilities(glp);
|
||||||
|
|
||||||
if (true) {
|
if (Application.getPreferences().getBoolean(Preferences.OPENGL_ENABLE_AA, true)) {
|
||||||
log.trace("GL - setSampleBuffers");
|
log.trace("GL - setSampleBuffers");
|
||||||
caps.setSampleBuffers(true);
|
caps.setSampleBuffers(true);
|
||||||
|
|
||||||
log.trace("GL - setNumSamples");
|
log.trace("GL - setNumSamples");
|
||||||
caps.setNumSamples(6);
|
caps.setNumSamples(6);
|
||||||
|
|
||||||
log.trace("GL - Creating GLCanvas");
|
|
||||||
canvas = new GLCanvas(caps);
|
|
||||||
} else {
|
} else {
|
||||||
|
log.trace("GL - Not enabling AA by user pref");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Application.getPreferences().getBoolean(Preferences.OPENGL_USE_FBO, false)) {
|
||||||
log.trace("GL - Creating GLJPanel");
|
log.trace("GL - Creating GLJPanel");
|
||||||
canvas = new GLJPanel(caps);
|
canvas = new GLJPanel(caps);
|
||||||
|
} else {
|
||||||
|
log.trace("GL - Creating GLCanvas");
|
||||||
|
canvas = new GLCanvas(caps);
|
||||||
}
|
}
|
||||||
|
|
||||||
log.trace("GL - Registering as GLEventListener on canvas");
|
log.trace("GL - Registering as GLEventListener on canvas");
|
||||||
|
@ -50,6 +50,11 @@ public abstract class Preferences {
|
|||||||
public static final String PREFERRED_THRUST_CURVE_MOTOR_NODE = "preferredThrustCurveMotors";
|
public static final String PREFERRED_THRUST_CURVE_MOTOR_NODE = "preferredThrustCurveMotors";
|
||||||
private static final String AUTO_OPEN_LAST_DESIGN = "AUTO_OPEN_LAST_DESIGN";
|
private static final String AUTO_OPEN_LAST_DESIGN = "AUTO_OPEN_LAST_DESIGN";
|
||||||
|
|
||||||
|
//Preferences related to 3D graphics
|
||||||
|
public static final String OPENGL_ENABLED = "OpenGL_Is_Enabled";
|
||||||
|
public static final String OPENGL_ENABLE_AA = "OpenGL_Antialiasing_Is_Enabled";
|
||||||
|
public static final String OPENGL_USE_FBO = "OpenGL_Use_FBO";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ******************************************************************************************
|
* ******************************************************************************************
|
||||||
*
|
*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user