Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Qt: Plugin System?

  1. #1
    Registrierter Benutzer
    Registriert seit
    17.04.2002
    Beiträge
    185

    Qt: Plugin System?

    Hallo,

    diese Frage wurde bestimmt an vielen Stellen schon zig mal gestellt, wenn ich allerdings nach "Plugin" und ähnliches Suche finde ich immer nur Anleitungen wie man eigene Widgets als Plugin in den Designer einfügt.

    Folgendes Problem: Ich will ein Art "Steuerungs- und Überwachungsprogramm" schreiben, hier soll man möglichst modular auswählen können welche Sachen angezeigt werden und im Idealfall auch zusätzliche Komponenten (zur Anzeige oder Steuerung) später programmieren und als Plugin einbinden können, also ohne das man das "Hauptprogramm" neu übersetzt. Schön wäre es, wenn man die neuen Komponenten auch weiterhin einzeln starten könnte, ähnlich wie z.B. kmail das man so starten kann oder in kontact einbinden kann. Nur die Einbindung sollte bei mir flexibler sein, da man eben mehrerer dieser Plugins (Anzeige- und Steuerelemente) gleichzeitig anzeigen können soll und sie im idealfall in einem bestimmten Bereich frei positionieren und vergrößern/verkleinern können soll.

    Habt ihr ein paar Pointer für mich? Welche Qt Klassen muss ich mir dafür genauer anschauen? Kennt ihr vielleicht kleine Beispiele, die sowas in der Art zeigen und die man sich mal ansehen könnte?

    Ach so, dass ganze sollte wenn möglich in Qt3 verwirklicht werden, da viele dieser Anzeigen, die da später eingebunden werden sollen, schon als Qt3-stand-alone Anwendungen existieren. Der Port auf Qt4 soll erst geschehen, wenn alles komplett ist und funktioniert, da es momentan wichtiger ist eine funktionierende Lösung zu haben als alles auf Qt4 zu portieren.

    Danke!

    For a world where freedom and knowledge survives the compiler! (https://www.fsfe.org)

    If art interprets our dreams, the computer executes them in the guise of programs!

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Mit Qt4 ist das natürlich bedeutend einfacher, weil es da schon Infrastruktur gibt, u.a. QPluginLoader.

    In Qt3 hast du als Ansatzpunkt erstmal QLibrary, um eine dynamische Bibliothek zu Laufzeit zu öffnen und daraus Symbole zu bekommen.
    D.h wenn z.B. durch den Namen der Bibliothek, bzw. einer Pluginbeschreibungsdatei eine Factory-Funktion mit bekanntem Syntax zugreifbar ist, kann man diese Funktion dazu benutzen, eine Art Plugin-Hauptobjekt zu erzeugen, dass dann ja über Methoden weitere Objekte erzeugen kann (so wie das die Qt eigenen Plugins machen)

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •