RCP Commands nutzen / org.eclipse.ui.file.save

Ronschk

Mitglied
Hi,
Ich bin gerade dabei das Ralf Ebert Tutorial zu Rcp durchzuabreiten und hänge an der Stelle mit den Commands bzw Handlern.
Wenn ich einen eigenen Handler machen will funktioniert das do so:
ich hole mir die Extension org.eclipse.ui.handlers, erstelle einne handler und in der entsprechenden Klasse implementiere ich die Funktion.
Dann die Extension org.eclipse.ui.commands, in der erstelle ich einen Command bei dem ich dann den eben erstellten Handler als default Handler angebe.
Danach hole ich org.eclipse.ui.menus, ertselle eine Menu Contribution, danach ein Menu und dann ein Command. Und in diesem Command schreibe ich dann als ID die ID vom vorher erstellten Command?

Warum kann ich nicht direkt in dem Command den Handler einstellen? (Falls meine Vorgehensweise richtig war).
Und welchen Nutzen haben die Commands org.eclipse.ui.file.save (etc)? Wenn ich bei dem Command, den ich zu den Menus hinzugefügt habe, diese ID angebe habe ich zwar, wenn ich dann in meinem Programm bin und den Menu-Punkt auswähle, nen schönes speicher-Disketten-Symbol, aber das wars. Ich kann es nicht nutzen, und der zugehörige Handler wüsste ja auch garnicht, was und wie gespeichert werden soll.

Ich habe leider bisher keinen Artikel gefunden der diese Probleme beseitigen könnte. Kann jemand helfen?
 
G

Gast2

Gast
Du solltest mal lernen deine Fragen, Probleme und dein Vorhaben präziser zu beschreiben.

Warum kann ich nicht direkt in dem Command den Handler einstellen? (Falls meine Vorgehensweise richtig war).
Kannst du doch? Einfach im Extension Point vom Command den defaultHandler (Klasse) eintragen. fertig

Und welchen Nutzen haben die Commands org.eclipse.ui.file.save (etc)?
Das sind Command die Eclipse eben schon bereit stellt, weil Sie diese selber nutzen.
Du musst den Command noch im ApplicationActionBarAdvisor registrieren.
Was willst du mit dem Command erreichen?
 

Ronschk

Mitglied
Also ich möchte einen Save-Command in meinem Menü haben.
Erste Mgölichkeit:
Ich erstelle einen Handler "h1" in org.eclipse.ui.handlers in dem die Speicherfunktion steht.
Ich erstelle einen Command "c1" in org.eclipse.ui.commands der bei default handler "h1" stehen hat.
Ich erstelle eine Menu-Contribution und darunter ein Menu in org.eclipse.ui.menus. Auf des Menu mache ich einen Rechtsklick und erstelle einen neuen command.
Diesem Command gebe ich dann die Id von dem command c1. Wenn ich dann mein Programm starte wird der handler h1 aufgerufen wenn ich den Eintrag im Menu anklicke.

Ist diese Vorgehensweise im Allgemeinen richtig? Ich verstehe halt nicht warum ich nicht bei dem Command, den ich durch Rechtsklick auf das Menu erstellt habe, einen Handler eintragen kann.

Möglichkeit zwei:
Ich erstelle eine Menu-Contribution und darunter ein Menu in org.eckupse.ui.menus. Dann füge ich wie oben ein Command per Rechtsklick hinzu, aber gebe als Id "org.eclipse.ui.file.save" an.
WtRjDM0zvV.jpg


Wenn ich jetzt mein Programm starte ist in dem Menu ein Save-Eintrag mit Disketten-Symbol und shortcut. Den Eintrag kann ich nicht anklicken - er ist ausgegraut. Wie kann ich die Funktion von diesem Eintrag jetzt beeinflussen?
 
G

Gast2

Gast
Wenn ich jetzt mein Programm starte ist in dem Menu ein Save-Eintrag mit Disketten-Symbol und shortcut. Den Eintrag kann ich nicht anklicken - er ist ausgegraut. Wie kann ich die Funktion von diesem Eintrag jetzt beeinflussen?
Hab ich schon beantwortet...
Das sind Command die Eclipse eben schon bereit stellt, weil Sie diese selber nutzen.
Du musst den Command noch im ApplicationActionBarAdvisor registrieren.
Was willst du mit dem Command erreichen?

Dieser Command ist nur Aktiv wenn du ein ISavePartable implementiertst (EditorPart macht das) und isDirty auf true steht
 

Ronschk

Mitglied
hmm ich habe jetzt mir nochmal ein Tutorial zu dme Tehma durchgelesen und einfach die commandId von dem handler den ich erstellt habe ebenfalls auf "org.eclipse.ui.file.save" gesetzt und jetzt ruft er den Handler auf.
Ich hab halt nicht gewusst, dass man beim Hanlder eingeben muss, zu welchem Command er gehört.

Nun noch eine Frage:
Worin besteht der Unterschied wenn ich bei einem selbst erstellten Command bei dem Feld "default Handler" die Id des Handlers eintrage oder bei dem Handler im Feld "commandId" die Id des Commands eitrage?
Die Wirkung scheint dieselbe zu sein..
 

Ronschk

Mitglied
hä?
also erstmal danke dafür.
Aber drücke ich mich so kompliziert aus?
Es waren zwei Dinge: Was die richtige Weise ist einen custom Command zu erstellen und ihm einen custom Handler zuzufügen. Bzw warum es sowohl in der Menu-Contribution als auch woanders Commands gibt.

Das andere war, wie ich die Funktion des des org.eclipse.ui.file.save-commands ändern kann.
Letzteres hat jetzt geklappt indem ich die commandId meines selbst erstellten Handlers ebenfalls auf org.eclipse.ui.file.save gesetzt habe.

Und zum ersteren weiß ich denke ich auch die Antworten. Also... ist alles okay :p
 
G

Gast2

Gast
Aber drücke ich mich so kompliziert aus?

Ja machst du... :)

Es waren zwei Dinge: Was die richtige Weise ist einen custom Command zu erstellen und ihm einen custom Handler zuzufügen. Bzw warum es sowohl in der Menu-Contribution als auch woanders Commands gibt.
Es gibt nur einen Extension Point um commands anzulegen, diese kann man auf verschiedenste Weise nutzen, in einer Toolbar,Menü, programmatisch usw.. Ich glaube du hast nicht verstanden was commands sind.
Platform Command Framework - Eclipsepedia


Das andere war, wie ich die Funktion des des org.eclipse.ui.file.save-commands ändern kann.
Letzteres hat jetzt geklappt indem ich die commandId meines selbst erstellten Handlers ebenfalls auf org.eclipse.ui.file.save gesetzt habe.
Warum sollte man sowas machen wollen??? Sowas macht man einfach nicht!!!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T RCP Statische Commands in dynamischem Sub-Menü? Plattformprogrammierung 2
C RCP Zwei Commands in einem Handler Plattformprogrammierung 2
F RCP EditorPart Commands hinzufügen Plattformprogrammierung 3
C objectContribution mit Commands Plattformprogrammierung 3
S Commands/Menüeinträge/Toolbars Plattformprogrammierung 3
Saxony Zugriff auf Commands in Toolbar Plattformprogrammierung 9
G ActionSet,commands,IWorkbenchWindowActionDelegate Plattformprogrammierung 19
S XMI Datensatz in RAP Anwendung nutzen Plattformprogrammierung 2
feinperligekohlensaeure Eclipse Workspace gemeinsam Nutzen -> keine .project Datei Plattformprogrammierung 1
D RCP closed source RCP erweitern & Plugins nutzen Plattformprogrammierung 4
M RCP Resources Plugin nutzen und erweitern... aber wie? Plattformprogrammierung 6
dzim Nerviges Gepiepe beim Nutzen von KeyListenern & Scrollbare Composites Plattformprogrammierung 2
E OSGi Eclipse Plug-in programmierung: java.lang.NullPointerException: Cannot enter synchronized block because "profile" is null Plattformprogrammierung 4
R Eclipse Bundles Plattformprogrammierung 2
Robertop RCP Command in bereits bestehendes Eclipse-Menü einbauen Plattformprogrammierung 4
T Java Projekt läuft nur in Eclipse Plattformprogrammierung 6
M Eclipse Plugin PreferencePage BooleanFieldEditor Plattformprogrammierung 1
F OSGi Plugin unter Eclipse arbeitet anders als wenn veröffentlicht Plattformprogrammierung 2
D RCP P2-Repository für Eclipse-Plugins Plattformprogrammierung 0
M Debuging in Eclipse Annotations Processor Plattformprogrammierung 0
D Nach Sprachpaket Installation kann eclipse nicht mehr gestartet werden Plattformprogrammierung 4
L0MiN Wie kann ich ein Klassendiagramm aus Eclipse heraus erstellen? Plattformprogrammierung 5
M Eclipse Probleme beim Ausführen eines Programms Plattformprogrammierung 3
F Eclipse Build Path auf benötigte Projekte Plattformprogrammierung 4
B Daten von Eclipse extern sichern Plattformprogrammierung 2
B Eclipse zeigt Fehler nach Java-Update auf 1.8.0_40 Plattformprogrammierung 3
VfL_Freak [Eclipse] Fehleranzeige im Reiter "Problems" Plattformprogrammierung 1
S Errors in workspace bei eclipse Plattformprogrammierung 3
T eclipse bietet keine META-INF an Plattformprogrammierung 1
N Eclipse wo starten Plattformprogrammierung 6
A Eclipse schließt einfach ohne Fehlermeldung Plattformprogrammierung 4
W Eclipse vergißt beim Exportieren Resources-Ordner Plattformprogrammierung 11
A RCP Eclipse e4 und Injection-Contexts Plattformprogrammierung 0
K Eclipse fährt nicht mehr hoch. Metadatendatei schuld? Plattformprogrammierung 7
C [Eclipse RCP E4]InjectionException: no actual value was found for the argument "MDirtyable" Plattformprogrammierung 8
T Eclipse Eigenschaften hinzufügen Plattformprogrammierung 2
M RCP [Eclipse RCP 3.4] ViewTab Kontextmenu "Alle schließen" Plattformprogrammierung 0
D Problem mit eclipse Plattformprogrammierung 2
S Verschieben des Verzeichnis .eclipse aus Userprofile Plattformprogrammierung 3
A RCP Kann kein Eclipse 4 Projekt anlegen Plattformprogrammierung 0
S RCP Exportiertes RCP Produkt lädt Datei nicht, bei Start aus Eclipse wird Datei jedoch gefunden Plattformprogrammierung 6
G Eine Library in Eclipse zur Verfügung stellen Plattformprogrammierung 14
Gregorrr Eclipse RCP Product Build-Nummer + Jenkins Plattformprogrammierung 6
R Einfaches Eclipse-Plugin-Beispiel funktioniert nicht Plattformprogrammierung 5
H OSGi OSGi + Logback + slf4j - Eclipse Run Configuration Plattformprogrammierung 7
C plugin development environment eclipse Plattformprogrammierung 4
O Installiere externe Methode "containsNone" in Eclipse Plattformprogrammierung 2
M Keybinding in Eclipse Plugin Plattformprogrammierung 3
TheWhiteShadow RCP Konstrukt für Editor in Eclipse gesucht. Plattformprogrammierung 3
B Eclipse Probleme mit build Plattformprogrammierung 8
H Keine Hilfe/API mehr in Eclipse Juno? Plattformprogrammierung 4
B Neue SuppressWarning in Eclipse Juno Plattformprogrammierung 6
B Eclipse Property Page Plattformprogrammierung 6
B Eclipse PreferencePage Plattformprogrammierung 3
B Eclipse Plugin Einstellungsleiste Plattformprogrammierung 2
B Birt-Previewer über Eclipse Plattformprogrammierung 14
J Eclipse Plug-In für UML-Diagramme Problem Plattformprogrammierung 4
O Eclipse Plugin - Einfachstes Problem, das es gibt. Plattformprogrammierung 2
R Eclipse RCP Tabellen-View (Anfängerfrage) Plattformprogrammierung 3
C Eclipse: Notification beim umbennen von Methoden? Plattformprogrammierung 4
schalentier Eclipse Sourcecode Plattformprogrammierung 4
A Eclipse undo/redo button reagiert nicht auf Änderungen in der OperationHistory Plattformprogrammierung 5
P Eclipse M2_REPO (NON MODIFIABLE) Plattformprogrammierung 8
B Eclipse: Contextmenu id erhalten? Plattformprogrammierung 9
H Datei in eclipse wird nicht erkannt Plattformprogrammierung 3
O Neues Tastenkürzel für Eclipse Editorfenster registrieren Plattformprogrammierung 2
3 Eclipse Editor Plugin selektiert Projekt nicht Plattformprogrammierung 10
Madlip RCP eclipse.ui.bindings (Key-Problematik) Plattformprogrammierung 2
S Eclipse vs. JavaMail vs. Ubuntu vs. Windows Plattformprogrammierung 3
M eclipse führt applikationen nicht mehr aus Plattformprogrammierung 6
S Eclipse: Auf CTRL-C/CTRL-V im Package Explorer? Plattformprogrammierung 4
M Eclipse und Hilfen Plattformprogrammierung 5
G Eclipse buggt rum!!! Plattformprogrammierung 4
B Eclipse RCP und Java 7 Plattformprogrammierung 7
G RCP Eclipse Editor + Guice Plattformprogrammierung 8
T RCP Eclipse RCP: Wo/wann im Plugin ist workbench initialisiert? Plattformprogrammierung 14
G Eclipse Plug-in: wie refreshe ich eine combobox? Plattformprogrammierung 4
M Eclipse Plug-in: Wie eine Grafik einfügen? Plattformprogrammierung 20
M RCP [Eclipse RCP] Feature Export und "Fehler"... Plattformprogrammierung 3
P Eclipse speichert keine Änderungen Plattformprogrammierung 5
M Eclipse - Dokumentation nicht über das Internet benutzen Plattformprogrammierung 3
C Eclipse Plugin NoClassDefFoundError Plattformprogrammierung 4
E org.eclipse.ui.dialogs.ListSelectionDialog erzeugt ClassNotFoundException zur Laufzeit Plattformprogrammierung 4
M Eclipse Plugin Entwicklung - NoClassDefFoundError Plattformprogrammierung 10
C RCP Verständnisfrage Eclipse/Equinox Plattformprogrammierung 4
D eclipse-RCP von der Konsole baut nicht Plattformprogrammierung 3
L RCP Eclipse Popupmenu im PackageExplorer erweitern? Plattformprogrammierung 7
C Eclipse Plugin Entwicklung: Editor für Flussdiagramme Plattformprogrammierung 6
S (OSGI - EQUINOX) Welche Eclipse IDE? Plattformprogrammierung 3
C Pdf in jar datei einbinden mit eclipse Plattformprogrammierung 23
G neuer branch in SVN mit Eclipse Plattformprogrammierung 6
F RCP eclipse rcp ohne eclipse? Plattformprogrammierung 15
dzim RCP Eclipse Provisioning Plattformprogrammierung 3
G RCP Abhängigkeiten von Eclipse Plugins Plattformprogrammierung 9
K Eclipse RCP, EMF, Hibernate Problem Plattformprogrammierung 7
B RCP eigenes Eclipse Plugin wird nicht aufgelöst Plattformprogrammierung 7
T Eclipse Helios XMLUnit importieren Plattformprogrammierung 6
R Verwendung pdfbox in Maven-Projekt in Eclipse Plattformprogrammierung 3
lumo RCP wechseln der Font von Eclipse per code Plattformprogrammierung 10
lumo RCP Eclipse internationalisierung Plattformprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben