• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python xbmcaddon.Addon类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中xbmcaddon.Addon的典型用法代码示例。如果您正苦于以下问题:Python Addon类的具体用法?Python Addon怎么用?Python Addon使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了Addon类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: onInit

    def onInit( self ):
        self.getControl( 1 ).setLabel( "XBMC Intro Movie" )
        try:
            self.control_list = self.getControl( 6 )
            self.getControl( 5 ).setNavigation( self.control_list, self.control_list, self.control_list, self.control_list )
            self.getControl( 3 ).setEnabled( 0 )
            self.getControl( 3 ).setVisible( 0 )
        except:
            self.control_list = self.getControl( 3 )
            print_exc()

        try: self.getControl( 5 ).setLabel( "Cancel" )
        except: print_exc()

        intros_dir   = os.path.join( Addon.getAddonInfo( "path" ), "resources", "intros" )
        previews_dir = os.path.join( Addon.getAddonInfo( "path" ), "resources", "previews" )

        listitems = []
        cur = Addon.getSetting( "intro" )
        for intro in os.listdir( intros_dir ):
            name, ext = os.path.splitext( intro )
            listitem = xbmcgui.ListItem( intro, "", "DefaultVideo.png" )
            if cur == intro: listitem.setProperty( "Addon.Summary", "Current Intro" )
            preview = os.path.join( previews_dir, name + ".jpg" )
            if xbmcvfs.exists( preview ): listitem.setIconImage( preview )
            listitems.append( listitem )

        listitem = xbmcgui.ListItem( "Random", "", "DefaultAddonVisualization.png" )
        if cur == "Random": listitem.setProperty( "Addon.Summary", "Current Intro" )
        listitems.append( listitem )

        self.control_list.reset()
        self.control_list.addItems( listitems )
        self.setFocus( self.control_list )
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:34,代码来源:settings.py


示例2: install_repo

 def install_repo(self, repoName, repoURL):
     """
     Install a repository in XBMC
     -> will need XBMC restart in order to have the new Repo taken in account by XBMC
     """
     continueInstall = True
     dialogYesNo = xbmcgui.Dialog()
     if dialogYesNo.yesno(repoName, Language( 30100 ), Language( 30101 )):           
         if continueInstall:
             ri = RepoInstaller()
                 
             newRepo = ri.download( repoURL )
             print newRepo
     
             if newRepo:
                 fp, ok = ri.install( newRepo )
                 print "---"
                 print fp, ok
                 xbmc.executebuiltin( 'UpdateLocalAddons' )
                 xbmc.sleep( 100 )
                 xbmc.executebuiltin( 'UpdateAddonRepos' )
                 xbmc.sleep( 100 )
                 try:
                     _N_ = Addon( os.path.basename( fp ) )
                     print "Addon %s Installed"%s_N_
                     ri.notification( _N_.getAddonInfo( "name" ), Language( 24065 ).encode( "utf-8" ), 5000, _N_.getAddonInfo( "icon" ) )
                 except:
                     xbmcgui.Dialog().ok( ADDON.getAddonInfo( "name" ), Language( 30007 ) + " : " + repoName, Language( 30010 ) )
     self._end_of_directory( True, update=False )
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:29,代码来源:default.py


示例3: createComments

    def createComments(self):
        comments = [
            self.dom.createComment(
                "Language file translated with Add-on XBMC Translator " + self.main.Addon.getAddonInfo("version")
            )
        ]

        username = self.main.Addon.getSetting("username")
        if username:
            comments += [self.dom.createComment("Translator: " + username)]
        usermail = self.main.Addon.getSetting("usermail")
        if usermail:
            comments += [self.dom.createComment("Email: " + usermail)]

        version_based = "version " + getInfoLabel("System.BuildVersion")
        if self.main.DefaultFolderLanguage.rstrip("/") != self.main.FolderLanguage:
            from xbmcaddon import Addon

            # get addon version
            apath = translatePath(self.main.FolderLanguage.replace("/resources", "").replace("/language", ""))
            addon = Addon(os.path.basename(apath.rstrip(os.sep)))
            version_based = "add-on %s version %s" % (addon.getAddonInfo("name"), addon.getAddonInfo("version"))
        comments += [
            self.dom.createComment("Date of translation: " + strftime("%x %X")),
            self.dom.createComment("Based on english strings " + version_based),
        ]

        refChild = self.dom.documentElement
        for comment in comments:
            self.dom.insertBefore(comment, refChild)
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:30,代码来源:LanguageParser.py


示例4: getWeatherSettings

def getWeatherSettings( loc_index="1" ):
    try:
        location = Addon.getSetting( 'areacode%s' % loc_index )
        SetProperty( "Location", location )
        for i in range( 1, 4 ):
            SetProperty( "Location%i" % i, Addon.getSetting( "areacode%i" % i ) )
        SetProperty( "Locations", str( i ) )
        Addon.setSetting( 'currentlocation', loc_index )
    except:
        print_exc()
    return location, loc_index
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:11,代码来源:weather.py


示例5: onClick

    def onClick( self, controlID ):
        try:
            if controlID in [ 3, 6 ]:
                intro = self.control_list.getSelectedItem().getLabel()
                if intro: Addon.setSetting( "intro", intro )
                self._close_dialog()

            elif controlID == 5:
                self._close_dialog()
        except:
            print_exc()
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:11,代码来源:settings.py


示例6: service

def service():
    from xml.dom.minidom import parseString
    has_splash = "true"
    dom = None
    try:
        dom = parseString( open( xbmc.translatePath( "special://userdata/advancedsettings.xml" ) ).read() )
        has_splash = dom.getElementsByTagName( "splash" )[ 0 ].firstChild.nodeValue
    except:
        print_exc()
    if dom: dom.unlink()
    if Addon.getSetting( "splash" ) != has_splash:
        Addon.setSetting( "splash", has_splash )
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:12,代码来源:settings.py


示例7: compatibility

def compatibility():
    from xbmcaddon import Addon
    Addon = Addon( "weather.google" )
    # get old settings and if exists delete data xml 
    if Addon.getSetting( 'risingsun_city' ) or Addon.getSetting( 'risingsun1_city' ):
        icon = Addon.getAddonInfo( "icon" )
        xml  = Addon.getAddonInfo( 'profile' ) + 'settings.xml'
        del Addon
        import xbmcvfs
        xbmcvfs.delete( xml )
        if not xbmcvfs.exists( xml ):
            #notifie user
            xbmc.executebuiltin( "XBMC.Notification(Weather Google,Your settings have been renewed! Sorry!,10000,%s)" % icon )
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:13,代码来源:default.py


示例8: update_service

def update_service():
    # this read the settings
    settings = tools.Settings()
    # define the browser
    browser = tools.Browser()
    # Begin Service
    if settings.service == "true":
        if settings.time_noti > 0:
            settings.dialog.notification(
                settings.name_provider, "Checking Online...", settings.icon, settings.time_noti
            )
        quality = Addon().getSetting("quality")
        sort = Addon().getSetting("sort")
        url_search = "%s/api/v2/list_movies.json?limit=50&quality=%s&sort_by=%s&order_by=desc" % (
            settings.url_address,
            quality,
            sort.lower().replace(" ", "_"),
        )
        settings.log(url_search)
        title = []
        magnet = []
        for page in range(settings.pages):
            if settings.time_noti > 0:
                settings.dialog.notification(
                    settings.name_provider,
                    "Checking Online, Page %s..." % str(page + 1),
                    settings.icon,
                    settings.time_noti,
                )
            if browser.open(url_search):
                data = json.loads(browser.content)
                for movie in data["data"]["movies"]:
                    if movie.has_key("torrents"):
                        for torrent in movie["torrents"]:
                            if torrent["quality"] in quality:
                                title.append(movie["title_long"])
                                magnet.append("magnet:?xt=urn:btih:%s" % torrent["hash"])
        if len(title) > 0:
            tools.integration(
                filename=title,
                magnet=magnet,
                type_list="MOVIE",
                folder=settings.movie_folder,
                silence=True,
                name_provider=settings.name_provider,
            )
        else:
            settings.log("[%s] >>>>>>>%s<<<<<<<" % (settings.name_provider_clean, browser.status))
            settings.dialog.notification(settings.name_provider, browser.status, settings.icon, 1000)
    del settings
    del browser
开发者ID:kusik,项目名称:Unofficial-Pulsar-Repo-Mirror,代码行数:51,代码来源:service.py


示例9: getSettings

    def getSettings( self, id="repository.xbmc.builds" ):
        settings = {}
        try:
            from xbmcaddon import Addon
            addon = Addon( id )
            usetempdir = addon.getSetting( "usetempdir" ) == "true" 
            browsedir  = addon.getSetting( "browsedir" ) == "true" 
            settings[ "downloadpath" ] = ( addon.getSetting( "downloadpath" ), "" )[ browsedir ] 
            if not usetempdir:
                #browse for save dir
                if not settings[ "downloadpath" ] or not os.path.exists( settings[ "downloadpath" ] ):
                    dpath = xbmc.translatePath( self.get_browse_dialog( heading="Recordings folder" ) )
                    if dpath and os.path.exists( dpath ):
                        settings[ "downloadpath" ] = dpath
                        addon.setSetting( "downloadpath", settings[ "downloadpath" ] )
                    else:
                        settings[ "downloadpath" ] = ""
            settings[ "downloadinbackground" ] = addon.getSetting( "downloadinbackground" ) == "true"
            settings[ "reportpercent" ] = int( "0|5|10|20|25|50|100".split( "|" )[ int( addon.getSetting( "reportpercent" ) ) ] )

            PROFILE_PATH = xbmc.translatePath( addon.getAddonInfo( "profile" ) )
            settings[ "iddl_data" ] = os.path.join( PROFILE_PATH, "iddl_data" )
            if not os.path.exists( settings[ "iddl_data" ] ): os.makedirs( settings[ "iddl_data" ] )
        except:
            pass
        return settings
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:26,代码来源:downloader.py


示例10: update_service

def update_service():
    # this read the settings
    settings = tools.Settings()
    # define the browser
    browser = tools.Browser()
    #Begin Service
    if settings.service == 'true':
        if settings.time_noti > 0: settings.dialog.notification(settings.name_provider, 'Checking Online...', settings.icon, settings.time_noti)
        quality = Addon().getSetting('quality')
        text = '&minimum_rating=%s' % Addon().getSetting('minimum')
        sort = Addon().getSetting('sort')
        url_search = "%s/api/v2/list_movies.json?limit=50&quality=%s&sort_by=%s&order_by=desc" % (settings.url_address, quality, sort.lower().replace(' ', '_'))
        settings.log(url_search)
        title = []
        magnet = []
        for page in range(settings.pages):
            if settings.time_noti > 0: settings.dialog.notification(settings.name_provider, 'Checking Online, Page %s...'
                                                                    % str(page + 1), settings.icon, settings.time_noti)
            if browser.open(url_search):
                data = json.loads(browser.content)
                for movie in data['data']['movies']:
                    if movie.has_key('torrents'):
                        for torrent in movie['torrents']:
                            if torrent['quality'] in quality:
                                title.append(movie['title_long'])
                                magnet.append('magnet:?xt=urn:btih:%s' % torrent['hash'])
        if len(title) > 0:
            tools.integration(filename=title, magnet=magnet, type_list='MOVIE', folder=settings.movie_folder, silence=True, name_provider=settings.name_provider)
        else:
            settings.log('[%s] >>>>>>>%s<<<<<<<' % (settings.name_provider_clean, browser.status))
            settings.dialog.notification(settings.name_provider, browser.status, settings.icon, 1000)
    del settings
    del browser
开发者ID:Inter95,项目名称:tutvguia,代码行数:33,代码来源:service.py


示例11: createComments

    def createComments(self):
        version_based = "version " + xbmc.getInfoLabel("System.BuildVersion")
        if self.main.DefaultFolderLanguage.rstrip("/") != self.main.FolderLanguage:
            from xbmcaddon import Addon

            # get addon version
            apath = xbmc.translatePath(self.main.FolderLanguage.replace("/resources", "").replace("/language", ""))
            addon = Addon(os.path.basename(apath.rstrip(os.sep)))
            version_based = "add-on %s version %s" % (addon.getAddonInfo("name"), addon.getAddonInfo("version"))

        return ET.getComments(
            version_based,
            self.main.Addon.getSetting("username"),
            self.main.Addon.getSetting("usermail"),
            self.main.Addon.getAddonInfo("version"),
        )
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:16,代码来源:Language.py


示例12: setContainerProperties

 def setContainerProperties( self ):
     self.setProperty( "IsModified", ( "", "Language file has been changed!" )[ self.IsModified ] )
     self.setProperty( "CurrentLanguage", self.CurrentLanguage )
     self.setProperty( "FolderLanguage", self.FolderLanguage )
     self.setProperty( "CurrentEnglishString", "" )
     self.Addon = Addon( AddonId )
     self.setProperty( "ExtraKeyboard_TopOrBottom", ( "top", "bottom" )[ int( self.Addon.getSetting( "ExtraKB" ) ) ] )
开发者ID:djidji88,项目名称:passion-xbmc,代码行数:7,代码来源:translator.py


示例13: __init__

    def __init__( self, *args, **kwargs ):
        self.RestartXBMC_ReloadLanguage = False
        self.IsModified = False
        self.googleTrans = False
        self.listitems = []

        self.Addon = Addon( AddonId )
        self._get_settings()
开发者ID:djidji88,项目名称:passion-xbmc,代码行数:8,代码来源:translator.py


示例14: start_alarm

def start_alarm():
    if not WEATHER_WINDOW:
        return
    try:
        # start next time to refresh images. 60 minutes (skinner for force refresh use "CancelAlarm(moon_earth_phases,true)")
        command = "RunScript(%s)" % os.path.join( Addon.getAddonInfo( "path" ), "resources", "lib", "moon_and_earth_phases.py" )
        xbmc.executebuiltin( "AlarmClock(moon_earth_phases,%s,60,true)" % command )
    except:
        print_exc()
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:9,代码来源:moon_and_earth_phases.py


示例15: Main

def Main():
    try:
        url = sys.argv[2]
        # notify user
        notification(Addon.getAddonInfo("name"), url)
        # launch url
        launchUrl(url)
    except:
        print_exc()
开发者ID:fmronan,项目名称:skin.glassnox,代码行数:9,代码来源:xbmcwebbrowser.py


示例16: run

    def run(self):
        try:
            play_sfx = False
            # NB: xbmc.abortRequested not work correctly with threading.Thread
            while not xbmc.abortRequested:
                try:
                    self.getWindow()
                    if self.sprite != self.addon.getSetting("sprite"):
                        self.getMedias()

                    if not xbmc.getCondVisibility("Window.IsActive(Pointer.xml)"):
                        time.sleep(0.3)
                        continue

                    pos = xbmcgui.getMousePosition()

                    if ((pos[0] - self.offsetx) == self.current_pos[0]) and (pos[1] == self.current_pos[1]):
                        self.control.setImage(self.sprites["wait"])
                        if play_sfx:
                            if self.sprites["sfx"] and self.addon.getSetting("playsfx") == "true":
                                xbmc.playSFX(self.sprites["sfx"])
                            play_sfx = False
                    else:
                        play_sfx = True
                        if pos[0] < self.current_pos[0]:
                            self.control.setImage(self.sprites["left"])
                        else:
                            self.control.setImage(self.sprites["right"])

                        # start = "%i,%i" % self.current_pos
                        # end   = "%i,%i" % ( pos[ 0 ]-self.offsetx, pos[ 1 ] )
                        ##self.speed = str( self.current_pos[ 0 ] - pos[ 0 ] ).strip( "-" )
                        # self.control.setAnimations( [ ( 'conditional', 'condition=true effect=slide start=%s end=%s time=%s' % ( start, end, self.speed ) ) ] )
                        self.setAnimation(pos)

                        self.current_pos = (pos[0] - self.offsetx, pos[1])
                        # self.control.setPosition( *self.current_pos )

                    if xbmc.getCondVisibility("Window.IsActive(addonsettings)"):
                        self.reload_addon = True
                    elif self.reload_addon:
                        self.addon = Addon("script.mouse.tracker.service")
                        self.speed = self.addon.getSetting("speed").split(".")[0]
                        self.reload_addon = False
                except SystemExit:
                    break
                except:
                    print_exc()

                time.sleep(float(int(self.speed)) * 0.001)
        except SystemExit:
            pass
        except:
            print_exc()
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:54,代码来源:default.py


示例17: SetProperties

def SetProperties(loc_index=None):
    in_broad_daylight = True
    try:
        if loc_index is None:
            loc_index = Addon.getSetting("currentlocation")
        ID = Addon.getSetting("areacode%s_code" % loc_index)
        i_unit = int(Addon.getSetting("dist_unit"))

        sun = get_sun(ID, i_unit)
        in_broad_daylight = sun.get("In.Broad.Daylight") == "true"
        for key, value in sun.items():
            SetProperty(key, value)

        for key, value in get_moon(ID, i_unit).items():
            SetProperty(key, value)

        SetProperty("Weather.ExtraIsFetched", "true")
    except:
        print_exc()
    return in_broad_daylight
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:20,代码来源:timeanddate.py


示例18: onClick

 def onClick(self, controlId):
     if controlId == schedulesListBoxId:
         self.goEditSchedule()
     elif controlId == refreshButtonId:
         self.xnewa.cleanCache('scheduledRecordings.p')
         self.render()
     elif controlId == sortButton.Id:
         order = [smartUTF8(__language__(30011)),smartUTF8(__language__(30012)),smartUTF8(__language__(30042))]
         ret = xbmcgui.Dialog().select(smartUTF8(__language__(30122)), order);
         if ret != -1:
             if ret == 0:
                 self.sortkey = 'title'
             elif ret == 1:
                 self.sortkey = 'channel'
             elif ret == 2:
                 self.sortkey = 'priority'
             if self.sortkey != self.settings.XNEWA_SORT_RECURRING:
                 self.settings.XNEWA_SORT_RECURRING = self.sortkey
                 addon = Addon()
                 addon.setSetting(id='recurringSort',value=self.sortkey)
             self.render()
开发者ID:emveepee,项目名称:X-NEWA,代码行数:21,代码来源:schedules.py


示例19: __init__

    def __init__(self, plugin_handle, base_url):

        self.addon = Addon()
        self.data_path = xbmc.translatePath(self.addon.getAddonInfo('profile'))
        self.cookie_path = self.data_path + 'COOKIE'
        self.plugin = self.addon.getAddonInfo('name')
        self.verb_log = self.addon.getSetting('logging') == 'true'
        self.plugin_handle = plugin_handle
        self.base_url = base_url
        self.version = self.addon.getAddonInfo('version')

        xbmcvfs.mkdir(path=self.data_path)
开发者ID:dumpster-of-things,项目名称:plugin.video.netflix,代码行数:12,代码来源:NetflixCommon.py


示例20: Main

def Main( settingID=None ):
    setfocusid = 200
    if settingID == "use_intro_movie":
        xbmc.executebuiltin( "Skin.ToggleSetting(Use_Intro_Movie)" )
        xbmc.sleep( 100 )
        setting = ( "false", "true" )[ xbmc.getCondVisibility( "Skin.HasSetting(Use_Intro_Movie" ) ]
        Addon.setSetting( "use_intro_movie", setting )
        xbmc.sleep( 100 )
        setfocusid = ( 102, 103 )[ setting == "false" ]

    elif settingID == "splash":
        toggle = toggle_splash( Addon.getSetting( "splash" ) )
        Addon.setSetting( "splash", toggle )
        xbmc.sleep( 500 )
        setfocusid = ( 110, 111 )[ toggle == "false" ]

    elif settingID == "intro":
        w = DialogSelect( "DialogSelect.xml", Addon.getAddonInfo( "path" ) )
        w.doModal()
        del w
        setfocusid = 104

    xbmc.executebuiltin( "Addon.openSettings(script.xbmc.intro.movie)" )
    xbmc.executebuiltin( "SetFocus(200)" )
    xbmc.executebuiltin( "SetFocus(%i)" % setfocusid )
开发者ID:Quihico,项目名称:passion-xbmc,代码行数:25,代码来源:settings.py



注:本文中的xbmcaddon.Addon类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python xbmcgui.getCurrentWindowDialogId函数代码示例发布时间:2022-05-26
下一篇:
Python xbmc.validatePath函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap