Вернуться   DreamBox Satellite Forum > Обсуждение > Dreambox DM 5xxx/7xxx/8xxx/9xxx > Developer board

Developer board Раздел для разработчиков софта

Ответ
 
Опции темы

Старый 05.10.2011, 21:40   #31
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию

Цитата:
Сообщение от sp34 Посмотреть сообщение
Vlamo ну а если использовать то что есть : разбить наш радиус ну скажем на двадцать равных частей и в фотошопе нарисовать двадцать картинок на свой вкус ,что-бы в каждой последующей прибавлялось шкалы по окружности на 1/20 и написать рендер при значении допустим от 0-5 показывает картинку №1,от 5-10 картинку №2 и.т.д - как вы считаете это можно реализовать подправив рендер для вывода прогресс бара например или громкости.
Цитата:
Сообщение от sp34 Посмотреть сообщение
ну даже если не получится с уровнем сигнала (хотя сигнал сотовой антенны состоит из четырех порогов всего и нормально будем использовать не двадцать , а шесть-десять , ну а кого не устроит всегда в секонд инфо-баре можно поставить обычный), много где еще можно применить (заполнение жесткого диска,громкость,буфер тайм-шифта, прогресс бар,время записи ну и куда еще придумаем) был-бы рендер

Рендер ProgressPixmap

Итак, предположим, что у вас есть десять png-файлов, равномерно и последовательно отображающих увеличение шкалы от нуля до максимума.
Файлы картинок должны быть пронумерованы, начиная с нуля. Причем, файл с нулевым значением шкалы обязателен и должен иметь в названии ноль (0), к примеру:
snr_0.png - первая картинка, отображающая нулевое значение шкалы (обязателен!!!).
snr_1.png - вторая картинка, отображающая значение шкалы на одну ступень больше.
snr_2.png - третья картинка, шкалы еще на одну ступень больше.
snr_3.png - четвертая картинка, шкалы еще больше.
snr_4.png - пятая, шкалы еще больше.
snr_5.png - шестая, еще больше.
snr_6.png - седьмая, больше.
snr_7.png - восьмая, еще больше.
snr_8.png - девятая, еще больше.
snr_9.png - последняя картинка, отображающая полное значение шкалы.
Вместо "snr_" может быть что-угодно или вообще ничего, главное, последовательно увеличивающиеся цифры.
И сразу оговорюсь, что это лишь показательный пример, реально же файлов может быть и два, и шесть, и сорок три, и сто, и сколько угодно или получается.

Забросим эти файлы в папку вашего текущего скина, например, в поддиректорию Progress
Далее, исходя из примера выше, правим файл своего текущего скина (skin.xml), например, под отображения SNR:
Код:
<widget source="session.FrontendStatus" render="ProgressPixmap" pixmapPath="ВАШ_ТЕКУЩИЙ_СКИН/Progress/snr_%d.png" pixmapCount="10" position="526,57" size="73,7" transparent="1">
	<convert type="FrontendInfo">SNR</convert>
</widget>
Особо обращаем внимание на два атрибута:
  • pixmapPath - указывает путь к картинкам и имеет подстановочный шаблон - "%d", вместо которого во время работы будут подставляться цифры
  • pixmapCount - задает количество картинок-файлов

Ну и устанавливаем сам рендер ProgressPixmap в директорию:
/usr/lib/enigma2/python/Components/Renderer


Собственно, сам рендер:
Вложения
Тип файла: zip ProgressPixmap-v.0.1.zip (929 байт, 75 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB
  Ответить с цитированием

Старый 07.10.2011, 16:49   #32
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию

GUI-компонетн ProgressPixmap

Почти тоже самое, что и чуть выше - рендер ProgressPixmap, и предназначен для того же.
Но в отличии от рендеров, gui-компоненты предназначены для использования в плагинах (как в пользовательских, так и системных), где вывод данных на экран происходит в зависимости от действий пользователя, в отличии от рендеров, которые работают в независимом (автоматическом) режиме и не требуют участия пользователя.

Компонент ProgressPixmap устанавливается в:
/usr/lib/enigma2/python/Components

Все, что касается подготовки и размещения картинок, описано выше - рендер ProgressPixmap.

Покажу лишь, как это работает, на примере с громкостью.
Итак, картинки у вас уже есть, они понумерованы и расположены в директории вашего текущего скина.
Правим в skin.xml, скрин Volume, виджет Volume приблизительно по такому образцу:
Код:
<widget name="Volume" pixmapPath="ВАШ_ТЕКУЩИЙ_СКИН/Progress/volume_%d.png" pixmapCount="21" position="32,4" zPosition="1" size="120,10" />
Далее открываем для редактирования модуль /usr/lib/enigma2/python/Screens/Volume.py .
Заменяем в нем только одну строку импорта (в начале файла):
Код:
from Components.VolumeBar import VolumeBar
на такую:
Код:
from Components.ProgressPixmap import ProgressPixmap as VolumeBar
Сохраняем все изменения в файлах и делаем рестарт GUI через меню Дрима.
После перезагрузки смотрим, что мы наворотили. Все.


Собственно, сам gui-компонент (устанавливается в /usr/lib/enigma2/python/Components):
Вложения
Тип файла: zip ProgressPixmap-v.0.2.zip (1,021 байт, 71 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB

Последний раз редактировалось vlamo; 08.10.2011 в 21:03.
  Ответить с цитированием

Сортировка сервисов в списке спутников
Старый 19.10.2011, 11:29   #33
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию Сортировка сервисов в списке спутников

Сортировка сервисов в списке спутников (SD/HD)

Инструкция:
Вложения
Тип файла: txt showSatellites_add_HD_list+services_count.txt (14.4 Кб, 180 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB

Последний раз редактировалось vlamo; 23.01.2012 в 16:04.
  Ответить с цитированием

Старый 07.12.2011, 11:04   #34
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию

Вопрос:
Как назначить на кнопку "Boquet +" вызов списка букетов, а на "Boquet -" вызов списка спутников.

Ответ:
Делаем раз (файл /usr/share/enigma2/keymap.xml):
Код:
<map context="InfobarChannelSelection">
	.....
	.....
	<key id="KEY_CHANNELUP" mapto="showFavourites" flags="m" />
	<key id="KEY_CHANNELDOWN" mapto="showSatellites" flags="m" />
	.....
	.....
</map>
Делаем два (файл /usr/lib/enigma2/python/Screens/InfoBarGenerics.py):
Код:
class InfoBarChannelSelection:

	def __init__(self):
		.....
		.....
		self["ChannelSelectActions"] = HelpableActionMap(self, "InfobarChannelSelection",
			{
				.....,
				.....,
				.....,
				.....,
				"showFavourites": (self.showFavourites, _("open favorites servicelist")),
				"showSatellites": (self.showSatellites, _("open satellites servicelist")),
			})

	def showFavourites(self):
		self.session.execDialog(self.servicelist)
		self.servicelist.showFavourites()

	def showSatellites(self):
		self.session.execDialog(self.servicelist)
		self.servicelist.showSatellites()
	.....
	.....
	.....
Т.е. добавляем по такой схеме, то чего у вас нет.
После редактирования файлов, сохраняем изменения и перезагружаем энигму через меню.

Надеюсь, понятно объяснил.
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB

Последний раз редактировалось lagush; 26.12.2011 в 23:13.
  Ответить с цитированием

Старый 10.01.2012, 00:35   #35
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию

Конвертер CpuUsage


Вывод инфу о текущей загрузке процессора в процентном соотношении.
Работает в связке с любыми стандартными источниками (source), к примеру:
  • session.CurrentService
  • ServiceEvent
и любыми рендерами (render), которые работают с текстом, к примеру:
  • Label
  • RunningText

Конвертор поддерживает форматирование строки и понимает такие форматы:
  • $0 - общая загрузка CPU в процентах
  • $1 - загрузка первого ядра в процентах
  • $2 - загрузка второго ядра в процентах (если имеется, иначе "n/a")
  • $3 - загрузка третьего ядра в процентах (если имеется , иначе "n/a")
  • $4...$9 - ... и так далее...
  • $? - количество ядер в процессоре.
  • Примеры:
    <convert type="CpuUsage"></convert> - будет выводится общая загрузка CPU по такому шаблону: "CPU: 100%"
    <convert type="CpuUsage">Total</convert> - будет выводится общая загрузка CPU по такому шаблону: "CPU: 100%"
    <convert type="CpuUsage">total CPU usage: $0 (core #1: $1, core #2: $2)</convert> - будет выводится: "total CPU usage: 100% (core #1: 100%, core #2: 100%)"


Конвертер распаковать и установить в /usr/lib/enigma2/python/Components/Converter
Собственно, сам конвертер:
Вложения
Тип файла: zip CpuUsage-converter_v.0.1.zip (1.3 Кб, 53 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB
  Ответить с цитированием

Плагин Record Indicator
Старый 17.01.2012, 02:05   #36
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию Плагин Record Indicator

Плагин Record Indicator

Такой себе простецкий плагинчик, отображающий мигающую иконку на экране во время записи.
В Menu->Setup->System->Record Indicator его можно:
  • включить/отключить (требуется перезагрузка enigma2)
  • задать положение иконки на экране
Вложения
Тип файла: zip enigma2-plugin-systemplugins-recindicator_1.0-rc0_mipsel.ipk.zip (3.0 Кб, 68 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB
  Ответить с цитированием

Старый 17.01.2012, 18:31   #37
Эксперт
 
Аватар для HDHMETRO
 
HDHMETRO вне форума
Регистрация: 15.05.2011
Адрес: KZ
Сообщений: 455
По умолчанию

Так как нужда в таковом плагине возникла у меня - нарисовал соответствующую иконку для отображения на экране ТВ. Хотя, на вкус и цвет - каждый может для себя нарисовать что угодно. Большая благодарность vlamo за труды!

Под эту иконку надо чуток изменить размеры. Правим файлик /usr/lib/enigma2/python/Plugins/SystemPlugins/RecIndicator/plugin.py
Код:
class RecIndicator(Screen):
	skin = """
		<screen name="RecIndicator" title="Records Indicator" flags="wfNoBorder" position="60,60" size="80,36" zPosition="-1" backgroundColor="transparent" >
			<widget source="session.RecordState" render="Pixmap" pixmap="skin_default/icons/icon_rec1.png" position="0,0" size="80,36" alphatest="on">
Изображения
Тип файла: png icon_rec.png (1.2 Кб, 89 просмотров)
__________________
Receiver: DreamBox 800 HD se

Последний раз редактировалось lagush; 20.01.2012 в 13:37.
  Ответить с цитированием

конвертер ReverseText
Старый 23.01.2012, 16:39   #38
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию конвертер ReverseText

Конвертер ReverseText


Такой себе веселенький конвертер, который разворачивает статический текст задом наперед.
Может кому-нибудь пригодится.
Пример использования:
Код:
<widget source="ServiceEvent" render="Label" position="450,372" size="100,20" font="Regular;18" halign="right" backgroundColor="#444856" transparent="1">
	<convert type="CpuUsage">Total</convert>
	<convert type="ReverseText"></convert>
</widget>
Т.е. если CpuUsage сам по себе выдаст текст: "CPU: 25%",
то конвертер ReverseText развернет его вот так: "%52 :UPC".


Конвертер распаковать и установить в /usr/lib/enigma2/python/Components/Converter
Собственно, сам конвертер:
Вложения
Тип файла: zip e2-converter_ReverseText_v.0.1.zip (470 байт, 13 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB
  Ответить с цитированием

Конвертер TestConnection
Старый 24.01.2012, 15:04   #39
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию Конвертер TestConnection

Конвертер TestConnection


Конвертер TestConnection проверяет соединение с определенным сервером через заданное время.

Формат аргументов конвертера:
Код:
<convert type="TestConnection">[ADDRESS]:[PORT]:[TIME]:[CMD]</convert>

ADDRESS - ip-адрес или url сервера, с которым необходимо проверять соединение;
          по умолчанию - 77.88.21.3 (www.yandex.ru)
PORT    - порт сервера, с которым необходимо проверять соединение;
          по умолчанию - 80
TIME    - время в секундах, через которое необходимо проверять соединение;
          если будет 0 (ноль), то проверка происходит одноразово при каждом появлении родительского окна на экране;
          по умолчанию - 10 секунд
CMD     - системная команда или скрипт, который будет исполнен, если соединение было и вдруг пропало;
          по умолчанию - отсутствует;
          параметр экспериментальный, используйте на свой страх и риск!

Примеры:
	<convert type="TestConnection"></convert>
	<convert type="TestConnection">192.168.0.1</convert>
	<convert type="TestConnection">192.168.0.1:4001</convert>
	<convert type="TestConnection">192.168.0.1:4001:5</convert>
	<convert type="TestConnection">www.example.com</convert>
	<convert type="TestConnection">www.example.com:23</convert>
	<convert type="TestConnection">www.example.com:23:3</convert>
	<convert type="TestConnection">www.example.com:23:3:/usr/script/on_connect_failed.sh</convert>
	<convert type="TestConnection">192.168.0.1:80:5:echo \"$(date +'%d.%m.%Y %H:%M:%S') : connection failed\" >>/tmp/TestConnection.log</convert>
Примеры использования в скине как картинка:
Код:
<!-- Picture -->
<ePixmap position="350,114" size="28,16" pixmap="Nemesis.Blueline.Single/ico_offline.png" zPosition="1" />
<widget source="session.CurrentService" render="Pixmap" pixmap="Nemesis.Blueline.Single/ico_online.png" position="350,114" size="28,16" zPosition="2" >
	<convert type="TestConnection">my.share.com:34001:10</convert>
	<convert type="ConditionalShowHide" />
</widget>
Соответственно, когда соединение отсутствует, картинка в инфобаре - серенькая,
а когда есть соединение, то картинка - веселенькая, т.е. не такая унылая.

Примеры использования в скине как текст:
Код:
<!-- Static Text -->
<widget source="session.CurrentService" render="Label" position="120,113" size="230,20" font="Regular;18" valign="top" halign="left" backgroundColor="#444856" transparent="1">
	<convert type="TestConnection">my.share.com:34001:10</convert>
</widget>
Соответственно, когда соединение отсутствует, текст в инфобаре - "Offline",
а когда есть соединение, то текст - "Online".


Всем огромная благодарность за тестирование, пожелания и замечания.
Отдельная благодарность ДМИТРИЙ1973 за идею.
Отдельная благодарность el1216 за ценные советы и помощь в оптимизации конвертера.


Также, вылаживаю архив со своими картинкими - ico_online.png и ico_offline.png.
Они, конечно, не бог весть что, но какие есть.

Конвертер распаковать и установить в /usr/lib/enigma2/python/Components/Converter
Собственно, сам конвертер:
Вложения
Тип файла: zip online_icons_28x16.zip (700 байт, 77 просмотров)
Тип файла: zip e2-converter_TestConnection_v.0.7.zip (1.7 Кб, 47 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB

Последний раз редактировалось vlamo; 21.02.2012 в 21:31.
  Ответить с цитированием

Старый 29.01.2012, 13:34   #40
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию

Конвертер ConverterRotator


Конвертер ConverterRotator позволяет экономить место в окне скрина и поочередно передает текстовую инфу рендереру от нескольких и более конвертеров в цепочке:

source -> converter -> converter -> ... -> ConverterRotator -> render .

Все конвертеры в цепочке должны напрямую (без сбоев!) работать с главным источником source и выдавать текстовую информацию.


Формат аргументов конвертера:
Код:
<convert type="ConverterRotator">[TIME]</convert>

TIME    - время в секундах, через которое будет обновляться инфа от разных конвертеров в цепочке и выводится на экран;
          по умолчанию - 1 секунда

Примеры:
	<convert type="ConverterRotator" />
	<convert type="ConverterRotator"></convert>
	<convert type="ConverterRotator">3</convert>
	<convert type="ConverterRotator">5</convert>
Пример использования в скине:
Код:
<widget source="ServiceEvent" render="Label" position="450,372" size="100,20" font="Regular;18" halign="right" backgroundColor="#444856" transparent="1">
	<convert type="CpuUsage">Total</convert>
	<convert type="ServiceName2">%N</convert>
	<convert type="ServiceName2">%P</convert>
	<convert type="ServiceName2">%O</convert>
	<convert type="ConverterRotator">5</convert>
</widget>
Обратите внимание, что ConverterRotator должен стоять последним в цепочке конвертеров.


Внимание! Все это пока на уровне тестирования. Возможны не отслеженные баги.
Так-что пробуйте конвертер на свой страх и риск.

Конвертер распаковать и установить в /usr/lib/enigma2/python/Components/Converter
Собственно, сам конвертер:
Вложения
Тип файла: zip e2-converter_ConverterRotator_v.0.1.zip (888 байт, 70 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB
  Ответить с цитированием

Старый 08.02.2012, 08:18   #41
Эксперт
 
Аватар для Ligioner
 
Ligioner вне форума
Регистрация: 04.01.2010
Сообщений: 137
По умолчанию

Converter DiskSpaceInfo выводит почти всю основную информацию о дисках



Примеры виджетов
Код:
  <widget source="session.CurrentService" render="Label" position="67,314" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">UsbInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,334" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">HddInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,294" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">FleshInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,274" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">HddTemp</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,354" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">LoadAvg</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,374" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">MemTotal</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,394" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">MemFree</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,414" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">SwapTotal</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="67,434" zPosition="4" size="350,20" noWrap="1" valign="top" halign="left" font="Regular;14" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">SwapFree</convert>
  </widget>
Что такое LoadAvg можно прочитать тут http://www.colobridge.net/wiki/faq/%...5_load_average

Очень неплохо выводить эту инфу с использованием конвертера ConverterRotator

Код:
  <widget source="session.CurrentService" render="Label" position="75,600" zPosition="4" size="487,20" noWrap="1" valign="top" halign="left" font="Regular; 18" transparent="1" backgroundColor="transpBlack">
    <convert type="DiskSpaceInfo">UsbInfo</convert>
    <convert type="DiskSpaceInfo">HddInfo</convert>
    <convert type="DiskSpaceInfo">FleshInfo</convert>
    <convert type="DiskSpaceInfo">HddTemp</convert>
    <convert type="DiskSpaceInfo">LoadAvg</convert>
    <convert type="DiskSpaceInfo">MemTotal</convert>
    <convert type="DiskSpaceInfo">MemFree</convert>
    <convert type="DiskSpaceInfo">SwapTotal</convert>
    <convert type="DiskSpaceInfo">SwapFree</convert>
    <convert type="ConverterRotator">3</convert>
  </widget>
Вложения
Тип файла: zip DiskSpaceInfo.zip (1.2 Кб, 53 просмотров)

Последний раз редактировалось Ligioner; 08.02.2012 в 13:10.
  Ответить с цитированием

Старый 21.02.2012, 21:52   #42
Эксперт
 
Аватар для Ligioner
 
Ligioner вне форума
Регистрация: 04.01.2010
Сообщений: 137
По умолчанию

Конвертер ProgressDiskSpaceInfo версия (0.2)
Очередное творение от ув.vlamo

Варианты вывода информации в версии 0.2 на примере вывода HDD
Код:
  <ePixmap alphatest="blend" pixmap="hd-line_tvpro/images/dev_hdd.png" position="55,277" size="60,60" />
  <widget source="session.Event_Now" render="Progress" pixmap="hd-line_tvpro/images/device.png" position="130,285" size="100,15" transparent="1" borderWidth="1" borderColor="grey" zPosition="1">
    <convert type="ProgressDiskSpaceInfo">HddInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="130,310" size="475,18" zPosition="1" font="Regular; 16" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">HddInfo,Short</convert>
  </widget>
1
Код:
<convert type="DiskSpaceInfo">HddInfo,Short</convert>


2
Код:
<convert type="DiskSpaceInfo">HddInfo</convert>


3
Код:
<convert type="DiskSpaceInfo">HddInfo,Full</convert>


Вариант полного вывода инфы всех функций
Код:
  <ePixmap alphatest="blend" pixmap="hd-line_tvpro/images/dev_flash.png" position="55,207" size="60,60" />
  <widget source="session.Event_Now" render="Progress" pixmap="hd-line_tvpro/images/device.png" position="130,215" size="100,15" transparent="1" borderWidth="1" borderColor="grey" zPosition="1">
    <convert type="ProgressDiskSpaceInfo">FleshInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="130,240" size="475,18" zPosition="1" font="Regular; 16" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">FleshInfo,Full</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="234,285" size="70,15" zPosition="1" font="Regular; 14" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">HddTemp</convert>
  </widget>
  <ePixmap alphatest="blend" pixmap="hd-line_tvpro/images/dev_hdd.png" position="55,277" size="60,60" />
  <widget source="session.Event_Now" render="Progress" pixmap="hd-line_tvpro/images/device.png" position="130,285" size="100,15" transparent="1" borderWidth="1" borderColor="grey" zPosition="1">
    <convert type="ProgressDiskSpaceInfo">HddInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="130,310" size="475,18" zPosition="1" font="Regular; 16" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">HddInfo,Full</convert>
  </widget>
  <ePixmap alphatest="blend" pixmap="hd-line_tvpro/images/dev_usb.png" position="55,347" size="60,60" />
  <widget source="session.Event_Now" render="Progress" pixmap="hd-line_tvpro/images/device.png" position="130,355" size="100,15" transparent="1" borderWidth="1" borderColor="grey" zPosition="1">
    <convert type="ProgressDiskSpaceInfo">UsbInfo</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="130,380" size="475,18" zPosition="1" font="Regular; 16" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">UsbInfo,Full</convert>
  </widget>
  <ePixmap alphatest="blend" pixmap="hd-line_tvpro/images/dev_ram.png" position="55,417" size="60,60" />
  <widget source="session.Event_Now" render="Progress" pixmap="hd-line_tvpro/images/device.png" position="130,425" size="100,15" transparent="1" borderWidth="1" borderColor="grey" zPosition="1">
    <convert type="ProgressDiskSpaceInfo">MemTotal</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="130,450" size="475,18" zPosition="1" font="Regular; 16" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">MemTotal,Full</convert>
  </widget>
  <ePixmap alphatest="blend" pixmap="hd-line_tvpro/images/dev_swap.png" position="55,487" size="60,60" />
  <widget source="session.Event_Now" render="Progress" pixmap="hd-line_tvpro/images/device.png" position="130,495" size="100,15" transparent="1" borderWidth="1" borderColor="grey" zPosition="1">
    <convert type="ProgressDiskSpaceInfo">SwapTotal</convert>
  </widget>
  <widget source="session.CurrentService" render="Label" position="130,520" size="475,18" zPosition="1" font="Regular; 16" halign="left" valign="center" transparent="1" noWrap="0">
    <convert type="ProgressDiskSpaceInfo">SwapTotal,Full</convert>
  </widget>
Вложения
Тип файла: zip usr.zip (30.8 Кб, 76 просмотров)

Последний раз редактировалось Ligioner; 25.02.2012 в 16:47.
  Ответить с цитированием

Конвертер Dish
Старый 25.02.2012, 21:53   #43
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию Конвертер Dish

Цитата:
Возможно ли сделать какую-нибудь постоянную индикацию положения позиционера, чтобы было понятно на какой спутник он настроен? Как вариант, может выводить где-нибудь в скине сохранённое положение позиционера? Спасибо.

Конвертер Dish



Показывает последнюю доступную позицию поворотки (мотоподвес, позиционер и т.д.).
Работает только с источником "session.CurrentService".

Пример использования в скине инфобара:
Код:
<widget source="session.CurrentService" render="Label" position="95,630" size="105,30" backgroundColor="secondBG" noWrap="1" transparent="1" zPosition="2" foregroundColor="secondFG" font="Regular;26" valign="center" halign="left">
	<convert type="Dish"/>
</widget>

Автор идеи: oleg8000.
Отдельная благодарность ДМИТРИЙ1973 за помощь в создании конвертера.



Конвертер распаковать и установить в /usr/lib/enigma2/python/Components/Converter
Собственно, сам конвертер:
Вложения
Тип файла: zip e2-converter_Dish_v.0.3.zip (1.1 Кб, 54 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB

Последний раз редактировалось vlamo; 26.02.2012 в 10:13.
  Ответить с цитированием

Редактируем главное меню (MainMenu)
Старый 06.03.2012, 16:12   #44
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию Редактируем главное меню (MainMenu)

Цитата:
Сообщение от HDHMETRO Посмотреть сообщение
Уважаемые спецы, помогите советом - как перенести пункт меню Поиск сервисов в Главное меню?
И сделать его следующим после пункта Настройка?
Все манипуляции по этому поводу выполняются в файле /usr/share/enigma2/menu.xml .
Именно в этом файле и описаны все основные меню и их пункты, за исключением тех, которые подсовывают различные плагины (например, MediaPlayer, DVDPlayer и прочие).
Формат файла - XML, поэтому в нем есть секции - menu и пункты меню - item.
Есть атрибут weight, который отвечает за "вес" пункта меню, и по которому сортируются пункты меню, т.е. чем больше вес, тем ниже в списке мы увидим этот пункт.
Это вам немного теории. Думаю, не помешает?

Теперь, что касаемо сути вопроса. Вот несколько условный пример.
Имеем приблизительно такое:
Код:
<menu text="Mainmenu" title="Main menu">
	<id val="mainmenu" />
		....
		....
		....
		<menu weight="10" level="0" text="Setup" flushConfigOnClose="1" entryID="setup_selection" >
			<id val="setup" />
			....
			....
			<menu weight="7" level="0" text="Service Searching" entryID="service_searching_selection">
				<id val="scan" />
				<item text="Tuner configuration" entryID="tuner_setup"><screen module="Satconfig" screen="NimSelection" /></item>
				<item text="Automatic Scan" entryID="auto_scan"><screen module="ScanSetup" screen="ScanSimple" /></item>
				<item text="Manual Scan" entryID="manual_scan"><screen module="ScanSetup" /></item>
				....
				....
				....
			</menu>
			....
			....
		</menu>
		....
		....
		....
</menu>
Исходя из поставленной задачи, делаем так, т.е. переносим меню "Service Searching" на один уровень вверх в главное меню "Main menu":
Код:
<menu text="Mainmenu" title="Main menu">
	<id val="mainmenu" />
		....
		....
		....
		<menu weight="10" level="0" text="Setup" flushConfigOnClose="1" entryID="setup_selection" >
			<id val="setup" />
			....
			....
			....
			....
		</menu>
		<menu weight="11" level="0" text="Service Searching" entryID="service_searching_selection">
			<id val="scan" />
			<item text="Tuner configuration" entryID="tuner_setup"><screen module="Satconfig" screen="NimSelection" /></item>
			<item text="Automatic Scan" entryID="auto_scan"><screen module="ScanSetup" screen="ScanSimple" /></item>
			<item text="Manual Scan" entryID="manual_scan"><screen module="ScanSetup" /></item>
			....
			....
			....
		</menu>
		....
		....
		....
</menu>
Замечу, что можно, чтоб было меню и там, и там, т.е. меню "Service Searching" и в главном меню "Main Menu", и в меню "Setup". В этом нет ничего страшного.


PS. Это небольшой пример, даже не пример, а образец, так-что подключайте логику и сообразительность, и у вас все получится.
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB

Последний раз редактировалось vlamo; 06.03.2012 в 16:18.
  Ответить с цитированием

Конвертер StaticText
Старый 10.03.2012, 19:02   #45
Специалист
 
Аватар для vlamo
 
vlamo вне форума
Регистрация: 01.11.2007
Сообщений: 2,321
Отправить сообщение для vlamo с помощью ICQ
По умолчанию Конвертер StaticText

Конвертер StaticText



Передает рендеру статический текст, заданный в скине через параметры конвертера..

Пример использования в скине:
Код:
<widget source="ServiceEvent" render="RunningText" position="85,590" size="435,26" backgroundColor="secondBG" noWrap="1"
	transparent="1" zPosition="2" foregroundColor="secondFG" font="Regular;24" valign="center" halign="left"
	options="movetype=running,direction=left,step=5,steptime=25,startdelay=1000,pause=1000,startpoint=435,always=1" >
	<convert type="StaticText">dream.altmaster.net</convert>
</widget>


Конвертер распаковать и установить в /usr/lib/enigma2/python/Components/Converter
Собственно, сам конвертер:
Вложения
Тип файла: zip e2-converter_StaticText_v.0.1.zip (432 байт, 46 просмотров)
__________________
  • DM600PVR: Gemini 4.70, mgcamd_1.35/mpcs_16e, HDD 160GB
  • ET9200: Image: OpenPLi 3.0; oscam 1830; HDD 160GB
  Ответить с цитированием
Ответ

Закладки


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход




Часовой пояс GMT +3, время: 20:42.


vBulletin skin developed by: eXtremepixels
Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot


Спутниковое телевидение, оборудование для прима. Ресиверы Dreanbox Multimedia.
Самые актуальные обзоры новейших спутниковых ресиверов.