TVPN/src/main/java/tech/nevets/tvpn/ui/UIManager.java
2024-10-17 13:50:32 -04:00

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);
}
}