Heute Nachmittag stand bei mir das erstellen des Extract-Method-Dialoges auf dem Programm. Wir wollten uns so weit wie möglich an die Vorgabe des JDT halten, natürlich angepasst an Ruby. Da ich auch schon so meine Erfahrungen mit SWT gesammelt habe, habe ich mir genügend Zeit eingeplant, schlussendlich war ich dann doch rund 4 Stunden dran, und das ist dabei herausgekommen:

extract_method_swt.png

Der Dialog ist vielleicht etwas zu lang, durch den Refactoring-Wizzard ist unten und oben auch recht viel Platz. Was man halt im Bild nicht sieht: alle Controls “dehnen” sich aus, wenn man den Dialog in der horizontalen streckt, wobei sich nur die zwei Eingabefelder und die Tabelle in der grösse verändern. Wenn man den Dialog vertikal streckt, verändern sich die Tabelle und das StyledTextWidget jeweils gleichmässig. Alles andere bleibt an Ort und Stelle. Ich bin eigentlich ziemlich stolz drauf :) Und erleichtert, als ich endlich fertig wurde.

Da ich ein grosser Fan von Qt bin, habe ich das ganze heute Abend nochmals gemacht, allerdings in nur 5 Minuten:

extract_method_qt.png

Das Verhalten ist genau gleich wie bei SWT. Und das in einem Bruchteil der Zeit. Auch das Duell um den kleineren Code gewinnt Qt mit 280 Zeilen XML, bzw. 200 Zeilen C++ gegen SWT mit 350 Zeilen Java.

Tja, leider kann man sich nicht alles aussuchen, und ein Eclipse-Port (bzw. SWT) auf Qt wird wohl mein Wunschtraum bleiben.