60 lines
1.6 KiB
Java
60 lines
1.6 KiB
Java
package tech.nevets.tvpn.ui;
|
|
|
|
import javax.swing.*;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
public class UIManager {
|
|
private List<JPanel> panels = new ArrayList<>();
|
|
private JFrame loginFrame;
|
|
private JFrame uiFrame;
|
|
private UI uiPanel;
|
|
|
|
|
|
public void startLoginFrame() {
|
|
loginFrame = new JFrame();
|
|
JPanel p = new LoginPanel(this);
|
|
loginFrame.add(p);
|
|
panels.add(p);
|
|
loginFrame.pack();
|
|
loginFrame.setTitle("Login");
|
|
loginFrame.setSize(340, 170);
|
|
loginFrame.setResizable(false);
|
|
loginFrame.setLocationRelativeTo(null);
|
|
loginFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
|
loginFrame.setVisible(true);
|
|
}
|
|
|
|
protected void disposeLoginFrame() {
|
|
loginFrame.dispose();
|
|
}
|
|
|
|
public void startUIFrame() {
|
|
uiFrame = new JFrame();
|
|
uiPanel = new UI(this);
|
|
uiFrame.add(uiPanel);
|
|
panels.add(uiPanel);
|
|
uiFrame.pack();
|
|
uiFrame.setTitle("TVPN");
|
|
uiFrame.setSize(720, 480);
|
|
uiFrame.setLocationRelativeTo(null);
|
|
uiFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
|
uiFrame.setVisible(true);
|
|
}
|
|
|
|
protected UI getUIPanel() {
|
|
return uiPanel;
|
|
}
|
|
|
|
public void startFileChooserFrame(JFileChooser fileChooser) {
|
|
JFrame f = new JFrame();
|
|
f.add(fileChooser);
|
|
f.pack();
|
|
f.setTitle("Choose WireGuard Config File");
|
|
f.setLocationRelativeTo(null);
|
|
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
|
f.setVisible(true);
|
|
}
|
|
|
|
}
|