MCPcopy Index your code
hub / github.com/pyfa-org/Pyfa / toModule

Method toModule

gui/fitCommands/helpers.py:102–145  ·  view source on GitHub ↗
(self, fallbackState=None)

Source from the content-addressed store, hash-verified

100 return info
101
102 def toModule(self, fallbackState=None):
103 mkt = Market.getInstance()
104
105 item = mkt.getItem(self.itemID, eager=('attributes', 'group.category'))
106 if self.baseItemID and self.mutaplasmidID:
107 baseItem = mkt.getItem(self.baseItemID, eager=('attributes', 'group.category'))
108 mutaplasmid = eos.db.getDynamicItem(self.mutaplasmidID)
109 else:
110 baseItem = None
111 mutaplasmid = None
112 try:
113 mod = Module(item, baseItem=baseItem, mutaplasmid=mutaplasmid)
114 except ValueError:
115 pyfalog.warning('Invalid item: {}'.format(self.itemID))
116 return None
117
118 if self.mutations is not None:
119 for attrID, mutator in mod.mutators.items():
120 if attrID in self.mutations:
121 mutator.value = self.mutations[attrID]
122
123 if self.spoolType is not None and self.spoolAmount is not None:
124 mod.spoolType = self.spoolType
125 mod.spoolAmount = self.spoolAmount
126
127 mod.rahPatternOverride = self.rahPattern
128
129 if self.state is not None:
130 if mod.isValidState(self.state):
131 mod.state = self.state
132 else:
133 mod.state = mod.getMaxState(proposedState=self.state)
134 elif fallbackState is not None:
135 if mod.isValidState(fallbackState):
136 mod.state = fallbackState
137
138 if self.chargeID is not None:
139 charge = mkt.getItem(self.chargeID, eager=('attributes',))
140 if charge is None:
141 pyfalog.warning('Cannot set charge {}'.format(self.chargeID))
142 return None
143 mod.charge = charge
144
145 return mod
146
147 def __eq__(self, other):
148 if not isinstance(other, ModuleInfo):

Callers 4

DoMethod · 0.80
DoMethod · 0.80
DoMethod · 0.80
UndoMethod · 0.80

Calls 7

isValidStateMethod · 0.95
getMaxStateMethod · 0.95
ModuleClass · 0.90
getItemMethod · 0.80
getDynamicItemMethod · 0.80
itemsMethod · 0.80
getInstanceMethod · 0.45

Tested by

no test coverage detected