Standardise push buttons (#2544)
This commit is contained in:
@@ -114,23 +114,6 @@ You can now test the translation in novelWriter. The Preferences dialog should l
|
|||||||
language, so go ahead and select it.
|
language, so go ahead and select it.
|
||||||
|
|
||||||
|
|
||||||
### Missing QtBase Translations
|
|
||||||
|
|
||||||
The default Qt dialogs also have translations, for instance for standard buttons like "Yes", "No",
|
|
||||||
"Ok", "Cancel", etc. Generally, these translation files are installed with the Qt libraries on your
|
|
||||||
system, and novelWriter will collect those translations from there. However, these translations are
|
|
||||||
missing for many languages.
|
|
||||||
|
|
||||||
As a starting point, there is no need to translate any entries in the `.ts` files that are under
|
|
||||||
elements starting with the letter "Q", like "QPlatformTheme", "QWizard", etc. If these turn up in
|
|
||||||
English in novelWriter after activating a translation, it means they are probably missing in the Qt
|
|
||||||
library, and you may also need to translate these.
|
|
||||||
|
|
||||||
These additional translation entries are generated from a file named `i18n/qtbase.py`, which is not
|
|
||||||
a file that novelWriter uses. It is there only to generate these additional entries for the `.ts`
|
|
||||||
files.
|
|
||||||
|
|
||||||
|
|
||||||
## Project Localisation
|
## Project Localisation
|
||||||
|
|
||||||
Projects can have a different language setting than the GUI itself. The files with format
|
Projects can have a different language setting than the GUI itself. The files with format
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
"""
|
|
||||||
Qt Base Translation File
|
|
||||||
========================
|
|
||||||
|
|
||||||
This file causes Qt Linguist to generate translation entries for the Qt
|
|
||||||
elements that need translation in novelWriter for those languages who do
|
|
||||||
not yet have a qtbase_xx.qm file shipped with Qt.
|
|
||||||
|
|
||||||
If a qtbase_xx.qm file already exists, do not add a translation for the
|
|
||||||
entries generated from this file.
|
|
||||||
""" # noqa
|
|
||||||
|
|
||||||
from PyQt6.QtCore import QT_TRANSLATE_NOOP
|
|
||||||
|
|
||||||
# QDialogButtonBox
|
|
||||||
# ================
|
|
||||||
|
|
||||||
QT_TRANSLATE_NOOP("QDialogButtonBox", "OK")
|
|
||||||
|
|
||||||
# QGnomeTheme
|
|
||||||
# ===========
|
|
||||||
|
|
||||||
QT_TRANSLATE_NOOP("QGnomeTheme", "&OK")
|
|
||||||
QT_TRANSLATE_NOOP("QGnomeTheme", "&Save")
|
|
||||||
QT_TRANSLATE_NOOP("QGnomeTheme", "&Cancel")
|
|
||||||
QT_TRANSLATE_NOOP("QGnomeTheme", "&Close")
|
|
||||||
QT_TRANSLATE_NOOP("QGnomeTheme", "Close without Saving")
|
|
||||||
|
|
||||||
# QPlatformTheme
|
|
||||||
# ==============
|
|
||||||
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "OK")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Save")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Save All")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Open")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "&Yes")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Yes to &All")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "&No")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "N&o to All")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Abort")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Retry")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Ignore")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Close")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Cancel")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Discard")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Help")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Apply")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Reset")
|
|
||||||
QT_TRANSLATE_NOOP("QPlatformTheme", "Restore Defaults")
|
|
||||||
@@ -59,6 +59,23 @@ icon:sb_stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Z" /></svg>
|
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-280q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Z" /></svg>
|
||||||
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-151 0-255.5-104.5T120-480q0-138 90-239.5T440-838q13-2 23 3.5t16 14.5q6 9 6.5 21t-7.5 23q-17 26-25.5 55t-8.5 61q0 90 63 153t153 63q31 0 61.5-9t54.5-25q11-7 22.5-6.5T819-479q10 5 15.5 15t3.5 24q-14 138-117.5 229T480-120Z" /></svg>
|
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-151 0-255.5-104.5T120-480q0-138 90-239.5T440-838q13-2 23 3.5t16 14.5q6 9 6.5 21t-7.5 23q-17 26-25.5 55t-8.5 61q0 90 63 153t153 63q31 0 61.5-9t54.5-25q11-7 22.5-6.5T819-479q10 5 15.5 15t3.5 24q-14 138-117.5 229T480-120Z" /></svg>
|
||||||
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm40-83q119-15 199.5-104.5T800-480q0-123-80.5-212.5T520-797v634Z" /></svg>
|
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm40-83q119-15 199.5-104.5T800-480q0-123-80.5-212.5T520-797v634Z" /></svg>
|
||||||
|
icon:btn_ok = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-408-86-86q-11-11-28-11t-28 11q-11 11-11 28t11 28l114 114q12 12 28 12t28-12l226-226q11-11 11-28t-11-28q-11-11-28-11t-28 11L424-408Zm56 328q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z" /></svg>
|
||||||
|
icon:btn_cancel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-424 116 116q11 11 28 11t28-11q11-11 11-28t-11-28L536-480l116-116q11-11 11-28t-11-28q-11-11-28-11t-28 11L480-536 364-652q-11-11-28-11t-28 11q-11 11-11 28t11 28l116 116-116 116q-11 11-11 28t11 28q11 11 28 11t28-11l116-116Zm0 344q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z" /></svg>
|
||||||
|
icon:btn_yes = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-408-86-86q-11-11-28-11t-28 11q-11 11-11 28t11 28l114 114q12 12 28 12t28-12l226-226q11-11 11-28t-11-28q-11-11-28-11t-28 11L424-408Zm56 328q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z" /></svg>
|
||||||
|
icon:btn_no = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z" /></svg>
|
||||||
|
icon:btn_open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z" /></svg>
|
||||||
|
icon:btn_close = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-424 116 116q11 11 28 11t28-11q11-11 11-28t-11-28L536-480l116-116q11-11 11-28t-11-28q-11-11-28-11t-28 11L480-536 364-652q-11-11-28-11t-28 11q-11 11-11 28t11 28l116 116-116 116q-11 11-11 28t11 28q11 11 28 11t28-11l116-116Zm0 344q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z" /></svg>
|
||||||
|
icon:btn_save = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M692-148 588-252q-11-11-11-28t11-28q11-11 28-11t28 11l36 36v-127q0-17 11.5-28.5T720-439q17 0 28.5 11.5T760-399v127l36-36q11-11 28-11t28 11q11 11 11 28t-11 28L748-148q-12 12-28 12t-28-12ZM600 0q-17 0-28.5-11.5T560-40q0-17 11.5-28.5T600-80h240q17 0 28.5 11.5T880-40q0 17-11.5 28.5T840 0H600ZM240-160q-33 0-56.5-23.5T160-240v-560q0-33 23.5-56.5T240-880h247q16 0 30.5 6t25.5 17l194 194q11 11 17 25.5t6 30.5v48q0 17-11.5 28.5T720-519H560q-33 0-56.5 23.5T480-439v239q0 17-11.5 28.5T440-160H240Zm300-440h140L480-800l200 200-200-200v140q0 25 17.5 42.5T540-600Z" /></svg>
|
||||||
|
icon:btn_browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h207q16 0 30.5 6t25.5 17l57 57h360q17 0 28.5 11.5T880-680q0 17-11.5 28.5T840-640H314q-62 0-108 39t-46 99v262l79-263q8-26 29.5-41.5T316-560h516q41 0 64.5 32.5T909-457l-72 240q-8 26-29.5 41.5T760-160H160Z" /></svg>
|
||||||
|
icon:btn_list = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-200q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z" /></svg>
|
||||||
|
icon:btn_new = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h200q17 0 28.5 11.5T440-800q0 17-11.5 28.5T400-760H200v560h560v-200q0-17 11.5-28.5T800-440q17 0 28.5 11.5T840-400v200q0 33-23.5 56.5T760-120H200Zm440-520h-80q-17 0-28.5-11.5T520-680q0-17 11.5-28.5T560-720h80v-80q0-17 11.5-28.5T680-840q17 0 28.5 11.5T720-800v80h80q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640h-80v80q0 17-11.5 28.5T680-520q-17 0-28.5-11.5T640-560v-80Z" /></svg>
|
||||||
|
icon:btn_create = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-269 314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Z" /></svg>
|
||||||
|
icon:btn_reset = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-200q-17 0-28.5-11.5T280-240q0-17 11.5-28.5T320-280h244q63 0 109.5-40T720-420q0-60-46.5-100T564-560H312l76 76q11 11 11 28t-11 28q-11 11-28 11t-28-11L188-572q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l144-144q11-11 28-11t28 11q11 11 11 28t-11 28l-76 76h252q97 0 166.5 63T800-420q0 94-69.5 157T564-200H320Z" /></svg>
|
||||||
|
icon:btn_insert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-560h-80q-17 0-28.5-11.5T320-600q0-17 11.5-28.5T360-640h240q17 0 28.5 11.5T640-600q0 17-11.5 28.5T600-560h-80v200q0 17-11.5 28.5T480-320q-17 0-28.5-11.5T440-360v-200ZM40-80v-160q0-17 11.5-28.5T80-280h40v-400H80q-17 0-28.5-11.5T40-720v-160q0-17 11.5-28.5T80-920h160q17 0 28.5 11.5T280-880v40h400v-40q0-17 11.5-28.5T720-920h160q17 0 28.5 11.5T920-880v160q0 17-11.5 28.5T880-680h-40v400h40q17 0 28.5 11.5T920-240v160q0 17-11.5 28.5T880-40H720q-17 0-28.5-11.5T680-80v-40H280v40q0 17-11.5 28.5T240-40H80q-17 0-28.5-11.5T40-80Zm240-120h400v-40q0-17 11.5-28.5T720-280h40v-400h-40q-17 0-28.5-11.5T680-720v-40H280v40q0 17-11.5 28.5T240-680h-40v400h40q17 0 28.5 11.5T280-240v40Z" /></svg>
|
||||||
|
icon:btn_apply = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-424-86-86q-11-11-28-11t-28 11q-11 11-11 28t11 28l114 114q12 12 28 12t28-12l226-226q11-11 11-28t-11-28q-11-11-28-11t-28 11L424-424ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z" /></svg>
|
||||||
|
icon:btn_build = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M760-252v72q0 8 6 14t14 6q8 0 14-6t6-14v-120q0-8-6-14t-14-6H660q-8 0-14 6t-6 14q0 8 6 14t14 6h72l-98 98q-6 6-6 14t6 14q6 6 14 6t14-6l98-98ZM720-40q-83 0-141.5-58.5T520-240q0-83 58.5-141.5T720-440q83 0 141.5 58.5T920-240q0 83-58.5 141.5T720-40ZM320-600h320q17 0 28.5-11.5T680-640q0-17-11.5-28.5T640-680H320q-17 0-28.5 11.5T280-640q0 17 11.5 28.5T320-600ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v218q0 18-15 28t-32 4q-17-5-35.5-7.5T720-520q-11 0-20.5.5T680-517q-9-2-20-2.5t-20-.5H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440h205q-18 17-32.5 37T467-360H320q-17 0-28.5 11.5T280-320q0 17 11.5 28.5T320-280h123q-2 10-2.5 19.5T440-240q0 20 2 38t7 35q5 17-5 32t-27 15H200Z" /></svg>
|
||||||
|
icon:btn_print = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-120q-33 0-56.5-23.5T240-200v-80h-80q-33 0-56.5-23.5T80-360v-160q0-51 35-85.5t85-34.5h560q51 0 85.5 34.5T880-520v160q0 33-23.5 56.5T800-280h-80v80q0 33-23.5 56.5T640-120H320Zm400-560H240v-80q0-33 23.5-56.5T320-840h320q33 0 56.5 23.5T720-760v80Zm0 220q17 0 28.5-11.5T760-500q0-17-11.5-28.5T720-540q-17 0-28.5 11.5T680-500q0 17 11.5 28.5T720-460ZM320-200h320v-160H320v160Z" /></svg>
|
||||||
|
icon:btn_preview = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-480H200v480Zm280-80q-82 0-146.5-44.5T240-440q29-71 93.5-115.5T480-600q82 0 146.5 44.5T720-440q-29 71-93.5 115.5T480-280Zm0-100q-25 0-42.5-17.5T420-440q0-25 17.5-42.5T480-500q25 0 42.5 17.5T540-440q0 25-17.5 42.5T480-380Zm0 40q42 0 71-29t29-71q0-42-29-71t-71-29q-42 0-71 29t-29 71q0 42 29 71t71 29Z" /></svg>
|
||||||
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z" /></svg>
|
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z" /></svg>
|
||||||
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-160 232-88q-40 17-76-6.5T120-161v-519q0-33 23.5-56.5T200-760h400q33 0 56.5 23.5T680-680v519q0 43-36 66.5T568-88l-168-72Zm400 0q-17 0-28.5-11.5T760-200v-640H280q-17 0-28.5-11.5T240-880q0-17 11.5-28.5T280-920h480q33 0 56.5 23.5T840-840v640q0 17-11.5 28.5T800-160Z" /></svg>
|
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-160 232-88q-40 17-76-6.5T120-161v-519q0-33 23.5-56.5T200-760h400q33 0 56.5 23.5T680-680v519q0 43-36 66.5T568-88l-168-72Zm400 0q-17 0-28.5-11.5T760-200v-640H280q-17 0-28.5-11.5T240-880q0-17 11.5-28.5T280-920h480q33 0 56.5 23.5T840-840v640q0 17-11.5 28.5T800-160Z" /></svg>
|
||||||
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h207q16 0 30.5 6t25.5 17l57 57h360q17 0 28.5 11.5T880-680q0 17-11.5 28.5T840-640H314q-62 0-108 39t-46 99v262l79-263q8-26 29.5-41.5T316-560h516q41 0 64.5 32.5T909-457l-72 240q-8 26-29.5 41.5T760-160H160Z" /></svg>
|
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h207q16 0 30.5 6t25.5 17l57 57h360q17 0 28.5 11.5T880-680q0 17-11.5 28.5T840-640H314q-62 0-108 39t-46 99v262l79-263q8-26 29.5-41.5T316-560h516q41 0 64.5 32.5T909-457l-72 240q-8 26-29.5 41.5T760-160H160Z" /></svg>
|
||||||
@@ -94,7 +111,6 @@ icon:minimise = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z" /></svg>
|
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z" /></svg>
|
||||||
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z" /></svg>
|
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z" /></svg>
|
||||||
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z" /></svg>
|
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z" /></svg>
|
||||||
icon:open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z" /></svg>
|
|
||||||
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-280h560v-360H200v360Z" /></svg>
|
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-280h560v-360H200v360Z" /></svg>
|
||||||
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M640-760v280l68 68q6 6 9 13.5t3 15.5v23q0 17-11.5 28.5T680-320H520v223q0 8-3 15.5T508-68l-14 14q-6 6-14 6t-14-6l-14-14q-6-6-9-13.5T440-97v-223H280q-17 0-28.5-11.5T240-360v-23q0-8 3-15.5t9-13.5l68-68v-280q-17 0-28.5-11.5T280-800q0-17 11.5-28.5T320-840h320q17 0 28.5 11.5T680-800q0 17-11.5 28.5T640-760Z" /></svg>
|
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M640-760v280l68 68q6 6 9 13.5t3 15.5v23q0 17-11.5 28.5T680-320H520v223q0 8-3 15.5T508-68l-14 14q-6 6-14 6t-14-6l-14-14q-6-6-9-13.5T440-97v-223H280q-17 0-28.5-11.5T240-360v-23q0-8 3-15.5t9-13.5l68-68v-280q-17 0-28.5-11.5T280-800q0-17 11.5-28.5T320-840h320q17 0 28.5 11.5T680-800q0 17-11.5 28.5T640-760Z" /></svg>
|
||||||
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120q-33 0-56.5-23.5T40-200v-480q0-17 11.5-28.5T80-720q17 0 28.5 11.5T120-680v480h640q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H120Zm160-160q-33 0-56.5-23.5T200-360v-440q0-33 23.5-56.5T280-880h167q16 0 30.5 6t25.5 17l57 57h280q33 0 56.5 23.5T920-720v360q0 33-23.5 56.5T840-280H280Z" /></svg>
|
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120q-33 0-56.5-23.5T40-200v-480q0-17 11.5-28.5T80-720q17 0 28.5 11.5T120-680v480h640q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H120Zm160-160q-33 0-56.5-23.5T200-360v-440q0-33 23.5-56.5T280-880h167q16 0 30.5 6t25.5 17l57 57h280q33 0 56.5 23.5T920-720v360q0 33-23.5 56.5T840-280H280Z" /></svg>
|
||||||
@@ -103,7 +119,6 @@ icon:refresh = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z" /></svg>
|
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z" /></svg>
|
||||||
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm0-280q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Z" /></svg>
|
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm0-280q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Z" /></svg>
|
||||||
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm49-260q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Z" /></svg>
|
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm49-260q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Z" /></svg>
|
||||||
icon:star = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-269 314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Z" /></svg>
|
|
||||||
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m110-190 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-536L596-244q-23 26-57 27.5T480-240L380-340 170-130q-13 13-30 13t-30-13q-13-13-13-30t13-30Zm0-240 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-776L596-484q-23 26-57 27.5T480-480L380-580 170-370q-13 13-30 13t-30-13q-13-13-13-30t13-30Z" /></svg>
|
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m110-190 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-536L596-244q-23 26-57 27.5T480-240L380-340 170-130q-13 13-30 13t-30-13q-13-13-13-30t13-30Zm0-240 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-776L596-484q-23 26-57 27.5T480-480L380-580 170-370q-13 13-30 13t-30-13q-13-13-13-30t13-30Z" /></svg>
|
||||||
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h320q17 0 28.5 11.5T560-240q0 17-11.5 28.5T520-200H200Zm0-160q-17 0-28.5-11.5T160-400q0-17 11.5-28.5T200-440h560q17 0 28.5 11.5T800-400q0 17-11.5 28.5T760-360H200Zm0-160q-17 0-28.5-11.5T160-560q0-17 11.5-28.5T200-600h560q17 0 28.5 11.5T800-560q0 17-11.5 28.5T760-520H200Zm0-160q-17 0-28.5-11.5T160-720q0-17 11.5-28.5T200-760h560q17 0 28.5 11.5T800-720q0 17-11.5 28.5T760-680H200Z" /></svg>
|
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h320q17 0 28.5 11.5T560-240q0 17-11.5 28.5T520-200H200Zm0-160q-17 0-28.5-11.5T160-400q0-17 11.5-28.5T200-440h560q17 0 28.5 11.5T800-400q0 17-11.5 28.5T760-360H200Zm0-160q-17 0-28.5-11.5T160-560q0-17 11.5-28.5T200-600h560q17 0 28.5 11.5T800-560q0 17-11.5 28.5T760-520H200Zm0-160q-17 0-28.5-11.5T160-720q0-17 11.5-28.5T200-760h560q17 0 28.5 11.5T800-720q0 17-11.5 28.5T760-680H200Z" /></svg>
|
||||||
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-74 0-139.5-28.5T226-186q-49-49-77.5-114.5T120-440q0-60 18.5-115.5T192-656L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-68-68q-48 35-103.5 53.5T480-80Zm-80-760q-17 0-28.5-11.5T360-880q0-17 11.5-28.5T400-920h160q17 0 28.5 11.5T600-880q0 17-11.5 28.5T560-840H400Zm348 516L520-552v-48q0-17-11.5-28.5T480-640q-10 0-18.5 4T448-624l-85-85q-18-18-13-43t29-33q24-8 49.5-11.5T480-800q60 0 117.5 20T706-722l28-28q11-11 28-11t28 11q11 11 11 28t-11 28l-28 28q38 51 58 108.5T840-440q0 26-3.5 51T825-339q-8 24-33 29t-44-14Z" /></svg>
|
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-74 0-139.5-28.5T226-186q-49-49-77.5-114.5T120-440q0-60 18.5-115.5T192-656L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-68-68q-48 35-103.5 53.5T480-80Zm-80-760q-17 0-28.5-11.5T360-880q0-17 11.5-28.5T400-920h160q17 0 28.5 11.5T600-880q0 17-11.5 28.5T560-840H400Zm348 516L520-552v-48q0-17-11.5-28.5T480-640q-10 0-18.5 4T448-624l-85-85q-18-18-13-43t29-33q24-8 49.5-11.5T480-800q60 0 117.5 20T706-722l28-28q11-11 28-11t28 11q11 11 11 28t-11 28l-28 28q38 51 58 108.5T840-440q0 26-3.5 51T825-339q-8 24-33 29t-44-14Z" /></svg>
|
||||||
|
|||||||
@@ -59,6 +59,23 @@ icon:sb_stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-320q-66.85 0-113.42-46.58Q320-413.15 320-480t46.58-113.42Q413.15-640 480-640t113.42 46.58Q640-546.85 640-480t-46.58 113.42Q546.85-320 480-320ZM80-460q-8.5 0-14.25-5.76T60-480.03q0-8.51 5.75-14.24T80-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T180-460H80Zm700 0q-8.5 0-14.25-5.76T760-480.03q0-8.51 5.75-14.24T780-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T880-460H780ZM479.97-760q-8.51 0-14.24-5.75T460-780v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-880v100q0 8.5-5.76 14.25T479.97-760Zm0 700q-8.51 0-14.24-5.75T460-80v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-180v100q0 8.5-5.76 14.25T479.97-60ZM254.46-678.77l-57.61-55.85q-5.85-5.61-5.73-13.76.11-8.16 5.96-14.77 6.38-6.62 14.15-6.62 7.77 0 14.15 6.62L282-706.31q6.38 6.62 6.38 14.16 0 7.53-6 14.15t-13.65 6.12q-7.65-.5-14.27-6.89Zm480.16 481.92L678-253.69q-6.38-6.62-6.38-14.27 0-7.66 6.38-14.04 5.23-6.62 13.08-6.12 7.84.5 14.46 6.89l57.61 55.85q5.85 5.61 5.73 13.76-.11 8.16-5.96 14.77-6.38 6.62-14.15 6.62-7.77 0-14.15-6.62ZM678-677.62q-6.62-6-6.12-13.65t6.89-14.27l55.85-57.61q5.61-5.85 13.76-5.73 8.16.11 14.77 5.96 6.62 6.38 6.62 14.15 0 7.77-6.62 14.15L706.31-678q-6.62 6.38-14.16 6.38-7.53 0-14.15-6ZM196.85-196.68q-6.62-6.78-6.62-14.55 0-7.77 6.62-14.15L253.69-282q6.62-6.38 14.27-6.38 7.66 0 14.04 6.38 5.85 5.23 5.35 13.08-.5 7.84-6.12 14.46l-55.85 57.61q-6.38 6.62-14.15 6.5-7.77-.11-14.38-6.33Z" /></svg>
|
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-320q-66.85 0-113.42-46.58Q320-413.15 320-480t46.58-113.42Q413.15-640 480-640t113.42 46.58Q640-546.85 640-480t-46.58 113.42Q546.85-320 480-320ZM80-460q-8.5 0-14.25-5.76T60-480.03q0-8.51 5.75-14.24T80-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T180-460H80Zm700 0q-8.5 0-14.25-5.76T760-480.03q0-8.51 5.75-14.24T780-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T880-460H780ZM479.97-760q-8.51 0-14.24-5.75T460-780v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-880v100q0 8.5-5.76 14.25T479.97-760Zm0 700q-8.51 0-14.24-5.75T460-80v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-180v100q0 8.5-5.76 14.25T479.97-60ZM254.46-678.77l-57.61-55.85q-5.85-5.61-5.73-13.76.11-8.16 5.96-14.77 6.38-6.62 14.15-6.62 7.77 0 14.15 6.62L282-706.31q6.38 6.62 6.38 14.16 0 7.53-6 14.15t-13.65 6.12q-7.65-.5-14.27-6.89Zm480.16 481.92L678-253.69q-6.38-6.62-6.38-14.27 0-7.66 6.38-14.04 5.23-6.62 13.08-6.12 7.84.5 14.46 6.89l57.61 55.85q5.85 5.61 5.73 13.76-.11 8.16-5.96 14.77-6.38 6.62-14.15 6.62-7.77 0-14.15-6.62ZM678-677.62q-6.62-6-6.12-13.65t6.89-14.27l55.85-57.61q5.61-5.85 13.76-5.73 8.16.11 14.77 5.96 6.62 6.38 6.62 14.15 0 7.77-6.62 14.15L706.31-678q-6.62 6.38-14.16 6.38-7.53 0-14.15-6ZM196.85-196.68q-6.62-6.78-6.62-14.55 0-7.77 6.62-14.15L253.69-282q6.62-6.38 14.27-6.38 7.66 0 14.04 6.38 5.85 5.23 5.35 13.08-.5 7.84-6.12 14.46l-55.85 57.61q-6.38 6.62-14.15 6.5-7.77-.11-14.38-6.33Z" /></svg>
|
||||||
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M482.31-160Q349-160 255.65-253.35 162.31-346.69 162.31-480q0-98.77 56.54-181.42 56.53-82.66 160.38-118.89 12.23-4.31 21.46-2.27 9.23 2.04 15.23 7.96 6 5.93 7.66 15.24 1.65 9.3-2.5 19.53-7.77 19.08-11.27 38.85-3.5 19.77-3.5 41 0 106.92 74.54 181.46Q555.38-404 662.31-404q27.92 0 51.11-5.92 23.2-5.93 39.5-9.62 8.7-1.61 15.96.42 7.27 2.04 11.66 7.04 4.61 5 6.27 12.31 1.65 7.31-1.89 16.69-28.61 98-112.11 160.54Q589.31-160 482.31-160Z" /></svg>
|
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M482.31-160Q349-160 255.65-253.35 162.31-346.69 162.31-480q0-98.77 56.54-181.42 56.53-82.66 160.38-118.89 12.23-4.31 21.46-2.27 9.23 2.04 15.23 7.96 6 5.93 7.66 15.24 1.65 9.3-2.5 19.53-7.77 19.08-11.27 38.85-3.5 19.77-3.5 41 0 106.92 74.54 181.46Q555.38-404 662.31-404q27.92 0 51.11-5.92 23.2-5.93 39.5-9.62 8.7-1.61 15.96.42 7.27 2.04 11.66 7.04 4.61 5 6.27 12.31 1.65 7.31-1.89 16.69-28.61 98-112.11 160.54Q589.31-160 482.31-160Z" /></svg>
|
||||||
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120ZM500-160.69q123.62-8.08 211.81-98.35T800-480q0-130.69-87.42-220.19-87.43-89.5-212.58-99.12v638.62Z" /></svg>
|
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120ZM500-160.69q123.62-8.08 211.81-98.35T800-480q0-130.69-87.42-220.19-87.43-89.5-212.58-99.12v638.62Z" /></svg>
|
||||||
|
icon:btn_ok = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m422.46-380.31-99.84-99.84q-5.62-5.62-13.77-6-8.16-.39-14.54 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15l105.54 105.54q9.69 9.69 22.61 9.69t22.62-9.69l219.07-219.07q5.62-5.62 6-13.77.39-8.16-6-14.54-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L422.46-380.31ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Z" /></svg>
|
||||||
|
icon:btn_cancel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-451.69 129.85 129.84q5.61 5.62 13.77 6 8.15.39 14.53-6 6.39-6.38 6.39-14.15 0-7.77-6.39-14.15L508.31-480l129.84-129.85q5.62-5.61 6-13.77.39-8.15-6-14.53-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L480-508.31 350.15-638.15q-5.61-5.62-13.77-6-8.15-.39-14.53 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15L451.69-480 321.85-350.15q-5.62 5.61-6 13.77-.39 8.15 6 14.53 6.38 6.39 14.15 6.39 7.77 0 14.15-6.39L480-451.69Zm.13 331.69q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Z" /></svg>
|
||||||
|
icon:btn_yes = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m422.46-380.31-99.84-99.84q-5.62-5.62-13.77-6-8.16-.39-14.54 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15l105.54 105.54q9.69 9.69 22.61 9.69t22.62-9.69l219.07-219.07q5.62-5.62 6-13.77.39-8.16-6-14.54-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L422.46-380.31ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Z" /></svg>
|
||||||
|
icon:btn_no = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-460h320q8.5 0 14.25-5.76t5.75-14.27q0-8.51-5.75-14.24T640-500H320q-8.5 0-14.25 5.76T300-479.97q0 8.51 5.75 14.24T320-460Zm160.13 340q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Z" /></svg>
|
||||||
|
icon:btn_open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h204.61q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T429.23-760H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-204.61q0-8.54 5.73-14.27t14.27-5.73q8.54 0 14.27 5.73t5.73 14.27v204.61q0 27.62-18.5 46.12Q763-160 735.38-160H224.62ZM760-731.69 403.69-375.38q-5.61 5.61-13.77 6-8.15.38-14.54-6-6.38-6.39-6.38-14.16 0-7.77 6.38-14.15L731.69-760H580q-8.54 0-14.27-5.73T560-780q0-8.54 5.73-14.27T580-800h187.69q13.93 0 23.12 9.19 9.19 9.19 9.19 23.12V-580q0 8.54-5.73 14.27T780-560q-8.54 0-14.27-5.73T760-580v-151.69Z" /></svg>
|
||||||
|
icon:btn_close = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-451.69 129.85 129.84q5.61 5.62 13.77 6 8.15.39 14.53-6 6.39-6.38 6.39-14.15 0-7.77-6.39-14.15L508.31-480l129.84-129.85q5.62-5.61 6-13.77.39-8.15-6-14.53-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L480-508.31 350.15-638.15q-5.61-5.62-13.77-6-8.15-.39-14.53 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15L451.69-480 321.85-350.15q-5.62 5.61-6 13.77-.39 8.15 6 14.53 6.38 6.39 14.15 6.39 7.77 0 14.15-6.39L480-451.69Zm.13 331.69q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Z" /></svg>
|
||||||
|
icon:btn_save = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m697.38-171.08-94.76-94.77q-5.62-5.36-5.62-13.64 0-8.28 5.62-13.89 5.61-5.62 13.38-6 7.77-.39 13.38 5.23L700-223.54V-399q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T740-399v175.46l70.62-70.61q5.35-5.62 13.64-5.62 8.28 0 13.89 5.62 5.62 5.61 5.62 13.89 0 8.29-5.62 13.64l-95.53 95.54q-9.7 9.7-22.62 9.7-12.92 0-22.62-9.7ZM600-20q-8.5 0-14.25-5.76T580-40.03q0-8.51 5.75-14.24T600-60h240q8.5 0 14.25 5.76T860-39.97q0 8.51-5.75 14.24T840-20H600ZM244.62-180q-26.08 0-45.35-19.27Q180-218.54 180-244.62v-550.76q0-26.08 19.27-45.35Q218.54-860 244.62-860h248.53q13.27 0 25.29 5.23t20.71 13.92l181.7 181.7q8.69 8.69 13.92 20.71 5.23 12.02 5.23 25.29v66.46q0 13.73-9.29 23.02t-23.02 9.29H549.23q-26.65 0-45.63 18.98-18.98 18.98-18.98 45.63v237.46q0 13.73-9.29 23.02T452.31-180H244.62Zm303.84-440H700L500-820l200 200-200-200v151.54q0 20.19 14.13 34.33Q528.27-620 548.46-620Z" /></svg>
|
||||||
|
icon:btn_browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760H357q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L463.85-680h349.23q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T813.08-640H297.85Q242-640 201-604.08q-41 35.93-41 90.54v248.92q0 8.47 4.23 13.85 4.23 5.39 11.15 9.23l76.7-256.84q6.46-20.62 23.73-33.43 17.27-12.81 38.65-12.81h512.92q32.54 0 52.2 25.97 19.65 25.96 10.19 57.03l-65.85 219.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Z" /></svg>
|
||||||
|
icon:btn_list = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M404.62-220q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73H780q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-220H404.62Zm0-240q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73H780q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-460H404.62Zm0-240q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73H780q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-700H404.62ZM213.08-186.92q-21.9 0-37.49-15.59Q160-218.11 160-240t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Zm0-240q-21.9 0-37.49-15.59Q160-458.11 160-480t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Zm0-240q-21.9 0-37.49-15.59Q160-698.11 160-720t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Z" /></svg>
|
||||||
|
icon:btn_new = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h180q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T404.62-760h-180q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-180q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v180q0 27.62-18.5 46.12Q763-160 735.38-160H224.62ZM640-640H540q-8.5 0-14.25-5.76T520-660.03q0-8.51 5.75-14.24T540-680h100v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T680-780v100h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-640H680v100q0 8.5-5.76 14.25T659.97-520q-8.51 0-14.24-5.75T640-540v-100Z" /></svg>
|
||||||
|
icon:btn_create = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-315.92-145.23 87.69q-6.39 3.15-11.85 2.54-5.46-.62-10.61-3.77-5.16-3.16-7.85-9.04-2.69-5.88-.46-12.73l38.62-164.39-127.77-110.84q-5.39-4.39-7.12-10.5-1.73-6.12.73-11.73 2.46-5.62 6.62-9.16 4.15-3.53 11.23-4.77l168.61-14.69L460.69-733q2.69-6.62 7.81-9.54 5.12-2.92 11.5-2.92t11.5 2.92q5.12 2.92 7.81 9.54l65.77 155.69 168.61 14.69q7.08 1.24 11.23 4.77 4.16 3.54 6.62 9.16 2.46 5.61.73 11.73-1.73 6.11-7.12 10.5L617.38-415.62 656-251.23q2.23 6.85-.46 12.73-2.69 5.88-7.85 9.04-5.15 3.15-10.61 3.77-5.46.61-11.85-2.54L480-315.92Z" /></svg>
|
||||||
|
icon:btn_reset = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M316.15-240q-8.53 0-14.27-5.73-5.73-5.73-5.73-14.27t5.73-14.27q5.74-5.73 14.27-5.73h270.16q62.23 0 106.04-42.69 43.8-42.69 43.8-104.23 0-61.54-43.8-103.85-43.81-42.31-106.04-42.31H276.62l104.46 104.46q6.38 6.39 6.38 14.16 0 7.77-6.38 14.15-6.39 6.39-14.54 6-8.16-.38-13.77-6L222.62-570.46q-5.24-5.23-7.35-10.69-2.12-5.47-2.12-11.93t2.12-11.92q2.11-5.46 7.35-10.69l130.15-130.16q6.38-6.38 14.15-6.38 7.77 0 14.16 6.38 6.38 6.39 6 14.54-.39 8.16-6 13.77L276.62-613.08h309.69q78.54 0 134.19 54.16 55.65 54.15 55.65 132 0 77.84-55.65 132.38Q664.85-240 586.31-240H316.15Z" /></svg>
|
||||||
|
icon:btn_insert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-600H360q-8.5 0-14.25-5.76T340-620.03q0-8.51 5.75-14.24T360-640h240q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T600-600H500v260q0 8.5-5.76 14.25T479.97-320q-8.51 0-14.24-5.75T460-340v-260ZM95.38-127.69v-104.62q0-13.73 9.29-23.02t23.02-9.29H160v-430.76h-32.44q-13.79 0-22.98-9.29-9.2-9.29-9.2-23.02v-104.62q0-13.73 9.29-23.02t23.02-9.29h104.62q13.73 0 23.02 9.29t9.29 23.02V-800h430.76v-32.44q0-13.79 9.29-22.98 9.29-9.2 23.02-9.2h104.62q13.73 0 23.02 9.29t9.29 23.02v104.62q0 13.73-9.29 23.02t-23.02 9.29H800v430.76h32.44q13.79 0 22.98 9.29 9.2 9.29 9.2 23.02v104.62q0 13.73-9.29 23.02t-23.02 9.29H727.69q-13.73 0-23.02-9.29t-9.29-23.02V-160H264.62v32.44q0 13.79-9.29 22.98-9.29 9.2-23.02 9.2H127.69q-13.73 0-23.02-9.29t-9.29-23.02ZM264.62-200h430.76v-32.44q0-13.79 9.29-22.98 9.29-9.2 23.02-9.2H760v-430.76h-32.44q-13.79 0-22.98-9.29-9.2-9.29-9.2-23.02V-760H264.62v32.44q0 13.79-9.29 22.98-9.29 9.2-23.02 9.2H200v430.76h32.44q13.79 0 22.98 9.29 9.2 9.29 9.2 23.02V-200Z" /></svg>
|
||||||
|
icon:btn_apply = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-396.31-99.85-99.84q-5.61-5.62-13.77-6-8.15-.39-14.53 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15l105.53 105.54q9.7 9.69 22.62 9.69 12.92 0 22.62-9.69l219.07-219.07q5.62-5.62 6-13.77.39-8.16-6-14.54-6.38-6.39-14.15-6.39-7.77 0-14.16 6.39L424-396.31ZM224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h510.76q27.62 0 46.12 18.5Q800-763 800-735.38v510.76q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Z" /></svg>
|
||||||
|
icon:btn_build = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M763.85-257.38V-190q0 6.15 4.61 10.77 4.62 4.61 10.77 4.61 6.15 0 10.77-4.61 4.62-4.62 4.62-10.77v-103.85q0-6.46-4.85-11.3-4.85-4.85-11.31-4.85H674.62q-6.16 0-10.77 4.62-4.62 4.61-4.62 10.76 0 6.16 4.62 10.77 4.61 4.62 10.77 4.62H742l-90.31 90.31q-4.46 4.46-4.84 10.54-.39 6.07 4.84 11.3 4.74 4.46 11.07 4.46 6.32 0 10.78-4.46l90.31-90.3ZM720-75.38q-66.85 0-113.42-46.58Q560-168.54 560-235.38q0-66.85 46.58-113.43 46.57-46.57 113.42-46.57t113.42 46.57Q880-302.23 880-235.38q0 66.84-46.58 113.42Q786.85-75.38 720-75.38ZM320-610.77h320q8.5 0 14.25-5.76 5.75-5.75 5.75-14.27 0-8.51-5.75-14.24T640-650.77H320q-8.5 0-14.25 5.76T300-630.74q0 8.51 5.75 14.24t14.25 5.73ZM224.62-160q-26.66 0-45.64-18.98T160-224.62v-510.76q0-26.66 18.98-45.64T224.62-800h510.76q26.66 0 45.64 18.98T800-735.38v200.3q0 15.09-11.15 23.47-11.16 8.38-25.85 5.46-10.08-2.7-20.95-3.66-10.88-.96-22.05-.96-20.23 0-39.35 3.19-19.11 3.2-37.57 9.04-4.5-.97-10-1.22-5.5-.24-10-.24H320q-8.5 0-14.25 5.76T300-479.97q0 8.51 5.75 14.24T320-460h243.46q-30.31 20.85-53.27 48.92-22.96 28.08-37.81 61.85H320q-8.5 0-14.25 5.76-5.75 5.75-5.75 14.27 0 8.51 5.75 14.24t14.25 5.73h138.38q-4.3 16.92-6.73 34.11-2.42 17.2-2.42 35.12 0 10 .46 21.08.46 11.07 2.39 22.69 1.92 13.92-6.21 25.08Q437.74-160 423.92-160h-199.3Z" /></svg>
|
||||||
|
icon:btn_print = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M344.62-160q-26.66 0-45.64-18.98T280-224.62V-320h-72.31q-26.65 0-45.63-18.98-18.98-18.98-18.98-45.64v-150.76q0-34 23.07-57 23.08-23 56.93-23h513.84q34 0 57 23t23 57v150.76q0 26.66-18.98 45.64T752.31-320H680v95.38q0 26.66-18.98 45.64T615.38-160H344.62ZM680-646.15H280v-64.76q0-26.71 18.98-45.59 18.98-18.89 45.64-18.89h270.76q26.66 0 45.64 18.99Q680-737.42 680-710.77v64.62Zm24.62 170.77q17 0 28.5-11.5t11.5-28.5q0-17-11.5-28.5t-28.5-11.5q-17 0-28.5 11.5t-11.5 28.5q0 17 11.5 28.5t28.5 11.5ZM344.62-200h270.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-132.3q0-10.77-6.92-17.7-6.93-6.92-17.7-6.92H344.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v132.3q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92Z" /></svg>
|
||||||
|
icon:btn_preview = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-26.66 0-45.64-18.98T160-224.62v-510.76q0-26.66 18.98-45.64T224.62-800h510.76q26.66 0 45.64 18.98T800-735.38v510.76q0 26.66-18.98 45.64T735.38-160H224.62Zm0-40h510.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7V-680H200v455.38q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92ZM480-320q-65.08 0-117.27-33.35-52.19-33.34-78.88-86.65 26.69-53.31 78.88-86.65Q414.92-560 480-560t117.27 33.35q52.19 33.34 78.88 86.65-26.69 53.31-78.88 86.65Q545.08-320 480-320Zm-.18-75.38q-18.67 0-31.55-13.07-12.89-13.07-12.89-31.73 0-18.67 13.07-31.55 13.07-12.89 31.73-12.89 18.67 0 31.55 13.07 12.89 13.07 12.89 31.73 0 18.67-13.07 31.55-13.07 12.89-31.73 12.89Zm.18 30.76q31.23 0 53.31-22.07 22.07-22.08 22.07-53.31 0-31.23-22.07-53.31-22.08-22.07-53.31-22.07-31.23 0-53.31 22.07-22.07 22.08-22.07 53.31 0 31.23 22.07 53.31 22.08 22.07 53.31 22.07Z" /></svg>
|
||||||
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-460H260q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h200v-200q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-700v200h200q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H500v200q0 8.5-5.76 14.25T479.97-240q-8.51 0-14.24-5.75T460-260v-200Z" /></svg>
|
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-460H260q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h200v-200q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-700v200h200q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H500v200q0 8.5-5.76 14.25T479.97-240q-8.51 0-14.24-5.75T460-260v-200Z" /></svg>
|
||||||
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m420-203.08-149.54 64.31q-32.31 13.92-61.38-5.35Q180-163.38 180-197.92v-457.46q0-27.62 18.5-46.12Q217-720 244.62-720h350.76q27.62 0 46.12 18.5Q660-683 660-655.38v457.46q0 34.54-29.08 53.8-29.07 19.27-61.38 5.35L420-203.08ZM760-220q-8.54 0-14.27-5.73T740-240v-535.39q0-9.23-7.69-16.92-7.69-7.69-16.93-7.69H320q-8.54 0-14.27-5.73T300-820q0-8.54 5.73-14.27T320-840h395.38q27.62 0 46.12 18.5Q780-803 780-775.39V-240q0 8.54-5.73 14.27T760-220Z" /></svg>
|
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m420-203.08-149.54 64.31q-32.31 13.92-61.38-5.35Q180-163.38 180-197.92v-457.46q0-27.62 18.5-46.12Q217-720 244.62-720h350.76q27.62 0 46.12 18.5Q660-683 660-655.38v457.46q0 34.54-29.08 53.8-29.07 19.27-61.38 5.35L420-203.08ZM760-220q-8.54 0-14.27-5.73T740-240v-535.39q0-9.23-7.69-16.92-7.69-7.69-16.93-7.69H320q-8.54 0-14.27-5.73T300-820q0-8.54 5.73-14.27T320-840h395.38q27.62 0 46.12 18.5Q780-803 780-775.39V-240q0 8.54-5.73 14.27T760-220Z" /></svg>
|
||||||
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760H357q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L463.85-680h349.23q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T813.08-640H297.85Q242-640 201-604.08q-41 35.93-41 90.54v248.92q0 8.47 4.23 13.85 4.23 5.39 11.15 9.23l76.7-256.84q6.46-20.62 23.73-33.43 17.27-12.81 38.65-12.81h512.92q32.54 0 52.2 25.97 19.65 25.96 10.19 57.03l-65.85 219.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Z" /></svg>
|
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760H357q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L463.85-680h349.23q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T813.08-640H297.85Q242-640 201-604.08q-41 35.93-41 90.54v248.92q0 8.47 4.23 13.85 4.23 5.39 11.15 9.23l76.7-256.84q6.46-20.62 23.73-33.43 17.27-12.81 38.65-12.81h512.92q32.54 0 52.2 25.97 19.65 25.96 10.19 57.03l-65.85 219.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Z" /></svg>
|
||||||
@@ -94,7 +111,6 @@ icon:minimise = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M436.4-350.31q-6.71 0-11.55-4.44-4.85-4.44-4.85-11.71v-227.08q0-7.27 4.95-11.71 4.95-4.44 11.55-4.44 1.65 0 11.35 5.23l107.07 107.08q3.7 3.69 5.7 7.97 2 4.28 2 9.41t-2 9.41q-2 4.28-5.7 7.98L447.83-355.52q-2.21 2.21-5.15 3.71-2.93 1.5-6.28 1.5Z" /></svg>
|
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M436.4-350.31q-6.71 0-11.55-4.44-4.85-4.44-4.85-11.71v-227.08q0-7.27 4.95-11.71 4.95-4.44 11.55-4.44 1.65 0 11.35 5.23l107.07 107.08q3.7 3.69 5.7 7.97 2 4.28 2 9.41t-2 9.41q-2 4.28-5.7 7.98L447.83-355.52q-2.21 2.21-5.15 3.71-2.93 1.5-6.28 1.5Z" /></svg>
|
||||||
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-218.46q-16.5 0-28.25-11.75T440-258.46q0-16.5 11.75-28.25T480-298.46q16.5 0 28.25 11.75T520-258.46q0 16.5-11.75 28.25T480-218.46ZM480-440q-16.5 0-28.25-11.75T440-480q0-16.5 11.75-28.25T480-520q16.5 0 28.25 11.75T520-480q0 16.5-11.75 28.25T480-440Zm0-221.54q-16.5 0-28.25-11.75T440-701.54q0-16.5 11.75-28.25T480-741.54q16.5 0 28.25 11.75T520-701.54q0 16.5-11.75 28.25T480-661.54Z" /></svg>
|
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-218.46q-16.5 0-28.25-11.75T440-258.46q0-16.5 11.75-28.25T480-298.46q16.5 0 28.25 11.75T520-258.46q0 16.5-11.75 28.25T480-218.46ZM480-440q-16.5 0-28.25-11.75T440-480q0-16.5 11.75-28.25T480-520q16.5 0 28.25 11.75T520-480q0 16.5-11.75 28.25T480-440Zm0-221.54q-16.5 0-28.25-11.75T440-701.54q0-16.5 11.75-28.25T480-741.54q16.5 0 28.25 11.75T520-701.54q0 16.5-11.75 28.25T480-661.54Z" /></svg>
|
||||||
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-460h320q8.54 0 14.27-5.73T660-480q0-8.54-5.73-14.27T640-500H320q-8.54 0-14.27 5.73T300-480q0 8.54 5.73 14.27T320-460Zm-95.38 300q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h510.76q27.62 0 46.12 18.5Q800-763 800-735.38v510.76q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Z" /></svg>
|
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-460h320q8.54 0 14.27-5.73T660-480q0-8.54-5.73-14.27T640-500H320q-8.54 0-14.27 5.73T300-480q0 8.54 5.73 14.27T320-460Zm-95.38 300q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h510.76q27.62 0 46.12 18.5Q800-763 800-735.38v510.76q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Z" /></svg>
|
||||||
icon:open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h204.61q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T429.23-760H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-204.61q0-8.54 5.73-14.27t14.27-5.73q8.54 0 14.27 5.73t5.73 14.27v204.61q0 27.62-18.5 46.12Q763-160 735.38-160H224.62ZM760-731.69 403.69-375.38q-5.61 5.61-13.77 6-8.15.38-14.54-6-6.38-6.39-6.38-14.16 0-7.77 6.38-14.15L731.69-760H580q-8.54 0-14.27-5.73T560-780q0-8.54 5.73-14.27T580-800h187.69q13.93 0 23.12 9.19 9.19 9.19 9.19 23.12V-580q0 8.54-5.73 14.27T780-560q-8.54 0-14.27-5.73T760-580v-151.69Z" /></svg>
|
|
||||||
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-26.85 0-45.74-18.88Q160-197.77 160-224.62v-510.76q0-26.85 18.88-45.74Q197.77-800 224.62-800h510.76q26.85 0 45.74 18.88Q800-762.23 800-735.38v510.76q0 26.85-18.88 45.74Q762.23-160 735.38-160H224.62ZM200-360h560v-375.38q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93V-360Z" /></svg>
|
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-26.85 0-45.74-18.88Q160-197.77 160-224.62v-510.76q0-26.85 18.88-45.74Q197.77-800 224.62-800h510.76q26.85 0 45.74 18.88Q800-762.23 800-735.38v510.76q0 26.85-18.88 45.74Q762.23-160 735.38-160H224.62ZM200-360h560v-375.38q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93V-360Z" /></svg>
|
||||||
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M600-760v296.92l57.23 57.23q2.92 2.93 4.39 6.58 1.46 3.65 1.46 7.55v11.21q0 8.28-5.97 14.39-5.98 6.12-14.8 6.12H500v186.61q0 6.7-2.23 12.28-2.23 5.57-7.46 10.8l-3.23 3.23q-3.07 2.93-7.15 2.93t-7.01-2.93l-3.23-3.23q-5.23-5.23-7.46-10.97-2.23-5.75-2.23-11.87V-360H317.69q-8.82 0-14.8-6.12-5.97-6.11-5.97-14.39v-11.21q0-3.9 1.46-7.55 1.47-3.65 4.39-6.58L360-463.08V-760h-20q-8.5 0-14.25-5.76T320-780.03q0-8.51 5.75-14.24T340-800h280q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T620-760h-20Z" /></svg>
|
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M600-760v296.92l57.23 57.23q2.92 2.93 4.39 6.58 1.46 3.65 1.46 7.55v11.21q0 8.28-5.97 14.39-5.98 6.12-14.8 6.12H500v186.61q0 6.7-2.23 12.28-2.23 5.57-7.46 10.8l-3.23 3.23q-3.07 2.93-7.15 2.93t-7.01-2.93l-3.23-3.23q-5.23-5.23-7.46-10.97-2.23-5.75-2.23-11.87V-360H317.69q-8.82 0-14.8-6.12-5.97-6.11-5.97-14.39v-11.21q0-3.9 1.46-7.55 1.47-3.65 4.39-6.58L360-463.08V-760h-20q-8.5 0-14.25-5.76T320-780.03q0-8.51 5.75-14.24T340-800h280q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T620-760h-20Z" /></svg>
|
||||||
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M144.62-169.23q-26.66 0-45.64-18.98T80-233.85v-423.07q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v423.07q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92H740q8.5 0 14.25 5.76 5.75 5.75 5.75 14.27 0 8.51-5.75 14.24T740-169.23H144.62Zm120-120q-26.66 0-45.64-18.98T200-353.85v-421.53q0-26.66 18.98-45.64T264.62-840h171.61q13.27 0 25.29 5.23t20.71 13.92L543.08-760h272.3q26.66 0 45.64 18.98T880-695.38v341.53q0 26.66-18.98 45.64t-45.64 18.98H264.62Z" /></svg>
|
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M144.62-169.23q-26.66 0-45.64-18.98T80-233.85v-423.07q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v423.07q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92H740q8.5 0 14.25 5.76 5.75 5.75 5.75 14.27 0 8.51-5.75 14.24T740-169.23H144.62Zm120-120q-26.66 0-45.64-18.98T200-353.85v-421.53q0-26.66 18.98-45.64T264.62-840h171.61q13.27 0 25.29 5.23t20.71 13.92L543.08-760h272.3q26.66 0 45.64 18.98T880-695.38v341.53q0 26.66-18.98 45.64t-45.64 18.98H264.62Z" /></svg>
|
||||||
@@ -103,7 +119,6 @@ icon:refresh = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M260-460q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h440q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H260Z" /></svg>
|
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M260-460q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h440q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H260Z" /></svg>
|
||||||
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M478.46-160q-115.23 0-202.61-71.12Q188.46-302.23 165.62-412q-2.47-8.85 2.6-16.37 5.06-7.53 13.68-8.73 8.1-1.21 14.56 3.72 6.46 4.92 9.16 14Q227.31-324 303.46-262q76.16 62 175 62 117 0 198.5-81.5t81.5-198.5q0-117-81.5-198.5T478.46-760q-62.08 0-116.69 26.23-54.62 26.23-96.39 72.23h79.24q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24t-14.25 5.73H230.77q-13.73 0-23.02-9.29t-9.29-23.02v-113.84q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v75.54q46.39-50.93 108.73-79.39Q409.54-800 478.46-800q66.6 0 124.76 25.04 58.16 25.04 101.66 68.54 43.5 43.5 68.54 101.65 25.04 58.14 25.04 124.73 0 66.58-25.04 124.77t-68.54 101.69q-43.5 43.5-101.66 68.54Q545.06-160 478.46-160Zm0-280q-16.08 0-28.04-11.96T438.46-480q0-16.08 11.96-28.04T478.46-520q16.08 0 28.04 11.96T518.46-480q0 16.08-11.96 28.04T478.46-440Z" /></svg>
|
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M478.46-160q-115.23 0-202.61-71.12Q188.46-302.23 165.62-412q-2.47-8.85 2.6-16.37 5.06-7.53 13.68-8.73 8.1-1.21 14.56 3.72 6.46 4.92 9.16 14Q227.31-324 303.46-262q76.16 62 175 62 117 0 198.5-81.5t81.5-198.5q0-117-81.5-198.5T478.46-760q-62.08 0-116.69 26.23-54.62 26.23-96.39 72.23h79.24q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24t-14.25 5.73H230.77q-13.73 0-23.02-9.29t-9.29-23.02v-113.84q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v75.54q46.39-50.93 108.73-79.39Q409.54-800 478.46-800q66.6 0 124.76 25.04 58.16 25.04 101.66 68.54 43.5 43.5 68.54 101.65 25.04 58.14 25.04 124.73 0 66.58-25.04 124.77t-68.54 101.69q-43.5 43.5-101.66 68.54Q545.06-160 478.46-160Zm0-280q-16.08 0-28.04-11.96T438.46-480q0-16.08 11.96-28.04T478.46-520q16.08 0 28.04 11.96T518.46-480q0 16.08-11.96 28.04T478.46-440Z" /></svg>
|
||||||
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M438.38-120q-13.92 0-24.19-9.15-10.27-9.16-12.73-22.85l-10.54-83.69q-19.15-5.77-41.42-18.16-22.27-12.38-37.88-26.53L235-247.46q-12.69 5.61-25.77 1.23-13.08-4.39-20.15-16.62l-43.16-74.3q-7.07-12.23-4.15-25.54 2.92-13.31 13.92-21.85l66.85-50q-1.77-10.84-2.92-22.34-1.16-11.5-1.16-22.35 0-10.08 1.16-21.19 1.15-11.12 2.92-25.04l-66.85-50q-11-8.54-13.54-22.23-2.53-13.69 4.54-25.93l42.39-72q7.07-11.46 20.15-16.23 13.08-4.77 25.77.85l75.85 32.15q17.92-14.92 38.77-26.92 20.84-12 40.53-18.54L401.46-808q2.46-13.69 12.73-22.85 10.27-9.15 24.19-9.15h83.24q13.92 0 24.19 9.15 10.27 9.16 12.73 22.85l10.54 84.46q23 8.08 40.65 18.54 17.65 10.46 36.35 26.15L725.77-711q12.69-5.62 25.77-.85 13.08 4.77 20.15 16.23l42.39 72.77q7.07 12.23 4.15 25.54-2.92 13.31-13.92 21.85l-69.93 52.31q3.31 12.38 3.7 22.73.38 10.34.38 20.42 0 9.31-.77 19.65-.77 10.35-3.54 25.04l67.62 50.77q11 8.54 14.31 21.85 3.3 13.31-3.77 25.54l-42.62 73.53q-7.07 12.24-20.54 16.62-13.46 4.38-26.15-1.23l-76.92-32.92q-18.7 15.69-37.62 26.92-18.92 11.23-39.38 17.77L558.54-152q-2.46 13.69-12.73 22.85-10.27 9.15-24.19 9.15h-83.24Zm40.54-260q41.85 0 70.93-29.08 29.07-29.07 29.07-70.92t-29.07-70.92Q520.77-580 478.92-580q-42.07 0-71.04 29.08-28.96 29.07-28.96 70.92t28.96 70.92Q436.85-380 478.92-380Z" /></svg>
|
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M438.38-120q-13.92 0-24.19-9.15-10.27-9.16-12.73-22.85l-10.54-83.69q-19.15-5.77-41.42-18.16-22.27-12.38-37.88-26.53L235-247.46q-12.69 5.61-25.77 1.23-13.08-4.39-20.15-16.62l-43.16-74.3q-7.07-12.23-4.15-25.54 2.92-13.31 13.92-21.85l66.85-50q-1.77-10.84-2.92-22.34-1.16-11.5-1.16-22.35 0-10.08 1.16-21.19 1.15-11.12 2.92-25.04l-66.85-50q-11-8.54-13.54-22.23-2.53-13.69 4.54-25.93l42.39-72q7.07-11.46 20.15-16.23 13.08-4.77 25.77.85l75.85 32.15q17.92-14.92 38.77-26.92 20.84-12 40.53-18.54L401.46-808q2.46-13.69 12.73-22.85 10.27-9.15 24.19-9.15h83.24q13.92 0 24.19 9.15 10.27 9.16 12.73 22.85l10.54 84.46q23 8.08 40.65 18.54 17.65 10.46 36.35 26.15L725.77-711q12.69-5.62 25.77-.85 13.08 4.77 20.15 16.23l42.39 72.77q7.07 12.23 4.15 25.54-2.92 13.31-13.92 21.85l-69.93 52.31q3.31 12.38 3.7 22.73.38 10.34.38 20.42 0 9.31-.77 19.65-.77 10.35-3.54 25.04l67.62 50.77q11 8.54 14.31 21.85 3.3 13.31-3.77 25.54l-42.62 73.53q-7.07 12.24-20.54 16.62-13.46 4.38-26.15-1.23l-76.92-32.92q-18.7 15.69-37.62 26.92-18.92 11.23-39.38 17.77L558.54-152q-2.46 13.69-12.73 22.85-10.27 9.15-24.19 9.15h-83.24Zm40.54-260q41.85 0 70.93-29.08 29.07-29.07 29.07-70.92t-29.07-70.92Q520.77-580 478.92-580q-42.07 0-71.04 29.08-28.96 29.07-28.96 70.92t28.96 70.92Q436.85-380 478.92-380Z" /></svg>
|
||||||
icon:star = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-315.92-145.23 87.69q-6.39 3.15-11.85 2.54-5.46-.62-10.61-3.77-5.16-3.16-7.85-9.04-2.69-5.88-.46-12.73l38.62-164.39-127.77-110.84q-5.39-4.39-7.12-10.5-1.73-6.12.73-11.73 2.46-5.62 6.62-9.16 4.15-3.53 11.23-4.77l168.61-14.69L460.69-733q2.69-6.62 7.81-9.54 5.12-2.92 11.5-2.92t11.5 2.92q5.12 2.92 7.81 9.54l65.77 155.69 168.61 14.69q7.08 1.24 11.23 4.77 4.16 3.54 6.62 9.16 2.46 5.61.73 11.73-1.73 6.11-7.12 10.5L617.38-415.62 656-251.23q2.23 6.85-.46 12.73-2.69 5.88-7.85 9.04-5.15 3.15-10.61 3.77-5.46.61-11.85-2.54L480-315.92Z" /></svg>
|
|
||||||
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m125.38-174.62 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-264.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-145.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Zm0-240 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-504.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-385.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Z" /></svg>
|
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m125.38-174.62 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-264.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-145.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Zm0-240 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-504.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-385.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Z" /></svg>
|
||||||
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-231.54q-10.47 0-17.54-6.84-7.08-6.85-7.08-16.96 0-10.12 7.08-17.39 7.07-7.27 17.54-7.27H500q8.5 0 14.25 5.97t5.75 14.8q0 8.5-5.73 14.25t-13.5 5.75l-276.15 7.69ZM220-386.92q-8.5 0-14.25-5.76T200-406.95q0-8.51 5.75-14.24t14.25-5.73h520q8.5 0 14.25 5.75 5.75 5.76 5.75 14.27 0 8.52-5.75 14.25T740-386.92H220Zm0-146.16q-8.5 0-14.25-5.75-5.75-5.76-5.75-14.27 0-8.52 5.75-14.25t14.25-5.73h520q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T740-533.08H220ZM224.62-680q-10.47 0-17.54-7.08-7.08-7.07-7.08-17.54 0-10.46 7.08-17.53 7.07-7.08 17.54-7.08h510.76q10.47 0 17.54 7.08 7.08 7.07 7.08 17.53 0 10.47-7.08 17.54-7.07 7.08-17.54 7.08H224.62Z" /></svg>
|
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-231.54q-10.47 0-17.54-6.84-7.08-6.85-7.08-16.96 0-10.12 7.08-17.39 7.07-7.27 17.54-7.27H500q8.5 0 14.25 5.97t5.75 14.8q0 8.5-5.73 14.25t-13.5 5.75l-276.15 7.69ZM220-386.92q-8.5 0-14.25-5.76T200-406.95q0-8.51 5.75-14.24t14.25-5.73h520q8.5 0 14.25 5.75 5.75 5.76 5.75 14.27 0 8.52-5.75 14.25T740-386.92H220Zm0-146.16q-8.5 0-14.25-5.75-5.75-5.76-5.75-14.27 0-8.52 5.75-14.25t14.25-5.73h520q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T740-533.08H220ZM224.62-680q-10.47 0-17.54-7.08-7.08-7.07-7.08-17.54 0-10.46 7.08-17.53 7.07-7.08 17.54-7.08h510.76q10.47 0 17.54 7.08 7.08 7.07 7.08 17.53 0 10.47-7.08 17.54-7.07 7.08-17.54 7.08H224.62Z" /></svg>
|
||||||
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-66.31 0-124.5-25.04t-101.81-68.65q-43.61-43.62-68.65-101.81Q160-373.69 160-440q0-61.54 21.96-117.42 21.96-55.89 63.89-100.12L119.38-784q-5.61-5.62-6-13.77-.38-8.15 6-14.54 6.39-6.38 14.16-6.38 7.77 0 14.15 6.38l664.62 664.62q5.61 5.61 6 13.77.38 8.15-6 14.54-6.39 6.38-14.16 6.38-7.77 0-14.15-6.38l-86.46-86.47q-42.62 40.39-99.66 63.12Q540.85-120 480-120Zm-84.62-740q-8.53 0-14.26-5.73-5.74-5.73-5.74-14.27t5.74-14.27q5.73-5.73 14.26-5.73h169.24q8.53 0 14.26 5.73 5.74 5.73 5.74 14.27t-5.74 14.27q-5.73 5.73-14.26 5.73H395.38Zm331.85 514.46L500-572.77v-31.85q0-8.53-5.73-14.26-5.73-5.74-14.27-5.74-6.15 0-11.19 4-5.04 4-6.96 9.7l-76.54-76.54q-14.93-14.92-10.69-35.69 4.23-20.77 24.38-26.47 20.15-5.69 40.65-8.03Q460.15-760 480-760q56.92 0 110.96 20.38 54.04 20.39 100.42 59.16L720.92-710q5.62-5.62 13.77-6 8.16-.38 14.54 6 6.39 6.38 6.39 14.15 0 7.77-6.39 14.16l-29.54 29.54q38.77 46.38 59.54 100.8Q800-496.92 800-440q0 19.85-2.35 40.23-2.34 20.39-8.03 40.77-5.7 20.15-26.47 24.38-20.77 4.24-35.92-10.92Z" /></svg>
|
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-66.31 0-124.5-25.04t-101.81-68.65q-43.61-43.62-68.65-101.81Q160-373.69 160-440q0-61.54 21.96-117.42 21.96-55.89 63.89-100.12L119.38-784q-5.61-5.62-6-13.77-.38-8.15 6-14.54 6.39-6.38 14.16-6.38 7.77 0 14.15 6.38l664.62 664.62q5.61 5.61 6 13.77.38 8.15-6 14.54-6.39 6.38-14.16 6.38-7.77 0-14.15-6.38l-86.46-86.47q-42.62 40.39-99.66 63.12Q540.85-120 480-120Zm-84.62-740q-8.53 0-14.26-5.73-5.74-5.73-5.74-14.27t5.74-14.27q5.73-5.73 14.26-5.73h169.24q8.53 0 14.26 5.73 5.74 5.73 5.74 14.27t-5.74 14.27q-5.73 5.73-14.26 5.73H395.38Zm331.85 514.46L500-572.77v-31.85q0-8.53-5.73-14.26-5.73-5.74-14.27-5.74-6.15 0-11.19 4-5.04 4-6.96 9.7l-76.54-76.54q-14.93-14.92-10.69-35.69 4.23-20.77 24.38-26.47 20.15-5.69 40.65-8.03Q460.15-760 480-760q56.92 0 110.96 20.38 54.04 20.39 100.42 59.16L720.92-710q5.62-5.62 13.77-6 8.16-.38 14.54 6 6.39 6.38 6.39 14.15 0 7.77-6.39 14.16l-29.54 29.54q38.77 46.38 59.54 100.8Q800-496.92 800-440q0 19.85-2.35 40.23-2.34 20.39-8.03 40.77-5.7 20.15-26.47 24.38-20.77 4.24-35.92-10.92Z" /></svg>
|
||||||
|
|||||||
@@ -59,6 +59,23 @@ icon:sb_stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 80q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Zm297-297Z" /></svg>
|
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 80q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM80-440q-17 0-28.5-11.5T40-480q0-17 11.5-28.5T80-520h80q17 0 28.5 11.5T200-480q0 17-11.5 28.5T160-440H80Zm720 0q-17 0-28.5-11.5T760-480q0-17 11.5-28.5T800-520h80q17 0 28.5 11.5T920-480q0 17-11.5 28.5T880-440h-80ZM480-760q-17 0-28.5-11.5T440-800v-80q0-17 11.5-28.5T480-920q17 0 28.5 11.5T520-880v80q0 17-11.5 28.5T480-760Zm0 720q-17 0-28.5-11.5T440-80v-80q0-17 11.5-28.5T480-200q17 0 28.5 11.5T520-160v80q0 17-11.5 28.5T480-40ZM226-678l-43-42q-12-11-11.5-28t11.5-29q12-12 29-12t28 12l42 43q11 12 11 28t-11 28q-11 12-27.5 11.5T226-678Zm494 495-42-43q-11-12-11-28.5t11-27.5q11-12 27.5-11.5T734-282l43 42q12 11 11.5 28T777-183q-12 12-29 12t-28-12Zm-42-495q-12-11-11.5-27.5T678-734l42-43q11-12 28-11.5t29 11.5q12 12 12 29t-12 28l-43 42q-12 11-28 11t-28-11ZM183-183q-12-12-12-29t12-28l43-42q12-11 28.5-11t27.5 11q12 11 11.5 27.5T282-226l-42 43q-11 12-28 11.5T183-183Zm297-297Z" /></svg>
|
||||||
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-151 0-255.5-104.5T120-480q0-138 90-239.5T440-838q13-2 23 3.5t16 14.5q6 9 6.5 21t-7.5 23q-17 26-25.5 55t-8.5 61q0 90 63 153t153 63q31 0 61.5-9t54.5-25q11-7 22.5-6.5T819-479q10 5 15.5 15t3.5 24q-14 138-117.5 229T480-120Zm0-80q88 0 158-48.5T740-375q-20 5-40 8t-40 3q-123 0-209.5-86.5T364-660q0-20 3-40t8-40q-78 32-126.5 102T200-480q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-151 0-255.5-104.5T120-480q0-138 90-239.5T440-838q13-2 23 3.5t16 14.5q6 9 6.5 21t-7.5 23q-17 26-25.5 55t-8.5 61q0 90 63 153t153 63q31 0 61.5-9t54.5-25q11-7 22.5-6.5T819-479q10 5 15.5 15t3.5 24q-14 138-117.5 229T480-120Zm0-80q88 0 158-48.5T740-375q-20 5-40 8t-40 3q-123 0-209.5-86.5T364-660q0-20 3-40t8-40q-78 32-126.5 102T200-480q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
||||||
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm40-83q119-15 199.5-104.5T800-480q0-123-80.5-212.5T520-797v634Z" /></svg>
|
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm40-83q119-15 199.5-104.5T800-480q0-123-80.5-212.5T520-797v634Z" /></svg>
|
||||||
|
icon:btn_ok = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-408-86-86q-11-11-28-11t-28 11q-11 11-11 28t11 28l114 114q12 12 28 12t28-12l226-226q11-11 11-28t-11-28q-11-11-28-11t-28 11L424-408Zm56 328q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_cancel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-424 116 116q11 11 28 11t28-11q11-11 11-28t-11-28L536-480l116-116q11-11 11-28t-11-28q-11-11-28-11t-28 11L480-536 364-652q-11-11-28-11t-28 11q-11 11-11 28t11 28l116 116-116 116q-11 11-11 28t11 28q11 11 28 11t28-11l116-116Zm0 344q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_yes = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-408-86-86q-11-11-28-11t-28 11q-11 11-11 28t11 28l114 114q12 12 28 12t28-12l226-226q11-11 11-28t-11-28q-11-11-28-11t-28 11L424-408Zm56 328q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_no = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z" /></svg>
|
||||||
|
icon:btn_close = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-424 116 116q11 11 28 11t28-11q11-11 11-28t-11-28L536-480l116-116q11-11 11-28t-11-28q-11-11-28-11t-28 11L480-536 364-652q-11-11-28-11t-28 11q-11 11-11 28t11 28l116 116-116 116q-11 11-11 28t11 28q11 11 28 11t28-11l116-116Zm0 344q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_save = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m680-272-36-36q-11-11-28-11t-28 11q-11 11-11 28t11 28l104 104q12 12 28 12t28-12l104-104q11-11 11-28t-11-28q-11-11-28-11t-28 11l-36 36v-127q0-17-11.5-28.5T720-439q-17 0-28.5 11.5T680-399v127ZM600-80h240q17 0 28.5 11.5T880-40q0 17-11.5 28.5T840 0H600q-17 0-28.5-11.5T560-40q0-17 11.5-28.5T600-80Zm-360-80q-33 0-56.5-23.5T160-240v-560q0-33 23.5-56.5T240-880h247q16 0 30.5 6t25.5 17l194 194q11 11 17 25.5t6 30.5v48q0 17-11.5 28.5T720-519q-17 0-28.5-11.5T680-559v-41H540q-25 0-42.5-17.5T480-660v-140H240v560h200q17 0 28.5 11.5T480-200q0 17-11.5 28.5T440-160H240Zm0-80v-560 560Z" /></svg>
|
||||||
|
icon:btn_browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h207q16 0 30.5 6t25.5 17l57 57h360q17 0 28.5 11.5T880-680q0 17-11.5 28.5T840-640H447l-80-80H160v480l79-263q8-26 29.5-41.5T316-560h516q41 0 64.5 32.5T909-457l-72 240q-8 26-29.5 41.5T760-160H160Zm84-80h516l72-240H316l-72 240Zm-84-262v-218 218Zm84 262 72-240-72 240Z" /></svg>
|
||||||
|
icon:btn_list = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-200q-17 0-28.5-11.5T360-240q0-17 11.5-28.5T400-280h400q17 0 28.5 11.5T840-240q0 17-11.5 28.5T800-200H400Zm0-240q-17 0-28.5-11.5T360-480q0-17 11.5-28.5T400-520h400q17 0 28.5 11.5T840-480q0 17-11.5 28.5T800-440H400Zm0-240q-17 0-28.5-11.5T360-720q0-17 11.5-28.5T400-760h400q17 0 28.5 11.5T840-720q0 17-11.5 28.5T800-680H400ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z" /></svg>
|
||||||
|
icon:btn_new = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h200q17 0 28.5 11.5T440-800q0 17-11.5 28.5T400-760H200v560h560v-200q0-17 11.5-28.5T800-440q17 0 28.5 11.5T840-400v200q0 33-23.5 56.5T760-120H200Zm440-520h-80q-17 0-28.5-11.5T520-680q0-17 11.5-28.5T560-720h80v-80q0-17 11.5-28.5T680-840q17 0 28.5 11.5T720-800v80h80q17 0 28.5 11.5T840-680q0 17-11.5 28.5T800-640h-80v80q0 17-11.5 28.5T680-520q-17 0-28.5-11.5T640-560v-80Z" /></svg>
|
||||||
|
icon:btn_create = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm126 18L314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Zm0-201Z" /></svg>
|
||||||
|
icon:btn_reset = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-200q-17 0-28.5-11.5T280-240q0-17 11.5-28.5T320-280h244q63 0 109.5-40T720-420q0-60-46.5-100T564-560H312l76 76q11 11 11 28t-11 28q-11 11-28 11t-28-11L188-572q-6-6-8.5-13t-2.5-15q0-8 2.5-15t8.5-13l144-144q11-11 28-11t28 11q11 11 11 28t-11 28l-76 76h252q97 0 166.5 63T800-420q0 94-69.5 157T564-200H320Z" /></svg>
|
||||||
|
icon:btn_insert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-560h-80q-17 0-28.5-11.5T320-600q0-17 11.5-28.5T360-640h240q17 0 28.5 11.5T640-600q0 17-11.5 28.5T600-560h-80v200q0 17-11.5 28.5T480-320q-17 0-28.5-11.5T440-360v-200ZM40-80v-160q0-17 11.5-28.5T80-280h40v-400H80q-17 0-28.5-11.5T40-720v-160q0-17 11.5-28.5T80-920h160q17 0 28.5 11.5T280-880v40h400v-40q0-17 11.5-28.5T720-920h160q17 0 28.5 11.5T920-880v160q0 17-11.5 28.5T880-680h-40v400h40q17 0 28.5 11.5T920-240v160q0 17-11.5 28.5T880-40H720q-17 0-28.5-11.5T680-80v-40H280v40q0 17-11.5 28.5T240-40H80q-17 0-28.5-11.5T40-80Zm240-120h400v-40q0-17 11.5-28.5T720-280h40v-400h-40q-17 0-28.5-11.5T680-720v-40H280v40q0 17-11.5 28.5T240-680h-40v400h40q17 0 28.5 11.5T280-240v40ZM120-760h80v-80h-80v80Zm640 0h80v-80h-80v80Zm0 640h80v-80h-80v80Zm-640 0h80v-80h-80v80Zm80-640Zm560 0Zm0 560Zm-560 0Z" /></svg>
|
||||||
|
icon:btn_apply = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-424-86-86q-11-11-28-11t-28 11q-11 11-11 28t11 28l114 114q12 12 28 12t28-12l226-226q11-11 11-28t-11-28q-11-11-28-11t-28 11L424-424ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z" /></svg>
|
||||||
|
icon:btn_build = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M760-252v72q0 8 6 14t14 6q8 0 14-6t6-14v-120q0-8-6-14t-14-6H660q-8 0-14 6t-6 14q0 8 6 14t14 6h72l-98 98q-6 6-6 14t6 14q6 6 14 6t14-6l98-98ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v200q0 17-11.5 28.5T800-520q-17 0-28.5-11.5T760-560v-200H200v560h200q17 0 28.5 11.5T440-160q0 17-11.5 28.5T400-120H200Zm0-120v40-560 243-3 280Zm80-80q0 17 11.5 28.5T320-280h83q17 0 28.5-11.5T443-320q0-17-11.5-28.5T403-360h-83q-17 0-28.5 11.5T280-320Zm0-160q0 17 11.5 28.5T320-440h200q17 0 28.5-11.5T560-480q0-17-11.5-28.5T520-520H320q-17 0-28.5 11.5T280-480Zm0-160q0 17 11.5 28.5T320-600h320q17 0 28.5-11.5T680-640q0-17-11.5-28.5T640-680H320q-17 0-28.5 11.5T280-640ZM720-40q-83 0-141.5-58.5T520-240q0-83 58.5-141.5T720-440q83 0 141.5 58.5T920-240q0 83-58.5 141.5T720-40Z" /></svg>
|
||||||
|
icon:btn_print = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-120q-33 0-56.5-23.5T240-200v-80h-80q-33 0-56.5-23.5T80-360v-160q0-51 35-85.5t85-34.5h560q51 0 85.5 34.5T880-520v160q0 33-23.5 56.5T800-280h-80v80q0 33-23.5 56.5T640-120H320ZM160-360h80q0-33 23.5-56.5T320-440h320q33 0 56.5 23.5T720-360h80v-160q0-17-11.5-28.5T760-560H200q-17 0-28.5 11.5T160-520v160Zm480-280v-120H320v120h-80v-120q0-33 23.5-56.5T320-840h320q33 0 56.5 23.5T720-760v120h-80Zm80 180q17 0 28.5-11.5T760-500q0-17-11.5-28.5T720-540q-17 0-28.5 11.5T680-500q0 17 11.5 28.5T720-460Zm-80 260v-160H320v160h320ZM160-560h640-640Z" /></svg>
|
||||||
|
icon:btn_preview = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-480H200v480Zm280-80q-82 0-146.5-44.5T240-440q29-71 93.5-115.5T480-600q82 0 146.5 44.5T720-440q-29 71-93.5 115.5T480-280Zm0-60q56 0 102-26.5t72-73.5q-26-47-72-73.5T480-540q-56 0-102 26.5T306-440q26 47 72 73.5T480-340Zm0-100Zm0 60q25 0 42.5-17.5T540-440q0-25-17.5-42.5T480-500q-25 0-42.5 17.5T420-440q0 25 17.5 42.5T480-380Z" /></svg>
|
||||||
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z" /></svg>
|
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-440H240q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h200v-200q0-17 11.5-28.5T480-760q17 0 28.5 11.5T520-720v200h200q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H520v200q0 17-11.5 28.5T480-200q-17 0-28.5-11.5T440-240v-200Z" /></svg>
|
||||||
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-160 232-88q-40 17-76-6.5T120-161v-519q0-33 23.5-56.5T200-760h400q33 0 56.5 23.5T680-680v519q0 43-36 66.5T568-88l-168-72Zm0-88 200 86v-518H200v518l200-86Zm400 88q-17 0-28.5-11.5T760-200v-640H280q-17 0-28.5-11.5T240-880q0-17 11.5-28.5T280-920h480q33 0 56.5 23.5T840-840v640q0 17-11.5 28.5T800-160ZM400-680H200h400-200Z" /></svg>
|
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-160 232-88q-40 17-76-6.5T120-161v-519q0-33 23.5-56.5T200-760h400q33 0 56.5 23.5T680-680v519q0 43-36 66.5T568-88l-168-72Zm0-88 200 86v-518H200v518l200-86Zm400 88q-17 0-28.5-11.5T760-200v-640H280q-17 0-28.5-11.5T240-880q0-17 11.5-28.5T280-920h480q33 0 56.5 23.5T840-840v640q0 17-11.5 28.5T800-160ZM400-680H200h400-200Z" /></svg>
|
||||||
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h207q16 0 30.5 6t25.5 17l57 57h360q17 0 28.5 11.5T880-680q0 17-11.5 28.5T840-640H447l-80-80H160v480l79-263q8-26 29.5-41.5T316-560h516q41 0 64.5 32.5T909-457l-72 240q-8 26-29.5 41.5T760-160H160Zm84-80h516l72-240H316l-72 240Zm-84-262v-218 218Zm84 262 72-240-72 240Z" /></svg>
|
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h207q16 0 30.5 6t25.5 17l57 57h360q17 0 28.5 11.5T880-680q0 17-11.5 28.5T840-640H447l-80-80H160v480l79-263q8-26 29.5-41.5T316-560h516q41 0 64.5 32.5T909-457l-72 240q-8 26-29.5 41.5T760-160H160Zm84-80h516l72-240H316l-72 240Zm-84-262v-218 218Zm84 262 72-240-72 240Z" /></svg>
|
||||||
@@ -94,7 +111,6 @@ icon:minimise = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z" /></svg>
|
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M420-308q-8 0-14-5.5t-6-14.5v-304q0-9 6-14.5t14-5.5q2 0 14 6l145 145q5 5 7 10t2 11q0 6-2 11t-7 10L434-314q-3 3-6.5 4.5T420-308Z" /></svg>
|
||||||
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z" /></svg>
|
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z" /></svg>
|
||||||
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z" /></svg>
|
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-440h320q17 0 28.5-11.5T680-480q0-17-11.5-28.5T640-520H320q-17 0-28.5 11.5T280-480q0 17 11.5 28.5T320-440ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z" /></svg>
|
||||||
icon:open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h240q17 0 28.5 11.5T480-800q0 17-11.5 28.5T440-760H200v560h560v-240q0-17 11.5-28.5T800-480q17 0 28.5 11.5T840-440v240q0 33-23.5 56.5T760-120H200Zm560-584L416-360q-11 11-28 11t-28-11q-11-11-11-28t11-28l344-344H600q-17 0-28.5-11.5T560-800q0-17 11.5-28.5T600-840h200q17 0 28.5 11.5T840-800v200q0 17-11.5 28.5T800-560q-17 0-28.5-11.5T760-600v-104Z" /></svg>
|
|
||||||
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-200v120h560v-120H200Zm0-80h560v-360H200v360Zm0 80v120-120Z" /></svg>
|
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-200v120h560v-120H200Zm0-80h560v-360H200v360Zm0 80v120-120Z" /></svg>
|
||||||
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M640-760v280l68 68q6 6 9 13.5t3 15.5v23q0 17-11.5 28.5T680-320H520v223q0 8-3 15.5T508-68l-14 14q-6 6-14 6t-14-6l-14-14q-6-6-9-13.5T440-97v-223H280q-17 0-28.5-11.5T240-360v-23q0-8 3-15.5t9-13.5l68-68v-280q-17 0-28.5-11.5T280-800q0-17 11.5-28.5T320-840h320q17 0 28.5 11.5T680-800q0 17-11.5 28.5T640-760ZM354-400h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M640-760v280l68 68q6 6 9 13.5t3 15.5v23q0 17-11.5 28.5T680-320H520v223q0 8-3 15.5T508-68l-14 14q-6 6-14 6t-14-6l-14-14q-6-6-9-13.5T440-97v-223H280q-17 0-28.5-11.5T240-360v-23q0-8 3-15.5t9-13.5l68-68v-280q-17 0-28.5-11.5T280-800q0-17 11.5-28.5T320-840h320q17 0 28.5 11.5T680-800q0 17-11.5 28.5T640-760ZM354-400h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
||||||
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120q-33 0-56.5-23.5T40-200v-480q0-17 11.5-28.5T80-720q17 0 28.5 11.5T120-680v480h640q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H120Zm160-160q-33 0-56.5-23.5T200-360v-440q0-33 23.5-56.5T280-880h167q16 0 30.5 6t25.5 17l57 57h280q33 0 56.5 23.5T920-720v360q0 33-23.5 56.5T840-280H280Zm0-80h560v-360H527l-80-80H280v440Zm0 0v-440 440Z" /></svg>
|
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120q-33 0-56.5-23.5T40-200v-480q0-17 11.5-28.5T80-720q17 0 28.5 11.5T120-680v480h640q17 0 28.5 11.5T800-160q0 17-11.5 28.5T760-120H120Zm160-160q-33 0-56.5-23.5T200-360v-440q0-33 23.5-56.5T280-880h167q16 0 30.5 6t25.5 17l57 57h280q33 0 56.5 23.5T920-720v360q0 33-23.5 56.5T840-280H280Zm0-80h560v-360H527l-80-80H280v440Zm0 0v-440 440Z" /></svg>
|
||||||
@@ -103,7 +119,6 @@ icon:refresh = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z" /></svg>
|
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M240-440q-17 0-28.5-11.5T200-480q0-17 11.5-28.5T240-520h480q17 0 28.5 11.5T760-480q0 17-11.5 28.5T720-440H240Z" /></svg>
|
||||||
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm0-280q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Z" /></svg>
|
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-126 0-223-76.5T131-392q-4-15 6-27.5t27-14.5q16-2 29 6t18 24q24 90 99 147t170 57q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h70q17 0 28.5 11.5T360-600q0 17-11.5 28.5T320-560H160q-17 0-28.5-11.5T120-600v-160q0-17 11.5-28.5T160-800q17 0 28.5 11.5T200-760v54q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Zm0-280q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Z" /></svg>
|
||||||
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm7-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z" /></svg>
|
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M433-80q-27 0-46.5-18T363-142l-9-66q-13-5-24.5-12T307-235l-62 26q-25 11-50 2t-39-32l-47-82q-14-23-8-49t27-43l53-40q-1-7-1-13.5v-27q0-6.5 1-13.5l-53-40q-21-17-27-43t8-49l47-82q14-23 39-32t50 2l62 26q11-8 23-15t24-12l9-66q4-26 23.5-44t46.5-18h94q27 0 46.5 18t23.5 44l9 66q13 5 24.5 12t22.5 15l62-26q25-11 50-2t39 32l47 82q14 23 8 49t-27 43l-53 40q1 7 1 13.5v27q0 6.5-2 13.5l53 40q21 17 27 43t-8 49l-48 82q-14 23-39 32t-50-2l-60-26q-11 8-23 15t-24 12l-9 66q-4 26-23.5 44T527-80h-94Zm7-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z" /></svg>
|
||||||
icon:star = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm126 18L314-169q-11 7-23 6t-21-8q-9-7-14-17.5t-2-23.5l44-189-147-127q-10-9-12.5-20.5T140-571q4-11 12-18t22-9l194-17 75-178q5-12 15.5-18t21.5-6q11 0 21.5 6t15.5 18l75 178 194 17q14 2 22 9t12 18q4 11 1.5 22.5T809-528L662-401l44 189q3 13-2 23.5T690-171q-9 7-21 8t-23-6L480-269Zm0-201Z" /></svg>
|
|
||||||
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m110-190 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-536L596-244q-23 26-57 27.5T480-240L380-340 170-130q-13 13-30 13t-30-13q-13-13-13-30t13-30Zm0-240 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-776L596-484q-23 26-57 27.5T480-480L380-580 170-370q-13 13-30 13t-30-13q-13-13-13-30t13-30Z" /></svg>
|
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m110-190 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-536L596-244q-23 26-57 27.5T480-240L380-340 170-130q-13 13-30 13t-30-13q-13-13-13-30t13-30Zm0-240 213-213q23-23 57-23t57 23l103 103 256-289q11-13 28.5-13t29.5 12q11 11 11.5 26.5T855-776L596-484q-23 26-57 27.5T480-480L380-580 170-370q-13 13-30 13t-30-13q-13-13-13-30t13-30Z" /></svg>
|
||||||
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h320q17 0 28.5 11.5T560-240q0 17-11.5 28.5T520-200H200Zm0-160q-17 0-28.5-11.5T160-400q0-17 11.5-28.5T200-440h560q17 0 28.5 11.5T800-400q0 17-11.5 28.5T760-360H200Zm0-160q-17 0-28.5-11.5T160-560q0-17 11.5-28.5T200-600h560q17 0 28.5 11.5T800-560q0 17-11.5 28.5T760-520H200Zm0-160q-17 0-28.5-11.5T160-720q0-17 11.5-28.5T200-760h560q17 0 28.5 11.5T800-720q0 17-11.5 28.5T760-680H200Z" /></svg>
|
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200q-17 0-28.5-11.5T160-240q0-17 11.5-28.5T200-280h320q17 0 28.5 11.5T560-240q0 17-11.5 28.5T520-200H200Zm0-160q-17 0-28.5-11.5T160-400q0-17 11.5-28.5T200-440h560q17 0 28.5 11.5T800-400q0 17-11.5 28.5T760-360H200Zm0-160q-17 0-28.5-11.5T160-560q0-17 11.5-28.5T200-600h560q17 0 28.5 11.5T800-560q0 17-11.5 28.5T760-520H200Zm0-160q-17 0-28.5-11.5T160-720q0-17 11.5-28.5T200-760h560q17 0 28.5 11.5T800-720q0 17-11.5 28.5T760-680H200Z" /></svg>
|
||||||
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-800q60 0 117.5 20T706-722l28-28q11-11 28-11t28 11q11 11 11 28t-11 28l-28 28q38 51 58 108.5T840-440q0 26-4 51.5T824-337q-7 22-22.5 29t-29.5 2q-14-5-23.5-18t-3.5-30q8-22 11.5-43.5T760-440q0-116-82-198t-198-82q-20 0-43 3.5T391-705q-17 5-29-4t-17-23q-5-14 1.5-29.5T373-784q26-8 53-12t54-4Zm40 248v-48q0-17-11.5-28.5T480-640q-10 0-18.5 4T448-624l72 72ZM480-80q-74 0-139.5-28.5T226-186q-49-49-77.5-114.5T120-440q0-60 18.5-115.5T192-656L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-68-68q-48 35-103.5 53.5T480-80Zm0-80q42 0 82-13t75-37L248-599q-24 35-36 75t-12 84q0 116 82 198t198 82Zm-80-680q-17 0-28.5-11.5T360-880q0-17 11.5-28.5T400-920h160q17 0 28.5 11.5T600-880q0 17-11.5 28.5T560-840H400Zm43 435Zm113-112Z" /></svg>
|
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-800q60 0 117.5 20T706-722l28-28q11-11 28-11t28 11q11 11 11 28t-11 28l-28 28q38 51 58 108.5T840-440q0 26-4 51.5T824-337q-7 22-22.5 29t-29.5 2q-14-5-23.5-18t-3.5-30q8-22 11.5-43.5T760-440q0-116-82-198t-198-82q-20 0-43 3.5T391-705q-17 5-29-4t-17-23q-5-14 1.5-29.5T373-784q26-8 53-12t54-4Zm40 248v-48q0-17-11.5-28.5T480-640q-10 0-18.5 4T448-624l72 72ZM480-80q-74 0-139.5-28.5T226-186q-49-49-77.5-114.5T120-440q0-60 18.5-115.5T192-656L84-764q-11-11-11-28t11-28q11-11 28-11t28 11l680 680q11 11 11 28t-11 28q-11 11-28 11t-28-11l-68-68q-48 35-103.5 53.5T480-80Zm0-80q42 0 82-13t75-37L248-599q-24 35-36 75t-12 84q0 116 82 198t198 82Zm-80-680q-17 0-28.5-11.5T360-880q0-17 11.5-28.5T400-920h160q17 0 28.5 11.5T600-880q0 17-11.5 28.5T560-840H400Zm43 435Zm113-112Z" /></svg>
|
||||||
|
|||||||
@@ -59,6 +59,23 @@ icon:sb_stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 40q-66.85 0-113.42-46.58Q320-413.15 320-480t46.58-113.42Q413.15-640 480-640t113.42 46.58Q640-546.85 640-480t-46.58 113.42Q546.85-320 480-320ZM80-460q-8.5 0-14.25-5.76T60-480.03q0-8.51 5.75-14.24T80-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T180-460H80Zm700 0q-8.5 0-14.25-5.76T760-480.03q0-8.51 5.75-14.24T780-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T880-460H780ZM479.97-760q-8.51 0-14.24-5.75T460-780v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-880v100q0 8.5-5.76 14.25T479.97-760Zm0 700q-8.51 0-14.24-5.75T460-80v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-180v100q0 8.5-5.76 14.25T479.97-60ZM254.46-678.77l-57.61-55.85q-5.85-5.61-5.73-13.76.11-8.16 5.96-14.77 6.38-6.62 14.15-6.62 7.77 0 14.15 6.62L282-706.31q6.38 6.62 6.38 14.16 0 7.53-6 14.15t-13.65 6.12q-7.65-.5-14.27-6.89Zm480.16 481.92L678-253.69q-6.38-6.62-6.38-14.27 0-7.66 6.38-14.04 5.23-6.62 13.08-6.12 7.84.5 14.46 6.89l57.61 55.85q5.85 5.61 5.73 13.76-.11 8.16-5.96 14.77-6.38 6.62-14.15 6.62-7.77 0-14.15-6.62ZM678-677.62q-6.62-6-6.12-13.65t6.89-14.27l55.85-57.61q5.61-5.85 13.76-5.73 8.16.11 14.77 5.96 6.62 6.38 6.62 14.15 0 7.77-6.62 14.15L706.31-678q-6.62 6.38-14.16 6.38-7.53 0-14.15-6ZM196.85-196.68q-6.62-6.78-6.62-14.55 0-7.77 6.62-14.15L253.69-282q6.62-6.38 14.27-6.38 7.66 0 14.04 6.38 5.85 5.23 5.35 13.08-.5 7.84-6.12 14.46l-55.85 57.61q-6.38 6.62-14.15 6.5-7.77-.11-14.38-6.33ZM480-480Z" /></svg>
|
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 40q-66.85 0-113.42-46.58Q320-413.15 320-480t46.58-113.42Q413.15-640 480-640t113.42 46.58Q640-546.85 640-480t-46.58 113.42Q546.85-320 480-320ZM80-460q-8.5 0-14.25-5.76T60-480.03q0-8.51 5.75-14.24T80-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T180-460H80Zm700 0q-8.5 0-14.25-5.76T760-480.03q0-8.51 5.75-14.24T780-500h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T880-460H780ZM479.97-760q-8.51 0-14.24-5.75T460-780v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-880v100q0 8.5-5.76 14.25T479.97-760Zm0 700q-8.51 0-14.24-5.75T460-80v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-180v100q0 8.5-5.76 14.25T479.97-60ZM254.46-678.77l-57.61-55.85q-5.85-5.61-5.73-13.76.11-8.16 5.96-14.77 6.38-6.62 14.15-6.62 7.77 0 14.15 6.62L282-706.31q6.38 6.62 6.38 14.16 0 7.53-6 14.15t-13.65 6.12q-7.65-.5-14.27-6.89Zm480.16 481.92L678-253.69q-6.38-6.62-6.38-14.27 0-7.66 6.38-14.04 5.23-6.62 13.08-6.12 7.84.5 14.46 6.89l57.61 55.85q5.85 5.61 5.73 13.76-.11 8.16-5.96 14.77-6.38 6.62-14.15 6.62-7.77 0-14.15-6.62ZM678-677.62q-6.62-6-6.12-13.65t6.89-14.27l55.85-57.61q5.61-5.85 13.76-5.73 8.16.11 14.77 5.96 6.62 6.38 6.62 14.15 0 7.77-6.62 14.15L706.31-678q-6.62 6.38-14.16 6.38-7.53 0-14.15-6ZM196.85-196.68q-6.62-6.78-6.62-14.55 0-7.77 6.62-14.15L253.69-282q6.62-6.38 14.27-6.38 7.66 0 14.04 6.38 5.85 5.23 5.35 13.08-.5 7.84-6.12 14.46l-55.85 57.61q-6.38 6.62-14.15 6.5-7.77-.11-14.38-6.33ZM480-480Z" /></svg>
|
||||||
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M482.31-160Q349-160 255.65-253.35 162.31-346.69 162.31-480q0-98.77 56.54-181.42 56.53-82.66 160.38-118.89 12.23-4.31 21.46-2.27 9.23 2.04 15.23 7.96 6 5.93 7.66 15.24 1.65 9.3-2.5 19.53-7.77 19.08-11.27 38.66t-3.5 41.19q0 106.67 74.66 181.33Q555.64-404 662.31-404q27.92 0 51.11-5.92 23.2-5.93 39.5-9.62 8.7-1.61 15.96.42 7.27 2.04 11.54 7.04 4.73 5 6.39 12.31 1.65 7.31-1.89 16.69-28.61 98-112.11 160.54Q589.31-160 482.31-160Zm0-40q88 0 158-48.5t102-126.5q-20 5-40 8t-40 3q-123 0-209.5-86.5T366.31-660q0-20 3-40t8-40q-78 32-126.5 102t-48.5 158q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M482.31-160Q349-160 255.65-253.35 162.31-346.69 162.31-480q0-98.77 56.54-181.42 56.53-82.66 160.38-118.89 12.23-4.31 21.46-2.27 9.23 2.04 15.23 7.96 6 5.93 7.66 15.24 1.65 9.3-2.5 19.53-7.77 19.08-11.27 38.66t-3.5 41.19q0 106.67 74.66 181.33Q555.64-404 662.31-404q27.92 0 51.11-5.92 23.2-5.93 39.5-9.62 8.7-1.61 15.96.42 7.27 2.04 11.54 7.04 4.73 5 6.39 12.31 1.65 7.31-1.89 16.69-28.61 98-112.11 160.54Q589.31-160 482.31-160Zm0-40q88 0 158-48.5t102-126.5q-20 5-40 8t-40 3q-123 0-209.5-86.5T366.31-660q0-20 3-40t8-40q-78 32-126.5 102t-48.5 158q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
||||||
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120ZM500-160.69q123.62-8.08 211.81-98.35T800-480q0-130.69-87.42-220.19-87.43-89.5-212.58-99.12v638.62Z" /></svg>
|
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120ZM500-160.69q123.62-8.08 211.81-98.35T800-480q0-130.69-87.42-220.19-87.43-89.5-212.58-99.12v638.62Z" /></svg>
|
||||||
|
icon:btn_ok = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m422.46-380.31-99.84-99.84q-5.62-5.62-13.77-6-8.16-.39-14.54 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15l105.54 105.54q9.69 9.69 22.61 9.69t22.62-9.69l219.07-219.07q5.62-5.62 6-13.77.39-8.16-6-14.54-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L422.46-380.31ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_cancel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-451.69 129.85 129.84q5.61 5.62 13.77 6 8.15.39 14.53-6 6.39-6.38 6.39-14.15 0-7.77-6.39-14.15L508.31-480l129.84-129.85q5.62-5.61 6-13.77.39-8.15-6-14.53-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L480-508.31 350.15-638.15q-5.61-5.62-13.77-6-8.15-.39-14.53 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15L451.69-480 321.85-350.15q-5.62 5.61-6 13.77-.39 8.15 6 14.53 6.38 6.39 14.15 6.39 7.77 0 14.15-6.39L480-451.69Zm.13 331.69q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_yes = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m422.46-380.31-99.84-99.84q-5.62-5.62-13.77-6-8.16-.39-14.54 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15l105.54 105.54q9.69 9.69 22.61 9.69t22.62-9.69l219.07-219.07q5.62-5.62 6-13.77.39-8.16-6-14.54-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L422.46-380.31ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_no = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-460h320q8.5 0 14.25-5.76t5.75-14.27q0-8.51-5.75-14.24T640-500H320q-8.5 0-14.25 5.76T300-479.97q0 8.51 5.75 14.24T320-460Zm160.13 340q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h204.61q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T429.23-760H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-204.61q0-8.54 5.73-14.27t14.27-5.73q8.54 0 14.27 5.73t5.73 14.27v204.61q0 27.62-18.5 46.12Q763-160 735.38-160H224.62ZM760-731.69 403.69-375.38q-5.61 5.61-13.77 6-8.15.38-14.54-6-6.38-6.39-6.38-14.16 0-7.77 6.38-14.15L731.69-760H580q-8.54 0-14.27-5.73T560-780q0-8.54 5.73-14.27T580-800h187.69q13.93 0 23.12 9.19 9.19 9.19 9.19 23.12V-580q0 8.54-5.73 14.27T780-560q-8.54 0-14.27-5.73T760-580v-151.69Z" /></svg>
|
||||||
|
icon:btn_close = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m480-451.69 129.85 129.84q5.61 5.62 13.77 6 8.15.39 14.53-6 6.39-6.38 6.39-14.15 0-7.77-6.39-14.15L508.31-480l129.84-129.85q5.62-5.61 6-13.77.39-8.15-6-14.53-6.38-6.39-14.15-6.39-7.77 0-14.15 6.39L480-508.31 350.15-638.15q-5.61-5.62-13.77-6-8.15-.39-14.53 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15L451.69-480 321.85-350.15q-5.62 5.61-6 13.77-.39 8.15 6 14.53 6.38 6.39 14.15 6.39 7.77 0 14.15-6.39L480-451.69Zm.13 331.69q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_save = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m700-223.54-70.62-70.61q-5.61-5.62-13.38-5.62-7.77 0-13.38 5.62-5.62 5.61-5.62 13.89 0 8.29 5.62 13.64l94.76 95.54q9.7 9.7 22.62 9.7 12.92 0 22.62-9.7l95.53-95.54q5.62-5.35 5.62-13.64 0-8.28-5.62-13.89-5.61-5.62-13.89-5.62-8.29 0-13.64 5.62L740-223.54V-399q0-8.5-5.76-14.25T719.97-419q-8.51 0-14.24 5.75T700-399v175.46ZM600-60h240q8.5 0 14.25 5.76T860-39.97q0 8.51-5.75 14.24T840-20H600q-8.5 0-14.25-5.76T580-40.03q0-8.51 5.75-14.24T600-60ZM244.62-180q-26.08 0-45.35-19.27Q180-218.54 180-244.62v-550.76q0-26.08 19.27-45.35Q218.54-860 244.62-860h248.53q13.27 0 25.29 5.23t20.71 13.92l181.7 181.7q8.69 8.69 13.92 20.71 5.23 12.02 5.23 25.29v78.77q0 8.5-5.76 14.25t-14.27 5.75q-8.51 0-14.24-5.75T700-534.38V-620H548.46q-20.19 0-34.33-14.13Q500-648.27 500-668.46V-820H244.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v550.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h220q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T464.62-180h-220ZM220-220v-600 600Z" /></svg>
|
||||||
|
icon:btn_browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760H357q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L463.85-680h349.23q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T813.08-640H447.77l-80-80H184.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7V-240q0-10.77 4.23-8.08 4.23 2.7 11.15 6.54l76.7-256.84q6.46-20.62 23.73-33.43 17.27-12.81 38.65-12.81h512.92q32.54 0 52.2 25.97 19.65 25.96 10.19 57.03l-65.85 219.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Zm37.08-40h546q8.46 0 15-4.62 6.54-4.61 8.84-13.07l64.31-215.39q3.85-12.3-3.85-21.92-7.69-9.62-20-9.62H314.46q-8.46 0-15 4.62-6.54 4.62-8.84 13.08L217.08-240ZM160-498.15V-720v221.85ZM217.08-240l73.54-246.92q2.3-8.46 3.84-13.08l1.54-4.62-2.69 9.62q-2.69 9.62-6.54 21.92l-64.31 215.39q-2.31 8.46-3.84 13.07l-1.54 4.62Z" /></svg>
|
||||||
|
icon:btn_list = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M404.62-220q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73H780q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-220H404.62Zm0-240q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73H780q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-460H404.62Zm0-240q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73H780q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-700H404.62ZM213.08-186.92q-21.9 0-37.49-15.59Q160-218.11 160-240t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Zm0-240q-21.9 0-37.49-15.59Q160-458.11 160-480t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Zm0-240q-21.9 0-37.49-15.59Q160-698.11 160-720t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Z" /></svg>
|
||||||
|
icon:btn_new = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h180q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T404.62-760h-180q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-180q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v180q0 27.62-18.5 46.12Q763-160 735.38-160H224.62ZM640-640H540q-8.5 0-14.25-5.76T520-660.03q0-8.51 5.75-14.24T540-680h100v-100q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T680-780v100h100q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T780-640H680v100q0 8.5-5.76 14.25T659.97-520q-8.51 0-14.24-5.75T640-540v-100Z" /></svg>
|
||||||
|
icon:btn_create = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm126-28.92-145.23 87.69q-6.39 3.15-11.85 2.54-5.46-.62-10.61-3.77-5.16-3.16-7.85-9.04-2.69-5.88-.46-12.73l38.62-164.39-127.77-110.84q-5.39-4.39-7.12-10.5-1.73-6.12.73-11.73 2.46-5.62 6.62-9.16 4.15-3.53 11.23-4.77l168.61-14.69L460.69-733q2.69-6.62 7.81-9.54 5.12-2.92 11.5-2.92t11.5 2.92q5.12 2.92 7.81 9.54l65.77 155.69 168.61 14.69q7.08 1.24 11.23 4.77 4.16 3.54 6.62 9.16 2.46 5.61.73 11.73-1.73 6.11-7.12 10.5L617.38-415.62 656-251.23q2.23 6.85-.46 12.73-2.69 5.88-7.85 9.04-5.15 3.15-10.61 3.77-5.46.61-11.85-2.54L480-315.92ZM480-470Z" /></svg>
|
||||||
|
icon:btn_reset = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M316.15-240q-8.53 0-14.27-5.73-5.73-5.73-5.73-14.27t5.73-14.27q5.74-5.73 14.27-5.73h270.16q62.23 0 106.04-42.69 43.8-42.69 43.8-104.23 0-61.54-43.8-103.85-43.81-42.31-106.04-42.31H276.62l104.46 104.46q6.38 6.39 6.38 14.16 0 7.77-6.38 14.15-6.39 6.39-14.54 6-8.16-.38-13.77-6L222.62-570.46q-5.24-5.23-7.35-10.69-2.12-5.47-2.12-11.93t2.12-11.92q2.11-5.46 7.35-10.69l130.15-130.16q6.38-6.38 14.15-6.38 7.77 0 14.16 6.38 6.38 6.39 6 14.54-.39 8.16-6 13.77L276.62-613.08h309.69q78.54 0 134.19 54.16 55.65 54.15 55.65 132 0 77.84-55.65 132.38Q664.85-240 586.31-240H316.15Z" /></svg>
|
||||||
|
icon:btn_insert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-600H360q-8.5 0-14.25-5.76T340-620.03q0-8.51 5.75-14.24T360-640h240q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T600-600H500v260q0 8.5-5.76 14.25T479.97-320q-8.51 0-14.24-5.75T460-340v-260ZM95.38-127.69v-104.62q0-13.73 9.29-23.02t23.02-9.29H160v-430.76h-32.44q-13.79 0-22.98-9.29-9.2-9.29-9.2-23.02v-104.62q0-13.73 9.29-23.02t23.02-9.29h104.62q13.73 0 23.02 9.29t9.29 23.02V-800h430.76v-32.44q0-13.79 9.29-22.98 9.29-9.2 23.02-9.2h104.62q13.73 0 23.02 9.29t9.29 23.02v104.62q0 13.73-9.29 23.02t-23.02 9.29H800v430.76h32.44q13.79 0 22.98 9.29 9.2 9.29 9.2 23.02v104.62q0 13.73-9.29 23.02t-23.02 9.29H727.69q-13.73 0-23.02-9.29t-9.29-23.02V-160H264.62v32.44q0 13.79-9.29 22.98-9.29 9.2-23.02 9.2H127.69q-13.73 0-23.02-9.29t-9.29-23.02ZM264.62-200h430.76v-32.44q0-13.79 9.29-22.98 9.29-9.2 23.02-9.2H760v-430.76h-32.44q-13.79 0-22.98-9.29-9.2-9.29-9.2-23.02V-760H264.62v32.44q0 13.79-9.29 22.98-9.29 9.2-23.02 9.2H200v430.76h32.44q13.79 0 22.98 9.29 9.2 9.29 9.2 23.02V-200ZM135.38-735.38h89.24v-89.24h-89.24v89.24Zm600 0h89.24v-89.24h-89.24v89.24Zm0 600h89.24v-89.24h-89.24v89.24Zm-600 0h89.24v-89.24h-89.24v89.24Zm89.24-600Zm510.76 0Zm0 510.76Zm-510.76 0Z" /></svg>
|
||||||
|
icon:btn_apply = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-396.31-99.85-99.84q-5.61-5.62-13.77-6-8.15-.39-14.53 6-6.39 6.38-6.39 14.15 0 7.77 6.39 14.15l105.53 105.54q9.7 9.69 22.62 9.69 12.92 0 22.62-9.69l219.07-219.07q5.62-5.62 6-13.77.39-8.16-6-14.54-6.38-6.39-14.15-6.39-7.77 0-14.16 6.39L424-396.31ZM224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h510.76q27.62 0 46.12 18.5Q800-763 800-735.38v510.76q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Zm0-40h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-510.76q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69ZM200-760v560-560Z" /></svg>
|
||||||
|
icon:btn_build = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M763.85-257.38V-190q0 6.15 4.61 10.77 4.62 4.61 10.77 4.61 6.15 0 10.77-4.61 4.62-4.62 4.62-10.77v-103.85q0-6.46-4.85-11.3-4.85-4.85-11.31-4.85H674.62q-6.16 0-10.77 4.62-4.62 4.61-4.62 10.76 0 6.16 4.62 10.77 4.61 4.62 10.77 4.62H742l-90.31 90.31q-4.46 4.46-4.84 10.54-.39 6.07 4.84 11.3 4.74 4.46 11.07 4.46 6.32 0 10.78-4.46l90.31-90.3ZM224.62-160q-26.66 0-45.64-18.98T160-224.62v-510.76q0-26.66 18.98-45.64T224.62-800h510.76q26.66 0 45.64 18.98T800-735.38v204.61q0 8.5-5.76 14.25t-14.27 5.75q-8.51 0-14.24-5.75T760-530.77v-204.61q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h204.61q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T429.23-160H224.62ZM200-239.73V-200v-560V-507.77v-3 271.04Zm100-89.47q0 8.51 5.75 14.24t14.25 5.73h118.38q8.5 0 14.25-5.76t5.75-14.27q0-8.51-5.75-14.24t-14.25-5.73H320q-8.5 0-14.25 5.76-5.75 5.75-5.75 14.27Zm0-150.77q0 8.51 5.75 14.24T320-460h259.23q8.5 0 14.25-5.76t5.75-14.27q0-8.51-5.75-14.24T579.23-500H320q-8.5 0-14.25 5.76T300-479.97Zm0-150.77q0 8.51 5.75 14.24t14.25 5.73h320q8.5 0 14.25-5.76 5.75-5.75 5.75-14.27 0-8.51-5.75-14.24T640-650.77H320q-8.5 0-14.25 5.76T300-630.74ZM720-75.38q-66.85 0-113.42-46.58Q560-168.54 560-235.38q0-66.85 46.58-113.43 46.57-46.57 113.42-46.57t113.42 46.57Q880-302.23 880-235.38q0 66.84-46.58 113.42Q786.85-75.38 720-75.38Z" /></svg>
|
||||||
|
icon:btn_print = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M344.62-160q-26.66 0-45.64-18.98T280-224.62V-320h-72.31q-26.65 0-45.63-18.98-18.98-18.98-18.98-45.64v-150.76q0-34 23.07-57 23.08-23 56.93-23h513.84q34 0 57 23t23 57v150.76q0 26.66-18.98 45.64T752.31-320H680v95.38q0 26.66-18.98 45.64T615.38-160H344.62ZM207.69-360H280q1.54-25.31 20.07-43.42 18.53-18.12 44.55-18.12h270.76q26.02 0 44.55 18.12Q678.46-385.31 680-360h72.31q10.77 0 17.69-6.92 6.92-6.93 6.92-17.7v-150.76q0-17-11.5-28.5t-28.5-11.5H223.08q-17 0-28.5 11.5t-11.5 28.5v150.76q0 10.77 6.92 17.7 6.92 6.92 17.69 6.92ZM640-615.38v-95.39q0-10.77-6.92-17.69-6.93-6.92-17.7-6.92H344.62q-10.77 0-17.7 6.92-6.92 6.92-6.92 17.69v95.39h-40v-95.39q0-26.65 18.98-45.63 18.98-18.99 45.64-18.99h270.76q26.66 0 45.64 18.99Q680-737.42 680-710.77v95.39h-40Zm64.62 140q17 0 28.5-11.5t11.5-28.5q0-17-11.5-28.5t-28.5-11.5q-17 0-28.5 11.5t-11.5 28.5q0 17 11.5 28.5t28.5 11.5ZM640-224.62v-132.3q0-10.77-6.92-17.7-6.93-6.92-17.7-6.92H344.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v132.3q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92h270.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7ZM207.69-575.38h-24.61 593.84-569.23Z" /></svg>
|
||||||
|
icon:btn_preview = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-26.66 0-45.64-18.98T160-224.62v-510.76q0-26.66 18.98-45.64T224.62-800h510.76q26.66 0 45.64 18.98T800-735.38v510.76q0 26.66-18.98 45.64T735.38-160H224.62Zm0-40h510.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7V-680H200v455.38q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92ZM480-320q-65.08 0-117.27-33.35-52.19-33.34-78.88-86.65 26.69-53.31 78.88-86.65Q414.92-560 480-560t117.27 33.35q52.19 33.34 78.88 86.65-26.69 53.31-78.88 86.65Q545.08-320 480-320Zm0-35.38q47.54 0 88.54-22.27 41-22.27 69.31-62.35-28.31-40.08-69.31-62.35-41-22.27-88.54-22.27-47.54 0-88.54 22.27-41 22.27-69.31 62.35 28.31 40.08 69.31 62.35 41 22.27 88.54 22.27Zm0-84.62Zm.18 44.62q18.67 0 31.55-13.07 12.89-13.07 12.89-31.73 0-18.67-13.07-31.55-13.07-12.89-31.73-12.89-18.67 0-31.55 13.07-12.89 13.07-12.89 31.73 0 18.67 13.07 31.55 13.07 12.89 31.73 12.89Z" /></svg>
|
||||||
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-460H260q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h200v-200q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-700v200h200q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H500v200q0 8.5-5.76 14.25T479.97-240q-8.51 0-14.24-5.75T460-260v-200Z" /></svg>
|
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-460H260q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h200v-200q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75T500-700v200h200q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H500v200q0 8.5-5.76 14.25T479.97-240q-8.51 0-14.24-5.75T460-260v-200Z" /></svg>
|
||||||
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m420-203.08-149.54 64.31q-32.31 13.92-61.38-5.35Q180-163.38 180-197.92v-457.46q0-27.62 18.5-46.12Q217-720 244.62-720h350.76q27.62 0 46.12 18.5Q660-683 660-655.38v457.46q0 34.54-29.08 53.8-29.07 19.27-61.38 5.35L420-203.08Zm0-44.92 165.38 71.38q12.31 5.39 23.47-2.3 11.15-7.7 11.15-20.77v-455.69q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H244.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v455.69q0 13.07 11.15 20.77 11.16 7.69 23.47 2.3L420-248Zm340 28q-8.54 0-14.27-5.73T740-240v-535.39q0-9.23-7.69-16.92-7.69-7.69-16.93-7.69H320q-8.54 0-14.27-5.73T300-820q0-8.54 5.73-14.27T320-840h395.38q27.62 0 46.12 18.5Q780-803 780-775.39V-240q0 8.54-5.73 14.27T760-220ZM420-680H220h400-200Z" /></svg>
|
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m420-203.08-149.54 64.31q-32.31 13.92-61.38-5.35Q180-163.38 180-197.92v-457.46q0-27.62 18.5-46.12Q217-720 244.62-720h350.76q27.62 0 46.12 18.5Q660-683 660-655.38v457.46q0 34.54-29.08 53.8-29.07 19.27-61.38 5.35L420-203.08Zm0-44.92 165.38 71.38q12.31 5.39 23.47-2.3 11.15-7.7 11.15-20.77v-455.69q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H244.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v455.69q0 13.07 11.15 20.77 11.16 7.69 23.47 2.3L420-248Zm340 28q-8.54 0-14.27-5.73T740-240v-535.39q0-9.23-7.69-16.92-7.69-7.69-16.93-7.69H320q-8.54 0-14.27-5.73T300-820q0-8.54 5.73-14.27T320-840h395.38q27.62 0 46.12 18.5Q780-803 780-775.39V-240q0 8.54-5.73 14.27T760-220ZM420-680H220h400-200Z" /></svg>
|
||||||
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760H357q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L463.85-680h349.23q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T813.08-640H447.77l-80-80H184.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7V-240q0-10.77 4.23-8.08 4.23 2.7 11.15 6.54l76.7-256.84q6.46-20.62 23.73-33.43 17.27-12.81 38.65-12.81h512.92q32.54 0 52.2 25.97 19.65 25.96 10.19 57.03l-65.85 219.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Zm37.08-40h546q8.46 0 15-4.62 6.54-4.61 8.84-13.07l64.31-215.39q3.85-12.3-3.85-21.92-7.69-9.62-20-9.62H314.46q-8.46 0-15 4.62-6.54 4.62-8.84 13.08L217.08-240ZM160-498.15V-720v221.85ZM217.08-240l73.54-246.92q2.3-8.46 3.84-13.08l1.54-4.62-2.69 9.62q-2.69 9.62-6.54 21.92l-64.31 215.39q-2.31 8.46-3.84 13.07l-1.54 4.62Z" /></svg>
|
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-200q-25.31 0-42.65-17.35Q120-234.69 120-260v-435.38q0-25.31 19.65-44.97Q159.31-760 184.62-760H357q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L463.85-680h349.23q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T813.08-640H447.77l-80-80H184.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7V-240q0-10.77 4.23-8.08 4.23 2.7 11.15 6.54l76.7-256.84q6.46-20.62 23.73-33.43 17.27-12.81 38.65-12.81h512.92q32.54 0 52.2 25.97 19.65 25.96 10.19 57.03l-65.85 219.24q-5.69 19.07-21.8 30.73Q786-200 766.15-200H180Zm37.08-40h546q8.46 0 15-4.62 6.54-4.61 8.84-13.07l64.31-215.39q3.85-12.3-3.85-21.92-7.69-9.62-20-9.62H314.46q-8.46 0-15 4.62-6.54 4.62-8.84 13.08L217.08-240ZM160-498.15V-720v221.85ZM217.08-240l73.54-246.92q2.3-8.46 3.84-13.08l1.54-4.62-2.69 9.62q-2.69 9.62-6.54 21.92l-64.31 215.39q-2.31 8.46-3.84 13.07l-1.54 4.62Z" /></svg>
|
||||||
@@ -94,7 +111,6 @@ icon:minimise = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M436.4-350.31q-6.71 0-11.55-4.44-4.85-4.44-4.85-11.71v-227.08q0-7.27 4.95-11.71 4.95-4.44 11.55-4.44 1.65 0 11.35 5.23l107.07 107.08q3.7 3.69 5.7 7.97 2 4.28 2 9.41t-2 9.41q-2 4.28-5.7 7.98L447.83-355.52q-2.21 2.21-5.15 3.71-2.93 1.5-6.28 1.5Z" /></svg>
|
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M436.4-350.31q-6.71 0-11.55-4.44-4.85-4.44-4.85-11.71v-227.08q0-7.27 4.95-11.71 4.95-4.44 11.55-4.44 1.65 0 11.35 5.23l107.07 107.08q3.7 3.69 5.7 7.97 2 4.28 2 9.41t-2 9.41q-2 4.28-5.7 7.98L447.83-355.52q-2.21 2.21-5.15 3.71-2.93 1.5-6.28 1.5Z" /></svg>
|
||||||
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-218.46q-16.5 0-28.25-11.75T440-258.46q0-16.5 11.75-28.25T480-298.46q16.5 0 28.25 11.75T520-258.46q0 16.5-11.75 28.25T480-218.46ZM480-440q-16.5 0-28.25-11.75T440-480q0-16.5 11.75-28.25T480-520q16.5 0 28.25 11.75T520-480q0 16.5-11.75 28.25T480-440Zm0-221.54q-16.5 0-28.25-11.75T440-701.54q0-16.5 11.75-28.25T480-741.54q16.5 0 28.25 11.75T520-701.54q0 16.5-11.75 28.25T480-661.54Z" /></svg>
|
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-218.46q-16.5 0-28.25-11.75T440-258.46q0-16.5 11.75-28.25T480-298.46q16.5 0 28.25 11.75T520-258.46q0 16.5-11.75 28.25T480-218.46ZM480-440q-16.5 0-28.25-11.75T440-480q0-16.5 11.75-28.25T480-520q16.5 0 28.25 11.75T520-480q0 16.5-11.75 28.25T480-440Zm0-221.54q-16.5 0-28.25-11.75T440-701.54q0-16.5 11.75-28.25T480-741.54q16.5 0 28.25 11.75T520-701.54q0 16.5-11.75 28.25T480-661.54Z" /></svg>
|
||||||
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-460h320q8.54 0 14.27-5.73T660-480q0-8.54-5.73-14.27T640-500H320q-8.54 0-14.27 5.73T300-480q0 8.54 5.73 14.27T320-460Zm-95.38 300q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h510.76q27.62 0 46.12 18.5Q800-763 800-735.38v510.76q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Zm0-40h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-510.76q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69ZM200-760v560-560Z" /></svg>
|
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M320-460h320q8.54 0 14.27-5.73T660-480q0-8.54-5.73-14.27T640-500H320q-8.54 0-14.27 5.73T300-480q0 8.54 5.73 14.27T320-460Zm-95.38 300q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h510.76q27.62 0 46.12 18.5Q800-763 800-735.38v510.76q0 27.62-18.5 46.12Q763-160 735.38-160H224.62Zm0-40h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-510.76q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69ZM200-760v560-560Z" /></svg>
|
||||||
icon:open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-27.62 0-46.12-18.5Q160-197 160-224.62v-510.76q0-27.62 18.5-46.12Q197-800 224.62-800h204.61q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T429.23-760H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93v510.76q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93v-204.61q0-8.54 5.73-14.27t14.27-5.73q8.54 0 14.27 5.73t5.73 14.27v204.61q0 27.62-18.5 46.12Q763-160 735.38-160H224.62ZM760-731.69 403.69-375.38q-5.61 5.61-13.77 6-8.15.38-14.54-6-6.38-6.39-6.38-14.16 0-7.77 6.38-14.15L731.69-760H580q-8.54 0-14.27-5.73T560-780q0-8.54 5.73-14.27T580-800h187.69q13.93 0 23.12 9.19 9.19 9.19 9.19 23.12V-580q0 8.54-5.73 14.27T780-560q-8.54 0-14.27-5.73T760-580v-151.69Z" /></svg>
|
|
||||||
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-26.85 0-45.74-18.88Q160-197.77 160-224.62v-510.76q0-26.85 18.88-45.74Q197.77-800 224.62-800h510.76q26.85 0 45.74 18.88Q800-762.23 800-735.38v510.76q0 26.85-18.88 45.74Q762.23-160 735.38-160H224.62ZM200-320v95.38q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93V-320H200Zm0-40h560v-375.38q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93V-360Zm0 40v120-120Z" /></svg>
|
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-160q-26.85 0-45.74-18.88Q160-197.77 160-224.62v-510.76q0-26.85 18.88-45.74Q197.77-800 224.62-800h510.76q26.85 0 45.74 18.88Q800-762.23 800-735.38v510.76q0 26.85-18.88 45.74Q762.23-160 735.38-160H224.62ZM200-320v95.38q0 9.24 7.69 16.93 7.69 7.69 16.93 7.69h510.76q9.24 0 16.93-7.69 7.69-7.69 7.69-16.93V-320H200Zm0-40h560v-375.38q0-9.24-7.69-16.93-7.69-7.69-16.93-7.69H224.62q-9.24 0-16.93 7.69-7.69 7.69-7.69 16.93V-360Zm0 40v120-120Z" /></svg>
|
||||||
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M600-760v296.92l57.23 57.23q2.92 2.93 4.39 6.58 1.46 3.65 1.46 7.55v11.21q0 8.28-5.97 14.39-5.98 6.12-14.8 6.12H500v186.61q0 6.7-2.23 12.28-2.23 5.57-7.46 10.8l-3.23 3.23q-3.07 2.93-7.15 2.93t-7.01-2.93l-3.23-3.23q-5.23-5.23-7.46-10.97-2.23-5.75-2.23-11.87V-360H317.69q-8.82 0-14.8-6.12-5.97-6.11-5.97-14.39v-11.21q0-3.9 1.46-7.55 1.47-3.65 4.39-6.58L360-463.08V-760h-20q-8.5 0-14.25-5.76T320-780.03q0-8.51 5.75-14.24T340-800h280q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T620-760h-20ZM354-400h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M600-760v296.92l57.23 57.23q2.92 2.93 4.39 6.58 1.46 3.65 1.46 7.55v11.21q0 8.28-5.97 14.39-5.98 6.12-14.8 6.12H500v186.61q0 6.7-2.23 12.28-2.23 5.57-7.46 10.8l-3.23 3.23q-3.07 2.93-7.15 2.93t-7.01-2.93l-3.23-3.23q-5.23-5.23-7.46-10.97-2.23-5.75-2.23-11.87V-360H317.69q-8.82 0-14.8-6.12-5.97-6.11-5.97-14.39v-11.21q0-3.9 1.46-7.55 1.47-3.65 4.39-6.58L360-463.08V-760h-20q-8.5 0-14.25-5.76T320-780.03q0-8.51 5.75-14.24T340-800h280q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T620-760h-20ZM354-400h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
||||||
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M144.62-169.23q-26.85 0-45.74-18.89Q80-207 80-233.85v-423.07q0-8.54 5.73-14.27t14.27-5.73q8.54 0 14.27 5.73t5.73 14.27v423.07q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92H740q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T740-169.23H144.62Zm120-120q-26.85 0-45.74-18.89Q200-327 200-353.85v-421.53q0-26.85 18.88-45.74Q237.77-840 264.62-840h171.61q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L543.08-760h272.3q26.85 0 45.74 18.88Q880-722.23 880-695.38v341.53q0 26.85-18.88 45.73-18.89 18.89-45.74 18.89H264.62Zm0-40h550.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-341.53q0-10.77-6.92-17.7-6.93-6.92-17.7-6.92H527l-80-80H264.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v421.53q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92Zm-24.62 0V-800v470.77Z" /></svg>
|
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M144.62-169.23q-26.85 0-45.74-18.89Q80-207 80-233.85v-423.07q0-8.54 5.73-14.27t14.27-5.73q8.54 0 14.27 5.73t5.73 14.27v423.07q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92H740q8.54 0 14.27 5.73t5.73 14.27q0 8.54-5.73 14.27T740-169.23H144.62Zm120-120q-26.85 0-45.74-18.89Q200-327 200-353.85v-421.53q0-26.85 18.88-45.74Q237.77-840 264.62-840h171.61q12.92 0 25.12 5.23 12.19 5.23 20.88 13.92L543.08-760h272.3q26.85 0 45.74 18.88Q880-722.23 880-695.38v341.53q0 26.85-18.88 45.73-18.89 18.89-45.74 18.89H264.62Zm0-40h550.76q10.77 0 17.7-6.92 6.92-6.93 6.92-17.7v-341.53q0-10.77-6.92-17.7-6.93-6.92-17.7-6.92H527l-80-80H264.62q-10.77 0-17.7 6.92-6.92 6.93-6.92 17.7v421.53q0 10.77 6.92 17.7 6.93 6.92 17.7 6.92Zm-24.62 0V-800v470.77Z" /></svg>
|
||||||
@@ -103,7 +119,6 @@ icon:refresh = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M260-460q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h440q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H260Z" /></svg>
|
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M260-460q-8.5 0-14.25-5.76T240-480.03q0-8.51 5.75-14.24T260-500h440q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T700-460H260Z" /></svg>
|
||||||
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M478.46-160q-115.23 0-202.61-71.12Q188.46-302.23 165.62-412q-2.47-8.85 2.6-16.37 5.06-7.53 13.68-8.73 8.1-1.21 14.56 3.72 6.46 4.92 9.16 14Q227.31-324 303.46-262q76.16 62 175 62 117 0 198.5-81.5t81.5-198.5q0-117-81.5-198.5T478.46-760q-62.08 0-116.69 26.23-54.62 26.23-96.39 72.23h79.24q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24t-14.25 5.73H230.77q-13.73 0-23.02-9.29t-9.29-23.02v-113.84q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v75.54q46.39-50.93 108.73-79.39Q409.54-800 478.46-800q66.6 0 124.76 25.04 58.16 25.04 101.66 68.54 43.5 43.5 68.54 101.65 25.04 58.14 25.04 124.73 0 66.58-25.04 124.77t-68.54 101.69q-43.5 43.5-101.66 68.54Q545.06-160 478.46-160Zm0-280q-16.08 0-28.04-11.96T438.46-480q0-16.08 11.96-28.04T478.46-520q16.08 0 28.04 11.96T518.46-480q0 16.08-11.96 28.04T478.46-440Z" /></svg>
|
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M478.46-160q-115.23 0-202.61-71.12Q188.46-302.23 165.62-412q-2.47-8.85 2.6-16.37 5.06-7.53 13.68-8.73 8.1-1.21 14.56 3.72 6.46 4.92 9.16 14Q227.31-324 303.46-262q76.16 62 175 62 117 0 198.5-81.5t81.5-198.5q0-117-81.5-198.5T478.46-760q-62.08 0-116.69 26.23-54.62 26.23-96.39 72.23h79.24q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24t-14.25 5.73H230.77q-13.73 0-23.02-9.29t-9.29-23.02v-113.84q0-8.5 5.76-14.25t14.27-5.75q8.51 0 14.24 5.75t5.73 14.25v75.54q46.39-50.93 108.73-79.39Q409.54-800 478.46-800q66.6 0 124.76 25.04 58.16 25.04 101.66 68.54 43.5 43.5 68.54 101.65 25.04 58.14 25.04 124.73 0 66.58-25.04 124.77t-68.54 101.69q-43.5 43.5-101.66 68.54Q545.06-160 478.46-160Zm0-280q-16.08 0-28.04-11.96T438.46-480q0-16.08 11.96-28.04T478.46-520q16.08 0 28.04 11.96T518.46-480q0 16.08-11.96 28.04T478.46-440Z" /></svg>
|
||||||
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M438.38-120q-13.92 0-24.19-9.15-10.27-9.16-12.73-22.85l-10.54-83.69q-19.15-5.77-41.42-18.16-22.27-12.38-37.88-26.53L235-247.46q-12.69 5.61-25.77 1.23-13.08-4.39-20.15-16.62l-43.16-74.3q-7.07-12.23-4.15-25.54 2.92-13.31 13.92-21.85l66.85-50q-1.77-10.84-2.92-22.34-1.16-11.5-1.16-22.35 0-10.08 1.16-21.19 1.15-11.12 2.92-25.04l-66.85-50q-11-8.54-13.54-22.23-2.53-13.69 4.54-25.93l42.39-72q7.07-11.46 20.15-16.23 13.08-4.77 25.77.85l75.85 32.15q17.92-14.92 38.77-26.92 20.84-12 40.53-18.54L401.46-808q2.46-13.69 12.73-22.85 10.27-9.15 24.19-9.15h83.24q13.92 0 24.19 9.15 10.27 9.16 12.73 22.85l10.54 84.46q23 8.08 40.65 18.54 17.65 10.46 36.35 26.15L725.77-711q12.69-5.62 25.77-.85 13.08 4.77 20.15 16.23l42.39 72.77q7.07 12.23 4.15 25.54-2.92 13.31-13.92 21.85l-69.93 52.31q3.31 12.38 3.7 22.73.38 10.34.38 20.42 0 9.31-.77 19.65-.77 10.35-3.54 25.04l67.62 50.77q11 8.54 14.31 21.85 3.3 13.31-3.77 25.54l-42.62 73.53q-7.07 12.24-20.54 16.62-13.46 4.38-26.15-1.23l-76.92-32.92q-18.7 15.69-37.62 26.92-18.92 11.23-39.38 17.77L558.54-152q-2.46 13.69-12.73 22.85-10.27 9.15-24.19 9.15h-83.24Zm1.62-40h78.23L533-268.31q30.23-8 54.42-21.96 24.2-13.96 49.27-38.27L736.46-286l39.77-68-87.54-65.77q5-17.08 6.62-31.42 1.61-14.35 1.61-28.81 0-15.23-1.61-28.81-1.62-13.57-6.62-29.88L777.77-606 738-674l-102.08 42.77q-18.15-19.92-47.73-37.35-29.57-17.42-55.96-23.11L520-800h-79.77l-12.46 107.54q-30.23 6.46-55.58 20.81-25.34 14.34-50.42 39.42L222-674l-39.77 68L269-541.23q-5 13.46-7 29.23t-2 32.77q0 15.23 2 30.23t6.23 29.23l-86 65.77L222-286l99-42q23.54 23.77 48.88 38.12 25.35 14.34 57.12 22.34L440-160Zm38.92-220q41.85 0 70.93-29.08 29.07-29.07 29.07-70.92t-29.07-70.92Q520.77-580 478.92-580q-42.07 0-71.04 29.08-28.96 29.07-28.96 70.92t28.96 70.92Q436.85-380 478.92-380ZM480-480Z" /></svg>
|
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M438.38-120q-13.92 0-24.19-9.15-10.27-9.16-12.73-22.85l-10.54-83.69q-19.15-5.77-41.42-18.16-22.27-12.38-37.88-26.53L235-247.46q-12.69 5.61-25.77 1.23-13.08-4.39-20.15-16.62l-43.16-74.3q-7.07-12.23-4.15-25.54 2.92-13.31 13.92-21.85l66.85-50q-1.77-10.84-2.92-22.34-1.16-11.5-1.16-22.35 0-10.08 1.16-21.19 1.15-11.12 2.92-25.04l-66.85-50q-11-8.54-13.54-22.23-2.53-13.69 4.54-25.93l42.39-72q7.07-11.46 20.15-16.23 13.08-4.77 25.77.85l75.85 32.15q17.92-14.92 38.77-26.92 20.84-12 40.53-18.54L401.46-808q2.46-13.69 12.73-22.85 10.27-9.15 24.19-9.15h83.24q13.92 0 24.19 9.15 10.27 9.16 12.73 22.85l10.54 84.46q23 8.08 40.65 18.54 17.65 10.46 36.35 26.15L725.77-711q12.69-5.62 25.77-.85 13.08 4.77 20.15 16.23l42.39 72.77q7.07 12.23 4.15 25.54-2.92 13.31-13.92 21.85l-69.93 52.31q3.31 12.38 3.7 22.73.38 10.34.38 20.42 0 9.31-.77 19.65-.77 10.35-3.54 25.04l67.62 50.77q11 8.54 14.31 21.85 3.3 13.31-3.77 25.54l-42.62 73.53q-7.07 12.24-20.54 16.62-13.46 4.38-26.15-1.23l-76.92-32.92q-18.7 15.69-37.62 26.92-18.92 11.23-39.38 17.77L558.54-152q-2.46 13.69-12.73 22.85-10.27 9.15-24.19 9.15h-83.24Zm1.62-40h78.23L533-268.31q30.23-8 54.42-21.96 24.2-13.96 49.27-38.27L736.46-286l39.77-68-87.54-65.77q5-17.08 6.62-31.42 1.61-14.35 1.61-28.81 0-15.23-1.61-28.81-1.62-13.57-6.62-29.88L777.77-606 738-674l-102.08 42.77q-18.15-19.92-47.73-37.35-29.57-17.42-55.96-23.11L520-800h-79.77l-12.46 107.54q-30.23 6.46-55.58 20.81-25.34 14.34-50.42 39.42L222-674l-39.77 68L269-541.23q-5 13.46-7 29.23t-2 32.77q0 15.23 2 30.23t6.23 29.23l-86 65.77L222-286l99-42q23.54 23.77 48.88 38.12 25.35 14.34 57.12 22.34L440-160Zm38.92-220q41.85 0 70.93-29.08 29.07-29.07 29.07-70.92t-29.07-70.92Q520.77-580 478.92-580q-42.07 0-71.04 29.08-28.96 29.07-28.96 70.92t28.96 70.92Q436.85-380 478.92-380ZM480-480Z" /></svg>
|
||||||
icon:star = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm126-28.92-145.23 87.69q-6.39 3.15-11.85 2.54-5.46-.62-10.61-3.77-5.16-3.16-7.85-9.04-2.69-5.88-.46-12.73l38.62-164.39-127.77-110.84q-5.39-4.39-7.12-10.5-1.73-6.12.73-11.73 2.46-5.62 6.62-9.16 4.15-3.53 11.23-4.77l168.61-14.69L460.69-733q2.69-6.62 7.81-9.54 5.12-2.92 11.5-2.92t11.5 2.92q5.12 2.92 7.81 9.54l65.77 155.69 168.61 14.69q7.08 1.24 11.23 4.77 4.16 3.54 6.62 9.16 2.46 5.61.73 11.73-1.73 6.11-7.12 10.5L617.38-415.62 656-251.23q2.23 6.85-.46 12.73-2.69 5.88-7.85 9.04-5.15 3.15-10.61 3.77-5.46.61-11.85-2.54L480-315.92ZM480-470Z" /></svg>
|
|
||||||
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m125.38-174.62 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-264.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-145.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Zm0-240 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-504.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-385.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Z" /></svg>
|
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m125.38-174.62 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-264.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-145.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Zm0-240 212.24-212.23q18.38-18.38 45.46-18.38 27.07 0 45.46 18.38l96.08 96.08q7.69 7.69 18.46 7.31 10.77-.39 17.69-8.85l248.31-285.15q5.61-6.85 13.5-6.85 7.88 0 14.5 5.85 5.61 5.61 6.11 13.04.5 7.42-5.11 14.04L589.85-504.77q-18.39 21.39-46.23 22.5-27.85 1.12-48.24-19.27l-94.61-94.61q-6.92-6.93-17.69-6.93-10.77 0-17.7 6.93L154.62-385.38q-6.08 6.07-14.24 6.46-8.15.38-15-6.46-6.84-6.85-6.84-14.62t6.84-14.62Z" /></svg>
|
||||||
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-231.54q-10.47 0-17.54-6.84-7.08-6.85-7.08-16.96 0-10.12 7.08-17.39 7.07-7.27 17.54-7.27H500q8.5 0 14.25 5.97t5.75 14.8q0 8.5-5.73 14.25t-13.5 5.75l-276.15 7.69ZM220-386.92q-8.5 0-14.25-5.76T200-406.95q0-8.51 5.75-14.24t14.25-5.73h520q8.5 0 14.25 5.75 5.75 5.76 5.75 14.27 0 8.52-5.75 14.25T740-386.92H220Zm0-146.16q-8.5 0-14.25-5.75-5.75-5.76-5.75-14.27 0-8.52 5.75-14.25t14.25-5.73h520q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T740-533.08H220ZM224.62-680q-10.47 0-17.54-7.08-7.08-7.07-7.08-17.54 0-10.46 7.08-17.53 7.07-7.08 17.54-7.08h510.76q10.47 0 17.54 7.08 7.08 7.07 7.08 17.53 0 10.47-7.08 17.54-7.07 7.08-17.54 7.08H224.62Z" /></svg>
|
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M224.62-231.54q-10.47 0-17.54-6.84-7.08-6.85-7.08-16.96 0-10.12 7.08-17.39 7.07-7.27 17.54-7.27H500q8.5 0 14.25 5.97t5.75 14.8q0 8.5-5.73 14.25t-13.5 5.75l-276.15 7.69ZM220-386.92q-8.5 0-14.25-5.76T200-406.95q0-8.51 5.75-14.24t14.25-5.73h520q8.5 0 14.25 5.75 5.75 5.76 5.75 14.27 0 8.52-5.75 14.25T740-386.92H220Zm0-146.16q-8.5 0-14.25-5.75-5.75-5.76-5.75-14.27 0-8.52 5.75-14.25t14.25-5.73h520q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T740-533.08H220ZM224.62-680q-10.47 0-17.54-7.08-7.08-7.07-7.08-17.54 0-10.46 7.08-17.53 7.07-7.08 17.54-7.08h510.76q10.47 0 17.54 7.08 7.08 7.07 7.08 17.53 0 10.47-7.08 17.54-7.07 7.08-17.54 7.08H224.62Z" /></svg>
|
||||||
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-760q56.57 0 110.79 20.38 54.21 20.39 100.59 59.16L720.92-710q5.62-5.62 13.77-6 8.16-.38 14.54 6 6.39 6.38 6.39 14.15 0 7.77-6.39 14.16l-29.54 29.54q38.77 46.38 59.54 100.85Q800-496.84 800-440q0 26-4.38 52.27-4.39 26.27-13.16 51.5-3.6 11.19-11.57 14.75-7.97 3.56-15.04.86-7.08-2.69-11.58-9.15-4.5-6.46-1.58-14.23 8.77-23.54 13.04-47.35Q760-415.15 760-440q0-116-82-198t-198-82q-22.56 0-48.51 4.27t-48.95 13.04q-7.77 2.69-14-1.31t-8.92-11.08q-2.7-7.07.34-14.88 3.04-7.81 13.81-11.73 26-9.16 53-13.73 27-4.58 53.23-4.58Zm20 187.23v-31.85q0-8.5-5.75-14.25T480-624.62q-6.01 0-11.12 4-5.11 4-7.03 9.7L500-572.77ZM480-120q-65.95 0-124.32-25.04-58.37-25.04-101.99-68.65-43.61-43.62-68.65-101.99Q160-374.05 160-440q0-61.54 21.96-117.42 21.96-55.89 63.89-100.12L119.38-784q-5.61-5.62-6-13.77-.38-8.15 6-14.54 6.39-6.38 14.16-6.38 7.77 0 14.15 6.38l664.62 664.62q5.61 5.61 6 13.77.38 8.15-6 14.54-6.39 6.38-14.16 6.38-7.77 0-14.15-6.38l-86.46-86.47q-42.62 40.39-99.66 63.12Q540.85-120 480-120Zm0-40q51.27 0 100.1-19.54 48.82-19.54 88.44-55.08L274.15-629q-35.53 38.08-54.84 86.54Q200-494 200-440q0 116 82 198t198 82Zm-84.62-700q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73h169.24q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T564.62-860H395.38Zm76.08 428.08ZM556.77-517Z" /></svg>
|
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-760q56.57 0 110.79 20.38 54.21 20.39 100.59 59.16L720.92-710q5.62-5.62 13.77-6 8.16-.38 14.54 6 6.39 6.38 6.39 14.15 0 7.77-6.39 14.16l-29.54 29.54q38.77 46.38 59.54 100.85Q800-496.84 800-440q0 26-4.38 52.27-4.39 26.27-13.16 51.5-3.6 11.19-11.57 14.75-7.97 3.56-15.04.86-7.08-2.69-11.58-9.15-4.5-6.46-1.58-14.23 8.77-23.54 13.04-47.35Q760-415.15 760-440q0-116-82-198t-198-82q-22.56 0-48.51 4.27t-48.95 13.04q-7.77 2.69-14-1.31t-8.92-11.08q-2.7-7.07.34-14.88 3.04-7.81 13.81-11.73 26-9.16 53-13.73 27-4.58 53.23-4.58Zm20 187.23v-31.85q0-8.5-5.75-14.25T480-624.62q-6.01 0-11.12 4-5.11 4-7.03 9.7L500-572.77ZM480-120q-65.95 0-124.32-25.04-58.37-25.04-101.99-68.65-43.61-43.62-68.65-101.99Q160-374.05 160-440q0-61.54 21.96-117.42 21.96-55.89 63.89-100.12L119.38-784q-5.61-5.62-6-13.77-.38-8.15 6-14.54 6.39-6.38 14.16-6.38 7.77 0 14.15 6.38l664.62 664.62q5.61 5.61 6 13.77.38 8.15-6 14.54-6.39 6.38-14.16 6.38-7.77 0-14.15-6.38l-86.46-86.47q-42.62 40.39-99.66 63.12Q540.85-120 480-120Zm0-40q51.27 0 100.1-19.54 48.82-19.54 88.44-55.08L274.15-629q-35.53 38.08-54.84 86.54Q200-494 200-440q0 116 82 198t198 82Zm-84.62-700q-8.5 0-14.25-5.76t-5.75-14.27q0-8.51 5.75-14.24t14.25-5.73h169.24q8.5 0 14.25 5.76t5.75 14.27q0 8.51-5.75 14.24T564.62-860H395.38Zm76.08 428.08ZM556.77-517Z" /></svg>
|
||||||
|
|||||||
@@ -59,6 +59,23 @@ icon:sb_stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 80q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM200-440H40v-80h160v80Zm720 0H760v-80h160v80ZM440-760v-160h80v160h-80Zm0 720v-160h80v160h-80ZM256-650l-101-97 57-59 96 100-52 56Zm492 496-97-101 53-55 101 97-57 59Zm-98-550 97-101 59 57-100 96-56-52ZM154-212l101-97 55 53-97 101-59-57Zm326-268Z" /></svg>
|
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 80q-83 0-141.5-58.5T280-480q0-83 58.5-141.5T480-680q83 0 141.5 58.5T680-480q0 83-58.5 141.5T480-280ZM200-440H40v-80h160v80Zm720 0H760v-80h160v80ZM440-760v-160h80v160h-80Zm0 720v-160h80v160h-80ZM256-650l-101-97 57-59 96 100-52 56Zm492 496-97-101 53-55 101 97-57 59Zm-98-550 97-101 59 57-100 96-56-52ZM154-212l101-97 55 53-97 101-59-57Zm326-268Z" /></svg>
|
||||||
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-150 0-255-105T120-480q0-150 105-255t255-105q14 0 27.5 1t26.5 3q-41 29-65.5 75.5T444-660q0 90 63 153t153 63q55 0 101-24.5t75-65.5q2 13 3 26.5t1 27.5q0 150-105 255T480-120Zm0-80q88 0 158-48.5T740-375q-20 5-40 8t-40 3q-123 0-209.5-86.5T364-660q0-20 3-40t8-40q-78 32-126.5 102T200-480q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-120q-150 0-255-105T120-480q0-150 105-255t255-105q14 0 27.5 1t26.5 3q-41 29-65.5 75.5T444-660q0 90 63 153t153 63q55 0 101-24.5t75-65.5q2 13 3 26.5t1 27.5q0 150-105 255T480-120Zm0-80q88 0 158-48.5T740-375q-20 5-40 8t-40 3q-123 0-209.5-86.5T364-660q0-20 3-40t8-40q-78 32-126.5 102T200-480q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
||||||
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm40-83q119-15 199.5-104.5T800-480q0-123-80.5-212.5T520-797v634Z" /></svg>
|
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm40-83q119-15 199.5-104.5T800-480q0-123-80.5-212.5T520-797v634Z" /></svg>
|
||||||
|
icon:btn_ok = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-296 282-282-56-56-226 226-114-114-56 56 170 170Zm56 216q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_cancel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m336-280 144-144 144 144 56-56-144-144 144-144-56-56-144 144-144-144-56 56 144 144-144 144 56 56ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_yes = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-296 282-282-56-56-226 226-114-114-56 56 170 170Zm56 216q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_no = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M280-440h400v-80H280v80ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120v-720h360v80H200v560h560v-280h80v360H120Zm268-212-56-56 372-372H560v-80h280v280h-80v-144L388-332Z" /></svg>
|
||||||
|
icon:btn_close = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m336-280 144-144 144 144 56-56-144-144 144-144-56-56-144 144-144-144-56 56 144 144-144 144 56 56ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_save = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m720-120 160-160-56-56-64 64v-167h-80v167l-64-64-56 56 160 160ZM560 0v-80h320V0H560ZM160-160v-720h360l240 240v121h-80v-81H480v-200H240v560h240v80H160Zm80-80v-560 560Z" /></svg>
|
||||||
|
icon:btn_browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M80-160v-640h320l80 80h400v80H447l-80-80H160v480l96-320h684L820-160H80Zm164-80h516l72-240H316l-72 240Zm0 0 72-240-72 240Zm-84-400v-80 80Z" /></svg>
|
||||||
|
icon:btn_list = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M360-200v-80h480v80H360Zm0-240v-80h480v80H360Zm0-240v-80h480v80H360ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z" /></svg>
|
||||||
|
icon:btn_new = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120v-720h320v80H200v560h560v-240h80v320H120Zm520-400v-120H520v-80h120v-120h80v120h120v80H720v120h-80Z" /></svg>
|
||||||
|
icon:btn_create = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143ZM233-120l65-281L80-590l288-25 112-265 112 265 288 25-218 189 65 281-247-149-247 149Zm247-350Z" /></svg>
|
||||||
|
icon:btn_reset = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M280-200v-80h284q63 0 109.5-40T720-420q0-60-46.5-100T564-560H312l104 104-56 56-200-200 200-200 56 56-104 104h252q97 0 166.5 63T800-420q0 94-69.5 157T564-200H280Z" /></svg>
|
||||||
|
icon:btn_insert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-320v-240H320v-80h320v80H520v240h-80ZM40-40v-240h80v-400H40v-240h240v80h400v-80h240v240h-80v400h80v240H680v-80H280v80H40Zm240-160h400v-80h80v-400h-80v-80H280v80h-80v400h80v80ZM120-760h80v-80h-80v80Zm640 0h80v-80h-80v80Zm0 640h80v-80h-80v80Zm-640 0h80v-80h-80v80Zm80-640Zm560 0Zm0 560Zm-560 0Z" /></svg>
|
||||||
|
icon:btn_apply = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-312 282-282-56-56-226 226-114-114-56 56 170 170ZM120-120v-720h720v720H120Zm80-80h560v-560H200v560Zm0 0v-560 560Z" /></svg>
|
||||||
|
icon:btn_build = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m648-140 112-112v92h40v-160H640v40h92L620-168l28 28Zm-528 20v-720h720v348q-19-9-39-15.5t-41-9.5v-243H200v560h242q3 22 9.5 42t15.5 38H120Zm80-120v40-560 243-3 280Zm80-40h163q3-21 9.5-41t14.5-39H280v80Zm0-160h244q32-30 71.5-50t84.5-27v-3H280v80Zm0-160h400v-80H280v80ZM720-40q-83 0-141.5-58.5T520-240q0-83 58.5-141.5T720-440q83 0 141.5 58.5T920-240q0 83-58.5 141.5T720-40Z" /></svg>
|
||||||
|
icon:btn_print = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M640-640v-120H320v120h-80v-200h480v200h-80Zm-480 80h640-640Zm560 100q17 0 28.5-11.5T760-500q0-17-11.5-28.5T720-540q-17 0-28.5 11.5T680-500q0 17 11.5 28.5T720-460Zm-80 260v-160H320v160h320Zm80 80H240v-160H80v-360h800v360H720v160Zm80-240v-200H160v200h80v-80h480v80h80Z" /></svg>
|
||||||
|
icon:btn_preview = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120v-720h720v720H120Zm80-80h560v-480H200v480Zm280-80q-82 0-146.5-44.5T240-440q29-71 93.5-115.5T480-600q82 0 146.5 44.5T720-440q-29 71-93.5 115.5T480-280Zm0-60q56 0 102-26.5t72-73.5q-26-47-72-73.5T480-540q-56 0-102 26.5T306-440q26 47 72 73.5T480-340Zm0-100Zm0 60q25 0 42.5-17.5T540-440q0-25-17.5-42.5T480-500q-25 0-42.5 17.5T420-440q0 25 17.5 42.5T480-380Z" /></svg>
|
||||||
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-440H200v-80h240v-240h80v240h240v80H520v240h-80v-240Z" /></svg>
|
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M440-440H200v-80h240v-240h80v240h240v80H520v240h-80v-240Z" /></svg>
|
||||||
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-40v-720h560v720L400-160 120-40Zm80-122 200-86 200 86v-518H200v518Zm560 2v-680H240v-80h600v760h-80ZM200-680h400-400Z" /></svg>
|
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-40v-720h560v720L400-160 120-40Zm80-122 200-86 200 86v-518H200v518Zm560 2v-680H240v-80h600v760h-80ZM200-680h400-400Z" /></svg>
|
||||||
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M80-160v-640h320l80 80h400v80H447l-80-80H160v480l96-320h684L820-160H80Zm164-80h516l72-240H316l-72 240Zm0 0 72-240-72 240Zm-84-400v-80 80Z" /></svg>
|
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M80-160v-640h320l80 80h400v80H447l-80-80H160v480l96-320h684L820-160H80Zm164-80h516l72-240H316l-72 240Zm0 0 72-240-72 240Zm-84-400v-80 80Z" /></svg>
|
||||||
@@ -94,7 +111,6 @@ icon:minimise = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-280v-400l200 200-200 200Z" /></svg>
|
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M400-280v-400l200 200-200 200Z" /></svg>
|
||||||
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z" /></svg>
|
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-160q-33 0-56.5-23.5T400-240q0-33 23.5-56.5T480-320q33 0 56.5 23.5T560-240q0 33-23.5 56.5T480-160Zm0-240q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0-240q-33 0-56.5-23.5T400-720q0-33 23.5-56.5T480-800q33 0 56.5 23.5T560-720q0 33-23.5 56.5T480-640Z" /></svg>
|
||||||
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M280-440h400v-80H280v80ZM120-120v-720h720v720H120Zm80-80h560v-560H200v560Zm0 0v-560 560Z" /></svg>
|
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M280-440h400v-80H280v80ZM120-120v-720h720v720H120Zm80-80h560v-560H200v560Zm0 0v-560 560Z" /></svg>
|
||||||
icon:open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-120v-720h360v80H200v560h560v-280h80v360H120Zm268-212-56-56 372-372H560v-80h280v280h-80v-144L388-332Z" /></svg>
|
|
||||||
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200h560v-120H200v120Zm0-200h560v-360H200v360Zm0 80v120-120Zm-80 200v-720h720v720H120Z" /></svg>
|
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200h560v-120H200v120Zm0-200h560v-360H200v360Zm0 80v120-120Zm-80 200v-720h720v720H120Z" /></svg>
|
||||||
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m640-480 80 80v80H520v240l-40 40-40-40v-240H240v-80l80-80v-280h-40v-80h400v80h-40v280Zm-286 80h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m640-480 80 80v80H520v240l-40 40-40-40v-240H240v-80l80-80v-280h-40v-80h400v80h-40v280Zm-286 80h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
||||||
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M40-120v-600h80v520h680v80H40Zm160-160v-600h280l80 80h360v520H200Zm80-80h560v-360H527l-80-80H280v440Zm0 0v-440 440Z" /></svg>
|
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M40-120v-600h80v520h680v80H40Zm160-160v-600h280l80 80h360v520H200Zm80-80h560v-360H527l-80-80H280v440Zm0 0v-440 440Z" /></svg>
|
||||||
@@ -103,7 +119,6 @@ icon:refresh = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-440v-80h560v80H200Z" /></svg>
|
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-440v-80h560v80H200Z" /></svg>
|
||||||
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-400q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0 280q-139 0-241-91.5T122-440h82q14 104 92.5 172T480-200q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h110v80H120v-240h80v94q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Z" /></svg>
|
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-400q-33 0-56.5-23.5T400-480q0-33 23.5-56.5T480-560q33 0 56.5 23.5T560-480q0 33-23.5 56.5T480-400Zm0 280q-139 0-241-91.5T122-440h82q14 104 92.5 172T480-200q117 0 198.5-81.5T760-480q0-117-81.5-198.5T480-760q-69 0-129 32t-101 88h110v80H120v-240h80v94q51-64 124.5-99T480-840q75 0 140.5 28.5t114 77q48.5 48.5 77 114T840-480q0 75-28.5 140.5t-77 114q-48.5 48.5-114 77T480-120Z" /></svg>
|
||||||
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m370-80-16-128q-13-5-24.5-12T307-235l-119 50L78-375l103-78q-1-7-1-13.5v-27q0-6.5 1-13.5L78-585l110-190 119 50q11-8 23-15t24-12l16-128h220l16 128q13 5 24.5 12t22.5 15l119-50 110 190-103 78q1 7 1 13.5v27q0 6.5-2 13.5l103 78-110 190-118-50q-11 8-23 15t-24 12L590-80H370Zm70-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z" /></svg>
|
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m370-80-16-128q-13-5-24.5-12T307-235l-119 50L78-375l103-78q-1-7-1-13.5v-27q0-6.5 1-13.5L78-585l110-190 119 50q11-8 23-15t24-12l16-128h220l16 128q13 5 24.5 12t22.5 15l119-50 110 190-103 78q1 7 1 13.5v27q0 6.5-2 13.5l103 78-110 190-118-50q-11 8-23 15t-24 12L590-80H370Zm70-80h79l14-106q31-8 57.5-23.5T639-327l99 41 39-68-86-65q5-14 7-29.5t2-31.5q0-16-2-31.5t-7-29.5l86-65-39-68-99 42q-22-23-48.5-38.5T533-694l-13-106h-79l-14 106q-31 8-57.5 23.5T321-633l-99-41-39 68 86 64q-5 15-7 30t-2 32q0 16 2 31t7 30l-86 65 39 68 99-42q22 23 48.5 38.5T427-266l13 106Zm42-180q58 0 99-41t41-99q0-58-41-99t-99-41q-59 0-99.5 41T342-480q0 58 40.5 99t99.5 41Zm-2-140Z" /></svg>
|
||||||
icon:star = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143ZM233-120l65-281L80-590l288-25 112-265 112 265 288 25-218 189 65 281-247-149-247 149Zm247-350Z" /></svg>
|
|
||||||
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m140-100-60-60 300-300 160 160 284-320 56 56-340 384-160-160-240 240Zm0-240-60-60 300-300 160 160 284-320 56 56-340 384-160-160-240 240Z" /></svg>
|
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m140-100-60-60 300-300 160 160 284-320 56 56-340 384-160-160-240 240Zm0-240-60-60 300-300 160 160 284-320 56 56-340 384-160-160-240 240Z" /></svg>
|
||||||
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-200v-80h400v80H160Zm0-160v-80h640v80H160Zm0-160v-80h640v80H160Zm0-160v-80h640v80H160Z" /></svg>
|
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-200v-80h400v80H160Zm0-160v-80h640v80H160Zm0-160v-80h640v80H160Zm0-160v-80h640v80H160Z" /></svg>
|
||||||
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m798-274-60-60q11-27 16.5-53.5T760-440q0-116-82-198t-198-82q-24 0-51 5t-56 16l-60-60q38-20 80.5-30.5T480-800q60 0 117.5 20T706-722l56-56 56 56-56 56q38 51 58 108.5T840-440q0 42-10.5 83.5T798-274ZM520-552v-88h-80v8l80 80ZM792-56l-96-96q-48 35-103.5 53.5T480-80q-74 0-139.5-28.5T226-186q-49-49-77.5-114.5T120-440q0-60 18.5-115.5T192-656L56-792l56-56 736 736-56 56ZM480-160q42 0 82-13t75-37L248-599q-24 35-36 75t-12 84q0 116 82 198t198 82ZM360-840v-80h240v80H360Zm83 435Zm113-112Z" /></svg>
|
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m798-274-60-60q11-27 16.5-53.5T760-440q0-116-82-198t-198-82q-24 0-51 5t-56 16l-60-60q38-20 80.5-30.5T480-800q60 0 117.5 20T706-722l56-56 56 56-56 56q38 51 58 108.5T840-440q0 42-10.5 83.5T798-274ZM520-552v-88h-80v8l80 80ZM792-56l-96-96q-48 35-103.5 53.5T480-80q-74 0-139.5-28.5T226-186q-49-49-77.5-114.5T120-440q0-60 18.5-115.5T192-656L56-792l56-56 736 736-56 56ZM480-160q42 0 82-13t75-37L248-599q-24 35-36 75t-12 84q0 116 82 198t198 82ZM360-840v-80h240v80H360Zm83 435Zm113-112Z" /></svg>
|
||||||
|
|||||||
@@ -59,6 +59,23 @@ icon:sb_stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 40q-66.85 0-113.42-46.58Q320-413.15 320-480t46.58-113.42Q413.15-640 480-640t113.42 46.58Q640-546.85 640-480t-46.58 113.42Q546.85-320 480-320ZM200-460H60v-40h140v40Zm700 0H760v-40h140v40ZM460-760v-140h40v140h-40Zm0 700v-140h40v140h-40ZM269.85-663.85l-86.39-83.92 27.77-29.77 84.46 85.39-25.84 28.3Zm478.92 481.39-84.69-85.62 26.07-28.07 86.39 83.92-27.77 29.77Zm-84.92-507.69 83.92-86.39 29.77 27.77-85.39 84.46-28.3-25.84ZM182.46-211.23l85.62-84.69 26.54 26.07-83.16 87.16-29-28.54ZM480-480Z" /></svg>
|
icon:theme_light = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-360q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35Zm0 40q-66.85 0-113.42-46.58Q320-413.15 320-480t46.58-113.42Q413.15-640 480-640t113.42 46.58Q640-546.85 640-480t-46.58 113.42Q546.85-320 480-320ZM200-460H60v-40h140v40Zm700 0H760v-40h140v40ZM460-760v-140h40v140h-40Zm0 700v-140h40v140h-40ZM269.85-663.85l-86.39-83.92 27.77-29.77 84.46 85.39-25.84 28.3Zm478.92 481.39-84.69-85.62 26.07-28.07 86.39 83.92-27.77 29.77Zm-84.92-507.69 83.92-86.39 29.77 27.77-85.39 84.46-28.3-25.84ZM182.46-211.23l85.62-84.69 26.54 26.07-83.16 87.16-29-28.54ZM480-480Z" /></svg>
|
||||||
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M482.31-160q-133.34 0-226.67-93.33-93.33-93.34-93.33-226.67 0-121.54 79.23-210.77t196.15-105.38q3.23 0 6.35.23 3.11.23 6.11.69-20.23 28.23-32.03 62.81-11.81 34.57-11.81 72.42 0 106.67 74.66 181.33Q555.64-404 662.31-404q38.07 0 72.54-11.81 34.46-11.81 61.92-32.04.46 3 .69 6.12.23 3.11.23 6.35-15.38 116.92-104.61 196.15T482.31-160Zm0-40q88 0 158-48.5t102-126.5q-20 5-40 8t-40 3q-123 0-209.5-86.5T366.31-660q0-20 3-40t8-40q-78 32-126.5 102t-48.5 158q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
icon:theme_dark = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M482.31-160q-133.34 0-226.67-93.33-93.33-93.34-93.33-226.67 0-121.54 79.23-210.77t196.15-105.38q3.23 0 6.35.23 3.11.23 6.11.69-20.23 28.23-32.03 62.81-11.81 34.57-11.81 72.42 0 106.67 74.66 181.33Q555.64-404 662.31-404q38.07 0 72.54-11.81 34.46-11.81 61.92-32.04.46 3 .69 6.12.23 3.11.23 6.35-15.38 116.92-104.61 196.15T482.31-160Zm0-40q88 0 158-48.5t102-126.5q-20 5-40 8t-40 3q-123 0-209.5-86.5T366.31-660q0-20 3-40t8-40q-78 32-126.5 102t-48.5 158q0 116 82 198t198 82Zm-10-270Z" /></svg>
|
||||||
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120ZM500-160.69q123.62-8.08 211.81-98.35T800-480q0-130.69-87.42-220.19-87.43-89.5-212.58-99.12v638.62Z" /></svg>
|
icon:theme_auto = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120ZM500-160.69q123.62-8.08 211.81-98.35T800-480q0-130.69-87.42-220.19-87.43-89.5-212.58-99.12v638.62Z" /></svg>
|
||||||
|
icon:btn_ok = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m422.46-323.69 255.85-255.85L650-607.85 422.46-380.31l-114-114L280.15-466l142.31 142.31ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_cancel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m336-307.69 144-144 144 144L652.31-336l-144-144 144-144L624-652.31l-144 144-144-144L307.69-624l144 144-144 144L336-307.69ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_yes = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m422.46-323.69 255.85-255.85L650-607.85 422.46-380.31l-114-114L280.15-466l142.31 142.31ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_no = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M300-460h360v-40H300v40Zm180.13 340q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160v-640h289.23v40H200v560h560v-249.23h40V-160H160Zm229.54-201.23-28.31-28.31L731.69-760H560v-40h240v240h-40v-171.69L389.54-361.23Z" /></svg>
|
||||||
|
icon:btn_close = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m336-307.69 144-144 144 144L652.31-336l-144-144 144-144L624-652.31l-144 144-144-144L307.69-624l144 144-144 144L336-307.69ZM480.13-120q-74.67 0-140.41-28.34-65.73-28.34-114.36-76.92-48.63-48.58-76.99-114.26Q120-405.19 120-479.87q0-74.67 28.34-140.41 28.34-65.73 76.92-114.36 48.58-48.63 114.26-76.99Q405.19-840 479.87-840q74.67 0 140.41 28.34 65.73 28.34 114.36 76.92 48.63 48.58 76.99 114.26Q840-554.81 840-480.13q0 74.67-28.34 140.41-28.34 65.73-76.92 114.36-48.58 48.63-114.26 76.99Q554.81-120 480.13-120Zm-.13-40q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z" /></svg>
|
||||||
|
icon:btn_save = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M720-148.46 851.54-280 824-307.54l-84 84V-419h-40v195.46l-84-84L588.46-280 720-148.46ZM580-20v-40h280v40H580ZM180-180v-680h340l220 220v125.62h-40V-620H500v-200H220v600h264.62v40H180Zm40-40v-600 600Z" /></svg>
|
||||||
|
icon:btn_browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-200v-560h263.85l80 80h369.23v40H447.77l-80-80H160v478.46l90.62-303.08h664L811.54-200H120Zm81.69-40h579.85l78.92-264.62H280.62L201.69-240Zm0 0 78.93-264.62L201.69-240ZM160-640v-80 80Z" /></svg>
|
||||||
|
icon:btn_list = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M384.62-220v-40H800v40H384.62Zm0-240v-40H800v40H384.62Zm0-240v-40H800v40H384.62ZM213.08-186.92q-21.9 0-37.49-15.59Q160-218.11 160-240t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Zm0-240q-21.9 0-37.49-15.59Q160-458.11 160-480t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Zm0-240q-21.9 0-37.49-15.59Q160-698.11 160-720t15.59-37.49q15.59-15.59 37.49-15.59 21.89 0 37.48 15.59 15.59 15.6 15.59 37.49t-15.59 37.49q-15.59 15.59-37.48 15.59Z" /></svg>
|
||||||
|
icon:btn_new = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160v-640h264.62v40H200v560h560v-224.62h40V-160H160Zm480-360v-120H520v-40h120v-120h40v120h120v40H680v120h-40Z" /></svg>
|
||||||
|
icon:btn_create = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm-61 83.92 49.62-212.54-164.93-142.84 217.23-18.85L480-777.69l85.08 200.38 217.23 18.85-164.93 142.84L667-203.08 480-315.92 293-203.08ZM480-470Z" /></svg>
|
||||||
|
icon:btn_reset = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M296.15-240v-40h290.16q62.23 0 106.04-42.69 43.8-42.69 43.8-104.23 0-61.54-43.8-103.85-43.81-42.31-106.04-42.31H276.62l118.61 118.62-28.31 28.31L200-593.08 366.92-760l28.31 28.31-118.61 118.61h309.69q78.54 0 134.19 54.16 55.65 54.15 55.65 132 0 77.84-55.65 132.38Q664.85-240 586.31-240H296.15Z" /></svg>
|
||||||
|
icon:btn_insert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-320v-280H340v-40h280v40H500v280h-40ZM95.38-95.38v-169.24H160v-430.76H95.38v-169.24h169.24V-800h430.76v-64.62h169.24v169.24H800v430.76h64.62v169.24H695.38V-160H264.62v64.62H95.38ZM264.62-200h430.76v-64.62H760v-430.76h-64.62V-760H264.62v64.62H200v430.76h64.62V-200ZM135.38-735.38h89.24v-89.24h-89.24v89.24Zm600 0h89.24v-89.24h-89.24v89.24Zm0 600h89.24v-89.24h-89.24v89.24Zm-600 0h89.24v-89.24h-89.24v89.24Zm89.24-600Zm510.76 0Zm0 510.76Zm-510.76 0Z" /></svg>
|
||||||
|
icon:btn_apply = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m424-339.69 255.85-255.85-28.31-28.31L424-396.31l-114-114L281.69-482 424-339.69ZM160-160v-640h640v640H160Zm40-40h560v-560H200v560Zm0 0v-560 560Z" /></svg>
|
||||||
|
icon:btn_build = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m662.62-156.15 101.23-101.23v82.76h30.77V-310H659.23v30.77H742L640.77-178l21.85 21.85ZM160-160v-640h640v302.62q-10.54-3.62-20.15-5.89-9.62-2.27-19.85-4.5V-760H200v560h251.23q1.46 11.23 3.73 20.85 2.27 9.61 5.89 19.15H160Zm40-80v40-560 252.23-3V-240Zm100-69.23h158.38q2.24-10.23 6.04-19.85 3.81-9.61 7.96-20.15H300v40ZM300-460h263.23q19.69-13.85 38.81-23.46 19.11-9.62 41.04-15.08V-500H300v40Zm0-150.77h360v-40H300v40ZM720-75.38q-66.85 0-113.42-46.58Q560-168.54 560-235.38q0-66.85 46.58-113.43 46.57-46.57 113.42-46.57t113.42 46.57Q880-302.23 880-235.38q0 66.84-46.58 113.42Q786.85-75.38 720-75.38Z" /></svg>
|
||||||
|
icon:btn_print = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M640-615.38v-120H320v120h-40v-160.01h400v160.01h-40Zm-456.92 40h593.84-593.84Zm521.54 100q17 0 28.5-11.5t11.5-28.5q0-17-11.5-28.5t-28.5-11.5q-17 0-28.5 11.5t-11.5 28.5q0 17 11.5 28.5t28.5 11.5ZM640-200v-181.54H320V-200h320Zm40 40H280v-160H143.08v-295.38h673.84V-320H680v160Zm96.92-200v-215.38H183.08V-360H280v-61.54h400V-360h96.92Z" /></svg>
|
||||||
|
icon:btn_preview = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160v-640h640v640H160Zm40-40h560v-480H200v480Zm280-120q-65.08 0-117.27-33.35-52.19-33.34-78.88-86.65 26.69-53.31 78.88-86.65Q414.92-560 480-560t117.27 33.35q52.19 33.34 78.88 86.65-26.69 53.31-78.88 86.65Q545.08-320 480-320Zm0-35.38q47.54 0 88.54-22.27 41-22.27 69.31-62.35-28.31-40.08-69.31-62.35-41-22.27-88.54-22.27-47.54 0-88.54 22.27-41 22.27-69.31 62.35 28.31 40.08 69.31 62.35 41 22.27 88.54 22.27Zm0-84.62Zm.18 44.62q18.67 0 31.55-13.07 12.89-13.07 12.89-31.73 0-18.67-13.07-31.55-13.07-12.89-31.73-12.89-18.67 0-31.55 13.07-12.89 13.07-12.89 31.73 0 18.67 13.07 31.55 13.07 12.89 31.73 12.89Z" /></svg>
|
||||||
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-460H240v-40h220v-220h40v220h220v40H500v220h-40v-220Z" /></svg>
|
icon:add = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M460-460H240v-40h220v-220h40v220h220v40H500v220h-40v-220Z" /></svg>
|
||||||
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-100v-620h480v620L420-203.33 180-100Zm40-62 200-86 200 86v-518H220v518Zm520-58v-580H300v-40h480v620h-40ZM220-680h400-400Z" /></svg>
|
icon:bookmarks = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M180-100v-620h480v620L420-203.33 180-100Zm40-62 200-86 200 86v-518H220v518Zm520-58v-580H300v-40h480v620h-40ZM220-680h400-400Z" /></svg>
|
||||||
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-200v-560h263.85l80 80h369.23v40H447.77l-80-80H160v478.46l90.62-303.08h664L811.54-200H120Zm81.69-40h579.85l78.92-264.62H280.62L201.69-240Zm0 0 78.93-264.62L201.69-240ZM160-640v-80 80Z" /></svg>
|
icon:browse = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M120-200v-560h263.85l80 80h369.23v40H447.77l-80-80H160v478.46l90.62-303.08h664L811.54-200H120Zm81.69-40h579.85l78.92-264.62H280.62L201.69-240Zm0 0 78.93-264.62L201.69-240ZM160-640v-80 80Z" /></svg>
|
||||||
@@ -94,7 +111,6 @@ icon:minimise = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M420-327.69v-304.62L572.31-480 420-327.69Z" /></svg>
|
icon:more_arrow = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M420-327.69v-304.62L572.31-480 420-327.69Z" /></svg>
|
||||||
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-218.46q-16.5 0-28.25-11.75T440-258.46q0-16.5 11.75-28.25T480-298.46q16.5 0 28.25 11.75T520-258.46q0 16.5-11.75 28.25T480-218.46ZM480-440q-16.5 0-28.25-11.75T440-480q0-16.5 11.75-28.25T480-520q16.5 0 28.25 11.75T520-480q0 16.5-11.75 28.25T480-440Zm0-221.54q-16.5 0-28.25-11.75T440-701.54q0-16.5 11.75-28.25T480-741.54q16.5 0 28.25 11.75T520-701.54q0 16.5-11.75 28.25T480-661.54Z" /></svg>
|
icon:more_vertical = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M480-218.46q-16.5 0-28.25-11.75T440-258.46q0-16.5 11.75-28.25T480-298.46q16.5 0 28.25 11.75T520-258.46q0 16.5-11.75 28.25T480-218.46ZM480-440q-16.5 0-28.25-11.75T440-480q0-16.5 11.75-28.25T480-520q16.5 0 28.25 11.75T520-480q0 16.5-11.75 28.25T480-440Zm0-221.54q-16.5 0-28.25-11.75T440-701.54q0-16.5 11.75-28.25T480-741.54q16.5 0 28.25 11.75T520-701.54q0 16.5-11.75 28.25T480-661.54Z" /></svg>
|
||||||
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M300-460h360v-40H300v40ZM160-160v-640h640v640H160Zm40-40h560v-560H200v560Zm0 0v-560 560Z" /></svg>
|
icon:noncheckable = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M300-460h360v-40H300v40ZM160-160v-640h640v640H160Zm40-40h560v-560H200v560Zm0 0v-560 560Z" /></svg>
|
||||||
icon:open = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M160-160v-640h289.23v40H200v560h560v-249.23h40V-160H160Zm229.54-201.23-28.31-28.31L731.69-760H560v-40h240v240h-40v-171.69L389.54-361.23Z" /></svg>
|
|
||||||
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200h560v-120H200v120Zm0-160h560v-400H200v400Zm0 40v120-120Zm-40 160v-640h640v640H160Z" /></svg>
|
icon:panel = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-200h560v-120H200v120Zm0-160h560v-400H200v400Zm0 40v120-120Zm-40 160v-640h640v640H160Z" /></svg>
|
||||||
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M600-463.08 663.08-400v40H500v200l-20 20-20-20v-200H296.92v-40L360-463.08V-760h-40v-40h320v40h-40v296.92ZM354-400h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
icon:pin = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M600-463.08 663.08-400v40H500v200l-20 20-20-20v-200H296.92v-40L360-463.08V-760h-40v-40h320v40h-40v296.92ZM354-400h252l-46-46v-314H400v314l-46 46Zm126 0Z" /></svg>
|
||||||
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M80-169.23v-507.69h40v467.69h640v40H80Zm120-120V-840h263.08l80 80H880v470.77H200Zm40-40h600V-720H527l-80-80H240v470.77Zm0 0V-800v470.77Z" /></svg>
|
icon:project_copy = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M80-169.23v-507.69h40v467.69h640v40H80Zm120-120V-840h263.08l80 80H880v470.77H200Zm40-40h600V-720H527l-80-80H240v470.77Zm0 0V-800v470.77Z" /></svg>
|
||||||
@@ -103,7 +119,6 @@ icon:refresh = <svg xmlns="http://www.w3.org/2000/svg" height="128" view
|
|||||||
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M240-460v-40h480v40H240Z" /></svg>
|
icon:remove = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M240-460v-40h480v40H240Z" /></svg>
|
||||||
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M478.46-440q-16.08 0-28.04-11.96T438.46-480q0-16.08 11.96-28.04T478.46-520q16.08 0 28.04 11.96T518.46-480q0 16.08-11.96 28.04T478.46-440Zm0 280q-122.08 0-212.54-79.96T161.23-440h40.46Q218-336.77 296.04-268.38 374.08-200 478.46-200q117 0 198.5-81.5t81.5-198.5q0-117-81.5-198.5T478.46-760q-62.08 0-116.69 26.23-54.62 26.23-96.39 72.23h99.24v40H198.46v-166.15h40v95.54q46.39-50.93 108.73-79.39Q409.54-800 478.46-800q66.6 0 124.76 25.04 58.16 25.04 101.66 68.54 43.5 43.5 68.54 101.65 25.04 58.14 25.04 124.73 0 66.58-25.04 124.77t-68.54 101.69q-43.5 43.5-101.66 68.54Q545.06-160 478.46-160Z" /></svg>
|
icon:revert = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M478.46-440q-16.08 0-28.04-11.96T438.46-480q0-16.08 11.96-28.04T478.46-520q16.08 0 28.04 11.96T518.46-480q0 16.08-11.96 28.04T478.46-440Zm0 280q-122.08 0-212.54-79.96T161.23-440h40.46Q218-336.77 296.04-268.38 374.08-200 478.46-200q117 0 198.5-81.5t81.5-198.5q0-117-81.5-198.5T478.46-760q-62.08 0-116.69 26.23-54.62 26.23-96.39 72.23h99.24v40H198.46v-166.15h40v95.54q46.39-50.93 108.73-79.39Q409.54-800 478.46-800q66.6 0 124.76 25.04 58.16 25.04 101.66 68.54 43.5 43.5 68.54 101.65 25.04 58.14 25.04 124.73 0 66.58-25.04 124.77t-68.54 101.69q-43.5 43.5-101.66 68.54Q545.06-160 478.46-160Z" /></svg>
|
||||||
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m405.38-120-14.46-115.69q-19.15-5.77-41.42-18.16-22.27-12.38-37.88-26.53L204.92-235l-74.61-130 92.23-69.54q-1.77-10.84-2.92-22.34-1.16-11.5-1.16-22.35 0-10.08 1.16-21.19 1.15-11.12 2.92-25.04L130.31-595l74.61-128.46 105.93 44.61q17.92-14.92 38.77-26.92 20.84-12 40.53-18.54L405.38-840h149.24l14.46 116.46q23 8.08 40.65 18.54 17.65 10.46 36.35 26.15l109-44.61L829.69-595l-95.31 71.85q3.31 12.38 3.7 22.73.38 10.34.38 20.42 0 9.31-.77 19.65-.77 10.35-3.54 25.04L827.92-365l-74.61 130-107.23-46.15q-18.7 15.69-37.62 26.92-18.92 11.23-39.38 17.77L554.62-120H405.38ZM440-160h78.23L533-268.31q30.23-8 54.42-21.96 24.2-13.96 49.27-38.27L736.46-286l39.77-68-87.54-65.77q5-17.08 6.62-31.42 1.61-14.35 1.61-28.81 0-15.23-1.61-28.81-1.62-13.57-6.62-29.88L777.77-606 738-674l-102.08 42.77q-18.15-19.92-47.73-37.35-29.57-17.42-55.96-23.11L520-800h-79.77l-12.46 107.54q-30.23 6.46-55.58 20.81-25.34 14.34-50.42 39.42L222-674l-39.77 68L269-541.23q-5 13.46-7 29.23t-2 32.77q0 15.23 2 30.23t6.23 29.23l-86 65.77L222-286l99-42q23.54 23.77 48.88 38.12 25.35 14.34 57.12 22.34L440-160Zm38.92-220q41.85 0 70.93-29.08 29.07-29.07 29.07-70.92t-29.07-70.92Q520.77-580 478.92-580q-42.07 0-71.04 29.08-28.96 29.07-28.96 70.92t28.96 70.92Q436.85-380 478.92-380ZM480-480Z" /></svg>
|
icon:settings = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m405.38-120-14.46-115.69q-19.15-5.77-41.42-18.16-22.27-12.38-37.88-26.53L204.92-235l-74.61-130 92.23-69.54q-1.77-10.84-2.92-22.34-1.16-11.5-1.16-22.35 0-10.08 1.16-21.19 1.15-11.12 2.92-25.04L130.31-595l74.61-128.46 105.93 44.61q17.92-14.92 38.77-26.92 20.84-12 40.53-18.54L405.38-840h149.24l14.46 116.46q23 8.08 40.65 18.54 17.65 10.46 36.35 26.15l109-44.61L829.69-595l-95.31 71.85q3.31 12.38 3.7 22.73.38 10.34.38 20.42 0 9.31-.77 19.65-.77 10.35-3.54 25.04L827.92-365l-74.61 130-107.23-46.15q-18.7 15.69-37.62 26.92-18.92 11.23-39.38 17.77L554.62-120H405.38ZM440-160h78.23L533-268.31q30.23-8 54.42-21.96 24.2-13.96 49.27-38.27L736.46-286l39.77-68-87.54-65.77q5-17.08 6.62-31.42 1.61-14.35 1.61-28.81 0-15.23-1.61-28.81-1.62-13.57-6.62-29.88L777.77-606 738-674l-102.08 42.77q-18.15-19.92-47.73-37.35-29.57-17.42-55.96-23.11L520-800h-79.77l-12.46 107.54q-30.23 6.46-55.58 20.81-25.34 14.34-50.42 39.42L222-674l-39.77 68L269-541.23q-5 13.46-7 29.23t-2 32.77q0 15.23 2 30.23t6.23 29.23l-86 65.77L222-286l99-42q23.54 23.77 48.88 38.12 25.35 14.34 57.12 22.34L440-160Zm38.92-220q41.85 0 70.93-29.08 29.07-29.07 29.07-70.92t-29.07-70.92Q520.77-580 478.92-580q-42.07 0-71.04 29.08-28.96 29.07-28.96 70.92t28.96 70.92Q436.85-380 478.92-380ZM480-480Z" /></svg>
|
||||||
icon:star = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m354-287 126-76 126 77-33-144 111-96-146-13-58-136-58 135-146 13 111 97-33 143Zm-61 83.92 49.62-212.54-164.93-142.84 217.23-18.85L480-777.69l85.08 200.38 217.23 18.85-164.93 142.84L667-203.08 480-315.92 293-203.08ZM480-470Z" /></svg>
|
|
||||||
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M140-130.77 110.77-160l272.31-272.31 160 160 279.38-320 28.31 26.77-306.15 353.23-161.54-161.54L140-130.77Zm0-240L110.77-400l272.31-272.31 160 160 279.38-320 28.31 26.77-306.15 353.23-161.54-161.54L140-370.77Z" /></svg>
|
icon:stats = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M140-130.77 110.77-160l272.31-272.31 160 160 279.38-320 28.31 26.77-306.15 353.23-161.54-161.54L140-130.77Zm0-240L110.77-400l272.31-272.31 160 160 279.38-320 28.31 26.77-306.15 353.23-161.54-161.54L140-370.77Z" /></svg>
|
||||||
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-230.77V-280h320v40l-320 9.23Zm0-151.54v-40h560v40H200Zm0-155.38v-40h560v40H200ZM200-680v-49.23h560V-680H200Z" /></svg>
|
icon:text = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="M200-230.77V-280h320v40l-320 9.23Zm0-151.54v-40h560v40H200Zm0-155.38v-40h560v40H200ZM200-680v-49.23h560V-680H200Z" /></svg>
|
||||||
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m768.77-304-30-30q11-26.23 16.11-52.73Q760-413.23 760-440q0-116-82-198t-198-82q-24 0-52.54 5t-53.69 16l-30-30q31.08-15.38 66.27-23.19Q445.23-760 480-760q56.92 0 110.96 20.38 54.04 20.39 100.42 59.16l43.7-43.69 28.3 28.3-43.69 43.7q38.77 46.38 59.54 100.8Q800-496.92 800-440q0 34.31-7.81 69.27-7.81 34.96-23.42 66.73ZM500-572.77v-51.85h-40v11.85l40 40Zm298.15 467.54L697.54-205.85q-42.62 40.39-99.66 63.12Q540.85-120 480-120q-66.31 0-124.5-25.04t-101.81-68.65q-43.61-43.62-68.65-101.81Q160-373.69 160-440q0-61.54 21.96-117.42 21.96-55.89 63.89-100.12L105.23-798.15l28.31-28.31 692.92 692.92-28.31 28.31ZM480-160q51.23 0 100.08-19.54 48.84-19.54 88.46-55.08L274.15-629q-35.53 38.08-54.84 86.54Q200-494 200-440q0 116 82 198t198 82ZM375.38-860v-40h209.24v40H375.38Zm96.08 428.08ZM556.77-517Z" /></svg>
|
icon:timer_off = <svg xmlns="http://www.w3.org/2000/svg" height="128" viewBox="0 -960 960 960" width="128" fill="#000000"><path d="m768.77-304-30-30q11-26.23 16.11-52.73Q760-413.23 760-440q0-116-82-198t-198-82q-24 0-52.54 5t-53.69 16l-30-30q31.08-15.38 66.27-23.19Q445.23-760 480-760q56.92 0 110.96 20.38 54.04 20.39 100.42 59.16l43.7-43.69 28.3 28.3-43.69 43.7q38.77 46.38 59.54 100.8Q800-496.92 800-440q0 34.31-7.81 69.27-7.81 34.96-23.42 66.73ZM500-572.77v-51.85h-40v11.85l40 40Zm298.15 467.54L697.54-205.85q-42.62 40.39-99.66 63.12Q540.85-120 480-120q-66.31 0-124.5-25.04t-101.81-68.65q-43.61-43.62-68.65-101.81Q160-373.69 160-440q0-61.54 21.96-117.42 21.96-55.89 63.89-100.12L105.23-798.15l28.31-28.31 692.92 692.92-28.31 28.31ZM480-160q51.23 0 100.08-19.54 48.84-19.54 88.46-55.08L274.15-629q-35.53 38.08-54.84 86.54Q200-494 200-440q0 116 82 198t198 82ZM375.38-860v-40h209.24v40H375.38Zm96.08 428.08ZM556.77-517Z" /></svg>
|
||||||
|
|||||||
@@ -33,10 +33,11 @@ from PyQt6.QtWidgets import (
|
|||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import readTextFile
|
from novelwriter.common import readTextFile
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NColorLabel
|
from novelwriter.extensions.configlayout import NColorLabel
|
||||||
from novelwriter.extensions.modified import NDialog
|
from novelwriter.extensions.modified import NDialog
|
||||||
from novelwriter.extensions.versioninfo import VersionInfoWidget
|
from novelwriter.extensions.versioninfo import VersionInfoWidget
|
||||||
from novelwriter.types import QtAlignRightTop, QtDialogClose, QtHexArgb
|
from novelwriter.types import QtAlignRightTop, QtHexArgb, QtRoleReject
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from PyQt6.QtGui import QCloseEvent
|
from PyQt6.QtGui import QCloseEvent
|
||||||
@@ -82,8 +83,11 @@ class GuiAbout(NDialog):
|
|||||||
self.txtCredits.setViewportMargins(0, 8, 8, 0)
|
self.txtCredits.setViewportMargins(0, 8, 8, 0)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.btnBox = QDialogButtonBox(QtDialogClose, self)
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
self.btnBox.rejected.connect(self.reject)
|
self.btnClose.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.innerBox = QVBoxLayout()
|
self.innerBox = QVBoxLayout()
|
||||||
|
|||||||
@@ -33,10 +33,11 @@ from PyQt6.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import SHARED
|
from novelwriter import SHARED
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NColorLabel
|
from novelwriter.extensions.configlayout import NColorLabel
|
||||||
from novelwriter.extensions.modified import NDialog
|
from novelwriter.extensions.modified import NDialog
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import QtAccepted, QtDialogCancel, QtDialogOk, QtDialogReset, QtUserRole
|
from novelwriter.types import QtAccepted, QtRoleAccept, QtRoleReject, QtRoleReset, QtUserRole
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@@ -85,13 +86,19 @@ class GuiDocMerge(NDialog):
|
|||||||
self.optBox.setColumnStretch(2, 1)
|
self.optBox.setColumnStretch(2, 1)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogOk | QtDialogCancel, self)
|
self.btnOk = SHARED.theme.getStandardButton(nwStandardButton.OK, self)
|
||||||
self.buttonBox.accepted.connect(self.accept)
|
self.btnOk.clicked.connect(self.accept)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
|
||||||
self.resetButton = self.buttonBox.addButton(QtDialogReset)
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
if self.resetButton:
|
self.btnCancel.clicked.connect(self.reject)
|
||||||
self.resetButton.clicked.connect(self._resetList)
|
|
||||||
|
self.btnReset = SHARED.theme.getStandardButton(nwStandardButton.RESET, self)
|
||||||
|
self.btnReset.clicked.connect(self._resetList)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnOk, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnCancel, QtRoleReject)
|
||||||
|
self.btnBox.addButton(self.btnReset, QtRoleReset)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
@@ -103,7 +110,7 @@ class GuiDocMerge(NDialog):
|
|||||||
self.outerBox.addSpacing(8)
|
self.outerBox.addSpacing(8)
|
||||||
self.outerBox.addLayout(self.optBox)
|
self.outerBox.addLayout(self.optBox)
|
||||||
self.outerBox.addSpacing(12)
|
self.outerBox.addSpacing(12)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|
||||||
# Load Content
|
# Load Content
|
||||||
|
|||||||
@@ -33,10 +33,11 @@ from PyQt6.QtWidgets import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import SHARED
|
from novelwriter import SHARED
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NColorLabel
|
from novelwriter.extensions.configlayout import NColorLabel
|
||||||
from novelwriter.extensions.modified import NComboBox, NDialog
|
from novelwriter.extensions.modified import NComboBox, NDialog
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import QtAccepted, QtDialogCancel, QtDialogOk, QtUserRole
|
from novelwriter.types import QtAccepted, QtRoleAccept, QtRoleReject, QtUserRole
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@@ -117,9 +118,15 @@ class GuiDocSplit(NDialog):
|
|||||||
self.optBox.setColumnStretch(3, 1)
|
self.optBox.setColumnStretch(3, 1)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogOk | QtDialogCancel, self)
|
self.btnOk = SHARED.theme.getStandardButton(nwStandardButton.OK, self)
|
||||||
self.buttonBox.accepted.connect(self.accept)
|
self.btnOk.clicked.connect(self.accept)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
|
self.btnCancel.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnOk, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnCancel, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
@@ -132,7 +139,7 @@ class GuiDocSplit(NDialog):
|
|||||||
self.outerBox.addSpacing(8)
|
self.outerBox.addSpacing(8)
|
||||||
self.outerBox.addLayout(self.optBox)
|
self.outerBox.addLayout(self.optBox)
|
||||||
self.outerBox.addSpacing(12)
|
self.outerBox.addSpacing(12)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|
||||||
# Load Content
|
# Load Content
|
||||||
|
|||||||
@@ -27,8 +27,10 @@ import logging
|
|||||||
|
|
||||||
from PyQt6.QtWidgets import QDialogButtonBox, QHBoxLayout, QLabel, QLineEdit, QVBoxLayout, QWidget
|
from PyQt6.QtWidgets import QDialogButtonBox, QHBoxLayout, QLabel, QLineEdit, QVBoxLayout, QWidget
|
||||||
|
|
||||||
|
from novelwriter import SHARED
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.modified import NDialog
|
from novelwriter.extensions.modified import NDialog
|
||||||
from novelwriter.types import QtAccepted, QtDialogCancel, QtDialogOk
|
from novelwriter.types import QtAccepted, QtRoleAccept, QtRoleReject
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@@ -54,9 +56,15 @@ class GuiEditLabel(NDialog):
|
|||||||
self.lblValue.setBuddy(self.lblValue)
|
self.lblValue.setBuddy(self.lblValue)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogOk | QtDialogCancel, self)
|
self.btnOk = SHARED.theme.getStandardButton(nwStandardButton.OK, self)
|
||||||
self.buttonBox.accepted.connect(self.accept)
|
self.btnOk.clicked.connect(self.accept)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
|
self.btnCancel.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnOk, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnCancel, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.innerBox = QHBoxLayout()
|
self.innerBox = QHBoxLayout()
|
||||||
@@ -67,7 +75,7 @@ class GuiEditLabel(NDialog):
|
|||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
self.outerBox.setSpacing(12)
|
self.outerBox.setSpacing(12)
|
||||||
self.outerBox.addLayout(self.innerBox, 1)
|
self.outerBox.addLayout(self.innerBox, 1)
|
||||||
self.outerBox.addWidget(self.buttonBox, 0)
|
self.outerBox.addWidget(self.btnBox, 0)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|
||||||
|
|||||||
@@ -38,13 +38,14 @@ from novelwriter.common import compact, describeFont, processDialogSymbols, uniq
|
|||||||
from novelwriter.config import DEF_GUI_DARK, DEF_GUI_LIGHT, DEF_ICONS, DEF_TREECOL
|
from novelwriter.config import DEF_GUI_DARK, DEF_GUI_LIGHT, DEF_ICONS, DEF_TREECOL
|
||||||
from novelwriter.constants import nwLabels, nwQuotes, nwUnicode, trConst
|
from novelwriter.constants import nwLabels, nwQuotes, nwUnicode, trConst
|
||||||
from novelwriter.dialogs.quotes import GuiQuoteSelect
|
from novelwriter.dialogs.quotes import GuiQuoteSelect
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NColorLabel, NScrollableForm
|
from novelwriter.extensions.configlayout import NColorLabel, NScrollableForm
|
||||||
from novelwriter.extensions.modified import (
|
from novelwriter.extensions.modified import (
|
||||||
NComboBox, NDialog, NDoubleSpinBox, NIconToolButton, NSpinBox
|
NComboBox, NDialog, NDoubleSpinBox, NIconToolButton, NSpinBox
|
||||||
)
|
)
|
||||||
from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import QtAlignCenter, QtDialogCancel, QtDialogSave
|
from novelwriter.types import QtAlignCenter, QtRoleAccept, QtRoleReject
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@@ -89,9 +90,15 @@ class GuiPreferences(NDialog):
|
|||||||
self.mainForm.setHelpTextStyle(SHARED.theme.helpText)
|
self.mainForm.setHelpTextStyle(SHARED.theme.helpText)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogSave | QtDialogCancel, self)
|
self.btnSave = SHARED.theme.getStandardButton(nwStandardButton.SAVE, self)
|
||||||
self.buttonBox.accepted.connect(self._doSave)
|
self.btnSave.clicked.connect(self._doSave)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
|
self.btnCancel.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnSave, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnCancel, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.searchBox = QHBoxLayout()
|
self.searchBox = QHBoxLayout()
|
||||||
@@ -107,7 +114,7 @@ class GuiPreferences(NDialog):
|
|||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
self.outerBox.addLayout(self.searchBox)
|
self.outerBox.addLayout(self.searchBox)
|
||||||
self.outerBox.addLayout(self.mainBox)
|
self.outerBox.addLayout(self.mainBox)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.outerBox.setSpacing(8)
|
self.outerBox.setSpacing(8)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|||||||
@@ -41,13 +41,13 @@ from novelwriter import CONFIG, SHARED
|
|||||||
from novelwriter.common import formatFileFilter, qtAddAction, qtLambda, simplified
|
from novelwriter.common import formatFileFilter, qtAddAction, qtLambda, simplified
|
||||||
from novelwriter.constants import nwLabels, trConst
|
from novelwriter.constants import nwLabels, trConst
|
||||||
from novelwriter.core.status import CUSTOM_COL, NWStatus, StatusEntry
|
from novelwriter.core.status import CUSTOM_COL, NWStatus, StatusEntry
|
||||||
from novelwriter.enum import nwStatusShape
|
from novelwriter.enum import nwStandardButton, nwStatusShape
|
||||||
from novelwriter.extensions.configlayout import NColorLabel, NFixedPage, NScrollableForm
|
from novelwriter.extensions.configlayout import NColorLabel, NFixedPage, NScrollableForm
|
||||||
from novelwriter.extensions.modified import NComboBox, NDialog, NIconToolButton
|
from novelwriter.extensions.modified import NComboBox, NDialog, NIconToolButton
|
||||||
from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import (
|
from novelwriter.types import (
|
||||||
QtDialogCancel, QtDialogSave, QtSizeMinimum, QtSizeMinimumExpanding,
|
QtRoleAccept, QtRoleReject, QtSizeMinimum, QtSizeMinimumExpanding,
|
||||||
QtUserRole
|
QtUserRole
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -95,9 +95,15 @@ class GuiProjectSettings(NDialog):
|
|||||||
self.sidebar.buttonClicked.connect(self._sidebarClicked)
|
self.sidebar.buttonClicked.connect(self._sidebarClicked)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogSave | QtDialogCancel, self)
|
self.btnSave = SHARED.theme.getStandardButton(nwStandardButton.SAVE, self)
|
||||||
self.buttonBox.accepted.connect(self._doSave)
|
self.btnSave.clicked.connect(self._doSave)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
|
self.btnCancel.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnSave, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnCancel, QtRoleReject)
|
||||||
|
|
||||||
# Content
|
# Content
|
||||||
SHARED.project.countStatus()
|
SHARED.project.countStatus()
|
||||||
@@ -126,7 +132,7 @@ class GuiProjectSettings(NDialog):
|
|||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
self.outerBox.addLayout(self.topBox)
|
self.outerBox.addLayout(self.topBox)
|
||||||
self.outerBox.addLayout(self.mainBox)
|
self.outerBox.addLayout(self.mainBox)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.outerBox.setSpacing(8)
|
self.outerBox.setSpacing(8)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|||||||
@@ -32,10 +32,12 @@ from PyQt6.QtWidgets import (
|
|||||||
QListWidgetItem, QVBoxLayout, QWidget
|
QListWidgetItem, QVBoxLayout, QWidget
|
||||||
)
|
)
|
||||||
|
|
||||||
|
from novelwriter import SHARED
|
||||||
from novelwriter.constants import nwQuotes, trConst
|
from novelwriter.constants import nwQuotes, trConst
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.modified import NDialog
|
from novelwriter.extensions.modified import NDialog
|
||||||
from novelwriter.types import (
|
from novelwriter.types import (
|
||||||
QtAccepted, QtAlignCenter, QtAlignTop, QtDialogCancel, QtDialogOk,
|
QtAccepted, QtAlignCenter, QtAlignTop, QtRoleAccept, QtRoleReject,
|
||||||
QtUserRole
|
QtUserRole
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -91,9 +93,15 @@ class GuiQuoteSelect(NDialog):
|
|||||||
self.listBox.setMinimumHeight(150)
|
self.listBox.setMinimumHeight(150)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogOk | QtDialogCancel, self)
|
self.btnOk = SHARED.theme.getStandardButton(nwStandardButton.OK, self)
|
||||||
self.buttonBox.accepted.connect(self.accept)
|
self.btnOk.clicked.connect(self.accept)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
|
self.btnCancel.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnOk, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnCancel, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.labelBox.addWidget(self.previewLabel, 0, QtAlignTop)
|
self.labelBox.addWidget(self.previewLabel, 0, QtAlignTop)
|
||||||
@@ -103,7 +111,7 @@ class GuiQuoteSelect(NDialog):
|
|||||||
self.innerBox.addWidget(self.listBox)
|
self.innerBox.addWidget(self.listBox)
|
||||||
|
|
||||||
self.outerBox.addLayout(self.innerBox)
|
self.outerBox.addLayout(self.innerBox)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|
||||||
|
|||||||
@@ -37,9 +37,10 @@ from PyQt6.QtWidgets import (
|
|||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import formatFileFilter
|
from novelwriter.common import formatFileFilter
|
||||||
from novelwriter.core.spellcheck import UserDictionary
|
from novelwriter.core.spellcheck import UserDictionary
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NColorLabel
|
from novelwriter.extensions.configlayout import NColorLabel
|
||||||
from novelwriter.extensions.modified import NDialog, NIconToolButton
|
from novelwriter.extensions.modified import NDialog, NIconToolButton
|
||||||
from novelwriter.types import QtDialogClose, QtDialogSave
|
from novelwriter.types import QtRoleAccept, QtRoleReject
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from PyQt6.QtGui import QCloseEvent
|
from PyQt6.QtGui import QCloseEvent
|
||||||
@@ -110,9 +111,15 @@ class GuiWordList(NDialog):
|
|||||||
self.editBox.addWidget(self.delButton, 0)
|
self.editBox.addWidget(self.delButton, 0)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogSave | QtDialogClose, self)
|
self.btnSave = SHARED.theme.getStandardButton(nwStandardButton.SAVE, self)
|
||||||
self.buttonBox.accepted.connect(self._doSave)
|
self.btnSave.clicked.connect(self._doSave)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
|
||||||
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
|
self.btnClose.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnSave, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
@@ -120,7 +127,7 @@ class GuiWordList(NDialog):
|
|||||||
self.outerBox.addWidget(self.listBox, 1)
|
self.outerBox.addWidget(self.listBox, 1)
|
||||||
self.outerBox.addLayout(self.editBox, 0)
|
self.outerBox.addLayout(self.editBox, 0)
|
||||||
self.outerBox.addSpacing(12)
|
self.outerBox.addSpacing(12)
|
||||||
self.outerBox.addWidget(self.buttonBox, 0)
|
self.outerBox.addWidget(self.btnBox, 0)
|
||||||
self.outerBox.setSpacing(4)
|
self.outerBox.setSpacing(4)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|||||||
@@ -247,3 +247,25 @@ class nwStatusShape(Enum):
|
|||||||
BLOCK_2 = 17
|
BLOCK_2 = 17
|
||||||
BLOCK_3 = 18
|
BLOCK_3 = 18
|
||||||
BLOCK_4 = 19
|
BLOCK_4 = 19
|
||||||
|
|
||||||
|
|
||||||
|
class nwStandardButton(Enum):
|
||||||
|
"""Enum: Standard Dialog Buttons."""
|
||||||
|
|
||||||
|
OK = 0
|
||||||
|
CANCEL = 1
|
||||||
|
YES = 2
|
||||||
|
NO = 3
|
||||||
|
OPEN = 4
|
||||||
|
CLOSE = 5
|
||||||
|
SAVE = 6
|
||||||
|
BROWSE = 7
|
||||||
|
LIST = 8
|
||||||
|
NEW = 9
|
||||||
|
CREATE = 10
|
||||||
|
RESET = 11
|
||||||
|
INSERT = 12
|
||||||
|
APPLY = 13
|
||||||
|
BUILD = 14
|
||||||
|
PRINT = 15
|
||||||
|
PREVIEW = 16
|
||||||
|
|||||||
@@ -31,8 +31,8 @@ from typing import TYPE_CHECKING
|
|||||||
|
|
||||||
from PyQt6.QtCore import QModelIndex, QSize, Qt, pyqtSignal, pyqtSlot
|
from PyQt6.QtCore import QModelIndex, QSize, Qt, pyqtSignal, pyqtSlot
|
||||||
from PyQt6.QtWidgets import (
|
from PyQt6.QtWidgets import (
|
||||||
QApplication, QComboBox, QDialog, QDoubleSpinBox, QLabel, QSpinBox,
|
QApplication, QComboBox, QDialog, QDoubleSpinBox, QLabel, QPushButton,
|
||||||
QToolButton, QTreeView, QWidget
|
QSpinBox, QToolButton, QTreeView, QWidget
|
||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
@@ -199,6 +199,29 @@ class NDoubleSpinBox(QDoubleSpinBox):
|
|||||||
event.ignore()
|
event.ignore()
|
||||||
|
|
||||||
|
|
||||||
|
class NPushButton(QPushButton):
|
||||||
|
"""Custom: Modified QPushButton.
|
||||||
|
|
||||||
|
A quicker way to create a push button using the app theme.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def __init__(
|
||||||
|
self, parent: QWidget, text: str, iconSize: QSize,
|
||||||
|
icon: str | None = None, color: str | None = None
|
||||||
|
) -> None:
|
||||||
|
super().__init__(parent=parent)
|
||||||
|
self._icon = icon
|
||||||
|
self._color = color
|
||||||
|
self.setText(text)
|
||||||
|
self.setIconSize(iconSize)
|
||||||
|
self.refreshIcon()
|
||||||
|
|
||||||
|
def refreshIcon(self) -> None:
|
||||||
|
"""Reload the theme icon."""
|
||||||
|
if self._icon:
|
||||||
|
self.setIcon(SHARED.theme.getIcon(self._icon, self._color))
|
||||||
|
|
||||||
|
|
||||||
class NIconToolButton(QToolButton):
|
class NIconToolButton(QToolButton):
|
||||||
"""Custom: Modified QToolButton.
|
"""Custom: Modified QToolButton.
|
||||||
|
|
||||||
|
|||||||
@@ -31,19 +31,20 @@ from dataclasses import dataclass
|
|||||||
from math import ceil
|
from math import ceil
|
||||||
from typing import TYPE_CHECKING, Final
|
from typing import TYPE_CHECKING, Final
|
||||||
|
|
||||||
from PyQt6.QtCore import QSize, Qt
|
from PyQt6.QtCore import QT_TRANSLATE_NOOP, QCoreApplication, QSize, Qt
|
||||||
from PyQt6.QtGui import (
|
from PyQt6.QtGui import (
|
||||||
QColor, QFont, QFontDatabase, QFontMetrics, QGuiApplication, QIcon,
|
QColor, QFont, QFontDatabase, QFontMetrics, QGuiApplication, QIcon,
|
||||||
QPainter, QPainterPath, QPalette, QPixmap
|
QPainter, QPainterPath, QPalette, QPixmap
|
||||||
)
|
)
|
||||||
from PyQt6.QtWidgets import QApplication
|
from PyQt6.QtWidgets import QApplication, QWidget
|
||||||
|
|
||||||
from novelwriter import CONFIG
|
from novelwriter import CONFIG
|
||||||
from novelwriter.common import checkInt, minmax
|
from novelwriter.common import checkInt, minmax
|
||||||
from novelwriter.config import DEF_GUI_DARK, DEF_GUI_LIGHT, DEF_ICONS, DEF_TREECOL
|
from novelwriter.config import DEF_GUI_DARK, DEF_GUI_LIGHT, DEF_ICONS, DEF_TREECOL
|
||||||
from novelwriter.constants import nwLabels
|
from novelwriter.constants import nwLabels
|
||||||
from novelwriter.enum import nwItemClass, nwItemLayout, nwItemType, nwTheme
|
from novelwriter.enum import nwItemClass, nwItemLayout, nwItemType, nwStandardButton, nwTheme
|
||||||
from novelwriter.error import logException
|
from novelwriter.error import logException
|
||||||
|
from novelwriter.extensions.modified import NPushButton
|
||||||
from novelwriter.types import QtBlack, QtHexArgb, QtPaintAntiAlias, QtTransparent
|
from novelwriter.types import QtBlack, QtHexArgb, QtPaintAntiAlias, QtTransparent
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
@@ -55,6 +56,26 @@ STYLES_FLAT_TABS = "flatTabWidget"
|
|||||||
STYLES_MIN_TOOLBUTTON = "minimalToolButton"
|
STYLES_MIN_TOOLBUTTON = "minimalToolButton"
|
||||||
STYLES_BIG_TOOLBUTTON = "bigToolButton"
|
STYLES_BIG_TOOLBUTTON = "bigToolButton"
|
||||||
|
|
||||||
|
STANDARD_BUTTONS = {
|
||||||
|
nwStandardButton.OK: (QT_TRANSLATE_NOOP("Button", "OK"), "btn_ok", "blue"),
|
||||||
|
nwStandardButton.CANCEL: (QT_TRANSLATE_NOOP("Button", "Cancel"), "btn_cancel", "red"),
|
||||||
|
nwStandardButton.YES: (QT_TRANSLATE_NOOP("Button", "&Yes"), "btn_yes", "green"),
|
||||||
|
nwStandardButton.NO: (QT_TRANSLATE_NOOP("Button", "&No"), "btn_no", "red"),
|
||||||
|
nwStandardButton.OPEN: (QT_TRANSLATE_NOOP("Button", "Open"), "btn_open", "blue"),
|
||||||
|
nwStandardButton.CLOSE: (QT_TRANSLATE_NOOP("Button", "Close"), "btn_close", "faded"),
|
||||||
|
nwStandardButton.SAVE: (QT_TRANSLATE_NOOP("Button", "Save"), "btn_save", "blue"),
|
||||||
|
nwStandardButton.BROWSE: (QT_TRANSLATE_NOOP("Button", "Browse"), "btn_browse", "yellow"),
|
||||||
|
nwStandardButton.LIST: (QT_TRANSLATE_NOOP("Button", "List"), "btn_list", "blue"),
|
||||||
|
nwStandardButton.NEW: (QT_TRANSLATE_NOOP("Button", "New"), "btn_new", "green"),
|
||||||
|
nwStandardButton.CREATE: (QT_TRANSLATE_NOOP("Button", "Create"), "btn_create", "yellow"),
|
||||||
|
nwStandardButton.RESET: (QT_TRANSLATE_NOOP("Button", "Reset"), "btn_reset", "green"),
|
||||||
|
nwStandardButton.INSERT: (QT_TRANSLATE_NOOP("Button", "Insert"), "btn_insert", "blue"),
|
||||||
|
nwStandardButton.APPLY: (QT_TRANSLATE_NOOP("Button", "Apply"), "btn_apply", "blue"),
|
||||||
|
nwStandardButton.BUILD: (QT_TRANSLATE_NOOP("Button", "Build"), "btn_build", "blue"),
|
||||||
|
nwStandardButton.PRINT: (QT_TRANSLATE_NOOP("Button", "Print"), "btn_print", "blue"),
|
||||||
|
nwStandardButton.PREVIEW: (QT_TRANSLATE_NOOP("Button", "Preview"), "btn_preview", "blue"),
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@dataclass
|
@dataclass
|
||||||
class ThemeEntry:
|
class ThemeEntry:
|
||||||
@@ -120,9 +141,9 @@ class GuiTheme:
|
|||||||
"_qColors", "_styleSheets", "_svgColors", "_syntaxList", "accentCol", "baseButtonHeight",
|
"_qColors", "_styleSheets", "_svgColors", "_syntaxList", "accentCol", "baseButtonHeight",
|
||||||
"baseIconHeight", "baseIconSize", "buttonIconSize", "errorText", "fadedText",
|
"baseIconHeight", "baseIconSize", "buttonIconSize", "errorText", "fadedText",
|
||||||
"fontPixelSize", "fontPointSize", "getDecoration", "getHeaderDecoration",
|
"fontPixelSize", "fontPointSize", "getDecoration", "getHeaderDecoration",
|
||||||
"getHeaderDecorationNarrow", "getIcon", "getItemIcon", "getPixmap", "getToggleIcon",
|
"getHeaderDecorationNarrow", "getIcon", "getItemIcon", "getPixmap", "getStandardButton",
|
||||||
"guiFont", "guiFontB", "guiFontBU", "guiFontFixed", "guiFontSmall", "helpText",
|
"getToggleIcon", "guiFont", "guiFontB", "guiFontBU", "guiFontFixed", "guiFontSmall",
|
||||||
"iconCache", "isDarkTheme", "syntaxTheme", "textNHeight", "textNWidth",
|
"helpText", "iconCache", "isDarkTheme", "syntaxTheme", "textNHeight", "textNWidth",
|
||||||
)
|
)
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
@@ -153,6 +174,7 @@ class GuiTheme:
|
|||||||
self.getItemIcon = self.iconCache.getItemIcon
|
self.getItemIcon = self.iconCache.getItemIcon
|
||||||
self.getToggleIcon = self.iconCache.getToggleIcon
|
self.getToggleIcon = self.iconCache.getToggleIcon
|
||||||
self.getDecoration = self.iconCache.getDecoration
|
self.getDecoration = self.iconCache.getDecoration
|
||||||
|
self.getStandardButton = self.iconCache.getStandardButton
|
||||||
self.getHeaderDecoration = self.iconCache.getHeaderDecoration
|
self.getHeaderDecoration = self.iconCache.getHeaderDecoration
|
||||||
self.getHeaderDecorationNarrow = self.iconCache.getHeaderDecorationNarrow
|
self.getHeaderDecorationNarrow = self.iconCache.getHeaderDecorationNarrow
|
||||||
|
|
||||||
@@ -808,6 +830,14 @@ class GuiIcons:
|
|||||||
w, h = size
|
w, h = size
|
||||||
return self.getIcon(name, color, w, h).pixmap(w, h, QIcon.Mode.Normal)
|
return self.getIcon(name, color, w, h).pixmap(w, h, QIcon.Mode.Normal)
|
||||||
|
|
||||||
|
def getStandardButton(self, button: nwStandardButton, parent: QWidget) -> NPushButton:
|
||||||
|
"""Return a standard button with icon and text."""
|
||||||
|
text, icon, color = STANDARD_BUTTONS.get(button, ("", "", ""))
|
||||||
|
return NPushButton(
|
||||||
|
parent, QCoreApplication.translate("Button", text),
|
||||||
|
self._theme.buttonIconSize, icon, color
|
||||||
|
)
|
||||||
|
|
||||||
def getDecoration(self, name: str, w: int | None = None, h: int | None = None) -> QPixmap:
|
def getDecoration(self, name: str, w: int | None = None, h: int | None = None) -> QPixmap:
|
||||||
"""Load graphical decoration element based on the decoration
|
"""Load graphical decoration element based on the decoration
|
||||||
map or the icon map. This function always returns a QPixmap.
|
map or the icon map. This function always returns a QPixmap.
|
||||||
|
|||||||
+29
-4
@@ -39,7 +39,7 @@ from PyQt6.QtWidgets import QApplication, QFileDialog, QFontDialog, QMessageBox,
|
|||||||
from novelwriter.common import formatFileFilter
|
from novelwriter.common import formatFileFilter
|
||||||
from novelwriter.constants import nwFiles
|
from novelwriter.constants import nwFiles
|
||||||
from novelwriter.core.spellcheck import NWSpellEnchant
|
from novelwriter.core.spellcheck import NWSpellEnchant
|
||||||
from novelwriter.enum import nwChange, nwItemClass
|
from novelwriter.enum import nwChange, nwItemClass, nwStandardButton
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from collections.abc import Callable
|
from collections.abc import Callable
|
||||||
@@ -422,7 +422,7 @@ class SharedData(QObject):
|
|||||||
alert.setAlertType(_GuiAlert.WARN if warn else _GuiAlert.ASK, True)
|
alert.setAlertType(_GuiAlert.WARN if warn else _GuiAlert.ASK, True)
|
||||||
self._lastAlert = alert.logMessage
|
self._lastAlert = alert.logMessage
|
||||||
alert.exec()
|
alert.exec()
|
||||||
return alert.result() == QMessageBox.StandardButton.Yes
|
return alert.finalState
|
||||||
|
|
||||||
##
|
##
|
||||||
# Internal Functions
|
# Internal Functions
|
||||||
@@ -469,6 +469,7 @@ class _GuiAlert(QMessageBox):
|
|||||||
super().__init__(parent=parent)
|
super().__init__(parent=parent)
|
||||||
self._theme = theme
|
self._theme = theme
|
||||||
self._message = ""
|
self._message = ""
|
||||||
|
self._state = False
|
||||||
logger.debug("Ready: _GuiAlert")
|
logger.debug("Ready: _GuiAlert")
|
||||||
|
|
||||||
def __del__(self) -> None: # pragma: no cover
|
def __del__(self) -> None: # pragma: no cover
|
||||||
@@ -478,6 +479,10 @@ class _GuiAlert(QMessageBox):
|
|||||||
def logMessage(self) -> str:
|
def logMessage(self) -> str:
|
||||||
return self._message
|
return self._message
|
||||||
|
|
||||||
|
@property
|
||||||
|
def finalState(self) -> bool:
|
||||||
|
return self._state
|
||||||
|
|
||||||
def setMessage(self, text: str, info: str, details: str) -> None:
|
def setMessage(self, text: str, info: str, details: str) -> None:
|
||||||
"""Set the alert box message."""
|
"""Set the alert box message."""
|
||||||
self._message = " ".join(filter(None, [text, info, details]))
|
self._message = " ".join(filter(None, [text, info, details]))
|
||||||
@@ -496,9 +501,17 @@ class _GuiAlert(QMessageBox):
|
|||||||
Yes/No buttons or just an Ok button.
|
Yes/No buttons or just an Ok button.
|
||||||
"""
|
"""
|
||||||
if isYesNo:
|
if isYesNo:
|
||||||
self.setStandardButtons(QMessageBox.StandardButton.Yes | QMessageBox.StandardButton.No)
|
self._btnYes = self._theme.getStandardButton(nwStandardButton.YES, self)
|
||||||
|
self._btnYes.clicked.connect(self._onAccept)
|
||||||
|
self._btnNo = self._theme.getStandardButton(nwStandardButton.NO, self)
|
||||||
|
self._btnNo.clicked.connect(self._onReject)
|
||||||
|
self.addButton(self._btnYes, QMessageBox.ButtonRole.YesRole)
|
||||||
|
self.addButton(self._btnNo, QMessageBox.ButtonRole.NoRole)
|
||||||
else:
|
else:
|
||||||
self.setStandardButtons(QMessageBox.StandardButton.Ok)
|
self._btnOk = self._theme.getStandardButton(nwStandardButton.OK, self)
|
||||||
|
self._btnOk.clicked.connect(self._onAccept)
|
||||||
|
self.addButton(self._btnOk, QMessageBox.ButtonRole.AcceptRole)
|
||||||
|
|
||||||
pSz = 2*self._theme.baseIconHeight
|
pSz = 2*self._theme.baseIconHeight
|
||||||
if level == self.INFO:
|
if level == self.INFO:
|
||||||
self.setIconPixmap(self._theme.getPixmap("alert_info", (pSz, pSz), "blue"))
|
self.setIconPixmap(self._theme.getPixmap("alert_info", (pSz, pSz), "blue"))
|
||||||
@@ -512,3 +525,15 @@ class _GuiAlert(QMessageBox):
|
|||||||
elif level == self.ASK:
|
elif level == self.ASK:
|
||||||
self.setIconPixmap(self._theme.getPixmap("alert_question", (pSz, pSz), "blue"))
|
self.setIconPixmap(self._theme.getPixmap("alert_question", (pSz, pSz), "blue"))
|
||||||
self.setWindowTitle(self.tr("Question"))
|
self.setWindowTitle(self.tr("Question"))
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
|
def _onAccept(self) -> None:
|
||||||
|
"""Process accepted state."""
|
||||||
|
self._state = True
|
||||||
|
self.close()
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
|
def _onReject(self) -> None:
|
||||||
|
"""Process rejected state."""
|
||||||
|
self._state = False
|
||||||
|
self.close()
|
||||||
|
|||||||
@@ -37,9 +37,10 @@ from PyQt6.QtWidgets import (
|
|||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import formatFileFilter, formatInt, getFileSize, openExternalPath
|
from novelwriter.common import formatFileFilter, formatInt, getFileSize, openExternalPath
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.error import formatException
|
from novelwriter.error import formatException
|
||||||
from novelwriter.extensions.modified import NIconToolButton, NNonBlockingDialog
|
from novelwriter.extensions.modified import NIconToolButton, NNonBlockingDialog
|
||||||
from novelwriter.types import QtDialogClose, QtHexArgb
|
from novelwriter.types import QtHexArgb, QtRoleReject
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@@ -110,8 +111,11 @@ class GuiDictionaries(NNonBlockingDialog):
|
|||||||
self.infoBox.setFrameStyle(QFrame.Shape.NoFrame)
|
self.infoBox.setFrameStyle(QFrame.Shape.NoFrame)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogClose, self)
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
self.btnClose.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
@@ -123,7 +127,7 @@ class GuiDictionaries(NNonBlockingDialog):
|
|||||||
self.outerBox.addLayout(self.inBox, 0)
|
self.outerBox.addLayout(self.inBox, 0)
|
||||||
self.outerBox.addWidget(self.infoBox, 1)
|
self.outerBox.addWidget(self.infoBox, 1)
|
||||||
self.outerBox.addSpacing(8)
|
self.outerBox.addSpacing(8)
|
||||||
self.outerBox.addWidget(self.buttonBox, 0)
|
self.outerBox.addWidget(self.btnBox, 0)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|
||||||
|
|||||||
+12
-11
@@ -34,9 +34,10 @@ from PyQt6.QtWidgets import (
|
|||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import readTextFile
|
from novelwriter.common import readTextFile
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.modified import NDialog
|
from novelwriter.extensions.modified import NDialog
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import QtAlignLeft, QtAlignRight, QtDialogClose, QtRoleAction
|
from novelwriter.types import QtAlignLeft, QtAlignRight, QtRoleApply, QtRoleReject
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
@@ -91,22 +92,22 @@ class GuiLipsum(NDialog):
|
|||||||
self.innerBox.addLayout(self.formBox)
|
self.innerBox.addLayout(self.formBox)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(self)
|
self.btnInsert = SHARED.theme.getStandardButton(nwStandardButton.INSERT, self)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
self.btnInsert.clicked.connect(self._doInsert)
|
||||||
|
self.btnInsert.setAutoDefault(False)
|
||||||
|
|
||||||
self.btnClose = self.buttonBox.addButton(QtDialogClose)
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
if self.btnClose:
|
self.btnClose.clicked.connect(self.reject)
|
||||||
self.btnClose.setAutoDefault(False)
|
self.btnClose.setAutoDefault(False)
|
||||||
|
|
||||||
self.btnInsert = self.buttonBox.addButton(self.tr("Insert"), QtRoleAction)
|
self.btnBox = QDialogButtonBox(self)
|
||||||
if self.btnInsert:
|
self.btnBox.addButton(self.btnInsert, QtRoleApply)
|
||||||
self.btnInsert.clicked.connect(self._doInsert)
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
self.btnInsert.setAutoDefault(False)
|
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
self.outerBox.addLayout(self.innerBox)
|
self.outerBox.addLayout(self.innerBox)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.outerBox.setSpacing(16)
|
self.outerBox.setSpacing(16)
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ from PyQt6.QtCore import QTimer, pyqtSlot
|
|||||||
from PyQt6.QtWidgets import (
|
from PyQt6.QtWidgets import (
|
||||||
QAbstractButton, QAbstractItemView, QDialogButtonBox, QFileDialog,
|
QAbstractButton, QAbstractItemView, QDialogButtonBox, QFileDialog,
|
||||||
QGridLayout, QHBoxLayout, QLabel, QLineEdit, QListWidget, QListWidgetItem,
|
QGridLayout, QHBoxLayout, QLabel, QLineEdit, QListWidget, QListWidgetItem,
|
||||||
QPushButton, QSplitter, QVBoxLayout, QWidget
|
QSplitter, QVBoxLayout, QWidget
|
||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import SHARED
|
from novelwriter import SHARED
|
||||||
@@ -40,10 +40,10 @@ from novelwriter.common import makeFileNameSafe, openExternalPath
|
|||||||
from novelwriter.constants import nwLabels
|
from novelwriter.constants import nwLabels
|
||||||
from novelwriter.core.docbuild import NWBuildDocument
|
from novelwriter.core.docbuild import NWBuildDocument
|
||||||
from novelwriter.core.item import NWItem
|
from novelwriter.core.item import NWItem
|
||||||
from novelwriter.enum import nwBuildFmt
|
from novelwriter.enum import nwBuildFmt, nwStandardButton
|
||||||
from novelwriter.extensions.modified import NDialog, NIconToolButton
|
from novelwriter.extensions.modified import NDialog, NIconToolButton, NPushButton
|
||||||
from novelwriter.extensions.progressbars import NProgressSimple
|
from novelwriter.extensions.progressbars import NProgressSimple
|
||||||
from novelwriter.types import QtAlignCenter, QtDialogClose, QtRoleAction, QtRoleReject, QtUserRole
|
from novelwriter.types import QtAlignCenter, QtRoleAction, QtRoleReject, QtUserRole
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from PyQt6.QtGui import QCloseEvent
|
from PyQt6.QtGui import QCloseEvent
|
||||||
@@ -178,25 +178,19 @@ class GuiManuscriptBuild(NDialog):
|
|||||||
self.buildBox.setVerticalSpacing(4)
|
self.buildBox.setVerticalSpacing(4)
|
||||||
|
|
||||||
# Dialog Buttons
|
# Dialog Buttons
|
||||||
self.buttonBox = QDialogButtonBox(self)
|
self.btnOpen = NPushButton(self, self.tr("Open Folder"), bSz, "browse", "yellow")
|
||||||
|
|
||||||
self.btnOpen = QPushButton(
|
|
||||||
SHARED.theme.getIcon("browse", "yellow"), self.tr("Open Folder"), self
|
|
||||||
)
|
|
||||||
self.btnOpen.setIconSize(bSz)
|
|
||||||
self.btnOpen.setAutoDefault(False)
|
self.btnOpen.setAutoDefault(False)
|
||||||
self.buttonBox.addButton(self.btnOpen, QtRoleAction)
|
|
||||||
|
|
||||||
self.btnBuild = QPushButton(
|
self.btnBuild = SHARED.theme.getStandardButton(nwStandardButton.BUILD, self)
|
||||||
SHARED.theme.getIcon("sb_build", "blue"), self.tr("&Build"), self
|
|
||||||
)
|
|
||||||
self.btnBuild.setIconSize(bSz)
|
|
||||||
self.btnBuild.setAutoDefault(True)
|
self.btnBuild.setAutoDefault(True)
|
||||||
self.buttonBox.addButton(self.btnBuild, QtRoleAction)
|
|
||||||
|
|
||||||
self.btnClose = self.buttonBox.addButton(QtDialogClose)
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
if self.btnClose:
|
self.btnClose.setAutoDefault(False)
|
||||||
self.btnClose.setAutoDefault(False)
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnOpen, QtRoleAction)
|
||||||
|
self.btnBox.addButton(self.btnBuild, QtRoleAction)
|
||||||
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
|
||||||
# Assemble GUI
|
# Assemble GUI
|
||||||
# ============
|
# ============
|
||||||
@@ -223,7 +217,7 @@ class GuiManuscriptBuild(NDialog):
|
|||||||
self.outerBox.addSpacing(4)
|
self.outerBox.addSpacing(4)
|
||||||
self.outerBox.addLayout(self.buildBox, 0)
|
self.outerBox.addLayout(self.buildBox, 0)
|
||||||
self.outerBox.addSpacing(16)
|
self.outerBox.addSpacing(16)
|
||||||
self.outerBox.addWidget(self.buttonBox, 0)
|
self.outerBox.addWidget(self.btnBox, 0)
|
||||||
self.outerBox.setSpacing(0)
|
self.outerBox.setSpacing(0)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
@@ -239,7 +233,7 @@ class GuiManuscriptBuild(NDialog):
|
|||||||
# Signals
|
# Signals
|
||||||
self.btnReset.clicked.connect(self._doResetBuildName)
|
self.btnReset.clicked.connect(self._doResetBuildName)
|
||||||
self.btnBrowse.clicked.connect(self._doSelectPath)
|
self.btnBrowse.clicked.connect(self._doSelectPath)
|
||||||
self.buttonBox.clicked.connect(self._dialogButtonClicked)
|
self.btnBox.clicked.connect(self._dialogButtonClicked)
|
||||||
self.listFormats.itemSelectionChanged.connect(self._resetProgress)
|
self.listFormats.itemSelectionChanged.connect(self._resetProgress)
|
||||||
|
|
||||||
logger.debug("Ready: GuiManuscriptBuild")
|
logger.debug("Ready: GuiManuscriptBuild")
|
||||||
@@ -266,7 +260,7 @@ class GuiManuscriptBuild(NDialog):
|
|||||||
@pyqtSlot("QAbstractButton*")
|
@pyqtSlot("QAbstractButton*")
|
||||||
def _dialogButtonClicked(self, button: QAbstractButton) -> None:
|
def _dialogButtonClicked(self, button: QAbstractButton) -> None:
|
||||||
"""Handle button clicks from the dialog button box."""
|
"""Handle button clicks from the dialog button box."""
|
||||||
role = self.buttonBox.buttonRole(button)
|
role = self.btnBox.buttonRole(button)
|
||||||
if role == QtRoleAction:
|
if role == QtRoleAction:
|
||||||
if button == self.btnBuild:
|
if button == self.btnBuild:
|
||||||
self._runBuild()
|
self._runBuild()
|
||||||
|
|||||||
@@ -36,9 +36,9 @@ from PyQt6.QtGui import (
|
|||||||
from PyQt6.QtPrintSupport import QPrinter, QPrintPreviewDialog
|
from PyQt6.QtPrintSupport import QPrinter, QPrintPreviewDialog
|
||||||
from PyQt6.QtWidgets import (
|
from PyQt6.QtWidgets import (
|
||||||
QAbstractItemView, QApplication, QFormLayout, QGridLayout, QHBoxLayout,
|
QAbstractItemView, QApplication, QFormLayout, QGridLayout, QHBoxLayout,
|
||||||
QLabel, QListWidget, QListWidgetItem, QPushButton, QSplitter,
|
QLabel, QListWidget, QListWidgetItem, QSplitter, QStackedWidget,
|
||||||
QStackedWidget, QTabWidget, QTextBrowser, QTreeWidget, QTreeWidgetItem,
|
QTabWidget, QTextBrowser, QTreeWidget, QTreeWidgetItem, QVBoxLayout,
|
||||||
QVBoxLayout, QWidget
|
QWidget
|
||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
@@ -46,6 +46,7 @@ from novelwriter.common import fuzzyTime, qtLambda
|
|||||||
from novelwriter.constants import nwHeadFmt, nwLabels, nwStats, nwUnicode, trStats
|
from novelwriter.constants import nwHeadFmt, nwLabels, nwStats, nwUnicode, trStats
|
||||||
from novelwriter.core.buildsettings import BuildCollection, BuildSettings
|
from novelwriter.core.buildsettings import BuildCollection, BuildSettings
|
||||||
from novelwriter.core.docbuild import NWBuildDocument
|
from novelwriter.core.docbuild import NWBuildDocument
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.modified import NIconToggleButton, NIconToolButton, NToolDialog
|
from novelwriter.extensions.modified import NIconToggleButton, NIconToolButton, NToolDialog
|
||||||
from novelwriter.extensions.progressbars import NProgressCircle
|
from novelwriter.extensions.progressbars import NProgressCircle
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
@@ -171,16 +172,16 @@ class GuiManuscript(NToolDialog):
|
|||||||
# Process Controls
|
# Process Controls
|
||||||
# ================
|
# ================
|
||||||
|
|
||||||
self.btnPreview = QPushButton(self.tr("Preview"), self)
|
self.btnPreview = SHARED.theme.getStandardButton(nwStandardButton.PREVIEW, self)
|
||||||
self.btnPreview.clicked.connect(self._generatePreview)
|
self.btnPreview.clicked.connect(self._generatePreview)
|
||||||
|
|
||||||
self.btnPrint = QPushButton(self.tr("Print"), self)
|
self.btnPrint = SHARED.theme.getStandardButton(nwStandardButton.PRINT, self)
|
||||||
self.btnPrint.clicked.connect(self._printDocument)
|
self.btnPrint.clicked.connect(self._printDocument)
|
||||||
|
|
||||||
self.btnBuild = QPushButton(self.tr("Build"), self)
|
self.btnBuild = SHARED.theme.getStandardButton(nwStandardButton.BUILD, self)
|
||||||
self.btnBuild.clicked.connect(self._buildManuscript)
|
self.btnBuild.clicked.connect(self._buildManuscript)
|
||||||
|
|
||||||
self.btnClose = QPushButton(self.tr("Close"), self)
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
self.btnClose.clicked.connect(qtLambda(self.close))
|
self.btnClose.clicked.connect(qtLambda(self.close))
|
||||||
|
|
||||||
self.processBox = QGridLayout()
|
self.processBox = QGridLayout()
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ from novelwriter import CONFIG, SHARED
|
|||||||
from novelwriter.common import describeFont, fontMatcher, qtAddAction, qtLambda
|
from novelwriter.common import describeFont, fontMatcher, qtAddAction, qtLambda
|
||||||
from novelwriter.constants import nwHeadFmt, nwKeyWords, nwLabels, nwUnicode, trConst
|
from novelwriter.constants import nwHeadFmt, nwKeyWords, nwLabels, nwUnicode, trConst
|
||||||
from novelwriter.core.buildsettings import BuildSettings, FilterMode
|
from novelwriter.core.buildsettings import BuildSettings, FilterMode
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import (
|
from novelwriter.extensions.configlayout import (
|
||||||
NColorLabel, NFixedPage, NScrollableForm, NScrollablePage
|
NColorLabel, NFixedPage, NScrollableForm, NScrollablePage
|
||||||
)
|
)
|
||||||
@@ -50,9 +51,8 @@ from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
|||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.extensions.switchbox import NSwitchBox
|
from novelwriter.extensions.switchbox import NSwitchBox
|
||||||
from novelwriter.types import (
|
from novelwriter.types import (
|
||||||
QtAlignCenter, QtAlignLeft, QtDialogApply, QtDialogClose, QtDialogSave,
|
QtAlignCenter, QtAlignLeft, QtHeaderFixed, QtHeaderStretch, QtRoleAccept,
|
||||||
QtHeaderFixed, QtHeaderStretch, QtRoleAccept, QtRoleApply, QtRoleReject,
|
QtRoleApply, QtRoleReject, QtUserRole
|
||||||
QtUserRole
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
@@ -125,8 +125,15 @@ class GuiBuildSettings(NToolDialog):
|
|||||||
self.toolStack.addWidget(self.optTabFormatting)
|
self.toolStack.addWidget(self.optTabFormatting)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogApply | QtDialogSave | QtDialogClose, self)
|
self.btnApply = SHARED.theme.getStandardButton(nwStandardButton.APPLY, self)
|
||||||
self.buttonBox.clicked.connect(self._dialogButtonClicked)
|
self.btnSave = SHARED.theme.getStandardButton(nwStandardButton.SAVE, self)
|
||||||
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnApply, QtRoleApply)
|
||||||
|
self.btnBox.addButton(self.btnSave, QtRoleAccept)
|
||||||
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
self.btnBox.clicked.connect(self._dialogButtonClicked)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.topBox = QHBoxLayout()
|
self.topBox = QHBoxLayout()
|
||||||
@@ -143,7 +150,7 @@ class GuiBuildSettings(NToolDialog):
|
|||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
self.outerBox.addLayout(self.topBox)
|
self.outerBox.addLayout(self.topBox)
|
||||||
self.outerBox.addLayout(self.mainBox)
|
self.outerBox.addLayout(self.mainBox)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.outerBox.setSpacing(12)
|
self.outerBox.setSpacing(12)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
@@ -205,7 +212,7 @@ class GuiBuildSettings(NToolDialog):
|
|||||||
@pyqtSlot("QAbstractButton*")
|
@pyqtSlot("QAbstractButton*")
|
||||||
def _dialogButtonClicked(self, button: QAbstractButton) -> None:
|
def _dialogButtonClicked(self, button: QAbstractButton) -> None:
|
||||||
"""Handle button clicks from the dialog button box."""
|
"""Handle button clicks from the dialog button box."""
|
||||||
role = self.buttonBox.buttonRole(button)
|
role = self.btnBox.buttonRole(button)
|
||||||
if role == QtRoleApply:
|
if role == QtRoleApply:
|
||||||
self._applyChanges()
|
self._applyChanges()
|
||||||
self._emitBuildData()
|
self._emitBuildData()
|
||||||
|
|||||||
@@ -38,12 +38,13 @@ from PyQt6.QtWidgets import (
|
|||||||
from novelwriter import SHARED
|
from novelwriter import SHARED
|
||||||
from novelwriter.common import formatTime, numberToRoman
|
from novelwriter.common import formatTime, numberToRoman
|
||||||
from novelwriter.constants import nwUnicode
|
from novelwriter.constants import nwUnicode
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NColorLabel, NFixedPage, NScrollablePage
|
from novelwriter.extensions.configlayout import NColorLabel, NFixedPage, NScrollablePage
|
||||||
from novelwriter.extensions.modified import NNonBlockingDialog
|
from novelwriter.extensions.modified import NNonBlockingDialog
|
||||||
from novelwriter.extensions.novelselector import NovelSelector
|
from novelwriter.extensions.novelselector import NovelSelector
|
||||||
from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
from novelwriter.extensions.pagedsidebar import NPagedSideBar
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import QtAlignRight, QtDecoration, QtDialogClose
|
from novelwriter.types import QtAlignRight, QtDecoration, QtRoleReject
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from PyQt6.QtGui import QCloseEvent
|
from PyQt6.QtGui import QCloseEvent
|
||||||
@@ -102,8 +103,11 @@ class GuiNovelDetails(NNonBlockingDialog):
|
|||||||
self.mainStack.addWidget(self.contentsPage)
|
self.mainStack.addWidget(self.contentsPage)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
self.buttonBox = QDialogButtonBox(QtDialogClose, self)
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
self.buttonBox.rejected.connect(self.reject)
|
self.btnClose.clicked.connect(self.reject)
|
||||||
|
|
||||||
|
self.btnBox = QDialogButtonBox(self)
|
||||||
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.topBox = QHBoxLayout()
|
self.topBox = QHBoxLayout()
|
||||||
@@ -119,7 +123,7 @@ class GuiNovelDetails(NNonBlockingDialog):
|
|||||||
self.outerBox = QVBoxLayout()
|
self.outerBox = QVBoxLayout()
|
||||||
self.outerBox.addLayout(self.topBox)
|
self.outerBox.addLayout(self.topBox)
|
||||||
self.outerBox.addLayout(self.mainBox)
|
self.outerBox.addLayout(self.mainBox)
|
||||||
self.outerBox.addWidget(self.buttonBox)
|
self.outerBox.addWidget(self.btnBox)
|
||||||
self.outerBox.setSpacing(8)
|
self.outerBox.setSpacing(8)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|||||||
@@ -35,15 +35,15 @@ from PyQt6.QtCore import (
|
|||||||
from PyQt6.QtGui import QAction, QCloseEvent, QFont, QPainter, QPaintEvent, QPen, QShortcut
|
from PyQt6.QtGui import QAction, QCloseEvent, QFont, QPainter, QPaintEvent, QPen, QShortcut
|
||||||
from PyQt6.QtWidgets import (
|
from PyQt6.QtWidgets import (
|
||||||
QApplication, QFileDialog, QFormLayout, QHBoxLayout, QLabel, QLineEdit,
|
QApplication, QFileDialog, QFormLayout, QHBoxLayout, QLabel, QLineEdit,
|
||||||
QListView, QMenu, QPushButton, QScrollArea, QStackedWidget,
|
QListView, QMenu, QScrollArea, QStackedWidget, QStyledItemDelegate,
|
||||||
QStyledItemDelegate, QStyleOptionViewItem, QVBoxLayout, QWidget
|
QStyleOptionViewItem, QVBoxLayout, QWidget
|
||||||
)
|
)
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import formatInt, makeFileNameSafe, qtAddAction, qtLambda
|
from novelwriter.common import formatInt, makeFileNameSafe, qtAddAction, qtLambda
|
||||||
from novelwriter.constants import nwFiles
|
from novelwriter.constants import nwFiles
|
||||||
from novelwriter.core.coretools import ProjectBuilder
|
from novelwriter.core.coretools import ProjectBuilder
|
||||||
from novelwriter.enum import nwItemClass
|
from novelwriter.enum import nwItemClass, nwStandardButton
|
||||||
from novelwriter.extensions.configlayout import NWrappedWidgetBox
|
from novelwriter.extensions.configlayout import NWrappedWidgetBox
|
||||||
from novelwriter.extensions.modified import NDialog, NIconToolButton, NSpinBox
|
from novelwriter.extensions.modified import NDialog, NIconToolButton, NSpinBox
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
@@ -75,8 +75,6 @@ class GuiWelcome(NDialog):
|
|||||||
self.setMinimumHeight(450)
|
self.setMinimumHeight(450)
|
||||||
self.resize(*CONFIG.welcomeWinSize)
|
self.resize(*CONFIG.welcomeWinSize)
|
||||||
|
|
||||||
btnIconSize = SHARED.theme.buttonIconSize
|
|
||||||
|
|
||||||
# Elements
|
# Elements
|
||||||
# ========
|
# ========
|
||||||
|
|
||||||
@@ -104,34 +102,22 @@ class GuiWelcome(NDialog):
|
|||||||
# Buttons
|
# Buttons
|
||||||
# =======
|
# =======
|
||||||
|
|
||||||
self.btnList = QPushButton(self.tr("List"), self)
|
self.btnList = SHARED.theme.getStandardButton(nwStandardButton.LIST, self)
|
||||||
self.btnList.setIcon(SHARED.theme.getIcon("list", "blue"))
|
|
||||||
self.btnList.setIconSize(btnIconSize)
|
|
||||||
self.btnList.clicked.connect(self._showOpenProjectPage)
|
self.btnList.clicked.connect(self._showOpenProjectPage)
|
||||||
|
|
||||||
self.btnNew = QPushButton(self.tr("New"), self)
|
self.btnNew = SHARED.theme.getStandardButton(nwStandardButton.NEW, self)
|
||||||
self.btnNew.setIcon(SHARED.theme.getIcon("add", "green"))
|
|
||||||
self.btnNew.setIconSize(btnIconSize)
|
|
||||||
self.btnNew.clicked.connect(self._showNewProjectPage)
|
self.btnNew.clicked.connect(self._showNewProjectPage)
|
||||||
|
|
||||||
self.btnBrowse = QPushButton(self.tr("Browse"), self)
|
self.btnBrowse = SHARED.theme.getStandardButton(nwStandardButton.BROWSE, self)
|
||||||
self.btnBrowse.setIcon(SHARED.theme.getIcon("browse", "yellow"))
|
|
||||||
self.btnBrowse.setIconSize(btnIconSize)
|
|
||||||
self.btnBrowse.clicked.connect(self._browseForProject)
|
self.btnBrowse.clicked.connect(self._browseForProject)
|
||||||
|
|
||||||
self.btnCancel = QPushButton(self.tr("Cancel"), self)
|
self.btnCancel = SHARED.theme.getStandardButton(nwStandardButton.CANCEL, self)
|
||||||
self.btnCancel.setIcon(SHARED.theme.getIcon("cancel", "red"))
|
|
||||||
self.btnCancel.setIconSize(btnIconSize)
|
|
||||||
self.btnCancel.clicked.connect(qtLambda(self.close))
|
self.btnCancel.clicked.connect(qtLambda(self.close))
|
||||||
|
|
||||||
self.btnCreate = QPushButton(self.tr("Create"), self)
|
self.btnCreate = SHARED.theme.getStandardButton(nwStandardButton.CREATE, self)
|
||||||
self.btnCreate.setIcon(SHARED.theme.getIcon("star", "yellow"))
|
|
||||||
self.btnCreate.setIconSize(btnIconSize)
|
|
||||||
self.btnCreate.clicked.connect(self.tabNew.createNewProject)
|
self.btnCreate.clicked.connect(self.tabNew.createNewProject)
|
||||||
|
|
||||||
self.btnOpen = QPushButton(self.tr("Open"), self)
|
self.btnOpen = SHARED.theme.getStandardButton(nwStandardButton.OPEN, self)
|
||||||
self.btnOpen.setIcon(SHARED.theme.getIcon("open", "blue"))
|
|
||||||
self.btnOpen.setIconSize(btnIconSize)
|
|
||||||
self.btnOpen.clicked.connect(self._openSelectedItem)
|
self.btnOpen.clicked.connect(self._openSelectedItem)
|
||||||
|
|
||||||
self.btnBox = QHBoxLayout()
|
self.btnBox = QHBoxLayout()
|
||||||
|
|||||||
@@ -39,12 +39,13 @@ from PyQt6.QtWidgets import (
|
|||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.common import checkInt, checkIntTuple, formatTime, minmax, qtLambda
|
from novelwriter.common import checkInt, checkIntTuple, formatTime, minmax, qtLambda
|
||||||
from novelwriter.constants import nwConst
|
from novelwriter.constants import nwConst
|
||||||
|
from novelwriter.enum import nwStandardButton
|
||||||
from novelwriter.error import formatException
|
from novelwriter.error import formatException
|
||||||
from novelwriter.extensions.modified import NToolDialog
|
from novelwriter.extensions.modified import NPushButton, NToolDialog
|
||||||
from novelwriter.extensions.switch import NSwitch
|
from novelwriter.extensions.switch import NSwitch
|
||||||
from novelwriter.types import (
|
from novelwriter.types import (
|
||||||
QtAlignLeftMiddle, QtAlignRight, QtAlignRightMiddle, QtDecoration,
|
QtAlignLeftMiddle, QtAlignRight, QtAlignRightMiddle, QtDecoration,
|
||||||
QtDialogClose, QtRoleAction
|
QtRoleAction, QtRoleReject
|
||||||
)
|
)
|
||||||
|
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
@@ -182,6 +183,7 @@ class GuiWritingStats(NToolDialog):
|
|||||||
|
|
||||||
# Filter Options
|
# Filter Options
|
||||||
iPx = SHARED.theme.baseIconHeight
|
iPx = SHARED.theme.baseIconHeight
|
||||||
|
bSz = SHARED.theme.buttonIconSize
|
||||||
|
|
||||||
self.filterForm = QGridLayout(self)
|
self.filterForm = QGridLayout(self)
|
||||||
self.filterForm.setRowStretch(6, 1)
|
self.filterForm.setRowStretch(6, 1)
|
||||||
@@ -276,6 +278,10 @@ class GuiWritingStats(NToolDialog):
|
|||||||
self.optsBox.addWidget(self.histMax, 0)
|
self.optsBox.addWidget(self.histMax, 0)
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
|
self.btnClose = SHARED.theme.getStandardButton(nwStandardButton.CLOSE, self)
|
||||||
|
self.btnClose.clicked.connect(self._doClose)
|
||||||
|
self.btnClose.setAutoDefault(False)
|
||||||
|
|
||||||
self.saveJSON = QAction(self.tr("JSON Data File (.json)"), self)
|
self.saveJSON = QAction(self.tr("JSON Data File (.json)"), self)
|
||||||
self.saveJSON.triggered.connect(qtLambda(self._saveData, self.FMT_JSON))
|
self.saveJSON.triggered.connect(qtLambda(self._saveData, self.FMT_JSON))
|
||||||
|
|
||||||
@@ -286,17 +292,13 @@ class GuiWritingStats(NToolDialog):
|
|||||||
self.saveMenu.addAction(self.saveJSON)
|
self.saveMenu.addAction(self.saveJSON)
|
||||||
self.saveMenu.addAction(self.saveCSV)
|
self.saveMenu.addAction(self.saveCSV)
|
||||||
|
|
||||||
self.buttonBox = QDialogButtonBox(self)
|
self.btnSave = NPushButton(self, self.tr("Save As"), bSz, "btn_save", "blue")
|
||||||
self.buttonBox.rejected.connect(self._doClose)
|
self.btnSave.setAutoDefault(False)
|
||||||
|
self.btnSave.setMenu(self.saveMenu)
|
||||||
|
|
||||||
self.btnClose = self.buttonBox.addButton(QtDialogClose)
|
self.btnBox = QDialogButtonBox(self)
|
||||||
if self.btnClose:
|
self.btnBox.addButton(self.btnSave, QtRoleAction)
|
||||||
self.btnClose.setAutoDefault(False)
|
self.btnBox.addButton(self.btnClose, QtRoleReject)
|
||||||
|
|
||||||
self.btnSave = self.buttonBox.addButton(self.tr("Save As"), QtRoleAction)
|
|
||||||
if self.btnSave:
|
|
||||||
self.btnSave.setAutoDefault(False)
|
|
||||||
self.btnSave.setMenu(self.saveMenu)
|
|
||||||
|
|
||||||
# Assemble
|
# Assemble
|
||||||
self.outerBox = QGridLayout()
|
self.outerBox = QGridLayout()
|
||||||
@@ -304,7 +306,7 @@ class GuiWritingStats(NToolDialog):
|
|||||||
self.outerBox.addLayout(self.optsBox, 1, 0, 1, 2)
|
self.outerBox.addLayout(self.optsBox, 1, 0, 1, 2)
|
||||||
self.outerBox.addWidget(self.infoBox, 2, 0)
|
self.outerBox.addWidget(self.infoBox, 2, 0)
|
||||||
self.outerBox.addWidget(self.filterBox, 2, 1)
|
self.outerBox.addWidget(self.filterBox, 2, 1)
|
||||||
self.outerBox.addWidget(self.buttonBox, 3, 0, 1, 2)
|
self.outerBox.addWidget(self.btnBox, 3, 0, 1, 2)
|
||||||
self.outerBox.setRowStretch(0, 1)
|
self.outerBox.setRowStretch(0, 1)
|
||||||
|
|
||||||
self.setLayout(self.outerBox)
|
self.setLayout(self.outerBox)
|
||||||
|
|||||||
@@ -93,17 +93,11 @@ QtMouseMiddle = Qt.MouseButton.MiddleButton
|
|||||||
QtAccepted = QDialog.DialogCode.Accepted
|
QtAccepted = QDialog.DialogCode.Accepted
|
||||||
QtRejected = QDialog.DialogCode.Rejected
|
QtRejected = QDialog.DialogCode.Rejected
|
||||||
|
|
||||||
QtDialogApply = QDialogButtonBox.StandardButton.Apply
|
|
||||||
QtDialogCancel = QDialogButtonBox.StandardButton.Cancel
|
|
||||||
QtDialogClose = QDialogButtonBox.StandardButton.Close
|
|
||||||
QtDialogOk = QDialogButtonBox.StandardButton.Ok
|
|
||||||
QtDialogReset = QDialogButtonBox.StandardButton.Reset
|
|
||||||
QtDialogSave = QDialogButtonBox.StandardButton.Save
|
|
||||||
|
|
||||||
QtRoleAccept = QDialogButtonBox.ButtonRole.AcceptRole
|
QtRoleAccept = QDialogButtonBox.ButtonRole.AcceptRole
|
||||||
QtRoleAction = QDialogButtonBox.ButtonRole.ActionRole
|
QtRoleAction = QDialogButtonBox.ButtonRole.ActionRole
|
||||||
QtRoleApply = QDialogButtonBox.ButtonRole.ApplyRole
|
QtRoleApply = QDialogButtonBox.ButtonRole.ApplyRole
|
||||||
QtRoleReject = QDialogButtonBox.ButtonRole.RejectRole
|
QtRoleReject = QDialogButtonBox.ButtonRole.RejectRole
|
||||||
|
QtRoleReset = QDialogButtonBox.ButtonRole.ResetRole
|
||||||
|
|
||||||
# Cursor Types
|
# Cursor Types
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -25,7 +25,10 @@ if __name__ == "__main__":
|
|||||||
env["QT_SCALE_FACTOR"] = "1.0"
|
env["QT_SCALE_FACTOR"] = "1.0"
|
||||||
|
|
||||||
if args.r or args.t or args.u:
|
if args.r or args.t or args.u:
|
||||||
cmd = ["coverage", "run", "-m"]
|
cmd = ["coverage", "run"]
|
||||||
|
if args.lf or args.sw:
|
||||||
|
cmd += ["--append"]
|
||||||
|
cmd += ["-m"]
|
||||||
else:
|
else:
|
||||||
cmd = [sys.executable, "-m"]
|
cmd = [sys.executable, "-m"]
|
||||||
|
|
||||||
|
|||||||
+6
-2
@@ -157,9 +157,11 @@ def projPath(fncPath):
|
|||||||
def mockGUI(qtbot, monkeypatch):
|
def mockGUI(qtbot, monkeypatch):
|
||||||
"""Create a mock instance of novelWriter's main GUI class."""
|
"""Create a mock instance of novelWriter's main GUI class."""
|
||||||
from novelwriter.gui.theme import GuiTheme
|
from novelwriter.gui.theme import GuiTheme
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
|
|
||||||
monkeypatch.setattr(QMessageBox, "exec", lambda *a: None)
|
monkeypatch.setattr(QMessageBox, "exec", lambda *a: None)
|
||||||
monkeypatch.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.Yes)
|
monkeypatch.setattr(_GuiAlert, "exec", lambda *a: None)
|
||||||
|
monkeypatch.setattr(_GuiAlert, "finalState", True)
|
||||||
gui = MockGuiMain()
|
gui = MockGuiMain()
|
||||||
theme = GuiTheme()
|
theme = GuiTheme()
|
||||||
monkeypatch.setattr(SHARED, "_gui", gui)
|
monkeypatch.setattr(SHARED, "_gui", gui)
|
||||||
@@ -182,9 +184,11 @@ def nwGUI(qtbot, monkeypatch, functionFixture):
|
|||||||
"""Create an instance of the novelWriter GUI."""
|
"""Create an instance of the novelWriter GUI."""
|
||||||
from novelwriter.gui.theme import GuiTheme
|
from novelwriter.gui.theme import GuiTheme
|
||||||
from novelwriter.guimain import GuiMain
|
from novelwriter.guimain import GuiMain
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
|
|
||||||
monkeypatch.setattr(QMessageBox, "exec", lambda *a: None)
|
monkeypatch.setattr(QMessageBox, "exec", lambda *a: None)
|
||||||
monkeypatch.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.Yes)
|
monkeypatch.setattr(_GuiAlert, "exec", lambda *a: None)
|
||||||
|
monkeypatch.setattr(_GuiAlert, "finalState", True)
|
||||||
|
|
||||||
CONFIG.loadConfig()
|
CONFIG.loadConfig()
|
||||||
SHARED.initTheme(GuiTheme())
|
SHARED.initTheme(GuiTheme())
|
||||||
|
|||||||
@@ -60,6 +60,24 @@
|
|||||||
"theme_dark",
|
"theme_dark",
|
||||||
"theme_auto",
|
"theme_auto",
|
||||||
|
|
||||||
|
"btn_ok",
|
||||||
|
"btn_cancel",
|
||||||
|
"btn_yes",
|
||||||
|
"btn_no",
|
||||||
|
"btn_open",
|
||||||
|
"btn_close",
|
||||||
|
"btn_save",
|
||||||
|
"btn_browse",
|
||||||
|
"btn_list",
|
||||||
|
"btn_new",
|
||||||
|
"btn_create",
|
||||||
|
"btn_reset",
|
||||||
|
"btn_insert",
|
||||||
|
"btn_apply",
|
||||||
|
"btn_build",
|
||||||
|
"btn_print",
|
||||||
|
"btn_preview",
|
||||||
|
|
||||||
"add",
|
"add",
|
||||||
"bookmarks",
|
"bookmarks",
|
||||||
"browse",
|
"browse",
|
||||||
@@ -95,7 +113,6 @@
|
|||||||
"more_arrow",
|
"more_arrow",
|
||||||
"more_vertical",
|
"more_vertical",
|
||||||
"noncheckable",
|
"noncheckable",
|
||||||
"open",
|
|
||||||
"panel",
|
"panel",
|
||||||
"pin",
|
"pin",
|
||||||
"project_copy",
|
"project_copy",
|
||||||
@@ -104,7 +121,6 @@
|
|||||||
"remove",
|
"remove",
|
||||||
"revert",
|
"revert",
|
||||||
"settings",
|
"settings",
|
||||||
"star",
|
|
||||||
"stats",
|
"stats",
|
||||||
"text",
|
"text",
|
||||||
"timer_off",
|
"timer_off",
|
||||||
|
|||||||
@@ -22,9 +22,12 @@ from __future__ import annotations
|
|||||||
|
|
||||||
from unittest.mock import MagicMock
|
from unittest.mock import MagicMock
|
||||||
|
|
||||||
|
from PyQt6.QtCore import QSize
|
||||||
from PyQt6.QtGui import QFont, QIcon, QPixmap
|
from PyQt6.QtGui import QFont, QIcon, QPixmap
|
||||||
from PyQt6.QtWidgets import QWidget
|
from PyQt6.QtWidgets import QWidget
|
||||||
|
|
||||||
|
from novelwriter.extensions.modified import NPushButton
|
||||||
|
|
||||||
|
|
||||||
class MockGuiMain(QWidget):
|
class MockGuiMain(QWidget):
|
||||||
|
|
||||||
@@ -72,6 +75,9 @@ class MockTheme:
|
|||||||
def getHeaderDecoration(self, *a) -> QPixmap:
|
def getHeaderDecoration(self, *a) -> QPixmap:
|
||||||
return QPixmap()
|
return QPixmap()
|
||||||
|
|
||||||
|
def getStandardButton(self, *a) -> NPushButton:
|
||||||
|
return NPushButton(None, "", QSize(1, 1)) # type: ignore
|
||||||
|
|
||||||
def getIcon(self, *a) -> QIcon:
|
def getIcon(self, *a) -> QIcon:
|
||||||
return QIcon()
|
return QIcon()
|
||||||
|
|
||||||
|
|||||||
@@ -20,16 +20,18 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|||||||
""" # noqa
|
""" # noqa
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import sys
|
||||||
|
|
||||||
from unittest.mock import MagicMock
|
from unittest.mock import MagicMock
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
from PyQt6.QtCore import QUrl
|
from PyQt6.QtCore import QUrl
|
||||||
from PyQt6.QtGui import QDesktopServices
|
from PyQt6.QtGui import QDesktopServices
|
||||||
from PyQt6.QtWidgets import QFileDialog, QMessageBox, QWidget
|
from PyQt6.QtWidgets import QFileDialog, QWidget
|
||||||
|
|
||||||
from novelwriter.core.project import NWProject
|
from novelwriter.core.project import NWProject
|
||||||
from novelwriter.shared import SharedData
|
from novelwriter.shared import SharedData, _GuiAlert
|
||||||
|
|
||||||
from tests.mocked import MockGuiMain, MockTheme
|
from tests.mocked import MockGuiMain, MockTheme
|
||||||
from tests.tools import buildTestProject
|
from tests.tools import buildTestProject
|
||||||
@@ -143,10 +145,10 @@ def testBaseSharedData_Projects(monkeypatch, caplog, fncPath):
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.base
|
@pytest.mark.base
|
||||||
def testBaseSharedData_Alerts(qtbot, monkeypatch, caplog):
|
def testBaseSharedData_Alerts(qtbot, monkeypatch, caplog, mockGUI):
|
||||||
"""Test SharedData class alert helper functions."""
|
"""Test SharedData class alert helper functions."""
|
||||||
monkeypatch.setattr(QMessageBox, "exec", lambda *a: None)
|
monkeypatch.setattr(_GuiAlert, "exec", lambda *a: None)
|
||||||
monkeypatch.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.Yes)
|
monkeypatch.setattr(_GuiAlert, "finalState", True)
|
||||||
|
|
||||||
shared = SharedData()
|
shared = SharedData()
|
||||||
|
|
||||||
@@ -188,3 +190,67 @@ def testBaseSharedData_Alerts(qtbot, monkeypatch, caplog):
|
|||||||
# Question box
|
# Question box
|
||||||
assert shared.question("Why?") is True
|
assert shared.question("Why?") is True
|
||||||
assert shared.lastAlert == "Why?"
|
assert shared.lastAlert == "Why?"
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.base
|
||||||
|
def testBaseSharedData_GuiAlert():
|
||||||
|
"""Test the _GuiAlert class."""
|
||||||
|
alert = _GuiAlert(None, MockTheme()) # type: ignore
|
||||||
|
|
||||||
|
# Default states
|
||||||
|
assert alert.logMessage == ""
|
||||||
|
assert alert.finalState is False
|
||||||
|
|
||||||
|
# Populate message
|
||||||
|
text = "one"
|
||||||
|
info = "two"
|
||||||
|
details = "three"
|
||||||
|
alert.setMessage(text, info, details)
|
||||||
|
assert alert.logMessage == f"{text} {info} {details}"
|
||||||
|
assert alert.text() == text
|
||||||
|
assert alert.informativeText() == info
|
||||||
|
assert alert.detailedText() == details
|
||||||
|
|
||||||
|
# Populate exception
|
||||||
|
exc = Exception("oops")
|
||||||
|
alert.setException(exc)
|
||||||
|
assert alert.logMessage == f"{text} {info} {details}"
|
||||||
|
assert alert.informativeText() == f"{info}<br><b>Exception</b>: {exc!s}"
|
||||||
|
|
||||||
|
# Alert: Info
|
||||||
|
alert.setAlertType(_GuiAlert.INFO, False)
|
||||||
|
assert hasattr(alert, "_btnOk")
|
||||||
|
if sys.platform != "darwin": # Not set on MacOS
|
||||||
|
assert alert.windowTitle() == "Information"
|
||||||
|
alert._btnOk.click()
|
||||||
|
assert alert.finalState is True
|
||||||
|
alert._state = False
|
||||||
|
|
||||||
|
# Alert: Warning
|
||||||
|
alert.setAlertType(_GuiAlert.WARN, False)
|
||||||
|
assert hasattr(alert, "_btnOk")
|
||||||
|
if sys.platform != "darwin": # Not set on MacOS
|
||||||
|
assert alert.windowTitle() == "Warning"
|
||||||
|
alert._btnOk.click()
|
||||||
|
assert alert.finalState is True
|
||||||
|
alert._state = False
|
||||||
|
|
||||||
|
# Alert: Error
|
||||||
|
alert.setAlertType(_GuiAlert.ERROR, False)
|
||||||
|
assert hasattr(alert, "_btnOk")
|
||||||
|
if sys.platform != "darwin": # Not set on MacOS
|
||||||
|
assert alert.windowTitle() == "Error"
|
||||||
|
alert._btnOk.click()
|
||||||
|
assert alert.finalState is True
|
||||||
|
alert._state = False
|
||||||
|
|
||||||
|
# Alert: Question
|
||||||
|
alert.setAlertType(_GuiAlert.ASK, True)
|
||||||
|
assert hasattr(alert, "_btnYes")
|
||||||
|
assert hasattr(alert, "_btnNo")
|
||||||
|
if sys.platform != "darwin": # Not set on MacOS
|
||||||
|
assert alert.windowTitle() == "Question"
|
||||||
|
alert._btnYes.click()
|
||||||
|
assert alert.finalState is True
|
||||||
|
alert._btnNo.click()
|
||||||
|
assert alert.finalState is False
|
||||||
|
|||||||
@@ -25,13 +25,12 @@ from zipfile import ZipFile
|
|||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
from PyQt6.QtWidgets import QMessageBox
|
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.constants import nwFiles
|
from novelwriter.constants import nwFiles
|
||||||
from novelwriter.core.project import NWProject, NWProjectState
|
from novelwriter.core.project import NWProject, NWProjectState
|
||||||
from novelwriter.core.projectxml import ProjectXMLReader, ProjectXMLWriter, XMLReadState
|
from novelwriter.core.projectxml import ProjectXMLReader, ProjectXMLWriter, XMLReadState
|
||||||
from novelwriter.enum import nwItemClass
|
from novelwriter.enum import nwItemClass
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
|
|
||||||
from tests.mocked import causeOSError
|
from tests.mocked import causeOSError
|
||||||
from tests.tools import XML_IGNORE, C, buildTestProject, cmpFiles
|
from tests.tools import XML_IGNORE, C, buildTestProject, cmpFiles
|
||||||
@@ -274,14 +273,14 @@ def testCoreProject_Open(monkeypatch, caplog, mockGUI, fncPath, mockRnd):
|
|||||||
# Won't convert legacy file
|
# Won't convert legacy file
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(ProjectXMLReader, "state", property(lambda *a: XMLReadState.WAS_LEGACY))
|
mp.setattr(ProjectXMLReader, "state", property(lambda *a: XMLReadState.WAS_LEGACY))
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert project.openProject(fncPath, clearLock=True) is False
|
assert project.openProject(fncPath, clearLock=True) is False
|
||||||
assert "The file format of your project is about to be" in SHARED.lastAlert
|
assert "The file format of your project is about to be" in SHARED.lastAlert
|
||||||
|
|
||||||
# Won't open project from newer version
|
# Won't open project from newer version
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(ProjectXMLReader, "hexVersion", property(lambda *a: 0x99999999))
|
mp.setattr(ProjectXMLReader, "hexVersion", property(lambda *a: 0x99999999))
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert project.openProject(fncPath, clearLock=True) is False
|
assert project.openProject(fncPath, clearLock=True) is False
|
||||||
assert "This project was saved by a newer version" in SHARED.lastAlert
|
assert "This project was saved by a newer version" in SHARED.lastAlert
|
||||||
|
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ from novelwriter.constants import nwUnicode
|
|||||||
from novelwriter.dialogs.preferences import GuiPreferences
|
from novelwriter.dialogs.preferences import GuiPreferences
|
||||||
from novelwriter.dialogs.quotes import GuiQuoteSelect
|
from novelwriter.dialogs.quotes import GuiQuoteSelect
|
||||||
from novelwriter.gui.theme import ThemeEntry
|
from novelwriter.gui.theme import ThemeEntry
|
||||||
from novelwriter.types import QtDialogCancel, QtDialogSave, QtModNone
|
from novelwriter.types import QtModNone
|
||||||
|
|
||||||
KEY_DELAY = 1
|
KEY_DELAY = 1
|
||||||
|
|
||||||
@@ -118,16 +118,12 @@ def testDlgPreferences_Actions(qtbot, monkeypatch, nwGUI):
|
|||||||
# Check Save Button
|
# Check Save Button
|
||||||
prefs.show()
|
prefs.show()
|
||||||
with qtbot.waitSignal(prefs.newPreferencesReady) as signal:
|
with qtbot.waitSignal(prefs.newPreferencesReady) as signal:
|
||||||
button = prefs.buttonBox.button(QtDialogSave)
|
prefs.btnSave.click()
|
||||||
assert button is not None
|
|
||||||
button.click()
|
|
||||||
assert len(signal.args) == 4
|
assert len(signal.args) == 4
|
||||||
|
|
||||||
# Check Close Button
|
# Check Close Button
|
||||||
prefs.show()
|
prefs.show()
|
||||||
button = prefs.buttonBox.button(QtDialogCancel)
|
prefs.btnCancel.click()
|
||||||
assert button is not None
|
|
||||||
button.click()
|
|
||||||
assert prefs.isHidden() is True
|
assert prefs.isHidden() is True
|
||||||
|
|
||||||
# Close Using Escape Key
|
# Close Using Escape Key
|
||||||
@@ -342,9 +338,7 @@ def testDlgPreferences_Settings(qtbot, monkeypatch, nwGUI, fncPath, tstPaths):
|
|||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QFontDatabase, "families", lambda *a: ["TestFont"])
|
mp.setattr(QFontDatabase, "families", lambda *a: ["TestFont"])
|
||||||
with qtbot.waitSignal(prefs.newPreferencesReady) as signal:
|
with qtbot.waitSignal(prefs.newPreferencesReady) as signal:
|
||||||
button = prefs.buttonBox.button(QtDialogSave)
|
prefs.btnSave.click()
|
||||||
assert button is not None
|
|
||||||
button.click()
|
|
||||||
assert signal.args == [True, True, True, True]
|
assert signal.args == [True, True, True, True]
|
||||||
|
|
||||||
# Check Settings
|
# Check Settings
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ import pytest
|
|||||||
|
|
||||||
from PyQt6.QtCore import Qt
|
from PyQt6.QtCore import Qt
|
||||||
from PyQt6.QtGui import QPalette
|
from PyQt6.QtGui import QPalette
|
||||||
from PyQt6.QtWidgets import QInputDialog, QMessageBox
|
from PyQt6.QtWidgets import QInputDialog
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED, __hexversion__
|
from novelwriter import CONFIG, SHARED, __hexversion__
|
||||||
from novelwriter.common import jsonEncode
|
from novelwriter.common import jsonEncode
|
||||||
@@ -42,6 +42,7 @@ from novelwriter.gui.doceditor import GuiDocEditor
|
|||||||
from novelwriter.gui.noveltree import GuiNovelView
|
from novelwriter.gui.noveltree import GuiNovelView
|
||||||
from novelwriter.gui.outline import GuiOutlineView
|
from novelwriter.gui.outline import GuiOutlineView
|
||||||
from novelwriter.gui.projtree import GuiProjectTree
|
from novelwriter.gui.projtree import GuiProjectTree
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
from novelwriter.tools.welcome import GuiWelcome
|
from novelwriter.tools.welcome import GuiWelcome
|
||||||
from novelwriter.types import QtModCtrl, QtModShift
|
from novelwriter.types import QtModCtrl, QtModShift
|
||||||
|
|
||||||
@@ -104,7 +105,7 @@ def testGuiMain_Launch(qtbot, monkeypatch, nwGUI, projPath):
|
|||||||
|
|
||||||
# Check that closes can be blocked
|
# Check that closes can be blocked
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert nwGUI.openProject(projPath) is True
|
assert nwGUI.openProject(projPath) is True
|
||||||
assert nwGUI.closeMain() is False
|
assert nwGUI.closeMain() is False
|
||||||
nwGUI.closeProject()
|
nwGUI.closeProject()
|
||||||
@@ -841,7 +842,7 @@ def testGuiMain_OpenClose(qtbot, monkeypatch, nwGUI, projPath, fncPath, mockRnd)
|
|||||||
# Block closing
|
# Block closing
|
||||||
assert SHARED.hasProject is True
|
assert SHARED.hasProject is True
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert nwGUI.openProject(projPath) is False
|
assert nwGUI.openProject(projPath) is False
|
||||||
assert SHARED.hasProject is True
|
assert SHARED.hasProject is True
|
||||||
|
|
||||||
@@ -854,7 +855,7 @@ def testGuiMain_OpenClose(qtbot, monkeypatch, nwGUI, projPath, fncPath, mockRnd)
|
|||||||
shutil.copyfile(lockBack, lockPath)
|
shutil.copyfile(lockBack, lockPath)
|
||||||
|
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert nwGUI.openProject(projPath) is False
|
assert nwGUI.openProject(projPath) is False
|
||||||
|
|
||||||
assert nwGUI.openProject(projPath) is True
|
assert nwGUI.openProject(projPath) is True
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ import sys
|
|||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
from PyQt6.QtWidgets import QApplication, QDialog, QMessageBox
|
from PyQt6.QtWidgets import QApplication, QDialog
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.dialogs.about import GuiAbout
|
from novelwriter.dialogs.about import GuiAbout
|
||||||
@@ -49,8 +49,6 @@ LANG_DATA = CONFIG.listLanguages(CONFIG.LANG_NW)
|
|||||||
def testGuiI18n_Localisation(qtbot, monkeypatch, language, nwGUI, projPath):
|
def testGuiI18n_Localisation(qtbot, monkeypatch, language, nwGUI, projPath):
|
||||||
"""Test loading the gui with a specific language."""
|
"""Test loading the gui with a specific language."""
|
||||||
monkeypatch.setattr(QDialog, "exec", lambda *a: None)
|
monkeypatch.setattr(QDialog, "exec", lambda *a: None)
|
||||||
monkeypatch.setattr(QMessageBox, "exec", lambda *a: None)
|
|
||||||
monkeypatch.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.Yes)
|
|
||||||
|
|
||||||
# Set the test language
|
# Set the test language
|
||||||
CONFIG.guiLocale = language
|
CONFIG.guiLocale = language
|
||||||
|
|||||||
@@ -25,12 +25,13 @@ from unittest.mock import MagicMock
|
|||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
from PyQt6.QtGui import QAction, QDesktopServices, QTextBlock
|
from PyQt6.QtGui import QAction, QDesktopServices, QTextBlock
|
||||||
from PyQt6.QtWidgets import QFileDialog, QMessageBox
|
from PyQt6.QtWidgets import QFileDialog
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.constants import nwKeyWords, nwShortcode, nwStats, nwUnicode
|
from novelwriter.constants import nwKeyWords, nwShortcode, nwStats, nwUnicode
|
||||||
from novelwriter.enum import nwDocAction, nwDocInsert
|
from novelwriter.enum import nwDocAction, nwDocInsert
|
||||||
from novelwriter.gui.doceditor import GuiDocEditor
|
from novelwriter.gui.doceditor import GuiDocEditor
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
from novelwriter.types import QtKeepAnchor, QtMoveRight, QtSelectWord
|
from novelwriter.types import QtKeepAnchor, QtMoveRight, QtSelectWord
|
||||||
|
|
||||||
from tests.tools import C, buildTestProject, writeFile
|
from tests.tools import C, buildTestProject, writeFile
|
||||||
@@ -575,7 +576,7 @@ def testGuiMainMenu_Insert(qtbot, monkeypatch, nwGUI, fncPath, projPath, mockRnd
|
|||||||
|
|
||||||
# The document isn't empty, so the message box should pop
|
# The document isn't empty, so the message box should pop
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a, **k: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert not nwGUI.importDocument()
|
assert not nwGUI.importDocument()
|
||||||
assert docEditor.getText() == "Bar"
|
assert docEditor.getText() == "Bar"
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ import pytest
|
|||||||
|
|
||||||
from PyQt6.QtCore import QEvent, QItemSelectionModel, QModelIndex, QPointF
|
from PyQt6.QtCore import QEvent, QItemSelectionModel, QModelIndex, QPointF
|
||||||
from PyQt6.QtGui import QMouseEvent
|
from PyQt6.QtGui import QMouseEvent
|
||||||
from PyQt6.QtWidgets import QMenu, QMessageBox
|
from PyQt6.QtWidgets import QMenu
|
||||||
|
|
||||||
from novelwriter import CONFIG, SHARED
|
from novelwriter import CONFIG, SHARED
|
||||||
from novelwriter.dialogs.docmerge import GuiDocMerge
|
from novelwriter.dialogs.docmerge import GuiDocMerge
|
||||||
@@ -34,6 +34,7 @@ from novelwriter.dialogs.docsplit import GuiDocSplit
|
|||||||
from novelwriter.dialogs.editlabel import GuiEditLabel
|
from novelwriter.dialogs.editlabel import GuiEditLabel
|
||||||
from novelwriter.enum import nwDocMode, nwItemClass, nwItemLayout, nwItemType
|
from novelwriter.enum import nwDocMode, nwItemClass, nwItemLayout, nwItemType
|
||||||
from novelwriter.gui.projtree import _TreeContextMenu
|
from novelwriter.gui.projtree import _TreeContextMenu
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
from novelwriter.types import (
|
from novelwriter.types import (
|
||||||
QtAccepted, QtModNone, QtMouseLeft, QtMouseMiddle, QtRejected,
|
QtAccepted, QtModNone, QtMouseLeft, QtMouseMiddle, QtRejected,
|
||||||
QtScrollAlwaysOff, QtScrollAsNeeded
|
QtScrollAlwaysOff, QtScrollAsNeeded
|
||||||
@@ -627,7 +628,7 @@ def testGuiProjTree_DeleteRequest(qtbot, caplog, monkeypatch, nwGUI, projPath, m
|
|||||||
|
|
||||||
# User can cancel move to trash
|
# User can cancel move to trash
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
projTree.processDeleteRequest(hScenes, askFirst=True)
|
projTree.processDeleteRequest(hScenes, askFirst=True)
|
||||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||||
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
||||||
@@ -645,7 +646,7 @@ def testGuiProjTree_DeleteRequest(qtbot, caplog, monkeypatch, nwGUI, projPath, m
|
|||||||
|
|
||||||
# User can block permanent deletion
|
# User can block permanent deletion
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
projTree.processDeleteRequest(hScenes[0:2], askFirst=True)
|
projTree.processDeleteRequest(hScenes[0:2], askFirst=True)
|
||||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||||
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
||||||
@@ -677,7 +678,7 @@ def testGuiProjTree_DeleteRequest(qtbot, caplog, monkeypatch, nwGUI, projPath, m
|
|||||||
|
|
||||||
# Trash can be completely emptied, but user can block it
|
# Trash can be completely emptied, but user can block it
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
projTree.emptyTrash()
|
projTree.emptyTrash()
|
||||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||||
"Novel", "Title Page", "Chapter Folder", "Plot", "Characters", "Trash",
|
"Novel", "Title Page", "Chapter Folder", "Plot", "Characters", "Trash",
|
||||||
@@ -995,7 +996,7 @@ def testGuiProjTree_Duplicate(qtbot, monkeypatch, nwGUI, projPath, mockRnd):
|
|||||||
|
|
||||||
# Duplicate title page, but select no
|
# Duplicate title page, but select no
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QtRejected)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
projTree.duplicateFromHandle(C.hTitlePage)
|
projTree.duplicateFromHandle(C.hTitlePage)
|
||||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||||
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
||||||
@@ -1302,7 +1303,7 @@ def testGuiProjTree_ContextMenu(qtbot, monkeypatch, nwGUI, projPath, mockRnd):
|
|||||||
|
|
||||||
# Click no on the dialog
|
# Click no on the dialog
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QtRejected)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
ctxMenu._convertFolderToFile(nwItemLayout.DOCUMENT)
|
ctxMenu._convertFolderToFile(nwItemLayout.DOCUMENT)
|
||||||
assert nodeOne.item.isFolderType()
|
assert nodeOne.item.isFolderType()
|
||||||
|
|
||||||
|
|||||||
@@ -26,15 +26,15 @@ import pytest
|
|||||||
|
|
||||||
from PyQt6.QtCore import QUrl
|
from PyQt6.QtCore import QUrl
|
||||||
from PyQt6.QtGui import QDesktopServices
|
from PyQt6.QtGui import QDesktopServices
|
||||||
from PyQt6.QtWidgets import QFileDialog, QListWidgetItem, QMessageBox
|
from PyQt6.QtWidgets import QFileDialog, QListWidgetItem
|
||||||
from pytestqt.qtbot import QtBot
|
from pytestqt.qtbot import QtBot
|
||||||
|
|
||||||
from novelwriter.constants import nwLabels
|
from novelwriter.constants import nwLabels
|
||||||
from novelwriter.core.buildsettings import BuildSettings
|
from novelwriter.core.buildsettings import BuildSettings
|
||||||
from novelwriter.enum import nwBuildFmt
|
from novelwriter.enum import nwBuildFmt
|
||||||
from novelwriter.guimain import GuiMain
|
from novelwriter.guimain import GuiMain
|
||||||
|
from novelwriter.shared import _GuiAlert
|
||||||
from novelwriter.tools.manusbuild import GuiManuscriptBuild
|
from novelwriter.tools.manusbuild import GuiManuscriptBuild
|
||||||
from novelwriter.types import QtDialogClose
|
|
||||||
|
|
||||||
from tests.tools import buildTestProject
|
from tests.tools import buildTestProject
|
||||||
|
|
||||||
@@ -94,9 +94,7 @@ def testToolManuscriptBuild_Main(
|
|||||||
assert (fncPath / "TestBuild").with_suffix(nwLabels.BUILD_EXT[fmt]).exists()
|
assert (fncPath / "TestBuild").with_suffix(nwLabels.BUILD_EXT[fmt]).exists()
|
||||||
lastFmt = fmt
|
lastFmt = fmt
|
||||||
|
|
||||||
button = manus.buttonBox.button(QtDialogClose)
|
manus._dialogButtonClicked(manus.btnClose)
|
||||||
assert button is not None
|
|
||||||
manus._dialogButtonClicked(button)
|
|
||||||
manus.deleteLater()
|
manus.deleteLater()
|
||||||
|
|
||||||
assert build.lastBuildName == "TestBuild"
|
assert build.lastBuildName == "TestBuild"
|
||||||
@@ -134,7 +132,7 @@ def testToolManuscriptBuild_Main(
|
|||||||
manus.buildPath.setText(str(fncPath))
|
manus.buildPath.setText(str(fncPath))
|
||||||
manus.buildName.setText("TestBuild")
|
manus.buildName.setText("TestBuild")
|
||||||
with monkeypatch.context() as mp:
|
with monkeypatch.context() as mp:
|
||||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
mp.setattr(_GuiAlert, "finalState", False)
|
||||||
assert manus._runBuild() is False
|
assert manus._runBuild() is False
|
||||||
|
|
||||||
# Test that the open button works
|
# Test that the open button works
|
||||||
@@ -150,7 +148,5 @@ def testToolManuscriptBuild_Main(
|
|||||||
assert lastUrl.startswith("file://")
|
assert lastUrl.startswith("file://")
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = manus.buttonBox.button(QtDialogClose)
|
manus._dialogButtonClicked(manus.btnClose)
|
||||||
assert button is not None
|
|
||||||
manus._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|||||||
@@ -37,7 +37,6 @@ from novelwriter.core.buildsettings import BuildSettings
|
|||||||
from novelwriter.tools.manusbuild import GuiManuscriptBuild
|
from novelwriter.tools.manusbuild import GuiManuscriptBuild
|
||||||
from novelwriter.tools.manuscript import GuiManuscript
|
from novelwriter.tools.manuscript import GuiManuscript
|
||||||
from novelwriter.tools.manussettings import GuiBuildSettings
|
from novelwriter.tools.manussettings import GuiBuildSettings
|
||||||
from novelwriter.types import QtDialogApply, QtDialogSave
|
|
||||||
|
|
||||||
from tests.tools import C, buildTestProject
|
from tests.tools import C, buildTestProject
|
||||||
|
|
||||||
@@ -115,9 +114,7 @@ def testToolManuscript_Builds(qtbot, nwGUI, projPath):
|
|||||||
|
|
||||||
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
||||||
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
||||||
button = bSettings.buttonBox.button(QtDialogSave)
|
bSettings.btnSave.click()
|
||||||
assert button is not None
|
|
||||||
button.click()
|
|
||||||
|
|
||||||
assert isinstance(build, BuildSettings)
|
assert isinstance(build, BuildSettings)
|
||||||
assert build.name == "Test Build"
|
assert build.name == "Test Build"
|
||||||
@@ -136,9 +133,7 @@ def testToolManuscript_Builds(qtbot, nwGUI, projPath):
|
|||||||
|
|
||||||
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
||||||
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
||||||
button = bSettings.buttonBox.button(QtDialogApply)
|
bSettings.btnApply.click() # Should leave the dialog open
|
||||||
assert button is not None
|
|
||||||
button.click() # Should leave the dialog open
|
|
||||||
|
|
||||||
assert isinstance(build, BuildSettings)
|
assert isinstance(build, BuildSettings)
|
||||||
assert build.name == "Test Build"
|
assert build.name == "Test Build"
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ from novelwriter.core.buildsettings import BuildSettings, FilterMode
|
|||||||
from novelwriter.tools.manussettings import (
|
from novelwriter.tools.manussettings import (
|
||||||
GuiBuildSettings, _FilterTab, _FormattingTab, _HeadingsTab
|
GuiBuildSettings, _FilterTab, _FormattingTab, _HeadingsTab
|
||||||
)
|
)
|
||||||
from novelwriter.types import QtDialogApply, QtDialogClose, QtDialogSave
|
|
||||||
|
|
||||||
from tests.tools import C, buildTestProject
|
from tests.tools import C, buildTestProject
|
||||||
|
|
||||||
@@ -78,9 +77,7 @@ def testToolBuildSettings_Init(qtbot, nwGUI, projPath, mockRnd):
|
|||||||
# Capture Apply button
|
# Capture Apply button
|
||||||
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
||||||
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
||||||
button = bSettings.buttonBox.button(QtDialogApply)
|
bSettings._dialogButtonClicked(bSettings.btnApply)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
|
|
||||||
assert triggered
|
assert triggered
|
||||||
|
|
||||||
@@ -89,9 +86,7 @@ def testToolBuildSettings_Init(qtbot, nwGUI, projPath, mockRnd):
|
|||||||
|
|
||||||
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
with qtbot.waitSignal(bSettings.newSettingsReady, timeout=5000):
|
||||||
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
bSettings.newSettingsReady.connect(_testNewSettingsReady)
|
||||||
button = bSettings.buttonBox.button(QtDialogSave)
|
bSettings._dialogButtonClicked(bSettings.btnSave)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
|
|
||||||
assert triggered
|
assert triggered
|
||||||
|
|
||||||
@@ -109,9 +104,7 @@ def testToolBuildSettings_Init(qtbot, nwGUI, projPath, mockRnd):
|
|||||||
assert triggered
|
assert triggered
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -326,9 +319,7 @@ def testToolBuildSettings_Filter(qtbot, nwGUI, projPath, mockRnd):
|
|||||||
]
|
]
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -505,9 +496,7 @@ def testToolBuildSettings_Headings(qtbot, nwGUI):
|
|||||||
assert sBuild.getBool("headings.hideSection") is True
|
assert sBuild.getBool("headings.hideSection") is True
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -579,9 +568,7 @@ def testToolBuildSettings_FormatTextContent(qtbot, nwGUI):
|
|||||||
assert sBuild.getBool("text.addNoteHeadings") is True
|
assert sBuild.getBool("text.addNoteHeadings") is True
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -657,9 +644,7 @@ def testToolBuildSettings_FormatTextFormat(monkeypatch, qtbot, nwGUI):
|
|||||||
assert fmtTab._textFont == font
|
assert fmtTab._textFont == font
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -703,9 +688,7 @@ def testToolBuildSettings_FormatFirstLineIndent(monkeypatch, qtbot, nwGUI):
|
|||||||
assert sBuild.getBool("format.indentFirstPar") is True
|
assert sBuild.getBool("format.indentFirstPar") is True
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -761,9 +744,7 @@ def testToolBuildSettings_FormatPageLayout(monkeypatch, qtbot, nwGUI):
|
|||||||
assert fmtTab.rightMargin.value() == 1.5
|
assert fmtTab.rightMargin.value() == 1.5
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|
||||||
|
|
||||||
@@ -832,7 +813,5 @@ def testToolBuildSettings_FormatOutput(qtbot, nwGUI):
|
|||||||
assert fmtTab.odtPageHeader.text() == nwHeadFmt.DOC_AUTO
|
assert fmtTab.odtPageHeader.text() == nwHeadFmt.DOC_AUTO
|
||||||
|
|
||||||
# Finish
|
# Finish
|
||||||
button = bSettings.buttonBox.button(QtDialogClose)
|
bSettings._dialogButtonClicked(bSettings.btnClose)
|
||||||
assert button is not None
|
|
||||||
bSettings._dialogButtonClicked(button)
|
|
||||||
# qtbot.stop()
|
# qtbot.stop()
|
||||||
|
|||||||
@@ -111,7 +111,6 @@ def updateTranslationSources(args: argparse.Namespace) -> None:
|
|||||||
print("")
|
print("")
|
||||||
|
|
||||||
sources = list((ROOT_DIR / "novelwriter").glob("**/*.py"))
|
sources = list((ROOT_DIR / "novelwriter").glob("**/*.py"))
|
||||||
sources.insert(0, ROOT_DIR / "i18n" / "qtbase.py")
|
|
||||||
for source in sources:
|
for source in sources:
|
||||||
print(source.relative_to(ROOT_DIR))
|
print(source.relative_to(ROOT_DIR))
|
||||||
|
|
||||||
|
|||||||
+20
-2
@@ -107,6 +107,24 @@ ICONS = [
|
|||||||
"theme_dark",
|
"theme_dark",
|
||||||
"theme_auto",
|
"theme_auto",
|
||||||
|
|
||||||
|
"btn_ok",
|
||||||
|
"btn_cancel",
|
||||||
|
"btn_yes",
|
||||||
|
"btn_no",
|
||||||
|
"btn_open",
|
||||||
|
"btn_close",
|
||||||
|
"btn_save",
|
||||||
|
"btn_browse",
|
||||||
|
"btn_list",
|
||||||
|
"btn_new",
|
||||||
|
"btn_create",
|
||||||
|
"btn_reset",
|
||||||
|
"btn_insert",
|
||||||
|
"btn_apply",
|
||||||
|
"btn_build",
|
||||||
|
"btn_print",
|
||||||
|
"btn_preview",
|
||||||
|
|
||||||
"add",
|
"add",
|
||||||
"bookmarks",
|
"bookmarks",
|
||||||
"browse",
|
"browse",
|
||||||
@@ -142,7 +160,6 @@ ICONS = [
|
|||||||
"more_arrow",
|
"more_arrow",
|
||||||
"more_vertical",
|
"more_vertical",
|
||||||
"noncheckable",
|
"noncheckable",
|
||||||
"open",
|
|
||||||
"panel",
|
"panel",
|
||||||
"pin",
|
"pin",
|
||||||
"project_copy",
|
"project_copy",
|
||||||
@@ -151,7 +168,6 @@ ICONS = [
|
|||||||
"remove",
|
"remove",
|
||||||
"revert",
|
"revert",
|
||||||
"settings",
|
"settings",
|
||||||
"star",
|
|
||||||
"stats",
|
"stats",
|
||||||
"text",
|
"text",
|
||||||
"timer_off",
|
"timer_off",
|
||||||
@@ -288,6 +304,8 @@ def processFontAwesome(workDir: Path, iconsDir: Path, jobs: dict) -> None:
|
|||||||
viewbox = [int(x) for x in svg.get("viewBox", "").split()]
|
viewbox = [int(x) for x in svg.get("viewBox", "").split()]
|
||||||
viewbox = [viewbox[2]//2 - 256, 0, 512, 512]
|
viewbox = [viewbox[2]//2 - 256, 0, 512, 512]
|
||||||
svg.set("viewBox", " ".join(str(x) for x in viewbox))
|
svg.set("viewBox", " ".join(str(x) for x in viewbox))
|
||||||
|
for elem in svg.iter():
|
||||||
|
elem.attrib.pop("fill", None)
|
||||||
icons[key] = svg
|
icons[key] = svg
|
||||||
else:
|
else:
|
||||||
print(f"Not Found: {icon}.svg")
|
print(f"Not Found: {icon}.svg")
|
||||||
|
|||||||
@@ -60,6 +60,24 @@
|
|||||||
"theme_dark": "moon",
|
"theme_dark": "moon",
|
||||||
"theme_auto": "circle-half-stroke",
|
"theme_auto": "circle-half-stroke",
|
||||||
|
|
||||||
|
"btn_ok": "circle-check",
|
||||||
|
"btn_cancel": "ban",
|
||||||
|
"btn_yes": "circle-check",
|
||||||
|
"btn_no": "circle-xmark",
|
||||||
|
"btn_open": "file-arrow-up",
|
||||||
|
"btn_close": "circle-xmark",
|
||||||
|
"btn_save": "floppy-disk",
|
||||||
|
"btn_browse": "folder-open",
|
||||||
|
"btn_list": "list",
|
||||||
|
"btn_new": "plus",
|
||||||
|
"btn_create": "star",
|
||||||
|
"btn_reset": "rotate-left",
|
||||||
|
"btn_insert": "i-cursor",
|
||||||
|
"btn_apply": "square-check",
|
||||||
|
"btn_build": "up-right-from-square",
|
||||||
|
"btn_print": "print",
|
||||||
|
"btn_preview": "eye",
|
||||||
|
|
||||||
"add": "plus",
|
"add": "plus",
|
||||||
"bookmarks": "bookmark",
|
"bookmarks": "bookmark",
|
||||||
"browse": "folder-open",
|
"browse": "folder-open",
|
||||||
@@ -95,16 +113,14 @@
|
|||||||
"more_arrow": "caret-right",
|
"more_arrow": "caret-right",
|
||||||
"more_vertical": "ellipsis-vertical",
|
"more_vertical": "ellipsis-vertical",
|
||||||
"noncheckable": "square-minus",
|
"noncheckable": "square-minus",
|
||||||
"open": "file-arrow-up",
|
|
||||||
"panel": "table-list",
|
"panel": "table-list",
|
||||||
"pin": "thumbtack",
|
"pin": "thumbtack",
|
||||||
"project_copy": "copy",
|
"project_copy": "copy",
|
||||||
"quote": "quote-right",
|
"quote": "quote-right",
|
||||||
"refresh": "arrow-rotate-right",
|
"refresh": "rotate-right",
|
||||||
"remove": "minus",
|
"remove": "minus",
|
||||||
"revert": "arrow-rotate-left",
|
"revert": "rotate-left",
|
||||||
"settings": "gear",
|
"settings": "gear",
|
||||||
"star": "star",
|
|
||||||
"stats": "chart-line",
|
"stats": "chart-line",
|
||||||
"text": "file-lines",
|
"text": "file-lines",
|
||||||
"timer_off": "pause",
|
"timer_off": "pause",
|
||||||
|
|||||||
@@ -60,6 +60,24 @@
|
|||||||
"theme_dark": "dark_mode",
|
"theme_dark": "dark_mode",
|
||||||
"theme_auto": "contrast",
|
"theme_auto": "contrast",
|
||||||
|
|
||||||
|
"btn_ok": "check_circle",
|
||||||
|
"btn_cancel": "cancel",
|
||||||
|
"btn_yes": "check_circle",
|
||||||
|
"btn_no": "do_not_disturb_on",
|
||||||
|
"btn_open": "open_in_new",
|
||||||
|
"btn_close": "cancel",
|
||||||
|
"btn_save": "file_save",
|
||||||
|
"btn_browse": "folder_open",
|
||||||
|
"btn_list": "format_list_bulleted",
|
||||||
|
"btn_new": "new_window",
|
||||||
|
"btn_create": "star",
|
||||||
|
"btn_reset": "undo",
|
||||||
|
"btn_insert": "insert_text",
|
||||||
|
"btn_apply": "check_box",
|
||||||
|
"btn_build": "export_notes",
|
||||||
|
"btn_print": "print",
|
||||||
|
"btn_preview": "preview",
|
||||||
|
|
||||||
"add": "add",
|
"add": "add",
|
||||||
"bookmarks": "bookmarks",
|
"bookmarks": "bookmarks",
|
||||||
"browse": "folder_open",
|
"browse": "folder_open",
|
||||||
@@ -95,7 +113,6 @@
|
|||||||
"more_arrow": "arrow_right",
|
"more_arrow": "arrow_right",
|
||||||
"more_vertical": "more_vert",
|
"more_vertical": "more_vert",
|
||||||
"noncheckable": "indeterminate_check_box",
|
"noncheckable": "indeterminate_check_box",
|
||||||
"open": "open_in_new",
|
|
||||||
"panel": "dock_to_bottom",
|
"panel": "dock_to_bottom",
|
||||||
"pin": "keep",
|
"pin": "keep",
|
||||||
"project_copy": "folder_copy",
|
"project_copy": "folder_copy",
|
||||||
@@ -104,7 +121,6 @@
|
|||||||
"remove": "remove",
|
"remove": "remove",
|
||||||
"revert": "settings_backup_restore",
|
"revert": "settings_backup_restore",
|
||||||
"settings": "settings",
|
"settings": "settings",
|
||||||
"star": "star",
|
|
||||||
"stats": "stacked_line_chart",
|
"stats": "stacked_line_chart",
|
||||||
"text": "subject",
|
"text": "subject",
|
||||||
"timer_off": "timer_off",
|
"timer_off": "timer_off",
|
||||||
|
|||||||
@@ -60,6 +60,24 @@
|
|||||||
"theme_dark": "moon",
|
"theme_dark": "moon",
|
||||||
"theme_auto": "contrast",
|
"theme_auto": "contrast",
|
||||||
|
|
||||||
|
"btn_ok": "checkbox-circle",
|
||||||
|
"btn_cancel": "indeterminate-circle",
|
||||||
|
"btn_yes": "checkbox-circle",
|
||||||
|
"btn_no": "close-circle",
|
||||||
|
"btn_open": "file-upload",
|
||||||
|
"btn_close": "close-circle",
|
||||||
|
"btn_save": "save-3",
|
||||||
|
"btn_browse": "folder-2",
|
||||||
|
"btn_list": "list-unordered",
|
||||||
|
"btn_new": "add",
|
||||||
|
"btn_create": "star-fill",
|
||||||
|
"btn_reset": "reset-left",
|
||||||
|
"btn_insert": "add-box",
|
||||||
|
"btn_apply": "checkbox",
|
||||||
|
"btn_build": "stack",
|
||||||
|
"btn_print": "printer",
|
||||||
|
"btn_preview": "eye",
|
||||||
|
|
||||||
"add": "add",
|
"add": "add",
|
||||||
"bookmarks": "bookmark",
|
"bookmarks": "bookmark",
|
||||||
"browse": "folder-2",
|
"browse": "folder-2",
|
||||||
@@ -95,7 +113,6 @@
|
|||||||
"more_arrow": "arrow-right-s-fill",
|
"more_arrow": "arrow-right-s-fill",
|
||||||
"more_vertical": "more-2-fill",
|
"more_vertical": "more-2-fill",
|
||||||
"noncheckable": "checkbox-indeterminate",
|
"noncheckable": "checkbox-indeterminate",
|
||||||
"open": "file-upload",
|
|
||||||
"panel": "layout-bottom",
|
"panel": "layout-bottom",
|
||||||
"pin": "pushpin",
|
"pin": "pushpin",
|
||||||
"project_copy": "file-copy-2",
|
"project_copy": "file-copy-2",
|
||||||
@@ -104,7 +121,6 @@
|
|||||||
"remove": "subtract",
|
"remove": "subtract",
|
||||||
"revert": "reset-left",
|
"revert": "reset-left",
|
||||||
"settings": "settings-2",
|
"settings": "settings-2",
|
||||||
"star": "star-fill",
|
|
||||||
"stats": "line-chart",
|
"stats": "line-chart",
|
||||||
"text": "file-text",
|
"text": "file-text",
|
||||||
"timer_off": "zzz",
|
"timer_off": "zzz",
|
||||||
|
|||||||
Reference in New Issue
Block a user