ugeneunipro / ugene

UGENE is free open-source cross-platform bioinformatics software
http://ugene.net
GNU General Public License v2.0
207 stars 60 forks source link

UGENE-8136 "Exclude enzymes found in the exclude region" incorrect behaviour #1662

Closed rasputinkirill closed 2 weeks ago

rasputinkirill commented 3 weeks ago

@DmitriiSukhomlinov Сделал исправления проблемы из первого сценария. Во втором там файл неверный похоже, проверь пожалуйста.

rasputinkirill commented 3 weeks ago

Дополнил в соответствии со сценарием 2. @yalgaer @DmitriiSukhomlinov
Предлагаю обсудить ожидаемое поведение в сценарии 3 в задаче. Мне кажется нелогичным выносить управление валидацией полей вовне класса RegionSelector, так как он имеет свой валидатор внутри и относительно этого элемента у него данные верны. Я бы предложил сделать в самом виджете "Search in" лейбл и в него писать ворнинг, как в FindPattern например. Если же все таки реализуем первый вариант, то там предлагаю подсвечивать оба поля ввода, так как они оба "неподходящие" относительно друг друга. Что скажете?

yalgaer commented 3 weeks ago

Мне кажется нелогичным выносить управление валидацией полей вовне класса RegionSelector, так как он имеет свой валидатор внутри и относительно этого элемента у него данные верны.

В данном случае валидация одного региона (региона поиска) зависит от валидации другого региона (exclude региона) и наоборот.

В итоге валидация должна быть вне этих виджетов, так как выходит за контекст данных каждого из них.

Если сделать реактивную валидацию сложно - просто валидируй разово финальное состояние уже после нажатия кнопки OK и не запускай расчет и не закрывай диалог если настройки в диалоге получились некорректные (выдавай ошибку в message box)

yalgaer commented 2 weeks ago

Замечаний нет, апрув после тестов