01: package com.tagtraum.perf.gcviewer;
02:
03: import com.tagtraum.perf.gcviewer.action.OpenRecent;
04:
05: import javax.swing.*;
06: import java.util.ResourceBundle;
07:
08: /**
09: * RecentFilesMenu.
10: * <p/>
11: * Date: Sep 25, 2005
12: * Time: 10:54:45 PM
13: *
14: * @author <a href="mailto:hs@tagtraum.com">Hendrik Schreiber</a>
15: */
16: public class RecentURLsMenu extends JMenu {
17: public static ResourceBundle localStrings = ResourceBundle
18: .getBundle("com.tagtraum.perf.gcviewer.localStrings");
19:
20: private RecentURLsModel model;
21:
22: public RecentURLsMenu(final GCViewer gcViewer) {
23: super (localStrings
24: .getString("main_frame_menuitem_recent_files"));
25: this .model = new RecentURLsModel();
26: this .model.addRecentURLsListener(new RecentURLsListener() {
27: public void remove(RecentURLEvent e) {
28: RecentURLsMenu.this .remove(e.getPosition());
29: }
30:
31: public void add(RecentURLEvent e) {
32: RecentURLsMenu.this .add(new JMenuItem(new OpenRecent(
33: gcViewer, e.getURLSet().getUrls())), e
34: .getPosition());
35: }
36: });
37: setMnemonic(localStrings.getString(
38: "main_frame_menuitem_mnemonic_recent_files").charAt(0));
39: setToolTipText(localStrings
40: .getString("main_frame_menuitem_hint_recent_files"));
41: }
42:
43: public RecentURLsModel getRecentURLsModel() {
44: return model;
45: }
46:
47: }
|