Esempio n. 1
0
 def create_arrow_button(self, bb, name, key, location, label_text,
                         image_area, image_size):
     """ Create Arrow button (e.g. Left, Next Page etc.)
     
     :param bb: bounding box
     :param name: button name
     :param key: keyboard key associated with button
     :param location: image location inside of bounding box
     :param label_text: button label text
     :param image_area: percentage of height occupied by button image        
     :return: arrow button
     """
     s = State()
     s.name = name
     s.bounding_box = bb
     s.keyboard_key = key
     s.bgr = self.config[COLORS][COLOR_DARK_LIGHT]
     s.show_bgr = True
     s.show_img = True
     s.show_label = True
     s.image_location = location
     s.label_location = CENTER
     s.label_text_height = 40
     s.l_name = label_text
     s.auto_update = True
     s.image_size_percent = image_area / 100
     s.text_color_normal = self.config[COLORS][COLOR_BRIGHT]
     s.text_color_selected = self.config[COLORS][COLOR_CONTRAST]
     s.text_color_disabled = self.config[COLORS][COLOR_MEDIUM]
     s.text_color_current = s.text_color_normal
     self.set_state_icons(s)
     if image_size != 100:
         self.resize_image(s, image_size)
     b = Button(self.util, s)
     return b
Esempio n. 2
0
 def get_favorites_button_state(self, button_bounding_box):
     """ Get Favorites button state
     
     :param button_bounding_box: bounding box
     
     :return: favorites button state
     """
     state = State()
     state.bounding_box = button_bounding_box
     scale_factor = 0.45
     state.icon_base = self.image_util.load_icon_main(
         KEY_FAVORITES, button_bounding_box, scale_factor)
     state.icon_selected = self.image_util.load_icon_on(
         KEY_FAVORITES, button_bounding_box, scale_factor)
     state.name = state.l_name = state.genre = KEY_FAVORITES
     state.bgr = self.config[COLORS][COLOR_DARK]
     state.img_x = None
     state.img_y = None
     state.auto_update = True
     state.show_bgr = False
     state.show_img = True
     state.show_label = False
     state.comparator_item = state.name
     state.index = 0
     state.v_align = V_ALIGN_TOP
     state.v_offset = 0
     state.voice_commands = state.name
     return state
Esempio n. 3
0
 def create_toggle_button(self,
                          name,
                          keyboard_key=None,
                          lirc_code=None,
                          bounding_box=None,
                          image_size_percent=100):
     """ Create toggle button (e.g. Shutdown button)
     
     :param name: button name
     :param keyboard_key: keyboard key assigned to the button
     :param lirc_code: LIRC code assigned to the button
     :param bounding_box: button bounding box
     """
     state = State()
     state.name = name
     state.keyboard_key = keyboard_key
     state.lirc_code = lirc_code
     state.bgr = (0, 0, 0)
     state.bounding_box = bounding_box
     state.img_x = None
     state.img_y = None
     state.auto_update = True
     state.image_align_v = V_ALIGN_CENTER
     state.show_bgr = True
     state.show_img = True
     state.image_size_percent = image_size_percent
     self.set_state_icons(state)
     button = ToggleButton(self.util, state)
     return button
Esempio n. 4
0
    def get_icon_bounding_box(self,
                              constr,
                              location,
                              image_area,
                              image_size,
                              padding,
                              show_label=True):
        """ Create icon bounding box

        :param constr: bounding box
        :param location: image location
        :param image_area: image area in bounding box
        :param image_size: image size inside of image area
        :param padding: padding
        """
        s = State()
        s.show_img = True
        s.show_label = show_label
        s.image_location = location
        s.image_area_percent = image_area
        image_size_percent = image_size
        s.bounding_box = constr
        s.padding = padding
        layout = ButtonLayout(s)
        box = layout.image_rectangle
        box.h = (box.h / 100) * image_size_percent

        return box
Esempio n. 5
0
 def create_timer_button(self, name, keyboard_key=None, lirc_code=None, bounding_box=None, image_size_percent=100, label=None):
     """ Create timer button
     
     :param name: button name
     :param keyboard_key: keyboard key assigned to the button
     :param lirc_code: LIRC code assigned to the button
     :param bounding_box: button bounding box
     :param image_size_percent: button icon size in percent
     :param label: button label
     """
     state = State()
     state.name = name
     state.keyboard_key = keyboard_key
     state.lirc_code = lirc_code
     state.bgr = self.config[BACKGROUND][MENU_BGR_COLOR]
     state.bounding_box = bounding_box
     state.img_x = None
     state.img_y = None
     state.auto_update = True
     state.image_align_v = V_ALIGN_CENTER
     state.show_bgr = True
     state.show_img = True
     state.image_size_percent = image_size_percent
     self.set_state_icons(state)
     button = Button(self.util, state)
     return button
Esempio n. 6
0
    def get_menu_button_layout(self, d):
        """ Return menu button layout
        
        :param d: dictionary with menu button flags
        
        :return: menu button layout
        """
        s = State()
        s.show_img = True
        s.show_label = True
        button_w = int(self.menu_layout.w / d[1])
        button_h = int(self.menu_layout.h / d[0])
        label_padding = 2
        image_padding = 4
        try:
            self.show_author = d[2]
        except:
            self.show_author = False

        try:
            self.show_genre = d[3]
        except:
            self.show_genre = False

        s.bounding_box = Rect(0, 0, button_w, button_h)
        return MultiLineButtonLayout(s, label_padding, image_padding)
Esempio n. 7
0
    def create_file_button(self, bb, action=None):
        """ Create default audio file button
        
        :param bb: bounding box
        :param action: button event listener
        
        :return: default audio file button
        """
        state = State()

        state.icon_base = self.image_util.get_audio_file_icon("", bb)
        state.scaled = False
        state.name = "cd"
        state.keyboard_key = kbd_keys[KEY_SELECT]
        state.bounding_box = bb
        state.img_x = bb.x
        state.img_y = bb.y
        state.auto_update = False
        state.show_bgr = False
        state.show_img = True
        state.image_align_v = V_ALIGN_CENTER
        state.source = FILE_BUTTON
        button = Button(self.util, state)
        button.add_release_listener(action)
        return button
Esempio n. 8
0
 def create_image_button(self, name, action=None, keyboard_key=None, lirc_code=None, bounding_box=None, 
                         bgr=(0, 0, 0), x_margin_percent=None, resizable=True, image_size_percent=100, source=None, selected=True):
     """ Create image button
      
     :param name: button name
     :param action: action listener
     :param keyboard_key: keyboard key assigned to the button
     :param lirc_code: LIRC code assigned to the button
     :param bounding_box: button bounding box
     :param bgr: button background color
     :param x_margin_percent: X margin for the button
     :param resizable: flag defining if button can be resized, True - resizable, False - non-resizable
     """
     state = State()
     state.name = name
     state.bounding_box = bounding_box
     state.bgr = bgr
     state.keyboard_key = keyboard_key
     state.lirc_code = lirc_code
     state.img_x = None
     state.img_y = None
     state.auto_update = True
     state.show_bgr = True
     state.show_img = True
     state.image_align_v = V_ALIGN_CENTER
     state.x_margin_percent = x_margin_percent
     state.resizable = resizable
     state.source = source
     state.image_size_percent = image_size_percent / 100.0
     self.set_state_icons(state, selected)
     button = Button(self.util, state)
     if action:
         button.add_release_listener(action)
     return button
Esempio n. 9
0
 def create_image_button(self, name, action=None, keyboard_key=None, lirc_code=None, bounding_box=None, bgr=(0, 0, 0), x_margin_percent=None, resizable=True):
     """ Create image button
     
     :param name: button name
     :param action: action listener
     :param keyboard_key: keyboard key assigned to the button
     :param lirc_code: LIRC code assigned to the button
     :param bounding_box: button bounding box
     :param bgr: button background color
     :param x_margin_percent: X margin for the button
     :param resizable: flag defining if button can be resized, True - resizable, False - non-resizable
     """
     state = State()
     state.name = name
     state.bounding_box = bounding_box
     state.bgr = bgr
     state.keyboard_key = keyboard_key
     state.lirc_code = lirc_code
     state.img_x = None
     state.img_y = None
     state.auto_update = True
     state.show_bgr = True
     state.show_img = True
     state.image_align_v = V_ALIGN_CENTER
     state.x_margin_percent = x_margin_percent
     state.resizable = resizable
     self.set_state_icons(state)
     button = Button(self.util, state)
     if action:
         button.add_release_listener(action)
     return button
Esempio n. 10
0
 def create_arrow_button(self, bb, name, key, location, label_text, image_area=40):
     """ Create Arrow button (e.g. Left, Next Page etc.)
     
     :param bb: bounding box
     :param name: button name
     :param key: keyboard key associated with button
     :param location: image location inside of bounding box
     :param label_text: button label text
     :param image_area: percentage of height occupied by button image
     
     :return: arrow button
     """
     s = State()
     s.name = name
     s.bounding_box = bb
     s.keyboard_key = key
     s.bgr = self.config[COLORS][COLOR_DARK]
     s.show_bgr = True
     s.show_img = True
     s.show_label = True
     s.image_location = location
     s.label_location = CENTER
     s.image_area_percent = image_area
     s.label_text_height = 44
     s.l_name = label_text
     s.auto_update = True
     s.text_color_normal = self.config[COLORS][COLOR_BRIGHT]
     s.text_color_selected = self.config[COLORS][COLOR_CONTRAST]
     s.text_color_disabled = self.config[COLORS][COLOR_MEDIUM]
     s.text_color_current = s.text_color_normal
     self.set_state_icons(s)
     b = Button(self.util, s)
     return b
Esempio n. 11
0
    def create_station_button(self, s, bb, action=None):
        """ Create station button

        :param s: button state
        :param bb: bounding box
        :param action: event listener

        :return: station logo button
        """
        state = State()
        state.icon_base = s.icon_base
        state.index_in_page = s.index_in_page
        state.index = s.index
        state.genre = s.genre
        state.scaled = getattr(s, "scaled", False)
        state.icon_base_scaled = s.icon_base_scaled
        state.name = "station_menu." + s.name
        state.l_name = s.l_name
        state.url = s.url
        state.keyboard_key = kbd_keys[KEY_SELECT]
        state.bounding_box = bb
        state.img_x = bb.x
        state.img_y = bb.y
        state.auto_update = False
        state.show_bgr = True
        state.show_img = True
        state.image_align_v = V_ALIGN_BOTTOM
        button = Button(self.util, state)
        button.add_release_listener(action)
        return button
Esempio n. 12
0
 def create_station_button(self, s, bb, action=None):
     """ Create station button
     
     :param s: button state
     :param bb: bounding box
     :param action: event listener
     
     :return: station logo button
     """
     state = State()
     state.icon_base = s.icon_base
     state.index_in_page = s.index_in_page
     state.index = s.index
     state.scaled = getattr(s, "scaled", False)
     state.icon_base_scaled = s.icon_base_scaled
     state.name = "station_menu." + s.name
     state.l_name = s.l_name
     state.url = s.url
     state.keyboard_key = kbd_keys[KEY_SELECT]
     state.bounding_box = bb
     state.img_x = bb.x
     state.img_y = bb.y
     state.auto_update = False
     state.show_bgr = True
     state.show_img = True
     state.image_align_v = V_ALIGN_BOTTOM
     button = Button(self.util, state)
     button.add_release_listener(action)
     return button        
Esempio n. 13
0
    def create_play_pause_button(self, bb, action):
        """ Create Play/Pause button
        
        :param bb: bounding box
        :param action: event listener
        
        :return: play/pause button
        """
        states = []

        pause_state = State()
        pause_state.name = "pause"
        pause_state.bounding_box = bb
        pause_state.bgr = (0, 0, 0)
        pause_state.keyboard_key = kbd_keys[KEY_PLAY_PAUSE]
        pause_state.action = action
        pause_state.img_x = None
        pause_state.img_y = None
        pause_state.auto_update = True
        pause_state.image_align_v = V_ALIGN_CENTER
        pause_state.show_bgr = True
        pause_state.show_img = True
        pause_state.image_size_percent = 0.36

        play_state = State()
        play_state.name = "play"
        play_state.bounding_box = bb
        play_state.bgr = (0, 0, 0)
        play_state.keyboard_key = kbd_keys[KEY_PLAY_PAUSE]
        play_state.action = action
        play_state.img_x = None
        play_state.img_y = None
        play_state.auto_update = True
        play_state.image_align_v = V_ALIGN_CENTER
        play_state.show_bgr = True
        play_state.show_img = True
        play_state.image_size_percent = 0.36

        if self.config[PLAYER_SETTINGS][PAUSE]:
            states.append(play_state)
            states.append(pause_state)
        else:
            states.append(pause_state)
            states.append(play_state)

        return self.create_multi_state_button(states)
Esempio n. 14
0
 def create_play_pause_button(self, bb, action):
     """ Create Play/Pause button
     
     :param bb: bounding box
     :param action: event listener
     
     :return: play/pause button
     """
     states = []
     bgr = self.config[BACKGROUND][MENU_BGR_COLOR]
     
     pause_state = State()
     pause_state.name = "pause"
     pause_state.bounding_box = bb
     pause_state.bgr = bgr
     pause_state.keyboard_key = kbd_keys[KEY_PLAY_PAUSE]
     pause_state.action = action
     pause_state.img_x = None
     pause_state.img_y = None
     pause_state.auto_update = True
     pause_state.image_align_v = V_ALIGN_CENTER
     pause_state.show_bgr = True
     pause_state.show_img = True
     pause_state.image_size_percent = 0.36
     pause_state.rest_commands = ["playpause"]
     
     play_state = State()
     play_state.name = "play"
     play_state.bounding_box = bb
     play_state.bgr = bgr
     play_state.keyboard_key = kbd_keys[KEY_PLAY_PAUSE]
     play_state.action = action
     play_state.img_x = None
     play_state.img_y = None
     play_state.auto_update = True
     play_state.image_align_v = V_ALIGN_CENTER
     play_state.show_bgr = True
     play_state.show_img = True
     play_state.image_size_percent = 0.36
     play_state.rest_commands = ["playpause"]
     
     states.append(pause_state)
     states.append(play_state)        
     
     return self.create_multi_state_button(states)
Esempio n. 15
0
 def create_time_volume_button(self, bb, action):
     """ Create Time/Volume two states button
     
     :param bb: bounding box
     :param action: event listener
     
     :return: Time/Volume button
     """
     states = []
     bgr = self.config[BACKGROUND][MENU_BGR_COLOR]
     
     volume_state = State()
     volume_state.name = "speaker"
     volume_state.bounding_box = bb
     volume_state.bgr = bgr
     volume_state.keyboard_key = kbd_keys[KEY_SETUP]
     volume_state.action = action
     volume_state.img_x = None
     volume_state.img_y = None
     volume_state.auto_update = True
     volume_state.image_align_v = V_ALIGN_CENTER
     volume_state.show_bgr = True
     volume_state.show_img = True
     volume_state.image_size_percent = 0.36
     states.append(volume_state)
     
     time_state = State()
     time_state.name = "time"
     time_state.bounding_box = bb
     time_state.bgr = bgr
     time_state.keyboard_key = kbd_keys[KEY_SETUP]
     time_state.action = action
     time_state.img_x = None
     time_state.img_y = None
     time_state.auto_update = True
     time_state.image_align_v = V_ALIGN_CENTER
     time_state.show_bgr = True
     time_state.show_img = True
     time_state.image_size_percent = 0.36
     states.append(time_state)        
     
     return self.create_multi_state_button(states)
Esempio n. 16
0
    def create_keyboard(self, keyboard_type, span, transition_map):
        """ Create keyboard

        :param keyboard_type: type
        :param span: span
        :param transition_map: transition map
        """
        layout = self.get_layout(span)
        buttons = []
        keys = None
        self.current_keyboard_type = keyboard_type

        try:
            buttons = self.keyboards[keyboard_type]
            self.components = buttons
            return
        except:
            pass

        if keyboard_type == KEYBOARD_abc:
            keys = KEYBOARD_1
        elif keyboard_type == KEYBOARD_ABC:
            keys = KEYBOARD_2
        elif keyboard_type == KEYBOARD_123:
            keys = KEYBOARD_3
        elif keyboard_type == KEYBOARD_symbol:
            keys = KEYBOARD_4

        for i, k in enumerate(keys):
            if not k:
                c = Component(self.util, layout[i], bgr=self.config[BACKGROUND][MENU_BGR_COLOR])
                c.parent_screen = self.screen
                c.name = "gap" + str(i)
                buttons.append(c)
                continue
            s = State()
            s.index = i
            s.name = k
            s.l_name = k
            s.comparator_item = s.index
            s.bgr = self.config[COLORS][COLOR_DARK]
            s.show_bgr = True
            s.bounding_box = layout[i]
            s.key_map = transition_map[i]
            button = self.factory.create_menu_button(s, layout[i], self.press_key, False, 50, 100, False, True)
            buttons.append(button)
        buttons[0].set_selected(True)
        self.keyboards[keyboard_type] = buttons
        self.components = buttons

        if keyboard_type != KEYBOARD_abc:
            self.set_observers()

        self.buttons = {i : item for i, item in enumerate(buttons)}
Esempio n. 17
0
 def set_genre_button_image(self, genre):
     """ Set genre button image
     
     :param genre: genre button
     """
     s = State()
     s.__dict__ = genre.__dict__
     s.bounding_box = self.genres_button.state.bounding_box
     s.bgr = self.genres_button.bgr
     s.show_label = False
     s.keyboard_key = kbd_keys[KEY_MENU]
     self.genres_button.set_state(s)
Esempio n. 18
0
    def create_arrow_button(self,
                            bb,
                            name,
                            key,
                            location,
                            label_text,
                            image_area,
                            image_size,
                            arrow_labels=True,
                            rest_command=None):
        """ Create Arrow button (e.g. Left, Next Page etc.)
        
        :param bb: bounding box
        :param name: button name
        :param key: keyboard key associated with button
        :param location: image location inside of bounding box
        :param label_text: button label text
        :param image_area: percentage of height occupied by button image
        :param arrow_labels: show arrow label or not
        :param rest_command: REST API command assigned to the button

        :return: arrow button
        """
        s = State()
        s.name = name
        s.bounding_box = bb
        s.keyboard_key = key
        s.bgr = self.config[BACKGROUND][FOOTER_BGR_COLOR]
        s.show_bgr = True
        s.show_img = True
        if arrow_labels:
            s.show_label = True
        else:
            s.show_label = False
        s.image_location = location
        s.label_location = CENTER
        s.label_text_height = 40
        s.l_name = label_text
        s.auto_update = True
        s.image_size_percent = image_area / 100
        s.image_area_percent = image_area
        s.text_color_normal = self.config[COLORS][COLOR_BRIGHT]
        s.text_color_selected = self.config[COLORS][COLOR_CONTRAST]
        s.text_color_disabled = self.config[COLORS][COLOR_MEDIUM]
        s.text_color_current = s.text_color_normal
        if rest_command:
            s.rest_commands = [rest_command]
        self.set_state_icons(s)
        if image_size != 100:
            self.resize_image(s, image_size)
        b = Button(self.util, s)
        return b
Esempio n. 19
0
 def create_play_pause_button(self, bb, action):
     """ Create Play/Pause button
     
     :param bb: bounding box
     :param action: event listener
     
     :return: play/pause button
     """
     states = []
     
     pause_state = State()
     pause_state.name = "pause"
     pause_state.bounding_box = bb
     pause_state.bgr = (0, 0, 0)
     pause_state.keyboard_key = kbd_keys[KEY_PLAY_PAUSE]
     pause_state.action = action
     pause_state.img_x = None
     pause_state.img_y = None
     pause_state.auto_update = True
     pause_state.image_align_v = V_ALIGN_CENTER
     pause_state.show_bgr = True
     pause_state.show_img = True
     states.append(pause_state)
     
     play_state = State()
     play_state.name = "play"
     play_state.bounding_box = bb
     play_state.bgr = (0, 0, 0)
     play_state.keyboard_key = kbd_keys[KEY_PLAY_PAUSE]
     play_state.action = action
     play_state.img_x = None
     play_state.img_y = None
     play_state.auto_update = True
     play_state.image_align_v = V_ALIGN_CENTER
     play_state.show_bgr = True
     play_state.show_img = True
     states.append(play_state)        
     
     return self.create_multi_state_button(states)
Esempio n. 20
0
 def set_genre_button_image(self, genre):
     """ Set genre button image
     
     :param genre: genre button
     """
     if self.favorites_mode:
         favorites_button_state = self.favorites_util.get_favorites_button_state(
             self.genres_button.state.bounding_box)
         self.genres_button.selected = False
         self.genres_button.set_state(favorites_button_state)
     else:
         s = State()
         s.__dict__ = genre.__dict__
         s.bounding_box = self.genres_button.state.bounding_box
         s.bgr = self.genres_button.bgr
         s.show_label = False
         s.keyboard_key = kbd_keys[KEY_MENU]
         self.factory.scale_genre_button_image(s, PERCENT_GENRE_IMAGE_AREA)
         self.genres_button.set_state(s)
Esempio n. 21
0
    def get_center_button(self, s):
        """ Create the center button

        :param s: button state

        :return: station logo button
        """
        bb = Rect(self.layout.CENTER.x + 1, self.layout.CENTER.y + 1,
                  self.layout.CENTER.w - 1, self.layout.CENTER.h - 1)
        if not hasattr(s, "icon_base"):
            self.util.add_icon(s)

        state = State()
        state.icon_base = s.icon_base
        self.factory.set_state_scaled_icons(s, bb)
        state.index = s.index
        state.genre = s.genre
        state.scaled = getattr(s, "scaled", False)
        state.icon_base_scaled = s.icon_base_scaled
        state.name = "station." + s.name
        state.l_name = s.l_name
        state.url = s.url
        state.keyboard_key = kbd_keys[KEY_SELECT]
        state.bounding_box = bb
        state.img_x = bb.x
        state.img_y = bb.y
        state.auto_update = False
        state.show_bgr = True
        state.show_img = True
        state.logo_image_path = s.image_path
        state.image_align_v = V_ALIGN_BOTTOM
        state.comparator_item = self.current_state.comparator_item
        button = Button(self.util, state)

        img = button.components[1]
        self.logo_button_content = (img.image_filename, img.content,
                                    img.content_x, img.content_y)

        return button
Esempio n. 22
0
    def create_disabled_button(self, bb, name, scale):
        """ Create disabled button

        :param bb: bounding box
        :param name: image name
        :param scale: image scale
        :return: disabled button
        """
        state = State()
        state.name = name
        state.icon_base = self.image_util.load_icon_off(state.name, bb, scale)
        state.icon_selected = state.icon_base
        state.bgr = self.config[BACKGROUND][MENU_BGR_COLOR]
        state.bounding_box = bb
        state.img_x = None
        state.img_y = None
        state.auto_update = True
        state.image_align_v = V_ALIGN_CENTER
        state.show_bgr = True
        state.show_img = True
        state.show_label = False
        return Button(self.util, state)
Esempio n. 23
0
    def create_genre_button(self, bb, state, image_area):
        """ Create Genre button
        
        :param bb: bounding box
        :param state: button state        
        :return: genre button
        """
        s = State()
        s.__dict__ = state.__dict__
        s.bgr = (0, 0, 0)
        s.bounding_box = bb
        s.keyboard_key = kbd_keys[KEY_MENU]
        s.img_x = None
        s.img_y = None
        s.auto_update = True
        s.image_align_v = V_ALIGN_CENTER
        s.show_bgr = True
        s.show_img = True
        s.show_label = False
        self.scale_genre_button_image(s, image_area)

        return Button(self.util, s)
Esempio n. 24
0
    def create_disabled_button(self, bb, name, scale):
        """ Create disabled button

        :param bb: bounding box
        :param name: image name
        :param scale: image scale
        :return: disabled button
        """
        state = State()
        state.name = name
        state.icon_base = self.util.load_mono_svg_icon(state.name, self.util.COLOR_OFF, bb, scale)
        state.icon_selected = state.icon_base
        state.bgr = (0, 0, 0)
        state.bounding_box = bb
        state.img_x = None
        state.img_y = None
        state.auto_update = True
        state.image_align_v = V_ALIGN_CENTER
        state.show_bgr = True
        state.show_img = True
        state.show_label = False
        return Button(self.util, state)
Esempio n. 25
0
 def create_toggle_button(self, name, keyboard_key=None, lirc_code=None, bounding_box=None):
     """ Create toggle button (e.g. Shutdown button)
     
     :param name: button name
     :param keyboard_key: keyboard key assigned to the button
     :param lirc_code: LIRC code assigned to the button
     :param bounding_box: button bounding box
     """
     state = State()
     state.name = name
     state.keyboard_key = keyboard_key
     state.lirc_code = lirc_code
     state.bgr = (0, 0, 0)
     state.bounding_box = bounding_box
     state.img_x = None
     state.img_y = None
     state.auto_update = True
     state.image_align_v = V_ALIGN_CENTER
     state.show_bgr = True
     state.show_img = True
     self.set_state_icons(state)
     button = ToggleButton(self.util, state)
     return button
Esempio n. 26
0
    def create_stream_button(self, bb):
        """ Create Stream button
        
        :param bb: bounding box
        :return: genre button
        """
        state = State()
        state.name = "stream"
        state.icon_base = self.util.load_mono_svg_icon(state.name,
                                                       self.util.COLOR_OFF, bb,
                                                       0.4)

        state.icon_selected = state.icon_base
        state.bgr = (0, 0, 0)
        state.bounding_box = bb
        state.img_x = None
        state.img_y = None
        state.auto_update = True
        state.image_align_v = V_ALIGN_CENTER
        state.show_bgr = True
        state.show_img = True
        state.show_label = False
        return Button(self.util, state)