1 package org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model;
2
3 import static org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.Mandelbrot2JuliaState.*;
4
5
6
7
8
9
10
11
12
13
14 public class Mandelbrot2JuliaStateMachine {
15
16 private volatile Mandelbrot2JuliaState applicationState;
17
18 public Mandelbrot2JuliaStateMachine() {
19 this.applicationState = Mandelbrot2JuliaState.MANDELBROT;
20 }
21
22 public void click(){
23 Mandelbrot2JuliaState nextApplicationState = null;
24 switch (applicationState){
25 case MANDELBROT:
26 nextApplicationState = JULIA_SET;
27 break;
28 case JULIA_SET:
29 nextApplicationState = MANDELBROT;
30 break;
31 }
32 this.setApplicationState(nextApplicationState);
33 }
34
35
36
37
38
39
40
41
42
43
44
45
46
47 public Mandelbrot2JuliaState getApplicationState() {
48 return applicationState;
49 }
50
51 public void setApplicationState(Mandelbrot2JuliaState applicationState) {
52 this.applicationState = applicationState;
53 }
54
55 }