package lectures.mvc.toolkit;
import util.annotations.WebDocuments;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;
import lectures.mvc.AnObservableCounter;
import lectures.mvc.CounterController;
import lectures.mvc.CounterObserver;
import lectures.mvc.ObservableCounter;
;
@WebDocuments({"Lectures/MvcToolkit.pptx", "Lectures/MvcToolkit.pdf", "Videos/MvcToolkit.avi"})
public class MultiFrameButtonTextFieldAWTComposer {
public static void main (String args[]) {
ObservableCounter model = new AnObservableCounter();
CounterController controller = createControllerAndControllerFrame();
CounterObserver view = createViewAndViewFrame();
model.addObserver(view);
controller.setModel(model);
}
public static CounterController createControllerAndControllerFrame() {
JFrame frame = new JFrame("Counter Controller");
JButton button = new JButton("Increment");
frame.add(button);
frame.setSize(200, 100);
frame.setVisible(true);
return new ACounterJButtonController(button);
}
public static CounterObserver createViewAndViewFrame() {
JFrame frame = new JFrame("Counter View");
JTextField textField = new JTextField();
frame.add(textField);
frame.setSize(200, 100);
frame.setVisible(true);
return new ACounterJTextFieldView(textField);
}
}