Use dedicated methods for adding/removing doc materials

This commit is contained in:
SiboVG 2024-08-08 19:24:17 +02:00
parent de61ffe174
commit 09d6137ac0
2 changed files with 8 additions and 4 deletions

View File

@ -136,6 +136,10 @@ public class DocumentPreferences implements ChangeSource, ORPreferences {
getDatabase(material.getType()).add(material);
}
public void removeMaterial(Material material) {
getDatabase(material.getType()).remove(material);
}
public int getMaterialCount(Material.Type type) {
return getDatabase(type).size();
}

View File

@ -161,7 +161,7 @@ public class MaterialEditPanel extends JPanel {
Databases.getDatabase(mat.getType()).add(mat);
} else {
mat.setDocumentMaterial(true);
document.getDocumentPreferences().getDatabase(mat.getType()).add(mat);
document.getDocumentPreferences().addMaterial(mat);
}
model.fireTableDataChanged();
setButtonStates();
@ -205,7 +205,7 @@ public class MaterialEditPanel extends JPanel {
}
if (m.isUserDefined()) {
if (isDocumentMaterialPrior) {
document.getDocumentPreferences().getDatabase(m.getType()).remove(m);
document.getDocumentPreferences().removeMaterial(m);
} else {
Databases.getDatabase(m.getType()).remove(m);
}
@ -215,7 +215,7 @@ public class MaterialEditPanel extends JPanel {
Databases.getDatabase(mat.getType()).add(mat);
} else {
mat.setDocumentMaterial(true);
document.getDocumentPreferences().getDatabase(mat.getType()).add(mat);
document.getDocumentPreferences().addMaterial(mat);
}
model.fireTableDataChanged();
setButtonStates();
@ -238,7 +238,7 @@ public class MaterialEditPanel extends JPanel {
if (!m.isUserDefined())
return;
if (m.isDocumentMaterial()) {
document.getDocumentPreferences().getDatabase(m.getType()).remove(m);
document.getDocumentPreferences().removeMaterial(m);
} else {
Databases.getDatabase(m.getType()).remove(m);
}