Wed, 15 Sep 2010 01:21:49 -0700, Tamás Bajusz:
> To test my PyQt4 app with PySide, I wrote a loadUi() replacement.
>
> from PySide import QtCore
> from PySide.QtUiTools import QUiLoader
>
> class MyQUiLoader(QUiLoader):
>     def __init__(self, baseinstance):
>         QUiLoader.__init__(self)
>         self.baseinstance = baseinstance
>
>     def createWidget(self, className, parent=None, name=""):
>         widget = QUiLoader.createWidget(self, className, parent, name)
>         if parent is None:
>             return self.baseinstance
>         else:
>             setattr(self.baseinstance, name, widget)
>             return widget
>
> def loadUi(uifile, baseinstance=None):
>     loader = MyQUiLoader(baseinstance)
>     ui = loader.load(uifile)
>     QtCore.QMetaObject.connectSlotsByName(ui)
>     return ui
>
> Any correction and comments are welcome.

According to [1] proper way to write constructor is:
class MyQUiLoader(QUiLoader):
    def __init__(self, baseinstance):
        super(MyQUiLoader, self).__init__() # note this line
        self.baseinstance = baseinstance
...

[1] http://developer.qt.nokia.com/wiki/Differences_Between_PySide_and_PyQt

Regards,
Vladimir Rutsky
_______________________________________________
PySide mailing list
[email protected]
http://lists.openbossa.org/listinfo/pyside

Reply via email to