I have been trying to figure out how to display a rectangular image in the panel to use as a button. The image itself is 30x120, but I can't get it to display to my satisfaction. If I use IconWidget, the image is squashed into a square. If I use PushButton, the image is likewise squashed by the button's borders. I tried changing the stylesheet for the button, setting margin and padding to 0, but with no success. Below is the sample code (the PushButton code is commented out).
--- from PyQt4.QtCore import * from PyQt4.QtGui import * from PyKDE4.plasma import Plasma from PyKDE4 import plasmascript class PanelButton(plasmascript.Applet): def __init__(self,parent,args=None): plasmascript.Applet.__init__(self,parent) def init(self): self.setAspectRatioMode(Plasma.KeepAspectRatio) # No configuration interface supported self.setHasConfigurationInterface(False) self.theme = Plasma.Svg(self) self.theme.setImagePath("widgets/background") self.setBackgroundHints(Plasma.Applet.DefaultBackground) self.layout = QGraphicsLinearLayout(Qt.Horizontal, self.applet) #self.button = Plasma.PushButton(self.applet) #self.button.setImage(self.package().path() + "contents/images/image.png") #self.button.setStyleSheet = ("margin: 0px; padding: 0px;") #self.connect(self.button, SIGNAL("clicked()"), self.notify) self.button = Plasma.IconWidget(self.applet) self.button.setIcon(self.package().path() + "contents/images/image.png") self.connect(self.button, SIGNAL("clicked()"), self.notify) self.layout.addItem(self.button) self.applet.setLayout(self.layout) self.resize(120, 30) def notify(self): pass def CreateApplet(parent): return PanelButton(parent) ---
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel