Browse Source

external plugins: add methods to read image files

master
ThomasV 2 years ago
parent
commit
ad774a49be
  1. 4
      electrum/gui/qt/util.py
  2. 8
      electrum/plugin.py

4
electrum/gui/qt/util.py

@ -1237,6 +1237,10 @@ def icon_path(icon_basename: str):
def read_QIcon(icon_basename: str) -> QIcon:
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):
HorizontalSpacing = 2

8
electrum/plugin.py

@ -422,6 +422,14 @@ class BasePlugin(Logger):
def settings_dialog(self, window):
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 HardwarePluginLibraryUnavailable(Exception): pass

Loading…
Cancel
Save