def __init__(self, art=None, viewGroup=None, title1=None, title2=None, noHistory=False, replaceParent=False, disabledViewModes=None, **kwargs): XMLContainer.__init__(self, art=art, title1=title1, title2=title2, noHistory=noHistory, replaceParent=replaceParent, **kwargs) self.addTest(**testDefaults) if viewGroup is not None: if viewGroup in Plugin.ViewGroups().keys(): self.viewGroup = viewGroup else: PMS.Log( "(Framework) Couldn't assign view group '%s' to a MediaContainer - group doesn't exist" % viewGroup) if type(disabledViewModes).__name__ == "list": dvString = "" for view in disabledViewModes: if view in Plugin.ViewModes: if len(dvString) > 0: dvString += "," dvString += str(Plugin.ViewModes[view]) self.disabledViewModes = dvString
def ToElement(self): if self.__dict__.has_key("contextMenu"): __containerContextMenu = self.contextMenu self.contextMenu = None else: __containerContextMenu = None root = XMLObject.ToElement(self) for item in self.__items__: if item.__dict__.has_key("contextMenu"): __itemContextMenu = item.contextMenu item.contextMenu = None else: __itemContextMenu = None if item.__dict__.has_key("contextKey"): __itemContextKey = item.contextKey item.contextKey = None else: __itemContextKey = None if item.__dict__.has_key("contextArgs"): __itemContextArgs = item.contextArgs item.contextArgs = None else: __itemContextArgs = None if ObjectManager.ObjectHasBase(item, XMLObject): info = ItemInfoRecord() info.title1 = self.__valueOrNone("title1") info.title2 = self.__valueOrNone("title2") info.art = self.__valueOrNone("art") if item.__dict__.has_key("title"): info.itemTitle = item.title elif item.__dict__.has_key("name"): info.itemTitle = item.name else: info.itemTitle = None # Add sender information to functions if ObjectManager.ObjectHasBase(item, Function): item.AddFunctionArguments(sender=info) __itemElement = item.ToElement() # Check if there's a context menu if __itemContextKey: __contextMenu = None if __itemContextMenu: __contextMenu = __itemContextMenu elif __containerContextMenu: __contextMenu = __containerContextMenu if __contextMenu: __itemElement.append( __contextMenu.ToElement(info, __itemContextKey, **__itemContextArgs)) root.append(__itemElement) item.contextMenu = __itemContextMenu item.contextKey = __itemContextKey item.contextArgs = __itemContextArgs root.set("size", str(len(self))) if self.__dict__.has_key("viewGroup"): root.set("viewmode", str(Plugin.ViewGroups()[self.viewGroup]["ViewMode"])) root.set("contenttype", str(Plugin.ViewGroups()[self.viewGroup]["MediaType"])) root.set("identifier", str(Plugin.Identifier)) self.contextMenu = __containerContextMenu return root