Author: jflesch
Date: 2007-07-23 15:30:50 +0000 (Mon, 23 Jul 2007)
New Revision: 14277

Modified:
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessagePanel.java
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/MiniFrostPanel.java
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/frostKSK/KSKMessage.java
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/interfaces/Message.java
Log:
Implement the button 'next unread message'

Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessagePanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessagePanel.java        
2007-07-23 15:11:25 UTC (rev 14276)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessagePanel.java        
2007-07-23 15:30:50 UTC (rev 14277)
@@ -258,9 +258,21 @@

        public void actionPerformed(ActionEvent e) {
                if (e.getSource() == back) {
+
                        mainPanel.displayMessageTable();
+
                } else if (e.getSource() == nextUnread) {
-                       
+                       if (msg == null) {
+                               Logger.warning(this, "No message selected atm ; 
can't get the next unread message");
+                               return;
+                       }
+                       Message newMsg = msg.getBoard().getNextUnreadMessage();
+                       if (newMsg != null) {
+                               setMessage(newMsg);
+                               newMsg.setRead(true);
+                               mainPanel.getMessageTreeTable().refresh();
+                               
mainPanel.getBoardTree().refresh(newMsg.getBoard());
+                       }
                }
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java    
2007-07-23 15:11:25 UTC (rev 14276)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java    
2007-07-23 15:30:50 UTC (rev 14277)
@@ -158,6 +158,16 @@
                mainPanel.getBoardTree().addObserver(this);
        }

+       /**
+        * due to a swing bug ?
+        */
+       public void redisplayed() {
+               
table.getColumnModel().getColumn(0).setPreferredWidth(FIRST_COLUMN_SIZE);
+               table.getColumnModel().getColumn(0).setResizable(false);
+               
table.getColumnModel().getColumn(0).setPreferredWidth(FIRST_COLUMN_SIZE);
+               
table.getColumnModel().getColumn(0).setMinWidth(FIRST_COLUMN_SIZE);
+               
table.getColumnModel().getColumn(0).setMaxWidth(FIRST_COLUMN_SIZE);
+       }

        public JPanel getPanel() {
                return panel;
@@ -292,6 +302,11 @@
                }

                public void refresh(int row) {
+                       if (row == -1) {
+                               Logger.error(this, "Message not found in the 
list ?!");
+                               return;
+                       }
+
                        fireTableChanged(new TableModelEvent(this, row));
                }


Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/MiniFrostPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/MiniFrostPanel.java      
2007-07-23 15:11:25 UTC (rev 14276)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/MiniFrostPanel.java      
2007-07-23 15:30:50 UTC (rev 14277)
@@ -53,6 +53,7 @@
        public void displayMessageTable() {
                saveState();
                mainSplit.setRightComponent(messageTreeTable.getPanel());
+               messageTreeTable.redisplayed();
                mainSplit.validate();
                loadState();
        }

Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/frostKSK/KSKMessage.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/frostKSK/KSKMessage.java 
2007-07-23 15:11:25 UTC (rev 14276)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/frostKSK/KSKMessage.java 
2007-07-23 15:30:50 UTC (rev 14277)
@@ -392,4 +392,15 @@

                return v;
        }
+
+       protected int getId() {
+               return id;
+       }
+
+       public boolean equals(Object o) {
+               if (!(o instanceof KSKMessage))
+                       return false;
+
+               return (((KSKMessage)o).getId() == id);
+       }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/interfaces/Message.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/interfaces/Message.java  
2007-07-23 15:11:25 UTC (rev 14276)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/interfaces/Message.java  
2007-07-23 15:30:50 UTC (rev 14277)
@@ -28,4 +28,7 @@
         * SubMessage vector. (Don't store / cache !)
         */
        public Vector getSubMessages();
+
+
+       public boolean equals(Object o);
 }


Reply via email to