MCPcopy Create free account
hub / github.com/pyfa-org/Pyfa / HandledBoosterList

Class HandledBoosterList

eos/effectHandlerHelpers.py:278–316  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

276
277
278class HandledBoosterList(HandledList):
279
280 def append(self, booster):
281 if booster.isInvalid:
282 HandledList.append(self, booster)
283 self.remove(booster)
284 return
285 if self.__slotCheck(booster):
286 HandledList.append(self, booster)
287 self.remove(booster)
288 return
289 HandledList.append(self, booster)
290
291 def insert(self, idx, booster):
292 if booster.isInvalid:
293 HandledList.insert(self, idx, booster)
294 self.remove(booster)
295 return
296 if self.__slotCheck(booster):
297 HandledList.insert(self, idx, booster)
298 self.remove(booster)
299 return
300 HandledList.insert(self, idx, booster)
301
302 def makeRoom(self, booster):
303 # if needed, remove booster that was occupying slot
304 oldObj = next((b for b in self if b.slot == booster.slot), None)
305 if oldObj is not None:
306 pyfalog.info("Slot {0} occupied with {1}, replacing with {2}", booster.slot, oldObj.item.name, booster.item.name)
307 position = self.index(oldObj)
308 from gui.fitCommands.helpers import BoosterInfo
309 boosterInfo = BoosterInfo.fromBooster(oldObj)
310 oldObj.itemID = 0 # hack to remove from DB. See GH issue #324
311 self.remove(oldObj)
312 return position, boosterInfo
313 return None, None
314
315 def __slotCheck(self, booster):
316 return any(b.slot == booster.slot for b in self)
317
318
319class HandledSsoCharacterList(list):

Callers 1

__init__Method · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected