1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
/*
Copyright 2008, 2009 Sebastiano Tronto <sebastiano@luganega.org>
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.*;
import java.awt.event.*;
import java.awt.*;
public class Robot {
public static Main main = new Main();
boolean leftArm, rightArm, leftLeg, rightLeg;
String nomeRobot;
Robot precedenteRobot, prossimoRobot;
RobotFrame robotFrame;
Robot() {
this( false, false, false, false, "", main.list.ultimoRobot, null );
}
Robot( String nome ) {
this ( false, false, false, false, nome, main.list.ultimoRobot, null );
}
Robot( boolean la, boolean ra, boolean ll, boolean rl, String nome, Robot prec, Robot prox ) {
leftArm = la;
rightArm = ra;
leftLeg = ll;
rightLeg = rl;
nomeRobot = nome;
precedenteRobot = prec;
prossimoRobot = prox;
robotFrame = new RobotFrame( nome );
robotFrame.setSize( 350, 600 );
robotFrame.setVisible( true );
robotFrame.setDefaultCloseOperation( JFrame.DO_NOTHING_ON_CLOSE );
robotFrame.addWindowListener(
new WindowAdapter() {
public void windowClosing( WindowEvent e ) {
int selezione = JOptionPane.showOptionDialog( Robot.this.robotFrame, "Eliminare il robottino " + Robot.this.getName() + " ?", "Robottino v4.1 - Cancellazione robottino", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, new String[] { "Si", "No" }, "No" );
if ( selezione == JOptionPane.YES_OPTION ) {
main.list.deleteRobot( Robot.this.getName() );
robotFrame.dispose();
}
}
}
);
}
void setLA( boolean la ) {
setPositions( la, this.rightArm, this.leftLeg, this.rightLeg );
}
void setRA( boolean ra ) {
setPositions( this.leftArm, ra, this.leftLeg, this.rightLeg );
}
void setLL( boolean ll ) {
setPositions( this.leftArm, this.rightArm, ll, this.rightLeg );
}
void setRL( boolean rl ) {
setPositions( this.leftArm, this.rightArm, this.leftLeg, rl );
}
void setPositions( boolean la, boolean ra, boolean ll, boolean rl ) {
this.leftArm = la;
this.rightArm = ra;
this.leftLeg = ll;
this.rightLeg = rl;
}
void setName( String nome ) {
nomeRobot = nome;
}
boolean getLA() {
return leftArm;
}
boolean getRA() {
return rightArm;
}
boolean getLL() {
return leftLeg;
}
boolean getRL() {
return rightLeg;
}
String getName() {
return nomeRobot;
}
Robot getNext() {
return prossimoRobot;
}
}
|