package net.sf.openrocket.file.openrocket;
-import java.awt.Color;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Constructor;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.unit.UnitGroup;
import net.sf.openrocket.util.BugException;
+import net.sf.openrocket.util.Color;
import net.sf.openrocket.util.Coordinate;
import net.sf.openrocket.util.GeodeticComputationStrategy;
import net.sf.openrocket.util.LineStyle;
package net.sf.openrocket.file.openrocket.savers;
-import java.awt.Color;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import net.sf.openrocket.rocketcomponent.Rocket;
import net.sf.openrocket.rocketcomponent.RocketComponent;
import net.sf.openrocket.util.BugException;
+import net.sf.openrocket.util.Color;
import net.sf.openrocket.util.LineStyle;
import net.sf.openrocket.gui.components.StyledLabel;
import net.sf.openrocket.gui.components.StyledLabel.Style;
import net.sf.openrocket.gui.components.UnitSelector;
+import net.sf.openrocket.gui.util.ColorConversion;
import net.sf.openrocket.gui.util.GUIUtil;
import net.sf.openrocket.gui.util.SwingPreferences;
import net.sf.openrocket.l10n.Translator;
colorButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- Color c = component.getColor();
+ net.sf.openrocket.util.Color c = component.getColor();
if (c == null) {
- c = ((SwingPreferences) Application.getPreferences()).getDefaultColor(component.getClass());
+ c = Application.getPreferences().getDefaultColor(component.getClass());
}
//// Choose color
- c = JColorChooser.showDialog(tabbedPane, trans.get("RocketCompCfg.lbl.Choosecolor"), c);
+ Color awtColor = ColorConversion.toAwtColor(c);
+ awtColor = JColorChooser.showDialog(tabbedPane, trans.get("RocketCompCfg.lbl.Choosecolor"), awtColor);
+ c = ColorConversion.fromAwtColor(awtColor);
if (c != null) {
component.setColor(c);
}
private Color getColor() {
- Color c = component.getColor();
+ net.sf.openrocket.util.Color c = component.getColor();
if (c == null) {
- c = ((SwingPreferences) Application.getPreferences()).getDefaultColor(component.getClass());
+ c = Application.getPreferences().getDefaultColor(component.getClass());
}
- return c;
+ return ColorConversion.toAwtColor(c);
}
import net.sf.openrocket.gui.figureelements.FigureElement;
import net.sf.openrocket.gui.main.ExceptionHandler;
+import net.sf.openrocket.gui.util.ColorConversion;
import net.sf.openrocket.gui.util.SwingPreferences;
import net.sf.openrocket.motor.Motor;
import net.sf.openrocket.rocketcomponent.Configuration;
}
// Set component color and line style
- Color color = c.getColor();
+ net.sf.openrocket.util.Color color = c.getColor();
if (color == null) {
- color = ((SwingPreferences) Application.getPreferences()).getDefaultColor(c.getClass());
+ color = Application.getPreferences().getDefaultColor(c.getClass());
}
- g2.setColor(color);
+ g2.setColor(ColorConversion.toAwtColor(color));
LineStyle style = c.getLineStyle();
if (style == null)
}
- private static final HashMap<Class<?>, String> DEFAULT_COLORS =
- new HashMap<Class<?>, String>();
- static {
- DEFAULT_COLORS.put(BodyComponent.class, "0,0,240");
- DEFAULT_COLORS.put(FinSet.class, "0,0,200");
- DEFAULT_COLORS.put(LaunchLug.class, "0,0,180");
- DEFAULT_COLORS.put(InternalComponent.class, "170,0,100");
- DEFAULT_COLORS.put(MassObject.class, "0,0,0");
- DEFAULT_COLORS.put(RecoveryDevice.class, "255,0,0");
- }
-
//////////////////////
return new Color(0, 0, 0, 100);
}
- public Color getDefaultColor(Class<? extends RocketComponent> c) {
- String color = get("componentColors", c, DEFAULT_COLORS);
- if (color == null)
- return Color.BLACK;
-
- net.sf.openrocket.util.Color clr = parseColor(color);
- if (clr != null) {
- return ColorConversion.toAwtColor(clr);
- } else {
- return Color.BLACK;
- }
- }
-
- public final void setDefaultColor(Class<? extends RocketComponent> c, Color color) {
- if (color == null)
- return;
- putString("componentColors", c.getSimpleName(), stringifyColor(ColorConversion.fromAwtColor(color)));
- }
-
public static int getMaxThreadCount() {
package net.sf.openrocket.rocketcomponent;
-import java.awt.Color;
import java.util.ArrayDeque;
import java.util.Collection;
import java.util.Deque;
import net.sf.openrocket.util.ArrayList;
import net.sf.openrocket.util.BugException;
import net.sf.openrocket.util.ChangeSource;
+import net.sf.openrocket.util.Color;
import net.sf.openrocket.util.Coordinate;
import net.sf.openrocket.util.Invalidator;
import net.sf.openrocket.util.LineStyle;
import net.sf.openrocket.database.Databases;\r
import net.sf.openrocket.l10n.Translator;\r
import net.sf.openrocket.material.Material;\r
+import net.sf.openrocket.rocketcomponent.BodyComponent;\r
+import net.sf.openrocket.rocketcomponent.FinSet;\r
+import net.sf.openrocket.rocketcomponent.InternalComponent;\r
+import net.sf.openrocket.rocketcomponent.LaunchLug;\r
import net.sf.openrocket.rocketcomponent.MassObject;\r
+import net.sf.openrocket.rocketcomponent.RecoveryDevice;\r
import net.sf.openrocket.rocketcomponent.RocketComponent;\r
import net.sf.openrocket.util.BugException;\r
import net.sf.openrocket.util.BuildProperties;\r
}\r
}\r
\r
+ public Color getDefaultColor(Class<? extends RocketComponent> c) {\r
+ String color = get("componentColors", c, DEFAULT_COLORS);\r
+ if (color == null)\r
+ return Color.BLACK;\r
+ \r
+ Color clr = parseColor(color);\r
+ if (clr != null) {\r
+ return clr;\r
+ } else {\r
+ return Color.BLACK;\r
+ }\r
+ }\r
+ \r
+ public final void setDefaultColor(Class<? extends RocketComponent> c, Color color) {\r
+ if (color == null)\r
+ return;\r
+ putString("componentColors", c.getSimpleName(), stringifyColor(color));\r
+ }\r
+\r
+\r
/**\r
* Retrieve a Line style for the given component.\r
* @param c\r
Databases.findMaterial(Material.Type.BULK, trans.get("Databases.materials.Cardboard"), 680, false);\r
}\r
\r
+ private static final HashMap<Class<?>, String> DEFAULT_COLORS =\r
+ new HashMap<Class<?>, String>();\r
+ static {\r
+ DEFAULT_COLORS.put(BodyComponent.class, "0,0,240");\r
+ DEFAULT_COLORS.put(FinSet.class, "0,0,200");\r
+ DEFAULT_COLORS.put(LaunchLug.class, "0,0,180");\r
+ DEFAULT_COLORS.put(InternalComponent.class, "170,0,100");\r
+ DEFAULT_COLORS.put(MassObject.class, "0,0,0");\r
+ DEFAULT_COLORS.put(RecoveryDevice.class, "255,0,0");\r
+ }\r
+ \r
\r
\r
}\r
package net.sf.openrocket.util;
-import java.awt.Color;
import java.util.Random;
import net.sf.openrocket.material.Material;
import java.awt.Color;
import java.util.Iterator;
+import net.sf.openrocket.gui.util.ColorConversion;
import net.sf.openrocket.util.Coordinate;
import org.junit.Test;
ComponentCompare.assertDeepSimilarity(r1, r2, false);
- r1.setColor(Color.YELLOW);
+ r1.setColor(ColorConversion.fromAwtColor(Color.YELLOW));
try {
ComponentCompare.assertEquality(r1, r2);
fail();
import java.awt.Color;
+import net.sf.openrocket.gui.util.ColorConversion;
import net.sf.openrocket.material.Material;
import net.sf.openrocket.material.Material.Type;
import net.sf.openrocket.rocketcomponent.ExternalComponent.Finish;
fin.setBaseRotation(1.1);
fin.setCantAngle(0.001);
fin.setCGOverridden(true);
- fin.setColor(Color.YELLOW);
+ fin.setColor(ColorConversion.fromAwtColor(Color.YELLOW));
fin.setComment("cmt");
fin.setCrossSection(CrossSection.ROUNDED);
fin.setFinCount(5);