RCP Eigene Klasse für Views

adipure

Mitglied
Hallo,
ich bin gerade dabei mich in Eclipse RCP einzuarbeiten. Meine Programmierkenntnisse sind mittelmäßig...
Meine eigentliche Frage ist jetzt, ich hab mir eine View erzeugt mit der man Personen suchen kann und aus dieser View kann dann ein Editor Fenster aufgerufen werden. Nun möchte ich das Design (also die GUI) und die Logik dahinter nocheinmal für eine Personensuche aber in einem anderen Kontext benutzen... Den ganzen Code jetzt einfach zu kopieren ist natürlich Schwachsinn, aber das Auslagern in eine eigene Klasse funktioniert auch nicht irgendwie, weil ich da Probleme mit den addActionListener der Buttons bekomme....
Würd mir also das Ganze so vorstellen, dass ich eine Klasse hab die mir das Design+das bisschen Logik bereitstellt und ich diese Klasse dann in meinen verschiedenen Views aufrufe...
Könnt ihr mir da vl hilfreiche Tipps geben???!

Danke
 

Wildcard

Top Contributor
Hört sich nach einem Fall für Refactoring an.
Überlege dir was die Unterschiede und Gemeinsamkeiten der beiden Varianten sind.
Dann extrahierst du die Gemeinsamkeiten in eine abstrakte Klasse und erzeugst dann zwei konkrete Subklassen für die spezifischen Fälle.
Wenn das eine sehr aufwändige View ist können evtl. Extension Points sinnvoll sein, aber meistens genügt die gute alte abstrakte Klasse.
 

adipure

Mitglied
unterschiede gibt es nur bei der Beschriftung die TextFelder, Buttons, ComboBox und die Tabelle sind dieselben...
wie mach ich das dann mit den ActionListeneners bei den Buttons weil die hab ich jz immer direkt bei den Buttons hinzugefügt nur mit addActionListener nur jz müssen dann eben zwei verschiedene Actions aufgerufen werden
 

Wildcard

Top Contributor
wie mach ich das dann mit den ActionListeneners bei den Buttons weil die hab ich jz immer direkt bei den Buttons hinzugefügt nur mit addActionListener nur jz müssen dann eben zwei verschiedene Actions aufgerufen werden
Das ist jetzt keine hohe Softwarekunst, aber ich kenne deinen Code nicht und 'you'll get the idea'
Mach in der abstrakten Klasse eine protected Button getXYButton().
In der Implementierung dann
Java:
getXYButton().addSelectionListener(new SelectionAdapter());
 

adipure

Mitglied
meine eigene View müsste dann von ViewPart und meiner anderen abstrakten Klasse erben. Da ich einmal die GUI+Logik in einer View haben möchte und einmal in einem Dialog... nur in Java gibt es doch keine Mehrfachvererbung... Wie könnte man das Problem trotzdem lösen??
 
Zuletzt bearbeitet:
G

Gast2

Gast
meine eigene View müsste dann von ViewPart und meiner anderen abstrakten Klasse erben. Da ich einmal die GUI+Logik in einer View haben möchte und einmal in einem Dialog... nur in Java gibt es doch keine Mehrfachvererbung... Wie könnte man das Problem trotzdem lösen??

Indem du deine abstrakte Klasse(AbstractViewPart) von ViewPart erben lässt.
 

adipure

Mitglied
Insgesamt sind es zwei Views und ein Dialog-Fenster wo ich diese Klasse bräuchte..
das heißt ich mach mir eine Klasse die von Composite erbt und lass dann die Views und das Dialog-Fenster von dieser Klasse erben
 
Zuletzt bearbeitet:
G

Gast2

Gast
Insgesamt sind es zwei Views und ein Dialog-Fenster wo ich diese Klasse bräuchte..
das heißt ich mach mir eine Klasse die von Composite erbt und lass dann die Views und das Dialog-Fenster von dieser Klasse erben

Kommt auf deine Gemeinsamkeiten drauf an.

Wenn du GUI(Layout Button usw.)Gemeinsamkeiten hast addest du die am besten auf ein Composite und dieses Composite instanzierst in deinen anderen Klassen (Assoziation KEINE Vererbung)...
 

adipure

Mitglied
jz ist nur die Frage wie lös ich das Problem mit den SelectionListenern bei den Buttons?? weil die Buttons public zu machen und dann in der jeweiligen Klasse mit addSelectionListener etwas hinzufügen find ich nicht besonders sauber... gibts da eine andere Möglichkeit?
 
G

Gast2

Gast
jz ist nur die Frage wie lös ich das Problem mit den SelectionListenern bei den Buttons?? weil die Buttons public zu machen und dann in der jeweiligen Klasse mit addSelectionListener etwas hinzufügen find ich nicht besonders sauber... gibts da eine andere Möglichkeit?

Hat Wildcard doch schon geschrieben. getMethoden oder abstrakte methoden die du überschreiben musst.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L RCP Eigene View für EditorPart? Plattformprogrammierung 3
N Application & Product Infocenter und eigene TOC Plattformprogrammierung 7
R Eclipse - Eigene JavaDoc nicht angezeigt Plattformprogrammierung 3
M Fehler bei Plugin Export für eigene Target Platform Plattformprogrammierung 3
G Eigene Objekte DND Plattformprogrammierung 4
T GEF mit JAVA2D Eigene Objekte Plattformprogrammierung 13
N Benutzen von eigene Plugin im Plugin Plattformprogrammierung 36
Paule Eclipse Instanz + eigene Plugins Plattformprogrammierung 4
dzim eigene Application und PlugIns Plattformprogrammierung 16
dzim Eigene Projekte Plattformprogrammierung 19
N Update auf JRE 7_71 - Klasse wird nicht gefunden? Plattformprogrammierung 3
M Klasse aus PLugin /Fragment anhand von String laden Plattformprogrammierung 3
M Problem beim Zugriff auf Klasse aus Fragment in einem anderen Plugin Plattformprogrammierung 3
S In einem Plugin main einer anderen Klasse aufrufen Plattformprogrammierung 18
byte Equinox - Klasse aus Plug-In wird nicht gefunden Plattformprogrammierung 3
D RCP P2-Repository für Eclipse-Plugins Plattformprogrammierung 0
Z MySQL-Treiber in RAP-Anwendung für Jetty im OSGI- Equinox- Maven-Dschungel Plattformprogrammierung 0
D Hintergrundbild für E-Mail Plattformprogrammierung 2
R Welches Betriebsystem für Solution Architect Plattformprogrammierung 4
J RCP File Path von selected File in Package Explorer für RCP Plugin Plattformprogrammierung 2
S Wie lauffähige .jar-Datei mit Netbeans für Java3D Anwendung erstellen? Plattformprogrammierung 8
M Extension Point für Content Assist in JSP Editor gesucht Plattformprogrammierung 2
TheWhiteShadow RCP Konstrukt für Editor in Eclipse gesucht. Plattformprogrammierung 3
B Footer bei den Birt-Reports für nur eine Seite anzeigen Plattformprogrammierung 4
J Eclipse Plug-In für UML-Diagramme Problem Plattformprogrammierung 4
P RCP Welche Technologie für RCP Anwendungen? Plattformprogrammierung 10
O Neues Tastenkürzel für Eclipse Editorfenster registrieren Plattformprogrammierung 2
N Was brauche ich für eine Web- und was für eine Fat-Client-Anwendung? Plattformprogrammierung 14
C Eclipse Plugin Entwicklung: Editor für Flussdiagramme Plattformprogrammierung 6
V Ein Denkanstoß für GUI Plattformprogrammierung 17
S OSGi Bibliothek für alle Plattformprogrammierung 5
M RCP Icon für TreeView festlegen Plattformprogrammierung 2
T RCP Local History für eigenen Editor Plattformprogrammierung 9
B Eclipse RCP: Kontextsensitive Buttons für Editor und Hilfebutton für Wizard hinzufügen Plattformprogrammierung 5
P Update: Nur die JAR Datei für alle Betriebssysteme ? Plattformprogrammierung 9
hdi Schwierigkeiten mit Plugin für EPF (Eclipse Process Framework) Plattformprogrammierung 3
M Eclipse RCP: Context Menu für MultiPageEditor erzeugen... Plattformprogrammierung 6
S Gleiche Preference Page für mehrere Preferences Plattformprogrammierung 2
dzim Fragmente für Bibliotheken Plattformprogrammierung 3
lumo Eclipse 3.5 Plug-In für ein Plug-In Plattformprogrammierung 3
M IMarker für GMF Plattformprogrammierung 2
R Wo/Wie Eclipse Plugin einhängen für Jar-Export? Plattformprogrammierung 14
N Tastenkombinationen für Actions Plattformprogrammierung 4
C AST (Abstract Syntax Tree)-Generierung für Eclipse-Plugin Plattformprogrammierung 5
R Plugin-Lokalisierung für Ganymede Plattformprogrammierung 12
B Eclipse: Extension Point für das Öffnen v Files Plattformprogrammierung 8
H Visueller Editor für Eclipse RCP Anwendung Plattformprogrammierung 3
M Erweitern Popup - Menüs für Eclipse Outline Plattformprogrammierung 2
G Pluginentwicklung für Eclipse Plattformprogrammierung 3

Ähnliche Java Themen


Oben