mirror of
https://github.com/aclist/dztui.git
synced 2026-10-30 22:52:42 +01:00
feat: dzgui 7 alpha
This commit is contained in:
1 parent
1acdbd58c5
commit
2e5b771137
150 files changed
+10359
No files matched your search
@@ -0,0 +1,53 @@
|
||||
APPID_DAYZ = 221100
|
||||
APPID_DAYZ_EXP = 1024020
|
||||
UDP_PORT = 27016
|
||||
VM_FILE = "/proc/sys/vm/max_map_count"
|
||||
MIN_COUNT = 1048576
|
||||
|
||||
REQUEST_TIMEOUT = 3
|
||||
|
||||
APPNAME_DAYZ = "DayZ"
|
||||
APPNAME_DAYZ_EXP = "DayZ Experimental"
|
||||
DAYZ_BINARY = "DayZ_x64.exe"
|
||||
|
||||
LIBRARYFOLDERS_PATH = "steamapps/libraryfolders.vdf"
|
||||
WORKSHOP_PATH = "steamapps/workshop/content/" + str(APPID_DAYZ)
|
||||
|
||||
STEAM_CMD = "steam"
|
||||
FLATPAK_CMD = "flatpak"
|
||||
FLATPAK_APPID = "com.valvesoftware.Steam"
|
||||
FLATPAK_RUN_CMD = "flatpak run " + FLATPAK_APPID
|
||||
FLATPAK_SANDBOX = "flatpak-spawn --host flatpak run " + FLATPAK_APPID
|
||||
|
||||
AUTHOR = "aclist"
|
||||
STABLE_REPO = "stable"
|
||||
BETA_REPO = "testing"
|
||||
|
||||
APP_NAME = "DZGUI"
|
||||
APP_NAME_LOWER = "dzgui"
|
||||
APP_NAME_ABBR = "dzg"
|
||||
|
||||
HEX_RED = "#FF0000"
|
||||
HEX_ORANGE = "#FFAC1C"
|
||||
|
||||
VIEW_CONCEAL = "view-conceal-symbolic"
|
||||
VIEW_REVEAL = "view-reveal-symbolic"
|
||||
INPUT_KEYBOARD = "input-keyboard-symbolic"
|
||||
HELP_BUBBLE = "help-about-symbolic"
|
||||
WEB_BROWSER = "web-browser-symbolic"
|
||||
|
||||
SEPARATOR = "SEPARATOR"
|
||||
|
||||
NO_EXPAND = False
|
||||
NO_FILL = False
|
||||
EXPAND = True
|
||||
FILL = True
|
||||
|
||||
SCROLL_INCREMENT = 50
|
||||
WINDOW_DEFAULT_X = 1400
|
||||
WINDOW_DEFAULT_Y = 800
|
||||
|
||||
LEGACY_CONFIG_PATH = ".config/dztui/dztuirc"
|
||||
|
||||
DEBUG_LOG = f"{APP_NAME}_DEBUG.LOG"
|
||||
SYSTEM_LOG = f"{APP_NAME}_SYSTEM.LOG"
|
||||
@@ -0,0 +1,23 @@
|
||||
# internal
|
||||
STEAM_SERVERS = "https://api.steampowered.com/IGameServersService/GetServerList/v1/?"
|
||||
BM_SERVERS = "https://api.battlemetrics.com/servers?"
|
||||
GITHUB = "https://github.com/aclist"
|
||||
GITHUB_RELEASES = "https://api.github.com/repos/aclist/dztui/releases/latest"
|
||||
CODEBERG_RELEASES = "https://codeberg.org/api/v1/repos/aclist/dzgui/releases/latest"
|
||||
DB_IP = "https://db-ip.com/db/download/ip-to-city-lite"
|
||||
IP_ECHO = "https://ipecho.net/plain"
|
||||
COORDS_API = "http://ip-api.com/json"
|
||||
|
||||
# steam URIs
|
||||
WORKSHOP = "steam://url/CommunityFilePage/"
|
||||
OPEN_URL = "steam://openurl/"
|
||||
|
||||
# user facing
|
||||
GITHUB_PAGES = "https://aclist.github.io/dzgui/index"
|
||||
CODEBERG_PAGES = "https://aclist.codeberg.page"
|
||||
GITHUB_ISSUES = "https://github.com/aclist/dzgui/issues"
|
||||
FORUM = "https://old.reddit.com/r/dzgui"
|
||||
SPONSORS = "https://github.com/sponsors/aclist"
|
||||
STEAM_API_SETUP = "https://steamcommunity.com/dev/apikey"
|
||||
BM_API_SETUP = "https://www.battlemetrics.com/developers"
|
||||
BM_BROWSE = "https://www.battlemetrics.com/servers/dayz"
|
||||
@@ -0,0 +1,525 @@
|
||||
from enum import Enum
|
||||
from typing import Self
|
||||
|
||||
from dzgui.util import strings
|
||||
|
||||
|
||||
class Port(Enum):
|
||||
DEFAULT = 1
|
||||
CUSTOM = 2
|
||||
|
||||
|
||||
class Popup(Enum):
|
||||
WAIT = 1
|
||||
NOTIFY = 2
|
||||
CONFIRM = 3
|
||||
ENTRY = 4
|
||||
RETURN = 5
|
||||
MODLIST = 6
|
||||
DETAILS = 7
|
||||
QUIT = 8
|
||||
|
||||
|
||||
class Command(Enum):
|
||||
INTERACTIVE = 1
|
||||
ONESHOT = 2
|
||||
HELP = 3
|
||||
TOGGLE = 4
|
||||
THANKS = 5
|
||||
|
||||
|
||||
class VAdjustment(Enum):
|
||||
UP = 1
|
||||
DOWN = 2
|
||||
TOP = 3
|
||||
BOTTOM = 4
|
||||
|
||||
|
||||
class CursorPosition(Enum):
|
||||
UP = 1
|
||||
DOWN = 2
|
||||
TOP = 3
|
||||
BOTTOM = 4
|
||||
|
||||
|
||||
class FilterMode(Enum):
|
||||
KEYWORD = 1
|
||||
MAP = 2
|
||||
INITIAL = 3
|
||||
TOGGLE_OFF = 4
|
||||
TOGGLE_ON = 5
|
||||
|
||||
|
||||
class EnumWithAttrs(Enum):
|
||||
def __new__(cls, *args, **kwargs) -> Self:
|
||||
value = len(cls.__members__) + 1
|
||||
obj = object.__new__(cls)
|
||||
obj._value_ = value
|
||||
return obj
|
||||
|
||||
def __init__(self, d: dict):
|
||||
self.dict = d
|
||||
|
||||
class Preferences(EnumWithAttrs):
|
||||
STEAM = {"key": "steam_api",}
|
||||
BM = {"key": "bm_api",}
|
||||
CLIENT = {"key": "client",}
|
||||
WINDOW = {"key": "fullscreen",}
|
||||
DIST = {"key": "use_miles",}
|
||||
NAME = {"key": "name",}
|
||||
INSTALL = {"key": "auto_install",}
|
||||
DEBUG = {"key": "debug",}
|
||||
DEFAULT = {"key": "default_steam_path",}
|
||||
FAV_LBL = {"key": "fav_label",}
|
||||
FAV_SRV = {"key": "fav_server",}
|
||||
IP_LIST = {"key": "ip_list",}
|
||||
BRANCH = {"key": "branch",}
|
||||
|
||||
|
||||
class NotebookPage(EnumWithAttrs):
|
||||
CHANGELOG = {"crumbs": strings.crumbs.changelog,}
|
||||
HISTORY = {"crumbs": strings.crumbs.history,}
|
||||
KEYS = {"crumbs": strings.crumbs.keys,}
|
||||
LAN = {"crumbs": strings.crumbs.lan,}
|
||||
LOG = {"crumbs": strings.crumbs.log,}
|
||||
MAIN = {"crumbs": strings.crumbs.main,}
|
||||
MODS = {"crumbs": strings.crumbs.mods,}
|
||||
MY_SERVERS = {"crumbs": strings.crumbs.my_servers,}
|
||||
OPTIONS = {"crumbs": strings.crumbs.options,}
|
||||
SERVERS = {"crumbs": strings.crumbs.servers,}
|
||||
THANKS = {"crumbs": strings.crumbs.thanks,}
|
||||
|
||||
|
||||
class RowType(EnumWithAttrs):
|
||||
@classmethod
|
||||
def str2rowtype(cls, string: str) -> "RowType":
|
||||
for member in cls:
|
||||
if string == member.dict["label"]:
|
||||
return member
|
||||
return RowType.DYNAMIC
|
||||
|
||||
# specialized behavior
|
||||
# TODO: deprecated
|
||||
DYNAMIC = {
|
||||
"label": None,
|
||||
"tooltip": None,
|
||||
}
|
||||
RESOLVE_IP = {
|
||||
"label": "Resolve IP",
|
||||
"tooltip": None,
|
||||
"wait_msg": "Resolving remote IP",
|
||||
}
|
||||
HIGHLIGHT = {
|
||||
"label": "Highlight stale",
|
||||
"tooltip": None,
|
||||
"wait_msg": "Looking for stale mods",
|
||||
}
|
||||
|
||||
# pages
|
||||
SERVER_BROWSER = {
|
||||
"label": "Server browser",
|
||||
"tooltip": "Used to browse the global server list",
|
||||
"type": "server",
|
||||
}
|
||||
SAVED_SERVERS = {
|
||||
"label": "My saved servers",
|
||||
"tooltip": "Browse your saved servers. Unreachable servers will be excluded",
|
||||
"type": "server",
|
||||
}
|
||||
RECENT_SERVERS = {
|
||||
"label": "Recent servers",
|
||||
"tooltip": "Shows the last 10 servers you connected to (includes attempts)",
|
||||
"type": "server",
|
||||
}
|
||||
SCAN_LAN = {
|
||||
"label": "Scan LAN servers",
|
||||
"tooltip": "Search for servers on your local network",
|
||||
"type": "server",
|
||||
}
|
||||
LIST_MODS = {
|
||||
"label": "Mods",
|
||||
"tooltip": "Browse a list of locally-installed mods",
|
||||
"quad_label": "Mods",
|
||||
"type": "mods",
|
||||
}
|
||||
CHANGELOG = {
|
||||
"label": "View changelog",
|
||||
"tooltip": "Opens the DZGUI changelog",
|
||||
}
|
||||
OPTIONS = {"label": "Options", "tooltip": None}
|
||||
KEYBINDINGS = {"label": "Keybindings", "tooltip": None}
|
||||
SHOW_LOG = {
|
||||
"label": "Show debug log",
|
||||
"tooltip": "Read the DZGUI log generated since startup",
|
||||
"quad_label": "Debug log",
|
||||
}
|
||||
|
||||
# interactive dialogs
|
||||
CONN_BY_IP = {
|
||||
"label": "Connect by IP",
|
||||
"tooltip": "Connect to a server by IP",
|
||||
"prompt": "Enter IP in IP:Queryport format (e.g. 192.168.1.1:27016)",
|
||||
"link_label": None,
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
CONN_BY_ID = {
|
||||
"label": "Connect by ID",
|
||||
"tooltip": "Connect to a server by Battlemetrics ID",
|
||||
"prompt": "Enter server ID",
|
||||
"link_label": "Open Battlemetrics",
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
SEPARATOR = {
|
||||
"label" : "SEPARATOR",
|
||||
"tooltip": "",
|
||||
}
|
||||
ADD_BY_IP = {
|
||||
"label": "Add server by IP",
|
||||
"tooltip": "Add a server by IP",
|
||||
"prompt": "Enter IP in IP:Queryport format (e.g. 192.168.1.1:27016)",
|
||||
"link_label": None,
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
ADD_BY_ID = {
|
||||
"label": "Add server by ID",
|
||||
"tooltip": "Add a server by Battlemetrics ID",
|
||||
"prompt": "Enter server ID",
|
||||
"link_label": "Open Battlemetrics",
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
CHNG_FAV = {
|
||||
"label": "Change favorite server",
|
||||
"tooltip": "Update your quick-connect server",
|
||||
"prompt": "Enter IP in IP:Queryport format (e.g. 192.168.1.1:27016)",
|
||||
"link_label": None,
|
||||
"alt": None,
|
||||
"default": "unset",
|
||||
"val": "fav_label",
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
CHNG_PLAYER = {
|
||||
"label": "Change player name",
|
||||
"tooltip": "Update your in-game name (required by some servers)",
|
||||
"prompt": "Enter new nickname",
|
||||
"link_label": None,
|
||||
"alt": None,
|
||||
"default": None,
|
||||
"val": "name",
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
CHNG_STEAM_API = {
|
||||
"label": "Change Steam API key",
|
||||
"tooltip": "Can be used if you revoked an old API key",
|
||||
"prompt": "Enter new API key",
|
||||
"link_label": "Open Steam API page",
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
CHNG_BM_API = {
|
||||
"label": "Change Battlemetrics API key",
|
||||
"tooltip": "Can be used if you revoked an old API key",
|
||||
"link_label": "Open Battlemetrics API page",
|
||||
"prompt": "Enter new API key",
|
||||
"type": Command.INTERACTIVE,
|
||||
}
|
||||
|
||||
# oneshot commands
|
||||
QUICK_CONNECT = {
|
||||
"label": "Quick-connect to favorite server",
|
||||
"tooltip": "Connect to your favorite server",
|
||||
"wait_msg": "Working",
|
||||
"default": "unset",
|
||||
"alt": None,
|
||||
"val": "fav_label",
|
||||
"type": Command.ONESHOT,
|
||||
}
|
||||
FORCE_UPDATE = {
|
||||
"label": "Force update local mods",
|
||||
"tooltip": "Synchronize local mods with remote versions (experimental)",
|
||||
"wait_msg": "Updating mods",
|
||||
"type": Command.ONESHOT,
|
||||
}
|
||||
DUMP_LOG = {
|
||||
"label": "Output system info to log file",
|
||||
"tooltip": "Dump diagnostic data for troubleshooting",
|
||||
"wait_msg": "Generating log",
|
||||
"type": Command.ONESHOT,
|
||||
}
|
||||
HANDSHAKE = {
|
||||
"label": "Handshake",
|
||||
"tooltip": None,
|
||||
"wait_msg": "Waiting for DayZ",
|
||||
"type": Command.ONESHOT,
|
||||
}
|
||||
HANDSHAKE_EXP = {
|
||||
"label": "Handshake_EXP",
|
||||
"tooltip": None,
|
||||
"wait_msg": "Waiting for DayZ",
|
||||
"type": Command.ONESHOT,
|
||||
}
|
||||
DELETE_SELECTED = {
|
||||
"label": "Delete selected mods",
|
||||
"tooltip": None,
|
||||
"wait_msg": "Deleting mods",
|
||||
"type": Command.ONESHOT,
|
||||
}
|
||||
|
||||
# help pages
|
||||
DOCS = {
|
||||
"label": "Documentation/help files (GitHub) ⧉",
|
||||
"tooltip": "Open the DZGUI documentation in a browser",
|
||||
"type": Command.HELP,
|
||||
}
|
||||
DOCS_FALLBACK = {
|
||||
"label": "Documentation/help files (Codeberg mirror) ⧉",
|
||||
"tooltip": "Open the DZGUI documentation in a browser",
|
||||
"type": Command.HELP,
|
||||
}
|
||||
BUGS = {
|
||||
"label": "Report a bug (GitHub) ⧉",
|
||||
"tooltip": "Open the DZGUI issue tracker in a browser",
|
||||
"type": Command.HELP,
|
||||
}
|
||||
FORUM = {
|
||||
"label": "DZGUI Subreddit ⧉",
|
||||
"tooltip": "Open the DZGUI discussion forum in a browser",
|
||||
"type": Command.HELP,
|
||||
}
|
||||
SPONSOR = {
|
||||
"label": "Sponsor (GitHub) ⧉",
|
||||
"tooltip": "Sponsor development of the DZGUI project",
|
||||
"type": Command.HELP,
|
||||
}
|
||||
THANKS = {
|
||||
"label": "Special thanks",
|
||||
"tooltip": "A list of contributors, testers, and sponsors",
|
||||
"type": Command.THANKS,
|
||||
}
|
||||
|
||||
|
||||
# TODO: rename to ContextItem
|
||||
class ContextMenu(EnumWithAttrs):
|
||||
ADD_SERVER = {"label": strings.add}
|
||||
REMOVE_SERVER = {"label": strings.remove}
|
||||
COPY_NAME = {"label": strings.copy_name}
|
||||
COPY_CLIPBOARD = {"label": strings.copy_ip}
|
||||
ADD_NOTE = {"label": strings.add_note}
|
||||
SHOW_MODS = {"label": strings.show_mods}
|
||||
SHOW_DETAILS = {"label": strings.show_details}
|
||||
REFRESH_PLAYERS = {"label": strings.refresh_players}
|
||||
REMOVE_HISTORY = {"label": strings.remove_history}
|
||||
OPEN_WORKSHOP = {"label": strings.open_workshop}
|
||||
DELETE_MOD = {"label": strings.delete_mod}
|
||||
COPY_LOG_CLIPBOARD = {"label": strings.copy_log}
|
||||
|
||||
|
||||
class ContextMenuGroup(Enum):
|
||||
"""
|
||||
Groupings of context menu items
|
||||
"""
|
||||
MOD = (
|
||||
ContextMenu.OPEN_WORKSHOP, ContextMenu.DELETE_MOD
|
||||
)
|
||||
LOG = (
|
||||
ContextMenu.COPY_LOG_CLIPBOARD,
|
||||
)
|
||||
SERVER_BROWSER = (
|
||||
ContextMenu.ADD_SERVER,
|
||||
ContextMenu.COPY_NAME,
|
||||
ContextMenu.COPY_CLIPBOARD,
|
||||
ContextMenu.ADD_NOTE,
|
||||
ContextMenu.SHOW_MODS,
|
||||
ContextMenu.SHOW_DETAILS,
|
||||
ContextMenu.REFRESH_PLAYERS,
|
||||
)
|
||||
SCAN_LAN = (
|
||||
ContextMenu.COPY_NAME,
|
||||
ContextMenu.COPY_CLIPBOARD,
|
||||
ContextMenu.ADD_NOTE,
|
||||
ContextMenu.SHOW_MODS,
|
||||
ContextMenu.SHOW_DETAILS,
|
||||
ContextMenu.REFRESH_PLAYERS,
|
||||
)
|
||||
SAVED = (
|
||||
ContextMenu.REMOVE_SERVER,
|
||||
ContextMenu.COPY_NAME,
|
||||
ContextMenu.COPY_CLIPBOARD,
|
||||
ContextMenu.ADD_NOTE,
|
||||
ContextMenu.SHOW_MODS,
|
||||
ContextMenu.SHOW_DETAILS,
|
||||
ContextMenu.REFRESH_PLAYERS,
|
||||
)
|
||||
RECENT = (
|
||||
ContextMenu.ADD_SERVER,
|
||||
ContextMenu.REMOVE_HISTORY,
|
||||
ContextMenu.COPY_NAME,
|
||||
ContextMenu.COPY_CLIPBOARD,
|
||||
ContextMenu.ADD_NOTE,
|
||||
ContextMenu.SHOW_MODS,
|
||||
ContextMenu.SHOW_DETAILS,
|
||||
ContextMenu.REFRESH_PLAYERS,
|
||||
)
|
||||
|
||||
|
||||
MAIN_MENU_ROWS = (
|
||||
RowType.SERVER_BROWSER,
|
||||
RowType.SAVED_SERVERS,
|
||||
RowType.RECENT_SERVERS,
|
||||
RowType.SCAN_LAN,
|
||||
RowType.SEPARATOR,
|
||||
RowType.QUICK_CONNECT,
|
||||
RowType.CONN_BY_IP,
|
||||
RowType.CONN_BY_ID,
|
||||
RowType.SEPARATOR,
|
||||
RowType.ADD_BY_IP,
|
||||
RowType.ADD_BY_ID,
|
||||
RowType.CHNG_FAV,
|
||||
)
|
||||
HELP_MENU_ROWS = (
|
||||
RowType.CHANGELOG,
|
||||
RowType.SHOW_LOG,
|
||||
RowType.DUMP_LOG,
|
||||
RowType.SEPARATOR,
|
||||
RowType.DOCS,
|
||||
RowType.DOCS_FALLBACK,
|
||||
RowType.BUGS,
|
||||
RowType.FORUM,
|
||||
RowType.SPONSOR,
|
||||
RowType.SEPARATOR,
|
||||
RowType.THANKS,
|
||||
)
|
||||
|
||||
#class WindowContext(EnumWithAttrs):
|
||||
# # TODO: deprecated
|
||||
# @classmethod
|
||||
# def row2con(cls, row: RowType) -> "WindowContext":
|
||||
# m = WindowContext.MAIN_MENU
|
||||
# for member in cls:
|
||||
# if row in member.dict["rows"]:
|
||||
# m = member
|
||||
# elif row in member.dict["called_by"]:
|
||||
# m = member
|
||||
# else:
|
||||
# continue
|
||||
# return m
|
||||
#
|
||||
# # outer menu pages
|
||||
# # TODO: some deprecated keys in here
|
||||
# #MAIN_MENU = {
|
||||
# # RowType.SERVER_BROWSER,
|
||||
# # RowType.SAVED_SERVERS,
|
||||
# # RowType.RECENT_SERVERS,
|
||||
# # RowType.SCAN_LAN,
|
||||
# # RowType.SEPARATOR,
|
||||
# # RowType.QUICK_CONNECT,
|
||||
# # RowType.CONN_BY_IP,
|
||||
# # RowType.CONN_BY_ID,
|
||||
# # RowType.SEPARATOR,
|
||||
# # RowType.ADD_BY_IP,
|
||||
# # RowType.ADD_BY_ID,
|
||||
# # RowType.CHNG_FAV,
|
||||
# # }
|
||||
# #MODS = {
|
||||
# # "label": "Mods",
|
||||
# # "rows": [],
|
||||
# # "called_by": [],
|
||||
# #}
|
||||
# HELP = {
|
||||
# "label": "Help",
|
||||
# "rows": [
|
||||
# RowType.CHANGELOG,
|
||||
# RowType.SHOW_LOG,
|
||||
# RowType.DUMP_LOG,
|
||||
# RowType.SEPARATOR,
|
||||
# RowType.DOCS,
|
||||
# RowType.DOCS_FALLBACK,
|
||||
# RowType.BUGS,
|
||||
# RowType.FORUM,
|
||||
# RowType.SPONSOR,
|
||||
# RowType.SEPARATOR,
|
||||
# RowType.THANKS,
|
||||
# ],
|
||||
# "called_by": [],
|
||||
# }
|
||||
#
|
||||
# ## inner server contexts
|
||||
# #TABLE_API = {
|
||||
# # "label": "",
|
||||
# # "rows": [],
|
||||
# # "called_by": [RowType.SERVER_BROWSER],
|
||||
# #}
|
||||
# #TABLE_SERVER = {
|
||||
# # "label": "",
|
||||
# # "rows": [],
|
||||
# # "called_by": [
|
||||
# # RowType.SAVED_SERVERS,
|
||||
# # RowType.RECENT_SERVERS,
|
||||
# # RowType.SCAN_LAN,
|
||||
# # ],
|
||||
# #}
|
||||
# #TABLE_MODS = {
|
||||
# # "label": "",
|
||||
# # "rows": [],
|
||||
# # "called_by": [
|
||||
# # RowType.LIST_MODS,
|
||||
# # ],
|
||||
# #}
|
||||
# #TABLE_LOG = {
|
||||
# # "label": "",
|
||||
# # "rows": [],
|
||||
# # "called_by": [RowType.SHOW_LOG],
|
||||
# #}
|
||||
|
||||
|
||||
class ModButton(EnumWithAttrs):
|
||||
SELECT_ALL = {
|
||||
"label": strings.mod_panel.select_all,
|
||||
"tooltip": strings.mod_panel.select_all_tooltip,
|
||||
}
|
||||
UNSELECT_ALL = {
|
||||
"label": strings.mod_panel.unselect_all,
|
||||
"tooltip": strings.mod_panel.unselect_all_tooltip
|
||||
}
|
||||
HIGHLIGHT_STALE = {
|
||||
"label": strings.mod_panel.highlight_stale,
|
||||
"tooltip": strings.mod_panel.highlight_stale_tooltip,
|
||||
}
|
||||
UNHIGHLIGHT_STALE = {
|
||||
"label": strings.mod_panel.unhighlight_stale,
|
||||
"tooltip": strings.mod_panel.unhighlight_stale_tooltip,
|
||||
}
|
||||
DELETE_SELECTED = {
|
||||
"label": strings.mod_panel.delete_selected,
|
||||
"tooltip": strings.mod_panel.delete_selected_tooltip,
|
||||
}
|
||||
SELECT_STALE = {
|
||||
"label": strings.mod_panel.select_stale,
|
||||
"tooltip": strings.mod_panel.select_stale_tooltip,
|
||||
}
|
||||
|
||||
|
||||
class ButtonType(EnumWithAttrs):
|
||||
MAIN_MENU = {
|
||||
"label": strings.buttons.main_label,
|
||||
"tooltip": strings.buttons.main_tooltip,
|
||||
"opens": NotebookPage.MAIN,
|
||||
}
|
||||
MODS = {
|
||||
"label": strings.buttons.mods_label,
|
||||
"tooltip": strings.buttons.mods_tooltip,
|
||||
"opens": NotebookPage.MODS,
|
||||
}
|
||||
OPTIONS = {
|
||||
"label": strings.buttons.options_label,
|
||||
"tooltip": strings.buttons.options_tooltip,
|
||||
"opens": NotebookPage.OPTIONS
|
||||
}
|
||||
HELP = {
|
||||
"label": strings.buttons.help_label,
|
||||
"tooltip": strings.buttons.help_tooltip,
|
||||
"opens": NotebookPage.MAIN,
|
||||
}
|
||||
EXIT = {
|
||||
"label": strings.buttons.exit_label,
|
||||
"tooltip": strings.buttons.exit_tooltip,
|
||||
"opens": None,
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
"""
|
||||
This file is intended to be patched by package maintainers
|
||||
repackaging DZGUI for use in different distributions.
|
||||
|
||||
If DZGUI is going to be installed globally via a package manager
|
||||
or other means and will reside in an immutable location, or needs to be
|
||||
explicitly bound to a certain version, set the flag below to False.
|
||||
|
||||
This will disable the following:
|
||||
|
||||
- Version update checks at startup
|
||||
- Ability to toggle between Stable/Testing branches in the Options menu
|
||||
"""
|
||||
|
||||
ALLOW_UPDATES = True
|
||||
Reference in new issue
Block a user