RCP Statische Commands in dynamischem Sub-Menü?

T

tuxedo

Gast
Hallo zusammen,

ich hab eine Eclipse RCP Anwendung, welche u.a. folgendes Menü hat bzw. haben soll:

Code:
Menüleiste
         +-----------[Konfigurieren]
                                   +-----------[Profile]
                                                       +--------[Profil 1]
                                                       |                 +------löschen
                                                       |                 +------anwenden
                                                       |                 +------umbenennen
                                                       |                 +------....
                                                       +--------[Profil ...]
                                                       |                   +------löschen
                                                       |                   +------anwenden
                                                       |                   +------umbenennen
                                                       |                   +------....
                                                       +--------[Profil n]
                                                                         +------löschen
                                                                         +------anwenden
                                                                         +------umbenennen
                                                                         +------....

Die Sub-Menüs "Profil X" werden basierend auf der Selektion in den Editoren/Views zur Laufzeit generiert. Die Anzahl, sowie der Name des "Profil X" Submenüs ist variabel (siehe auch: http://www.java-forum.org/plattform...lipse-rcp-plugin-workbench-initialisiert.html). Soweit so gut. Bis hierhin klappt alles.

Die oben gezeigten Kommandos "löschen", "anwenden",.... etc. möchte ich auf deklarierten Commands in der plugin.xml basieren lassen. Die Frage ist jetzt: Wenn ich ein "Profil X" Sub-Menü programmatisch anlege: Wie kann ich ein bereits deklariertes Kommando in dieses Sub-Menü einfügen?

Aktuell sieht der Code zum erstellen der Profil-Sub-Menüs so aus:

Java:
				List<ColorBrightnessProfile> colorBrightnessProfiles = wall.getColorBrightnessProfiles();
				
				for (Iterator iterator = colorBrightnessProfiles.iterator(); iterator.hasNext();) {
					ColorBrightnessProfile colorBrightnessProfile = (ColorBrightnessProfile) iterator.next();
					
					MenuManager profile = new MenuManager(colorBrightnessProfile.getProfileName(), "x.y.z.configuremenu.colorbrightnessprofiles."+colorBrightnessProfile.getProfileName());
					profile.setVisible(true);
					

					// Sowas hier geht ...
					IWorkbenchAction aboutAction = ActionFactory.ABOUT.create(window);
					profile.add(aboutAction);

					// ... aber wie füge ich Commands ein die ich in der Plugin-XML definiert habe?
					
					cbpMenu.insert(0, profile); // cbpMenu ist in der obigen Grafik das Menu "Profile"
					
					System.out.println("Inserted Profile: "+profile);
				}

Die nächste Frage wäre: Wenn das geht was ich vor habe: Wie parametrisiere ich die Commands so, dass ich im gemeinsamen Handler weiß, welche Aktion aus welchem Sub-Menü (bzw. Profil) ich aufgerufen habe?

Gruß
Alex
 
T

tuxedo

Gast
34 Hits und keiner kann was dazu sagen? Google hat mich in der zwischenzeit auch noch nicht weiter gebracht. So langsam aber sicher glaub ich, dass das was hier unser ProduktManagement sich wünscht, im Eclipse RCP Umfeld so a) nicht möglich ist oder zumindest b) kein Mensch macht weils total unüblich ist.

Bin weiterhin über jeden hilfreichen Tipp froh ...
 

Wildcard

Top Contributor
Tut mir leid, dazu fällt mir leider nichts ein.
So langsam aber sicher glaub ich, dass das was hier unser ProduktManagement sich wünscht, im Eclipse RCP Umfeld so a) nicht möglich ist oder zumindest b) kein Mensch macht weils total unüblich ist.
Dem Produktmanagement muss man irgendwann beibringen das Eclipse zwar eine tolle Platform ist, es aber unsinnig ist zwangsläufig seine Vorstellungen durchdrücken zu wollen.
Man sollte sich an den Eclipse Vorgaben zur Benutzerführung orientieren, sonst verwirrt man nur die Anwender und setzt viel Geld in den Sand.
Das heißt nicht, das man sich nicht selbst kreative Konzepte ausdenken kann, aber völlig gegen den Strom zu schwimmen hilft eigentlich niemand.
 

Ähnliche Java Themen


Oben