File path: /emf-2.4.1/src/org/eclipse/emf/common/ui/celleditor/ExtendedTableEditor.java | File path: /emf-2.4.1/src/org/eclipse/emf/common/ui/celleditor/ExtendedTableTreeEditor.java | |||
Method name: void mouseDown(MouseEvent)
|
Method name: void mouseDown(MouseEvent)
|
|||
Number of AST nodes: 28 | Number of AST nodes: 26 | |||
1 | LOOP: for (int i = table.getTopIndex(); i < tableItems.length; ++i)↵ | |||
2 | {↵ | |||
3 | for (int j = 0; j < columnCount; ++j)↵ | 1 | for (int j = 0; j < columnCount; ++j)↵ | |
4 | {↵ | 2 | {↵ | |
5 | Rectangle bounds = tableItems[i].getBounds(j);↵ | 3 | Rectangle bounds = tableItems[i].getBounds(j);↵ | |
6 | if (bounds.y > event.y)↵ | 4 | if (bounds.y > event.y)↵ | |
7 | {↵ | 5 | {↵ | |
8 | break LOOP;↵ | 6 | break LOOP;↵ | |
9 | }↵ | 7 | }↵ | |
10 | else if (bounds.contains(event.x, event.y))↵ | 8 | else if (bounds.contains(event.x, event.y))↵ | |
11 | {↵ | 9 | {↵ | |
12 | if (j != 0 || !tableItems[i].getImageBounds(0).contains(event.x, event.y))↵ | 10 | if (j != 0 || !tableItems[i].getImageBounds(0).contains(event.x, event.y))↵ | |
13 | {↵ | 11 | {↵ | |
14 | TableItem tableItem = tableItems[i];↵ | 12 | TableItem tableItem = tableItems[i];↵ | |
15 | if (tableItem == selectedTableItem || wasActive)↵ | 13 | if (tableItem == selectedTableItem || wasActive)↵ | |
16 | {↵ | 14 | {↵ | |
17 | if (tableItem != selectedTableItem)↵ | 15 | if (tableItem != selectedTableItem)↵ | |
18 | {↵ | 16 | {↵ | |
19 | table.setSelection(i);↵ | 17 | table.setSelection(i);↵ | |
20 | Event selectionEvent = new Event();↵ | 18 | Event selectionEvent = new Event();↵ | |
21 | selectionEvent.widget = table;↵ | 19 | selectionEvent.widget = table;↵ | |
22 | selectionEvent.item = tableItem;↵ | 20 | selectionEvent.item = tableItem;↵ | |
23 | table.notifyListeners(SWT.Selection, selectionEvent);↵ | 21 | table.notifyListeners(SWT.Selection, selectionEvent);↵ | |
24 | selectedTableItem = tableItem;↵ | 22 | selectedTableItem = tableItem;↵ | |
25 | }↵ | 23 | }↵ | |
26 | editTableItem = tableItems[i];↵ | 24 | editTableTreeItem = (TableTreeItem)tableItems[i].getData(ExtendedTableTreeViewer.ITEM_ID);↵ | |
27 | editTableItemColumn = j;↵ | 25 | editTableTreeItemColumn = j;↵ | |
28 | }↵ | 26 | }↵ | |
29 | else↵ | 27 | else↵ | |
30 | {↵ | 28 | {↵ | |
31 | TableItem mouseBasedTableItem = table.getItem(point);↵ | 29 | TableItem mouseBasedTableItem = table.getItem(point);↵ | |
32 | if (mouseBasedTableItem == null)↵ | 30 | if (mouseBasedTableItem == null)↵ | |
33 | {↵ | 31 | {↵ | |
34 | table.setSelection(i);↵ | 32 | table.setSelection(i);↵ | |
35 | Event selectionEvent = new Event();↵ | 33 | Event selectionEvent = new Event();↵ | |
36 | selectionEvent.widget = table;↵ | 34 | selectionEvent.widget = table;↵ | |
37 | selectionEvent.item = tableItem;↵ | 35 | selectionEvent.item = tableItem;↵ | |
38 | table.notifyListeners(SWT.Selection, selectionEvent);↵ | 36 | table.notifyListeners(SWT.Selection, selectionEvent);↵ | |
39 | selectedTableItem = tableItem;↵ | 37 | selectedTableItem = tableItem;↵ | |
40 | }↵ | 38 | }↵ | |
41 | }↵ | 39 | }↵ | |
42 | }↵ | 40 | }↵ | |
43 | break LOOP;↵ | 41 | break LOOP;↵ | |
44 | }↵ | 42 | }↵ | |
45 | }↵ | 43 |
| |
46 | } | |||
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) | 2.6 |
Clones location | Clones are in different classes having the same super class |
Number of node comparisons | 182 |
Number of mapped statements | 26 |
Number of unmapped statements in the first code fragment | 0 |
Number of unmapped statements in the second code fragment | 0 |
Time elapsed for statement mapping (ms) | 17.2 |
Clone type | Type 2 |
ID | Statement | ID | Statement | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
9 | for (int j = 0; j < columnCount; ++j) | 9 | for (int j = 0; j < columnCount; ++j) | |||||||||||||||||||||
10 | Rectangle bounds = tableItems[i].getBounds(j); | 10 | Rectangle bounds = tableItems[i].getBounds(j); | |||||||||||||||||||||
11 | if (bounds.y > event.y) | 11 | if (bounds.y > event.y) | |||||||||||||||||||||
12 | break LOOP; |
| 12 | break LOOP; | ||||||||||||||||||||
13 | else if (bounds.contains(event.x, event.y)) | 13 | else if (bounds.contains(event.x, event.y)) | |||||||||||||||||||||
14 | if (j != 0 || !tableItems[i].getImageBounds(0).contains(event.x, event.y)) | 14 | if (j != 0 || !tableItems[i].getImageBounds(0).contains(event.x, event.y)) | |||||||||||||||||||||
15 | TableItem tableItem = tableItems[i]; | 15 | TableItem tableItem = tableItems[i]; | |||||||||||||||||||||
16 | if (tableItem == selectedTableItem || wasActive) | 16 | if (tableItem == selectedTableItem || wasActive) | |||||||||||||||||||||
17 | if (tableItem != selectedTableItem) | 17 | if (tableItem != selectedTableItem) | |||||||||||||||||||||
18 | table.setSelection(i); | 18 | table.setSelection(i); | |||||||||||||||||||||
19 | Event selectionEvent = new Event(); | 19 | Event selectionEvent = new Event(); | |||||||||||||||||||||
20 | selectionEvent.widget = table; | 20 | selectionEvent.widget = table; | |||||||||||||||||||||
21 | selectionEvent.item = tableItem; | 21 | selectionEvent.item = tableItem; | |||||||||||||||||||||
22 | table.notifyListeners(SWT.Selection, selectionEvent); | 22 | table.notifyListeners(SWT.Selection, selectionEvent); | |||||||||||||||||||||
23 | selectedTableItem = tableItem; | 23 | selectedTableItem = tableItem; | |||||||||||||||||||||
24 | editTableItem = tableItems[i]; |
| 24 | editTableTreeItem = (TableTreeItem)tableItems[i].getData(ExtendedTableTreeViewer.ITEM_ID); | ||||||||||||||||||||
25 | editTableItemColumn = j; |
| 25 | editTableTreeItemColumn = j; | ||||||||||||||||||||
else | else | |||||||||||||||||||||||
26 | TableItem mouseBasedTableItem = table.getItem(point); | 26 | TableItem mouseBasedTableItem = table.getItem(point); | |||||||||||||||||||||
27 | if (mouseBasedTableItem == null) | 27 | if (mouseBasedTableItem == null) | |||||||||||||||||||||
28 | table.setSelection(i); | 28 | table.setSelection(i); | |||||||||||||||||||||
29 | Event selectionEvent = new Event(); | 29 | Event selectionEvent = new Event(); | |||||||||||||||||||||
30 | selectionEvent.widget = table; | 30 | selectionEvent.widget = table; | |||||||||||||||||||||
31 | selectionEvent.item = tableItem; | 31 | selectionEvent.item = tableItem; | |||||||||||||||||||||
32 | table.notifyListeners(SWT.Selection, selectionEvent); | 32 | table.notifyListeners(SWT.Selection, selectionEvent); | |||||||||||||||||||||
33 | selectedTableItem = tableItem; | 33 | selectedTableItem = tableItem; | |||||||||||||||||||||
34 | break LOOP; |
| 34 | break LOOP; |
Row | Violation |
---|---|
1 | Statement break LOOP; without innermost loop |
2 | Statement break LOOP; without innermost loop |
3 | Expression editTableItem cannot be parameterized, because it has dependencies to/from statements that will be extracted |
4 | Expression editTableTreeItem cannot be parameterized, because it has dependencies to/from statements that will be extracted |
5 | Expression editTableItem is a field being modified, and thus it cannot be parameterized |
6 | Expression editTableTreeItem is a field being modified, and thus it cannot be parameterized |
7 | Expression editTableItemColumn cannot be parameterized, because it has dependencies to/from statements that will be extracted |
8 | Expression editTableTreeItemColumn cannot be parameterized, because it has dependencies to/from statements that will be extracted |
9 | Expression editTableItemColumn is a field being modified, and thus it cannot be parameterized |
10 | Expression editTableTreeItemColumn is a field being modified, and thus it cannot be parameterized |
11 | Statement break LOOP; without innermost loop |
12 | Statement break LOOP; without innermost loop |