From 7a33aba32986a688b16fc26bd393329a20670bfe Mon Sep 17 00:00:00 2001 From: blitzmann Date: Thu, 13 Mar 2014 00:14:57 -0400 Subject: [PATCH] Finished visual improvements to the HTML export and removed debugging statements --- gui/utils/exportHtml.py | 194 +++++++++++++++++++++------------------- 1 file changed, 102 insertions(+), 92 deletions(-) diff --git a/gui/utils/exportHtml.py b/gui/utils/exportHtml.py index 287495c14..2fb672fcd 100644 --- a/gui/utils/exportHtml.py +++ b/gui/utils/exportHtml.py @@ -12,11 +12,9 @@ class exportHtml(): return cls._instance def __init__(self): - print "init exportHtml()" self.thread = exportHtmlThread() def refreshFittingHTMl(self): - print "refresh HTML" settings = service.settings.HTMLExportSettings.getInstance() if (settings.getEnabled()): @@ -34,7 +32,6 @@ class exportHtmlThread(threading.Thread): self.stopRunning = True def run(self): - print "run" # wait 1 second just in case a lot of modifications get made time.sleep(1); if self.stopRunning: @@ -45,101 +42,114 @@ class exportHtmlThread(threading.Thread): settings = service.settings.HTMLExportSettings.getInstance() HTML = """ - - - - My Page - - - - - - - -
-
-

PyFa fits

-
-
- """ - HTML += '
    '; - categoryList = []; - self.categoryList = list(sMarket.getShipRoot()) - self.categoryList.sort(key=lambda ship: ship.name) - for shipType in self.categoryList: - HTMLgroup = ( - '
  • \n' - '\t

    ' + shipType.groupName + '

    \n' - '\t
      \n') - ships = sMarket.getShipList(shipType.ID) - for ship in ships: - HTMLship = ( - '\t\t
    • \n' - '\t\t

      ' + ship.name + '

      \n' - '\t\t\t
        \n') - fits = sFit.getFitsWithShip(ship.ID) - for fit in fits: - if self.stopRunning: - return; - dnaFit = sFit.exportDna(fit[0]) - HTMLship += "\t\t\t\t
      • " + fit[1] + "
      • \n" + + + + Pyfa Fittings + + + + + + + +
        +
        +

        Pyfa fits

        +
        +
        - HTMLship += "\t\t\t
      \n\t\t
    • \n" +""" + HTML += '
        \n' + categoryList = list(sMarket.getShipRoot()) + categoryList.sort(key=lambda ship: ship.name) + for group in categoryList: + # init market group string to give ships something to attach to + HTMLgroup = '' + + ships = list(sMarket.getShipList(group.ID)) + ships.sort(key=lambda ship: ship.name) + + # Keep track of how many ships per group + groupFits = 0 + for ship in ships: + fits = sFit.getFitsWithShip(ship.ID) if len(fits) > 0: - HTMLgroup += HTMLship - HTMLgroup += "\t
      \n\n" - if len(ships) > 0: - HTML += HTMLgroup + groupFits += len(fits) + + # Ship group header + HTMLship = ( + '
    • \n' + '

      ' + ship.name + ' '+str(len(fits))+'

      \n' + '
        \n') + + for fit in fits: + if self.stopRunning: + return; + dnaFit = sFit.exportDna(fit[0]) + HTMLship += "
      • " + fit[1] + "
      • \n" + + HTMLgroup += HTMLship + ('
      \n' + '
    • \n') + if groupFits > 0: + # Market group header + HTML += ( + '
    • \n' + '

      ' + group.groupName + ' '+str(groupFits)+'

      \n' + '
        \n' + + HTMLgroup + + '
      \n' + '
    • ') HTML += """ -
    -
-
- - """ + + + + +""" try: - print "write" FILE = open(settings.getPath(), "w") FILE.write(HTML.encode('utf-8')); FILE.close();