RCP: Veraenderungen innerhalb einer View per Extension?!

Status
Nicht offen für weitere Antworten.

Chyper

Mitglied
Hallo,

ist es moeglich in eine bestehende View per Extension z.B. ein Textfeld hinzuzufuegen (oder auch zu entfernen)?
Ich hab jetzt schon einige Zeit im Internet gesucht aber ich konnte bisher nur Beispiele fuer neue Views oder Perspektiven finden jedoch nicht fuer neue Elemente innerhalb einer View.

Gruß
Chyper
 
G

Gonzo17

Gast
Fällt mir spontan nur ein, dass du einen neuen View erstellen könntest, der von dem View, den du haben möchtest, erbt. Da kannst du dann eben ändern was du möchtest. Aber die schwierigere Sache dabei wird wohl sein immer den "neuen" View zu verwenden statt dem "alten". Ich weiss ja grade nicht genau, was du damit vor hast, deswegen ist das schwer einzuschätzen.
 

Chyper

Mitglied
Also ich will folgendes machen:
Es soll eine View je nachdem welche OSGi-Bundles/Plugins gerade installiert sind verändert werden.
Die Anwendung soll dynamisch zur Laufzeit (getriggert von aeußeren Faktoren (einfaches Beispiel z.B. die Uhrzeit)) verschiedene Plugins aktivieren bzw. wieder deaktivieren und dabei sollen die relevanten Elemente (erstmal nur Textfelder und Labels) der Plugins auf der View erscheinen bzw. wieder verschwinden.
 
G

Gonzo17

Gast
Der Punkt, der mir noch nicht ganz klar ist, ist ob du einen View von Eclipse oder einem anderen Plug-In nutzen möchtest oder einen View von dir selbst. Wenns einer ist, den du selbst gecodet hast, dann stellt die Änderung zur Laufzeit denke ich ein kleineres Problem dar, da du den Code ja verändern kannst.

Hast du es schon hinbekommen, dass Plug-Ins aktiviert und deaktiviert werden während der Laufzeit? Das wäre mal der erste Schritt denke ich.
 

Wildcard

Top Contributor
Das solltest du über einen OSGi Service realisieren.
Deine View reagiert auf das verfügbarwerden eines bestimmten OSGi Services und wann immer einer dazu kommt, aktualisierst du die View entsprechend.
 

Chyper

Mitglied
Danke fuer eure Anmerkungen.

Gonzo: Ja das funktionert.

Wildcard:
Du meinst also ich sollte die zusaetzlichen GUI elemente alle im "Hauptprogramm" definieren/managen und nicht in den einzelnen Bundles?
Waere eine Moeglichkeit, is allerdings nicht ganz so schoen/flexibel als wenn die Elemente in den einzelnen Bundles definiert waeren. Extensions braeuchte ich in dem Fall ja auch nicht. Nur eine Pruefung im Hauptprogramm gegen das OSGi Framework ob Bundle xy aktiv ist und dann entsprechend Aenderungen an der View vollziehen.
 
Zuletzt bearbeitet:

Wildcard

Top Contributor
Nein, das meine ich nicht. Deine View muss nur in der Lage sein generischen Inhalt zusätzlicher Bundles zur Laufzeit hinzufügen, nicht selbst die Widgets kennen. Die Widgets kann der OSGi Service liefern.
Idealerweise schreibst du nur eine leere Container View und wenn du irgendwelche Widgets hast die 'immer' da sein sollen, dann kann dein 'Haupt' Bundle die Widgets auf genau die gleiche Weise einhängen. Schau dir als Beispiel einfach mal die TabbedPropertiesView an, deren unterschiedliche Sections funktionieren genauso.
Du musst dich nur entscheiden ob diese erweiterungen dynamisch zur Laufzeit hinzukommen (dann per OSGi Service), oder ob es genügt Bundles einzubinden die beim Eclipse start vorhanden waren, in diesem Fall ist ein eigener ExtensionPoint die einfacherer Alternative. Das wäre dann 1:1 so wie von der TabbedPropertiesView vorgelebt.
 

Chyper

Mitglied
Achso. Dann werd ich mir das mit den TabbedPropertiesViews mal anschauen und versuchen das per ExtensionPoint zu realisieren. Danke erstmal!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N GMF Reihenfolge innerhalb von Compartments änderbar machen Plattformprogrammierung 2
N plugin dependencies innerhalb eines projects halten Plattformprogrammierung 11
K Problem bei Einbinden einer DLL in Java-Projekt Plattformprogrammierung 4
D IPerspectiveFactory in einer e4 application Plattformprogrammierung 2
B Entwicklung einer Webplattform Plattformprogrammierung 1
maestr0 WorkingSets mit Komma getrennt in einer ComboBox anzeigen lassen Plattformprogrammierung 2
dzim Migration einer bestehenden Applikation nach e4 Plattformprogrammierung 11
Mike90 Error beim Öffnen einer RCP-App Plattformprogrammierung 2
W SWTException beim Schließen einer ViewPart Plattformprogrammierung 13
dzim RCP Überführen einer RCP-Anwendung nach RAP Plattformprogrammierung 11
X Teile einer p2 UpdateSite mit b3 aggregator spiegeln Plattformprogrammierung 4
S RCP name einer view ändern Plattformprogrammierung 2
Mike90 RCP 2Views und einer davon als Placeholder Plattformprogrammierung 4
T Expression Definitions in einer RCP Plattformprogrammierung 3
L RCP Canvas in einer View? Plattformprogrammierung 4
M Eclipse RCP: überflüssige Icons in einer Toolbar Plattformprogrammierung 6
F Eclipse Plugin - Rückgabewert einer Methode Plattformprogrammierung 4
dzim Kontrolliertes Beenden einer Application Plattformprogrammierung 7
S In einem Plugin main einer anderen Klasse aufrufen Plattformprogrammierung 18
K TextFeld in einer ToolBar Plattformprogrammierung 2
K Position einer Multiple View speichern Plattformprogrammierung 6
dzim Implementieren einer Help-Seite Plattformprogrammierung 18
S Literatur: Kennt einer ein gutes RCP Buch Plattformprogrammierung 13
R SWT: nur eine Instanz einer View erlauben Plattformprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben