Invention1.java
1    
2    package npw;
3    import painter.SPainter;
4    import shapes.SCircle;
5    import shapes.SSquare;
6    import javax.swing.*;
7    import java.awt.*;
8    import java.util.Scanner;
9    
10   public class Invention1 {
11       public static void main(String[] args) {
12   
13           String color = getColor("Color?");
14           SPainter painter = new SPainter("Invention 1", 600, 600);
15           SSquare square = new SSquare(50);
16           SCircle circle = new SCircle(30);
17           painter.setColor(Color.ORANGE);
18           square.expand(50);
19           painter.paint(square);
20           square.shrink(50);
21           painter.mrt(square.side());
22           painter.setColor(Color.GREEN);
23           painter.paint(circle);
24           painter.mlt(square.side());
25   
26           while (true) {
27               square.expand(50);
28               painter.paint(square);
29   
30               square.shrink(50);
31               painter.mrt(2*square.side());
32   
33               painter.setColor(Color.GREEN);
34               painter.paint(circle);
35   
36               painter.mlt(2*square.side());
37               painter.mlt(2*square.side());
38               painter.setColor(Color.BLUE);
39   
40               painter.paint(circle);
41               painter.mrt(2*square.side());
42   
43               paintColor(color, painter);
44           }
45       }
46       private static void paintColor(String color, SPainter painter){
47           if (color.equalsIgnoreCase("blue")){
48               painter.setColor(Color.BLUE);
49           }
50           else if (color.equalsIgnoreCase("red")){
51               painter.setColor(Color.red);
52           }
53           else if (color.equalsIgnoreCase("green")){
54               painter.setColor(Color.GREEN);
55           }
56           else if (color.equalsIgnoreCase("black")){
57               painter.setColor(Color.black);
58           }
59       }
60   
61       private String color (String prompt) {
62           String nss = JOptionPane.showInputDialog(null,prompt+"?");
63           Scanner scanner = new Scanner(nss);
64           return scanner.next();
65       }
66   
67       private static String getColor(String prompt) {
68           String nss = JOptionPane.showInputDialog(null,prompt+"?");
69           Scanner scanner = new Scanner(nss);
70           return scanner.next();
71       }
72   }
73   
74