1 package at.ac.tuwien.sbc.valesriegler.group.gui;
3 import java.awt.GridLayout;
5 import javax.swing.JFrame;
6 import javax.swing.JPanel;
8 import at.ac.tuwien.sbc.valesriegler.common.Util;
9 import org.slf4j.Logger;
10 import org.slf4j.LoggerFactory;
13 * Base Frame of the Group UI
15 * @author Gregor Riegler <gregor DOT riegler AT gmail DOT com>
18 @SuppressWarnings("serial")
19 public class GroupFrame extends JFrame {
20 private static final Logger log = LoggerFactory.getLogger(GroupFrame.class);
22 public GroupFrame(GroupOverviewModel groupModel, DeliveryOverviewModel deliveryModel) {
24 JPanel wrapper = new JPanel();
25 GridLayout wrapperLayout = new GridLayout(2, 2);
26 wrapper.setLayout(wrapperLayout);
28 // Create Wizard-like panel for the creation of groups
29 wrapper.add(new GroupCreationPanel(false));
31 // Create Wizard-like panel for the creation of delivery groups
32 wrapper.add(new GroupCreationPanel(true));
34 // Create the panel for the group overview table
35 initGroupOverview(wrapper, groupModel);
37 // Create the panel for the deliveries overview table
38 initDeliveriesOverview(wrapper, deliveryModel);
40 setContentPane(wrapper);
41 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
45 private void initGroupOverview(JPanel wrapper, GroupOverviewModel groupModel) {
46 JPanel tablePanel = new JPanel();
47 Util.createTableInTitledPanel(tablePanel, groupModel, "Group Overview");
48 wrapper.add(tablePanel);
51 private void initDeliveriesOverview(JPanel wrapper, DeliveryOverviewModel deliveryModel) {
52 JPanel tablePanel = new JPanel();
53 Util.createTableInTitledPanel(tablePanel, deliveryModel, "Deliveries Overview");
54 wrapper.add(tablePanel);