Your problem seems related only to GUI, where is the data ??
I am not sure of the Model View architecture... but can suggest the following pseudo code for ur problem -

Qt Code:
  1. class MyWindow : public QMainWindow
  2. {
  3.  
  4. LabelWidget * m_pLabelWidget;
  5. Screen * m_pScreen;
  6.  
  7. MyWindow()
  8. {
  9. connect(m_pLabelWidget,SIGNAL(buttonClicked(QString),this,SLOT(handleButtonClick(QString));
  10. }
  11. }
  12.  
  13. void MyWindow::handleButton(QString button)
  14. {
  15. if(button == "1")
  16. {
  17. m_pScreen->changeColor(green);
  18. // pop dialog
  19. // other things you want to do....
  20. }
  21. else ...
  22. ...
  23. }
To copy to clipboard, switch view to plain text mode 
Hope it helps