1 | public class NextMessageAction extends AbstractColumbaAction implements↵ | | 1 | public class PreviousMessageAction extends AbstractColumbaAction implements↵
|
2 | ISelectionListener {↵ | | 2 | ISelectionListener {↵
|
3 | public NextMessageAction(IFrameMediator frameMediator) {↵ | | 3 | public PreviousMessageAction(IFrameMediator frameMediator) {↵
|
4 | super(frameMediator, MailResourceLoader.getString("menu", "mainframe",↵ | | 4 | super(frameMediator, MailResourceLoader.getString("menu", "mainframe",↵
|
5 | "menu_view_nextmessage"));↵ | | 5 | "menu_view_prevmessage"));↵
|
|
6 | // tooltip text↵ | | 6 | // tooltip text↵
|
7 | putValue(SHORT_DESCRIPTION, MailResourceLoader.getString("menu",↵ | | 7 | putValue(SHORT_DESCRIPTION, MailResourceLoader.getString("menu",↵
|
8 | "mainframe", "menu_view_nextmessage_tooltip").replaceAll("&",↵ | | 8 | "mainframe", "menu_view_prevmessage_tooltip").replaceAll("&",↵
|
9 | ""));↵ | | 9 | ""));↵
|
|
10 | // icons↵ | | 10 | // icons↵
|
11 | putValue(LARGE_ICON, ImageLoader.getIcon(IconKeys.GO_NEXT));↵ | | 11 | putValue(LARGE_ICON, ImageLoader.getIcon(IconKeys.GO_PREVIOUS));↵
|
12 | putValue(SMALL_ICON, ImageLoader.getSmallIcon(IconKeys.GO_NEXT));↵ | | 12 | putValue(SMALL_ICON, ImageLoader.getSmallIcon(IconKeys.GO_PREVIOUS));↵
|
|
13 | // shortcut key↵ | | 13 | // shortcut key↵
|
14 | //putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke(KeyEvent.VK_F, 0));↵ | | 14 | //putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke("B"));↵
|
|
15 | // disable toolbar text↵ | | 15 | // disable toolbar text↵
|
16 | setShowToolBarText(false);↵ | | 16 | setShowToolBarText(false);↵
|
|
17 | //setEnabled(false);↵ | | 17 | //setEnabled(false);↵
|
|
18 | // uncomment to enable action↵ | | 18 | // uncomment to enable action↵
|
|
19 | /*↵ | | 19 | /*↵
|
20 | * ((MailFrameMediator)↵ | | 20 | * ((MailFrameMediator)↵
|
21 | * frameMediator).registerTableSelectionListener(this);↵ | | 21 | * frameMediator).registerTableSelectionListener(this);↵
|
22 | */↵ | | 22 | */↵
|
23 | }↵ | | 23 | }↵
|
|
24 | /**↵ | | 24 | /**↵
|
25 | * ↵ | | 25 | * ↵
|
26 | * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)↵ | | 26 | * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)↵
|
27 | */↵ | | 27 | */↵
|
28 | public void actionPerformed(ActionEvent evt) {↵ | | 28 | public void actionPerformed(ActionEvent evt) {↵
|
29 | IMailFolderCommandReference r = ((MailFrameMediator) getFrameMediator())↵ | | 29 | IMailFolderCommandReference r = ((MailFrameMediator) getFrameMediator())↵
|
30 | .getTableSelection();↵ | | 30 | .getTableSelection();↵
|
|
31 | ITableController table = ((TableViewOwner) getFrameMediator())↵ | | 31 | ITableController table = ((TableViewOwner) getFrameMediator())↵
|
32 | .getTableController();↵ | | 32 | .getTableController();↵
|
33 | if ( table == null ) return;↵ | | 33 | if ( table == null ) return;↵
|
34 | ↵ | | 34 | ↵
|
35 | if (r == null)↵ | | 35 | if (r == null)↵
|
36 | return;↵ | | 36 | return;↵
|
|
37 | IMessageNode[] nodes = table.getSelectedNodes();↵ | | 37 | IMessageNode[] nodes = table.getSelectedNodes();↵
|
38 | if (nodes.length == 0)↵ | | 38 | if (nodes.length == 0)↵
|
39 | return;↵ | | 39 | return;↵
|
|
40 | MessageNode node = (MessageNode) nodes[0];↵ | | 40 | MessageNode node = (MessageNode) nodes[0];↵
|
41 | MessageNode nextNode = (MessageNode) node.getNextNode();↵ | | 41 | MessageNode previousNode = (MessageNode) node.getPreviousNode();↵
|
42 | if (nextNode == null)↵ | | 42 | if (previousNode == null)↵
|
43 | return;↵ | | 43 | return;↵
|
|
44 | // necessary for the message-frame only↵ | | 44 | // necessary for the message-frame only↵
|
45 | r.setUids(new Object[] { nextNode.getUid() });↵ | | 45 | r.setUids(new Object[] { previousNode.getUid() });↵
|
46 | ((MailFrameMediator) getFrameMediator()).setTableSelection(r);↵ | | 46 | ((MailFrameMediator) getFrameMediator()).setTableSelection(r);↵
|
47 | CommandProcessor.getInstance().addOp(new ViewMessageCommand(↵ | | 47 | CommandProcessor.getInstance().addOp(new ViewMessageCommand(↵
|
48 | getFrameMediator(), r));↵ | | 48 | getFrameMediator(), r));↵
|
49 | ↵ | | |
|
50 | // select message in message list↵ | | 49 | // select message in message list↵
|
51 | table.setSelected(new Object[] { nextNode.getUid() });↵ | | 50 | table.setSelected(new Object[] { previousNode.getUid() });↵
|
52 | }↵ | | 51 | }↵
|
|
53 | /**↵ | | 52 | /**↵
|
54 | * ↵ | | 53 | * ↵
|
55 | * @see org.columba.core.gui.util.ISelectionListener#connectionChanged(org.columba.core.gui.util.SelectionChangedEvent)↵ | | 54 | * @see org.columba.core.gui.util.ISelectionListener#connectionChanged(org.columba.core.gui.util.SelectionChangedEvent)↵
|
56 | */↵ | | 55 | */↵
|
57 | public void selectionChanged(SelectionChangedEvent e) {↵ | | 56 | public void selectionChanged(SelectionChangedEvent e) {↵
|
58 | setEnabled(((TableSelectionChangedEvent) e).getUids().length > 0);↵ | | 57 | setEnabled(((TableSelectionChangedEvent) e).getUids().length > 0);↵
|
59 | | | 58 |
|