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 org.slf4j.Logger;
9 import org.slf4j.LoggerFactory;
11 import at.ac.tuwien.sbc.valesriegler.common.Util;
14 * Base Frame of the Group UI
16 * @author Gregor Riegler <gregor DOT riegler AT gmail DOT com>
19 @SuppressWarnings("serial")
20 public class GroupFrame extends JFrame {
21 private static final Logger log = LoggerFactory.getLogger(GroupFrame.class);
23 public GroupFrame(GroupOverviewModel groupModel, DeliveryOverviewModel deliveryModel) {
25 log.debug("GroupFrame()");
26 JPanel wrapper = new JPanel();
27 GridLayout wrapperLayout = new GridLayout(2, 2);
28 wrapper.setLayout(wrapperLayout);
30 // Create Wizard-like panel for the creation of groups
31 wrapper.add(new GroupCreationPanel(false));
33 // Create Wizard-like panel for the creation of delivery groups
34 wrapper.add(new GroupCreationPanel(true));
36 // Create the panel for the group overview table
37 initGroupOverview(wrapper, groupModel);
39 // Create the panel for the deliveries overview table
40 initDeliveriesOverview(wrapper, deliveryModel);
42 setContentPane(wrapper);
43 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
46 private void initGroupOverview(JPanel wrapper, GroupOverviewModel groupModel) {
47 JPanel tablePanel = new JPanel();
48 Util.createTableInTitledPanel(tablePanel, groupModel, "Group Overview");
49 wrapper.add(tablePanel);
52 private void initDeliveriesOverview(JPanel wrapper, DeliveryOverviewModel deliveryModel) {
53 JPanel tablePanel = new JPanel();
54 Util.createTableInTitledPanel(tablePanel, deliveryModel, "Deliveries Overview");
55 wrapper.add(tablePanel);