Make a boolean variable, example: drawCircleChecked, and put a if condition if(drawCircleChecked == true) { paint(); }.
There is no need for signal / slot mechanism here if I understand correctly.
Also buttons in Qt can be made checkable, meaning click for check / click for uncheck, so when drawing you can check which button has been checked.
Bookmarks