external plugins: add methods to read image files
This commit is contained in:
@@ -1237,6 +1237,10 @@ def icon_path(icon_basename: str):
|
|||||||
def read_QIcon(icon_basename: str) -> QIcon:
|
def read_QIcon(icon_basename: str) -> QIcon:
|
||||||
return QIcon(icon_path(icon_basename))
|
return QIcon(icon_path(icon_basename))
|
||||||
|
|
||||||
|
def read_QIcon_from_bytes(b: bytes) -> QIcon:
|
||||||
|
qp = QPixmap()
|
||||||
|
qp.loadFromData(b)
|
||||||
|
return QIcon(qp)
|
||||||
|
|
||||||
class IconLabel(QWidget):
|
class IconLabel(QWidget):
|
||||||
HorizontalSpacing = 2
|
HorizontalSpacing = 2
|
||||||
|
|||||||
@@ -422,6 +422,14 @@ class BasePlugin(Logger):
|
|||||||
def settings_dialog(self, window):
|
def settings_dialog(self, window):
|
||||||
raise NotImplementedError()
|
raise NotImplementedError()
|
||||||
|
|
||||||
|
def read_file(self, filename: str) -> bytes:
|
||||||
|
""" note: only for external plugins """
|
||||||
|
import zipfile
|
||||||
|
plugin_file_path = os.path.join(self.parent.get_external_plugin_dir(), self.name + '.zip')
|
||||||
|
with zipfile.ZipFile(plugin_file_path) as myzip:
|
||||||
|
with myzip.open(os.path.join(self.name, filename)) as myfile:
|
||||||
|
s = myfile.read()
|
||||||
|
return s
|
||||||
|
|
||||||
class DeviceUnpairableError(UserFacingException): pass
|
class DeviceUnpairableError(UserFacingException): pass
|
||||||
class HardwarePluginLibraryUnavailable(Exception): pass
|
class HardwarePluginLibraryUnavailable(Exception): pass
|
||||||
|
|||||||
Reference in New Issue
Block a user