mirror of
https://github.com/EDCD/EDMarketConnector.git
synced 2025-06-09 11:52:27 +03:00
autoformatted and sorted imports
This commit is contained in:
parent
faf4906eea
commit
ebc34d858c
76
prefs.py
76
prefs.py
@ -1,24 +1,23 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from os.path import dirname, expanduser, expandvars, exists, isdir, join, normpath
|
||||
from sys import platform
|
||||
import webbrowser
|
||||
|
||||
import logging
|
||||
import tkinter as tk
|
||||
from tkinter import ttk
|
||||
import webbrowser
|
||||
from os.path import exists, expanduser, expandvars, join, normpath
|
||||
from sys import platform
|
||||
from tkinter import colorchooser as tkColorChooser
|
||||
from ttkHyperlinkLabel import HyperlinkLabel
|
||||
import myNotebook as nb
|
||||
from tkinter import ttk
|
||||
|
||||
from config import appname, applongname, config, appversion
|
||||
import myNotebook as nb
|
||||
import plug
|
||||
from config import applongname, appname, appversion, config
|
||||
from EDMCLogging import edmclogger
|
||||
from hotkey import hotkeymgr
|
||||
from l10n import Translations
|
||||
from monitor import monitor
|
||||
from theme import theme
|
||||
from ttkHyperlinkLabel import HyperlinkLabel
|
||||
|
||||
import plug
|
||||
import logging
|
||||
logger = logging.getLogger(appname)
|
||||
from EDMCLogging import edmclogger
|
||||
|
||||
###########################################################################
|
||||
# Versioned preferences, so we know whether to set an 'on' default on
|
||||
@ -26,6 +25,8 @@ from EDMCLogging import edmclogger
|
||||
###########################################################################
|
||||
|
||||
# May be imported by plugins
|
||||
|
||||
|
||||
class PrefsVersion(object):
|
||||
versions = {
|
||||
'0.0.0.0': 1,
|
||||
@ -33,7 +34,8 @@ class PrefsVersion(object):
|
||||
'3.4.6.0': 3,
|
||||
'3.5.1.0': 4,
|
||||
# Only add new versions that add new Preferences
|
||||
'current': 4, # Should always match the last specific version, but only increment after you've added the new version. Guess at it if anticipating a new version.
|
||||
# Should always match the last specific version, but only increment after you've added the new version. Guess at it if anticipating a new version.
|
||||
'current': 4,
|
||||
}
|
||||
|
||||
def __init__(self):
|
||||
@ -81,6 +83,7 @@ class PrefsVersion(object):
|
||||
return False
|
||||
###########################################################################
|
||||
|
||||
|
||||
prefsVersion = PrefsVersion()
|
||||
###########################################################################
|
||||
|
||||
@ -127,6 +130,7 @@ elif platform=='win32':
|
||||
except: # Not supported under Wine 4.0
|
||||
CalculatePopupWindowPosition = None
|
||||
|
||||
|
||||
class PreferencesDialog(tk.Toplevel):
|
||||
|
||||
def __init__(self, parent, callback):
|
||||
@ -134,8 +138,7 @@ class PreferencesDialog(tk.Toplevel):
|
||||
|
||||
self.parent = parent
|
||||
self.callback = callback
|
||||
self.title(platform=='darwin' and _('Preferences') or
|
||||
_('Settings'))
|
||||
self.title(platform == 'darwin' and _('Preferences') or _('Settings'))
|
||||
|
||||
if parent.winfo_viewable():
|
||||
self.transient(parent)
|
||||
@ -240,13 +243,17 @@ class PreferencesDialog(tk.Toplevel):
|
||||
).grid(row=20, padx=PADX, sticky=tk.W)
|
||||
if platform == 'darwin' and not was_accessible_at_launch:
|
||||
if AXIsProcessTrusted():
|
||||
nb.Label(configframe, text = _('Re-start {APP} to use shortcuts').format(APP=applongname), foreground='firebrick').grid(padx=PADX, sticky=tk.W) # Shortcut settings prompt on OSX
|
||||
nb.Label(configframe, text=_('Re-start {APP} to use shortcuts').format(APP=applongname),
|
||||
foreground='firebrick').grid(padx=PADX, sticky=tk.W) # Shortcut settings prompt on OSX
|
||||
else:
|
||||
nb.Label(configframe, text = _('{APP} needs permission to use shortcuts').format(APP=applongname), foreground='firebrick').grid(columnspan=4, padx=PADX, sticky=tk.W) # Shortcut settings prompt on OSX
|
||||
nb.Button(configframe, text = _('Open System Preferences'), command = self.enableshortcuts).grid(padx=PADX, sticky=tk.E) # Shortcut settings button on OSX
|
||||
nb.Label(configframe, text=_('{APP} needs permission to use shortcuts').format(
|
||||
APP=applongname), foreground='firebrick').grid(columnspan=4, padx=PADX, sticky=tk.W) # Shortcut settings prompt on OSX
|
||||
nb.Button(configframe, text=_('Open System Preferences'), command=self.enableshortcuts).grid(
|
||||
padx=PADX, sticky=tk.E) # Shortcut settings button on OSX
|
||||
else:
|
||||
self.hotkey_text = nb.Entry(configframe, width=(platform == 'darwin' and 20 or 30), justify=tk.CENTER)
|
||||
self.hotkey_text.insert(0, self.hotkey_code and hotkeymgr.display(self.hotkey_code, self.hotkey_mods) or _('None')) # No hotkey/shortcut currently defined
|
||||
self.hotkey_text.insert(0, self.hotkey_code and hotkeymgr.display(
|
||||
self.hotkey_code, self.hotkey_mods) or _('None')) # No hotkey/shortcut currently defined
|
||||
self.hotkey_text.bind('<FocusIn>', self.hotkeystart)
|
||||
self.hotkey_text.bind('<FocusOut>', self.hotkeyend)
|
||||
self.hotkey_text.grid(row=20, column=1, columnspan=2, pady=(5, 0), sticky=tk.W)
|
||||
@ -258,16 +265,19 @@ class PreferencesDialog(tk.Toplevel):
|
||||
# Option to disabled Automatic Check For Updates whilst in-game
|
||||
ttk.Separator(configframe, orient=tk.HORIZONTAL).grid(columnspan=4, padx=PADX, pady=PADY*4, sticky=tk.EW)
|
||||
self.disable_autoappupdatecheckingame = tk.IntVar(value=config.getint('disable_autoappupdatecheckingame'))
|
||||
self.disable_autoappupdatecheckingame_btn = nb.Checkbutton(configframe, text=_('Disable Automatic Application Updates Check when in-game'), variable=self.disable_autoappupdatecheckingame, command=self.disable_autoappupdatecheckingame_changed)
|
||||
self.disable_autoappupdatecheckingame_btn = nb.Checkbutton(configframe, text=_(
|
||||
'Disable Automatic Application Updates Check when in-game'), variable=self.disable_autoappupdatecheckingame, command=self.disable_autoappupdatecheckingame_changed)
|
||||
self.disable_autoappupdatecheckingame_btn.grid(columnspan=4, padx=PADX, sticky=tk.W)
|
||||
|
||||
|
||||
ttk.Separator(configframe, orient=tk.HORIZONTAL).grid(columnspan=4, padx=PADX, pady=PADY*4, sticky=tk.EW)
|
||||
nb.Label(configframe, text=_('Preferred websites')).grid(row=30, columnspan=4, padx=PADX, sticky=tk.W) # Settings prompt for preferred ship loadout, system and station info websites
|
||||
# Settings prompt for preferred ship loadout, system and station info websites
|
||||
nb.Label(configframe, text=_('Preferred websites')).grid(row=30, columnspan=4, padx=PADX, sticky=tk.W)
|
||||
|
||||
self.shipyard_provider = tk.StringVar(value=config.get('shipyard_provider') in plug.provides('shipyard_url') and config.get('shipyard_provider') or 'EDSY')
|
||||
nb.Label(configframe, text=_('Shipyard')).grid(row=31, padx=PADX, pady=2*PADY, sticky=tk.W) # Setting to decide which ship outfitting website to link to - either E:D Shipyard or Coriolis
|
||||
self.shipyard_button = nb.OptionMenu(configframe, self.shipyard_provider, self.shipyard_provider.get(), *plug.provides('shipyard_url'))
|
||||
# Setting to decide which ship outfitting website to link to - either E:D Shipyard or Coriolis
|
||||
nb.Label(configframe, text=_('Shipyard')).grid(row=31, padx=PADX, pady=2*PADY, sticky=tk.W)
|
||||
self.shipyard_button = nb.OptionMenu(configframe, self.shipyard_provider,
|
||||
self.shipyard_provider.get(), *plug.provides('shipyard_url'))
|
||||
self.shipyard_button.configure(width=15)
|
||||
self.shipyard_button.grid(row=31, column=1, sticky=tk.W)
|
||||
# Option for alternate URL opening
|
||||
@ -279,7 +289,8 @@ class PreferencesDialog(tk.Toplevel):
|
||||
)
|
||||
self.alt_shipyard_open_btn.grid(row=31, column=2, sticky=tk.W)
|
||||
|
||||
self.system_provider = tk.StringVar(value = config.get('system_provider') in plug.provides('system_url') and config.get('system_provider') or 'EDSM')
|
||||
self.system_provider = tk.StringVar(value=config.get('system_provider') in plug.provides(
|
||||
'system_url') and config.get('system_provider') or 'EDSM')
|
||||
nb.Label(configframe, text=_('System')).grid(row=32, padx=PADX, pady=2*PADY, sticky=tk.W)
|
||||
self.system_button = nb.OptionMenu(configframe, self.system_provider,self.system_provider.get(), *plug.provides('system_url'))
|
||||
self.system_button.configure(width=15)
|
||||
@ -308,7 +319,6 @@ class PreferencesDialog(tk.Toplevel):
|
||||
|
||||
notebook.add(configframe, text=_('Configuration')) # Tab heading in settings
|
||||
|
||||
|
||||
self.languages = Translations.available_names()
|
||||
self.lang = tk.StringVar(value=self.languages.get(config.get('language'), _('Default'))) # Appearance theme and language setting
|
||||
self.always_ontop = tk.BooleanVar(value=config.getint('always_ontop'))
|
||||
@ -325,10 +335,13 @@ class PreferencesDialog(tk.Toplevel):
|
||||
self.lang_button.grid(row=10, column=1, columnspan=2, padx=PADX, sticky=tk.W)
|
||||
ttk.Separator(themeframe, orient=tk.HORIZONTAL).grid(columnspan=3, padx=PADX, pady=PADY*4, sticky=tk.EW)
|
||||
nb.Label(themeframe, text=_('Theme')).grid(columnspan=3, padx=PADX, sticky=tk.W) # Appearance setting
|
||||
nb.Radiobutton(themeframe, text=_('Default'), variable=self.theme, value=0, command=self.themevarchanged).grid(columnspan=3, padx=BUTTONX, sticky=tk.W) # Appearance theme and language setting
|
||||
nb.Radiobutton(themeframe, text=_('Dark'), variable=self.theme, value=1, command=self.themevarchanged).grid(columnspan=3, padx=BUTTONX, sticky=tk.W) # Appearance theme setting
|
||||
nb.Radiobutton(themeframe, text=_('Default'), variable=self.theme, value=0, command=self.themevarchanged).grid(
|
||||
columnspan=3, padx=BUTTONX, sticky=tk.W) # Appearance theme and language setting
|
||||
nb.Radiobutton(themeframe, text=_('Dark'), variable=self.theme, value=1, command=self.themevarchanged).grid(
|
||||
columnspan=3, padx=BUTTONX, sticky=tk.W) # Appearance theme setting
|
||||
if platform == 'win32':
|
||||
nb.Radiobutton(themeframe, text=_('Transparent'), variable=self.theme, value=2, command=self.themevarchanged).grid(columnspan=3, padx=BUTTONX, sticky=tk.W) # Appearance theme setting
|
||||
nb.Radiobutton(themeframe, text=_('Transparent'), variable=self.theme, value=2, command=self.themevarchanged).grid(
|
||||
columnspan=3, padx=BUTTONX, sticky=tk.W) # Appearance theme setting
|
||||
self.theme_label_0 = nb.Label(themeframe, text=self.theme_prompts[0])
|
||||
self.theme_label_0.grid(row=20, padx=PADX, sticky=tk.W)
|
||||
self.theme_button_0 = nb.ColoredButton(themeframe, text=_('Station'), background='grey4', command=lambda: self.themecolorbrowse(0)) # Main window
|
||||
@ -555,7 +568,8 @@ class PreferencesDialog(tk.Toplevel):
|
||||
config.set('use_alt_shipyard_open', self.alt_shipyard_open.get())
|
||||
|
||||
def themecolorbrowse(self, index):
|
||||
(rgb, color) = tkColorChooser.askcolor(self.theme_colors[index], title=self.theme_prompts[index], parent=self.parent)
|
||||
(rgb, color) = tkColorChooser.askcolor(
|
||||
self.theme_colors[index], title=self.theme_prompts[index], parent=self.parent)
|
||||
if color:
|
||||
self.theme_colors[index] = color
|
||||
self.themevarchanged()
|
||||
@ -580,7 +594,8 @@ class PreferencesDialog(tk.Toplevel):
|
||||
event.widget.unbind('<KeyRelease>')
|
||||
hotkeymgr.acquire_stop() # in case focus was lost while in the middle of acquiring
|
||||
event.widget.delete(0, tk.END)
|
||||
self.hotkey_text.insert(0, self.hotkey_code and hotkeymgr.display(self.hotkey_code, self.hotkey_mods) or _('None')) # No hotkey/shortcut currently defined
|
||||
self.hotkey_text.insert(0, self.hotkey_code and hotkeymgr.display(
|
||||
self.hotkey_code, self.hotkey_mods) or _('None')) # No hotkey/shortcut currently defined
|
||||
|
||||
def hotkeylisten(self, event):
|
||||
good = hotkeymgr.fromevent(event)
|
||||
@ -609,7 +624,6 @@ class PreferencesDialog(tk.Toplevel):
|
||||
self.hotkey_only_btn.focus() # move to next widget - calls hotkeyend() implicitly
|
||||
return('break') # stops further processing - insertion, Tab traversal etc
|
||||
|
||||
|
||||
def apply(self):
|
||||
config.set('PrefsVersion', prefsVersion.stringToSerial(appversion))
|
||||
config.set('output',
|
||||
|
Loading…
x
Reference in New Issue
Block a user