Честно сказать, не до конца понял суть вопроса.
Для чего возвращать и использовать отмеченные каналы?
Прошу прощения, видимо я плохо объяснил:
Речь идёт о том, что для моей задачи необходимо, вызвать класс, либо функцию, просмотра и выбора каналов. Затем выбрать несколько каналов (либо все) из появившегося списка и выйдя из просмотра, необходимо вернуть список выбранных для последующей обработки.
Далее я хочу использовать эти выбранные каналы для фильтрации
EPG.
В
enigma2 существует такой класс, как
ChannelSelection. Результат которого мы можем обычно видеть, когда, при просмотре канала и пустом экране, мы нажимаем клавишу
Вверх или
Вниз. В этом окне мы можем выбрать любой канал и после нажатия клавиши
Ок, произойдет переключение на выбранный канал (надеюсь теперь понятно о каком классе я говорю).
Так вот, если в этом же окне нажать клавишу
Menu, то мы можем выбрать в появившемся окне, пункт
8 «Включить редактирование пакетов». После чего выделенные пакеты отмечаются красным. Затем вновь, нажав на клавишу
Menu, мы можем закончить редактирование выбрав пункт
2 «Закончить редактирование пакетов». Таким образом мы можем добавить несколько каналов в «
Избранное». Это стандартная процедура работы со списком
«Избранное».
Для вызова процесса редактирования каналов отвечает класс
ChannelSelectionEdit, который является родителем класса
ChannelSelection.
Моя идея заключается в том, чтобы создать класс, где родителем будет являться
ChannelSelection (и следовательно и
ChannelSelectionEdit) и затем, при открытии этого класса, вызвать сразу пункт редактирования каналов (за это отвечает метод
startMarkedEdit класса
ChannelSelectionEdit) и после закрытия окна класса попытаться вернуть список выбранных красным цветом каналов.
Вопрос заключается в том, как вернуть список выбранных каналов?
Обследовал весь класс
ChannelSelectionEdit- его родителей и предков. Нашел только свойство класса
ChannelSelectionEdit, которое называется
mutableList. Но видимо я не правильно его вызываю или использую, так как возникает нижеописанная мною ошибка. Для пояснения выкладываю код моего класса:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Вызов своего класса осуществляю из другого своего окна таким вот образом:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Всё вроде логично и просто, но штука в том, что возврат значения не осуществляется, а возникает ошибка:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Из трассировки ошибки видно, что ошибка возникает при вызове
self.startMarkedEdit(EDIT_BOUQUET )Подскажите друзья, как правильно её вызвать тогда и как далее получить список отмеченных каналов?
Если например речь идет о формировании некоего фаворита, то scorpionas56 стопудово прав, легче, быстрее и правильнее это делать именно на дримбоксэдите.....
Я и не говорю, что он не прав. Просто попросил его пояснить - как именно?
На что была тишина в ответ. Возможно человек был просто занят и не смог до сих пор ответить.
Но на результат моих изысканий это никак не влияет)))