From 6d8c74f97fe4289a984bdc6bd635c71653d5421c Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Tue, 26 Jun 2012 12:41:56 +0200 Subject: Refactored GUI into separate module --- .../java/com/c2kernel/gui/tabs/JobListPane.java | 312 --------------------- 1 file changed, 312 deletions(-) delete mode 100644 src/main/java/com/c2kernel/gui/tabs/JobListPane.java (limited to 'src/main/java/com/c2kernel/gui/tabs/JobListPane.java') diff --git a/src/main/java/com/c2kernel/gui/tabs/JobListPane.java b/src/main/java/com/c2kernel/gui/tabs/JobListPane.java deleted file mode 100644 index 619a589..0000000 --- a/src/main/java/com/c2kernel/gui/tabs/JobListPane.java +++ /dev/null @@ -1,312 +0,0 @@ -/* - * StatusPane.java - * - * Created on March 20, 2001, 3:30 PM - */ - -package com.c2kernel.gui.tabs; - -/** - * @author abranson - * @version - */ -import java.awt.GridBagConstraints; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.util.Iterator; - -import javax.swing.Box; -import javax.swing.JButton; -import javax.swing.JOptionPane; -import javax.swing.JScrollPane; -import javax.swing.JTable; -import javax.swing.table.AbstractTableModel; - -import com.c2kernel.common.ObjectNotFoundException; -import com.c2kernel.entity.agent.Job; -import com.c2kernel.entity.agent.JobList; -import com.c2kernel.entity.proxy.EntityProxyObserver; -import com.c2kernel.entity.proxy.MemberSubscription; -import com.c2kernel.gui.MainFrame; -import com.c2kernel.lifecycle.instance.stateMachine.Transitions; -import com.c2kernel.persistency.ClusterStorage; -import com.c2kernel.process.Gateway; -import com.c2kernel.property.Property; -import com.c2kernel.utils.Language; -import com.c2kernel.utils.Logger; - -/** - * Pane to display all work orders that this agent can execute, and activate - * them on request from the user. Subscribes to NodeItem for WorkOrder objects. - * @version $Revision: 1.4 $ $Date: 2004/10/21 08:02:21 $ - * @author $Author: abranson $ - */ -public class JobListPane extends EntityTabPane implements ActionListener, EntityProxyObserver { - - JobList joblist; - JoblistTableModel model; - JTable eventTable; - JButton startButton = new JButton("<<"); - JButton prevButton = new JButton("<"); - JButton nextButton = new JButton(">"); - JButton endButton = new JButton(">>"); - public static final int SIZE = 30; - int currentSize = SIZE; - - public JobListPane() { - super("Job List", "Agent Job List"); - initPanel(); - - // add buttons - Box navBox = Box.createHorizontalBox(); - navBox.add(startButton); navBox.add(prevButton); - navBox.add(nextButton); navBox.add(endButton); - - // setup buttons - //startButton.setEnabled(false); nextButton.setEnabled(false); - //prevButton.setEnabled(false); endButton.setEnabled(false); - startButton.setActionCommand("start"); - startButton.addActionListener(this); - prevButton.setActionCommand("prev"); - prevButton.addActionListener(this); - nextButton.setActionCommand("next"); - nextButton.addActionListener(this); - endButton.setActionCommand("end"); - endButton.addActionListener(this); - getGridBagConstraints(); - c.gridx = 0; c.gridy = 1; - c.anchor = GridBagConstraints.NORTHWEST; - c.fill=GridBagConstraints.NONE; - c.weightx=0; c.weighty=0; - gridbag.setConstraints(navBox, c); - add(navBox); - - - // Create table - eventTable = new JTable(); - JScrollPane eventScroll= new JScrollPane(eventTable); - c.weightx = 1.0; c.weighty = 1.0; - c.fill = GridBagConstraints.BOTH; c.gridy++; - gridbag.setConstraints(eventScroll, c); - add(eventScroll); - - // detect double clicked jobs - eventTable.addMouseListener(new JobListMouseListener()); - } - - @Override - public void reload() { - joblist.clear(); - jumpToEnd(); - } - - @Override - public void run() { - Thread.currentThread().setName("Joblist Pane Builder"); - try { - joblist = (JobList)sourceEntity.getEntity().getObject(ClusterStorage.JOB); - sourceEntity.getEntity().subscribe(new MemberSubscription(this, ClusterStorage.JOB, false)); - } catch (ObjectNotFoundException e) { - Logger.error(e); - } - model = new JoblistTableModel(joblist); - eventTable.setModel(model); - jumpToEnd(); - } - - - public void jumpToEnd() { - int lastEvent = joblist.getLastId(); - int firstEvent = 0; currentSize = SIZE; - if (lastEvent > currentSize) firstEvent = lastEvent - currentSize + 1; - if (lastEvent < currentSize) currentSize = lastEvent + 1; - Logger.msg(5, "JobListPane.run() - init table start "+firstEvent+" for "+currentSize); - model.setView(firstEvent, currentSize); - } - - @Override - public void add(Job contents) { - reload(); - } - - @Override - public void remove(String id) { - reload(); - } - - @Override - public void actionPerformed(ActionEvent e) { - if (e.getActionCommand().equals("end")) { - jumpToEnd(); - return; - } - - int lastEvent = joblist.getLastId(); - int startEvent = model.getStartId(); - if (e.getActionCommand().equals("start")) { - currentSize = SIZE; - startEvent = 0; - } - - else if (e.getActionCommand().equals("prev")) { - currentSize = SIZE; - startEvent-=currentSize; - if (startEvent<0) startEvent = 0; - } - else if (e.getActionCommand().equals("next")) { - currentSize = SIZE; - startEvent+=currentSize; - if (startEvent > lastEvent) - startEvent = lastEvent - currentSize +1; - } - else { // unknown action - return; - } - - model.setView(startEvent, currentSize); - } - - private class JoblistTableModel extends AbstractTableModel { - Job[] job; - Integer[] ids; - String[] itemNames; - int loaded = 0; - int startId = 0; - - public JoblistTableModel(JobList joblist) { - job = new Job[0]; - ids = new Integer[0]; - } - - public int getStartId() { - return startId; - } - - public void setView(int startId, int size) { - job = new Job[size]; - ids = new Integer[size]; - itemNames = new String[size]; - this.startId = startId; - int count = 0; - for (Iterator i = joblist.keySet().iterator(); i.hasNext();) { - Integer thisJobId = new Integer((String)i.next()); - if (count >= startId) { - int idx = count-startId; - ids[idx] = thisJobId; - job[idx] = joblist.getJob(thisJobId.intValue()); - itemNames[idx] = "Item Not Found"; - try { - itemNames[idx] = ((Property)Gateway.getStorage().get(job[count-startId].getItemSysKey(), ClusterStorage.PROPERTY+"/Name", null)).getValue(); - } catch (Exception ex) { - Logger.error(ex); - } - - } - count++; - loaded = count-startId; - if (count > (startId + size)) break; - } - fireTableStructureChanged(); - } - /** - * @see javax.swing.table.TableModel#getColumnClass(int) - */ - @Override - public Class getColumnClass(int columnIndex) { - switch(columnIndex) { - case 0: - return Integer.class; - default: - return String.class; - } - } - - /** - * @see javax.swing.table.TableModel#getColumnCount() - */ - @Override - public int getColumnCount() { - return 4; - } - - /** - * @see javax.swing.table.TableModel#getColumnName(int) - */ - @Override - public String getColumnName(int columnIndex) { - switch(columnIndex) { - case 0: return Language.translate("ID"); - case 1: return Language.translate("Subject"); - case 2: return Language.translate("Activity"); - case 3: return Language.translate("Transition"); - default: return ""; - } - } - - /** - * @see javax.swing.table.TableModel#getRowCount() - */ - @Override - public int getRowCount() { - return loaded; - } - - /** - * @see javax.swing.table.TableModel#getValueAt(int, int) - */ - @Override - public Object getValueAt(int rowIndex, int columnIndex) { - if (job.length <= rowIndex || job[rowIndex] == null) - return ""; - try { - switch (columnIndex) { - case 0: return ids[rowIndex]; - case 1: return itemNames[rowIndex]; - case 2: return job[rowIndex].getStepName(); - case 3: return Transitions.getTransitionName(job[rowIndex].getPossibleTransition()); - default: return ""; - } - } catch (Exception e) { - return null; - } - } - - /** - * @see javax.swing.table.TableModel#isCellEditable(int, int) - */ - @Override - public boolean isCellEditable(int rowIndex, int columnIndex) { - return false; - } - - public Job getJobAtRow(int rowIndex) { - return job[rowIndex]; - } - - } - - private class JobListMouseListener extends MouseAdapter { - - @Override - public void mouseClicked(MouseEvent e) { - super.mouseClicked(e); - if (e.getClickCount() == 2) { - Job selectedJob = model.getJobAtRow(eventTable.getSelectedRow()); - try { - MainFrame.itemFinder.pushNewKey(selectedJob.getItemProxy().getName()); - } catch (Exception ex) { - Logger.error(ex); - JOptionPane.showMessageDialog(null, "No Item Found", "Job references an unknown item", JOptionPane.ERROR_MESSAGE); - } - } - } - } - - @Override - public void control(String control, String msg) { - // TODO Auto-generated method stub - - } -} -- cgit v1.2.3