Ik weet daar geen nette oplossing voor...

. Daarvoor werk ik te weinig met Qt.

.
Wat je eventueel kan proberen [mode=vieze_hacks], is om een recurring timeout van 1 second (bv.) in de main thread te doen, waarbij dus elke seconde een wake-up van de listen-to-socket() van X gebeurt. Onder Gtk/Glib gebeurt dit met g_timeout_add(), Qt zal daar ook wel een functie voor hebben... Deze functie checkt dan elke seconde of er een redraw moet gebeuren omdat de data compleet is, en zo ja, dan sluit ie de timout af (dan moet je in de Qt documentatie ff doorzoeken hoe dat moet, in Gtk+/Glib return't de functie die je in g_timeout_add() geeft TRUE om de timeout niet te verwijderen, of FALSE om 'em wel te verwijderen).
Het is hacky, maar wel het makkelijkste wat ik kan bedenken... Er moet ook een nette manier zijn, maar daar kan ik niet zo snel opkomen...

. Als ik d'r ooit achterkom, zal ik 't hier nog wel toevoegen als addendum.