Итого: узнать что такое сигналы-слоты, узнать что такое MVC, начинать разработку с архитекутры, а не с "кодирования".
в догонку: "Охота на мифический MVC. Обзор, возвращение к первоисточникам и про то, как анализировать и выводить шаблоны самому"
https://habrahabr.ru/post/321050/и еще "Создание архитектуры программы или как проектировать табуретку"
https://habrahabr.ru/post/276593/