package tech.nevets.tvpn.ui; import javax.swing.*; import java.util.ArrayList; import java.util.List; public class UIManager { private List 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); } }