Swing Imagemap-Editor -> XML

AnonStar

Mitglied
Hallo,

ich bin IT-Azubi (dualer Student Wirtschaftsinformatik) und habe nun einen Auftrag bekommen, für den ich folgende Anforderungen analysiert und definiert habe.

System: Java Swing + 2D Grafik

Zweck: Leicht zu bedienender Editor zum Erstellen von (mehreren Imagemaps) und Export in eine XML-Datei. Der Editor soll später in das coremedia CMS integriert werden. Die Integration ist jedoch zweitrangig.
Code:
Bestandteile:

-	Editor mit den Funktionalitäten
	o	Import (Bild)
	o	Link setzen oder JavaScript Funktion einbetten
	o	Export (XML-Imagemap)
-	verschiedene Werkzeuge zum beschreiben der verlinkten Bildbereiche
	o	Polygon
	o	Oval
	o	Rechteck
-	Import von XML-Imagemap-Dateien
	o	Laden des Bildes und zeichnen der vorhandenen verlinkten Bildbereiche
	o	Editierbarkeit der Bereiche
	o	Speicherbarkeit  und Verwerfbarkeit der Veränderungen
-	Integration in den coremedia-Editor
	o	Da der coremedia Editor nicht über eine ähnliche Funktionalität verfügt, soll die 		Entwicklung in das coremedia-Umfeld integriert werden.

Einfaches Beispiel, was ich gefunden habe: HTML-Image map Creator WYSIWYG - uses AJAX
ist dort ohne XML Export, hat kein Link-setting oder Abfangen von Berecihen, die überzeichnet werden. Außerdem in JavaScript.
Den JavaScript Code kann ich wahrscheinlich leicht in Java übersetzen. Bin jetzt nicht der Vollprofi in Java und müsste gucken, welche Libs ich da verwenden kann.

Identifizierte fachliche Anforderungen:

Code:
Es müssen Polygon- und weitere Werkzeuge auswählbar sein, mit denen der verlinkbare Bereich vom Nutzer bestimmt wird.

Der Editor muss ebenfalls das /die Bild/er von XML-Dateien, die eine Imagemap oder Bilder verwenden, laden/anzeigen können und die verlinkten Bildbereiche (sofern vorhanden) auf das/die Bild/er zeichnen können.

Durch einen Doppelklick soll bei Verwendung des Polygonwerkzeuges das Muster automatisch komplettiert werden (gerader Strich vom Ende zum Anfang).
Der Inhalt des Musters soll stark-transparent eingefärbt werden.

Bei Klick auf einen abgeschlossenen Bereich soll sich ein Fenster zur Eingabe des Links oder des JavaScript-Codes öffnen.
Eventuell könnten hier ebenfalls JavaScript-Funktionalitäten auswählbar sein.
Im Editor können Bereiche nicht überzeichnet werden.

Als Grundlage dient mir eine Java-Anwendung (ich denke, es ist ein Applet), das Bilder laden, skalieren und rechtecke darauf zeichnen kann. Sonst ist nchts weiteres implementiert. Den Quellcode werde ich heute erhalten. Ich bin aber für alle Tipps dankbar.

Mein erster Schritt wäre es nun, den JavaScript Code zu übersetzen und Werkzeugleisten für die Werkzeuge einzubinden.
Danach dann die XML Export-Funktion einrichten.

Ich weiß nicht, wie ich das mit dem "Nicht-überzeichnen" hinkriegen soll und welche Libs ich verwenden kann, also welche geeignet sind...
 
Guck Dir doch mal den Code an.. Da geht's nur um nen Mouselistener, das Speicehrn der Daten in ein Array und das Zeichnen der Linien. Das Letztere werde ich dann mit der 2DGraphics Lib machen.
 
Auf was ich eigentlich hinauswollte: Ich hoffe dir ist klar dass Java nicht JavaScript ist und die zwei nicht sehr viel miteinander zu tun haben. Deine Anforderung
Bei Klick auf einen abgeschlossenen Bereich soll sich ein Fenster zur Eingabe des Links oder des JavaScript-Codes öffnen.
Eventuell könnten hier ebenfalls JavaScript-Funktionalitäten auswählbar sein.
kommt mir in der Hinsicht auch entwas komisch vor. Wenn du ein ähnliches Programm in java sehen willst, klick auf die PaintGui in meiner sig.
 
Natürlich ist mir das klar, dass das was anderes ist.

Das, was Dir da komisch vorkommt ist wie folgt gemeint:

Mit Klick auf die ImageMap können entweder

- Links oder
- eine JavaScript-Funktion aufgerufen werden

Da sich die, die das Programm dann verwenden, wahrscheinlich teilweise nciht mit Programmierung auskennen, sollten sinnvolle JavaScript-Funktionen auswählbar sein. Vielleciht auch beides (z.B. ein MouseOver-Effekt, oder was anderes sinnvolles, was mir gerade nicht einfällt.. mir fällt da echt nichts sinnvolles ein. Aber ich will es zumindest ermöglichen)

MfG,

Anon
 
P.S.: Ich kann dein PaintGUI nicht ausführen:
Code:
Couldn't find the main class

Außerdem kommt, wenn ich's öffne:

[JAVA=87]The type DefaultComboBoxModel is not generic; it cannot be parameterized with arguments <String> PaintGui.java PaintGUI/appClientModule/Paint[/code]
[JAVA=54]The type JComboBox is not generic; it cannot be parameterized with arguments <String> PaintGui.java PaintGUI/appClientModule/Paint[/code]

edit: Ohne generic gehts. Aber so ganz verstanden, was die machen soll, tu ich nciht. WOzu sind die zahlen?
 
Zuletzt bearbeitet:
Das ist ein clickCount. Du wolltest doch auch irgendwas machen wenn man eine Form anklickt.
PS: Besorg dir Java 7, dann geht das Beispiel auch
 

Zurück
Oben