Mira, es algo tan relativamente sencillo como lo siguiente:
1-Creas un sistema para serializar datos en un XML.
2-Declaras todos los tipos de componentes en arrays.
3-Abres el fichero e interpretas los datos, a saber, posición, dimensiones, texto, color y otros parámetros básicos.
4-Mediante las funciones propias de swing, vas añadiendo dichos parámetros a cada objeto y los vas haciendo visibles, en caso de necesitar mas, añádelos, a la pila, vector o array, de forma recursiva, sin necesidad de declarar nombres únicos con los que se que te quedase estática la app.
Te dejo un enlace sobre lectura de configuraciones en un XML:
http://foro.elhacker.net/java/clase_beta_lectura_por_tags_archivos_xml-t263818.0.htmlUn saludo