From 7167b4341ef290d56fb96e2af10883a4b925d83b Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 26 Mar 2026 19:27:18 +0100 Subject: I found my old code! --- robottino/all_versions/v4.1/src/List.java | 74 +++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100755 robottino/all_versions/v4.1/src/List.java (limited to 'robottino/all_versions/v4.1/src/List.java') diff --git a/robottino/all_versions/v4.1/src/List.java b/robottino/all_versions/v4.1/src/List.java new file mode 100755 index 0000000..13a8ab6 --- /dev/null +++ b/robottino/all_versions/v4.1/src/List.java @@ -0,0 +1,74 @@ +/* +Copyright 2008, 2009 Sebastiano Tronto + +This file is part of Robottino. + + Robottino is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + Robottino is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Robottino; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +*/ + +import javax.swing.JOptionPane; + +public class List { + public static Main main = new Main(); + public Robot primoRobot, ultimoRobot; + public List() { + primoRobot = ultimoRobot = null; + } + public boolean vuota() { + return primoRobot == null; + } + public Robot getRobot( String nome ) { + Robot i = primoRobot; + for ( ; !i.nomeRobot.equals( nome ); i = i.prossimoRobot ) ; + return i; + } + public void newRobot() { + newRobot( false, false, false, false, "" ); + } + public void newRobot( String nome ) { + newRobot( false, false, false, false, nome ); + } + public void newRobot( boolean la, boolean ra, boolean ll, boolean rl, String nome ) { + if ( vuota() ) + primoRobot = ultimoRobot = new Robot( la, ra, ll, rl, nome, null, null ); + else { + ultimoRobot = new Robot( la, ra, ll, rl, nome, ultimoRobot, null ); + ultimoRobot.precedenteRobot.prossimoRobot = ultimoRobot; + } + } + public void deleteRobot( String nome ) { + if ( vuota() ) + JOptionPane.showMessageDialog( main.frame, "Nessun robottino presente. Impossibile cancellarne uno", "Robottino v4.1 - Errore", JOptionPane.ERROR_MESSAGE ); + else { + Robot i = primoRobot; + for ( ; !i.nomeRobot.equals( nome ); i = i.prossimoRobot ) ; + if ( i.precedenteRobot != null ) + i.precedenteRobot.prossimoRobot = i.prossimoRobot; + else + primoRobot = i.prossimoRobot; + if ( i.prossimoRobot != null ) + i.prossimoRobot.precedenteRobot = i.precedenteRobot; + else + ultimoRobot = i.precedenteRobot; + } + } + public void printList() { + String lista = ""; + for ( Robot i = primoRobot; i != null; i = i.prossimoRobot ) + lista += i.getName() + " "; + JOptionPane.showMessageDialog( main.frame, lista, "Robottino v4.1 - Robottini Presenti", JOptionPane.PLAIN_MESSAGE ); + } +} \ No newline at end of file -- cgit v1.3