|
@@ -1,6 +1,7 @@
|
|
|
package ui.view;
|
|
|
|
|
|
import java.io.File;
|
|
|
+import java.text.AttributedCharacterIterator;
|
|
|
import java.util.ArrayList;
|
|
|
import javax.swing.JFrame;
|
|
|
import javax.swing.JLabel;
|
|
@@ -23,13 +24,19 @@ import javax.swing.tree.DefaultMutableTreeNode;
|
|
|
import javax.swing.JEditorPane;
|
|
|
import javax.swing.JFileChooser;
|
|
|
import javax.swing.table.DefaultTableModel;
|
|
|
+import javax.swing.table.TableModel;
|
|
|
|
|
|
import java.awt.Color;
|
|
|
import java.awt.Component;
|
|
|
import java.awt.Cursor;
|
|
|
import java.awt.Dimension;
|
|
|
+import java.awt.Font;
|
|
|
+import java.awt.FontMetrics;
|
|
|
+import java.awt.Graphics;
|
|
|
import java.awt.Image;
|
|
|
import java.awt.Point;
|
|
|
+import java.awt.Rectangle;
|
|
|
+import java.awt.Shape;
|
|
|
import java.awt.Toolkit;
|
|
|
import java.awt.BorderLayout;
|
|
|
|
|
@@ -42,6 +49,7 @@ import javax.swing.ImageIcon;
|
|
|
|
|
|
import classes.Category;
|
|
|
import classes.CpsObject;
|
|
|
+import classes.HolonElement;
|
|
|
import classes.HolonObject;
|
|
|
import classes.HolonSwitch;
|
|
|
import classes.HolonTransformer;
|
|
@@ -50,6 +58,7 @@ import Interfaces.CategoryListener;
|
|
|
import java.awt.event.ActionListener;
|
|
|
import java.awt.event.MouseAdapter;
|
|
|
import java.awt.event.MouseEvent;
|
|
|
+import java.awt.image.ImageObserver;
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
|
|
public class GUI implements CategoryListener {
|
|
@@ -75,7 +84,8 @@ public class GUI implements CategoryListener {
|
|
|
private final JEditorPane dtrpnHereWillBe = new JEditorPane();
|
|
|
private final JSplitPane splitPane_2 = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
|
|
|
|
|
|
- private JTable table;
|
|
|
+ private JTable table = new JTable();
|
|
|
+ private DefaultTableModel tableModel = new DefaultTableModel();
|
|
|
private final Model model;
|
|
|
private final Control controller;
|
|
|
private AddObjectPopUp addObjectPopUP;
|
|
@@ -137,11 +147,6 @@ public class GUI implements CategoryListener {
|
|
|
|
|
|
menuBar.add(mnHelp);
|
|
|
|
|
|
- // Table
|
|
|
- String[] columnNames = { "Gadget", "Typ", "Energy", "Quantity" };
|
|
|
-
|
|
|
- Object[][] data = {};
|
|
|
-
|
|
|
canvas.setBackground(Color.WHITE);
|
|
|
canvas.setPreferredSize(new Dimension(10000, 10000));
|
|
|
JScrollPane canvasSP = new JScrollPane(canvas);
|
|
@@ -158,14 +163,15 @@ public class GUI implements CategoryListener {
|
|
|
scrollPane_2.setViewportView(dtrpnHereWillBe);
|
|
|
|
|
|
JScrollPane scrollPane = new JScrollPane();
|
|
|
-
|
|
|
- table = new JTable(data, columnNames);
|
|
|
+ // Table Set up
|
|
|
+ Object[] columnNames = { "Gadget", "Typ", "Energy", "Quantity" };
|
|
|
+ tableModel.setColumnIdentifiers(columnNames);
|
|
|
+ table.setModel(tableModel);
|
|
|
scrollPane.setViewportView(table);
|
|
|
-
|
|
|
table.setFillsViewportHeight(true);
|
|
|
- table.setModel(new DefaultTableModel(data, columnNames));
|
|
|
table.setCellSelectionEnabled(true);
|
|
|
table.setColumnSelectionAllowed(true);
|
|
|
+
|
|
|
frmCyberPhysical.getContentPane().setLayout(new BorderLayout(0, 0));
|
|
|
|
|
|
TreeCellRenderer customRenderer = new TreeCellRenderer() {
|
|
@@ -247,7 +253,6 @@ public class GUI implements CategoryListener {
|
|
|
public void mousePressed(MouseEvent e) {
|
|
|
try {
|
|
|
actualObjectClicked = tree.getPathForLocation(e.getX(), e.getY()).getLastPathComponent().toString();
|
|
|
-
|
|
|
for (Category cat : model.getCategories()) {
|
|
|
for (CpsObject cps : cat.getObjects()) {
|
|
|
if (actualObjectClicked.compareTo(cps.getCompareName()) == 0) {
|
|
@@ -313,6 +318,21 @@ public class GUI implements CategoryListener {
|
|
|
}
|
|
|
});
|
|
|
|
|
|
+ canvas.addMouseListener(new MouseAdapter() {
|
|
|
+ @Override
|
|
|
+ public void mousePressed(MouseEvent e) {
|
|
|
+ if (tableModel.getRowCount() > 0) {
|
|
|
+ for (int i = tableModel.getRowCount() - 1; i > -1; i--) {
|
|
|
+ tableModel.removeRow(i);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for (HolonElement he : canvas.dataSelected) {
|
|
|
+ Object[] temp = { he.getEleName(), he.getSign(), he.getEnergy(), he.getAmount() };
|
|
|
+ tableModel.addRow(temp);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
toolBar.add(btnAdd);
|
|
|
|
|
|
// Del Button
|