JPanel ret = new JPanel(); ret.setLayout(new GridBagLayout()); GridBagConstraints gbc; // i18n[SchemaPropertiesPanel.printCacheFileLocation=Print cache file path to message panel] btnPrintCacheFileLocation = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.printCacheFileLocation")); gbc = new GridBagConstraints(0,0,1,1,0,0,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,0,5,5), 0,0); ret.add(btnPrintCacheFileLocation, gbc); // i18n[SchemaPropertiesPanel.deleteCache=Delete cache file] btnDeleteCache = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.deleteCache")); gbc = new GridBagConstraints(1,0,1,1,0,0,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,5,5,5), 0,0); ret.add(btnDeleteCache, gbc); return ret;
GridBagConstraints gbc; JPanel pnlButtons = new JPanel(new GridBagLayout()); // i18n[codeCompletion.prefixConfig.newRow=Add new row] btnNewRow = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.newRow")); gbc = new GridBagConstraints(0,0,1,1,1,0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0,0,5,5),0,0); pnlButtons.add(btnNewRow, gbc); // i18n[codeCompletion.prefixConfig.deleteSelRows=Delete selected rows] btnDeleteRows = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.deleteSelRows")); gbc = new GridBagConstraints(1,0,1,1,0,0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0,5,5,5),0,0); pnlButtons.add(btnDeleteRows, gbc); return pnlButtons;
Clone fragments detected by clone detection tool
File path: /sql12/app/src/net/sourceforge/squirrel_sql/client/gui/db/aliasproperties/SchemaPropertiesPanel.java File path: /sql12/plugins/codecompletion/src/net/sourceforge/squirrel_sql/plugins/codecompletion/prefs/CodeCompletionPreferencesPanel.java
Method name: JPanel createCacheFilePanel() Method name: JPanel createButtonsPanel()
Number of AST nodes: 10 Number of AST nodes: 9
1
JPanel ret = new JPanel();
2
      ret.setLayout(new GridBagLayout());
3
      GridBagConstraints gbc;
4
      // i18n[SchemaPropertiesPanel.printCacheFileLocation=Print cache file path to message panel]
5
      btnPrintCacheFileLocation
1
GridBagConstraints gbc;
2
      JPanel pnlButtons = new JPanel(new GridBagLayout());
3
      // i18n[codeCompletion.prefixConfig.newRow=Add new row]
6
 = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.printCacheFileLocation"));
4
      btnNewRow = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.newRow"));
7
      gbc = new GridBagConstraints(0,0,1,1,0,0,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,0,5,5), 0,0);
5
      gbc = new GridBagConstraints(0,0,1,1,1,0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0,0,5,5),0,0);
8
      ret.add(btnPrintCacheFileLocation, gbc);
6
      
9
      // i18n[SchemaPropertiesPanel.deleteCache=Delete cache file
7
pnlButtons.add(btnNewRow, gbc);
10
]
8
      // i18n[codeCompletion.prefixConfig.deleteSelRows=Delete selected rows]
11
      btnDeleteCache = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.deleteCache"));
9
      btnDeleteRows = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.deleteSelRows"));
12
      gbc = new GridBagConstraints(1,0,1,1,0,0,GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,5,5,5), 0,0);
10
      gbc = new GridBagConstraints(1,0,1,1,0,0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0,5,5,5),0,0);
13
      ret.add(btnDeleteCache, gbc);
11
      pnlButtons.add(btnDeleteRows, gbc);
14
      return ret;
12
      return pnlButtons;
Summary
Number of common nesting structure subtrees1
Number of refactorable cases1
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones locationClones are in different classes having the same super class
Number of node comparisons36
  1. {Refactorable}
    Mapping Summary
    Number of mapped statements9
    Number of unmapped statements in the first code fragment1
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)0.0
    Clone typeType 3
    Mapped Statements
    ID Statement ID Statement
    1
    JPanel ret = new JPanel();
    1
    JPanel ret = new JPanel();
    2
    JPanel pnlButtons = new JPanel(new GridBagLayout());
    Differences
    Expression1Expression2Difference
    retpnlButtonsVARIABLE_NAME_MISMATCH
    new JPanel()new JPanel(new GridBagLayout())ARGUMENT_NUMBER_MISMATCH
    2
    JPanel pnlButtons = new JPanel(new GridBagLayout());
    2
    ret.setLayout(new GridBagLayout());
    2
    ret.setLayout(new GridBagLayout());
    Preondition Violations
    Unmatched statement ret.setLayout(new GridBagLayout()); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                                                
    3
    GridBagConstraints gbc;
    1
    GridBagConstraints gbc;
    4
    btnPrintCacheFileLocation = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.printCacheFileLocation"));
    4
    btnPrintCacheFileLocation = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.printCacheFileLocation"));
    3
    btnNewRow = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.newRow"));
    Differences
    Expression1Expression2Difference
    btnPrintCacheFileLocationbtnNewRowVARIABLE_NAME_MISMATCH
    "SchemaPropertiesPanel.printCacheFileLocation""codeCompletion.prefixConfig.newRow"LITERAL_VALUE_MISMATCH
    3
    btnNewRow = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.newRow"));
    5
    gbc = new GridBagConstraints(0, 0, 1, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 0, 5, 5), 0, 0);
    5
    gbc = new GridBagConstraints(0, 0, 1, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 0, 5, 5), 0, 0);
    4
    gbc = new GridBagConstraints(0, 0, 1, 1, 1, 0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0, 0, 5, 5), 0, 0);
    Differences
    Expression1Expression2Difference
    01LITERAL_VALUE_MISMATCH
    WESTNORTHWESTVARIABLE_NAME_MISMATCH
    4
    gbc = new GridBagConstraints(0, 0, 1, 1, 1, 0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0, 0, 5, 5), 0, 0);
    6
    ret.add(btnPrintCacheFileLocation, gbc);
    6
    ret.add(btnPrintCacheFileLocation, gbc);
    5
    pnlButtons.add(btnNewRow, gbc);
    Differences
    Expression1Expression2Difference
    btnPrintCacheFileLocationbtnNewRowVARIABLE_NAME_MISMATCH
    retpnlButtonsVARIABLE_NAME_MISMATCH
    5
    pnlButtons.add(btnNewRow, gbc);
    7
    btnDeleteCache = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.deleteCache"));
    7
    btnDeleteCache = new JButton(s_stringMgr.getString("SchemaPropertiesPanel.deleteCache"));
    6
    btnDeleteRows = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.deleteSelRows"));
    Differences
    Expression1Expression2Difference
    btnDeleteCachebtnDeleteRowsVARIABLE_NAME_MISMATCH
    "SchemaPropertiesPanel.deleteCache""codeCompletion.prefixConfig.deleteSelRows"LITERAL_VALUE_MISMATCH
    6
    btnDeleteRows = new JButton(s_stringMgr.getString("codeCompletion.prefixConfig.deleteSelRows"));
    8
    gbc = new GridBagConstraints(1, 0, 1, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 5, 5, 5), 0, 0);
    8
    gbc = new GridBagConstraints(1, 0, 1, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 5, 5, 5), 0, 0);
    7
    gbc = new GridBagConstraints(1, 0, 1, 1, 0, 0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0, 5, 5, 5), 0, 0);
    Differences
    Expression1Expression2Difference
    WESTNORTHWESTVARIABLE_NAME_MISMATCH
    7
    gbc = new GridBagConstraints(1, 0, 1, 1, 0, 0, GridBagConstraints.NORTHWEST, GridBagConstraints.NONE, new Insets(0, 5, 5, 5), 0, 0);
    9
    ret.add(btnDeleteCache, gbc);
    9
    ret.add(btnDeleteCache, gbc);
    8
    pnlButtons.add(btnDeleteRows, gbc);
    Differences
    Expression1Expression2Difference
    btnDeleteCachebtnDeleteRowsVARIABLE_NAME_MISMATCH
    retpnlButtonsVARIABLE_NAME_MISMATCH
    8
    pnlButtons.add(btnDeleteRows, gbc);
    10
    return ret;
    10
    return ret;
    9
    return pnlButtons;
    Differences
    Expression1Expression2Difference
    retpnlButtonsVARIABLE_NAME_MISMATCH
    9
    return pnlButtons;
    Precondition Violations (1)
    Row Violation
    1Unmatched statement ret.setLayout(new GridBagLayout()); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted