Cola doblemente ligada con Swing

Invitado
09 de Diciembre del 2005
Primero que nada un saludo a toda la comunidad de java en castellano. Mi problema es el siguiente:
Necesito obtener el codigo fuente o que alguien me ayude a adaptar el siguiente codigo de una cola doblemente ligada pero con Java Swing. Espero que alguien pueda darme una mano porque en verdad me urge terminarlo. Muchas gracias aqui dejo el codigo:

import javax.swing.*;


class Auto{
String marca;
int modelo;
double precio;

public Auto(String marca,int modelo,double precio) {
this.marca=marca;
this.modelo=modelo;
this.precio=precio;
}

public String toString() {
return "Marca = " + marca + "nModelo = " + modelo + "nPrecio = " + precio;
}
}

public class ColaSimple {
Auto []CS;
int primero, ultimo, tamaño;

public ColaSimple(){
tamaño = 50;
CS = new Auto[tamaño];
primero = 0;
ultimo = 0;
}

public ColaSimple ( int tam ) {
tamaño = tam;
CS = new Auto[tamaño];
primero = 0;
ultimo = 0;
}


public void agregarporultimo( Auto a ) {
if (ultimo == CS.length - 1){
System.out.println("Cola Llena");
} else {

CS[ultimo++]=a;
}
}

public void agregarporprimis( Auto a ) {
if (primero == CS.length - 1){
System.out.println("Cola Llena");
} else {

CS[primero--]=a;
}
}


public Auto retirarprimero() {
Auto a=null;
if ( ( primero == 0) & ( ultimo == 0 ) ) {
System.out.println("Cola vacia");
} else {
if(primero==ultimo){
System.out.println("Cola vacia");
primero=0;
ultimo=0;
}else{
a = CS[primero++];
}
}
return a;
}


public Auto retirarultimo() {
Auto a=null;
if ( ( primero == 0) & ( ultimo == 0 ) ) {
System.out.println("Cola vacia");
} else {
if(primero==ultimo){
System.out.println("Cola vacia");
primero=0;
ultimo=0;
}else{
a = CS[ultimo--];
}
}
return a;
}


public void EstadoActual() {
if ( (primero == 0 ) && ( ultimo == 0 ) )
JOptionPane.showMessageDialog( null,"Cola vacia","COla de Cadena",JOptionPane.PLAIN_MESSAGE);

else {
int j = primero;
String salida = new String ("Objetos en la Cola");
for(;j!=ultimo;j++){
salida+="n"+CS[j].toString()+" ";
}
/*do {
salida += "n" + CS[j].toString();
j++;
} while ( j <= CS.length - 1);*/
JOptionPane.showMessageDialog( null,salida,"Estado Actual",JOptionPane.PLAIN_MESSAGE);
}
}

}