1
0
mirror of https://github.com/EDCD/EDMarketConnector.git synced 2025-04-17 17:42:20 +03:00

sorted imports, manually formatted some super long lines

This commit is contained in:
A_D 2020-10-02 09:04:26 +02:00 committed by Athanasius
parent 2f35275024
commit c13caa22ef

View File

@ -1,27 +1,33 @@
from collections import OrderedDict
import csv import csv
from sys import platform
from functools import partial
import time import time
from collections import OrderedDict
from functools import partial
from sys import platform
from typing import TYPE_CHECKING
if __debug__: if __debug__:
from traceback import print_exc from traceback import print_exc
import tkinter as tk import tkinter as tk
from tkinter import ttk from tkinter import ttk
import myNotebook as nb
import companion import companion
import myNotebook as nb
from companion import ship_map from companion import ship_map
from l10n import Locale from l10n import Locale
from monitor import monitor from monitor import monitor
import prefs
if TYPE_CHECKING:
def _(x: str) -> str: ...
if platform=='win32': if platform=='win32':
import ctypes import ctypes
from ctypes.wintypes import * from ctypes.wintypes import *
try: try:
CalculatePopupWindowPosition = ctypes.windll.user32.CalculatePopupWindowPosition CalculatePopupWindowPosition = ctypes.windll.user32.CalculatePopupWindowPosition
CalculatePopupWindowPosition.argtypes = [ctypes.POINTER(POINT), ctypes.POINTER(SIZE), UINT, ctypes.POINTER(RECT), ctypes.POINTER(RECT)] CalculatePopupWindowPosition.argtypes = [
ctypes.POINTER(POINT), ctypes.POINTER(SIZE), UINT, ctypes.POINTER(RECT), ctypes.POINTER(RECT)
]
GetParent = ctypes.windll.user32.GetParent GetParent = ctypes.windll.user32.GetParent
GetParent.argtypes = [HWND] GetParent.argtypes = [HWND]
GetWindowRect = ctypes.windll.user32.GetWindowRect GetWindowRect = ctypes.windll.user32.GetWindowRect
@ -153,7 +159,6 @@ def export_status(data, filename):
# Returns id,name,shipName,system,station,value # Returns id,name,shipName,system,station,value
def ships(data): def ships(data):
ships = companion.listify(data.get('ships')) ships = companion.listify(data.get('ships'))
current = data['commander'].get('currentShipId') current = data['commander'].get('currentShipId')
@ -162,10 +167,35 @@ def ships(data):
if not data['commander'].get('docked'): if not data['commander'].get('docked'):
# Set current system, not last docked # Set current system, not last docked
return ([ (str(ships[0]['id']), ship_map.get(ships[0]['name'].lower(), ships[0]['name']), ships[0].get('shipName', ''), data['lastSystem']['name'], '', str(ships[0]['value']['total'])) ] + return (
[ (str(ship['id']), ship_map.get(ship['name'].lower(), ship['name']), ship.get('shipName', ''), ship['starsystem']['name'], ship['station']['name'], str(ship['value']['total'])) for ship in ships[1:] if ship]) [(
str(ships[0]['id']),
ship_map.get(ships[0]['name'].lower(),
ships[0]['name']),
ships[0].get('shipName', ''),
data['lastSystem']['name'],
'', str(ships[0]['value']['total'])
)] +
[(
str(ship['id']), ship_map.get(ship['name'].lower(),
ship['name']),
ship.get('shipName', ''),
ship['starsystem']['name'],
ship['station']['name'],
str(ship['value']['total'])) for ship in ships[1:] if ship
])
return [
(
str(ship['id']),
ship_map.get(ship['name'].lower(), ship['name']),
ship.get('shipName', ''),
ship['starsystem']['name'],
ship['station']['name'],
str(ship['value']['total'])
) for ship in ships if ship
]
return [ (str(ship['id']), ship_map.get(ship['name'].lower(), ship['name']), ship.get('shipName', ''), ship['starsystem']['name'], ship['station']['name'], str(ship['value']['total'])) for ship in ships if ship]
def export_ships(data, filename): def export_ships(data, filename):
h = csv.writer(open(filename, 'w')) h = csv.writer(open(filename, 'w'))
@ -190,9 +220,11 @@ class StatsDialog():
try: try:
data = companion.session.profile() data = companion.session.profile()
except companion.ServerError as e: except companion.ServerError as e:
self.status['text'] = str(e) self.status['text'] = str(e)
return return
except Exception as e: except Exception as e:
if __debug__: print_exc() if __debug__: print_exc()
self.status['text'] = str(e) self.status['text'] = str(e)
@ -200,10 +232,18 @@ class StatsDialog():
if not data.get('commander') or not data['commander'].get('name','').strip(): if not data.get('commander') or not data['commander'].get('name','').strip():
self.status['text'] = _("Who are you?!") # Shouldn't happen self.status['text'] = _("Who are you?!") # Shouldn't happen
elif not data.get('lastSystem') or not data['lastSystem'].get('name','').strip() or not data.get('lastStarport') or not data['lastStarport'].get('name','').strip():
elif (
not data.get('lastSystem')
or not data['lastSystem'].get('name','').strip()
or not data.get('lastStarport')
or not data['lastStarport'].get('name','').strip()
):
self.status['text'] = _("Where are you?!") # Shouldn't happen self.status['text'] = _("Where are you?!") # Shouldn't happen
elif not data.get('ship') or not data['ship'].get('modules') or not data['ship'].get('name','').strip(): elif not data.get('ship') or not data['ship'].get('modules') or not data['ship'].get('name','').strip():
self.status['text'] = _("What are you flying?!") # Shouldn't happen self.status['text'] = _("What are you flying?!") # Shouldn't happen
else: else:
self.status['text'] = '' self.status['text'] = ''
StatsResults(self.parent, data) StatsResults(self.parent, data)
@ -242,8 +282,10 @@ class StatsResults(tk.Toplevel):
page = self.addpage(notebook) page = self.addpage(notebook)
for thing in stats[1:3]: for thing in stats[1:3]:
self.addpagerow(page, [thing[0], self.credits(int(thing[1]))]) # assumes things two and three are money self.addpagerow(page, [thing[0], self.credits(int(thing[1]))]) # assumes things two and three are money
for thing in stats[3:]: for thing in stats[3:]:
self.addpagerow(page, thing) self.addpagerow(page, thing)
ttk.Frame(page).grid(pady=5) # bottom spacer ttk.Frame(page).grid(pady=5) # bottom spacer
notebook.add(page, text=_('Status')) # Status dialog title notebook.add(page, text=_('Status')) # Status dialog title
@ -257,6 +299,7 @@ class StatsResults(tk.Toplevel):
shiplist = ships(data) shiplist = ships(data)
for thing in shiplist: for thing in shiplist:
self.addpagerow(page, list(thing[1:-1]) + [self.credits(int(thing[-1]))]) # skip id, last item is money self.addpagerow(page, list(thing[1:-1]) + [self.credits(int(thing[-1]))]) # skip id, last item is money
ttk.Frame(page).grid(pady=5) # bottom spacer ttk.Frame(page).grid(pady=5) # bottom spacer
notebook.add(page, text=_('Ships')) # Status dialog title notebook.add(page, text=_('Ships')) # Status dialog title
@ -286,6 +329,7 @@ class StatsResults(tk.Toplevel):
page.columnconfigure(0, weight=1) page.columnconfigure(0, weight=1)
if header: if header:
self.addpageheader(page, header, align=align) self.addpageheader(page, header, align=align)
return page return page
def addpageheader(self, parent, header, align=None): def addpageheader(self, parent, header, align=None):
@ -301,8 +345,10 @@ class StatsResults(tk.Toplevel):
if i == 0: if i == 0:
label.grid(padx=10, sticky=tk.W) label.grid(padx=10, sticky=tk.W)
row = parent.grid_size()[1]-1 row = parent.grid_size()[1]-1
elif align is None and i == len(content) - 1: # Assumes last column right justified if unspecified elif align is None and i == len(content) - 1: # Assumes last column right justified if unspecified
label.grid(row=row, column=i, padx=10, sticky=tk.E) label.grid(row=row, column=i, padx=10, sticky=tk.E)
else: else:
label.grid(row=row, column=i, padx=10, sticky=align or tk.W) label.grid(row=row, column=i, padx=10, sticky=align or tk.W)