File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/config/filter/FilterDialog.java | File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/config/search/SearchFrame.java | |||
Method name: void createBottomPanel()
|
Method name: JPanel createBottomPanel()
|
|||
Number of AST nodes: 20 | Number of AST nodes: 22 | |||
1 | JPanel bottomPanel = new JPanel(new BorderLayout());↵ | 1 | JPanel bottom = new JPanel(new BorderLayout());↵ | |
2 | bottomPanel.setBorder(new SingleSideEtchedBorder(SwingConstants.TOP));↵ | 2 | bottom.setBorder(new SingleSideEtchedBorder(SwingConstants.TOP));↵ | |
3 | JPanel buttonPanel = new JPanel(new GridLayout(1, 2, 6, 0));↵ | 3 | JPanel buttonPanel = new JPanel(new GridLayout(1, 3, 6, 0));↵ | |
4 | buttonPanel.setBorder(BorderFactory.createEmptyBorder(12, 12, 12, 12));↵ | 4 | buttonPanel.setBorder(BorderFactory.createEmptyBorder(12, 12, 12, 12));↵ | |
5 | ButtonWithMnemonic okButton = new ButtonWithMnemonic(MailResourceLoader↵ | 5 | searchButton = new JButton(MailResourceLoader↵ | |
6 | .getString("global", "ok↵ | 6 | .getString("dialog",↵ | |
7 | "));↵ | 7 | "filter", "search"));↵ | |
8 | okButton.setActionCommand("CLOSE"); //$NON-NLS-1$↵ | 8 | searchButton.set↵ | |
9 | okButton.addActionListener(this↵ | 9 | Icon(ImageLoader.getIcon(IconKeys.SEARCH));↵ | |
10 | searchButton.addActionListener(this);↵ | |||
10 | );↵ | 11 | searchButton.setActionCommand("SEARCH");↵ | |
11 | buttonPanel.add(okButton);↵ | 12 | buttonPanel.add(searchButton);↵ | |
12 | ButtonWithMnemonic cancelButton = new ButtonWithMnemonic(↵ | 13 | ButtonWithMnemonic closeButton = new ButtonWithMnemonic(↵ | |
13 | MailResourceLoader.getString("global", "cancel"));↵ | 14 | MailResourceLoader.getString("global", "close"));↵ | |
14 | cancelButton.setActionCommand("CANCEL"); //$NON-NLS-1$↵ | 15 | closeButton.addAction↵ | |
15 | cancel↵ | 16 | Listener(this);↵ | |
16 | Button.addActionListener(this);↵ | 17 | closeButton.setActionCommand("CLOSE");↵ | |
17 | buttonPanel.add(cancelButton);↵ | 18 | buttonPanel.add(closeButton);↵ | |
18 | ButtonWithMnemonic helpButton = new ButtonWithMnemonic(↵ | 19 | ButtonWithMnemonic helpButton = new ButtonWithMnemonic(↵ | |
19 | MailResourceLoader.getString("global", "help"));↵ | 20 | MailResourceLoader.getString("global", "help"));↵ | |
20 | buttonPanel.add(helpButton);↵ | 21 | ↵ | |
21 | bottomPanel.add(buttonPanel, BorderLayout.EAST);↵ | |||
22 | getContentPane()↵ | 22 | helpButton.addActionListener(this);↵ | |
23 | helpButton.setActionCommand("HELP");↵ | |||
24 | helpButton.setEnabled(false);↵ | |||
25 | buttonPanel.add(helpButton);↵ | |||
23 | .add(bottomPanel, BorderLayout.SOUTH);↵ | 26 | bottom.add(buttonPanel, BorderLayout.EAST);↵ | |
24 | getRootPane().setDefaultButton(okButton);↵ | 27 | getRootPane().setDefaultButton(searchButton);↵ | |
25 | getRootPane().registerKeyboardAction(this, "CANCEL",↵ | 28 | getRootPane().registerKeyboardAction(this, "CLOSE",↵ | |
26 | KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0),↵ | 29 | KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0),↵ | |
27 | JComponent.WHEN_IN_FOCUSED_WINDOW);↵ | 30 | JComponent.WHEN_IN_FOCUSED_WINDOW);↵ | |
28 | // associate with JavaHelp↵ | 31 | ↵ | |
29 | HelpManager.getInstance().enableHelpOnButton(helpButton,↵ | |||
30 | "organizing_and_managing_your_email_3");↵ | |||
31 | HelpManager.getInstance().enableHelpKey(getRootPane(),↵ | |||
32 | "organizing_and_managing_your_email_3"); | 32 | return bottom; | |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 0 |
Number of non-refactorable cases | 1 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.0 |
Clones location | Clones are in different classes having the same super class |
Number of node comparisons | 145 |
Number of mapped statements | 17 |
Number of unmapped statements in the first code fragment | 3 |
Number of unmapped statements in the second code fragment | 5 |
Time elapsed for statement mapping (ms) | 0.0 |
Clone type | Type 3 |
ID | Statement | ID | Statement | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | JPanel bottomPanel = new JPanel(new BorderLayout()); |
| 1 | JPanel bottom = new JPanel(new BorderLayout()); | |||||||||||||||||||||||||||||
2 | bottomPanel.setBorder(new SingleSideEtchedBorder(SwingConstants.TOP)); |
| 2 | bottom.setBorder(new SingleSideEtchedBorder(SwingConstants.TOP)); | |||||||||||||||||||||||||||||
3 | JPanel buttonPanel = new JPanel(new GridLayout(1, 2, 6, 0)); |
| 3 | JPanel buttonPanel = new JPanel(new GridLayout(1, 3, 6, 0)); | |||||||||||||||||||||||||||||
4 | buttonPanel.setBorder(BorderFactory.createEmptyBorder(12, 12, 12, 12)); | 4 | buttonPanel.setBorder(BorderFactory.createEmptyBorder(12, 12, 12, 12)); | ||||||||||||||||||||||||||||||
|
| 5 | searchButton = new JButton(MailResourceLoader.getString("dialog", "filter", "search")); | ||||||||||||||||||||||||||||||
|
| 7 | searchButton.addActionListener(this); | ||||||||||||||||||||||||||||||
| 8 | searchButton.setActionCommand("SEARCH"); | |||||||||||||||||||||||||||||||
5 | ButtonWithMnemonic okButton = new ButtonWithMnemonic(MailResourceLoader.getString("global", "ok")); |
| 10 | ButtonWithMnemonic closeButton = new ButtonWithMnemonic(MailResourceLoader.getString("global", "close")); | |||||||||||||||||||||||||||||
6 | okButton.setActionCommand("CLOSE"); |
| 12 | closeButton.setActionCommand("CLOSE"); | |||||||||||||||||||||||||||||
7 | okButton.addActionListener(this); |
| 11 | closeButton.addActionListener(this); | |||||||||||||||||||||||||||||
8 | buttonPanel.add(okButton); |
| 9 | buttonPanel.add(searchButton); | |||||||||||||||||||||||||||||
9 | ButtonWithMnemonic cancelButton = new ButtonWithMnemonic(MailResourceLoader.getString("global", "cancel")); |
| 14 | ButtonWithMnemonic helpButton = new ButtonWithMnemonic(MailResourceLoader.getString("global", "help")); | |||||||||||||||||||||||||||||
10 | cancelButton.setActionCommand("CANCEL"); |
| 16 | helpButton.setActionCommand("HELP"); | |||||||||||||||||||||||||||||
11 | cancelButton.addActionListener(this); |
| 15 | helpButton.addActionListener(this); | |||||||||||||||||||||||||||||
12 | buttonPanel.add(cancelButton); |
| 13 | buttonPanel.add(closeButton); | |||||||||||||||||||||||||||||
13 | ButtonWithMnemonic helpButton = new ButtonWithMnemonic(MailResourceLoader.getString("global", "help")); |
| | ||||||||||||||||||||||||||||||
|
| 17 | helpButton.setEnabled(false); | ||||||||||||||||||||||||||||||
14 | buttonPanel.add(helpButton); | 18 | buttonPanel.add(helpButton); | ||||||||||||||||||||||||||||||
15 | bottomPanel.add(buttonPanel, BorderLayout.EAST); |
| 19 | bottom.add(buttonPanel, BorderLayout.EAST); | |||||||||||||||||||||||||||||
16 | getContentPane().add(bottomPanel, BorderLayout.SOUTH); |
| 6 | searchButton.setIcon(ImageLoader.getIcon(IconKeys.SEARCH)); | |||||||||||||||||||||||||||||
17 | getRootPane().setDefaultButton(okButton); |
| 20 | getRootPane().setDefaultButton(searchButton); | |||||||||||||||||||||||||||||
18 | getRootPane().registerKeyboardAction(this, "CANCEL", KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); |
| 21 | getRootPane().registerKeyboardAction(this, "CLOSE", KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_IN_FOCUSED_WINDOW); | |||||||||||||||||||||||||||||
19 | HelpManager.getInstance().enableHelpOnButton(helpButton, "organizing_and_managing_your_email_3"); |
| | ||||||||||||||||||||||||||||||
20 | HelpManager.getInstance().enableHelpKey(getRootPane(), "organizing_and_managing_your_email_3"); |
| | ||||||||||||||||||||||||||||||
|
| 22 | return bottom; |
Row | Violation |
---|---|
1 | Unmatched statement searchButton=new JButton(MailResourceLoader.getString("dialog","filter","search")); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted |
2 | Unmatched statement searchButton.addActionListener(this); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted |
3 | Expression okButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
4 | Expression closeButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
5 | Expression okButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
6 | Expression closeButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
7 | Expression okButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
8 | Expression searchButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
9 | Expression cancelButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
10 | Expression helpButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
11 | Expression cancelButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
12 | Expression helpButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
13 | Expression cancelButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
14 | Expression closeButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
15 | Unmatched statement ButtonWithMnemonic helpButton=new ButtonWithMnemonic(MailResourceLoader.getString("global","help")); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
16 | Unmatched statement helpButton.setEnabled(false); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
17 | Expression getContentPane().add(bottomPanel,BorderLayout.SOUTH) cannot be parameterized, because it has dependencies to/from statements that will be extracted |
18 | Expression searchButton.setIcon(ImageLoader.getIcon(IconKeys.SEARCH)) cannot be parameterized, because it has dependencies to/from statements that will be extracted |
19 | Expression getContentPane().add(bottomPanel,BorderLayout.SOUTH) is a void method call, and thus it cannot be parameterized |
20 | Expression searchButton.setIcon(ImageLoader.getIcon(IconKeys.SEARCH)) is a void method call, and thus it cannot be parameterized |
21 | Expression searchButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
22 | Expression getContentPane() cannot be unified with expression searchButton , because common superclass java.awt.Container does not declare member(s) public void setIcon(javax.swing.Icon) |
23 | Expression getContentPane().add(bottomPanel,BorderLayout.SOUTH) cannot be parameterized, because it has dependencies to/from statements that will be extracted |
24 | Expression searchButton.setIcon(ImageLoader.getIcon(IconKeys.SEARCH)) cannot be parameterized, because it has dependencies to/from statements that will be extracted |
25 | Expression getContentPane().add(bottomPanel,BorderLayout.SOUTH) is a void method call, and thus it cannot be parameterized |
26 | Expression searchButton.setIcon(ImageLoader.getIcon(IconKeys.SEARCH)) is a void method call, and thus it cannot be parameterized |
27 | Expression okButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
28 | Expression searchButton cannot be parameterized, because it has dependencies to/from statements that will be extracted |
29 | Unmatched statement HelpManager.getInstance().enableHelpOnButton(helpButton,"organizing_and_managing_your_email_3"); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted |
30 | Unmatched statement HelpManager.getInstance().enableHelpKey(getRootPane(),"organizing_and_managing_your_email_3"); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted |
31 | Unmatched statement return bottom; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
32 | Unmatched return bottom; |
33 | Clone fragment #1 returns variables , while Clone fragment #2 returns variables helpButton, bottom |