Author: jflesch
Date: 2007-06-23 19:14:41 +0000 (Sat, 23 Jun 2007)
New Revision: 13738

Modified:
   trunk/apps/Thaw/src/thaw/gui/TabbedPane.java
   trunk/apps/Thaw/src/thaw/gui/Table.java
   trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java
   trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java
Log:
Modify the internal mechanisms to display the tables in the queueWatcher tab

Modified: trunk/apps/Thaw/src/thaw/gui/TabbedPane.java
===================================================================
--- trunk/apps/Thaw/src/thaw/gui/TabbedPane.java        2007-06-23 18:21:32 UTC 
(rev 13737)
+++ trunk/apps/Thaw/src/thaw/gui/TabbedPane.java        2007-06-23 19:14:41 UTC 
(rev 13738)
@@ -42,8 +42,14 @@

                if (x >= 0)
                        tabNames.remove(x);
-               else
+               else {
                        Logger.error(this, "remove(): Component not found ?");
+                       try { /* dirty way to have a trace back */
+                               throw new Exception("bleh");
+                       } catch(Exception e) {
+                               e.printStackTrace();
+                       }
+               }

                super.remove(panel);
        }

Modified: trunk/apps/Thaw/src/thaw/gui/Table.java
===================================================================
--- trunk/apps/Thaw/src/thaw/gui/Table.java     2007-06-23 18:21:32 UTC (rev 
13737)
+++ trunk/apps/Thaw/src/thaw/gui/Table.java     2007-06-23 19:14:41 UTC (rev 
13738)
@@ -13,9 +13,10 @@
 import javax.swing.JTable;
 import javax.swing.JProgressBar;
 import javax.swing.JTextArea;
+import javax.swing.JLabel;
 import java.awt.Color;
 import java.awt.Component;
-
+import javax.swing.ImageIcon;
 import java.util.Vector;


@@ -45,6 +46,7 @@

        private int columnWithKeys = -1;

+       private boolean statusInProgressBars = true;

        public Table(Config config, String prefix) {
                super();
@@ -106,6 +108,9 @@
                columnWithKeys = c;
        }

+       public void showStatusInProgressBars(boolean v) {
+               statusInProgressBars = v;
+       }

        public void setDefaultRenderer() {
                setDefaultRenderer(getColumnClass(0), new DefaultRenderer());
@@ -157,11 +162,11 @@
                                                               final boolean 
isSelected, final boolean hasFocus,
                                                               final int row, 
final int column) {

-                       if(value == null)
+                       if (value == null)
                                return 
super.getTableCellRendererComponent(table, "",
                                                                           
isSelected, hasFocus, row, column);

-                       if(value instanceof FCPTransferQuery) {
+                       if (value instanceof FCPTransferQuery) {
                                final FCPTransferQuery query = 
(FCPTransferQuery)value;
                                final JProgressBar bar = new JProgressBar(0, 
100);

@@ -185,8 +190,11 @@
                                        
bar.setString(I18n.getMessage("thaw.common.ok"));

                                if(!query.isFinished()) {
-                                       bar.setString(query.getStatus() +
-                                                     " [ 
"+Integer.toString(progress)+"% ]");
+                                       if (statusInProgressBars)
+                                               bar.setString(query.getStatus() 
+
+                                                             " [ 
"+Integer.toString(progress)+"% ]");
+                                       else
+                                               
bar.setString(Integer.toString(progress)+"%");
                                }

                                return bar;
@@ -194,7 +202,9 @@

                        Component cell;

-                       if(value instanceof Long) {
+                       if (value instanceof ImageIcon) {
+                               cell = new JLabel(((ImageIcon)value));
+                       } else if(value instanceof Long) {

                                cell = 
super.getTableCellRendererComponent(table,
                                                                           
thaw.gui.GUIHelper.getPrintableSize(((Long)value).longValue()),

Modified: trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java       
2007-06-23 18:21:32 UTC (rev 13737)
+++ trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java       
2007-06-23 19:14:41 UTC (rev 13738)
@@ -111,6 +111,7 @@

                table.setShowGrid(false);
                table.setIntercellSpacing(new java.awt.Dimension(0, 0));
+               table.showStatusInProgressBars(false);

                final JTableHeader header = table.getTableHeader();
                header.setUpdateTableInRealTime(true);
@@ -141,7 +142,7 @@
                scrollPane = new JScrollPane(table);
                panel.add(scrollPane, BorderLayout.CENTER);

-               table.setDefaultRenderer( table.getColumnClass(0), new 
ProgressRenderer(table, tableModel, isForInsertionQueue) );
+               //table.setDefaultRenderer( table.getColumnClass(0), new 
ProgressRenderer(table, tableModel, isForInsertionQueue) );

                tableModel.addTableModelListener(table);

@@ -227,124 +228,6 @@
        }


-       private class ProgressRenderer extends DefaultTableCellRenderer {
-               private final static long serialVersionUID = 20060709;
-
-               private final Color SUCCESS = Color.GREEN;
-               private final Color FAILURE = Color.RED;
-               private final Color RUNNING = Color.ORANGE;
-               private final Color PENDING = Color.WHITE;
-               private Color softGray;
-
-               private QueueTableModel model = null;
-               private JTable tabl = null;
-               private boolean insertionQueue;
-
-               public ProgressRenderer(final JTable table, final 
QueueTableModel model, final boolean isForInsertion) {
-                       this.model = model;
-                       tabl = table;
-                       insertionQueue = isForInsertion;
-                       softGray = new Color(240,240,240);
-               }
-
-               public Component getTableCellRendererComponent(final JTable 
table, Object value,
-                                                              boolean 
isSelected, final boolean hasFocus,
-                                                              final int row, 
final int column) {
-
-                       if(value == null)
-                               value = "";
-
-                       final FCPTransferQuery query = model.getQuery(row);
-
-                       if(value instanceof Integer) {
-
-                               final Integer progress = (Integer)value;
-                               final JProgressBar bar = new JProgressBar(0, 
100);
-
-                               bar.setStringPainted(true);
-                               bar.setBorderPainted(false);
-
-                               if(progress.intValue() >= 0) {
-                                       bar.setValue(progress.intValue());
-
-                                       String toAdd = "%";
-
-                                       if(!query.isProgressionReliable())
-                                               toAdd = toAdd + " [*]";
-
-                                       bar.setString(progress.toString() + 
toAdd);
-                               } else {
-                                       bar.setValue(100);
-                                       
bar.setString(I18n.getMessage("thaw.common.failed"));
-                               }
-
-
-                               return bar;
-                       }
-
-                       Component cell = null;
-
-                       if (column == 0) {
-                               if(query == null)
-                                       return null;
-
-                               if(!query.isRunning() && !query.isFinished())
-                                       cell = new JLabel("");
-
-                               if(query.isFinished() && query.isSuccessful() &&
-                                  ( (!(query instanceof FCPClientGet)) || 
((FCPClientGet)query).isWritingSuccessful()))
-                                       cell = new JLabel(IconBox.minGreen);
-
-                               if(query.isFinished() && (!query.isSuccessful() 
||
-                                                         ((query instanceof 
FCPClientGet) && !((FCPClientGet)query).isWritingSuccessful()) ) )
-                                       cell = new JLabel(IconBox.minRed);
-
-                               if(query.isRunning() && !query.isFinished())
-                                       cell = new JLabel(IconBox.minOrange);
-
-                       } else {
-
-                               cell = 
super.getTableCellRendererComponent(table, value,
-                                                                          
isSelected, hasFocus,
-                                                                          row, 
column);
-
-                       }
-
-                       if (!isSelected) {
-                               if (row % 2 == 0)
-                                       cell.setBackground(Color.WHITE);
-                               else
-                                       cell.setBackground(softGray);
-                       }
-
-                       /*
-                       if(!isSelected) {
-
-                               if(query == null)
-                                       return null;
-
-                               if(!query.isRunning() && !query.isFinished())
-                                       cell.setBackground(PENDING);
-
-                               if(query.isFinished() && query.isSuccessful() &&
-                                  ( (!(query instanceof FCPClientGet)) || 
((FCPClientGet)query).isWritingSuccessful()))
-                                       cell.setBackground(SUCCESS);
-
-                               if(query.isFinished() && (!query.isSuccessful() 
||
-                                                         ((query instanceof 
FCPClientGet) && !((FCPClientGet)query).isWritingSuccessful()) ) )
-                                       cell.setBackground(FAILURE);
-
-                               if(query.isRunning() && !query.isFinished())
-                                       cell.setBackground(RUNNING);
-                       }
-                       */
-
-                       return cell;
-               }
-
-       }
-
-
        public void reloadSelections() {
                selectedRows = table.getSelectedRows();


Modified: trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java  
2007-06-23 18:21:32 UTC (rev 13737)
+++ trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueueTableModel.java  
2007-06-23 19:14:41 UTC (rev 13738)
@@ -18,7 +18,12 @@
 import thaw.core.Logger;
 import thaw.fcp.FCPQueueManager;
 import thaw.fcp.FCPTransferQuery;
+import thaw.fcp.FCPClientGet;
+import thaw.fcp.FCPClientPut;

+import thaw.gui.IconBox;
+
+
 public class QueueTableModel extends javax.swing.table.AbstractTableModel 
implements Observer {
        private static final long serialVersionUID = 20060708;

@@ -95,17 +100,31 @@
                if(row >= queries.size())
                        return null;

-               /* we don't return any value for the first column,
-                * the renderer will deduce itself what must be put in this 
column
-                */
-               if (column == 0)
-                       return null;
-               else
-                       column--;
-
                final FCPTransferQuery query = 
(FCPTransferQuery)queries.get(row);

-               if(column == 0) {
+               if (column == 0) {
+                       if(query == null)
+                               return null;
+
+                       if(!query.isRunning() && !query.isFinished())
+                               return " ";
+
+                       if(query.isFinished() && query.isSuccessful() &&
+                          ( (!(query instanceof FCPClientGet)) || 
((FCPClientGet)query).isWritingSuccessful()))
+                               return IconBox.minGreen;
+
+                       if(query.isFinished() && (!query.isSuccessful() ||
+                                                 ((query instanceof 
FCPClientGet) && !((FCPClientGet)query).isWritingSuccessful()) ) )
+                               return IconBox.minRed;
+
+                       if(query.isRunning() && !query.isFinished())
+                               return IconBox.minOrange;
+
+                       return " ";
+               }
+
+
+               if(column == 1) {
                        String filename = query.getFilename();

                        if (filename == null)
@@ -114,7 +133,7 @@
                        return filename;
                }

-               if(column == 1)
+               if(column == 2)
                        return 
thaw.gui.GUIHelper.getPrintableSize(query.getFileSize());

                if(!isForInsertions && (column == 2)) {
@@ -124,28 +143,14 @@
                                return 
I18n.getMessage("thaw.common.unspecified");
                }

-               if( (isForInsertions && (column == 2))
-                   || (!isForInsertions && (column == 3)) )
+               if( (isForInsertions && (column == 3))
+                   || (!isForInsertions && (column == 4)) )
                        return query.getStatus();

-               if( ((isForInsertions && (column == 3))
-                    || (!isForInsertions && (column == 4)) ) ) {
+               if( ((isForInsertions && (column == 4))
+                    || (!isForInsertions && (column == 5)) ) ) {

-                       if(!query.isFinished() || query.isSuccessful()) {
-                               int progress;
-
-                               if ((query instanceof thaw.fcp.FCPClientPut
-                                    && 
(query.getTransferWithTheNodeProgression() < 100))
-                                   || ((query instanceof thaw.fcp.FCPClientGet)
-                                       && 
(query.getTransferWithTheNodeProgression() > 0)))
-                                       progress = 
query.getTransferWithTheNodeProgression();
-                               else
-                                       progress = query.getProgression();
-
-                               return new Integer(progress);
-                       } else
-                               return new Integer(-1);
-
+                       return query;
                }

                return null;


Reply via email to