public void createAndShow() {
		mainFrame = new JFrame("DICE GAME");
		mainFrame.setSize(600, 500);
		BorderLayout mainPanelLayout = new BorderLayout();
		mainFrame.setLayout(mainPanelLayout);
		Container pane = mainFrame.getContentPane();
		pane.add(scoreField, BorderLayout.LINE_START);
		scoreField.setEditable(false);
		pane.add(newsField, BorderLayout.PAGE_START);
		newsField.setEditable(false);

		dicePanel.setLayout(new FlowLayout());
		for (int i = 0; i < 5; i++) {
			diceCheckBoxes[i] = new JCheckBox();
			diceCheckBoxes[i].setText("");
			dicePanel.add(diceCheckBoxes[i]);
		}
		JButton diceSelectedButton = new JButton("Go!");
		diceSelectedButton.addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent actionEvent) {
				System.out.println("CLICK");
				synchronized (waitForClick) {
					diceSaved = true;

					waitForClick.notifyAll();
					if (!choosingScoreCategory)
						System.out.println("Clicked! diceSaved=" + diceSaved);
				}
			}

		});
		dicePanel.add(diceSelectedButton);

		scoreCatPanel.setLayout(new BoxLayout(scoreCatPanel, BoxLayout.Y_AXIS));

		for (final Entry<String, ScoreCategory> entry : ScoreCategory
				.getCategoryMap().entrySet()) {
			JRadioButton button = new JRadioButton(entry.getKey());
			button.setActionCommand(entry.getKey());
			scoreCatPanel.add(button);
			buttonCategoryGroup.add(button);
		}
		pane.add(dicePanel, BorderLayout.PAGE_END);
		pane.add(scoreCatPanel, BorderLayout.LINE_END);
		mainFrame.pack();
		mainFrame.setVisible(true);
	}