def deserializexml(self, xmlelement):
        self.backgroundColor = NSColor(xmlelement.get('backgroundColor'))
        self.highlightColor = NSColor(xmlelement.get('highlightColor'))
        self.drawingBackgroundColor = xmlelement.get('drawingBackgroundColor').lower() == 'true'
        self.enabled = xmlelement.get('enabled').lower() == 'true'
        self.hotKey = xmlelement.get('hotKey')
        self.label = xmlelement.get('label')
        self.UUID = xmlelement.get('UUID')
        self.chordChartPath = xmlelement.get('chordChartPath')
        self.notes = xmlelement.get('notes')
        self.socialItemCount = xmlelement.get('socialItemCount')

        # Deserialize child objects
        xml_cues = xmlelement.find("./*[@rvXMLIvarName='cues']")
        if xml_cues is not None:
            for xml_cue in xml_cues:
                # Create the actual slide objects.
                self.cues.append(util.createobject(xml_cue))

        xml_cue = xmlelement.find("RVMediaCue")
        if xml_cue is not None:
            self.mediacue = RVMediaCue(xml_cue)

        xml_displayelements = xmlelement.find("./*[@rvXMLIvarName='displayElements']")
        if xml_displayelements is not None:
            for xml_dispelem in xml_displayelements:
                self.displayElements.append(util.createobject(xml_dispelem))
    def deserializexml(self, xmlelement):
        # Deserialize from XML
        self.UUID = xmlelement.get("UUID")
        self.displayName = xmlelement.get('displayName')
        self.typeID = int(xmlelement.get('typeID'))
        self.displayDelay = float(xmlelement.get('displayDelay'))
        self.locked = xmlelement.get('locked').lower() == 'true'
        self.persistent = xmlelement.get('persistent').lower() == 'true'
        self.fromTemplate = xmlelement.get('fromTemplate').lower() == 'true'
        self.opacity = float(xmlelement.get('opacity'))
        self.bezelRadius = float(xmlelement.get('bezelRadius'))
        self.rotation = float(xmlelement.get('rotation'))
        self.source = xmlelement.get('source')
        self.drawingFill = xmlelement.get('drawingFill').lower() == 'true'
        self.drawingShadow = xmlelement.get('drawingShadow').lower() == 'true'
        self.drawingStroke = xmlelement.get('drawingStroke').lower() == 'true'

        xml_pos = xmlelement.find("./RVRect3D[@rvXMLIvarName='position']")
        self.position = RVRect3D(xml_pos)

        xml_shadow = xmlelement.find("./shadow")
        self.shadow = shadow(xml_shadow)

        xml_stroke = xmlelement.find("./dictionary[@rvXMLIvarName='stroke']")
        for cnode in xml_stroke:
            xml_key = cnode.get('rvXMLDictionaryKey')
            # Create the current object.
            self.stroke[xml_key] = util.createobject(cnode)
    def deserializexml(self, xmlelement):
        super().deserializexml(xmlelement)

        try:
            xml_mediaelement = xmlelement[0]
            self.mediaelement = util.createobject(xml_mediaelement)
        except:
            a = 1
            pass
    def deserializexml(self, xmlelement):
        super().deserializexml(xmlelement)

        self.behavior = int(xmlelement.get("behavior"))
        self.alignment = int(xmlelement.get("alignment"))
        self.dateAdded = xmlelement.get("dateAdded")

        xml_livevideoelement = xmlelement[0]
        self.livevideoelement = util.createobject(xml_livevideoelement)
    def deserializexml(self, xmlelement):
        super().deserializexml(xmlelement)
        self.fillColor = NSColor(xmlelement.get('fillColor'))
        self.scaleBehavior = int(xmlelement.get('scaleBehavior'))
        self.flippedHorizontally = xmlelement.get('flippedHorizontally').lower() == 'true'
        self.flippedVertically = xmlelement.get('flippedVertically').lower() == 'true'
        self.scaleSize = RVScaleFactor(xmlelement.get('scaleSize'))
        self.imageOffset = RVScaleFactor(xmlelement.get('imageOffset'))
        self.format = xmlelement.get('format')
        self.manufactureName = xmlelement.get('manufactureName')
        self.manufactureURL = xmlelement.get('manufactureURL')

        xml_list = xmlelement.find("./array[@rvXMLIvarName='effects']")
        if xml_list is not None:
            for cnode in xml_list:
                self.effects.append(util.createobject(cnode))
    def deserializexml(self, xmlelement):
        super().deserializexml(xmlelement)
        # Deserialize from XML.
        self.UUID = xmlelement.get("UUID")
        self.displayName = xmlelement.get("displayName")
        self.actionType = int(xmlelement.get("actionType"))
        self.enabled = xmlelement.get("enabled").lower() == "true"
        self.timeStamp = float(xmlelement.get("timeStamp"))
        self.delayTime = float(xmlelement.get("delayTime"))
        self.behavior = int(xmlelement.get("behavior"))
        self.nextCueUUID = xmlelement.get("nextCueUUID")
        self.alignment = int(xmlelement.get("alignment"))
        self.dateAdded = xmlelement.get("dateAdded")
        self.tags = xmlelement.get("tags")
        self.rvXMLIvarName = xmlelement.get("rvXMLIvarName")

        xml_mediaelement = xmlelement[0]
        self.mediaelement = util.createobject(xml_mediaelement)