но суть в том, что данный if я скопипастил и ломаю голову, как его изменить, чтоб подошел мненикогда так не делай - в этом твоя основная проблема: копипаст без понимания логики работы кода!
Есть одностороння ... т.е. в результате обработки события меняется модель
Есть двухсторонняя, когда интерфейс может изменить модель, и в интерфейсе отобразятся новые данные из модели.