10.6.14. Класс cerebro.events.BeforeEventChangingOfTasks

class cerebro.events.BeforeEventChangingOfTasks(event_type, event_id)[исходный код]
Базовые классы: cerebro.events.EventChangingOfTasks

Класс для события изменения свойства у одной или сразу нескольких задач. Предоставляет доступ к данным редактируемых задач перед записью в базу данных.

Методы

Предупреждение

Этот класс используется при редактировании большинства свойств, но есть и исключения. При редактировании некоторых свойств, например тегов задачи, используются другие классы. Смотрите весь список классов событий.

Объект класса передается в функции before_event и error_event (в случаи возникновения ошибки) модуля event.

def before_event(event):        
        if event.event_type() == event.EVENT_CHANGING_OF_TASKS_PROGRESS:
                ...

См.также

AfterEventChangingOfTasks.

new_value()[исходный код]
Результат:новое значение редактируемого свойства.

Тип возвращаемого значения зависит от редактирумого свойства. Для определения нужного типа смотрите методы класса cerebro.aclasses.Task по получению значений аналогичных свойств.

Примечание

Чтобы узнать текущие значения, возпользуйтесь соответствующими методами редактируемых задач tasks().

def before_event(event):        
        if event.event_type() == event.EVENT_CHANGING_OF_TASKS_ACTIVITY: # изменяется вид деятельности
        
                tasks = event.tasks()
                for task in tasks:
                        print('Имя задачи', task.name())
                        print('<Бывший вид деятельности', task.activity())
                
                print('Новый вид деятельности', event.new_value())                                      
set_new_value(val)[исходный код]
Параметры:val – значение свойства.

Устанавливает новое значение редактируемого свойства.

Тип нового значения зависит от редактируемого свойства. Для определения нужного типа смотрите методы класса cerebro.aclasses.Task по установке значений аналогичных свойств.

if event.type() == event.EVENT_CHANGING_OF_TASKS_NAME:
        task_name = event.new_value()
        if task_name.isupper() == False:
                new_name = task_name.upper() # переводим буквы в верхний регистр
                event.set_new_value(new_name) # подменяем введенноё пользователем значение на новое