def __init__(self, item, title, field, editable=False): Item.__init__(self, name=get_field(item, field), type_='info') self.item = item self.title = title self.field = field self.editable = editable return None
def __init__(self, name, type_='item_list', menu=None, _list=[], list_name='main_list', selected_pos=0): Item.__init__(self, name, type_) ItemList.__init__(self, menu, _list, list_name, selected_pos) return None
def __init__(self, name, type_, menu=None, display_type=None, action=None, args=None, kwargs=None): Item.__init__(self, name, type_, menu=menu, display_type=display_type) self.action = action self.preview_list = [] self.args = (args or tuple()) self.kwargs = (kwargs or dict())
def __init__(self, val, type_='int', menu=None, display_type=None, parent=None): Item.__init__(self, '%.2d' % val, type_, menu=None, display_type=None, parent=None) self.val = val return None
def __init__(self, item, data, name='Media information menu', eventhandler=None, type='media_info'): self.eventhandler = (InfoMenuEventHandler(self) if not eventhandler else eventhandler) ContextMenu.__init__(self, name, type=type) self.item = item self._getitems_keywords.update({'titles_list': (lambda : self.get_item_list('titles_list'))}) self.set_items(([] if not data else data), 'main_list') self._set_options_list() titles = [] for i in self['main_list']: try: title_item = Item(name=i.title, type_='info_%s' % i.field) titles.append(title_item) except AttributeError: titles.append(Item(name='', type_='')) self.set_items(titles, 'titles_list', 0) return None
def _set_record(self, scheduled_record): self._record_to_remove = scheduled_record _wyrecord = WyRecord() self.record_name = scheduled_record.name self.select_date(scheduled_record.record.start_time, scheduled_record.record.stop_time) target_channel = TVRootItem().get_acl( self).get_channel_from_service_id( str(scheduled_record.record.service_id)) for i in xrange(len(self.favorite_list)): if self.favorite_list[i]['serviceId'] == str( scheduled_record.record.service_id): target_channel, target_channel = None, self.favorite_list[i] break self.select_channel(target_channel) if isinstance(scheduled_record, PeriodicScheduledRecordItem): _rule = _wyrecord.scheduler.GetPeriodicRuleById( scheduled_record.record.periodicity_rule_id) self.repetition_type_list.select( Item(self.PERIODICITY[_rule.extern_rule_name][0], 'periodic', self)) _num = (mktime(_rule.last_time.timetuple()) - _rule.recording_ref.start_time) / float( self.PERIODICITY[_rule.extern_rule_name][1] * 86400) self.repetition_number_list.select(IntegerItem(int(_num))) return None
def __init__(self, name, url=None, type_='url', menu=None, display_type='url'): Item.__init__(self, name=name, type_=type_, menu=menu, display_type=display_type) self.url = url if URLItem.player is None: from pygui.menu.players import WebBrowser URLItem.player = WebBrowser() return None
def search(self, kbd): self.kbd.hide() self.pattern = self.kbd.text self._wil_result = WindowedItemList(None, menu=self.navigator, universe=self.universe, browse_fn=wm_search, pattern=self.pattern) log.debug('Search(%s): %s', self.pattern, self._wil_result) if len(self._wil_result): self.set_items(self._wil_result, 'main_list') self.select(0, force_select=True) louie_send('result_count', sender=self, value=self.get_result_count()) louie_send('title', sender=self, value=self.get_title()) else: no_result_item = Item(name=_("No results for '%s'") % self.pattern, type_='info') self.set_items([no_result_item], 'main_list') louie_send('result_count', sender=self, value=self.get_result_count()) louie_send('title', sender=self, value=self.get_title()) return None
def __init__(self, server, name, antenna, transponder, scan_network, include_scrambled=True, high_lnb_power=False, type_='dvbsscan', menu=None): Item.__init__(self, name, type_=type_, menu=menu) if self.player is None: try: from pygui.menu.players import ChannelScanner self.player = ChannelScanner() except Exception, e: log.error('Unable to spawn ChannelScanner (%s)', e)
def __init__(self, name, type_='setupitem', menu=None, display_type=None, related_item=None, name_args=None): if name_args is None: displayed_name = _(name) else: displayed_name = _(name) % name_args Item.__init__(self, displayed_name, type_, menu=menu, display_type=display_type) self.related_item = related_item self.preview_list = [] self.base_name = name self.name_args = name_args return None
def __init__(self, program): Menu.__init__(self, name='EPG Info Banner', choices=[], type='epg_info_banner') self.eventhandler = EpgInfoBannerEventHandler(self) self._getitems_keywords.update({ 'name': self.get_name, 'start_time': self.get_start_time, 'end_time': self.get_end_time, 'duration': self.get_duration, 'content_type': self.get_content_type, 'description': self.get_description }) self.program = program description = self.program.short_description + '\n' + program.description if description: self.pages = [ description[start:start + self.PAGE_SIZE] for start in xrange(0, len(description), self.PAGE_SIZE) ] else: self.pages = [] self.selected_page = 0 extra_info = [ Item(name=title, type_=key.lower(), menu=self) for key, title in program.EXTRA_INFO_FIELDS if int(program[key]) ] maturity_key = program['maturityRating'] if maturity_key is not None: maturity = 'maturityrating_%i.png' % int(maturity_key) else: maturity = 'maturityrating_unknown.png' extra_info.append(Item(name='maturity', type_=maturity, menu=self)) self.set_items(extra_info, 'main_list', -1) return None
def __init__(self, name, verif_first=True, eventhandler=None, **kw): SecretCodeCheckMenu.__init__(self, name, **kw) self.main_items.append( SecretCodeUserConfigSetupItem(name='SecretCode', menu=self, domain='security', key='secretcode')) self.prompt_items.append( Item(name=_('Enter your new code'), type_='unknown')) self._current_action = self.main_items[0] self._display_explain = False if not verif_first: self._display_explain = True self._good_verif() return None
def browse(self, preview=False): trans = { '802.3': _('Ethernet'), '802.11': _('Wireless'), None: _('Disconnected') } active_cfg = wn_cfg.getActiveConfigurationInfos() dev_infos = wn_dev.getDeviceInfos(active_cfg['interface']) return [ Item(trans[dev_infos['networkType']], type_='setupitem'), IpSetupItem(can_modify=self._can_modify, active_values=dev_infos), NetmaskSetupItem(can_modify=self._can_modify, active_values=dev_infos), GatewaySetupItem(can_modify=self._can_modify, active_values=dev_infos), DnsSetupItem(dns_num=1, can_modify=self._can_modify, active_values=dev_infos), DnsSetupItem(dns_num=2, can_modify=self._can_modify, active_values=dev_infos), Item(_('MAC : %(addr)s') % dict(addr=dev_infos['hwAddress']), type_='setupitem') ]
def __init__(self): Item.__init__(self, _('EPG not available'), type_='empty', display_type='empty') return None
def __init__(self): Item.__init__(self, _('No scheduled recordings'), type_='empty', display_type='empty') return None
def reset_view(self): for i in range(len(self.preview_list)): self.preview_list[i].reset_view() Item.reset_view(self)
def __init__(self, name=_('Scheduled recordings'), type_='scheduled_records'): Menu.__init__(self, name, type=type_, universe='tv') self.PERIODICITY = { 'none': (_('Only this time'), 0), 'daily': (_('Every day'), 1), 'weekly': (_('Every week'), 7) } self._favorite_list = [TVRootItem().get_acl(menu=self)] self._favorite_list.extend(TVRootItem().browse_favorites(self)) self._all_channel_list = self._favorite_list[0] self.eventhandler = ModifyScheduledRecordMenuEventHandler(self) self.channel_list = ItemListItem(_('Channels'), menu=self, _list=self._favorite_list, list_name='channel_name_list') self.favorite_list = ItemListItem( _('Favorites'), menu=self, _list=self._all_channel_list.browse(), list_name='favorite_name_list') self.service_list = ItemListItem( _('Channel'), menu=self, _list=[self.channel_list, self.favorite_list], list_name='service_list') self.item_lists_dict['service_list'] = self.service_list _today = date.today() date_list = [[_('Month'), MONTHS], [ _('Year'), [IntegerItem(i) for i in xrange(_today.year + 10)] ], [ _('Day'), [ IntegerItem(i) for i in xrange( 1, days_in_month(_today.year, _today.month) + 1) ] ]] date_order = DATE_ORDERS[user_config['base']['dateformat']] self.day_index = date_order.index(2) self.month_index = date_order.index(0) self.year_index = date_order.index(1) self.date_1_list = ItemListItem(date_list[date_order[0]][0], menu=self, _list=date_list[date_order[0]][1], list_name='date_1_list') self.date_2_list = ItemListItem(date_list[date_order[1]][0], menu=self, _list=date_list[date_order[1]][1], list_name='date_2_list') self.date_3_list = ItemListItem(date_list[date_order[2]][0], menu=self, _list=date_list[date_order[2]][1], list_name='date_3_list') self.date_list = ItemListItem( _('Date'), menu=self, _list=[self.date_1_list, self.date_2_list, self.date_3_list], list_name='date_list') self.item_lists_dict['date_list'] = self.date_list self.start_hour_list = ItemListItem(_('Hour'), menu=self, _list=HOURS, list_name='start_hour_list') self.start_minute_list = ItemListItem(_('Minute'), menu=self, _list=MINUTES, list_name='start_minute_list') self.start_time_list = ItemListItem( _('Start time'), menu=self, _list=[self.start_hour_list, self.start_minute_list], list_name='start_time_list') self.item_lists_dict['start_time_list'] = self.start_time_list self.stop_hour_list = ItemListItem(_('Hour'), menu=self, _list=HOURS, list_name='stop_hour_list') self.stop_minute_list = ItemListItem(_('Minute'), menu=self, _list=MINUTES, list_name='stop_minute_list') self.stop_time_list = ItemListItem( _('End time'), menu=self, _list=[self.stop_hour_list, self.stop_minute_list], list_name='stop_time_list') self.item_lists_dict['stop_time_list'] = self.stop_time_list self.record_name = '' def _fun(key): it = Item(self.PERIODICITY[key][0], 'periodic', self) it.val = self.PERIODICITY[key] it.key = key return it self.repetition_type_list = ItemListItem( _('Frequency'), menu=self, _list=map(_fun, ['none', 'daily', 'weekly']), list_name='repetition_type_list') self.repetition_list = ItemListItem(_('Frequency'), menu=self, _list=[self.repetition_type_list], list_name='repetition_list') self.item_lists_dict['repetition_list'] = self.repetition_list self.repetition_number_list = ItemListItem( _('Number of recordings'), menu=self, _list=REPEAT_NUMBERS, list_name='repetition_number_list') self.repetition_num_list = ItemListItem( _('Number of recordings'), menu=self, _list=[self.repetition_number_list], list_name='repetition_num_list') self.item_lists_dict['repetition_num_list'] = self.repetition_num_list self.confirm_list = ItemListItem( _('Confirm'), menu=self, list_name='confirmation_option_list', _list=[Item(_('Confirm'), 'choice', menu=self)]) self.cancel_list = ItemListItem( _('Cancel'), menu=self, list_name='cancellation_option_list', _list=[Item(_('Cancel'), 'choice', menu=self)]) self.confirm_list.execute = self._confirm self.cancel_list.execute = self.cancel self.confirmation_list = ItemListItem( _('Actions'), menu=self, list_name='confirmation_list', _list=[self.confirm_list, self.cancel_list]) self.confirmation_list.select(None, True) self.item_lists_dict['confirmation_list'] = self.confirmation_list self.set_items([ self.service_list, self.date_list, self.start_time_list, self.stop_time_list, self.repetition_list, self.repetition_num_list, self.confirmation_list ]) self._getitems_keywords.update({ 'channel_name': (lambda: (self.channel_list.selected.name if self.channel_list.selected and self. channel_list.selected.name else _('Unknown'))), 'favorite_name': (lambda: (self.favorite_list.selected.name if self.favorite_list.selected and self.favorite_list. selected.name else _('Unknown'))), 'record_name': (lambda: self.record_name), 'date_1': (lambda: self.date_1_list.selected.name), 'date_2': (lambda: self.date_2_list.selected.name), 'date_3': (lambda: self.date_3_list.selected.name), 'date_weekday': self._get_weekday_from_date, 'start_hour': (lambda: self.start_hour_list.selected.name), 'start_minute': (lambda: self.start_minute_list.selected.name), 'stop_hour': (lambda: self.stop_hour_list.selected.name), 'stop_minute': (lambda: self.stop_minute_list.selected.name), 'repetition_type': (lambda: self.repetition_type_list.selected.name), 'repetition_number': (lambda: self.repetition_number_list.selected.name), 'confirmation_list': (lambda: self.confirmation_list) }) self._record_to_remove = None self.scheduled_record = None return None
def __init__(self, *args, **kw): self.name = _('SetPoint : %d \xc2\xb0C') % (self._get_value()) Item.__init__(self, name=self.name, *args, **kw)
def _fun(key): it = Item(self.PERIODICITY[key][0], 'periodic', self) it.val = self.PERIODICITY[key] it.key = key return it
def __init__(self, record, type_='schedule', menu=None, display_type=None): Item.__init__(self, record.name.decode('utf-8', 'ignore'), type_, menu, display_type) self.record = record return None
def __init__(self, menu=None, display_type=None, parent=None): Item.__init__(self, _('My scheduled recordings'), 'schedule_dir', menu, display_type, parent) return None