Exemplo n.º 1
0
 def __init__(self, argv):
     print('QCA args', argv)
     args = Args(3)
     argn = ffi.new('int[1]', [len(argv)])
     args[1].s_voidp = argn
     self._cargn = argn
     self._args = [arg.encode('ascii') for arg in argv]
     self._cargs = [ffi.new('char[]', arg) for arg in self._args]
     self._cargv = ffi.new('char *[]', self._cargs)
     args[2].s_voidp = self._cargv
     self.__cval__ = self.__classdef__.call(self.__classdef__.name, None, [argn, self._cargv], {})
     type(self)._instance = self
Exemplo n.º 2
0
 def _create_ctype(self, name, elem, stack, is_const, classid=0):
     ctype = ffi.new('Type*')
     self._nam = charp(name)
     ctype.name = self._nam
     ctype.classId = classid
     ctype.flags = getattr(smokec, elem)
     ctype.flags |= getattr(smokec, 'tf_'+stack)
     ctype.flags |= smokec.tf_const if is_const else 0
     return ctype
Exemplo n.º 3
0
def main():
    qapp_cls = qtgui.find_class('QApplication')
    print(qapp_cls.name, qapp_cls)
    qapp_ctor = qapp_cls.find_method('QApplication$?')
    print(qapp_ctor.name, qapp_ctor)
    print(qapp_ctor._class.name)

    args = Args(3)
    argn = ffi.new('int[1]', [2])
    args[1].s_voidp = argn
    argv = ffi.new('char[]', b'hello_smoke_app')
    argc = ffi.new('char*[]', [argv, argv])
    args[2].s_voidp = argc
    qapp = qapp_ctor.call(None, argn, argc)

    qwidget_cls = qtgui.find_class('QWidget')
    qwidget_ctor = qwidget_cls.find_method('QWidget')
    qwidget = qwidget_ctor.call(None)
    qwidget_cls.find_method('show').call(qwidget)
    qapp_cls.find_method('exec').call(qapp)
Exemplo n.º 4
0
print(smoke.smokec.Smoke_numMethodNames(qtgui.smoke.csmoke))
print(smoke.smokec.Smoke_numMethods(qtgui.smoke.csmoke))
print(smoke.smokec.Smoke_numMethodMaps(qtgui.smoke.csmoke))

print(qtgui.find_class('QWidget').find_munged_names(mn))

qapp_cls = qtgui.find_class('QApplication')
print(qapp_cls.name, qapp_cls)
qapp_ctor = qapp_cls.find_method('QApplication$?')
for meth in qapp_cls.iter_methods():
    print(meth, meth._index, meth._smoke.smoke)
print(qapp_ctor.name, qapp_ctor, qapp_ctor._index)
print(qapp_ctor._class.name)

args = Args(3)
argn = ffi.new('int[1]', [2])
args[1].s_voidp = argn
argv = ffi.new('char[]', b'hello_smoke_app')
argc = ffi.new('char*[]', [argv, argv])
args[2].s_voidp = argc
qapp = qapp_ctor.call(None, argn, argc)

qcapp = qtgui.find_class('QCoreApplication')
qcinst = qcapp.find_method('instance').call(inst=None)
print(qcapp, qcinst, qcapp.find_method('objectName'))
print(qcapp.find_method('objectName').call(inst=qcinst))
m = qapp_cls.find_method('objectName')
print(m)
print(m.cls, m.cls.bases, m.cls.is_external)
print(m.call(inst=qapp))