package de.espinoza.practical.view.impl;
import static de.espinoza.practical.view.impl.GuiConstants.LABEL_TAB_ONE;
import static de.espinoza.practical.view.impl.GuiConstants.TIP_TAB_ONE;
import java.awt.GridBagLayout;
import java.awt.event.KeyEvent;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTabbedPane;
import de.enumeration.OptionDecisionEnum;
public class MainGui extends JFrame {
JOptionPane optionQuestionView;
OptionDecisionEnum optionDecision;
public MainGui() {
setTitle(GuiConstants.LABEL_WINDOW_NAME);
setSize(600, 200);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
initializeOptionQuestionView();
optionQuestionView.setVisible(true);
initializeNewConfigurationView();
}
private void initializeOptionQuestionView() {
optionQuestionView = new JOptionPane(
GuiConstants.LABEL_OPTION_QUESTION,
JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_OPTION, null,
GuiConstants.optionDecision, OptionDecisionEnum.NONE);
setSize(600, 200);
optionQuestionView
.addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent e) {
if (OptionDecisionEnum.OPTION_DECISION_NEW
.equals(optionQuestionView.getValue())) {
optionDecision = OptionDecisionEnum.OPTION_DECISION_NEW;
} else if (OptionDecisionEnum.OPTION_DECISION_EXISTING
.equals(optionQuestionView.getValue())) {
optionDecision = OptionDecisionEnum.OPTION_DECISION_EXISTING;
} else {
optionDecision = OptionDecisionEnum.NONE;
}
System.out.println(optionDecision);
}
});
add(optionQuestionView);
}
private void initializeNewConfigurationView() {
JTabbedPane tabbedPane = new JTabbedPane();
GridBagLayout layout = new GridBagLayout();
tabbedPane.addTab(LABEL_TAB_ONE, null, new DirectoryView(layout,
Boolean.FALSE), TIP_TAB_ONE);
tabbedPane.setMnemonicAt(0, KeyEvent.VK_1);
add(tabbedPane);
tabbedPane.setVisible(false);
pack();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MainGui().setVisible(Boolean.TRUE);
}
});
}
}