예제 #1
0
def _unohelper_getHandle(self):
    ret = None
    if _g_typeTable.has_key(self.__class__):
        ret = _g_typeTable[self.__class__]
    else:
        names = {}
        traverse = list(self.__class__.__bases__)
        while len(traverse) > 0:
            item = traverse.pop()
            bases = item.__bases__
            if uno.isInterface(item):
                names[item.__pyunointerface__] = None
            elif len(bases) > 0:
                # the "else if", because we only need the most derived interface
                traverse = traverse + list(bases)  #

        lst = names.keys()
        types = []
        for x in lst:
            t = uno.getTypeByName(x)
            types.append(t)

        ret = tuple(types), uno.generateUuid()
        _g_typeTable[self.__class__] = ret
    return ret
def _unohelper_getHandle( self):
    ret = None
    if self.__class__ in _g_typeTable:
        ret = _g_typeTable[self.__class__]
    else:
        names = {}
        traverse = list(self.__class__.__bases__)
        while len( traverse ) > 0:
            item = traverse.pop()
            bases = item.__bases__
            if uno.isInterface( item ):
                names[item.__pyunointerface__] = None
            elif len(bases) > 0:
                # the "else if", because we only need the most derived interface
                traverse = traverse + list(bases)#

        lst = list(names.keys())
        types = []
        for x in lst:
            t = uno.getTypeByName( x )
            types.append( t )

        ret = tuple(types) , uno.generateUuid()
        _g_typeTable[self.__class__] = ret
    return ret
예제 #3
0
def _unohelper_getHandle( self):
    ret = None
    if self.__class__ in _g_typeTable:
        ret = _g_typeTable[self.__class__]
    else:
        names = set()
        traverse = list(self.__class__.__bases__)
        while len( traverse ) > 0:
            item = traverse.pop()
            bases = item.__bases__
            if uno.isInterface( item ):
                names.add(item.__pyunointerface__)
            elif bases:
                # the "else if", because we only need the most derived interface
                traverse = traverse + list(bases)#

        types = [uno.getTypeByName(name) for name in names]
        ret = tuple(types) , uno.generateUuid()
        _g_typeTable[self.__class__] = ret
    return ret
예제 #4
0
파일: test.py 프로젝트: hanya/pyuno3
 def test_import_interface(self):
     from com.sun.star.container import XNameAccess, XIndexAccess
     self.assertTrue(uno.isInterface(XNameAccess))
     self.assertTrue(uno.isInterface(XIndexAccess))
예제 #5
0
파일: test.py 프로젝트: hanya/pyuno3
 def test_isInterface(self):
     from com.sun.star.awt import XMouseListener
     from com.sun.star.awt.FontSlant import ITALIC
     
     self.assertTrue(uno.isInterface(XMouseListener))
     self.assertFalse(uno.isInterface(ITALIC))