https://en.wikipedia.org/wiki/Dependency_inversion_principle Basically what you are doing is evil. You should connect m_tree_view->selectionModel()'s currentIndexChanged() signal with a slot that calls setHeaderData in the model. that's all