예제 #1
0
def _handleVideoItem(listItem):
    mc.ShowDialogWait()
    machineIdentifier = listItem.GetProperty("machineidentifier")
    #Create a new list item with the additional video data
    server = manager.getServer(listItem.GetProperty("machineIdentifier"))

    #Get additional meta data for item to play
    li = server.getVideoItem(listItem)
    listItems = mc.ListItems()
    listItems.append(li)

    #Load any subtitles
    subItems = server.getSubtitles(li.GetPath())

    #Show play window
    mc.ActivateWindow(PLAY_DIALOG_ID)
    mc.GetWindow(PLAY_DIALOG_ID).GetList(PLAY_DIALOG_LIST_ID).SetItems(
        listItems)
    mc.GetWindow(PLAY_DIALOG_ID).GetList(310).SetItems(subItems)
    mc.HideDialogWait()
예제 #2
0
def episodes(url, show):
    mc.ShowDialogWait()

    list = mc.ListItems()

    episodes = playkanalerna.getEpisodes(url)
    for episode in episodes:
        item = mc.ListItem(mc.ListItem.MEDIA_VIDEO_CLIP)
        item.SetLabel(str(episode['name'].encode('utf-8', 'ignore')))
        item.SetPath(
            'flash://%s/src=%s&bx-jsactions=%s' %
            ("video", quote(str(episode['url'].encode('utf-8', 'ignore'))),
             quote('http://boxee.jakob.edge.vinnovera.se/tv3play.js')))
        if episode['image'] is not None:
            item.SetThumbnail(str(episode['image'].encode('utf-8', 'ignore')))
        list.append(item)

    mc.ActivateWindow(14002)
    window = mc.GetWindow(14002)
    window.GetList(51).SetItems(list)
    window.GetLabel(30).SetLabel(show)

    mc.HideDialogWait()
예제 #3
0
    'dialog-search-options': 15150,
    'dialog-text': 15160,
    'dialog-subtitle': 15170,
    'dialog-settings': 15190,
    'dialog-options': 15200,
    'dialog-image': 15210,
}
WINDOWS_STACK = []

sys.path.append(os.path.join(ROOT, 'libs'))
sys.path.append(os.path.join(ROOT, 'external'))

import mc
import xbmc
import re

# Init App
if (__name__ == "__main__"):
    mc.ActivateWindow(15000)
    mc.ActivateWindow(15110)
    mc.ActivateWindow(15100)

    import navi

    if len(mc.GetWindow(15000).GetList(60).GetItems()) < 1:
        app = navi.Navi_APP()
    else:
        app.api.download.active = False
        app.gui.HideDialog('dialog-wait')
    app.gui.HideDialog('dialog-splash')
	def OnMoreInfoForItem(self, item):
		mc.ActivateWindow(self.PLOT_WINDOW_ID)
예제 #5
0
import mc
import os, sys
__cwd__ = os.getcwd().replace(";", "")
sys.path.append(os.path.join(__cwd__, 'libs'))
sys.path.append(os.path.join(__cwd__, 'external'))

import tracker
myTracker = tracker.Tracker('UA-19866820-2')

if (__name__ == "__main__"):
    mc.ActivateWindow(14000)

    import app
    app.down(id=55, path="home", push=False)
    myTracker.trackView('home')
예제 #6
0
    def onClick(self, controlID):
 
        if controlID == 90:
		if mc.GetPlayer().IsPlayingAudio(): mc.ActivateWindow(12006)
		elif mc.GetPlayer().IsPlayingVideo(): mc.ActivateWindow(12005)

        if controlID == 1004:	
		mc.ActivateWindow(14000)

	if controlID == 1005:
		mc.ActivateWindow(14001)

	if controlID == 1006:
		mc.ActivateWindow(14002)

	if controlID == 1007:
		mc.ActivateWindow(14000)

	if controlID == 121:
		mlb.loadFavorites()

	if controlID == 122:
		mlb.updateArchiveSpoiler()
		mc.GetActiveWindow().PushState()
		mc.GetActiveWindow().GetControl(5000).SetVisible(True)
		mc.GetActiveWindow().GetControl(5050).SetFocus()

	if controlID == 123:
		mc.GetActiveWindow().PushState()
		mc.GetActiveWindow().GetControl(5600).SetVisible(True)
		mc.GetActiveWindow().GetControl(5600).SetFocus()

	
	if controlID == 5060:
		mc.GetActiveWindow().PopState()

	if controlID == 5051:
		mlb.saveArchiveSpoiler('F')
		mc.GetActiveWindow().PopState()

	if controlID == 5052:
		mlb.saveArchiveSpoiler('T')
		mc.GetActiveWindow().PopState()

	if controlID == 5660:
		mc.GetActiveWindow().PopState()

	if controlID == 5651:
		mc.GetActiveWindow().PopState()

	if controlID == 5652:
		mc.GetActiveWindow().PopState()

	if controlID == 5653:
		mc.GetActiveWindow().PopState()

	if controlID == 200:
		mlb.selectFavorite(200)

	if controlID == 202:
		mlb.selectFavorite(202)

	if controlID == 201:
		mlb.selectFavorite(201)

	if controlID == 203:
		mlb.selectFavorite(203)

	if controlID == 205:
		mlb.selectFavorite(205)

	if controlID == 204:
		mlb.selectFavorite(204)

	if controlID == 3101:
		mlb.saveFavorites()
		mc.GetActiveWindow().PopState()

	if controlID == 3102:
		mc.GetActiveWindow().PopState()
예제 #7
0
def activateWindow(id):
    mc.ActivateWindow(id)
    return mc.GetWindow(id)
예제 #8
0
def loadHome():
    mc.ActivateWindow(getWindowID("home"))
예제 #9
0
def showConnectionWindow():
    mc.ActivateWindow(CONNECT_DIALOG_ID)
예제 #10
0
#--------------------------------------
#--------- Main Config ----------------
id = 'plugin.video.mlbtv'
init = '14000'
windows = {
    '14000': 'main',
    '14001': 'calendar',
    '14003': 'settings',
    '14002': 'standings'
}

#--------------------------------------
#--------- Do not change ----------------
import sys, os
path = os.path.join(os.getcwd().replace(";", ""), 'resources', 'libs')
sys.path.append(path)

import mc
mc.start(id, windows)

if (__name__ == "__main__"):
    mc.ActivateWindow(init)
예제 #11
0
    def onClick(self, controlID):
        """start your code"""
        """end your code"""

        if controlID == 91:
            mlb.prevMonth()

        if controlID == 92:
            mlb.nextMonth()

        if controlID == 90:
            if mc.GetPlayer().IsPlayingAudio(): mc.ActivateWindow(12006)
            elif mc.GetPlayer().IsPlayingVideo(): mc.ActivateWindow(12005)

        if controlID == 1001:
            if mlb.isLoggedIn():
                #mc.GetActiveWindow().ClearStateStack()
                mc.ActivateWindow(14003)
            else:
                mc.ShowDialogNotification(
                    "You must be logged in to make changes to your settings.",
                    "mlb-icon.png")

        if controlID == 1003:
            mc.ActivateWindow(14000)

        if controlID == 121:
            clear = mc.ListItems()
            mc.GetActiveWindow().GetList(4002).SetItems(clear)
            list = mc.GetActiveWindow().GetList(121)
            item = list.GetItem(list.GetFocusedItem())
            if item.GetProperty('today'):
                mc.ActivateWindow(14000)
            elif not item.GetProperty('display') or not item.GetDescription():
                mc.ShowDialogNotification('No games available for this day.',
                                          'mlb-icon.png')
            else:
                date = item.GetPath()
                date = date.split(':')
                games = mlb.getGames(date[0], date[1], date[2])
                if games:
                    mc.GetActiveWindow().PushState()
                    mc.GetActiveWindow().GetList(4002).SetItems(games)
                    mc.GetActiveWindow().GetControl(4000).SetVisible(True)
                    mc.GetActiveWindow().GetList(4002).SetFocusedItem(0)
                    mc.GetActiveWindow().GetControl(4002).SetFocus()
                    mc.GetActiveWindow().GetList(4002).SetFocusedItem(0)
                else:
                    mc.ShowDialogOk(
                        "MLB.TV",
                        "To view MLB Post Season content, please disconnect and reconnect your MLB.TV account at http://boxee.tv/services."
                    )
                    item.Dump()

        if controlID == 4002:
            mlb.playList(4002)

        if controlID == 4003:
            mc.GetActiveWindow().PopState()

        if controlID == 501:
            mlb.playItem(501)
예제 #12
0
import mc



'''
Pre App Load Stuff
'''

#TODO: Add Preload Code (Load video play list & play)



'''
Activate Splash Screen + Main Window
'''
#mc.ActivateWindow(14001)	#Splash Screen
mc.ActivateWindow(14000)	#Main Application Window
#mc.ActivateWindow(14002)	#Main Application Window (With Video)

예제 #13
0
    def action(self, id, list):
        mc.ShowDialogWait()
        listitems = __window__.GetList(list).GetItems()
        action = listitems[id].GetProperty('action')
        action_id = id

        handle_id = __windowlist__.GetFocusedItem()
        listItems = __windowlist__.GetItems()
        try:
            handle = pickle.loads(listItems[handle_id].GetProperty('handle'))
        except:
            handle = ''

        if list == 500:
            __window__.GetControl(50).SetFocus()
            __windowlist__.SetFocusedItem(handle_id)

        print 'Grooveshark::Navigation: ' + action
        self.setStateLabel(action.upper())
        __window__.GetControl(300011).SetVisible(False)

        #MAIN MENU
        if action == 'searchshow':
            self.searchshow()
        elif action == 'popular':
            mc.GetActiveWindow().ClearStateStack(True)
            mc.GetActiveWindow().PushState()
            api = GS_PopularSongs()
            data = api._getPopular(self.gs)
            songs = Songs(data, defaultCoverArt=self.defaultCoverArt)
            [obj, listItems] = songs._list(self, self.gs)
            __windowlist__.SetItems(listItems)
        elif action == 'favorites':
            try:
                mc.GetActiveWindow().ClearStateStack(True)
                mc.GetActiveWindow().PushState()
                api = Favorites(gui=self,
                                gsapi=self.gs,
                                defaultCoverArt=self.defaultCoverArt)
                [obj, listItems] = api._list(self, self.gs)
                __windowlist__.SetItems(listItems)
            except:
                mc.HideDialogWait()
                self.notification(__language__(3027))  #checkpass
                mc.GetActiveWindow().ClearStateStack(True)
                return
        elif action == 'playlist':
            try:
                mc.GetActiveWindow().ClearStateStack(True)
                mc.GetActiveWindow().PushState()
                api = Playlists(gui=self, defaultCoverArt=self.defaultCoverArt)
                [obj, listItems] = api._list(self, self.gs)
                __windowlist__.SetItems(listItems)
            except:
                mc.HideDialogWait()
                self.notification(__language__(3027))  #checkpass
                mc.GetActiveWindow().ClearStateStack(True)
                return
        elif action == 'playing':
            mc.GetActiveWindow().ClearStateStack(True)
            mc.GetActiveWindow().PushState()
            obj, listItems = self.NowPlaying()
            __windowlist__.SetItems(listItems)

        #LEFTMENU
        elif action == 'search':
            self.search()

        elif action == 'settings':
            print 'settings called'
            mc.ActivateWindow(16000)

        elif action == 'exit':
            mc.GetApp().Close()

        #RIGHTMENU
        #navigate down
        elif action == 'down':
            obj = handle.get(action_id)
            mc.GetActiveWindow().PushState()
            [obj, listItems] = obj._list(self, self.gs)
            __windowlist__.SetItems(listItems)

        elif action == 'addSongToPlaylistExec':
            [playlist,
             song] = pickle.loads(listitems[action_id].GetProperty('handle'))
            self.addSongToPlaylistExec(playlist, song)

        #Song Parameters
        elif action == 'play':
            handle.play(handle_id, self.gs)
        elif action == 'queueSong':
            self.queueSong(handle_id, handle)
        elif action == 'queueAllSongs':
            self.queueAllSongs(handle)
        elif action == 'addSongToPlaylist':
            self.addSongToPlaylist(handle_id, handle)
        elif action == 'findSimilarFromSong':
            self.findSimilarFromSong(handle_id, handle)
        elif action == 'songsOnAlbum':
            self.songsOnAlbum(handle_id, handle)

        #album
        elif action == 'playAlbum':
            self.playAlbum(handle_id, handle)
        elif action == 'queueAlbum':
            self.queueAlbum(handle_id, handle)
        elif action == 'saveAlbumAsPlaylist':
            self.saveAlbumAsPlaylist(handle_id, handle)
        elif action == 'findSimilarFromAlbum':
            self.findSimilarFromAlbum(handle_id, handle)

        #PLaylist
        elif action == 'renamePlaylist':
            self.renamePlaylist(handle_id, handle)
        elif action == 'deletePlaylist':
            self.deletePlaylist(handle_id, handle)

        #Artist
        elif action == 'playSongsByArtist':
            self.playSongsByArtist(handle_id, handle)
        elif action == 'findSimilarFromArtist':
            self.findSimilarFromArtist(handle_id, handle)

        mc.HideDialogWait()
예제 #14
0
def playVideo():
    mc.ActivateWindow(14001)
    item = mc.ListItem(mc.ListItem.MEDIA_VIDEO_CLIP)
    item.SetPath('/media/unnamed/1.mp4')
    item.SetContentType('video/mp4')
    mc.GetPlayer().PlayInBackground(item)
예제 #15
0
def sportClicked():
    sportsList = mc.GetActiveWindow().GetList(9000)
    selectedItem = sportsList.GetItem(sportsList.GetFocusedItem())
    mc.ActivateWindow(14001)
    loadSport(int(selectedItem.GetProperty("id")))
	def ShowWithItem(self, playItem):
		self.playItem = playItem
		mc.ActivateWindow(self.WINDOW_ID)