Exemplo n.º 1
0
    def set_controls(self):
        """Set up UI controls"""
        # Description Text
        self.description = pyxbmct.TextBox()
        self.placeControl(self.description, 2, 0, columnspan=4)

        # Username label
        self.name_label = pyxbmct.Label('[B]%s[/B]' % i18n('Username:'******'', aspectRatio=2)
        self.placeControl(self.thumb, 1, 15, rowspan=2, columnspan=2)

        # Email Label
        self.email_label = pyxbmct.Label('[B]%s[/B]' % i18n('Email:'),
                                         alignment=1)
        self.placeControl(self.email_label, 2, 3, columnspan=4)
        # Email fade label
        self.email_field = pyxbmct.FadeLabel()
        self.placeControl(self.email_field, 2, 7, columnspan=8)

        # plexpass Label
        self.plexpass_label = pyxbmct.Label('[B]%s[/B]' % i18n('Plex Pass:'******'[B]%s[/B]' % i18n('Joined:'),
                                               alignment=1)
        self.placeControl(self.membersince_label, 4, 3, columnspan=4)
        # Member since fade label
        self.membersince_field = pyxbmct.FadeLabel()
        self.placeControl(self.membersince_field, 4, 7, columnspan=8)

        # Cancel button
        self.cancel_button = pyxbmct.Button(i18n('Exit'))
        self.placeControl(self.cancel_button, 6, 4, columnspan=4, rowspan=2)
        # Cancel button closes window

        # Switch button
        self.switch_button = pyxbmct.Button(i18n('Switch User'))
        self.placeControl(self.switch_button, 6, 8, columnspan=5, rowspan=2)

        # Signout button
        self.signout_button = pyxbmct.Button(i18n('Sign Out'))
        self.placeControl(self.signout_button, 6, 13, columnspan=4, rowspan=2)

        # Submit button to get token
        self.connect(self.cancel_button, self.close)
        self.connect(self.switch_button, lambda: self.switch())  # pylint: disable=unnecessary-lambda
        self.connect(self.signout_button, lambda: self.signout())  # pylint: disable=unnecessary-lambda
Exemplo n.º 2
0
    def __init__(self, context=None, window=None):
        self.title = i18n('Composite Playlist')
        self.description_label = i18n(
            'Generate a playlist from the information below')

        super(CompositePlaylistWindow, self).__init__(self.title)  # pylint: disable=super-with-arguments

        self._context = context
        self.window = window

        self.player = xbmc.Player()

        self.playlist_data = {
            'content': 'tvshows',
            'item_count': 50,
            'servers': [(i18n('All Servers'), None)],
            'source': (i18n('On Deck'), 'on_deck'),
            'shuffle': False
        }

        self._servers = []
        self._sources = [
            (i18n('All'), 'all'),
            (i18n('On Deck'), 'on_deck'),
            (i18n('Recently Added'), 'recent_added'),
            (i18n('Recently Released'), 'recent_released'),
        ]
        self._item_counts = [
            '1', '5', '10', '25', '50', '100', '250', '500', '1000'
        ]

        self.description = pyxbmct.Label(self.description_label, alignment=0)

        self.movies_radio = pyxbmct.RadioButton(self.bold(i18n('Movies')))
        self.tvshows_radio = pyxbmct.RadioButton(self.bold(i18n('TV Shows')))
        self.mixed_radio = pyxbmct.RadioButton(self.bold(i18n('Mixed')))

        self.item_count_label = pyxbmct.Label(self.bold(i18n('Item Count')),
                                              alignment=0)
        self.item_count = pyxbmct.Label(str(self.playlist_data['item_count']),
                                        alignment=1)
        self.item_count_list = pyxbmct.List()

        self.server_label = pyxbmct.Label(self.bold(i18n('Server(s)')),
                                          alignment=0)
        self.server_choice_label = pyxbmct.FadeLabel()
        self.server_list = pyxbmct.List()

        self.source_label = pyxbmct.Label(self.bold(i18n('Source')))
        self.source_choice_label = pyxbmct.FadeLabel()
        self.source_list = pyxbmct.List()

        self.shuffle_radio = pyxbmct.RadioButton(self.bold(i18n('Shuffle')))

        self.cancel_button = pyxbmct.Button(i18n('Cancel'))
        self.play_button = pyxbmct.Button(i18n('Play'))

        self.generated = False
    def set_controls(self):

        self.placeControl(self.select_button, 12, 3, rowspan=50, columnspan=67)
        self.connect(self.select_button, self.selected)

        self.l_video_thumbnail = pyxbmct.Image(
            self.metadata.get('thumbnail', ''))
        self.placeControl(self.l_video_thumbnail,
                          12,
                          3,
                          rowspan=50,
                          columnspan=67)

        self.placeControl(self.spinner_image,
                          49,
                          57,
                          rowspan=10,
                          columnspan=10)

        self.l_video_title = pyxbmct.FadeLabel(font='font30_title', )
        self.placeControl(self.l_video_title, 3, 3, columnspan=190)
        self.l_video_title.addLabel(self.metadata.get('title'))

        self.l_channel_name = pyxbmct.FadeLabel(font='font25_title', )
        self.placeControl(self.l_channel_name, 12, 73, columnspan=95)
        self.l_channel_name.addLabel(self.metadata.get('channel_name'))

        self.l_premiered = pyxbmct.Label(
            self.metadata.get('premiered'),
            font='font20_title',
            alignment=3,
        )
        self.placeControl(self.l_premiered, 12, 157, columnspan=27)

        self.l_video_statistics = pyxbmct.Label(
            '%s %s / %s %s / %s %s' %
            (int_to_shortform_string(
                self.metadata.get('like_count')), self.context.i18n('likes'),
             int_to_shortform_string(self.metadata.get('dislike_count')),
             self.context.i18n('dislikes'),
             int_to_shortform_string(
                 self.metadata.get('view_count')), self.context.i18n('views')),
            font='font20_title',
            alignment=2,
        )
        self.placeControl(self.l_video_statistics, 19, 73, columnspan=122)

        self.l_video_description = pyxbmct.TextBox(font='font10')
        self.l_video_description.setText(self.metadata.get('description'))
        self.placeControl(self.l_video_description,
                          26,
                          73,
                          rowspan=35,
                          columnspan=122)
        self.l_video_description.autoScroll(1000, 5500, 500)
Exemplo n.º 4
0
    def set_info_controls(self, game):
        title_label = pyxbmct.Label(game.name,
                                    alignment=pyxbmct.ALIGN_LEFT,
                                    font='XLarge',
                                    textColor=COLOR_HEADING)
        self.placeControl(title_label, 0, 0, 2, 3)

        image_path = game.get_selected_poster()
        if image_path is None:
            image_path = ''
        self.image = pyxbmct.Image(image_path)
        self.placeControl(self.image, 2, 0, 6, 1)

        genre_label = pyxbmct.Label('Genre',
                                    alignment=pyxbmct.ALIGN_LEFT,
                                    font='Med',
                                    textColor=COLOR_DETAILS)
        self.placeControl(genre_label, 2, 2)
        self.genre = pyxbmct.FadeLabel(_alignment=pyxbmct.ALIGN_LEFT,
                                       font='Med')
        self.placeControl(self.genre, 2, 3, columnspan=3)
        self.genre.addLabel(game.get_genre_as_string())

        year_label = pyxbmct.Label('Year',
                                   alignment=pyxbmct.ALIGN_LEFT,
                                   font='Med',
                                   textColor=COLOR_DETAILS)
        self.placeControl(year_label, 3, 2)
        self.year = pyxbmct.Label(game.year,
                                  alignment=pyxbmct.ALIGN_LEFT,
                                  font='Med')
        self.placeControl(self.year, 3, 3)

        self.plot = pyxbmct.TextBox()
        self.placeControl(self.plot, 4, 2, 6, 3)
        self.plot.setText(game.plot)
        self.plot.autoScroll(delay=5000, time=2000, repeat=10000)