public ClipboardView(final AlphaForm model,
			final ApplicationController controller) {
		super(controller);
		this.model = model;

		model.createState("clipboardStart");

		this.setLayout(new BorderLayout());

		final JToolBar toolbar = new JToolBar();
		toolbar.setFloatable(false);
		final JButton button1 = new JButton("Save");
		final FormView view = this;
		button1.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(final ActionEvent ev) {
				final List<ValidationFailure> valFails = model.validateForm();
				if (valFails.size() > 0) {
					switch (model.getValidationLevel()) {
					case ERROR:
						StringBuilder sb = new StringBuilder();
						sb.append("Validation failed for the following reasons:\n");
						for (final ValidationFailure vf : valFails) {
							sb.append(vf.toString()).append("\n");
						}
						JOptionPane.showMessageDialog(view, sb.toString(),
								"Validation Failed", JOptionPane.ERROR_MESSAGE);
						return;
					case WARN:
						sb = new StringBuilder();
						sb.append("Validation failed for the following reasons:\n");
						for (final ValidationFailure vf : valFails) {
							sb.append(vf.toString()).append("\n");
						}
						sb.append("Do you still want to save the form?");
						final int userOpt = JOptionPane.showConfirmDialog(view,
								sb.toString(), "Validation Failed",
								JOptionPane.YES_NO_OPTION,
								JOptionPane.WARNING_MESSAGE);
						if (userOpt == JOptionPane.NO_OPTION)
							return;
					case IGNORE:
					}
				}
				controller.persistForm("clipboardStart");
			}
		});

		final JButton button2 = new JButton("Go to designer mode");
		button2.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(final ActionEvent ev) {
				final SwitchViewSignal s = new SwitchViewSignal();
				s.setFromView(SwitchViewSignal.VIEWER);
				s.setToView(SwitchViewSignal.DESIGNER);
				SignalManager.getInstance().sendSignal(s, "clipboard");
			}
		});
		toolbar.add(button1);
		toolbar.add(button2);
		toolbar.addSeparator();

		final FormViewPanel formView = new FormViewPanel(model);
		this.add(toolbar, BorderLayout.NORTH);
		this.add(formView, BorderLayout.CENTER);
	}