For the short term put the user material functions in the base Preferences.

This commit is contained in:
Kevin Ruland 2012-01-01 19:27:33 +00:00
parent 50e2e3d173
commit 4ff1869940
3 changed files with 8 additions and 5 deletions

View File

@ -1,6 +1,5 @@
package net.sf.openrocket.database;
import net.sf.openrocket.gui.util.SwingPreferences;
import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.logging.LogHelper;
import net.sf.openrocket.material.Material;
@ -96,7 +95,7 @@ public class Databases {
// Add user-defined materials
for (Material m : ((SwingPreferences) Application.getPreferences()).getUserMaterials()) {
for (Material m : Application.getPreferences().getUserMaterials()) {
switch (m.getType()) {
case LINE:
LINE_MATERIAL.add(m);

View File

@ -2,7 +2,6 @@ package net.sf.openrocket.material;
import net.sf.openrocket.database.Database;
import net.sf.openrocket.database.DatabaseListener;
import net.sf.openrocket.gui.util.SwingPreferences;
import net.sf.openrocket.startup.Application;
/**
@ -16,13 +15,13 @@ public class MaterialStorage implements DatabaseListener<Material> {
@Override
public void elementAdded(Material material, Database<Material> source) {
if (material.isUserDefined()) {
((SwingPreferences) Application.getPreferences()).addUserMaterial(material);
Application.getPreferences().addUserMaterial(material);
}
}
@Override
public void elementRemoved(Material material, Database<Material> source) {
((SwingPreferences) Application.getPreferences()).removeUserMaterial(material);
Application.getPreferences().removeUserMaterial(material);
}
}

View File

@ -2,6 +2,7 @@ package net.sf.openrocket.startup;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import net.sf.openrocket.database.Databases;
import net.sf.openrocket.l10n.Translator;
@ -358,6 +359,10 @@ public abstract class Preferences {
return null;
}
public abstract void addUserMaterial(Material m);
public abstract Set<Material> getUserMaterials();
public abstract void removeUserMaterial(Material m);
/*
* Map of default line styles
*/