This repository has been archived on 2018-03-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
jLSLauncher/src/com/ixab/GUI/AddStreamDialog.java
T
2015-11-09 20:09:55 +01:00

70 lines
2.1 KiB
Java

package com.ixab.GUI;
import com.ixab.ConfigHandling.ConfigFileIOHandler;
import com.ixab.ConfigHandling.ConfigFileInstanceHandler;
import javax.swing.*;
import java.awt.event.*;
public class AddStreamDialog extends JDialog {
private JPanel contentPane;
private JButton buttonOK;
private JButton buttonCancel;
private JTextField textField1;
public AddStreamDialog() {
setContentPane(contentPane);
setModal(true);
getRootPane().setDefaultButton(buttonOK);
buttonOK.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
onOK();
}
});
buttonCancel.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
onCancel();
}
});
// call onCancel() when cross is clicked
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
onCancel();
}
});
// call onCancel() on ESCAPE
contentPane.registerKeyboardAction(new ActionListener() {
public void actionPerformed(ActionEvent e) {
onCancel();
}
}, KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
}
private void onOK() {
ConfigFileInstanceHandler.getConfig().addStream(textField1.getText());
ConfigFileIOHandler.save(ConfigFileInstanceHandler.getConfig());
MainWindowGate.getMainWindow().lockStreamInfoGetter = true;
MainWindowGate.getMainWindow().initStreamsComboBox();
MainWindowGate.getMainWindow().lockStreamInfoGetter = false;
textField1.setText("");
dispose();
}
private void onCancel() {
// add your code here if necessary
dispose();
}
public static void create() {
AddStreamDialog dialog = new AddStreamDialog();
dialog.setLocationByPlatform(true);
dialog.pack();
dialog.setVisible(true);
}
}