Criando um fluxograma editável em Qt / C ++

Estou trabalhando na criação de um fluxograma editável e estou tendo muitos problemas conceitualmente com o Qt. Eu tentei muitas maneiras diferentes de implementar classes que variam deQTreeWidget, QTableWidgete usando apenas um monte deQPushButtons.

Idealmente, eu gostaria de ter uma configuração na qual eu possa clicar com o botão direito do mouse em cada parte do fluxo e editá-la. Além de ter um recurso de arrastar e soltar para reorganizar os objetos no fluxo. Tentar encontrar uma classe / grupo de classes que eu possa usar juntos para conseguir isso tem sido uma luta.

Quais classes funcionariam melhor para este aplicativo; especificamente classes GUI? O conteúdo real da edição não deve ser relevante para a GUI que estou procurando por sugestões ou métodos que posso ter perdido. Além da funcionalidade, ele não precisa parecer tão sofisticado; retângulos e linhas retas seriam suficientes.

Até agora, sei como usar e implementar contextMenus e Menus regulares para conter todas as ações de que preciso, mas agora preciso encontrar um modelo e uma exibição que sejam compatíveis com meus planos e possam conter os dados. (Essa é a parte mais fácil; eu tenho minha própria aula para isso)

Eu sou novo no Qt e C ++. (Não é novo na programação orientada a objetos, apenas a sintaxe e a API diferentes.)

O tipo de fluxograma que estou procurando é o seguinte:

Ou você pode simplesmente pesquisar no Google 'fluxograma' (tirado do contexto e não preciso de cores)

Desde já, obrigado. Ainda não encontrei uma solução que entenda; ou que usa codificação Qt. Todas as sugestões são apreciadas.