Pycante 0.1a

Hace un tiempo vi u proyecto interesante que se llamaba mu-dev. Me intereso la funcionalidad asi que me contacte con el desar

rollador para colaborar pero el desarrollador me dijo “la colaboración con parches va a estar disponible en un futuro”. Asi que me dije a mi mismo “Puedo hacer algo similar (o mejor)” asi que bueno… asi nació pycante.

Pycante

La idea del proyecto es utilizar de manera comoda los archivos “.ui” de QtDesigner de la siguiente manera:

import pycante

from PyQt import QtGui

# using path
class Window0(pycante.E("path/to/file/window0.ui")):

    def on_buttonBox_accepted(self):
        # buttonBox exist inside "window.ui"
        print "you push accept"

# using file
class Window1(pycante.E(open("path/to/file/window0.ui"))):

    def on_buttonBox_accepted(self):
        # buttonBox exist inside "window.ui"
        print "you push accept"

# using widget
class Window2(pycante.E(QtGui.QDialog)):

    def setupUi(self, Dialog):
        self.buttonBox = QtGui.QDialogButtonBox(Dialog)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))

        self.retranslateUi(Dialog)
        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), Dialog.accept)
        QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("rejected()")), Dialog.reject)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "Dialog", None,                QtGui.QApplication.UnicodeUTF8))

    def on_buttonBox_accepted(self):
        # buttonBox exist inside "window.ui"
        print "you push accept"

if __name__ == "__main__":
    w0 = Window0()
    w0.show()

    w1 = Window1()
    w1.show()

    w2 = Window2()
    w2.show()

    pycante.run()

Para instalar:

$ pip install pycante

o

$ easy_install pycante

o bajarlo de aca: https://bitbucket.org/leliel12/pycante/

Disclaimers:

  • Lo hice por una necesidad muy puntual
  • El codigo de “W3″ no lo probe aunque puede usarse asi pycante
  • Como notaran en ni un momento llame a SetupUi()… eso pycante lo hace solo.

					

2 thoughts on “Pycante 0.1a

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>