Beispiel #1
0
    def addMapProperties(self):

        groupProperty = self.mGroupManager.addProperty(self.tr("Map"))

        orientationProperty = self.createProperty(
            PropertyId.OrientationProperty,
            QtVariantPropertyManager.enumTypeId(), self.tr("Orientation"),
            groupProperty)
        orientationProperty.setAttribute("enumNames", self.mOrientationNames)
        self.createProperty(PropertyId.WidthProperty, QVariant.Int,
                            self.tr("Width"), groupProperty).setEnabled(False)
        self.createProperty(PropertyId.HeightProperty, QVariant.Int,
                            self.tr("Height"), groupProperty).setEnabled(False)
        self.createProperty(PropertyId.TileWidthProperty, QVariant.Int,
                            self.tr("Tile Width"), groupProperty)
        self.createProperty(PropertyId.TileHeightProperty, QVariant.Int,
                            self.tr("Tile Height"), groupProperty)
        self.createProperty(PropertyId.HexSideLengthProperty, QVariant.Int,
                            self.tr("Tile Side Length (Hex)"), groupProperty)
        staggerAxisProperty = self.createProperty(
            PropertyId.StaggerAxisProperty,
            QtVariantPropertyManager.enumTypeId(), self.tr("Stagger Axis"),
            groupProperty)
        staggerAxisProperty.setAttribute("enumNames", self.mStaggerAxisNames)
        staggerIndexProperty = self.createProperty(
            PropertyId.StaggerIndexProperty,
            QtVariantPropertyManager.enumTypeId(), self.tr("Stagger Index"),
            groupProperty)
        staggerIndexProperty.setAttribute("enumNames", self.mStaggerIndexNames)
        layerFormatProperty = self.createProperty(
            PropertyId.LayerFormatProperty,
            QtVariantPropertyManager.enumTypeId(),
            self.tr("Tile Layer Format"), groupProperty)
        layerFormatProperty.setAttribute("enumNames", self.mLayerFormatNames)
        renderOrderProperty = self.createProperty(
            PropertyId.RenderOrderProperty,
            QtVariantPropertyManager.enumTypeId(),
            self.tr("Tile Render Order"), groupProperty)
        renderOrderProperty.setAttribute("enumNames", self.mRenderOrderNames)
        self.createProperty(PropertyId.ColorProperty, QVariant.Color,
                            self.tr("Background Color"), groupProperty)
        self.addProperty(groupProperty)
Beispiel #2
0
    def addObjectGroupProperties(self):
        groupProperty = self.mGroupManager.addProperty(self.tr("Object Layer"))
        self.addLayerProperties(groupProperty)
        
        self.createProperty(PropertyId.OffsetXProperty, QVariant.Double, self.tr("Horizontal Offset"), groupProperty)
        self.createProperty(PropertyId.OffsetYProperty, QVariant.Double, self.tr("Vertical Offset"), groupProperty)

        self.createProperty(PropertyId.ColorProperty, QVariant.Color, self.tr("Color"), groupProperty)
        drawOrderProperty = self.createProperty(PropertyId.DrawOrderProperty,
                               QtVariantPropertyManager.enumTypeId(),
                               self.tr("Drawing Order"),
                               groupProperty)
        drawOrderProperty.setAttribute("enumNames", self.mDrawOrderNames)
        self.addProperty(groupProperty)
Beispiel #3
0
 def addMapProperties(self):
     
     groupProperty = self.mGroupManager.addProperty(self.tr("Map"))
     
     orientationProperty = self.createProperty(PropertyId.OrientationProperty,
                            QtVariantPropertyManager.enumTypeId(),
                            self.tr("Orientation"),
                            groupProperty)
     orientationProperty.setAttribute("enumNames", self.mOrientationNames)
     self.createProperty(PropertyId.WidthProperty, QVariant.Int, self.tr("Width"), groupProperty).setEnabled(False)
     self.createProperty(PropertyId.HeightProperty, QVariant.Int, self.tr("Height"), groupProperty).setEnabled(False)
     self.createProperty(PropertyId.TileWidthProperty, QVariant.Int, self.tr("Tile Width"), groupProperty)
     self.createProperty(PropertyId.TileHeightProperty, QVariant.Int, self.tr("Tile Height"), groupProperty)
     self.createProperty(PropertyId.HexSideLengthProperty, QVariant.Int, self.tr("Tile Side Length (Hex)"), groupProperty)
     staggerAxisProperty = self.createProperty(PropertyId.StaggerAxisProperty,
                            QtVariantPropertyManager.enumTypeId(),
                            self.tr("Stagger Axis"),
                            groupProperty)
     staggerAxisProperty.setAttribute("enumNames", self.mStaggerAxisNames)
     staggerIndexProperty = self.createProperty(PropertyId.StaggerIndexProperty,
                            QtVariantPropertyManager.enumTypeId(),
                            self.tr("Stagger Index"),
                            groupProperty)
     staggerIndexProperty.setAttribute("enumNames", self.mStaggerIndexNames)
     layerFormatProperty = self.createProperty(PropertyId.LayerFormatProperty,
                            QtVariantPropertyManager.enumTypeId(),
                            self.tr("Tile Layer Format"),
                            groupProperty)
     layerFormatProperty.setAttribute("enumNames", self.mLayerFormatNames)
     renderOrderProperty = self.createProperty(PropertyId.RenderOrderProperty,
                            QtVariantPropertyManager.enumTypeId(),
                            self.tr("Tile Render Order"),
                            groupProperty)
     renderOrderProperty.setAttribute("enumNames", self.mRenderOrderNames)
     self.createProperty(PropertyId.ColorProperty, QVariant.Color, self.tr("Background Color"), groupProperty)
     self.addProperty(groupProperty)
Beispiel #4
0
    def addObjectGroupProperties(self):
        groupProperty = self.mGroupManager.addProperty(self.tr("Object Layer"))
        self.addLayerProperties(groupProperty)

        self.createProperty(PropertyId.OffsetXProperty, QVariant.Double,
                            self.tr("Horizontal Offset"), groupProperty)
        self.createProperty(PropertyId.OffsetYProperty, QVariant.Double,
                            self.tr("Vertical Offset"), groupProperty)

        self.createProperty(PropertyId.ColorProperty, QVariant.Color,
                            self.tr("Color"), groupProperty)
        drawOrderProperty = self.createProperty(
            PropertyId.DrawOrderProperty,
            QtVariantPropertyManager.enumTypeId(), self.tr("Drawing Order"),
            groupProperty)
        drawOrderProperty.setAttribute("enumNames", self.mDrawOrderNames)
        self.addProperty(groupProperty)
Beispiel #5
0
    item = variantManager.addProperty(QVariant.Rect, str(i) + " Rect Property")
    i += 1
    item.setValue(QRect(10, 10, 20, 20))
    topItem.addSubProperty(item)
    item.setAttribute("constraint", QRect(0, 0, 50, 50))

    item = variantManager.addProperty(QVariant.RectF,
                                      str(i) + " RectF Property")
    i += 1
    item.setValue(QRectF(1.2345, 1.2345, 1.2345, 1.2345))
    topItem.addSubProperty(item)
    item.setAttribute("constraint", QRectF(0, 0, 50, 50))
    item.setAttribute("decimals", 3)

    item = variantManager.addProperty(QtVariantPropertyManager.enumTypeId(),
                                      str(i) + " Enum Property")
    i += 1
    enumNames = QList()
    enumNames.append("Enum0")
    enumNames.append("Enum1")
    enumNames.append("Enum2")
    item.setAttribute("enumNames", enumNames)
    item.setValue(1)
    topItem.addSubProperty(item)

    item = variantManager.addProperty(QtVariantPropertyManager.flagTypeId(),
                                      str(i) + " Flag Property")
    i += 1
    flagNames = QList()
    flagNames.append("Flag0")
Beispiel #6
0
    def addClassProperties(self, metaObject):
        if (not metaObject):
            return
        self.addClassProperties(metaObject.superClass())
        classProperty = self.m_classToProperty.value(metaObject)
        if (not classProperty):
            className = metaObject.className()
            classProperty = self.m_manager.addProperty(
                QtVariantPropertyManager.groupTypeId(), className)
            self.m_classToProperty[metaObject] = classProperty
            self.m_propertyToClass[classProperty] = metaObject

            for idx in range(metaObject.propertyOffset(),
                             metaObject.propertyCount(), 1):
                metaProperty = metaObject.property(idx)
                type = metaProperty.userType()
                subProperty = 0
                if (not metaProperty.isReadable()):
                    subProperty = self.m_readOnlyManager.addProperty(
                        QVariant.String, metaProperty.name())
                    subProperty.setValue("< Non Readable >")
                elif (metaProperty.isEnumType()):
                    if (metaProperty.isFlagType()):
                        subProperty = self.m_manager.addProperty(
                            QtVariantPropertyManager.flagTypeId(),
                            metaProperty.name())
                        metaEnum = metaProperty.enumerator()
                        valueMap = QMap()
                        flagNames = QList()
                        for i in range(metaEnum.keyCount()):
                            value = metaEnum.value(i)
                            if (not valueMap.contains(value)
                                    and self.isPowerOf2(value)):
                                valueMap[value] = True
                                flagNames.append(metaEnum.key(i))

                        subProperty.setAttribute("flagNames", flagNames)
                        subProperty.setValue(
                            self.flagToInt(metaEnum,
                                           metaProperty.read(self.m_object)))

                    else:
                        subProperty = self.m_manager.addProperty(
                            QtVariantPropertyManager.enumTypeId(),
                            metaProperty.name())
                        metaEnum = metaProperty.enumerator()
                        valueMap = QMap(
                        )  # dont show multiple enum values which have the same values
                        enumNames = QList()
                        for i in range(metaEnum.keyCount()):
                            value = metaEnum.value(i)
                            if (not valueMap.contains(value)):
                                valueMap[value] = True
                                enumNames.append(metaEnum.key(i))

                        subProperty.setAttribute("enumNames", enumNames)
                        subProperty.setValue(
                            self.enumToInt(metaEnum,
                                           metaProperty.read(self.m_object)))

                elif (self.m_manager.isPropertyTypeSupported(type)):
                    if (not metaProperty.isWritable()):
                        subProperty = self.m_readOnlyManager.addProperty(
                            type,
                            metaProperty.name() + " (Non Writable)")
                    if (not metaProperty.isDesignable()):
                        subProperty = self.m_readOnlyManager.addProperty(
                            type,
                            metaProperty.name() + " (Non Designable)")
                    else:
                        subProperty = self.m_manager.addProperty(
                            type, metaProperty.name())
                    subProperty.setValue(metaProperty.read(self.m_object))
                else:
                    subProperty = self.m_readOnlyManager.addProperty(
                        QVariant.String, metaProperty.name())
                    subProperty.setValue("< Unknown Type >")
                    subProperty.setEnabled(False)

                classProperty.addSubProperty(subProperty)
                self.m_propertyToIndex[subProperty] = idx
                self.m_classToIndexToProperty[metaObject][idx] = subProperty

        else:
            self.updateClassProperties(metaObject, False)

        self.m_topLevelProperties.append(classProperty)
        self.m_browser.addProperty(classProperty)
    def addClassProperties(self, metaObject):
        if (not metaObject):
            return
        self.addClassProperties(metaObject.superClass())
        classProperty = self.m_classToProperty.value(metaObject)
        if (not classProperty):
            className = metaObject.className()
            classProperty = self.m_manager.addProperty(QtVariantPropertyManager.groupTypeId(), className)
            self.m_classToProperty[metaObject] = classProperty
            self.m_propertyToClass[classProperty] = metaObject

            for idx in range(metaObject.propertyOffset(), metaObject.propertyCount(), 1):
                metaProperty = metaObject.property(idx)
                type = metaProperty.userType()
                subProperty = 0
                if (not metaProperty.isReadable()):
                    subProperty = self.m_readOnlyManager.addProperty(QVariant.String, metaProperty.name())
                    subProperty.setValue("< Non Readable >")
                elif (metaProperty.isEnumType()):
                    if (metaProperty.isFlagType()):
                        subProperty = self.m_manager.addProperty(QtVariantPropertyManager.flagTypeId(), metaProperty.name())
                        metaEnum = metaProperty.enumerator()
                        valueMap = QMap()
                        flagNames = QList()
                        for i in range(metaEnum.keyCount()):
                            value = metaEnum.value(i)
                            if (not valueMap.contains(value) and self.isPowerOf2(value)):
                                valueMap[value] = True
                                flagNames.append(metaEnum.key(i))

                        subProperty.setAttribute("flagNames", flagNames)
                        subProperty.setValue(self.flagToInt(metaEnum, metaProperty.read(self.m_object)))

                    else: 
                        subProperty = self.m_manager.addProperty(QtVariantPropertyManager.enumTypeId(), metaProperty.name())
                        metaEnum = metaProperty.enumerator()
                        valueMap = QMap() # dont show multiple enum values which have the same values
                        enumNames = QList()
                        for i in range(metaEnum.keyCount()):
                            value = metaEnum.value(i)
                            if (not valueMap.contains(value)):
                                valueMap[value] = True
                                enumNames.append(metaEnum.key(i))

                        subProperty.setAttribute("enumNames", enumNames)
                        subProperty.setValue(self.enumToInt(metaEnum, metaProperty.read(self.m_object)))

                elif (self.m_manager.isPropertyTypeSupported(type)):
                    if (not metaProperty.isWritable()):
                        subProperty = self.m_readOnlyManager.addProperty(type, metaProperty.name() + " (Non Writable)")
                    if (not metaProperty.isDesignable()):
                        subProperty = self.m_readOnlyManager.addProperty(type, metaProperty.name() + " (Non Designable)")
                    else:
                        subProperty = self.m_manager.addProperty(type, metaProperty.name())
                    subProperty.setValue(metaProperty.read(self.m_object))
                else: 
                    subProperty = self.m_readOnlyManager.addProperty(QVariant.String, metaProperty.name())
                    subProperty.setValue("< Unknown Type >")
                    subProperty.setEnabled(False)

                classProperty.addSubProperty(subProperty)
                self.m_propertyToIndex[subProperty] = idx
                self.m_classToIndexToProperty[metaObject][idx] = subProperty

        else: 
            self.updateClassProperties(metaObject, False)

        self.m_topLevelProperties.append(classProperty)
        self.m_browser.addProperty(classProperty)
    topItem.addSubProperty(item)

    item = variantManager.addProperty(QVariant.Rect, str(i) + " Rect Property")
    i += 1
    item.setValue(QRect(10, 10, 20, 20))
    topItem.addSubProperty(item)
    item.setAttribute("constraint", QRect(0, 0, 50, 50))

    item = variantManager.addProperty(QVariant.RectF, str(i) + " RectF Property")
    i += 1
    item.setValue(QRectF(1.2345, 1.2345, 1.2345, 1.2345))
    topItem.addSubProperty(item)
    item.setAttribute("constraint", QRectF(0, 0, 50, 50))
    item.setAttribute("decimals", 3)

    item = variantManager.addProperty(QtVariantPropertyManager.enumTypeId(), str(i) + " Enum Property")
    i += 1
    enumNames = QList()
    enumNames.append("Enum0")
    enumNames.append("Enum1")
    enumNames.append("Enum2")
    item.setAttribute("enumNames", enumNames)
    item.setValue(1)
    topItem.addSubProperty(item)

    item = variantManager.addProperty(QtVariantPropertyManager.flagTypeId(), str(i) + " Flag Property")
    i += 1
    flagNames = QList()
    flagNames.append("Flag0")
    flagNames.append("Flag1")
    flagNames.append("Flag2")