Files
sistema-caja/src/danielcortes/xyz/controllers/MainController.java

51 lines
1.7 KiB
Java

package danielcortes.xyz.controllers;
import danielcortes.xyz.data.Configuration;
import danielcortes.xyz.views.CajasView;
import danielcortes.xyz.views.InformesView;
import danielcortes.xyz.views.MainView;
import javax.swing.*;
import javax.swing.border.TitledBorder;
import java.awt.*;
public class MainController {
private MainView view;
public MainController(MainView view){
this.view = view;
this.setupViewEvents();
this.loadRestaurantName();
}
private void loadRestaurantName(){
String nombre = Configuration.get("nombre_caja");
((TitledBorder)this.view.getButtonPanel().getBorder()).setTitle("Restaurant: " + nombre);
}
private void setupViewEvents(){
this.view.getCajasButton().addActionListener(e -> {
CajasView view = new CajasView();
CajasController cajasController = new CajasController(view);
this.executeView(view.getContentPanel(), "Caja", new Dimension(1280, 720));
});
this.view.getInformesMensualesButton().addActionListener(e -> {
InformesView view = new InformesView();
InformesController informesController = new InformesController(view);
this.executeView(view.getContentPanel(), "Informes Mensuales", new Dimension(250, 500));
});
}
private void executeView(JComponent view, String title, Dimension d){
JFrame frame = new JFrame(title + ": " + Configuration.get("nombre_caja"));
frame.setContentPane(view);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setSize(d);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}