один небольшой инструмент - для него отдельный класс выделен (statelessWidget) и отдельный блок компонент. Просто этот виджет (инструмент) может вызываться в разных экранах и должен иметь разные состояния. А если этот инструмент вызывается в 5 экранах, сделать 5 разных виджетов и 5 блоков?
Сорян, может я не понимаю какое решение предлагаете.