FindBugs Bug Detector Report

The following document contains the results of FindBugs Report

FindBugs Version is 1.2.1

Threshold is Low

Effort is Default

Summary

Classes Bugs Errors Missing Classes
799 110 0 0

Files

Class Bugs
de.jaret.util.ui.timebars.TimeBarMarkerImpl 1
de.jaret.util.ui.timebars.TimeBarNowMarker 1
de.jaret.util.ui.timebars.TimeBarViewerDelegate 6
de.jaret.util.ui.timebars.TimeBarViewerDelegate$2 1
de.jaret.util.ui.timebars.model.AddingTimeBarRowModel$MergedInterval 1
de.jaret.util.ui.timebars.model.DefaultTimeBarRowModel$1 1
de.jaret.util.ui.timebars.model.DefaultTimeBarRowModel$2 1
de.jaret.util.ui.timebars.model.PPSInterval 1
de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$1 1
de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$2 1
de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$3 1
de.jaret.util.ui.timebars.swing.TimeBarViewer 16
de.jaret.util.ui.timebars.swing.TimeBarViewer$Diagram 3
de.jaret.util.ui.timebars.swing.dnd.IntervalListTransferable 2
de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer 5
de.jaret.util.ui.timebars.swing.renderer.DefaultGapRenderer$GapRenderer 4
de.jaret.util.ui.timebars.swing.renderer.DefaultGridRenderer$MyGridRenderer 2
de.jaret.util.ui.timebars.swing.renderer.DefaultHierarchyRenderer$MyHierarchyRenderer 4
de.jaret.util.ui.timebars.swing.renderer.DefaultRelationRenderer 1
de.jaret.util.ui.timebars.swing.renderer.DefaultRelationRenderer$Line 1
de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer 12
de.jaret.util.ui.timebars.swing.renderer.DefaultTitleRenderer$TitleRendererComponent 1
de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer 15
de.jaret.util.ui.timebars.swt.TimeBarPrinter 2
de.jaret.util.ui.timebars.swt.TimeBarViewer 7
de.jaret.util.ui.timebars.swt.renderer.DefaultHierarchyRenderer 1
de.jaret.util.ui.timebars.swt.renderer.DefaultTimeScaleRenderer 3
de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer 9
de.jaret.util.ui.timebars.swt.renderer.RelationRenderer 1
de.jaret.util.ui.timebars.swt.renderer.RelationRenderer$Line 1
de.jaret.util.ui.timebars.swt.util.actions.CollapseAllAction 1
de.jaret.util.ui.timebars.swt.util.actions.CollapseNodeAction 1
de.jaret.util.ui.timebars.swt.util.actions.ExpandAllAction 1
de.jaret.util.ui.timebars.swt.util.actions.ExpandNodeAction 1

de.jaret.util.ui.timebars.TimeBarMarkerImpl

Bug Category Details Line
Confusing to have methods de.jaret.util.ui.timebars.TimeBarMarkerImpl.setTooltipText(String) and org.eclipse.jface.action.Action.setToolTipText(String) BAD_PRACTICE NM_CONFUSING 97-98

de.jaret.util.ui.timebars.TimeBarNowMarker

Bug Category Details Line
de.jaret.util.ui.timebars.TimeBarNowMarker.TimeBarNowMarker() invokes java.lang.Thread.start() MT_CORRECTNESS SC_START_IN_CTOR 38

de.jaret.util.ui.timebars.TimeBarViewerDelegate

Bug Category Details Line
Dead store to result in de.jaret.util.ui.timebars.TimeBarViewerDelegate.getIntervalsAt(TimeBarRow, int, int) STYLE DLS_DEAD_LOCAL_STORE 2267
Test for floating point equality in de.jaret.util.ui.timebars.TimeBarViewerDelegate.setPixelPerSecond(double, boolean) STYLE FE_FLOATING_POINT_EQUALITY 973
Redundant nullcheck of de.jaret.util.ui.timebars.TimeBarViewerDelegate._intervalModificators, which is known to be non-null in de.jaret.util.ui.timebars.TimeBarViewerDelegate.isResizingAllowed(TimeBarRow, Interval) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 3915
Redundant nullcheck of de.jaret.util.ui.timebars.TimeBarViewerDelegate._tbvi, which is known to be non-null in de.jaret.util.ui.timebars.TimeBarViewerDelegate.scrollTo(JaretDate) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 852
Redundant nullcheck of de.jaret.util.ui.timebars.TimeBarViewerDelegate._tbvi, which is known to be non-null in de.jaret.util.ui.timebars.TimeBarViewerDelegate.setFirstRow(int, int) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 2611
Redundant nullcheck of de.jaret.util.ui.timebars.TimeBarViewerDelegate._tbvi, which is known to be non-null in de.jaret.util.ui.timebars.TimeBarViewerDelegate.setRowHeight(int) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 1156

de.jaret.util.ui.timebars.TimeBarViewerDelegate$2

Bug Category Details Line
The class de.jaret.util.ui.timebars.TimeBarViewerDelegate$2 could be refactored into a named _static_ inner class PERFORMANCE SIC_INNER_SHOULD_BE_STATIC_ANON 2998-3000

de.jaret.util.ui.timebars.model.AddingTimeBarRowModel$MergedInterval

Bug Category Details Line
Should de.jaret.util.ui.timebars.model.AddingTimeBarRowModel$MergedInterval be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 195-224

de.jaret.util.ui.timebars.model.DefaultTimeBarRowModel$1

Bug Category Details Line
The class de.jaret.util.ui.timebars.model.DefaultTimeBarRowModel$1 could be refactored into a named _static_ inner class PERFORMANCE SIC_INNER_SHOULD_BE_STATIC_ANON 73-75

de.jaret.util.ui.timebars.model.DefaultTimeBarRowModel$2

Bug Category Details Line
The class de.jaret.util.ui.timebars.model.DefaultTimeBarRowModel$2 could be refactored into a named _static_ inner class PERFORMANCE SIC_INNER_SHOULD_BE_STATIC_ANON 103-105

de.jaret.util.ui.timebars.model.PPSInterval

Bug Category Details Line
Test for floating point equality in de.jaret.util.ui.timebars.model.PPSInterval.setPps(double) STYLE FE_FLOATING_POINT_EQUALITY 66

de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$1

Bug Category Details Line
The class de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$1 could be refactored into a named _static_ inner class PERFORMANCE SIC_INNER_SHOULD_BE_STATIC_ANON 109-111

de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$2

Bug Category Details Line
The class de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$2 could be refactored into a named _static_ inner class PERFORMANCE SIC_INNER_SHOULD_BE_STATIC_ANON 123-125

de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$3

Bug Category Details Line
The class de.jaret.util.ui.timebars.strategy.DefaultOverlapStrategy$3 could be refactored into a named _static_ inner class PERFORMANCE SIC_INNER_SHOULD_BE_STATIC_ANON 241-243

de.jaret.util.ui.timebars.swing.TimeBarViewer

Bug Category Details Line
Unchecked/unconfirmed cast from de.jaret.util.ui.timebars.swing.renderer.TimeScaleRenderer to de.jaret.util.ui.timebars.strategy.ITickProvider in de.jaret.util.ui.timebars.swing.TimeBarViewer.setTimeScaleRenderer(TimeScaleRenderer) STYLE BC_UNCONFIRMED_CAST 1831
Confusing to have methods de.jaret.util.ui.timebars.swing.TimeBarViewer.addMouseListener(MouseListener) and org.eclipse.swt.widgets.Control.addMouseListener(MouseListener) BAD_PRACTICE NM_CONFUSING 293-295
Confusing to have methods de.jaret.util.ui.timebars.swing.TimeBarViewer.setHeaderRenderer(HeaderRenderer) and de.jaret.util.ui.timebars.swt.TimeBarViewer.setHeaderRenderer(HeaderRenderer) BAD_PRACTICE NM_CONFUSING 435-442
Confusing to have methods de.jaret.util.ui.timebars.swing.TimeBarViewer.setHierarchyRenderer(HierarchyRenderer) and de.jaret.util.ui.timebars.swt.TimeBarViewer.setHierarchyRenderer(HierarchyRenderer) BAD_PRACTICE NM_CONFUSING 450-457
Confusing to have methods de.jaret.util.ui.timebars.swing.TimeBarViewer.setMiscRenderer(IMiscRenderer) and de.jaret.util.ui.timebars.swt.TimeBarViewer.setMiscRenderer(IMiscRenderer) BAD_PRACTICE NM_CONFUSING 1851-1853
Confusing to have methods de.jaret.util.ui.timebars.swing.TimeBarViewer.setRelationRenderer(IRelationRenderer) and de.jaret.util.ui.timebars.swt.TimeBarViewer.setRelationRenderer(IRelationRenderer) BAD_PRACTICE NM_CONFUSING 1889-1891
Confusing to have methods de.jaret.util.ui.timebars.swing.TimeBarViewer.setTimeScaleRenderer(TimeScaleRenderer) and de.jaret.util.ui.timebars.swt.TimeBarViewer.setTimeScaleRenderer(TimeScaleRenderer) BAD_PRACTICE NM_CONFUSING 1820-1834
Class de.jaret.util.ui.timebars.swing.TimeBarViewer defines non-transient non-serializable instance field _delegate BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.TimeBarViewer defines non-transient non-serializable instance field _gapRenderer BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.TimeBarViewer defines non-transient non-serializable instance field _headerRenderer BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.TimeBarViewer defines non-transient non-serializable instance field _hierarchyRenderer BAD_PRACTICE SE_BAD_FIELD Not available
The field de.jaret.util.ui.timebars.swing.TimeBarViewer._gridRenderer is transient but isn't set by deserialization BAD_PRACTICE SE_TRANSIENT_FIELD_NOT_RESTORED Not available
The field de.jaret.util.ui.timebars.swing.TimeBarViewer._markerRenderer is transient but isn't set by deserialization BAD_PRACTICE SE_TRANSIENT_FIELD_NOT_RESTORED Not available
The field de.jaret.util.ui.timebars.swing.TimeBarViewer._miscRenderer is transient but isn't set by deserialization BAD_PRACTICE SE_TRANSIENT_FIELD_NOT_RESTORED Not available
The field de.jaret.util.ui.timebars.swing.TimeBarViewer._timeScaleRenderer is transient but isn't set by deserialization BAD_PRACTICE SE_TRANSIENT_FIELD_NOT_RESTORED Not available
Private method de.jaret.util.ui.timebars.swing.TimeBarViewer.drawGhosts(Graphics) is never called PERFORMANCE UPM_UNCALLED_PRIVATE_METHOD 3258-3260

de.jaret.util.ui.timebars.swing.TimeBarViewer$Diagram

Bug Category Details Line
Dead store to nanoTime in de.jaret.util.ui.timebars.swing.TimeBarViewer$Diagram.paintComponent(Graphics) STYLE DLS_DEAD_LOCAL_STORE 679
Dead store to time in de.jaret.util.ui.timebars.swing.TimeBarViewer$Diagram.paintComponent(Graphics) STYLE DLS_DEAD_LOCAL_STORE 678
Ambiguous invocation of either an outer or inherited method java.awt.Component.addMouseListener(MouseListener) in de.jaret.util.ui.timebars.swing.TimeBarViewer$Diagram.Diagram(TimeBarViewer) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 647

de.jaret.util.ui.timebars.swing.dnd.IntervalListTransferable

Bug Category Details Line
de.jaret.util.ui.timebars.swing.dnd.IntervalListTransferable.getTransferDataFlavors() may expose internal representation by returning IntervalListTransferable.supportedFlavors MALICIOUS_CODE EI_EXPOSE_REP 56
de.jaret.util.ui.timebars.swing.dnd.IntervalListTransferable.intervalListFlavor isn't final but should be MALICIOUS_CODE MS_SHOULD_BE_FINAL 35

de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer

Bug Category Details Line
Dead store to destRect in de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer.drawStrips(Graphics, TimeBarViewerDelegate, boolean, JaretDate, JaretDate) STYLE DLS_DEAD_LOCAL_STORE 323
Dead store to ox in de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer.drawStrips(Graphics, TimeBarViewerDelegate, boolean, JaretDate, JaretDate) STYLE DLS_DEAD_LOCAL_STORE 326
Class de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _delegate BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _holidayEnumerator BAD_PRACTICE SE_BAD_FIELD Not available
de.jaret.util.ui.timebars.swing.renderer.BoxTimeScaleRenderer$MyTimeScaleRenderer is serializable but also an inner class of a non-serializable class BAD_PRACTICE SE_BAD_FIELD_INNER_CLASS 105-500

de.jaret.util.ui.timebars.swing.renderer.DefaultGapRenderer$GapRenderer

Bug Category Details Line
Class de.jaret.util.ui.timebars.swing.renderer.DefaultGapRenderer$GapRenderer defines non-transient non-serializable instance field _i1 BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.renderer.DefaultGapRenderer$GapRenderer defines non-transient non-serializable instance field _i2 BAD_PRACTICE SE_BAD_FIELD Not available
de.jaret.util.ui.timebars.swing.renderer.DefaultGapRenderer$GapRenderer is serializable but also an inner class of a non-serializable class BAD_PRACTICE SE_BAD_FIELD_INNER_CLASS 70-128
Should de.jaret.util.ui.timebars.swing.renderer.DefaultGapRenderer$GapRenderer be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 70-128

de.jaret.util.ui.timebars.swing.renderer.DefaultGridRenderer$MyGridRenderer

Bug Category Details Line
de.jaret.util.ui.timebars.swing.renderer.DefaultGridRenderer$MyGridRenderer is serializable but also an inner class of a non-serializable class BAD_PRACTICE SE_BAD_FIELD_INNER_CLASS 120-259
DefaultGridRenderer$MyGridRenderer._tbv not initialized in constructor STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Not available

de.jaret.util.ui.timebars.swing.renderer.DefaultHierarchyRenderer$MyHierarchyRenderer

Bug Category Details Line
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getWidth() in de.jaret.util.ui.timebars.swing.renderer.DefaultHierarchyRenderer$MyHierarchyRenderer.paintComponent(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 98
Class de.jaret.util.ui.timebars.swing.renderer.DefaultHierarchyRenderer$MyHierarchyRenderer defines non-transient non-serializable instance field _row BAD_PRACTICE SE_BAD_FIELD Not available
de.jaret.util.ui.timebars.swing.renderer.DefaultHierarchyRenderer$MyHierarchyRenderer is serializable but also an inner class of a non-serializable class BAD_PRACTICE SE_BAD_FIELD_INNER_CLASS 69-149
Should de.jaret.util.ui.timebars.swing.renderer.DefaultHierarchyRenderer$MyHierarchyRenderer be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 69-149

de.jaret.util.ui.timebars.swing.renderer.DefaultRelationRenderer

Bug Category Details Line
DefaultRelationRenderer._cache not initialized in constructor STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Not available

de.jaret.util.ui.timebars.swing.renderer.DefaultRelationRenderer$Line

Bug Category Details Line
Should de.jaret.util.ui.timebars.swing.renderer.DefaultRelationRenderer$Line be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 456-490

de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer

Bug Category Details Line
Dead store to destRect in de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer.drawStrips(Graphics, TimeBarViewerDelegate, boolean, JaretDate, JaretDate) STYLE DLS_DEAD_LOCAL_STORE 338
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer.drawStrips(Graphics, TimeBarViewerDelegate, boolean, JaretDate, JaretDate) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 353
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer.drawStrips(Graphics, TimeBarViewerDelegate, boolean, JaretDate, JaretDate) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 428
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer.drawStrips(Graphics, TimeBarViewerDelegate, boolean, JaretDate, JaretDate) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 430
Class de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _delegate BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _holidayEnumerator BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _lowerStrip BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _midStrip BAD_PRACTICE SE_BAD_FIELD Not available
Class de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer defines non-transient non-serializable instance field _upperStrip BAD_PRACTICE SE_BAD_FIELD Not available
de.jaret.util.ui.timebars.swing.renderer.DefaultTimeScaleRenderer$MyTimeScaleRenderer is serializable but also an inner class of a non-serializable class BAD_PRACTICE SE_BAD_FIELD_INNER_CLASS 189-539
DefaultTimeScaleRenderer$MyTimeScaleRenderer._delegate not initialized in constructor STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Not available
DefaultTimeScaleRenderer$MyTimeScaleRenderer._tbv not initialized in constructor STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Not available

de.jaret.util.ui.timebars.swing.renderer.DefaultTitleRenderer$TitleRendererComponent

Bug Category Details Line
int division result cast to double or float in de.jaret.util.ui.timebars.swing.renderer.DefaultTitleRenderer$TitleRendererComponent.paintComponent(Graphics) STYLE ICAST_IDIV_CAST_TO_DOUBLE 108

de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer

Bug Category Details Line
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintHorizontal(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 155
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 295
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 297
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 301
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 317
Ambiguous invocation of either an outer or inherited method javax.swing.JComponent.getHeight() in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 333
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintHorizontal(Graphics) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 171
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintHorizontal(Graphics) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 187
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintHorizontal(Graphics) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 237
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 305
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 321
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer.paintVertical(Graphics) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 360
de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer is serializable but also an inner class of a non-serializable class BAD_PRACTICE SE_BAD_FIELD_INNER_CLASS 68-381
Should de.jaret.util.ui.timebars.swing.renderer.OldDefaultTimeScaleRenderer$MyTimeScaleRenderer be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 68-381
OldDefaultTimeScaleRenderer$MyTimeScaleRenderer._tbv not initialized in constructor STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Not available

de.jaret.util.ui.timebars.swt.TimeBarPrinter

Bug Category Details Line
Method de.jaret.util.ui.timebars.swt.TimeBarPrinter.print(ViewConfiguration) concatenates strings using + in a loop PERFORMANCE SBSC_USE_STRINGBUFFER_CONCATENATION 469
Method de.jaret.util.ui.timebars.swt.TimeBarPrinter.init(TimeBarViewer) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 258

de.jaret.util.ui.timebars.swt.TimeBarViewer

Bug Category Details Line
Unchecked/unconfirmed cast from de.jaret.util.ui.timebars.swt.renderer.TimeScaleRenderer to de.jaret.util.ui.timebars.strategy.ITickProvider in de.jaret.util.ui.timebars.swt.TimeBarViewer.setTimeScaleRenderer(TimeScaleRenderer) STYLE BC_UNCONFIRMED_CAST 1257
Dead store to ntime in de.jaret.util.ui.timebars.swt.TimeBarViewer.onPaint(PaintEvent) STYLE DLS_DEAD_LOCAL_STORE 797
Dead store to time in de.jaret.util.ui.timebars.swt.TimeBarViewer.onPaint(PaintEvent) STYLE DLS_DEAD_LOCAL_STORE 796
Confusing to have methods de.jaret.util.ui.timebars.swt.TimeBarViewer.registerTimeBarRenderer(Class, TimeBarRenderer) and de.jaret.util.ui.timebars.swing.TimeBarViewer.registerTimeBarRenderer(Class, TimeBarRenderer) BAD_PRACTICE NM_CONFUSING 641-643
Confusing to have methods de.jaret.util.ui.timebars.swt.TimeBarViewer.setGapRenderer(TimeBarGapRenderer) and de.jaret.util.ui.timebars.swing.TimeBarViewer.setGapRenderer(TimeBarGapRenderer) BAD_PRACTICE NM_CONFUSING 1228-1230
Confusing to have methods de.jaret.util.ui.timebars.swt.TimeBarViewer.setGridRenderer(GridRenderer) and de.jaret.util.ui.timebars.swing.TimeBarViewer.setGridRenderer(GridRenderer) BAD_PRACTICE NM_CONFUSING 1192-1197
Confusing to have methods de.jaret.util.ui.timebars.swt.TimeBarViewer.setTimeBarRenderer(TimeBarRenderer) and de.jaret.util.ui.timebars.swing.TimeBarViewer.setTimeBarRenderer(TimeBarRenderer) BAD_PRACTICE NM_CONFUSING 621-622

de.jaret.util.ui.timebars.swt.renderer.DefaultHierarchyRenderer

Bug Category Details Line
Unchecked/unconfirmed cast from de.jaret.util.ui.timebars.model.TimeBarRow to de.jaret.util.ui.timebars.model.TimeBarNode in de.jaret.util.ui.timebars.swt.renderer.DefaultHierarchyRenderer.draw(GC, Rectangle, TimeBarViewerDelegate, TimeBarRow, boolean, boolean, boolean, int, int, boolean) STYLE BC_UNCONFIRMED_CAST 185

de.jaret.util.ui.timebars.swt.renderer.DefaultTimeScaleRenderer

Bug Category Details Line
Dead store to destRect in de.jaret.util.ui.timebars.swt.renderer.DefaultTimeScaleRenderer.drawStrips(GC, TimeBarViewerDelegate, Rectangle, boolean, JaretDate, JaretDate, boolean) STYLE DLS_DEAD_LOCAL_STORE 291
Dead store to dayOff in de.jaret.util.ui.timebars.swt.renderer.DefaultTimeScaleRenderer.drawStrips(GC, TimeBarViewerDelegate, Rectangle, boolean, JaretDate, JaretDate, boolean) STYLE DLS_DEAD_LOCAL_STORE 374
Dead store to majorLabelOff in de.jaret.util.ui.timebars.swt.renderer.DefaultTimeScaleRenderer.drawStrips(GC, TimeBarViewerDelegate, Rectangle, boolean, JaretDate, JaretDate, boolean) STYLE DLS_DEAD_LOCAL_STORE 373

de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer

Bug Category Details Line
Method de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawHorizontal(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) uses the same code for two branches STYLE DB_DUPLICATE_BRANCHES 138
Dead store to dayOff in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawVertical(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) STYLE DLS_DEAD_LOCAL_STORE 287
Dead store to majorLabelOff in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawVertical(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) STYLE DLS_DEAD_LOCAL_STORE 286
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawHorizontal(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 175
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawHorizontal(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 191
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawHorizontal(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 252
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawVertical(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 335
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawVertical(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 351
int value cast to float and then passed to Math.round in de.jaret.util.ui.timebars.swt.renderer.OldDefaultTimeScaleRenderer.drawVertical(GC, Rectangle, TimeBarViewerDelegate, boolean, boolean) CORRECTNESS ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND 411

de.jaret.util.ui.timebars.swt.renderer.RelationRenderer

Bug Category Details Line
RelationRenderer._cache not initialized in constructor STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Not available

de.jaret.util.ui.timebars.swt.renderer.RelationRenderer$Line

Bug Category Details Line
Should de.jaret.util.ui.timebars.swt.renderer.RelationRenderer$Line be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 577-617

de.jaret.util.ui.timebars.swt.util.actions.CollapseAllAction

Bug Category Details Line
Unread field: de.jaret.util.ui.timebars.swt.util.actions.CollapseAllAction._viewer PERFORMANCE URF_UNREAD_FIELD 47

de.jaret.util.ui.timebars.swt.util.actions.CollapseNodeAction

Bug Category Details Line
Unread field: de.jaret.util.ui.timebars.swt.util.actions.CollapseNodeAction._viewer PERFORMANCE URF_UNREAD_FIELD 47

de.jaret.util.ui.timebars.swt.util.actions.ExpandAllAction

Bug Category Details Line
Unread field: de.jaret.util.ui.timebars.swt.util.actions.ExpandAllAction._viewer PERFORMANCE URF_UNREAD_FIELD 47

de.jaret.util.ui.timebars.swt.util.actions.ExpandNodeAction

Bug Category Details Line
Unread field: de.jaret.util.ui.timebars.swt.util.actions.ExpandNodeAction._viewer PERFORMANCE URF_UNREAD_FIELD 47