class MoveActivityMenu extends IMenu implements IActivitySelectionChangedListener { private Hashtable<String, JMenuItem> table = new Hashtable<String, JMenuItem>(); public MoveActivityMenu(IFrameMediator controller) { super(controller, "Move", "MoveActivity"); ICalendarList list = Config.getInstance().getCalendarList(); Enumeration<ICalendarItem> e = list.getElements(); while (e.hasMoreElements()) { final ICalendarItem calendarItem = e.nextElement(); JMenuItem item = new JMenuItem(calendarItem.getId()); table.put(calendarItem.getId(), item); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { /** * move activity */ ICalendarMediator m = (ICalendarMediator) getFrameMediator(); IActivity activity = m.getCalendarView() .getSelectedActivity(); ICalendarStore store = CalendarStoreFactory.getInstance() .getLocaleStore(); Command command = new MoveEventCommand( new CalendarCommandReference(store, calendarItem, activity)); CommandProcessor.getInstance().addOp(command); } }); add(item); } ICalendarMediator m = (ICalendarMediator) getFrameMediator(); m.getCalendarView().addSelectionChangedListener(this); } public void selectionChanged(ActivitySelectionChangedEvent event) { if (event.getSelection().length == 0) setEnabled(false); else { setEnabled(true); // enable all menuitems Enumeration<JMenuItem> e = table.elements(); while (e.hasMoreElements()) { JMenuItem m = e.nextElement(); m.setEnabled(true); } // retrieve selected activity IActivity activity = event.getSelection()[0]; // activity belongs to calendar id ? String calendarId = activity.getCalendarId(); // disable this calendar's id JMenuItem menuItem = table.get(calendarId); menuItem.setEnabled(false); } }
class CopyActivityMenu extends IMenu implements IActivitySelectionChangedListener { /** * serialVersionUID */ private static final long serialVersionUID = 7014530206628904351L; private Hashtable<String, JMenuItem> table = new Hashtable<String, JMenuItem>(); /** * CopyActivityMenu parameterized constructor * @param controller */ public CopyActivityMenu(IFrameMediator controller) { super(controller, "Copy", "CopyActivity"); ICalendarList list = Config.getInstance().getCalendarList(); Enumeration<ICalendarItem> e = list.getElements(); while (e.hasMoreElements()) { final ICalendarItem calendarItem = e.nextElement(); JMenuItem item = new JMenuItem(calendarItem.getId()); table.put(calendarItem.getId(), item); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ICalendarMediator m = (ICalendarMediator) getFrameMediator(); IActivity activity = m.getCalendarView() .getSelectedActivity(); // copy activity ICalendarStore store = CalendarStoreFactory.getInstance() .getLocaleStore(); Command command = new CopyEventCommand( new CalendarCommandReference(store, calendarItem, activity)); CommandProcessor.getInstance().addOp(command); } }); add(item); } ICalendarMediator m = (ICalendarMediator) getFrameMediator(); m.getCalendarView().addSelectionChangedListener(this); } /* (non-Javadoc) * @see org.columba.calendar.ui.calendar.api.IActivitySelectionChangedListener#selectionChanged(org.columba.calendar.ui.calendar.api.ActivitySelectionChangedEvent) */ public void selectionChanged(ActivitySelectionChangedEvent event) { if (event.getSelection().length == 0) setEnabled(false); else { setEnabled(true); // enable all menuitems Enumeration<JMenuItem> e = table.elements(); while (e.hasMoreElements()) { JMenuItem m = e.nextElement(); m.setEnabled(true); } // retrieve selected activity IActivity activity = event.getSelection()[0]; // activity belongs to calendar id ? String calendarId = activity.getCalendarId(); // disable this calendar's id JMenuItem menuItem = table.get(calendarId); menuItem.setEnabled(false); } }
Clone fragments detected by clone detection tool
File path: /columba-1.4-src/calendar/src/main/java/org/columba/calendar/ui/action/MoveActivityMenu.java File path: /columba-1.4-src/calendar/src/main/java/org/columba/calendar/ui/action/CopyActivityMenu.java
Method name: Method name:
Number of AST nodes: 0 Number of AST nodes: 0
1
class MoveActivityMenu extends IMenu implements
1
class CopyActivityMenu extends IMenu implements
2
		IActivitySelectionChangedListener {
2
		IActivitySelectionChangedListener {
3
	/**
4
	 * serialVersionUID
5
	 */
6
	private static final long serialVersionUID = 7014530206628904351L;
3
	private Hashtable<String, JMenuItem> table = new Hashtable<String, JMenuItem>();
7
	private Hashtable<String, JMenuItem> table = new Hashtable<String, JMenuItem>();
8
	/**
9
	 * CopyActivityMenu parameterized constructor
10
	 * @param controller
11
	 */
4
	public MoveActivityMenu(IFrameMediator controller) {
12
	public CopyActivityMenu(IFrameMediator controller) {
5
		super(controller, "Move", "MoveActivity");
13
		super(controller, "Copy", "CopyActivity");
6
		ICalendarList list = Config.getInstance().getCalendarList();
14
		ICalendarList list = Config.getInstance().getCalendarList();
7
		Enumeration<ICalendarItem> e = list.getElements();
15
		Enumeration<ICalendarItem> e = list.getElements();
8
		while (e.hasMoreElements()) {
16
		while (e.hasMoreElements()) {
9
			final ICalendarItem calendarItem = e.nextElement();
17
			final ICalendarItem calendarItem = e.nextElement();
10
			JMenuItem item = new JMenuItem(calendarItem.getId());
18
			JMenuItem item = new JMenuItem(calendarItem.getId());
11
			table.put(calendarItem.getId(), item);
19
			table.put(calendarItem.getId(), item);
12
			item.addActionListener(new ActionListener() {
20
			item.addActionListener(new ActionListener() {
13
				public void actionPerformed(ActionEvent e) {
21
				public void actionPerformed(ActionEvent e) {
14
					/**
15
					 * move activity
16
					 */
17
					ICalendarMediator m = (ICalendarMediator) getFrameMediator();
22
					ICalendarMediator m = (ICalendarMediator) getFrameMediator();
18
					IActivity activity = m.getCalendarView()
23
					IActivity activity = m.getCalendarView()
19
							.getSelectedActivity();
24
							.getSelectedActivity();
25
					// copy activity
20
					ICalendarStore store = CalendarStoreFactory.getInstance()
26
					ICalendarStore store = CalendarStoreFactory.getInstance()
21
							.getLocaleStore();
27
							.getLocaleStore();
22
					Command command = new MoveEventCommand(
28
					Command command = new CopyEventCommand(
23
							new CalendarCommandReference(store, calendarItem,
29
							new CalendarCommandReference(store, calendarItem,
24
									activity));
30
									activity));
25
					CommandProcessor.getInstance().addOp(command);
31
					CommandProcessor.getInstance().addOp(command);
26
				}
32
				}
27
			});
33
			});
28
			add(item);
34
			add(item);
29
		}
35
		}
30
		ICalendarMediator m = (ICalendarMediator) getFrameMediator();
36
		ICalendarMediator m = (ICalendarMediator) getFrameMediator();
31
		m.getCalendarView().addSelectionChangedListener(this);
37
		m.getCalendarView().addSelectionChangedListener(this);
32
	}
38
	}
39
	/* (non-Javadoc)
40
	 * @see org.columba.calendar.ui.calendar.api.IActivitySelectionChangedListener#selectionChanged(org.columba.calendar.ui.calendar.api.ActivitySelectionChangedEvent)
41
	 */
33
	public void selectionChanged(ActivitySelectionChangedEvent event) {
42
	public void selectionChanged(ActivitySelectionChangedEvent event) {
34
		if (event.getSelection().length == 0)
43
		if (event.getSelection().length == 0)
35
			setEnabled(false);
44
			setEnabled(false);
36
		else {
45
		else {
37
			setEnabled(true);
46
			setEnabled(true);
38
			// enable all menuitems
47
			// enable all menuitems
39
			Enumeration<JMenuItem> e = table.elements();
48
			Enumeration<JMenuItem> e = table.elements();
40
			while (e.hasMoreElements()) {
49
			while (e.hasMoreElements()) {
41
				JMenuItem m = e.nextElement();
50
				JMenuItem m = e.nextElement();
42
				m.setEnabled(true);
51
				m.setEnabled(true);
43
			}
52
			}
44
			// retrieve selected activity
53
			// retrieve selected activity
45
			IActivity activity = event.getSelection()[0];
54
			IActivity activity = event.getSelection()[0];
46
			// activity belongs to calendar id ?
55
			// activity belongs to calendar id ?
47
			String calendarId = activity.getCalendarId();
56
			String calendarId = activity.getCalendarId();
48
			// disable this calendar's id
57
			// disable this calendar's id
49
			JMenuItem menuItem = table.get(calendarId);
58
			JMenuItem menuItem = table.get(calendarId);
50
			menuItem.setEnabled(false);
59
			menuItem.setEnabled(false);
51
		}
60
		}
52
	}
61
	}
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones location
Number of node comparisons0