Skip to content

Commit

Permalink
Prevent refit code from saving non-meklab customizations to files
Browse files Browse the repository at this point in the history
  • Loading branch information
WeaverThree committed Oct 5, 2024
1 parent 143fa32 commit de4c76b
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 15 deletions.
6 changes: 4 additions & 2 deletions MekHQ/src/mekhq/campaign/parts/Refit.java
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ public class Refit extends Part implements IAcquisitionWork {
private boolean failedCheck;
private boolean customJob;
private boolean isRefurbishing;
private boolean isSavingFile;
private boolean kitFound;
private boolean replacingLocations;
private String fixableString;
Expand Down Expand Up @@ -128,10 +129,11 @@ public Refit() {
cost = Money.zero();
}

public Refit(Unit oUnit, Entity newEn, boolean custom, boolean refurbish) {
public Refit(Unit oUnit, Entity newEn, boolean custom, boolean refurbish, boolean saveFile) {
this();
isRefurbishing = refurbish;
customJob = custom;
isSavingFile = saveFile;
oldUnit = oUnit;
newEntity = newEn;
newEntity.setOwner(oldUnit.getEntity().getOwner());
Expand Down Expand Up @@ -1044,7 +1046,7 @@ public void calculate() {
}

public void begin() throws EntityLoadingException, IOException {
if (customJob) {
if (customJob && isSavingFile) {
saveCustomization();
}
oldUnit.setRefit(this);
Expand Down
2 changes: 1 addition & 1 deletion MekHQ/src/mekhq/gui/MekLabTab.java
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,7 @@ public void refreshRefitSummary() {
if (null == entity) {
return;
}
refit = new Refit(unit, entity, true, false);
refit = new Refit(unit, entity, true, false, true);
testEntity = null;
if (entity instanceof SmallCraft) {
testEntity = new TestSmallCraft((SmallCraft) entity, entityVerifier.aeroOption, null);
Expand Down
4 changes: 2 additions & 2 deletions MekHQ/src/mekhq/gui/adapter/UnitTableMouseAdapter.java
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ public void actionPerformed(ActionEvent action) {
Stream.of(units).filter(Unit::isRefitting).forEach(unit -> unit.getRefit().succeed());
} else if (command.equals(COMMAND_REFURBISH)) {
for (Unit unit : units) {
Refit refit = new Refit(unit, unit.getEntity(), false, true);
Refit refit = new Refit(unit, unit.getEntity(), false, true, false);
gui.refitUnit(refit, false);
}
} else if (command.equals(COMMAND_REFIT_KIT)) { // Single Unit or Multiple of Units of the same type only
Expand All @@ -381,7 +381,7 @@ public void actionPerformed(ActionEvent action) {
Entity refitEntity = new MekFileParser(summary.getSourceFile(), summary.getEntryName())
.getEntity();
if (refitEntity != null) {
Refit refit = new Refit(unit, refitEntity, crd.isCustomize(), false);
Refit refit = new Refit(unit, refitEntity, crd.isCustomize(), false, false);
if (refit.checkFixable() == null) {
gui.refitUnit(refit, false);
}
Expand Down
2 changes: 1 addition & 1 deletion MekHQ/src/mekhq/gui/dialog/ChooseRefitDialog.java
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ private void populateRefits() {
try {
Entity refitEn = new MekFileParser(summary.getSourceFile(), summary.getEntryName()).getEntity();
if (null != refitEn) {
Refit r = new Refit(unit, refitEn, false, false);
Refit r = new Refit(unit, refitEn, false, false, false);
if (null == r.checkFixable()) {
refits.add(r);
}
Expand Down
18 changes: 9 additions & 9 deletions MekHQ/unittests/mekhq/campaign/parts/RefitTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ public void newRefitCtor() {
oldUnit.initializeParts(false);

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
assertEquals(mockCampaign, refit.getCampaign());

// Should be old parts...
Expand Down Expand Up @@ -156,7 +156,7 @@ public void locust1Vto1ETest() {
oldUnit.initializeParts(false);

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
assertEquals(mockCampaign, refit.getCampaign());

//
Expand Down Expand Up @@ -238,7 +238,7 @@ public void testLocust1Vto1EWriteToXml() throws ParserConfigurationException, SA
}

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);

// Write the Refit XML
StringWriter sw = new StringWriter();
Expand Down Expand Up @@ -345,7 +345,7 @@ public void javelinJVN10Nto10ATest() {
oldUnit.initializeParts(false);

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
assertEquals(mockCampaign, refit.getCampaign());

//
Expand Down Expand Up @@ -428,7 +428,7 @@ public void testJavelinJVN10Nto10AWriteToXml() throws ParserConfigurationExcepti
}

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
refit.setTech(mockTech);
refit.addTimeSpent(60); // 1 hour of work!

Expand Down Expand Up @@ -537,7 +537,7 @@ public void fleaFLE4toFLE15Test() {
oldUnit.initializeParts(false);

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
assertEquals(mockCampaign, refit.getCampaign());

//
Expand Down Expand Up @@ -647,7 +647,7 @@ public void testFleaFLE4toFLE15WriteToXml() throws ParserConfigurationException,
}

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
refit.setTech(mockTech);
refit.addTimeSpent(60); // 1 hour of work!

Expand Down Expand Up @@ -768,7 +768,7 @@ public void heavyTrackedApcMgToStandard() throws EntityLoadingException, IOExcep
oldUnit.initializeParts(false);

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
assertEquals(mockCampaign, refit.getCampaign());

// We're removing 4 Machine Guns and a Full Bin of Machine Gun Ammo
Expand Down Expand Up @@ -819,7 +819,7 @@ public void testMasakariAtoMasakariB() {
oldUnit.initializeParts(false);

// Create the Refit
Refit refit = new Refit(oldUnit, newEntity, false, false);
Refit refit = new Refit(oldUnit, newEntity, false, false, false);
assertEquals(mockCampaign, refit.getCampaign());

// Omni reconfiguration
Expand Down

0 comments on commit de4c76b

Please sign in to comment.