[Drag&Drop] Design-Pattern-Frage

  • Themenstarter Themenstarter DragDropPattern
  • Beginndatum Beginndatum
D

DragDropPattern

Gast
Hallo,

meine Anwendung erlaubt es, Bilder aus einer Gallerie per D&D in ein neues Fenster abzulegen. Beim Drop löse ich ein Event aus, welches einen Dialog aufruft, in dem der Benutzer Angaben machen kann, in welchem Bereich des neuen Fensters das Bild liegt.

Hier zur Frage:

Wenn ich mehrere Bilder in das neue Fenster ziehe, wird der Dialog logischerweise für jedes Bild aufgerufen. Gibt es ein Design Pattern Vorschlag dafür, das Event nur einmal auszulösen bzw. den Dialog nur einmal zu öffnen, da der Dialog sich um ALLE Bilder kümmert und nur einmal gerufen werden muss.

angedachtes Szenario:

10 Bilder ins neue Fenster ziehen --> einmal Dialog ausfüllen --> Event handlen

aktuelles Szenario

10 Bilder ins neue Fenster ziehen --> Dialog ausfüllen --> Event handlen
Dialog poppt 9 weitere Male auf.
 
Wie wäre es mit einem boolean, der sich ändert sobald der Dialog 1x aufgeploppt ist?

Oder sowas in der Art wie
Java:
if (meinDialog==null) {...}

Liebe Grüße
 
Ich habe die Lösung über einen boolean realisiert, aber ich meine, es ist sehr unsauber, daher meine Frage eingangs.

Das Event nur einmal feuern, hmm. Ich habe eine Gallery (Nebula Project) der ich einen DropListener zugewiesen habe. Der Listener wird jedoch nicht, wie angedacht, nur pro Drop ausgeführt, sondern für die Anzahl der Bilder, die in event.data stecken.

Ich wüßte nicht, wie ich das Event nur einmal auslösen kann.
 
Ach .. das Fragen stellen hier hat mir schon geholfen. Ich habe mein Dropevent in mehrere Methoden ausgelagert und im Debugger nun endlich entdeckt, dass eine der Methoden für alle Bilder ausgelöst wird. In dieser stand auch der Dialogaufruf.
 

Zurück
Oben