PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zweimal von QObject erben



axeljaeger
03-10-2003, 10:43
Ich habe das Problem, das ich eigentlich zweimal von QObject erben müsste und ich bin mir ziemlich sicher, dass das Ärger geben wird: Ich möchte ein schon recht aufwendiges MDI-GUI-Programm schreiben. Da gibt es eine ganze Menge an Widgets, die das Dokument, das gerade bearbeitet wird, beobachten müssen. Dazu hab ich mir gedacht, das ich jedes Widget, das mein Dokument beobachten soll, von einer zweiten Klasse DocumentObserver erben lasse. Da ich im DocumentObserver auch Signals&Slots brauchen kann, ist klar, das DocumentObserver von QObject erben muss. Da ergibt sich jetzt das Problem, das etwa ein Dockwindow, in dem Elemente des Dokuments angezeigt würden, sowohl von QDockWindow (1x QObject), als auch von DocumentObserver (das zweite QObject) erben müsste. Auf was muss ich achten, im das zu realisieren?

anda_skoa
03-10-2003, 12:00
Man darf nur einmal von QObject ableiten.

Da die Slot zur Runtime connectet werden, brauchst du sie ansich nicht in einer Basis Klasse deklarieren.
Du connectest einfach mit einem übergebenen QObject Pointer.

Wenn dieser die Slots nicht hat, ist das keine Krise, da bekommt man nur ein Warning auf der Konsole.

Stichwort loose coupling.

Ciao,
_