Merge branch 'master' of evefit.org:pyfa

This commit is contained in:
cncfanatics
2010-10-17 11:22:50 +02:00
7 changed files with 45 additions and 9 deletions

View File

@@ -17,7 +17,7 @@
# along with pyfa. If not, see <http://www.gnu.org/licenses/>.
#===============================================================================
versionString = "0.0.1"
versionString = "1.0 pre-alpha"
license = "GNU GPL"
licenseLocation = "gpl.txt"
developers = ("cncfanatics" , "DarkPhoenix", "Darriele")

View File

@@ -18,4 +18,4 @@ gamedata = os.path.join(homePath, "eve.db")
# saveddata db location modifier, shouldn't ever need to touch this
import eos.config
eos.config.saveddata_connectionstring = "sqlite:///" + saveddata
eos.config.saveddata_connectionstring = "sqlite:///" + gamedata
eos.config.gamedata_connectionstring = "sqlite:///" + gamedata

View File

@@ -421,7 +421,6 @@ class ImplantsTreeView (wx.Panel):
self.pluggedImplantsTree.update(self.implants)
def charChanged(self, event):
print "charChanged"
cChar = service.Character.getInstance()
charID = self.Parent.Parent.getActiveCharacter()
name = cChar.getCharName(charID)
@@ -533,7 +532,12 @@ class APIView (wx.Panel):
pmainSizer.Add(self.btnFetchSkills, 0, wx.ALL, 5)
self.btnFetchSkills.Hide()
self.btnFetchSkills.Bind(wx.EVT_BUTTON, self.fetchSkills)
self.stAPITip = wx.StaticText( self, wx.ID_ANY, u"Your API info is available at:", wx.DefaultPosition, wx.DefaultSize, 0 )
self.stAPITip.Wrap( -1 )
pmainSizer.Add( self.stAPITip, 0, wx.ALL, 5 )
self.hlEveAPI = wx.HyperlinkCtrl( self, wx.ID_ANY, u"http://www.eveonline.com/api/default.asp", u"http://www.eveonline.com/api/default.asp", wx.DefaultPosition, wx.DefaultSize, wx.HL_DEFAULT_STYLE )
pmainSizer.Add( self.hlEveAPI, 0, wx.ALL, 5 )
self.SetSizer(pmainSizer)
self.Layout()
self.charChanged(None)

View File

@@ -49,6 +49,24 @@ class FittingView(d.Display):
self.activeFitID = None
self.Bind(wx.EVT_KEY_UP, self.kbEvent)
def kbEvent(self,event):
keycode = event.GetKeyCode()
if keycode == wx.WXK_DELETE or keycode == wx.WXK_NUMPAD_DELETE:
row = self.GetFirstSelected()
firstSel = row
while row != -1:
cFit = service.Fit.getInstance()
populate = cFit.removeModule(self.activeFitID, self.mods[self.GetItemData(row)].position)
self.Select(row,0)
row = self.GetNextSelected(row)
if populate is not None:
self.Select(firstSel)
if populate: self.slotsChanged()
wx.PostEvent(self.mainFrame, FitChanged(fitID=self.activeFitID))
event.Skip()
#Gets called from the fitMultiSwitch when it decides its time
def changeFit(self, fitID):
self.activeFitID = fitID

View File

@@ -32,7 +32,18 @@ class ImplantView(d.Display):
self.mainFrame.Bind(fv.FIT_CHANGED, self.fitChanged)
self.mainFrame.Bind(mb.ITEM_SELECTED, self.addItem)
self.Bind(wx.EVT_LEFT_DCLICK, self.removeItem)
self.Bind(wx.EVT_KEY_UP, self.kbEvent)
def kbEvent(self,event):
keycode = event.GetKeyCode()
if keycode == wx.WXK_DELETE or keycode == wx.WXK_NUMPAD_DELETE:
fitID = self.mainFrame.getActiveFit()
cFit = service.Fit.getInstance()
row = self.GetFirstSelected()
if row != -1:
cFit.removeImplant(fitID, self.GetItemData(row))
row = self.GetNextSelected(row)
wx.PostEvent(self.mainFrame, fv.FitChanged(fitID=fitID))
def fitChanged(self, event):
cFit = service.Fit.getInstance()
fit = cFit.getFit(event.fitID)

View File

@@ -54,8 +54,9 @@ class ItemStatsDialog(wx.Dialog):
if item.icon is not None:
before,sep,after = item.icon.iconFile.rpartition("_")
iconFile = "%s%s%s" % (before,sep,"0%s" % after if len(after) < 2 else after)
self.SetIcon(wx.IconFromBitmap(bitmapLoader.getBitmap(iconFile, "pack")))
itemImg = bitmapLoader.getBitmap(iconFile, "pack")
if itemImg is not None:
self.SetIcon(wx.IconFromBitmap(itemImg))
self.SetTitle("%s: %s" % ("%s stats" % context.capitalize() if context is not None else "Stats", item.name))
self.SetMinSize((300, 200))

View File

@@ -104,7 +104,8 @@ class ShipBrowser(wx.Panel):
if data is not None:
type, fitID = data
if type == "fit":
wx.PostEvent(self.mainFrame, FitSelected(fitID=fitID))
if self.mainFrame.getActiveFit() != fitID:
wx.PostEvent(self.mainFrame, FitSelected(fitID=fitID))
event.Skip()
@@ -154,7 +155,7 @@ class ShipBrowser(wx.Panel):
iconId = self.raceImageIds[race] if race in self.raceImageIds else -1
self.idRaceMap[id] = race
childId = tree.AppendItem(root, name, iconId, data=wx.TreeItemData(("ship", id)))
for fitID, fitName in cFit.getFitsWithShip(id):
for fitID, fitName in cFit.getFitsWithShip(id):
tree.AppendItem(childId, fitName, self.fitIconId, data=wx.TreeItemData(("fit", fitID)))
tree.SortChildren(root)
@@ -191,6 +192,7 @@ class ShipBrowser(wx.Panel):
event.Skip()
def changeFitName(self, event):
self.triggerFitSelect(event)
if event.IsEditCancelled():
return
@@ -286,7 +288,7 @@ class ShipBrowser(wx.Panel):
event.Skip()
def startSearch(self, event):
search = self.shipMenu.search.GetLineText(0)
if len(search) < 3:
self.clearSearch(event, False)
@@ -311,7 +313,7 @@ class ShipBrowser(wx.Panel):
iconId = self.raceImageIds[race] if race in self.raceImageIds else -1
self.idRaceMap[id] = race
childId = self.searchView.AppendItem(self.searchRoot, name, iconId, data=wx.TreeItemData(("ship", id)))
for fitID, fitName in cFit.getFitsWithShip(id):
for fitID, fitName in cFit.getFitsWithShip(id):
self.searchView.AppendItem(childId, fitName, self.fitIconId, data=wx.TreeItemData(("fit", fitID)))
foundFits = cMarket.searchFits(search)