monthlyDateAreaBean .setPrimaryDimensionLayout(monthlyVerticalGridDimensionLayout); monthlyDateAreaBean .setSecondaryDimensionLayout(monthlyHorizontalGridDimensionLayout); ((DateGridHeader) monthlyWestDateHeaderBean.getHeader()) .setGridLineSpecification(new GridLineSpecification( new DefaultGridLineProvider(new GridLineRepetition[] { // horizontal light gray column separator line new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f)) }), null )); ((DateGridHeader) monthlyNorthDateHeaderBean.getHeader()) .setGridLineSpecification(new GridLineSpecification( new DefaultGridLineProvider(new GridLineRepetition[] { // vertical light gray column separator line new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f)) }), null )); // date area grid line monthlyDateAreaBean.getDateArea().setGridLineSpecProvider( new GridLineSpecProvider() { public GridLineSpecification createSpecification( DateArea dateArea) { return new GridLineSpecification( // horizontal grid lines new DefaultGridLineProvider( new GridLineRepetition[] { // dark gray line at 12 and 13 new GridLineRepetition(0, 1, new AtStart(0.1f), new AtEnd( -1f), 1, lightGrayColor) }), // vertical grid lines new DefaultGridLineProvider( new GridLineRepetition[] { // light gray line every day new GridLineRepetition(0, 1, null, null, 1, lightGrayColor) }),// vertical // grid // lines new DefaultGridLineProvider( new GridLineRepetition[] { // light gray line every day new GridLineRepetition(0, 1, new AtStart(1f), new AtEnd(-2f), 1, lightGrayColor) })); } }); monthlyDateAreaBean.setPrimaryDimension(SwingConstants.HORIZONTAL); monthlyDateAreaBean .setPrimaryDimensionCellType(DateRangeI.RANGE_TYPE_DAY); monthlyDateAreaBean.setPrimaryDimensionCellTypeCount(1); monthlyDateAreaBean.setWrapBoundary(DateRangeI.RANGE_TYPE_WEEK); DefaultDateArea dateArea = monthlyDateAreaBean.getDateArea(); dateArea.setActivitiesSupported(true); // select current day monthlyDateAreaBean.getDateArea() .addDecorator( new AbstractGridDecorator(monthlyDateAreaBean .getDateArea(), 20) { public void doPaint(Graphics2D g2, Rectangle bounds) { DateGrid dateGrid = (DateGrid) getGrid(); DateRangeI dr = new DateRange(System .currentTimeMillis(), DateRangeI.RANGE_TYPE_DAY, 1, null, null); Rectangle[] rects = dateGrid .getBoundsForDateRange(dr, Grid.SIZE_MODE_INSIDE); g2.setColor(new Color(250, 250, 250)); for (int i = 0; i < rects.length; i++) g2.fill(rects[i]); } public void gridChanged(PropertyChangeEvent e) { } public void dispose() { } }); final DateFormat defaultFormat = new SimpleDateFormat("MMMM dd");
monthlyDateAreaBean .setPrimaryDimensionLayout(monthlyVerticalGridDimensionLayout); monthlyDateAreaBean .setSecondaryDimensionLayout(monthlyHorizontalGridDimensionLayout); ((DateGridHeader) monthlyWestDateHeaderBean.getHeader()) .setGridLineSpecification(new GridLineSpecification( new DefaultGridLineProvider(new GridLineRepetition[] { // horizontal light gray column separator line new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f)) }), null )); ((DateGridHeader) monthlyNorthDateHeaderBean.getHeader()) .setGridLineSpecification(new GridLineSpecification( new DefaultGridLineProvider(new GridLineRepetition[] { // vertical light gray column separator line new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f)) }), null )); // date area grid line monthlyDateAreaBean.getDateArea().setGridLineSpecProvider( new GridLineSpecProvider() { public GridLineSpecification createSpecification( DateArea dateArea) { return new GridLineSpecification( // horizontal grid lines new DefaultGridLineProvider( new GridLineRepetition[] { // dark gray line at 12 and 13 new GridLineRepetition(0, 1, new AtStart(0.1f), new AtEnd( -1f), 1, lightGrayColor) }), // vertical grid lines new DefaultGridLineProvider( new GridLineRepetition[] { // light gray line every day new GridLineRepetition(0, 1, null, null, 1, lightGrayColor) }),// vertical // grid // lines new DefaultGridLineProvider( new GridLineRepetition[] { // light gray line every day new GridLineRepetition(0, 1, new AtStart(1f), new AtEnd(-2f), 1, lightGrayColor) })); } }); monthlyDateAreaBean.setPrimaryDimension(SwingConstants.HORIZONTAL); monthlyDateAreaBean .setPrimaryDimensionCellType(DateRangeI.RANGE_TYPE_DAY); monthlyDateAreaBean.setPrimaryDimensionCellTypeCount(1); monthlyDateAreaBean.setWrapBoundary(DateRangeI.RANGE_TYPE_WEEK); DefaultDateArea dateArea = monthlyDateAreaBean.getDateArea(); dateArea.setActivitiesSupported(false); // select current day monthlyDateAreaBean.getDateArea() .addDecorator( new AbstractGridDecorator(monthlyDateAreaBean .getDateArea(), 20) { public void doPaint(Graphics2D g2, Rectangle bounds) { DateGrid dateGrid = (DateGrid) getGrid(); DateRangeI dr = new DateRange(System .currentTimeMillis(), DateRangeI.RANGE_TYPE_DAY, 1, null, null); Rectangle[] rects = dateGrid .getBoundsForDateRange(dr, Grid.SIZE_MODE_INSIDE); g2.setColor(new Color(250, 250, 250)); for (int i = 0; i < rects.length; i++) g2.fill(rects[i]); } public void gridChanged(PropertyChangeEvent e) { } public void dispose() { } }); final DateFormat defaultFormat = new SimpleDateFormat("MMMM dd");
Clone fragments detected by clone detection tool
File path: /columba-1.4-src/calendar/src/main/java/org/columba/calendar/ui/calendar/DateAreaBeanFactory.java File path: /columba-1.4-src/calendar/src/main/java/org/columba/calendar/ui/navigation/DateAreaBeanFactory.java
Method name: DateAreaBean initMonthlyDateArea() Method name: DateAreaBean initDateArea()
Number of AST nodes: 13 Number of AST nodes: 13
1
monthlyDateAreaBean
1
monthlyDateAreaBean
2
				.setPrimaryDimensionLayout(monthlyVerticalGridDimensionLayout);
2
				.setPrimaryDimensionLayout(monthlyVerticalGridDimensionLayout);
3
		monthlyDateAreaBean
3
		monthlyDateAreaBean
4
				.setSecondaryDimensionLayout(monthlyHorizontalGridDimensionLayout);
4
				.setSecondaryDimensionLayout(monthlyHorizontalGridDimensionLayout);
5
		((DateGridHeader) monthlyWestDateHeaderBean.getHeader())
5
		((DateGridHeader) monthlyWestDateHeaderBean.getHeader())
6
				.setGridLineSpecification(new GridLineSpecification(
6
				.setGridLineSpecification(new GridLineSpecification(
7
						new DefaultGridLineProvider(new GridLineRepetition[] {
7
						new DefaultGridLineProvider(new GridLineRepetition[] {
8
						// horizontal light gray column separator line
8
						// horizontal light gray column separator line
9
								new GridLineRepetition(0, 1, new AtStart(0f),
9
								new GridLineRepetition(0, 1, new AtStart(0f),
10
										null, 1, lightGrayColor,
10
										null, 1, lightGrayColor,
11
										new AtStart(3f), new AtEnd(-3f))
11
										new AtStart(3f), new AtEnd(-3f))
12
								}), null
12
								}), null
13
				));
13
				));
14
		((DateGridHeader) monthlyNorthDateHeaderBean.getHeader())
14
		((DateGridHeader) monthlyNorthDateHeaderBean.getHeader())
15
				.setGridLineSpecification(new GridLineSpecification(
15
				.setGridLineSpecification(new GridLineSpecification(
16
						new DefaultGridLineProvider(new GridLineRepetition[] {
16
						new DefaultGridLineProvider(new GridLineRepetition[] {
17
						// vertical light gray column separator line
17
						// vertical light gray column separator line
18
								new GridLineRepetition(0, 1, new AtStart(0f),
18
								new GridLineRepetition(0, 1, new AtStart(0f),
19
										null, 1, lightGrayColor,
19
										null, 1, lightGrayColor,
20
										new AtStart(3f), new AtEnd(-3f))
20
										new AtStart(3f), new AtEnd(-3f))
21
								}), null
21
								}), null
22
				));
22
				));
23
		// date area grid line
23
		// date area grid line
24
		monthlyDateAreaBean.getDateArea().setGridLineSpecProvider(
24
		monthlyDateAreaBean.getDateArea().setGridLineSpecProvider(
25
				new GridLineSpecProvider() {
25
				new GridLineSpecProvider() {
26
					public GridLineSpecification createSpecification(
26
					public GridLineSpecification createSpecification(
27
							DateArea dateArea) {
27
							DateArea dateArea) {
28
						return new GridLineSpecification(
28
						return new GridLineSpecification(
29
								// horizontal grid lines
29
								// horizontal grid lines
30
								new DefaultGridLineProvider(
30
								new DefaultGridLineProvider(
31
										new GridLineRepetition[] {
31
										new GridLineRepetition[] {
32
										// dark gray line at 12 and 13
32
										// dark gray line at 12 and 13
33
										new GridLineRepetition(0, 1,
33
										new GridLineRepetition(0, 1,
34
												new AtStart(0.1f), new AtEnd(
34
												new AtStart(0.1f), new AtEnd(
35
														-1f), 1, lightGrayColor) }),
35
														-1f), 1, lightGrayColor) }),
36
								// vertical grid lines
36
								// vertical grid lines
37
								new DefaultGridLineProvider(
37
								new DefaultGridLineProvider(
38
										new GridLineRepetition[] {
38
										new GridLineRepetition[] {
39
										// light gray line every day
39
										// light gray line every day
40
										new GridLineRepetition(0, 1, null,
40
										new GridLineRepetition(0, 1, null,
41
												null, 1, lightGrayColor) }),// vertical
41
												null, 1, lightGrayColor) }),// vertical
42
								// grid
42
								// grid
43
								// lines
43
								// lines
44
								new DefaultGridLineProvider(
44
								new DefaultGridLineProvider(
45
										new GridLineRepetition[] {
45
										new GridLineRepetition[] {
46
										// light gray line every day
46
										// light gray line every day
47
										new GridLineRepetition(0, 1,
47
										new GridLineRepetition(0, 1,
48
												new AtStart(1f),
48
												new AtStart(1f),
49
												new AtEnd(-2f), 1,
49
												new AtEnd(-2f), 1,
50
												lightGrayColor) }));
50
												lightGrayColor) }));
51
					}
51
					}
52
				});
52
				});
53
		monthlyDateAreaBean.setPrimaryDimension(SwingConstants.HORIZONTAL);
53
		monthlyDateAreaBean.setPrimaryDimension(SwingConstants.HORIZONTAL);
54
		monthlyDateAreaBean
54
		monthlyDateAreaBean
55
				.setPrimaryDimensionCellType(DateRangeI.RANGE_TYPE_DAY);
55
				.setPrimaryDimensionCellType(DateRangeI.RANGE_TYPE_DAY);
56
		monthlyDateAreaBean.setPrimaryDimensionCellTypeCount(1);
56
		monthlyDateAreaBean.setPrimaryDimensionCellTypeCount(1);
57
		monthlyDateAreaBean.setWrapBoundary(DateRangeI.RANGE_TYPE_WEEK);
57
		monthlyDateAreaBean.setWrapBoundary(DateRangeI.RANGE_TYPE_WEEK);
58
		DefaultDateArea dateArea = monthlyDateAreaBean.getDateArea();
58
		DefaultDateArea dateArea = monthlyDateAreaBean.getDateArea();
59
		dateArea.setActivitiesSupported(true);
59
		dateArea.setActivitiesSupported(false);
60
		// select current day
60
		// select current day
61
		monthlyDateAreaBean.getDateArea()
61
		monthlyDateAreaBean.getDateArea()
62
				.addDecorator(
62
				.addDecorator(
63
						new AbstractGridDecorator(monthlyDateAreaBean
63
						new AbstractGridDecorator(monthlyDateAreaBean
64
								.getDateArea(), 20) {
64
								.getDateArea(), 20) {
65
							public void doPaint(Graphics2D g2, Rectangle bounds) {
65
							public void doPaint(Graphics2D g2, Rectangle bounds) {
66
								DateGrid dateGrid = (DateGrid) getGrid();
66
								DateGrid dateGrid = (DateGrid) getGrid();
67
								DateRangeI dr = new DateRange(System
67
								DateRangeI dr = new DateRange(System
68
										.currentTimeMillis(),
68
										.currentTimeMillis(),
69
										DateRangeI.RANGE_TYPE_DAY, 1, null,
69
										DateRangeI.RANGE_TYPE_DAY, 1, null,
70
										null);
70
										null);
71
								Rectangle[] rects = dateGrid
71
								Rectangle[] rects = dateGrid
72
										.getBoundsForDateRange(dr,
72
										.getBoundsForDateRange(dr,
73
												Grid.SIZE_MODE_INSIDE);
73
												Grid.SIZE_MODE_INSIDE);
74
								g2.setColor(new Color(250, 250, 250));
74
								g2.setColor(new Color(250, 250, 250));
75
								for (int i = 0; i < rects.length; i++)
75
								for (int i = 0; i < rects.length; i++)
76
									g2.fill(rects[i]);
76
									g2.fill(rects[i]);
77
							}
77
							}
78
							public void gridChanged(PropertyChangeEvent e) {
78
							public void gridChanged(PropertyChangeEvent e) {
79
							}
79
							}
80
							public void dispose() {
80
							public void dispose() {
81
							}
81
							}
82
						});
82
						});
83
		final DateFormat defaultFormat = new SimpleDateFormat("MMMM dd");
83
		final DateFormat defaultFormat = new SimpleDateFormat("MMMM dd");
Summary
Number of common nesting structure subtrees1
Number of refactorable cases0
Number of non-refactorable cases1
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones locationClones are in different classes
Number of node comparisons145
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements13
    Number of unmapped statements in the first code fragment0
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)0.0
    Clone typeType 2
    Mapped Statements
    ID Statement ID Statement
    16
    monthlyDateAreaBean.setPrimaryDimensionLayout(monthlyVerticalGridDimensionLayout);
    22
    monthlyDateAreaBean.setPrimaryDimensionLayout(monthlyVerticalGridDimensionLayout);
    17
    monthlyDateAreaBean.setSecondaryDimensionLayout(monthlyHorizontalGridDimensionLayout);
    23
    monthlyDateAreaBean.setSecondaryDimensionLayout(monthlyHorizontalGridDimensionLayout);
    18
    ((DateGridHeader)monthlyWestDateHeaderBean.getHeader()).setGridLineSpecification(new GridLineSpecification(new DefaultGridLineProvider(new GridLineRepetition[] {new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f))}), null));
    24
    ((DateGridHeader)monthlyWestDateHeaderBean.getHeader()).setGridLineSpecification(new GridLineSpecification(new DefaultGridLineProvider(new GridLineRepetition[] {new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f))}), null));
    19
    ((DateGridHeader)monthlyNorthDateHeaderBean.getHeader()).setGridLineSpecification(new GridLineSpecification(new DefaultGridLineProvider(new GridLineRepetition[] {new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f))}), null));
    25
    ((DateGridHeader)monthlyNorthDateHeaderBean.getHeader()).setGridLineSpecification(new GridLineSpecification(new DefaultGridLineProvider(new GridLineRepetition[] {new GridLineRepetition(0, 1, new AtStart(0f), null, 1, lightGrayColor, new AtStart(3f), new AtEnd(-3f))}), null));
    20
    monthlyDateAreaBean.getDateArea().setGridLineSpecProvider(new GridLineSpecProvider() {...});
    26
    monthlyDateAreaBean.getDateArea().setGridLineSpecProvider(new GridLineSpecProvider() {...});
    21
    monthlyDateAreaBean.setPrimaryDimension(SwingConstants.HORIZONTAL);
    27
    monthlyDateAreaBean.setPrimaryDimension(SwingConstants.HORIZONTAL);
    22
    monthlyDateAreaBean.setPrimaryDimensionCellType(DateRangeI.RANGE_TYPE_DAY);
    28
    monthlyDateAreaBean.setPrimaryDimensionCellType(DateRangeI.RANGE_TYPE_DAY);
    23
    monthlyDateAreaBean.setPrimaryDimensionCellTypeCount(1);
    29
    monthlyDateAreaBean.setPrimaryDimensionCellTypeCount(1);
    24
    monthlyDateAreaBean.setWrapBoundary(DateRangeI.RANGE_TYPE_WEEK);
    30
    monthlyDateAreaBean.setWrapBoundary(DateRangeI.RANGE_TYPE_WEEK);
    25
    DefaultDateArea dateArea = monthlyDateAreaBean.getDateArea();
    31
    DefaultDateArea dateArea = monthlyDateAreaBean.getDateArea();
    26
    dateArea.setActivitiesSupported(true);
    26
    dateArea.setActivitiesSupported(true);
    32
    dateArea.setActivitiesSupported(false);
    Differences
    Expression1Expression2Difference
    truefalseLITERAL_VALUE_MISMATCH
    32
    dateArea.setActivitiesSupported(false);
    27
    monthlyDateAreaBean.getDateArea().addDecorator(new AbstractGridDecorator(monthlyDateAreaBean.getDateArea(), 20) {...});
    33
    monthlyDateAreaBean.getDateArea().addDecorator(new AbstractGridDecorator(monthlyDateAreaBean.getDateArea(), 20) {...});
    28
    final DateFormat defaultFormat = new SimpleDateFormat("MMMM dd");
    34
    final DateFormat defaultFormat = new SimpleDateFormat("MMMM dd");
    Precondition Violations (1)
    Row Violation
    1Clone fragment #1 returns variables defaultFormat, dateArea , while Clone fragment #2 returns variables dateArea