def __init__(self, parent, value, defaultPath = None): super(TextureValue, self).__init__() self.parent = parent self.layout = gui.QtWidgets.QGridLayout(self) self.imageView = gui.ImageView() self.browseBtn = gui.BrowseButton() self.browseBtn.setFilter("Image Files (*.png *.jpg *.bmp)") self.layout.addWidget(self.imageView) self.layout.addWidget(self.browseBtn) self.value = value self.setValue(value) if value and isinstance(value, str): self.browseBtn._path = pathToUnicode(value) elif defaultPath: self.browseBtn._path = pathToUnicode(defaultPath) @self.browseBtn.mhEvent def onClicked(path): if not path: return self._path = pathToUnicode(path) self.imageView.setImage(self.value) self.parent.callEvent('onActivate', self.value)
def __init__(self, category): super(ViewerTaskView, self).__init__(category, 'Viewer') self.image = self.addTopWidget(gui.ImageView()) self.path = None tools = self.addLeftWidget(gui.GroupBox('Tools')) self.refrBtn = tools.addWidget(gui.Button('Refresh')) self.saveBtn = tools.addWidget(gui.Button('Save As...')) @self.saveBtn.mhEvent def onClicked(event): if not self.path: return filename = mh.getSaveFileName(os.path.splitext(self.path)[0], 'PNG Image (*.png);;JPEG Image (*.jpg);;All files (*.*)') if filename: self.image.save(filename) @self.refrBtn.mhEvent def onClicked(event): if not self.path: return self.image.setImage(self.path)