mirror of
https://github.com/spalencsar/bearhub.git
synced 2026-07-08 00:24:15 +02:00
[view] improvement: displaying a tooltip with the missing dependencies for a supported packaging technology
This commit is contained in:
@@ -4,7 +4,7 @@ import time
|
||||
import traceback
|
||||
from subprocess import Popen, STDOUT
|
||||
from threading import Thread
|
||||
from typing import List, Set, Type, Tuple, Dict
|
||||
from typing import List, Set, Type, Tuple, Dict, Optional
|
||||
|
||||
from bauh.api.abstract.controller import SoftwareManager, SearchResult, ApplicationContext, UpgradeRequirements, \
|
||||
UpgradeRequirement, TransactionResult, SoftwareAction
|
||||
@@ -119,20 +119,19 @@ class GenericSoftwareManager(SoftwareManager):
|
||||
return res
|
||||
|
||||
def _can_work(self, man: SoftwareManager):
|
||||
|
||||
if self._available_cache is not None:
|
||||
available = False
|
||||
for t in man.get_managed_types():
|
||||
available = self._available_cache.get(t)
|
||||
|
||||
if available is None:
|
||||
available = man.is_enabled() and man.can_work()
|
||||
available = man.is_enabled() and man.can_work()[0]
|
||||
self._available_cache[t] = available
|
||||
|
||||
if available:
|
||||
available = True
|
||||
else:
|
||||
available = man.is_enabled() and man.can_work()
|
||||
available = man.is_enabled() and man.can_work()[0]
|
||||
|
||||
if available:
|
||||
if man not in self.working_managers:
|
||||
@@ -198,8 +197,8 @@ class GenericSoftwareManager(SoftwareManager):
|
||||
def set_enabled(self, enabled: bool):
|
||||
pass
|
||||
|
||||
def can_work(self) -> bool:
|
||||
return True
|
||||
def can_work(self) -> Tuple[bool, Optional[str]]:
|
||||
return True, None
|
||||
|
||||
def _get_package_lower_name(self, pkg: SoftwarePackage):
|
||||
return pkg.name.lower()
|
||||
|
||||
@@ -7,7 +7,7 @@ import traceback
|
||||
from io import StringIO
|
||||
from math import floor
|
||||
from threading import Thread
|
||||
from typing import Iterable, List
|
||||
from typing import Iterable, List, Tuple
|
||||
|
||||
from bauh.api.abstract.download import FileDownloader
|
||||
from bauh.api.abstract.handler import ProcessWatcher
|
||||
@@ -223,3 +223,6 @@ class AdaptableFileDownloader(FileDownloader):
|
||||
|
||||
def list_available_multithreaded_clients(self) -> List[str]:
|
||||
return [c for c in self.supported_multithread_clients if self.is_multithreaded_client_available(c)]
|
||||
|
||||
def get_supported_clients(self) -> tuple:
|
||||
return 'wget', 'aria2', 'axel'
|
||||
|
||||
@@ -39,23 +39,26 @@ class GenericSettingsManager:
|
||||
gem_opts, def_gem_opts, gem_tabs = [], set(), []
|
||||
|
||||
for man in self.managers:
|
||||
if man.can_work():
|
||||
man_comp = man.get_settings(screen_width, screen_height)
|
||||
modname = man.__module__.split('.')[-2]
|
||||
icon_path = "{r}/gems/{n}/resources/img/{n}.svg".format(r=ROOT_DIR, n=modname)
|
||||
can_work, reason_not_work = man.can_work()
|
||||
modname = man.__module__.split('.')[-2]
|
||||
icon_path = "{r}/gems/{n}/resources/img/{n}.svg".format(r=ROOT_DIR, n=modname)
|
||||
|
||||
if man_comp:
|
||||
tab_name = self.i18n.get('gem.{}.label'.format(modname), modname.capitalize())
|
||||
gem_tabs.append(TabComponent(label=tab_name, content=man_comp, icon_path=icon_path, id_=modname))
|
||||
man_comp = man.get_settings(screen_width, screen_height) if can_work else None
|
||||
if man_comp:
|
||||
tab_name = self.i18n.get('gem.{}.label'.format(modname), modname.capitalize())
|
||||
gem_tabs.append(TabComponent(label=tab_name, content=man_comp, icon_path=icon_path, id_=modname))
|
||||
|
||||
opt = InputOption(label=self.i18n.get('gem.{}.label'.format(modname), modname.capitalize()),
|
||||
tooltip=self.i18n.get('gem.{}.info'.format(modname)),
|
||||
value=modname,
|
||||
icon_path='{r}/gems/{n}/resources/img/{n}.svg'.format(r=ROOT_DIR, n=modname))
|
||||
gem_opts.append(opt)
|
||||
help_tip = reason_not_work if not can_work and reason_not_work else self.i18n.get(f'gem.{modname}.info')
|
||||
opt = InputOption(label=self.i18n.get('gem.{}.label'.format(modname), modname.capitalize()),
|
||||
tooltip=help_tip,
|
||||
value=modname,
|
||||
icon_path='{r}/gems/{n}/resources/img/{n}.svg'.format(r=ROOT_DIR, n=modname),
|
||||
read_only=not can_work,
|
||||
extra_properties={'warning': 'true'} if not can_work else None)
|
||||
gem_opts.append(opt)
|
||||
|
||||
if man.is_enabled() and man in self.working_managers:
|
||||
def_gem_opts.add(opt)
|
||||
if man.is_enabled() and man in self.working_managers:
|
||||
def_gem_opts.add(opt)
|
||||
|
||||
core_config = self.configman.get_config()
|
||||
|
||||
|
||||
@@ -275,6 +275,10 @@ class RadioButtonQt(QRadioButton):
|
||||
self.setAttribute(Qt.WA_TransparentForMouseEvents)
|
||||
self.setFocusPolicy(Qt.NoFocus)
|
||||
|
||||
if model.extra_properties:
|
||||
for name, val in model.extra_properties.items():
|
||||
self.setProperty(name, val)
|
||||
|
||||
def _set_checked(self, checked: bool):
|
||||
if checked:
|
||||
self.model_parent.value = self.model
|
||||
@@ -303,6 +307,10 @@ class CheckboxQt(QCheckBox):
|
||||
else:
|
||||
self.setCursor(QCursor(Qt.PointingHandCursor))
|
||||
|
||||
if model.extra_properties:
|
||||
for name, val in model.extra_properties.items():
|
||||
self.setProperty(name, val)
|
||||
|
||||
def _set_checked(self, state):
|
||||
checked = state == 2
|
||||
|
||||
@@ -541,7 +549,12 @@ class MultipleSelectQt(QGroupBox):
|
||||
|
||||
if op.tooltip:
|
||||
help_icon = QLabel()
|
||||
help_icon.setProperty('help_icon', 'true')
|
||||
|
||||
if op.extra_properties and op.extra_properties.get('warning') == 'true':
|
||||
help_icon.setProperty('warning_icon', 'true')
|
||||
else:
|
||||
help_icon.setProperty('help_icon', 'true')
|
||||
|
||||
help_icon.setCursor(QCursor(Qt.WhatsThisCursor))
|
||||
help_icon.setToolTip(op.tooltip)
|
||||
widget.layout().addWidget(help_icon)
|
||||
@@ -596,7 +609,12 @@ class FormMultipleSelectQt(QWidget):
|
||||
|
||||
if op.tooltip:
|
||||
help_icon = QLabel()
|
||||
help_icon.setProperty('help_icon', 'true')
|
||||
|
||||
if op.extra_properties and op.extra_properties.get('warning') == 'true':
|
||||
help_icon.setProperty('warning_icon', 'true')
|
||||
else:
|
||||
help_icon.setProperty('help_icon', 'true')
|
||||
|
||||
help_icon.setToolTip(op.tooltip)
|
||||
help_icon.setCursor(QCursor(Qt.WhatsThisCursor))
|
||||
widget.layout().addWidget(help_icon)
|
||||
|
||||
@@ -347,6 +347,7 @@ manage_window.upgrade_all.popup.title=Actualitza
|
||||
message.file.not_exist=Fitxer no existeix
|
||||
message.file.not_exist.body=El fitxer {} sembla no existir
|
||||
mirror=mirall
|
||||
missing_dep={dep} is not installed
|
||||
name=nom
|
||||
no=no
|
||||
not_installed=no instal·lada
|
||||
|
||||
@@ -346,6 +346,7 @@ manage_window.upgrade_all.popup.title=Upgrade
|
||||
message.file.not_exist=Datei existiert nicht
|
||||
message.file.not_exist.body=Die Datei {} scheint nicht zu existieren
|
||||
mirror=mirror
|
||||
missing_dep={dep} is not installed
|
||||
name=Name
|
||||
no=Nein
|
||||
not_installed=nicht installiert
|
||||
|
||||
@@ -347,6 +347,7 @@ manage_window.upgrade_all.popup.title=Upgrade
|
||||
message.file.not_exist.body=The file {} seems not to exist
|
||||
message.file.not_exist=File does not exist
|
||||
mirror=mirror
|
||||
missing_dep={dep} is not installed
|
||||
name=name
|
||||
no=no
|
||||
not_installed=not installed
|
||||
|
||||
@@ -348,6 +348,7 @@ manage_window.upgrade_all.popup.title=Actualizar
|
||||
message.file.not_exist=Archivo no existe
|
||||
message.file.not_exist.body=El archivo {} parece no existir
|
||||
mirror=espejo
|
||||
missing_dep={dep} no está instalado
|
||||
name=nombre
|
||||
no=no
|
||||
not_installed=no instalada
|
||||
|
||||
@@ -343,6 +343,7 @@ manage_window.upgrade_all.popup.title=Mettre à jour
|
||||
message.file.not_exist.body=Le fichier {} n'a pas l'air d'exister
|
||||
message.file.not_exist=Fichier inexistant
|
||||
mirror=mirroir
|
||||
missing_dep={dep} is not installed
|
||||
name=nom
|
||||
no=non
|
||||
not_installed=pas installé
|
||||
|
||||
@@ -348,6 +348,7 @@ manage_window.upgrade_all.popup.title=Aggiorna
|
||||
message.file.not_exist=File non esiste
|
||||
message.file.not_exist.body=Il file {} sembra non esistere
|
||||
mirror=specchio
|
||||
missing_dep={dep} is not installed
|
||||
name=nome
|
||||
no=no
|
||||
not_installed=non installato
|
||||
|
||||
@@ -347,6 +347,7 @@ manage_window.upgrade_all.popup.title=Atualizar
|
||||
message.file.not_exist.body=O arquivo {} parece não existir
|
||||
message.file.not_exist=Arquivo não existe
|
||||
mirror=espelho
|
||||
missing_dep={dep} não está instalado
|
||||
name=nome
|
||||
no=não
|
||||
not_installed=não instalado
|
||||
|
||||
@@ -346,6 +346,7 @@ manage_window.upgrade_all.popup.title=Обновление
|
||||
message.file.not_exist=Файл не существует
|
||||
message.file.not_exist.body=Файл {}, кажется, не существует
|
||||
mirror=Зеркало
|
||||
missing_dep={dep} is not installed
|
||||
name=Имя
|
||||
no=Нет
|
||||
not_installed=Не установлено
|
||||
|
||||
@@ -346,6 +346,7 @@ manage_window.upgrade_all.popup.title=Yükselt
|
||||
message.file.not_exist.body={} Dosyası yok gibi görünüyor
|
||||
message.file.not_exist=Dosya bulunamuyor
|
||||
mirror=yansı
|
||||
missing_dep={dep} is not installed
|
||||
name=isim
|
||||
no=hayır
|
||||
not_installed=yüklü değil
|
||||
|
||||
@@ -20,6 +20,10 @@ QCheckBox::indicator:checked:disabled {
|
||||
image: url("@style_dir/img/checkbox_checked_disabled.svg");
|
||||
}
|
||||
|
||||
QCheckBox[warning = "true"] {
|
||||
color: @color.warning;
|
||||
}
|
||||
|
||||
QLineEdit:disabled, QComboBox:disabled, QSpinBox:disabled {
|
||||
color: @disabled.color;
|
||||
}
|
||||
@@ -408,6 +412,10 @@ QLabel[help_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/help.svg");
|
||||
}
|
||||
|
||||
QLabel[warning_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/warning.svg");
|
||||
}
|
||||
|
||||
QLabel[tip_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/help.svg");
|
||||
}
|
||||
|
||||
122
bauh/view/resources/style/darcula/img/warning.svg
Normal file
122
bauh/view/resources/style/darcula/img/warning.svg
Normal file
@@ -0,0 +1,122 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Capa_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="512"
|
||||
height="512"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="warning.svg"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata
|
||||
id="metadata933"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs931">
|
||||
|
||||
</defs><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="739"
|
||||
id="namedview929"
|
||||
showgrid="false"
|
||||
showborder="true"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:zoom="0.70710679"
|
||||
inkscape:cx="354.26049"
|
||||
inkscape:cy="276.47875"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Capa_1"
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
|
||||
<g
|
||||
id="g898"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g900"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g902"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g904"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g906"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g908"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g910"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g912"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g914"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g916"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g918"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g920"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g922"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g924"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g926"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<ellipse
|
||||
style="fill:none;stroke:#6e6e6e;stroke-width:36.1559"
|
||||
id="path9773"
|
||||
cx="270.94653"
|
||||
cy="252.39122"
|
||||
rx="213.86691"
|
||||
ry="206.0806" /><path
|
||||
id="path939"
|
||||
style="fill:#be9117;fill-opacity:1;stroke:#be9117;stroke-width:1.88256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 255.87109,2.9414062 A 252.84608,253.05907 0 0 0 3.1542969,256 252.84608,253.05907 0 0 0 256,509.05859 252.84608,253.05907 0 0 0 508.8457,256 252.84608,253.05907 0 0 0 256,2.9414062 a 252.84608,253.05907 0 0 0 -0.12891,0 z M 252.38672,122.42188 c 46.17094,0 91.62695,21.28145 91.62695,72.18554 0,46.94252 -53.74634,64.99664 -65.28906,81.95899 -8.66556,12.61739 -5.773,30.3457 -29.58203,30.3457 -15.50947,0 -23.08399,-12.62527 -23.08399,-24.17773 0,-42.98946 63.10938,-52.71862 63.10938,-88.11719 0,-19.48412 -12.95594,-31.03711 -34.61133,-31.03711 -46.17094,0 -28.14066,47.64062 -63.10937,47.64062 -12.6238,0 -23.46094,-7.58162 -23.46094,-22.01367 -0.009,-35.40709 40.38307,-66.78515 84.40039,-66.78515 z m -1.79688,207.92773 c 16.20751,0 29.58008,13.34102 29.58008,29.61328 0,16.27226 -13.34704,29.61523 -29.58008,29.61523 -16.23303,0 -29.58789,-13.32592 -29.58789,-29.61523 0,-16.26375 13.35486,-29.61328 29.58789,-29.61328 z" /></svg>
|
||||
|
After Width: | Height: | Size: 3.8 KiB |
@@ -28,6 +28,10 @@ QCheckBox::indicator {
|
||||
height: 18px;
|
||||
}
|
||||
|
||||
QCheckBox[warning = "true"] {
|
||||
color: yellow;
|
||||
}
|
||||
|
||||
QProgressBar {
|
||||
max-height: 4px;
|
||||
}
|
||||
@@ -54,7 +58,7 @@ QMenu QPushButton {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
QLabel[help_icon = "true"] {
|
||||
QLabel[help_icon = "true"], QLabel[warning_icon = "true"] {
|
||||
qproperty-scaledContents: True;
|
||||
min-height: 16;
|
||||
max-height: 16;
|
||||
|
||||
122
bauh/view/resources/style/light/img/warning.svg
Normal file
122
bauh/view/resources/style/light/img/warning.svg
Normal file
@@ -0,0 +1,122 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Capa_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="512"
|
||||
height="512"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="warning.svg"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata
|
||||
id="metadata933"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs931">
|
||||
|
||||
</defs><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="739"
|
||||
id="namedview929"
|
||||
showgrid="false"
|
||||
showborder="true"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:zoom="0.70710679"
|
||||
inkscape:cx="354.26049"
|
||||
inkscape:cy="276.47875"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Capa_1"
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
|
||||
<g
|
||||
id="g898"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g900"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g902"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g904"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g906"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g908"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g910"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g912"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g914"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g916"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g918"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g920"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g922"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g924"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g926"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<ellipse
|
||||
style="fill:none;stroke:#6e6e6e;stroke-width:36.1559"
|
||||
id="path9773"
|
||||
cx="270.94653"
|
||||
cy="252.39122"
|
||||
rx="213.86691"
|
||||
ry="206.0806" /><path
|
||||
id="path939"
|
||||
style="fill:#db5860;fill-opacity:1;stroke:#db5860;stroke-width:1.88256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 255.87109,2.9414062 A 252.84608,253.05907 0 0 0 3.1542969,256 252.84608,253.05907 0 0 0 256,509.05859 252.84608,253.05907 0 0 0 508.8457,256 252.84608,253.05907 0 0 0 256,2.9414062 a 252.84608,253.05907 0 0 0 -0.12891,0 z M 252.38672,122.42188 c 46.17094,0 91.62695,21.28145 91.62695,72.18554 0,46.94252 -53.74634,64.99664 -65.28906,81.95899 -8.66556,12.61739 -5.773,30.3457 -29.58203,30.3457 -15.50947,0 -23.08399,-12.62527 -23.08399,-24.17773 0,-42.98946 63.10938,-52.71862 63.10938,-88.11719 0,-19.48412 -12.95594,-31.03711 -34.61133,-31.03711 -46.17094,0 -28.14066,47.64062 -63.10937,47.64062 -12.6238,0 -23.46094,-7.58162 -23.46094,-22.01367 -0.009,-35.40709 40.38307,-66.78515 84.40039,-66.78515 z m -1.79688,207.92773 c 16.20751,0 29.58008,13.34102 29.58008,29.61328 0,16.27226 -13.34704,29.61523 -29.58008,29.61523 -16.23303,0 -29.58789,-13.32592 -29.58789,-29.61523 0,-16.26375 13.35486,-29.61328 29.58789,-29.61328 z" /></svg>
|
||||
|
After Width: | Height: | Size: 3.8 KiB |
@@ -39,6 +39,10 @@ QCheckBox::indicator:checked:disabled {
|
||||
image: url("@style_dir/img/checkbox_checked_disabled.svg");
|
||||
}
|
||||
|
||||
QCheckBox[warning = "true"] {
|
||||
color: @color.red;
|
||||
}
|
||||
|
||||
QMenu QPushButton:hover {
|
||||
background-color: @menu.item.selected.background.color;
|
||||
}
|
||||
@@ -67,6 +71,10 @@ QLabel[help_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/help.svg");
|
||||
}
|
||||
|
||||
QLabel[warning_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/warning.svg");
|
||||
}
|
||||
|
||||
QLabel[tip_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/help.svg");
|
||||
}
|
||||
|
||||
122
bauh/view/resources/style/sublime/img/warning.svg
Normal file
122
bauh/view/resources/style/sublime/img/warning.svg
Normal file
@@ -0,0 +1,122 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Capa_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="512"
|
||||
height="512"
|
||||
viewBox="0 0 512 512"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="warning.svg"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata
|
||||
id="metadata933"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs931">
|
||||
|
||||
</defs><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="739"
|
||||
id="namedview929"
|
||||
showgrid="false"
|
||||
showborder="true"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:zoom="0.70710679"
|
||||
inkscape:cx="352.84628"
|
||||
inkscape:cy="276.47875"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Capa_1"
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
|
||||
<g
|
||||
id="g898"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g900"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g902"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g904"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g906"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g908"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g910"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g912"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g914"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g916"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g918"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g920"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g922"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g924"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<g
|
||||
id="g926"
|
||||
transform="translate(239.5083,-10.347359)">
|
||||
</g>
|
||||
<ellipse
|
||||
style="fill:none;stroke:#6e6e6e;stroke-width:36.1559"
|
||||
id="path9773"
|
||||
cx="270.94653"
|
||||
cy="252.39122"
|
||||
rx="213.86691"
|
||||
ry="206.0806" /><path
|
||||
id="path939"
|
||||
style="fill:#e7db74;fill-opacity:1;stroke:#e7db74;stroke-width:1.88256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 255.87109,2.9414062 A 252.84608,253.05907 0 0 0 3.1542969,256 252.84608,253.05907 0 0 0 256,509.05859 252.84608,253.05907 0 0 0 508.8457,256 252.84608,253.05907 0 0 0 256,2.9414062 a 252.84608,253.05907 0 0 0 -0.12891,0 z M 252.38672,122.42188 c 46.17094,0 91.62695,21.28145 91.62695,72.18554 0,46.94252 -53.74634,64.99664 -65.28906,81.95899 -8.66556,12.61739 -5.773,30.3457 -29.58203,30.3457 -15.50947,0 -23.08399,-12.62527 -23.08399,-24.17773 0,-42.98946 63.10938,-52.71862 63.10938,-88.11719 0,-19.48412 -12.95594,-31.03711 -34.61133,-31.03711 -46.17094,0 -28.14066,47.64062 -63.10937,47.64062 -12.6238,0 -23.46094,-7.58162 -23.46094,-22.01367 -0.009,-35.40709 40.38307,-66.78515 84.40039,-66.78515 z m -1.79688,207.92773 c 16.20751,0 29.58008,13.34102 29.58008,29.61328 0,16.27226 -13.34704,29.61523 -29.58008,29.61523 -16.23303,0 -29.58789,-13.32592 -29.58789,-29.61523 0,-16.26375 13.35486,-29.61328 29.58789,-29.61328 z" /></svg>
|
||||
|
After Width: | Height: | Size: 3.8 KiB |
@@ -47,6 +47,10 @@ QCheckBox::indicator:checked:disabled {
|
||||
image: url("@style_dir/img/checkbox_checked_disabled.svg");
|
||||
}
|
||||
|
||||
QCheckBox[warning = "true"] {
|
||||
color: @color.yellow;
|
||||
}
|
||||
|
||||
QComboBox, QComboBox QAbstractItemView, QMenu QAbstractItemView {
|
||||
selection-background-color: @menu.item.selected.background.color;
|
||||
selection-color: @menu.item.selected.font.color;
|
||||
@@ -115,6 +119,10 @@ QLabel[help_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/help.svg");
|
||||
}
|
||||
|
||||
QLabel[warning_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/warning.svg");
|
||||
}
|
||||
|
||||
QLabel[tip_icon = "true"] {
|
||||
qproperty-pixmap: url("@style_dir/img/help.svg");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user