Author: jflesch
Date: 2007-07-23 15:57:05 +0000 (Mon, 23 Jul 2007)
New Revision: 14280

Modified:
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java
Log:
Add a button 'next unread message' in the message list view

Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java    
2007-07-23 15:51:29 UTC (rev 14279)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java    
2007-07-23 15:57:05 UTC (rev 14280)
@@ -94,6 +94,7 @@
        private JTextField searchField;
        private JCheckBox everywhereBox;
        private JButton searchButton;
+       private JButton nextUnread;

        private JComboBox actions;

@@ -113,11 +114,18 @@
                searchButton = new 
JButton(I18n.getMessage("thaw.common.search"),
                                           IconBox.minSearch);

+               nextUnread = new JButton("", IconBox.minNextUnread);
+               
nextUnread.setToolTipText(I18n.getMessage("thaw.plugin.miniFrost.nextUnread"));
+               nextUnread.addActionListener(this);
+
                JPanel searchPanel = new JPanel(new BorderLayout(5, 5));
                searchPanel.add(searchField, BorderLayout.CENTER);
+
                JPanel boxAndButtonPanel = new JPanel(new BorderLayout(5, 5));
                boxAndButtonPanel.add(everywhereBox, BorderLayout.CENTER);
                boxAndButtonPanel.add(searchButton, BorderLayout.EAST);
+
+               searchPanel.add(nextUnread, BorderLayout.WEST);
                searchPanel.add(boxAndButtonPanel, BorderLayout.EAST);


@@ -348,7 +356,24 @@


        public void actionPerformed(ActionEvent e) {
-               if (e.getSource() == actions) {
+               if (e.getSource() == nextUnread) {
+
+                       if (targetBoard == null) {
+                               Logger.warning(this, "No message selected atm ; 
can't get the next unread message");
+                               return;
+                       }
+
+                       Message newMsg = targetBoard.getNextUnreadMessage();
+
+                       if (newMsg != null) {
+                               mainPanel.getMessagePanel().setMessage(newMsg);
+                               newMsg.setRead(true);
+                               refresh();
+                               mainPanel.getBoardTree().refresh(targetBoard);
+                               mainPanel.displayMessage();
+                       }
+
+               } else if (e.getSource() == actions) {
                        int sel = actions.getSelectedIndex();
                        boolean[] selected = model.getSelection();



Reply via email to