From: Hyunjong.park Date: Fri, 17 Oct 2014 02:44:01 +0000 (+0900) Subject: design : change the color of the graph of the thread tab, and chagne the design of... X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8764493aeddb2ef76d632bfe57aedb4b091234b7;p=sdk%2Ftools%2Fdynamic-analyzer.git design : change the color of the graph of the thread tab, and chagne the design of the combo of the thread and the OpenGL page Signed-off-by: Hyunjong.park Change-Id: Ic752675c1afca856b87d484ef97d85f1d660bf2b --- diff --git a/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ColorResources.java b/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ColorResources.java index 66cde86..b22520b 100755 --- a/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ColorResources.java +++ b/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ColorResources.java @@ -134,6 +134,18 @@ public class ColorResources { /** device and application combo specific colors end **/ + /** title tab combo color **/ + public static Color TAB_COMBO_NORMAL_START = getColor("tab_combo_normar_start"); //$NON-NLS-1$ + public static Color TAB_COMBO_NORMAL_END = getColor("tab_combo_normar_end"); //$NON-NLS-1$ + public static Color TAB_COMBO_NORMAL_STROKE = getColor("tab_combo_normar_stroke"); //$NON-NLS-1$ + public static Color TAB_COMBO_HOVER_START = getColor("tab_combo_hover_start"); //$NON-NLS-1$ + public static Color TAB_COMBO_HOVER_END = getColor("tab_combo_hover_end"); //$NON-NLS-1$ + public static Color TAB_COMBO_HOVER_STROKE = getColor("tab_combo_hover_stroke"); //$NON-NLS-1$ + public static Color TAB_COMBO_PUSH_START = getColor("tab_combo_push_start"); //$NON-NLS-1$ + public static Color TAB_COMBO_PUSH_END = getColor("tab_combo_push_end"); //$NON-NLS-1$ + public static Color TAB_COMBO_PUSH_STROKE = getColor("tab_combo_push_stroke"); //$NON-NLS-1$ + + /** title combo color **/ public static Color FRAME_RATE_COMBO_DISABLE_START = getColor("frame_rate_combo_disable_start"); //$NON-NLS-1$ public static Color FRAME_RATE_COMBO_DISABLE_END = getColor("frame_rate_combo_disable_end"); //$NON-NLS-1$ @@ -294,15 +306,15 @@ public class ColorResources { public static Color PAGE_USE_START = getColor("page_use_start"); //$NON-NLS-1$ public static Color PAGE_USE_END = getColor("page_use_end"); //$NON-NLS-1$ - /** Thread chart colors **/ - public static Color THREAD_OPEN_START_RUN = getColor("thread_open_start_run"); //$NON-NLS-1$ - public static Color THREAD_OPEN_END_RUN = getColor("thread_open_end_run"); //$NON-NLS-1$ - public static Color THREAD_OPEN_START_STOP = getColor("thread_open_start_stop"); //$NON-NLS-1$ - public static Color THREAD_OPEN_END_STOP = getColor("thread_open_end_stop"); //$NON-NLS-1$ - public static Color THREAD_CLOSED_START = getColor("thread_closed_start"); //$NON-NLS-1$ - public static Color THREAD_CLOSED_END = getColor("thread_closed_end"); //$NON-NLS-1$ - public static Color THREAD_SLEEP_START = getColor("thread_sleep_start"); //$NON-NLS-1$ - public static Color THREAD_SLEEP_END = getColor("thread_sleep_end"); //$NON-NLS-1$ +// /** Thread chart colors **/ +// public static Color THREAD_OPEN_START_RUN = getColor("thread_open_start_run"); //$NON-NLS-1$ +// public static Color THREAD_OPEN_END_RUN = getColor("thread_open_end_run"); //$NON-NLS-1$ +// public static Color THREAD_OPEN_START_STOP = getColor("thread_open_start_stop"); //$NON-NLS-1$ +// public static Color THREAD_OPEN_END_STOP = getColor("thread_open_end_stop"); //$NON-NLS-1$ +// public static Color THREAD_CLOSED_START = getColor("thread_closed_start"); //$NON-NLS-1$ +// public static Color THREAD_CLOSED_END = getColor("thread_closed_end"); //$NON-NLS-1$ +// public static Color THREAD_SLEEP_START = getColor("thread_sleep_start"); //$NON-NLS-1$ +// public static Color THREAD_SLEEP_END = getColor("thread_sleep_end"); //$NON-NLS-1$ /** File chart colors **/ public static Color FILE_API_USED = getColor("file_api_used"); //$NON-NLS-1$ @@ -481,7 +493,8 @@ public class ColorResources { // public static Color STOP_PROGRESS_BAR_OUTLINE_COLOR = getColor("stop_progress_bar_outline_color"); //$NON-NLS-1$ // thread graph - public static Color THREAD_GRAPH_CPU_LOAD_COLOR = getColor("thread_graph_cpu_load_color"); //$NON-NLS-1$ + public static Color THREAD_GRAPH_MIN_CPU_LOAD_COLOR = getColor("thread_graph_min_cpu_load_color"); //$NON-NLS-1$ + public static Color THREAD_GRAPH_MAX_CPU_LOAD_COLOR = getColor("thread_graph_max_cpu_load_color"); //$NON-NLS-1$ public static Color THREAD_GRAPH_CALLEE_COLOR = getColor("thread_graph_callee_color"); //$NON-NLS-1$ public static Color THREAD_GRAPH_LOCK_NEW_COLOR = getColor("thread_graph_lock_new_color"); //$NON-NLS-1$ public static Color THREAD_GRAPH_LOCK_WAIT_COLOR = getColor("thread_graph_lock_wait_color"); //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ImageResources.java b/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ImageResources.java index 90aa62f..082e2eb 100644 --- a/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ImageResources.java +++ b/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/resources/ImageResources.java @@ -115,6 +115,7 @@ public class ImageResources { /* combo */ public static final Image TOOLBAR_COMBO_BUTTON_NORMAL = getPngImage("dropdown_arrow_normal"); //$NON-NLS-1$ public static final Image TOOLBAR_COMBO_BUTTON_DISABLE = getPngImage("dropdown_arrow_disable"); //$NON-NLS-1$ + public static final Image TAB_COMBO_BUTTON_DOWN = getPngImage("dropbox_down"); //$NON-NLS-1$ /* range */ public static final Image RANGE_NORMAL = getPngImage("toolbar_range_nor"); //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java b/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java index c7ac0e5..ce9fe2a 100644 --- a/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java +++ b/org.tizen.dynamicanalyzer.appearance/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java @@ -135,6 +135,16 @@ public class DAThemeWhite extends DATheme { setColor("toolbar_combo_font_normal_color", new RGB(255,255,255)); //$NON-NLS-1$ setColor("toolbar_combo_font_disable_color", new RGB(119,223,238)); //$NON-NLS-1$ + /** title tab combo color **/ + setColor("tab_combo_normar_start", new RGB(251, 251, 251)); + setColor("tab_combo_normar_end", new RGB(207, 207, 207)); + setColor("tab_combo_normar_stroke", new RGB(168, 168, 168)); + setColor("tab_combo_hover_start", new RGB(251, 251, 251)); + setColor("tab_combo_hover_end", new RGB(207, 207, 207)); + setColor("tab_combo_hover_stroke", new RGB(47, 180, 200)); + setColor("tab_combo_push_start", new RGB(207, 207, 207)); + setColor("tab_combo_push_end", new RGB(251, 251, 251)); + setColor("tab_combo_push_stroke", new RGB(47, 180, 200)); /*** title combo color ***/ setColor("frame_rate_combo_normal_start", new RGB(251, 251, 251)); @@ -306,14 +316,14 @@ public class DAThemeWhite extends DATheme { setColor("page_use_end", new RGB(44, 104, 153)); //$NON-NLS-1$ /** Thread chart colors **/ - setColor("thread_open_start_run", new RGB(244, 252, 82)); //$NON-NLS-1$ - setColor("thread_open_end_run", new RGB(235, 231, 56)); //$NON-NLS-1$ - setColor("thread_open_start_stop", new RGB(168, 198, 71)); //$NON-NLS-1$ - setColor("thread_open_end_stop", new RGB(130, 152, 54)); //$NON-NLS-1$ - setColor("thread_closed_start", new RGB(168, 198, 71)); //$NON-NLS-1$ - setColor("thread_closed_end", new RGB(130, 152, 54)); //$NON-NLS-1$ - setColor("thread_sleep_start", new RGB(215, 215, 215)); //$NON-NLS-1$ - setColor("thread_sleep_end", new RGB(157, 166, 168)); //$NON-NLS-1$ +// setColor("thread_open_start_run", new RGB(244, 252, 82)); //$NON-NLS-1$ +// setColor("thread_open_end_run", new RGB(235, 231, 56)); //$NON-NLS-1$ +// setColor("thread_open_start_stop", new RGB(168, 198, 71)); //$NON-NLS-1$ +// setColor("thread_open_end_stop", new RGB(130, 152, 54)); //$NON-NLS-1$ +// setColor("thread_closed_start", new RGB(168, 198, 71)); //$NON-NLS-1$ +// setColor("thread_closed_end", new RGB(130, 152, 54)); //$NON-NLS-1$ +// setColor("thread_sleep_start", new RGB(215, 215, 215)); //$NON-NLS-1$ +// setColor("thread_sleep_end", new RGB(157, 166, 168)); //$NON-NLS-1$ /** File chart colors **/ setColor("file_api_used", new RGB(15, 153, 232)); //$NON-NLS-1$ @@ -489,12 +499,13 @@ public class DAThemeWhite extends DATheme { setColor("stop_progress_bar_outline_color", new RGB(150, 150, 150)); //$NON-NLS-1$ /*** thread graph ***/ - setColor("thread_graph_cpu_load_color", new RGB(0, 123, 169)); //$NON-NLS-1$ + setColor("thread_graph_min_cpu_load_color", new RGB(179, 236, 255)); //$NON-NLS-1$ + setColor("thread_graph_max_cpu_load_color", new RGB(0, 123, 169)); //$NON-NLS-1$ setColor("thread_graph_callee_color", new RGB(100, 21, 232)); //$NON-NLS-1$ setColor("thread_graph_lock_new_color", new RGB(129, 169, 0)); //$NON-NLS-1$ setColor("thread_graph_lock_wait_color", new RGB(96, 126, 131)); //$NON-NLS-1$ setColor("thread_graph_lock_acquire_color", new RGB(227, 123, 30)); //$NON-NLS-1$ - setColor("thread_graph_lock_release_color", new RGB(255, 255, 255)); //$NON-NLS-1$ + setColor("thread_graph_lock_release_color", new RGB(0, 148, 170)); //$NON-NLS-1$ setColor("snapshot_viewer_bg_color", new RGB(255, 255, 255)); //$NON-NLS-1$ setColor("checkbox_disabled_font_color", new RGB(135, 135, 135)); //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartRenderer.java b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartRenderer.java index bb55d06..65959e2 100644 --- a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartRenderer.java +++ b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartRenderer.java @@ -66,7 +66,7 @@ public class DAChartRenderer { private static final int AXIS_LINE_WIDTH = 4; private static final int AXIS_MARGIN = 2; - + private Rectangle oldStateBarRectangle = new Rectangle(0, 0, 0, 0); private Rectangle oldStateContinueRectangle = new Rectangle(0, 0, 0, 0); private Rectangle oldStateConnectionRectangle = new Rectangle(0, 0, 0, 0); @@ -83,8 +83,8 @@ public class DAChartRenderer { Image backImage = plot.getBackgroundImage(); if (null != backImage) { Rectangle rect = backImage.getBounds(); - gc.drawImage(backImage, rect.x, rect.y, rect.width, - rect.height, r.x, r.y, r.width, r.height); + gc.drawImage(backImage, rect.x, rect.y, rect.width, rect.height, r.x, r.y, r.width, + r.height); } } else { gc.drawImage(buffer, 0, 0); @@ -102,7 +102,7 @@ public class DAChartRenderer { } plot = chart.getPlot(); r = chart.getClientArea(); - + if (chart.isSelected()) { gc.setForeground(ColorResources.CHART_BACKGROUND_SELECTED_TOP); gc.setBackground(ColorResources.CHART_BACKGROUND_SELECTED_BOTTOM); @@ -111,7 +111,7 @@ public class DAChartRenderer { gc.setBackground(ColorResources.CHART_BACKGROUND_NORMAL_BOTTOM); } gc.fillGradientRectangle(r.x, r.y, r.width, r.height, false); - + if (seriesList == null) { return false; } @@ -119,7 +119,7 @@ public class DAChartRenderer { if (plot.getAutoHeightRange() == AutoRangeType.SEMI_AUTO || plot.getAutoHeightRange() == AutoRangeType.AUTO) { double maxY = 0; - for(DAChartSeries series : seriesList) { + for (DAChartSeries series : seriesList) { double tempY = series.getMaxY(); if (maxY < tempY) { maxY = tempY; @@ -129,7 +129,7 @@ public class DAChartRenderer { plot.setAxisEndY(maxY * 1.1); } } - + return true; } @@ -139,8 +139,7 @@ public class DAChartRenderer { for (int i = 0; i < seriesList.size(); i++) { DAChartSeries series = seriesList.get(i); if (0 == i) { - drawAxis(gc, r, plot.getVisibleStartY(), - plot.getVisibleEndY(), true); + drawAxis(gc, r, plot.getVisibleStartY(), plot.getVisibleEndY(), true); } else if (1 == i) { drawAxis(gc, r, 0, series.getEndY(), false); } else { @@ -148,14 +147,13 @@ public class DAChartRenderer { } } } else { - drawAxis(gc, r, plot.getVisibleStartY(), plot.getVisibleEndY(), - true); + drawAxis(gc, r, plot.getVisibleStartY(), plot.getVisibleEndY(), true); } } } protected void drawToGc(GC gc, DAChart chart) { - if(!preDraw(gc, chart)) { + if (!preDraw(gc, chart)) { return; } @@ -163,17 +161,17 @@ public class DAChartRenderer { oldStateBarRectangle.y = 0; oldStateBarRectangle.width = 0; oldStateBarRectangle.height = 0; - + oldStateContinueRectangle.x = 0; oldStateContinueRectangle.y = 0; oldStateContinueRectangle.width = 0; oldStateContinueRectangle.height = 0; - + oldStateConnectionRectangle.x = 0; oldStateConnectionRectangle.y = 0; oldStateConnectionRectangle.width = 0; oldStateConnectionRectangle.height = 0; - + for (int i = 0; i < seriesList.size(); i++) { DAChartSeries series = seriesList.get(i); switch (series.getStyle()) { @@ -233,17 +231,15 @@ public class DAChartRenderer { } // FIXME : current chart axis is based on byte value(less than 1000) - protected void drawAxis(GC gc, Rectangle rt, double min, double max, - boolean bPosRight) { + protected void drawAxis(GC gc, Rectangle rt, double min, double max, boolean bPosRight) { Color oldCol = gc.getForeground(); gc.setForeground(ColorResources.CHART_AXIS); Font axisFont = plot.getAxisFont(); String axisUnit; - if (true == bPosRight){ - axisUnit = plot.getAxisUnit(); - } - else{ + if (true == bPosRight) { + axisUnit = plot.getAxisUnit(); + } else { axisUnit = plot.getSecondAxisUnit(); } gc.setFont(axisFont); @@ -269,7 +265,7 @@ public class DAChartRenderer { } else if (plot.getAxisUnitType() == DAChartPlot.UnitType.MICRO_DECIMAL) { text = Formatter.convertMicroDecimalPrefix(min); } else if (plot.getAxisUnitType() == DAChartPlot.UnitType.GL_MS) { - if(min == 0) { + if (min == 0) { text = ""; } else { text = "(" + Formatter.convertDecimalPrefix(1000 / min) + "fps)"; @@ -283,7 +279,7 @@ public class DAChartRenderer { } text += min; } - + if (null != axisUnit) { text += axisUnit; } @@ -336,14 +332,14 @@ public class DAChartRenderer { } else if (plot.getAxisUnitType() == DAChartPlot.UnitType.MICRO_DECIMAL) { text = Formatter.convertMicroDecimalPrefix(max); } else if (plot.getAxisUnitType() == DAChartPlot.UnitType.GL_MS) { - if(max == 0) { + if (max == 0) { text = ""; } else { text = "(" + Formatter.convertDecimalPrefix(1000 / max) + "fps)"; } text += Math.round(max); } else if (plot.getAxisUnitType() == DAChartPlot.UnitType.GL_FPS) { - if(max == 0) { + if (max == 0) { text = ""; } else { text = "(" + Formatter.convertDecimalPrefix((1000 / max)) + "ms)"; @@ -391,22 +387,19 @@ public class DAChartRenderer { pixcelStartX = plot.getXPixcelFromX(marker.getVal()); markerStyle = DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA; - + if (marker instanceof DAChartPlotIntervalMarker) { - pixcelEndX = plot - .getXPixcelFromX(((DAChartPlotIntervalMarker) marker) - .getEndVal()); + pixcelEndX = plot.getXPixcelFromX(((DAChartPlotIntervalMarker) marker).getEndVal()); markerStyle = ((DAChartPlotIntervalMarker) marker).getMarkerStyle(); - - if(markerStyle != DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_LINE){ + + if (markerStyle != DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_LINE) { int width = pixcelEndX - pixcelStartX; - if(width <= 1){ + if (width <= 1) { width = marker.getLineWidth(); } - gc.fillRectangle(pixcelStartX, 0, width, - r.height); + gc.fillRectangle(pixcelStartX, 0, width, r.height); } - if(markerStyle != DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA){ + if (markerStyle != DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA) { gc.drawLine(pixcelStartX, r.y, pixcelStartX, r.height); gc.drawLine(pixcelEndX, r.y, pixcelEndX, r.height); } @@ -439,8 +432,8 @@ public class DAChartRenderer { int second = (int) sec; int ms = ((int) (sec * 10)) % 10; if (second > 3600) { - ret = String.format("%d:%02d:%02d.", second / 36000, - (second % 3600) / 6000, second % 6000); + ret = String.format("%d:%02d:%02d.", second / 36000, (second % 3600) / 6000, + second % 6000); } else { ret = String.format("%02d:%02d", second / 60, second % 60); } @@ -471,9 +464,8 @@ public class DAChartRenderer { return false; } - protected double getMaxYToDraw(DAChartSeries series, - int startIndex) { - if(!plot.isSeriesHeightRange()) { + protected double getMaxYToDraw(DAChartSeries series, int startIndex) { + if (!plot.isSeriesHeightRange()) { return plot.getVisibleEndY(); } @@ -501,15 +493,14 @@ public class DAChartRenderer { plot.setAxisEndY(maxY * 1.1); return maxY * 1.1; } - + protected void drawTooltip(GC gc) { if (plot instanceof DAScreenshotChartPlot) { return; } DAChartPlotTooltip tooltip = plot.getTooltip(); - if (tooltip == null || tooltip.shouldBeDrawn() == false - || tooltip.getStartVal() == -1) { + if (tooltip == null || tooltip.shouldBeDrawn() == false || tooltip.getStartVal() == -1) { return; } @@ -534,7 +525,7 @@ public class DAChartRenderer { i = (int) (seriesList.size() * tooltip.getYPosRatio()); series = seriesList.get(i); } else { - if(series.isDisableTooltip()) { + if (series.isDisableTooltip()) { tooltipTexts.add(null); tooltipTimes.add(null); tooltipColor.add(null); @@ -543,7 +534,7 @@ public class DAChartRenderer { tooltipSize++; } } - + int index = series.getPrevIndexByXvalue(realXVal); String text = ""; String time = ""; @@ -561,8 +552,7 @@ public class DAChartRenderer { && true == checkOverlapFromPrevItem(series, index)) { text += series.getSummarizeString(); } else { - text += series.getSeriesItemList().get(index) - .getTooltipText(); + text += series.getSeriesItemList().get(index).getTooltipText(); } gc.setForeground(tooltip.getLineColor()); @@ -577,13 +567,12 @@ public class DAChartRenderer { startIndex = 0; } double maxY = getMaxYToDraw(series, startIndex); - - gc.drawLine(0, plot.getYPixcelFromY(maxY, yVal, r), - r.width, plot.getYPixcelFromY(maxY, yVal, r)); + + gc.drawLine(0, plot.getYPixcelFromY(maxY, yVal, r), r.width, + plot.getYPixcelFromY(maxY, yVal, r)); } - - gc.drawLine(plot.getXPixcelFromX(xVal), 0, - plot.getXPixcelFromX(xVal), r.height); + + gc.drawLine(plot.getXPixcelFromX(xVal), 0, plot.getXPixcelFromX(xVal), r.height); gc.setLineStyle(SWT.LINE_CUSTOM); // event color @@ -596,7 +585,7 @@ public class DAChartRenderer { tooltipTexts.add(text); tooltipTimes.add(time); tooltipColor.add(color); - + int timeMargin = DAChartPlotTooltip.TOOLTIP_TIME_MARGIN; if (isMultiColumn) { timeMargin = 10; @@ -610,29 +599,28 @@ public class DAChartRenderer { break; } } - + /* * Drawing Tooltip Box */ - int preTextWidthMargin = DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH + (DAChartPlotTooltip.TOOLTIP_MARGIN * 2); - int startX = getTooltipStartX(realXVal, (preTextWidthMargin - + textWidthMax) * (tooltipSize / seriesCountPerColumn), DAChartPlotTooltip.TOOLTIP_MARGIN); - + int preTextWidthMargin = DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH + + (DAChartPlotTooltip.TOOLTIP_MARGIN * 2); + int startX = getTooltipStartX(realXVal, (preTextWidthMargin + textWidthMax) + * (tooltipSize / seriesCountPerColumn), DAChartPlotTooltip.TOOLTIP_MARGIN); + int totalHeight; if (plot instanceof DAUIEventChartPlot) { - totalHeight = DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT + DAChartPlotTooltip.TOOLTIP_MARGIN - + DAChartPlotTooltip.TOOLTIP_MARGIN; + totalHeight = DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT + + DAChartPlotTooltip.TOOLTIP_MARGIN + DAChartPlotTooltip.TOOLTIP_MARGIN; } else { totalHeight = seriesCountPerColumn * DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT - + DAChartPlotTooltip.TOOLTIP_MARGIN - + DAChartPlotTooltip.TOOLTIP_BOTTOM_MARGIN + + DAChartPlotTooltip.TOOLTIP_MARGIN + DAChartPlotTooltip.TOOLTIP_BOTTOM_MARGIN + (seriesCountPerColumn - 1) * DAChartPlotTooltip.TOOLTIP_TEXT_MARGIN; } int startY; if (plot instanceof DAUIEventChartPlot) { tooltipSize = seriesList.size(); - startY = (int) (r.height - * (int) (tooltip.getYPosRatio() * tooltipSize) / tooltipSize); + startY = (int) (r.height * (int) (tooltip.getYPosRatio() * tooltipSize) / tooltipSize); if (r.height - startY - totalHeight < 0) { startY = r.height - totalHeight - 1; if (startY < 0) { @@ -643,8 +631,8 @@ public class DAChartRenderer { startY = (r.y + r.height / 2) - (totalHeight / 2); } - int tooltipBoxWidth = (preTextWidthMargin - + textWidthMax) * (tooltipSize / seriesCountPerColumn) + DAChartPlotTooltip.TOOLTIP_MARGIN; + int tooltipBoxWidth = (preTextWidthMargin + textWidthMax) + * (tooltipSize / seriesCountPerColumn) + DAChartPlotTooltip.TOOLTIP_MARGIN; gc.setAlpha(150); gc.setBackground(tooltip.getBackgroundColor()); gc.setForeground(tooltip.getForegroundColor()); @@ -662,30 +650,31 @@ public class DAChartRenderer { for (int i = 0; i < seriesList.size(); i++) { DAChartSeries series; if (plot instanceof DAUIEventChartPlot) { - series = seriesList.get((int) (seriesList.size() * tooltip - .getYPosRatio())); + series = seriesList.get((int) (seriesList.size() * tooltip.getYPosRatio())); tooltipSize = 0; } else { series = seriesList.get(i); - if(series.isDisableTooltip()) { + if (series.isDisableTooltip()) { continue; } else { tooltipSize++; } } - int y = startY + (DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT * (tooltipSize % seriesCountPerColumn)) - + DAChartPlotTooltip.TOOLTIP_MARGIN + (i % seriesCountPerColumn) * DAChartPlotTooltip.TOOLTIP_TEXT_MARGIN; + int y = startY + + (DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT * (tooltipSize % seriesCountPerColumn)) + + DAChartPlotTooltip.TOOLTIP_MARGIN + (i % seriesCountPerColumn) + * DAChartPlotTooltip.TOOLTIP_TEXT_MARGIN; Color col = tooltipColor.get(i); if (col == null) { gc.setBackground(series.getColor()); } else { gc.setBackground(col); } - - int startColumnX = startX + (i/seriesCountPerColumn)*(preTextWidthMargin + textWidthMax); - gc.fillRectangle(startColumnX - + DAChartPlotTooltip.TOOLTIP_MARGIN, y + + int startColumnX = startX + (i / seriesCountPerColumn) + * (preTextWidthMargin + textWidthMax); + gc.fillRectangle(startColumnX + DAChartPlotTooltip.TOOLTIP_MARGIN, y + DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT / 2 - DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH / 2, DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH, @@ -693,24 +682,19 @@ public class DAChartRenderer { gc.setBackground(tooltip.getBackgroundColor()); gc.setForeground(tooltip.getTextColor()); - gc.drawText(tooltipTexts.get(i), startColumnX - + DAChartPlotTooltip.TOOLTIP_MARGIN + gc.drawText(tooltipTexts.get(i), startColumnX + DAChartPlotTooltip.TOOLTIP_MARGIN + DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH + DAChartPlotTooltip.TOOLTIP_MARGIN, y, SWT.DRAW_DELIMITER | SWT.DRAW_TRANSPARENT); - + gc.setForeground(tooltip.getTimeColor()); timeStr = tooltipTimes.get(i); - gc.drawText( - tooltipTimes.get(i), - startX + DAChartPlotTooltip.TOOLTIP_MARGIN - + DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH - + DAChartPlotTooltip.TOOLTIP_MARGIN + textWidthMax - - DAChartPlotTooltip.TOOLTIP_MARGIN - - gc.textExtent(timeStr).x - + (i/seriesCountPerColumn)*(preTextWidthMargin + textWidthMax) - , y, SWT.DRAW_DELIMITER - | SWT.DRAW_TRANSPARENT); + gc.drawText(tooltipTimes.get(i), startX + DAChartPlotTooltip.TOOLTIP_MARGIN + + DAChartPlotTooltip.TOOLTIP_SERIES_RECT_LENGTH + + DAChartPlotTooltip.TOOLTIP_MARGIN + textWidthMax + - DAChartPlotTooltip.TOOLTIP_MARGIN - gc.textExtent(timeStr).x + + (i / seriesCountPerColumn) * (preTextWidthMargin + textWidthMax), y, + SWT.DRAW_DELIMITER | SWT.DRAW_TRANSPARENT); if (plot instanceof DAUIEventChartPlot) { break; } @@ -718,12 +702,11 @@ public class DAChartRenderer { } private int findColumnSeriesCount(int tooltipSize, int maxSize) { - int maxSeriesCount = (maxSize - DAChartPlotTooltip.TOOLTIP_MARGIN + - DAChartPlotTooltip.TOOLTIP_BOTTOM_MARGIN) / - (DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT + DAChartPlotTooltip.TOOLTIP_TEXT_MARGIN); + int maxSeriesCount = (maxSize - DAChartPlotTooltip.TOOLTIP_MARGIN + DAChartPlotTooltip.TOOLTIP_BOTTOM_MARGIN) + / (DAChartPlotTooltip.TOOLTIP_TEXT_HEIGHT + DAChartPlotTooltip.TOOLTIP_TEXT_MARGIN); return (tooltipSize > maxSeriesCount) ? maxSeriesCount : tooltipSize; } - + private void drawBarSeries(GC gc, DAChartSeries series) { List seriesItems = series.getSeriesItemList(); if (null == seriesItems) { @@ -739,14 +722,14 @@ public class DAChartRenderer { gc.setBackground(color); gc.setAlpha((int) (255 * 0.8)); gc.setAntialias(SWT.ON); - + int barAlign = series.getBarAlign(); int index = series.getPrevIndexByXvalue(plot.getVisibleStartX()); if (index < 0) { index = 0; } - + double maxY = getMaxYToDraw(series, index); for (int i = index; i < seriesItemSize; i++) { DAChartSeriesItem seriesItem = seriesItems.get(i); @@ -763,39 +746,38 @@ public class DAChartRenderer { int pixcelStartX = plot.getXPixcelFromX(seriesItem.getX(), r); int pixcelStartY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); - int barWidth = plot.getXPixcelFromX(currentX + barWidthTime, r) - - pixcelStartX; + int barWidth = plot.getXPixcelFromX(currentX + barWidthTime, r) - pixcelStartX; if (barWidth < 1) { barWidth = 1; } - - if(barAlign == DAChartSeries.SERIES_BAR_ALIGN_CENTER){ - pixcelStartX -= barWidth/2; - } else if(barAlign == DAChartSeries.SERIES_BAR_ALIGN_RIGHT){ + + if (barAlign == DAChartSeries.SERIES_BAR_ALIGN_CENTER) { + pixcelStartX -= barWidth / 2; + } else if (barAlign == DAChartSeries.SERIES_BAR_ALIGN_RIGHT) { pixcelStartX -= barWidth; } color = seriesItem.getColor(); if (null != color) { gc.setBackground(color); - gc.fillRectangle(pixcelStartX, pixcelStartY, barWidth, r.y - + r.height - pixcelStartY); + gc.fillRectangle(pixcelStartX, pixcelStartY, barWidth, r.y + r.height + - pixcelStartY); gc.setBackground(series.getColor()); } else { DAChartPlot.BoundType boundType = plot.getBoundType(); - if(boundType != null) { + if (boundType != null) { double boundValue = plot.getBoundValue(); - if(boundType == DAChartPlot.BoundType.UNDER) { + if (boundType == DAChartPlot.BoundType.UNDER) { gc.setBackground(ColorResources.DARK_YELLOW); } else { - if(boundValue != -1 && seriesItem.getY() > boundValue) { + if (boundValue != -1 && seriesItem.getY() > boundValue) { gc.setBackground(ColorResources.DARK_YELLOW); } } } - gc.fillRectangle(pixcelStartX, pixcelStartY, barWidth, r.y - + r.height - pixcelStartY); + gc.fillRectangle(pixcelStartX, pixcelStartY, barWidth, r.y + r.height + - pixcelStartY); gc.setBackground(series.getColor()); gc.setAlpha(250); } @@ -805,31 +787,30 @@ public class DAChartRenderer { } } - private void drawMultiCheckBarSeries(GC gc, DAChartSeries series, - int seriesIndex, int seriesSize) { + private void drawMultiCheckBarSeries(GC gc, DAChartSeries series, int seriesIndex, + int seriesSize) { List seriesItems = series.getSeriesItemList(); if (null == seriesItems) { return; } - Rectangle rect = new Rectangle(r.x, r.y - + (r.height / seriesSize * seriesIndex), r.width, r.height - / seriesSize); + Rectangle rect = new Rectangle(r.x, r.y + (r.height / seriesSize * seriesIndex), r.width, + r.height / seriesSize); if (r.height == DAChartBoard.DEFAULT_ITEM_HEIGHT - 1) { gc.setForeground(ColorResources.SERIES_NAME_ANNOTATION); Font oriFont = gc.getFont(); Font nameAnnotationFont = series.getFont(); gc.setFont(nameAnnotationFont); - gc.drawText(series.getName(), rect.x + 3, rect.y + rect.height / 2 - - gc.stringExtent(series.getName()).y / 2 + seriesIndex, - true); + gc.drawText(series.getName(), rect.x + 3, + rect.y + rect.height / 2 - gc.stringExtent(series.getName()).y / 2 + + seriesIndex, true); gc.setFont(oriFont); } if (seriesIndex != 0) { gc.setForeground(ColorResources.CHART_SEPERATE_LINE); gc.drawLine(rect.x, rect.y, rect.width, rect.y); } - + int seriesItemSize = seriesItems.size(); if (seriesItemSize < 1) { return; @@ -844,10 +825,8 @@ public class DAChartRenderer { index = 0; } - int highlightedIndexX = ((DAUIEventChartPlot) plot) - .getHighlightedEventIndexX(); - int highlightedIndexY = ((DAUIEventChartPlot) plot) - .getHighlightedEventIndexY(); + int highlightedIndexX = ((DAUIEventChartPlot) plot).getHighlightedEventIndexX(); + int highlightedIndexY = ((DAUIEventChartPlot) plot).getHighlightedEventIndexY(); for (int i = index; i < seriesItemSize; i++) { seriesItem = seriesItems.get(i); @@ -862,12 +841,12 @@ public class DAChartRenderer { color = seriesItem.getColor(); if (null != color) { gc.setBackground(color); - gc.fillRectangle(pixcelStartX, pixcelStartY, - MULTI_CHECK_BAR_WIDTH, rect.height - MARGIN); + gc.fillRectangle(pixcelStartX, pixcelStartY, MULTI_CHECK_BAR_WIDTH, rect.height + - MARGIN); gc.setBackground(series.getColor()); } else { - gc.fillRectangle(pixcelStartX, pixcelStartY, - MULTI_CHECK_BAR_WIDTH, rect.height - MARGIN); + gc.fillRectangle(pixcelStartX, pixcelStartY, MULTI_CHECK_BAR_WIDTH, rect.height + - MARGIN); } if (currentX > plot.getVisibleEndX()) { break; @@ -890,7 +869,7 @@ public class DAChartRenderer { index = 0; } double maxY = getMaxYToDraw(series, index); - + DAChartSeriesItem seriesItem = seriesItems.get(0); int oldPixcelX = plot.getXPixcelFromX(seriesItem.getX(), r); int oldPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); @@ -918,7 +897,7 @@ public class DAChartRenderer { int newPixcelX = plot.getXPixcelFromX(currentX, r); int newPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); - + /* * collect pixcels to draw and then draw them at once. */ @@ -926,21 +905,21 @@ public class DAChartRenderer { points.add(newPixcelX); points.add(newPixcelY); for (int i = index; i < seriesItemSize; i++) { - seriesItem = seriesItems.get(i); + seriesItem = seriesItems.get(i); currentX = seriesItem.getX(); newPixcelX = plot.getXPixcelFromX(currentX, r); newPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); - + points.add(newPixcelX); points.add(newPixcelY); - + if (currentX > plot.getVisibleEndX()) { break; } } gc.drawPolyline(convertArray(points)); - + // // draw endVal if (true == bEndVal) { int endX = plot.getXPixcelFromX(plot.getValidEndX(), r); @@ -966,7 +945,7 @@ public class DAChartRenderer { index = 0; } double maxY = getMaxYToDraw(series, index); - + DAChartSeriesItem seriesItem = seriesItems.get(0); int oldPixcelX = plot.getXPixcelFromX(seriesItem.getX(), r); int oldPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); @@ -996,7 +975,7 @@ public class DAChartRenderer { int newPixcelX = plot.getXPixcelFromX(currentX, r); int newPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); - + /* * collect pixcels to draw and then draw them at once. */ @@ -1006,17 +985,17 @@ public class DAChartRenderer { points.add(newPixcelX); points.add(newPixcelY); for (int i = index; i < seriesItemSize; i++) { - seriesItem = seriesItems.get(i); + seriesItem = seriesItems.get(i); currentX = seriesItem.getX(); newPixcelX = plot.getXPixcelFromX(currentX, r); newPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); points.add(newPixcelX); points.add(newPixcelY); - + if (i == seriesItemSize - 1 || currentX > plot.getVisibleEndX()) { - points.add(newPixcelX); - points.add(baseY); + points.add(newPixcelX); + points.add(baseY); } if (currentX > plot.getVisibleEndX()) { break; @@ -1027,33 +1006,33 @@ public class DAChartRenderer { gc.fillPolygon(pointArray); gc.setAlpha((int) (255 * 0.2)); gc.drawPolygon(pointArray); - + // // draw endVal if (true == bEndVal) { int endX = plot.getXPixcelFromX(plot.getValidEndX(), r); if (endX > newPixcelX) { gc.setAlpha((int) (255 * 0.4)); - int[] polygon = { newPixcelX, baseY, newPixcelX, newPixcelY, - endX, newPixcelY, endX, baseY }; + int[] polygon = { newPixcelX, baseY, newPixcelX, newPixcelY, endX, newPixcelY, + endX, baseY }; gc.fillPolygon(polygon); } } gc.setAlpha(255); } - + /* - * This method is one of Chart renderer. Real chart using this method is File Analysis chart. - * This renderer draws Rectangle and bar in multi line and need specific seriesItem type. - * Type is possible SERIES_AREA_START, SERIES_AREA_END, SERIES_AREA_BAR. + * This method is one of Chart renderer. Real chart using this method is + * File Analysis chart. This renderer draws Rectangle and bar in multi line + * and need specific seriesItem type. Type is possible SERIES_AREA_START, + * SERIES_AREA_END, SERIES_AREA_BAR. */ - private void drawStateAreaSeries(GC gc, DAChartSeries series, int seriesIndex, - int seriesSize) { + private void drawStateAreaSeries(GC gc, DAChartSeries series, int seriesIndex, int seriesSize) { List seriesItems = series.getSeriesItemList(); if (null == seriesItems) { return; } - + int seriesItemSize = seriesItems.size(); if (seriesItemSize < 1) { return; @@ -1062,18 +1041,19 @@ public class DAChartRenderer { if (index < 0) { index = 0; } - - final int MARGIN_PERCENT = 20; // It's mean 20% + + final int MARGIN_PERCENT = 20; // It's mean 20% final int STATE_AREA_BAR_WIDTH = 1; - final int DIAGONAL_DIVIDE = 16; // divided in 16 pieces for diagonal box size. + final int DIAGONAL_DIVIDE = 16; // divided in 16 pieces for diagonal box + // size. final Color DIAGONAL_BOX_COLOR = ColorResources.WHITE; /* * Formula to divide in equal series heights. */ - int margin = (int)((r.height * (MARGIN_PERCENT / 100.0)) / (seriesSize + 1)); + int margin = (int) ((r.height * (MARGIN_PERCENT / 100.0)) / (seriesSize + 1)); int areaHeight = (r.height - margin * (seriesSize + 1)) / seriesSize; int pixcelStartY = (margin * (seriesIndex + 1)) + (areaHeight * seriesIndex); - + List barSeriesItems = new ArrayList(); /* * 1. Draw Start/End Status Area. @@ -1081,7 +1061,7 @@ public class DAChartRenderer { for (int i = 0; i < seriesItemSize; i++) { DAChartSeriesItem seriesItem = seriesItems.get(i); DAChartSeriesItem endSeriesItem = null; - + int type = (int) seriesItem.getY(); if (DAChartSeriesItem.SERIES_AREA_START == type) { int startCount = 1; @@ -1105,25 +1085,28 @@ public class DAChartRenderer { Color backGroundcolor = seriesItem.getColor(); gc.setForeground(foreGroundColor); gc.setBackground(backGroundcolor); - + int pixcelStartX = plot.getXPixcelFromX(seriesItem.getX(), r); int pixcelWidth; if (endSeriesItem != null) { pixcelWidth = plot.getXPixcelFromX(endSeriesItem.getX(), r) - pixcelStartX; } else { /* - * endSeriesItem is null when end series is not exist. this case, draw it as much as getValidEndX. + * endSeriesItem is null when end series is not exist. this + * case, draw it as much as getValidEndX. */ pixcelWidth = plot.getXPixcelFromX(plot.getValidEndX(), r) - pixcelStartX; } - if (pixcelWidth == 0) { // If diffence is less than 1 second. draw 1 pixcel force. + if (pixcelWidth == 0) { // If diffence is less than 1 second. + // draw 1 pixcel force. pixcelWidth = 1; } gc.fillRectangle(pixcelStartX, pixcelStartY, pixcelWidth, areaHeight); - + /* - * If it's needed, draw diagonal line. diagonal line is composed of square boxes. - * Direction of diagonal line is right top to left down like "/". + * If it's needed, draw diagonal line. diagonal line is composed + * of square boxes. Direction of diagonal line is right top to + * left down like "/". */ if (seriesItem.getDiagonal()) { int diagonalBoxSize = areaHeight / DIAGONAL_DIVIDE; @@ -1131,10 +1114,11 @@ public class DAChartRenderer { gc.setBackground(DIAGONAL_BOX_COLOR); for (int j = 0; j < 16; j++) { int boxY = pixcelStartY + (diagonalBoxSize * j); - // Formula to draw diagonal line like "/" + // Formula to draw diagonal line like "/" for (int k = 3 - (j % 4) - (j / 4); k < pixcelWidth; k = k + 3) { int boxX = diagonalBoxSize * k + pixcelStartX; - if (pixcelStartX <= boxX && boxX <= pixcelWidth + pixcelStartX - diagonalBoxSize) { + if (pixcelStartX <= boxX + && boxX <= pixcelWidth + pixcelStartX - diagonalBoxSize) { gc.fillRectangle(boxX, boxY, diagonalBoxSize, diagonalBoxSize); } } @@ -1144,7 +1128,7 @@ public class DAChartRenderer { barSeriesItems.add(seriesItem); } } - + /* * 2. Draw Bar series */ @@ -1158,7 +1142,7 @@ public class DAChartRenderer { gc.fillRectangle(pixcelStartX, pixcelStartY, STATE_AREA_BAR_WIDTH, areaHeight); } } - + private void drawStepSeries(GC gc, DAChartSeries series, boolean bEndVal) { List seriesItems = series.getSeriesItemList(); if (seriesItems == null) { @@ -1174,7 +1158,7 @@ public class DAChartRenderer { index = 0; } double maxY = getMaxYToDraw(series, index); - + DAChartSeriesItem seriesItem = seriesItems.get(0); int oldPixcelX = plot.getXPixcelFromX(seriesItem.getX(), r); int oldPixcelY = plot.getYPixcelFromY(maxY, seriesItem.getY(), r); @@ -1243,10 +1227,8 @@ public class DAChartRenderer { index = 0; } - int highlightedImageIndex = ((DAScreenshotChartPlot) plot) - .getHighlightedImageIndex(); - int selectedImageIndex = ((DAScreenshotChartPlot) plot) - .getSelectedImageIndex(); + int highlightedImageIndex = ((DAScreenshotChartPlot) plot).getHighlightedImageIndex(); + int selectedImageIndex = ((DAScreenshotChartPlot) plot).getSelectedImageIndex(); for (int i = index; i < seriesItemSize; i++) { DAChartSeriesItem seriesItem = seriesItems.get(i); if (seriesItem != null) { @@ -1255,9 +1237,8 @@ public class DAChartRenderer { Image image = seriesItem.getImage(); int yPosition = (int) seriesItem.getY(); if (r.height != DAChartBoard.DEFAULT_ITEM_HEIGHT - 1) { - image = new Image(Display.getDefault(), image.getImageData() - .scaledTo(image.getBounds().width / 2, - image.getBounds().height / 2)); + image = new Image(Display.getDefault(), image.getImageData().scaledTo( + image.getBounds().width / 2, image.getBounds().height / 2)); yPosition = SCREENSHOT_Y_POSITION_MINI; } @@ -1265,8 +1246,8 @@ public class DAChartRenderer { gc.drawImage(image, pixcelStartX, yPosition); gc.setLineWidth(SCREENSHOT_BORDER_LINE_WIDTH); gc.setForeground(ColorResources.SCREENSHOT_CHART_BORDER_LINE); - gc.drawRectangle(pixcelStartX, yPosition, - image.getBounds().width, image.getBounds().height); + gc.drawRectangle(pixcelStartX, yPosition, image.getBounds().width, + image.getBounds().height); } if (currentX > plot.getVisibleEndX()) { @@ -1284,9 +1265,8 @@ public class DAChartRenderer { int yPosition = (int) seriesItem.getY(); int highlightedYPosition = SCREENSHOT_SELECTED_Y_POSITION; if (r.height != DAChartBoard.DEFAULT_ITEM_HEIGHT - 1) { - selectedImage = new Image(Display.getDefault(), selectedImage - .getImageData().scaledTo( - selectedImage.getBounds().width / 2, + selectedImage = new Image(Display.getDefault(), selectedImage.getImageData() + .scaledTo(selectedImage.getBounds().width / 2, selectedImage.getBounds().height / 2)); yPosition = SCREENSHOT_Y_POSITION_MINI; highlightedYPosition = SCREENSHOT_SELECTED_Y_POSITION_MINI; @@ -1296,28 +1276,25 @@ public class DAChartRenderer { int screenshotHeight = selectedImage.getBounds().height; if (selectedImageIndex == highlightedImageIndex) { - gc.drawRectangle(pixcelStartX - 1, highlightedYPosition - 1, - screenshotWidth + 3, screenshotHeight + 3); + gc.drawRectangle(pixcelStartX - 1, highlightedYPosition - 1, screenshotWidth + 3, + screenshotHeight + 3); } else { gc.drawImage(selectedImage, pixcelStartX, yPosition); - gc.drawRectangle(pixcelStartX - 1, r.y + yPosition - 1, - screenshotWidth + 3, screenshotHeight + 3); + gc.drawRectangle(pixcelStartX - 1, r.y + yPosition - 1, screenshotWidth + 3, + screenshotHeight + 3); gc.setLineWidth(SCREENSHOT_BORDER_LINE_WIDTH); gc.setForeground(ColorResources.SCREENSHOT_CHART_BORDER_LINE); - gc.drawRectangle(pixcelStartX, yPosition, screenshotWidth, - screenshotHeight); + gc.drawRectangle(pixcelStartX, yPosition, screenshotWidth, screenshotHeight); } } if (highlightedImageIndex >= 0) { - DAChartSeriesItem seriesItem = seriesItems - .get(highlightedImageIndex); + DAChartSeriesItem seriesItem = seriesItems.get(highlightedImageIndex); Image highlightedImage = seriesItem.getImage(); int highlightedYPosition = SCREENSHOT_SELECTED_Y_POSITION; if (r.height != DAChartBoard.DEFAULT_ITEM_HEIGHT - 1) { - highlightedImage = new Image(Display.getDefault(), - highlightedImage.getImageData().scaledTo( - highlightedImage.getBounds().width / 2, + highlightedImage = new Image(Display.getDefault(), highlightedImage.getImageData() + .scaledTo(highlightedImage.getBounds().width / 2, highlightedImage.getBounds().height / 2)); highlightedYPosition = SCREENSHOT_SELECTED_Y_POSITION_MINI; } @@ -1329,8 +1306,7 @@ public class DAChartRenderer { gc.drawImage(highlightedImage, pixcelStartX, highlightedYPosition); gc.setLineWidth(SCREENSHOT_BORDER_LINE_WIDTH); gc.setForeground(ColorResources.SCREENSHOT_CHART_BORDER_LINE); - gc.drawRectangle(pixcelStartX, highlightedYPosition, - screenshotWidth, screenshotHeight); + gc.drawRectangle(pixcelStartX, highlightedYPosition, screenshotWidth, screenshotHeight); } } @@ -1368,12 +1344,10 @@ public class DAChartRenderer { if (null != itemColor) { gc.setBackground(itemColor); - gc.fillRectangle(pixcelStartX, r.y + barHeight, EVENT_WIDTH, - barHeight); + gc.fillRectangle(pixcelStartX, r.y + barHeight, EVENT_WIDTH, barHeight); gc.setBackground(color); } else { - gc.fillRectangle(pixcelStartX, r.y + barHeight, EVENT_WIDTH, - barHeight); + gc.fillRectangle(pixcelStartX, r.y + barHeight, EVENT_WIDTH, barHeight); } if (currentX > plot.getVisibleEndX()) { break; @@ -1420,12 +1394,10 @@ public class DAChartRenderer { if (null != itemColor) { gc.setBackground(itemColor); - gc.fillRectangle(pixcelStartX, - (r.y + r.height) - barHeight * 2, width, barHeight); + gc.fillRectangle(pixcelStartX, (r.y + r.height) - barHeight * 2, width, barHeight); gc.setBackground(color); } else { - gc.fillRectangle(pixcelStartX, - (r.y + r.height) - barHeight * 2, width, barHeight); + gc.fillRectangle(pixcelStartX, (r.y + r.height) - barHeight * 2, width, barHeight); } if (currentStartX > plot.getVisibleEndX()) { break; @@ -1446,7 +1418,7 @@ public class DAChartRenderer { } DAChartSeriesItem seriesItem; - Color color = series.getColor(); + gc.setBackground(ColorResources.WHITE); gc.setAntialias(SWT.ON); @@ -1467,11 +1439,10 @@ public class DAChartRenderer { } int heightMargin = (int) ((r.y + r.height) * LOAD_HEIGHT_MARGIN_RATIO); int backStartX = plot.getXPixcelFromX(seriesItems.get(index).getX(), r); - int backWidth = plot.getXPixcelFromX(seriesItems.get(lastIndex).getX(), - r) - backStartX; - gc.fillRectangle(backStartX, r.y + heightMargin, backWidth, r.y - + r.height - heightMargin * 2); - gc.setBackground(color); + int backWidth = plot.getXPixcelFromX(seriesItems.get(lastIndex).getX(), r) - backStartX; + gc.fillRectangle(backStartX, r.y + heightMargin, backWidth, r.y + r.height - heightMargin + * 2); + // gc.setBackground(color); for (int i = index; i < seriesItemSize; i++) { seriesItem = seriesItems.get(i); @@ -1485,26 +1456,16 @@ public class DAChartRenderer { int pixcelStartX = plot.getXPixcelFromX(seriesItem.getX(), r); - int barWidth = plot.getXPixcelFromX(currentX + barWidthTime, r) - - pixcelStartX; + int barWidth = plot.getXPixcelFromX(currentX + barWidthTime, r) - pixcelStartX; if (barWidth < 1) { barWidth = EVENT_WIDTH; } - color = seriesItem.getColor(); - double load = seriesItem.getY(); - gc.setAlpha((int) load); - - if (null != color) { - gc.setBackground(color); - gc.fillRectangle(pixcelStartX, r.y + heightMargin, barWidth, - r.y + r.height - heightMargin * 2); - gc.setBackground(series.getColor()); - } else { - gc.fillRectangle(pixcelStartX, r.y + heightMargin, barWidth, - r.y + r.height - heightMargin * 2); - } + gc.setBackground(getColorOfLoad(series, (float) seriesItem.getY() / 100)); + gc.fillRectangle(pixcelStartX, r.y + heightMargin, barWidth, r.y + r.height + - heightMargin * 2); + gc.setBackground(series.getColor()); if (currentX > plot.getVisibleEndX()) { break; } @@ -1512,6 +1473,16 @@ public class DAChartRenderer { gc.setAlpha(255); } + private Color getColorOfLoad(DAChartSeries series, float bAmount) { + Color colorA = series.getColor(); + Color colorB = series.getSecondColor(); + float aAmount = (float) (1.0 - bAmount); + float r = colorA.getRed() * aAmount + colorB.getRed() * bAmount; + float g = colorA.getGreen() * aAmount + colorB.getGreen() * bAmount; + float b = colorA.getBlue() * aAmount + colorB.getBlue() * bAmount; + return new Color(Display.getCurrent(), (int) r, (int) g, (int) b); + } + private void drawArrowSeries(GC gc, DAChartSeries series) { List seriesItems = series.getSeriesItemList(); if (null == seriesItems) { @@ -1553,8 +1524,7 @@ public class DAChartRenderer { gc.fillRectangle(pixcelStartX, barPosY, EVENT_WIDTH, barHeight); if (DAChartSeriesItem.SERIES_ARROW_NONE != arrowPosition) { - String number = String - .valueOf((int) (seriesItem.getBarWidth())); + String number = String.valueOf((int) (seriesItem.getBarWidth())); Rectangle arrowRect = imageRect; // arrowRect.y = (r.y + r.height) / 2 - imageRect.height / 2; arrowRect.y = barPosY + barHeight / 2 - imageRect.height / 2; @@ -1565,8 +1535,7 @@ public class DAChartRenderer { } gc.drawImage(arw, arrowRect.x, arrowRect.y); Point p = gc.textExtent(number, SWT.DRAW_MNEMONIC); - gc.drawText(number, (arrowRect.x + arrowRect.width / 2) - p.x - / 2 - ARROW_MARGIN, + gc.drawText(number, (arrowRect.x + arrowRect.width / 2) - p.x / 2 - ARROW_MARGIN, (arrowRect.y + arrowRect.height / 2) - p.y / 2, true); } @@ -1620,15 +1589,13 @@ public class DAChartRenderer { if (barWidth == -1) { barWidth = EVENT_WIDTH; } - - if (!equals(oldStateBarRectangle, pixcelStartX, r.y - + heightMargin, barWidth, r.y + r.height / 2 - - heightMargin)) { + + if (!equals(oldStateBarRectangle, pixcelStartX, r.y + heightMargin, barWidth, r.y + + r.height / 2 - heightMargin)) { oldStateBarRectangle.x = pixcelStartX; oldStateBarRectangle.y = r.y + heightMargin; oldStateBarRectangle.width = barWidth; - oldStateBarRectangle.height = r.y + r.height / 2 - - heightMargin; + oldStateBarRectangle.height = r.y + r.height / 2 - heightMargin; gc.fillRectangle(oldStateBarRectangle); } @@ -1636,12 +1603,10 @@ public class DAChartRenderer { break; case DAChartSeriesItem.SERIES_STATE_CONTINUE: if (i + 1 == seriesItemSize) { - barWidth = plot.getXPixcelFromX(plot.getValidEndX(), r) - - pixcelStartX; + barWidth = plot.getXPixcelFromX(plot.getValidEndX(), r) - pixcelStartX; } else { - barWidth = plot.getXPixcelFromX(seriesItems.get(i + 1) - .getX(), r) + barWidth = plot.getXPixcelFromX(seriesItems.get(i + 1).getX(), r) - pixcelStartX; } if (barWidth <= 0) { @@ -1658,19 +1623,17 @@ public class DAChartRenderer { barWidth = 0; } - if (!equals(oldStateContinueRectangle, pixcelStartX, r.y - + heightMargin, barWidth, r.y + r.height - heightMargin - * 2)) { + if (!equals(oldStateContinueRectangle, pixcelStartX, r.y + heightMargin, barWidth, + r.y + r.height - heightMargin * 2)) { oldStateContinueRectangle.x = pixcelStartX; oldStateContinueRectangle.y = r.y + heightMargin; oldStateContinueRectangle.width = barWidth; - oldStateContinueRectangle.height = r.y + r.height - - heightMargin * 2; - + oldStateContinueRectangle.height = r.y + r.height - heightMargin * 2; + if (null != foreColor) { gc.setForeground(foreColor); - gc.fillGradientRectangle(pixcelStartX, r.y + heightMargin, - barWidth, r.y + r.height - heightMargin * 2, true); + gc.fillGradientRectangle(pixcelStartX, r.y + heightMargin, barWidth, r.y + + r.height - heightMargin * 2, true); } else { gc.fillRectangle(oldStateContinueRectangle); } @@ -1680,8 +1643,7 @@ public class DAChartRenderer { case DAChartSeriesItem.SERIES_STATE_CONNECTION: if (i + 1 < seriesItemSize) { - barWidth = plot.getXPixcelFromX(seriesItems.get(i + 1) - .getX(), r) + barWidth = plot.getXPixcelFromX(seriesItems.get(i + 1).getX(), r) - pixcelStartX; } else { barWidth = 1; @@ -1696,20 +1658,17 @@ public class DAChartRenderer { barWidth = 0; } - if (!equals(oldStateConnectionRectangle, pixcelStartX, r.y - + heightMargin, barWidth, r.y + r.height - heightMargin - * 2)) { + if (!equals(oldStateConnectionRectangle, pixcelStartX, r.y + heightMargin, + barWidth, r.y + r.height - heightMargin * 2)) { oldStateConnectionRectangle.x = pixcelStartX; oldStateConnectionRectangle.y = r.y + heightMargin; oldStateConnectionRectangle.width = barWidth; - oldStateConnectionRectangle.height = r.y + r.height - - heightMargin * 2; + oldStateConnectionRectangle.height = r.y + r.height - heightMargin * 2; if (null != foreColor) { gc.setForeground(foreColor); - gc.fillGradientRectangle(pixcelStartX, r.y - + heightMargin, barWidth, r.y + r.height - - heightMargin * 2, true); + gc.fillGradientRectangle(pixcelStartX, r.y + heightMargin, barWidth, r.y + + r.height - heightMargin * 2, true); } else { gc.fillRectangle(oldStateConnectionRectangle); } @@ -1729,20 +1688,19 @@ public class DAChartRenderer { } } } - + private boolean equals(Rectangle rect, int x, int y, int width, int height) { - if (rect.x != x || rect.y != y || rect.width != width - || rect.height != height) + if (rect.x != x || rect.y != y || rect.width != width || rect.height != height) return false; return true; } - + private int[] convertArray(List list) { - int[] array = new int[list.size()]; - for (int i = 0; i < list.size(); i++) { - array[i] = list.get(i).intValue(); - } - return array; + int[] array = new int[list.size()]; + for (int i = 0; i < list.size(); i++) { + array[i] = list.get(i).intValue(); + } + return array; } } diff --git a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartSeries.java b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartSeries.java index 0f8887a..58c627d 100644 --- a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartSeries.java +++ b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chart/DAChartSeries.java @@ -62,6 +62,7 @@ public class DAChartSeries { private int style = SERIES_STYLE_NONE; private List seriesItems = new ArrayList(); private Color color; + private Color secondColor; private double barWidth = SERIES_DEFAULT_BAR_WIDTH; private int barAlign = SERIES_BAR_ALIGN_LEFT; private double maxX = 0; @@ -83,12 +84,17 @@ public class DAChartSeries { this(name, style); this.color = color; } - + public DAChartSeries(String name, int style, Color color, boolean disableTooltip) { this(name, style, color); this.disableTooltip = disableTooltip; } + public DAChartSeries(String name, int style, Color color, Color secondColor) { + this(name, style, color); + this.setSecondColor(secondColor); + } + public String getName() { return name; } @@ -104,7 +110,7 @@ public class DAChartSeries { public void setColor(Color Color) { this.color = Color; } - + public boolean isDisableTooltip() { return disableTooltip; } @@ -299,4 +305,12 @@ public class DAChartSeries { public void setData(Object data) { this.data = data; } + + public Color getSecondColor() { + return secondColor; + } + + public void setSecondColor(Color secondColor) { + this.secondColor = secondColor; + } } diff --git a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chartBoard/DAChartBoard.java b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chartBoard/DAChartBoard.java index 97c66c5..89f379d 100644 --- a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chartBoard/DAChartBoard.java +++ b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/chartBoard/DAChartBoard.java @@ -117,9 +117,8 @@ public class DAChartBoard extends Composite { public final static int BOARD_STYLE_FRAME = 1; public final static int BOARD_STYLE_KERNEL = 2; - private IDAChartSeriesMaker chartSeriesMaker; - + public DAChartBoard(Composite parent, String title) { this(parent, title, BOARD_STYLE_TIME); } @@ -139,29 +138,35 @@ public class DAChartBoard extends Composite { titleComp.setLayout(new FillLayout()); itemMinimizeButton = new DACustomToggleButton(this, - ColorResources.CHART_SIZE_TOGGLE_NORMAL_START, ColorResources.CHART_SIZE_TOGGLE_NORMAL_END, - ColorResources.CHART_SIZE_TOGGLE_PUSH_START, ColorResources.CHART_SIZE_TOGGLE_PUSH_END, - ColorResources.CHART_SIZE_TOGGLE_HOVER_START, ColorResources.CHART_SIZE_TOGGLE_HOVER_END, - null, null, - ColorResources.CHART_SIZE_TOGGLE_NORMAL_START, ColorResources.CHART_SIZE_TOGGLE_NORMAL_END, - ColorResources.CHART_SIZE_TOGGLE_PUSH_START, ColorResources.CHART_SIZE_TOGGLE_PUSH_END, - ColorResources.CHART_SIZE_TOGGLE_HOVER_START, ColorResources.CHART_SIZE_TOGGLE_HOVER_END); - - itemMinimizeButton.setOutlineColors(ColorResources.CHART_SIZE_TOGGLE_NORMAL_STROKE, - ColorResources.CHART_SIZE_TOGGLE_PUSH_STROKE, + ColorResources.CHART_SIZE_TOGGLE_NORMAL_START, + ColorResources.CHART_SIZE_TOGGLE_NORMAL_END, + ColorResources.CHART_SIZE_TOGGLE_PUSH_START, + ColorResources.CHART_SIZE_TOGGLE_PUSH_END, + ColorResources.CHART_SIZE_TOGGLE_HOVER_START, + ColorResources.CHART_SIZE_TOGGLE_HOVER_END, null, null, + ColorResources.CHART_SIZE_TOGGLE_NORMAL_START, + ColorResources.CHART_SIZE_TOGGLE_NORMAL_END, + ColorResources.CHART_SIZE_TOGGLE_PUSH_START, + ColorResources.CHART_SIZE_TOGGLE_PUSH_END, + ColorResources.CHART_SIZE_TOGGLE_HOVER_START, + ColorResources.CHART_SIZE_TOGGLE_HOVER_END); + + itemMinimizeButton.setOutlineColors(ColorResources.CHART_SIZE_TOGGLE_NORMAL_STROKE, + ColorResources.CHART_SIZE_TOGGLE_PUSH_STROKE, ColorResources.CHART_SIZE_TOGGLE_HOVER_STROKE, null); - itemMinimizeButton.setButtonImage(DACustomToggleButton.STATE_NORMAL, ImageResources.CHART_ALL_SIZE_RESTORE); - itemMinimizeButton.setButtonImage(DACustomToggleButton.STATE_TOGGLE, ImageResources.CHART_ALL_SIZE_MIN); + itemMinimizeButton.setButtonImage(DACustomToggleButton.STATE_NORMAL, + ImageResources.CHART_ALL_SIZE_RESTORE); + itemMinimizeButton.setButtonImage(DACustomToggleButton.STATE_TOGGLE, + ImageResources.CHART_ALL_SIZE_MIN); itemMinimizeButton.setButtonImagePoint(new Point(3, 4)); - - itemMinimizeButton - .addClickListener(new DACustomButtonClickEventListener() { - @Override - public void handleClickEvent(DACustomButton button) { - minimizeItem(itemMinimizeButton.isToggled()); - } - }); + + itemMinimizeButton.addClickListener(new DACustomButtonClickEventListener() { + @Override + public void handleClickEvent(DACustomButton button) { + minimizeItem(itemMinimizeButton.isToggled()); + } + }); if (boardStyle == BOARD_STYLE_FRAME) { interval = DATimelineFrameRenderer.DEFAULT_INTERVAL; @@ -210,10 +215,10 @@ public class DAChartBoard extends Composite { public void controlResized(ControlEvent e) { boardManager.timelineWidthChanged(getClientArea().width - DAChartBoardItem.DEFAULT_NAME_CELL_WIDTH); - if (chartSeriesMaker != null) { - chartSeriesMaker.makeChartSeries(translateSecToMicroSec(getVisibleStartTime()), - translateSecToMicroSec(getVisibleEndTime())); - } + if (chartSeriesMaker != null) { + chartSeriesMaker.makeChartSeries(translateSecToMicroSec(getVisibleStartTime()), + translateSecToMicroSec(getVisibleEndTime())); + } setChartAxis(); } @@ -235,11 +240,8 @@ public class DAChartBoard extends Composite { for (int i = 0; i < nItemSize; i++) { e.gc.drawRectangle(rt.x, i * height - 1, DAChartBoardItem.DEFAULT_NAME_CELL_WIDTH, height); - e.gc.drawRectangle( - DAChartBoardItem.DEFAULT_NAME_CELL_WIDTH, i - * height - 1, rt.width - - DAChartBoardItem.DEFAULT_NAME_CELL_WIDTH, - height); + e.gc.drawRectangle(DAChartBoardItem.DEFAULT_NAME_CELL_WIDTH, i * height - 1, + rt.width - DAChartBoardItem.DEFAULT_NAME_CELL_WIDTH, height); } } }); @@ -252,8 +254,7 @@ public class DAChartBoard extends Composite { @Override public void controlResized(ControlEvent e) { if (null != boardManager) { - boardManager.timelineWidthChanged(itemList - .getItemChartWidth()); + boardManager.timelineWidthChanged(itemList.getItemChartWidth()); setChartAxis(); } } @@ -292,8 +293,7 @@ public class DAChartBoard extends Composite { data.left = new FormAttachment(itemMinimizeButton, 0); data.top = new FormAttachment(0, 0); data.right = new FormAttachment(100, 0); - data.height = DEFAULT_CHARTBOARD_HEADER_HEIGHT - - LifecycleBar.HEIGHT; + data.height = DEFAULT_CHARTBOARD_HEADER_HEIGHT - LifecycleBar.HEIGHT; timeline.setLayoutData(data); data = new FormData(); @@ -339,8 +339,7 @@ public class DAChartBoard extends Composite { itemHeightRatio = ITEM_HEIGHT_RATIO_NORMAL; itemList.unMinimize(); } - itemList.setSize(itemListScrollComp.getClientArea().width, - itemList.getListHeight()); + itemList.setSize(itemListScrollComp.getClientArea().width, itemList.getListHeight()); itemList.layout(); itemListScrollComp.redraw(); } @@ -393,11 +392,11 @@ public class DAChartBoard extends Composite { @Override public void widgetSelected() { boardManager.scaleChanged(scale.getSelection()); - if (chartSeriesMaker != null) { - chartSeriesMaker.makeChartSeries(translateSecToMicroSec(getVisibleStartTime()), - translateSecToMicroSec(getVisibleEndTime())); - } - setChartAxis(); + if (chartSeriesMaker != null) { + chartSeriesMaker.makeChartSeries(translateSecToMicroSec(getVisibleStartTime()), + translateSecToMicroSec(getVisibleEndTime())); + } + setChartAxis(); callBackScaleChanged(); } }; @@ -407,11 +406,11 @@ public class DAChartBoard extends Composite { public void widgetSelected(SelectionEvent e) { int sel = hScroll.getSelection(); boardManager.scrollbarSelectionChanged(sel); - if (chartSeriesMaker != null) { - chartSeriesMaker.makeChartSeries(translateSecToMicroSec(getVisibleStartTime()), - translateSecToMicroSec(getVisibleEndTime())); - } - setChartAxis(); + if (chartSeriesMaker != null) { + chartSeriesMaker.makeChartSeries(translateSecToMicroSec(getVisibleStartTime()), + translateSecToMicroSec(getVisibleEndTime())); + } + setChartAxis(); callBackScrollChanged(); } @@ -426,17 +425,16 @@ public class DAChartBoard extends Composite { callBackSizeChanged(); } }; - + public void setChartSeriesMaker(IDAChartSeriesMaker chartSeriesMaker) { - this.chartSeriesMaker = chartSeriesMaker; + this.chartSeriesMaker = chartSeriesMaker; } - + private void setChartAxis() { itemList.setChartAxis(getVisibleStartTime(), getVisibleEndTime()); } - protected void notifyScaleChanged(int scaleVal, double thumb, - double visibleStartTime) { + protected void notifyScaleChanged(int scaleVal, double thumb, double visibleStartTime) { timeline.setScale(scaleVal); timeline.setStartTime(visibleStartTime); timeline.redraw(); @@ -507,14 +505,14 @@ public class DAChartBoard extends Composite { int listHeight = itemList.getListHeight(); itemList.setSize(itemListScrollComp.getClientArea().width, listHeight); } + // for sorting of chart items - protected void registerItem(DAChartBoardItem item, - Comparator c) { + protected void registerItem(DAChartBoardItem item, Comparator c) { itemList.registerItem(item, c); int listHeight = itemList.getListHeight(); itemList.setSize(itemListScrollComp.getClientArea().width, listHeight); - } + } public DAChartBoardItemList getItemList() { return itemList; @@ -528,8 +526,7 @@ public class DAChartBoard extends Composite { itemList.notifyResizeChild(item); itemList.layout(); - itemList.setSize(itemListScrollComp.getClientArea().width, - itemList.getListHeight()); + itemList.setSize(itemListScrollComp.getClientArea().width, itemList.getListHeight()); } public void setTotalEndTime(long time) { @@ -552,8 +549,7 @@ public class DAChartBoard extends Composite { int size = markers.size(); for (int i = 0; i < size; i++) { if ((markers.get(i)) instanceof DAChartPlotIntervalMarker) { - ((DAChartPlotIntervalMarker) (markers.get(i))).setInterval(-1, - -1); + ((DAChartPlotIntervalMarker) (markers.get(i))).setInterval(-1, -1); } } @@ -637,7 +633,8 @@ public class DAChartBoard extends Composite { if (null != selectItem) { if (null != oldImage) { setChartBackgroundImage(selectItem.getChart(), oldImage); - if ((!item.isSelectable() && selectItem.isSelectable() && selectItem.getChart().isSelected())) { + if ((!item.isSelectable() && selectItem.isSelectable() && selectItem.getChart() + .isSelected())) { /* * Do nothing */ @@ -655,8 +652,7 @@ public class DAChartBoard extends Composite { return; } oldImage = chart.getPlot().getBackgroundImage(); - setChartBackgroundImage(selectItem.getChart(), - ImageResources.CHART_BG_SELECT); + setChartBackgroundImage(selectItem.getChart(), ImageResources.CHART_BG_SELECT); selectItem.selectItem(true); if (null != selectionListenrers) { @@ -700,8 +696,7 @@ public class DAChartBoard extends Composite { DAChartBoardItem childItem = childItemList.get(childIndex); selectRow(childItem); - int selection = itemList.getItemYPos(parentIndex) - + childItemList.getItemYPos(childIndex); + int selection = itemList.getItemYPos(parentIndex) + childItemList.getItemYPos(childIndex); itemListScrollComp.setOrigin(0, selection); } @@ -773,21 +768,19 @@ public class DAChartBoard extends Composite { } } }; - + private long translateSecToMicroSec(double sec) { - return (long)(sec * 1000000.0); + return (long) (sec * 1000000.0); } - + public void hideItem(int index) { itemList.hideItem(index); - itemList.setSize(itemListScrollComp.getClientArea().width, - itemList.getListHeight()); + itemList.setSize(itemListScrollComp.getClientArea().width, itemList.getListHeight()); } public void showItem(int index) { itemList.showItem(index); - itemList.setSize(itemListScrollComp.getClientArea().width, - itemList.getListHeight()); + itemList.setSize(itemListScrollComp.getClientArea().width, itemList.getListHeight()); } public void reArrangeItem(Integer a[]) { @@ -820,19 +813,25 @@ public class DAChartBoard extends Composite { /** * this method makes default title composition for user of DAChartBoard. - * default format is a simple label. user of DAChartBoard can make own + * default format is a simple label. user of DAChartBoard can make own * renderer to draw title composition not use this method. * - * @param title text to draw - * @param titleFont text font - * @param titleColor text color - * @param bgColorStart for gradient - * @param bgColorEnd for gradient - * @param borderColor border color + * @param title + * text to draw + * @param titleFont + * text font + * @param titleColor + * text color + * @param bgColorStart + * for gradient + * @param bgColorEnd + * for gradient + * @param borderColor + * border color */ - public void makeDefaultTitleComposite(final String title, final Font titleFont, - final Color titleColor, final Color bgColorStart, - final Color bgColorEnd, final Color borderColor) { + public void makeDefaultTitleComposite(final String title, final Font titleFont, + final Color titleColor, final Color bgColorStart, final Color bgColorEnd, + final Color borderColor) { if (this.titleComp == null) { return; } @@ -842,7 +841,7 @@ public class DAChartBoard extends Composite { public void paintControl(PaintEvent e) { Composite composite = (Composite) e.widget; Rectangle rect = composite.getClientArea(); - + /* * draw background color */ @@ -855,7 +854,7 @@ public class DAChartBoard extends Composite { */ e.gc.setForeground(borderColor); e.gc.drawRectangle(rect.x, rect.y, rect.width, rect.height - 1); - + /* * draw text */ @@ -867,7 +866,7 @@ public class DAChartBoard extends Composite { } }); } - + protected int getInterval() { return interval; } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/opengl/chart/GLChartView.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/opengl/chart/GLChartView.java index e927695..9299d17 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/opengl/chart/GLChartView.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/opengl/chart/GLChartView.java @@ -29,6 +29,7 @@ package org.tizen.dynamicanalyzer.ui.opengl.chart; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.StackLayout; +import org.eclipse.swt.graphics.Point; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Composite; import org.tizen.dynamicanalyzer.common.DASelectionData; @@ -36,6 +37,7 @@ import org.tizen.dynamicanalyzer.nl.GLPageLabels; import org.tizen.dynamicanalyzer.nl.ThreadPageLabels; import org.tizen.dynamicanalyzer.resources.ColorResources; import org.tizen.dynamicanalyzer.resources.FontResources; +import org.tizen.dynamicanalyzer.resources.ImageResources; import org.tizen.dynamicanalyzer.swap.model.data.LogData; import org.tizen.dynamicanalyzer.ui.common.SetRangeMarkerMouseMoveListener; import org.tizen.dynamicanalyzer.ui.common.UICommonConstants; @@ -43,7 +45,6 @@ import org.tizen.dynamicanalyzer.ui.opengl.GLPage; import org.tizen.dynamicanalyzer.ui.opengl.data.GLDataManager; import org.tizen.dynamicanalyzer.ui.opengl.data.type.GLSelectionData; import org.tizen.dynamicanalyzer.ui.range.RangeDataManager; -import org.tizen.dynamicanalyzer.ui.timeline.common.TimelineChartManager; import org.tizen.dynamicanalyzer.ui.timeline.common.TimelineConstants; import org.tizen.dynamicanalyzer.ui.timeline.logparser.LifecycleLogParser; import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonRenderer; @@ -57,8 +58,6 @@ import org.tizen.dynamicanalyzer.widgets.timeline.DATimeline; public class GLChartView extends DAViewComposite { public static final String ID = GLChartView.class.getName(); - private static final int COMBO_HEIGHT = 24; - private final Composite contents; private GLFrameTimeChartBoard frameTimeChartBoard; private GLFrameRateChartBoard frameRateChartBoard; @@ -109,35 +108,12 @@ public class GLChartView extends DAViewComposite { frameTimeChartBoard = new GLFrameTimeChartBoard(contents, GLPageLabels.GL_CHART_TITLE_FRAME_TIME, DAChartBoard.BOARD_STYLE_FRAME); frameTimeChartBoard.setNameFont(FontResources.CHART_NAME_FONT); - - frameTimeCombo = new DACustomCombo(frameTimeChartBoard.getTitleComp(), SWT.NONE); - - frameTimeCombo.setComboGradation(ColorResources.FRAME_RATE_COMBO_NORMAL_START, - ColorResources.FRAME_RATE_COMBO_NORMAL_END, - ColorResources.FRAME_RATE_COMBO_PUSH_START, - ColorResources.FRAME_RATE_COMBO_PUSH_END, - ColorResources.FRAME_RATE_COMBO_HOVER_START, - ColorResources.FRAME_RATE_COMBO_HOVER_END, - ColorResources.FRAME_RATE_COMBO_DISABLE_START, - ColorResources.FRAME_RATE_COMBO_DISABLE_END); - frameTimeCombo.setOutlineColors(ColorResources.FRAME_RATE_COMBO_OUTLINE_NORMAL, - ColorResources.FRAME_RATE_COMBO_OUTLINE_PUSH, - ColorResources.FRAME_RATE_COMBO_OUTLINE_HOVER, - ColorResources.FRAME_RATE_COMBO_OUTLINE_DISABLE); + frameTimeCombo = makeDACustomCombo(frameTimeChartBoard.getTitleComp()); + frameTimeCombo.initCombo(); frameTimeCombo.add(GLPageLabels.GL_CHART_TITLE_FRAME_RATE); frameTimeCombo.add(GLPageLabels.GL_CHART_TITLE_FRAME_TIME); frameTimeCombo.select(1); frameTimeCombo.setEnabled(true); - frameTimeCombo.setItemHeight(COMBO_HEIGHT); - frameTimeCombo.setComboRender(new GLTitleComboRenderer()); - frameTimeCombo.setTextAlign(DACustomCombo.TEXT_ALIGN_CENTER); - frameTimeCombo.setComboFont(FontResources.FRAME_RATE_COMBO); - frameTimeCombo.setFontColors(ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR, ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR); - frameTimeCombo.setItemFont(FontResources.FRAME_RATE_DROPDOWN); - frameTimeCombo.setItemFontColor(ColorResources.ADD_CHART_FONT_COLOR); - frameTimeCombo.setButtonRenderer(new DACustomButtonRenderer()); frameTimeCombo.addSelectionListener(new DACustomComboSelectionListener() { @Override public void selectionEvent(DACustomCombo combo) { @@ -155,41 +131,15 @@ public class GLChartView extends DAViewComposite { } private void initFrameRateChart() { - frameRateChartBoard = new GLFrameRateChartBoard(contents, GLPageLabels.GL_CHART_TITLE_FRAME_RATE, DAChartBoard.BOARD_STYLE_TIME); frameRateChartBoard.setNameFont(FontResources.CHART_NAME_FONT); - - frameRateCombo = new DACustomCombo(frameRateChartBoard.getTitleComp(), SWT.NONE); - - frameRateChartBoard.setChartSeriesMaker(TimelineChartManager.getInstance()); - - frameRateCombo.setComboGradation(ColorResources.FRAME_RATE_COMBO_NORMAL_START, - ColorResources.FRAME_RATE_COMBO_NORMAL_END, - ColorResources.FRAME_RATE_COMBO_PUSH_START, - ColorResources.FRAME_RATE_COMBO_PUSH_END, - ColorResources.FRAME_RATE_COMBO_HOVER_START, - ColorResources.FRAME_RATE_COMBO_HOVER_END, - ColorResources.FRAME_RATE_COMBO_DISABLE_START, - ColorResources.FRAME_RATE_COMBO_DISABLE_END); - frameRateCombo.setOutlineColors(ColorResources.FRAME_RATE_COMBO_OUTLINE_NORMAL, - ColorResources.FRAME_RATE_COMBO_OUTLINE_PUSH, - ColorResources.FRAME_RATE_COMBO_OUTLINE_HOVER, - ColorResources.FRAME_RATE_COMBO_OUTLINE_DISABLE); + frameRateCombo = makeDACustomCombo(frameRateChartBoard.getTitleComp()); + frameRateCombo.initCombo(); frameRateCombo.add(GLPageLabels.GL_CHART_TITLE_FRAME_RATE); frameRateCombo.add(GLPageLabels.GL_CHART_TITLE_FRAME_TIME); frameRateCombo.select(0); frameRateCombo.setEnabled(true); - frameRateCombo.setItemHeight(COMBO_HEIGHT); - frameRateCombo.setComboRender(new GLTitleComboRenderer()); - frameRateCombo.setTextAlign(DACustomCombo.TEXT_ALIGN_CENTER); - frameRateCombo.setComboFont(FontResources.FRAME_RATE_COMBO); - frameRateCombo.setFontColors(ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR, ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR); - frameRateCombo.setItemFont(FontResources.FRAME_RATE_DROPDOWN); - frameRateCombo.setItemFontColor(ColorResources.ADD_CHART_FONT_COLOR); - frameRateCombo.setButtonRenderer(new DACustomButtonRenderer()); frameRateCombo.addSelectionListener(new DACustomComboSelectionListener() { @Override public void selectionEvent(DACustomCombo combo) { @@ -206,6 +156,33 @@ public class GLChartView extends DAViewComposite { }); } + private DACustomCombo makeDACustomCombo(Composite parent) { + DACustomCombo returnCombo = new DACustomCombo(parent, SWT.NONE); + returnCombo.setComboGradation(ColorResources.TAB_COMBO_NORMAL_START, + ColorResources.TAB_COMBO_NORMAL_END, ColorResources.TAB_COMBO_PUSH_START, + ColorResources.TAB_COMBO_PUSH_END, ColorResources.TAB_COMBO_HOVER_START, + ColorResources.TAB_COMBO_HOVER_END, ColorResources.FRAME_RATE_COMBO_DISABLE_START, + ColorResources.FRAME_RATE_COMBO_DISABLE_END); + returnCombo.setOutlineColors(ColorResources.TAB_COMBO_NORMAL_STROKE, + ColorResources.TAB_COMBO_PUSH_STROKE, ColorResources.TAB_COMBO_HOVER_STROKE, + ColorResources.FRAME_RATE_COMBO_OUTLINE_DISABLE); + returnCombo.setComboImages(ImageResources.TAB_COMBO_BUTTON_DOWN, + ImageResources.TAB_COMBO_BUTTON_DOWN, ImageResources.TAB_COMBO_BUTTON_DOWN, + ImageResources.TAB_COMBO_BUTTON_DOWN); + returnCombo.setComboImagePoint(new Point(71, 10)); + returnCombo.setButtonImages(ImageResources.TAB_COMBO_BUTTON_DOWN, + ImageResources.TAB_COMBO_BUTTON_DOWN); + returnCombo.setFontPoint(new Point(2, 5)); + returnCombo.setEnabled(true); + returnCombo.setComboFont(FontResources.COMBO); + returnCombo.setItemFont(FontResources.DROPDOWN); + returnCombo.setFontColors(ColorResources.ADD_CHART_FONT_COLOR, + ColorResources.ADD_CHART_FONT_COLOR, ColorResources.ADD_CHART_FONT_COLOR, + ColorResources.ADD_CHART_FONT_COLOR); + returnCombo.setButtonRenderer(new DACustomButtonRenderer()); + return returnCombo; + } + private void changeComboRateToTime() { stackLayout.topControl = frameRateChartBoard; GLDataManager.getInstance().setSelectFrameRateChart(true); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/ThreadChartView.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/ThreadChartView.java index 826e909..9facd8d 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/ThreadChartView.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/ThreadChartView.java @@ -28,6 +28,7 @@ package org.tizen.dynamicanalyzer.ui.thread; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.StackLayout; +import org.eclipse.swt.graphics.Point; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; @@ -36,6 +37,7 @@ import org.tizen.dynamicanalyzer.common.DASelectionData; import org.tizen.dynamicanalyzer.nl.ThreadPageLabels; import org.tizen.dynamicanalyzer.resources.ColorResources; import org.tizen.dynamicanalyzer.resources.FontResources; +import org.tizen.dynamicanalyzer.resources.ImageResources; import org.tizen.dynamicanalyzer.swap.model.data.ProbeCommonData; import org.tizen.dynamicanalyzer.ui.common.SetRangeMarkerMouseMoveListener; import org.tizen.dynamicanalyzer.ui.common.UICommonConstants; @@ -68,8 +70,7 @@ public class ThreadChartView extends DAViewComposite { ThreadChartManager manager; - private final RangeDataManager rangeDataManager = RangeDataManager - .getInstance(); + private final RangeDataManager rangeDataManager = RangeDataManager.getInstance(); public ThreadChartView(Composite parent, int style) { super(parent, style, false); @@ -82,8 +83,7 @@ public class ThreadChartView extends DAViewComposite { stackLayout = new StackLayout(); contents.setLayout(stackLayout); - threadChart = new DAChartBoard(contents, - ThreadPageLabels.THREAD_CHART_TITLE); + threadChart = new DAChartBoard(contents, ThreadPageLabels.THREAD_CHART_TITLE); threadChart.setNameFont(FontResources.CHART_NAME_FONT); threadChart.addSelectionListener(new DAChartBoardSelectionListener() { @@ -94,8 +94,7 @@ public class ThreadChartView extends DAViewComposite { }); initIntervalMarkers(threadChart); - syncChart = new DAChartBoard(contents, - ThreadPageLabels.SYNC_CHART_TITLE); + syncChart = new DAChartBoard(contents, ThreadPageLabels.SYNC_CHART_TITLE); syncChart.setNameFont(FontResources.CHART_NAME_FONT); syncChart.addSelectionListener(new DAChartBoardSelectionListener() { @@ -106,40 +105,15 @@ public class ThreadChartView extends DAViewComposite { } }); initIntervalMarkers(syncChart); - stackLayout.topControl = threadChart; - - threadCombo = new DACustomCombo(threadChart.getTitleComp(), SWT.NONE); - threadCombo.setComboGradation( - ColorResources.FRAME_RATE_COMBO_NORMAL_START, - ColorResources.FRAME_RATE_COMBO_NORMAL_END, - ColorResources.FRAME_RATE_COMBO_PUSH_START, - ColorResources.FRAME_RATE_COMBO_PUSH_END, - ColorResources.FRAME_RATE_COMBO_HOVER_START, - ColorResources.FRAME_RATE_COMBO_HOVER_END, - ColorResources.FRAME_RATE_COMBO_DISABLE_START, - ColorResources.FRAME_RATE_COMBO_DISABLE_END); - threadCombo.setOutlineColors( - ColorResources.FRAME_RATE_COMBO_OUTLINE_NORMAL, - ColorResources.FRAME_RATE_COMBO_OUTLINE_PUSH, - ColorResources.FRAME_RATE_COMBO_OUTLINE_HOVER, - ColorResources.FRAME_RATE_COMBO_OUTLINE_DISABLE); + stackLayout.topControl = threadChart; + threadCombo = makeDACustomCombo(threadChart.getTitleComp()); + threadCombo.initCombo(); threadCombo.add("Thread"); threadCombo.add("Sync"); threadCombo.select(0); threadCombo.setEnabled(true); - threadCombo.setItemHeight(THREAD_COMBO_ITEM_HEIGHT); - threadCombo.setTextAlign(DACustomCombo.TEXT_ALIGN_CENTER); - threadCombo.setComboFont(FontResources.FRAME_RATE_COMBO); - threadCombo.setFontColors(ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR); - threadCombo.setItemFont(FontResources.FRAME_RATE_DROPDOWN); - threadCombo.setItemFontColor(ColorResources.ADD_CHART_FONT_COLOR); - threadCombo.setButtonRenderer(new DACustomButtonRenderer()); threadCombo.addSelectionListener(new DACustomComboSelectionListener() { - @Override public void selectionEvent(DACustomCombo combo) { String selected = combo.getText(); @@ -154,38 +128,13 @@ public class ThreadChartView extends DAViewComposite { } }); - syncCombo = new DACustomCombo(syncChart.getTitleComp(), SWT.NONE); - - syncCombo.setComboGradation( - ColorResources.FRAME_RATE_COMBO_NORMAL_START, - ColorResources.FRAME_RATE_COMBO_NORMAL_END, - ColorResources.FRAME_RATE_COMBO_PUSH_START, - ColorResources.FRAME_RATE_COMBO_PUSH_END, - ColorResources.FRAME_RATE_COMBO_HOVER_START, - ColorResources.FRAME_RATE_COMBO_HOVER_END, - ColorResources.FRAME_RATE_COMBO_DISABLE_START, - ColorResources.FRAME_RATE_COMBO_DISABLE_END); - syncCombo.setOutlineColors( - ColorResources.FRAME_RATE_COMBO_OUTLINE_NORMAL, - ColorResources.FRAME_RATE_COMBO_OUTLINE_PUSH, - ColorResources.FRAME_RATE_COMBO_OUTLINE_HOVER, - ColorResources.FRAME_RATE_COMBO_OUTLINE_DISABLE); + syncCombo = makeDACustomCombo(syncChart.getTitleComp()); + syncCombo.initCombo(); syncCombo.add("Thread"); syncCombo.add("Sync"); syncCombo.select(1); syncCombo.setEnabled(true); - syncCombo.setItemHeight(THREAD_COMBO_ITEM_HEIGHT); - syncCombo.setTextAlign(DACustomCombo.TEXT_ALIGN_CENTER); - syncCombo.setComboFont(FontResources.FRAME_RATE_COMBO); - syncCombo.setFontColors(ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR, - ColorResources.ADD_CHART_FONT_COLOR); - syncCombo.setItemFont(FontResources.FRAME_RATE_DROPDOWN); - syncCombo.setItemFontColor(ColorResources.ADD_CHART_FONT_COLOR); - syncCombo.setButtonRenderer(new DACustomButtonRenderer()); syncCombo.addSelectionListener(new DACustomComboSelectionListener() { - @Override public void selectionEvent(DACustomCombo combo) { String selected = combo.getText(); @@ -208,11 +157,9 @@ public class ThreadChartView extends DAViewComposite { syncTimeline.setTimeTickFont(FontResources.TIMELINE_TICK_FONT); syncTimeline.setTimeBalloonFont(FontResources.TIMELINE_BALLOON_FONT); - LifecycleLogParser.getInstance().registerLifecycleBar( - threadChart.getLifecycleBar()); + LifecycleLogParser.getInstance().registerLifecycleBar(threadChart.getLifecycleBar()); LifecycleLogParser.getInstance().registerTimeline(threadTimeline); - LifecycleLogParser.getInstance().registerLifecycleBar( - syncChart.getLifecycleBar()); + LifecycleLogParser.getInstance().registerLifecycleBar(syncChart.getLifecycleBar()); LifecycleLogParser.getInstance().registerTimeline(syncTimeline); setTimelineMouseListener(threadTimeline, threadChart); @@ -222,34 +169,53 @@ public class ThreadChartView extends DAViewComposite { manager.setBoard(threadChart, syncChart); } + private DACustomCombo makeDACustomCombo(Composite parent) { + DACustomCombo returnCombo = new DACustomCombo(parent, SWT.NONE); + returnCombo.setComboGradation(ColorResources.TAB_COMBO_NORMAL_START, + ColorResources.TAB_COMBO_NORMAL_END, ColorResources.TAB_COMBO_PUSH_START, + ColorResources.TAB_COMBO_PUSH_END, ColorResources.TAB_COMBO_HOVER_START, + ColorResources.TAB_COMBO_HOVER_END, ColorResources.FRAME_RATE_COMBO_DISABLE_START, + ColorResources.FRAME_RATE_COMBO_DISABLE_END); + returnCombo.setOutlineColors(ColorResources.TAB_COMBO_NORMAL_STROKE, + ColorResources.TAB_COMBO_PUSH_STROKE, ColorResources.TAB_COMBO_HOVER_STROKE, + ColorResources.FRAME_RATE_COMBO_OUTLINE_DISABLE); + returnCombo.setComboImages(ImageResources.TAB_COMBO_BUTTON_DOWN, + ImageResources.TAB_COMBO_BUTTON_DOWN, ImageResources.TAB_COMBO_BUTTON_DOWN, + ImageResources.TAB_COMBO_BUTTON_DOWN); + returnCombo.setComboImagePoint(new Point(65, 9)); + returnCombo.setButtonImages(ImageResources.TAB_COMBO_BUTTON_DOWN, + ImageResources.TAB_COMBO_BUTTON_DOWN); + returnCombo.setFontPoint(new Point(7, 5)); + returnCombo.setEnabled(true); + returnCombo.setComboFont(FontResources.COMBO); + returnCombo.setItemFont(FontResources.DROPDOWN); + returnCombo.setFontColors(ColorResources.ADD_CHART_FONT_COLOR, + ColorResources.ADD_CHART_FONT_COLOR, ColorResources.ADD_CHART_FONT_COLOR, + ColorResources.ADD_CHART_FONT_COLOR); + returnCombo.setButtonRenderer(new DACustomButtonRenderer()); + return returnCombo; + } + private void callUpdatePage(DAChartBoardItem selectItem) { if (null == selectItem) { - AnalyzerManager - .getCurrentPage() + AnalyzerManager.getCurrentPage() .updateView( - new DASelectionData( - ThreadPage.chartViewID, - (long) (((DAChartPlotIntervalMarker) threadChart - .getMarkers() + new DASelectionData(ThreadPage.chartViewID, + (long) (((DAChartPlotIntervalMarker) threadChart.getMarkers() .get(UICommonConstants.SELECTION_MARKER_INDEX)) .getStartVal() * TimelineConstants.MEGA_DOUBLE), - (long) (((DAChartPlotIntervalMarker) threadChart - .getMarkers() + (long) (((DAChartPlotIntervalMarker) threadChart.getMarkers() .get(UICommonConstants.SELECTION_MARKER_INDEX)) .getEndVal() * TimelineConstants.MEGA_DOUBLE), new Integer(0), null)); } else { - AnalyzerManager - .getCurrentPage() + AnalyzerManager.getCurrentPage() .updateView( - new DASelectionData( - ThreadPage.chartViewID, - (long) (((DAChartPlotIntervalMarker) threadChart - .getMarkers() + new DASelectionData(ThreadPage.chartViewID, + (long) (((DAChartPlotIntervalMarker) threadChart.getMarkers() .get(UICommonConstants.SELECTION_MARKER_INDEX)) .getStartVal() * TimelineConstants.MEGA_DOUBLE), - (long) (((DAChartPlotIntervalMarker) threadChart - .getMarkers() + (long) (((DAChartPlotIntervalMarker) threadChart.getMarkers() .get(UICommonConstants.SELECTION_MARKER_INDEX)) .getEndVal() * TimelineConstants.MEGA_DOUBLE), selectItem.getData(), null)); @@ -278,10 +244,9 @@ public class ThreadChartView extends DAViewComposite { updateView(); } - private void setTimelineMouseListener(final DATimeline timeline, - DAChartBoard chartBoard) { - timeline.addMouseMoveListener(new SetRangeMarkerMouseMoveListener( - rangeDataManager, chartBoard, timeline)); + private void setTimelineMouseListener(final DATimeline timeline, DAChartBoard chartBoard) { + timeline.addMouseMoveListener(new SetRangeMarkerMouseMoveListener(rangeDataManager, + chartBoard, timeline)); } @Override @@ -290,52 +255,42 @@ public class ThreadChartView extends DAViewComposite { syncChart.setTotalEndTime(ToolbarArea.getInstance().getTime()); manager.update(); - threadChart.setTimelineMarkerStartTime(rangeDataManager - .getMarkerStartTime() / TimelineConstants.MEGA_DOUBLE); - threadChart.setTimelineMarkerEndTime(rangeDataManager - .getMarkerEndTime() / TimelineConstants.MEGA_DOUBLE); - syncChart.setTimelineMarkerStartTime(rangeDataManager - .getMarkerStartTime() / TimelineConstants.MEGA_DOUBLE); + threadChart.setTimelineMarkerStartTime(rangeDataManager.getMarkerStartTime() + / TimelineConstants.MEGA_DOUBLE); + threadChart.setTimelineMarkerEndTime(rangeDataManager.getMarkerEndTime() + / TimelineConstants.MEGA_DOUBLE); + syncChart.setTimelineMarkerStartTime(rangeDataManager.getMarkerStartTime() + / TimelineConstants.MEGA_DOUBLE); syncChart.setTimelineMarkerEndTime(rangeDataManager.getMarkerEndTime() / TimelineConstants.MEGA_DOUBLE); if (RangeDataManager.getInstance().isBeingAnalyzed()) { ((DAChartPlotIntervalMarker) threadChart.getMarkers().get( - UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)) - .setInterval(rangeDataManager.getAnalysisStartTime() - / TimelineConstants.MEGA_DOUBLE, - rangeDataManager.getAnalysisEndTime() - / TimelineConstants.MEGA_DOUBLE); + UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)).setInterval( + rangeDataManager.getAnalysisStartTime() / TimelineConstants.MEGA_DOUBLE, + rangeDataManager.getAnalysisEndTime() / TimelineConstants.MEGA_DOUBLE); ((DAChartPlotIntervalMarker) syncChart.getMarkers().get( - UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)) - .setInterval(rangeDataManager.getAnalysisStartTime() - / TimelineConstants.MEGA_DOUBLE, - rangeDataManager.getAnalysisEndTime() - / TimelineConstants.MEGA_DOUBLE); + UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)).setInterval( + rangeDataManager.getAnalysisStartTime() / TimelineConstants.MEGA_DOUBLE, + rangeDataManager.getAnalysisEndTime() / TimelineConstants.MEGA_DOUBLE); } else { ((DAChartPlotIntervalMarker) threadChart.getMarkers().get( - UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)) - .setInterval(-1, -1); + UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)).setInterval(-1, -1); ((DAChartPlotIntervalMarker) syncChart.getMarkers().get( - UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)) - .setInterval(-1, -1); + UICommonConstants.RANGE_ANALYSIS_MARKER_INDEX)).setInterval(-1, -1); } ((DAChartPlotIntervalMarker) threadChart.getMarkers().get( UICommonConstants.RANGE_MARKER_INDEX)).setInterval( - rangeDataManager.getMarkerStartTime() - / TimelineConstants.MEGA_DOUBLE, - rangeDataManager.getMarkerEndTime() - / TimelineConstants.MEGA_DOUBLE); + rangeDataManager.getMarkerStartTime() / TimelineConstants.MEGA_DOUBLE, + rangeDataManager.getMarkerEndTime() / TimelineConstants.MEGA_DOUBLE); ((DAChartPlotIntervalMarker) syncChart.getMarkers().get( UICommonConstants.RANGE_MARKER_INDEX)).setInterval( - rangeDataManager.getMarkerStartTime() - / TimelineConstants.MEGA_DOUBLE, - rangeDataManager.getMarkerEndTime() - / TimelineConstants.MEGA_DOUBLE); + rangeDataManager.getMarkerStartTime() / TimelineConstants.MEGA_DOUBLE, + rangeDataManager.getMarkerEndTime() / TimelineConstants.MEGA_DOUBLE); } @@ -355,8 +310,7 @@ public class ThreadChartView extends DAViewComposite { long start = selData.getStartTime(); long end = selData.getEndTime(); - double startTime = (double) start - / TimelineConstants.MEGA_DOUBLE; + double startTime = (double) start / TimelineConstants.MEGA_DOUBLE; double endTime = (double) end / TimelineConstants.MEGA_DOUBLE; // double middleTime = (startTime + endTime) / 2.0; // if (start == end) { @@ -367,8 +321,7 @@ public class ThreadChartView extends DAViewComposite { // chartBoard.setVisibleMiddleTime(middleTime); DAChartPlotIntervalMarker intervalMarker = (DAChartPlotIntervalMarker) chartBoard - .getMarkers().get( - UICommonConstants.SELECTION_MARKER_INDEX); + .getMarkers().get(UICommonConstants.SELECTION_MARKER_INDEX); intervalMarker.setInterval(startTime, endTime); } } @@ -381,8 +334,7 @@ public class ThreadChartView extends DAViewComposite { } for (int i = 0; i < itemSize; i++) { DAChartBoardItem item = threadChart.getItemList().get(i); - ThreadPageThreadData pageData = (ThreadPageThreadData) item - .getData(); + ThreadPageThreadData pageData = (ThreadPageThreadData) item.getData(); if (pageData.getTid().equals(tID)) { return i; } @@ -407,22 +359,22 @@ public class ThreadChartView extends DAViewComposite { private void initIntervalMarkers(DAChartBoard board) { // selection marker - DAChartPlotIntervalMarker selectionMarker = new DAChartPlotIntervalMarker( - -1, -1, DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA); + DAChartPlotIntervalMarker selectionMarker = new DAChartPlotIntervalMarker(-1, -1, + DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA); selectionMarker.setBackgroundColor(ColorResources.SELECTION_RANGE); selectionMarker.setAlpha((int) (255 * 0.25)); board.addIntervalMarker(selectionMarker); // range analysis marker - DAChartPlotIntervalMarker rangeAnalyzeMarker = new DAChartPlotIntervalMarker( - -1, -1, DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA); + DAChartPlotIntervalMarker rangeAnalyzeMarker = new DAChartPlotIntervalMarker(-1, -1, + DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_AREA); rangeAnalyzeMarker.setBackgroundColor(ColorResources.YELLOW); rangeAnalyzeMarker.setAlpha((int) (255 * 0.25)); board.addIntervalMarker(rangeAnalyzeMarker); // range marker - DAChartPlotIntervalMarker rangeMarker = new DAChartPlotIntervalMarker( - -1, -1, DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_LINE); + DAChartPlotIntervalMarker rangeMarker = new DAChartPlotIntervalMarker(-1, -1, + DAChartPlotIntervalMarker.INTERVAL_MARKER_STYLE_LINE); rangeMarker.setForegroundColor(ColorResources.RED); rangeMarker.setAlpha((int) (255 * 0.25)); board.addIntervalMarker(rangeMarker); @@ -434,8 +386,7 @@ public class ThreadChartView extends DAViewComposite { currentChart.setTimelineMarkerEndTime(endtime); ((DAChartPlotIntervalMarker) currentChart.getMarkers().get( - UICommonConstants.RANGE_MARKER_INDEX)).setInterval(starttime, - endtime); + UICommonConstants.RANGE_MARKER_INDEX)).setInterval(starttime, endtime); } } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java index 2ac00c9..186ea10 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java @@ -90,21 +90,21 @@ public class ThreadPageThreadDataManager { private List eventQueue = new ArrayList(); private List callEventQueue = new ArrayList(); // load from database - private List syncQueue = new ArrayList(); + private List syncQueue = new ArrayList(); private HashMap threadAttrMap = new HashMap(); private HashMap syncAttrMap = new HashMap(); // threadFuncMap : (pthreadId, function address) private HashMap threadFuncMap = new HashMap(); private int preSelectionPid = -1; - + public static final int PTHREAD_CREATE_JOINABLE = 0; public static final int PTHREAD_CREATE_DETACHED = 1; - + public ThreadPageThreadDataManager(DAChartBoard board) { this.setBoard(board); } - + public List getRows() { return rows; } @@ -131,10 +131,10 @@ public class ThreadPageThreadDataManager { syncEventQueue.add(syncEvent); hasUpdate = true; } - + public void pushSyncData(ThreadPageSyncData syncData) { syncQueue.add(syncData); - } + } private void createBoardItem(ThreadPageThreadData data) { // DACustomChartBoardItem item = new DACustomChartBoardItem(board, @@ -143,9 +143,8 @@ public class ThreadPageThreadDataManager { DAChartBoardItem item = new DAChartBoardItem(board, data.getTypeString() + ThreadPageLabels.THREAD_CHART_NAME_PREFIX + ThreadPageLabels.THREAD_CHART_NAME_PID + data.getPid() - + ThreadPageLabels.THREAD_CHART_NAME_COMMA - + ThreadPageLabels.THREAD_CHART_NAME_TID + data.getKey() - + ThreadPageLabels.THREAD_CHART_NAME_POSTFIX); + + ThreadPageLabels.THREAD_CHART_NAME_COMMA + ThreadPageLabels.THREAD_CHART_NAME_TID + + data.getKey() + ThreadPageLabels.THREAD_CHART_NAME_POSTFIX); item.useExpand(true); DAChart chart = item.getChart(); @@ -158,9 +157,9 @@ public class ThreadPageThreadDataManager { chart.setData(data); chart.redraw(); } + // for sorting of thread chart item - private void createBoardItem(ThreadPageThreadData data, - Comparator c) { + private void createBoardItem(ThreadPageThreadData data, Comparator c) { // DACustomChartBoardItem item = new DACustomChartBoardItem(board, // data.getName()); Integer tid = Integer.valueOf(data.getTid()); @@ -168,9 +167,8 @@ public class ThreadPageThreadDataManager { DAChartBoardItem item = new DAChartBoardItem(board, data.getTypeString() + ThreadPageLabels.THREAD_CHART_NAME_PREFIX + ThreadPageLabels.THREAD_CHART_NAME_PID + data.getPid() - + ThreadPageLabels.THREAD_CHART_NAME_COMMA - + ThreadPageLabels.THREAD_CHART_NAME_TID + data.getKey() - + ThreadPageLabels.THREAD_CHART_NAME_POSTFIX, tid, c); + + ThreadPageLabels.THREAD_CHART_NAME_COMMA + ThreadPageLabels.THREAD_CHART_NAME_TID + + data.getKey() + ThreadPageLabels.THREAD_CHART_NAME_POSTFIX, tid, c); item.useExpand(true); DAChart chart = item.getChart(); @@ -183,18 +181,17 @@ public class ThreadPageThreadDataManager { chart.setData(data); chart.redraw(); } - + private void initSyncChart(DAChart chart) { if (null == chart) { return; } - DAChartSeries apiSeries = new DAChartSeries( - ThreadPageLabels.THREAD_CHART_SERIES_API, + DAChartSeries apiSeries = new DAChartSeries(ThreadPageLabels.THREAD_CHART_SERIES_API, DAChartSeries.SERIES_STYLE_STATE, ColorResources.YELLOW); DAChartSeries stateSeries = new DAChartSeries( - ThreadPageLabels.THREAD_SYNC_CHART_SERIES_STATE, - DAChartSeries.SERIES_STYLE_STATE, ColorResources.WHITE); + ThreadPageLabels.THREAD_SYNC_CHART_SERIES_STATE, DAChartSeries.SERIES_STYLE_STATE, + ColorResources.WHITE); chart.addSeries(stateSeries); chart.addSeries(apiSeries); @@ -207,8 +204,7 @@ public class ThreadPageThreadDataManager { plot.setAutoHeightRange(AutoRangeType.MANUAL); plot.setAxisFont(FontResources.CHART_AXIS_FONT); plot.setAxisRangeY(0, 101); - plot.setAxisRangeX(board.getVisibleStartTime(), - board.getVisibleEndTime()); + plot.setAxisRangeX(board.getVisibleStartTime(), board.getVisibleEndTime()); DAChartPlotTooltip tooltip = new DAChartPlotTooltip(-1); tooltip.setFont(FontResources.CHART_TOOLTIP_FONT); plot.setTooltip(tooltip); @@ -217,19 +213,16 @@ public class ThreadPageThreadDataManager { popupMenu.setFont(FontResources.CONTEXT_MENU_ITEM_FONT); DAPopupMenuItem startItem = new DAPopupMenuItem(popupMenu); startItem.setText(TimelineChartLabels.RANGE_CONTEXT_SET_START); - startItem.addListener(new PopupStartMenuItemClickListener(startItem, - board)); + startItem.addListener(new PopupStartMenuItemClickListener(startItem, board)); DAPopupMenuItem endItem = new DAPopupMenuItem(popupMenu); endItem.setText(TimelineChartLabels.RANGE_CONTEXT_SET_END); endItem.addListener(new PopupEndMenuItemClickListener(endItem, board)); DAPopupMenuItem fromSelectionItem = new DAPopupMenuItem(popupMenu); - fromSelectionItem - .setText(TimelineChartLabels.RANGE_CONTEXT_SET_FROM_SELECTION); - fromSelectionItem - .addListener(new PopupFromSelectionMenuItemClickListener( - fromSelectionItem, board)); + fromSelectionItem.setText(TimelineChartLabels.RANGE_CONTEXT_SET_FROM_SELECTION); + fromSelectionItem.addListener(new PopupFromSelectionMenuItemClickListener( + fromSelectionItem, board)); DAPopupMenuItem analysisItem = new DAPopupMenuItem(popupMenu); analysisItem.setText(TimelineChartLabels.RANGE_CONTEXT_ANALYSIS); @@ -243,14 +236,12 @@ public class ThreadPageThreadDataManager { popupMenu, board.getTimeline()); chart.addMouseListener(timelineChartMouseEventListener); chart.addMouseMoveListener(timelineChartMouseEventListener); - chart.addMouseTrackListener(new TimelineChartMouseTrackAdapter(board - .getTimeline())); + chart.addMouseTrackListener(new TimelineChartMouseTrackAdapter(board.getTimeline())); plot.setMarkers(board.getMarkers()); } - private boolean createSyncBoardItem(ThreadPageThreadData data, - ThreadPageSyncData sync) { + private boolean createSyncBoardItem(ThreadPageThreadData data, ThreadPageSyncData sync) { DAChartBoardItem parent = data.getItem(); if (null == parent) { return false; @@ -288,27 +279,23 @@ public class ThreadPageThreadDataManager { plot.setTooltip(tooltip); plot.setAxisFont(FontResources.CHART_AXIS_FONT); plot.setAxisRangeY(0, 101); - plot.setAxisRangeX(board.getVisibleStartTime(), - board.getVisibleEndTime()); + plot.setAxisRangeX(board.getVisibleStartTime(), board.getVisibleEndTime()); DAPopupMenu popupMenu = new DAPopupMenu(chart); popupMenu.setFont(FontResources.CONTEXT_MENU_ITEM_FONT); DAPopupMenuItem startItem = new DAPopupMenuItem(popupMenu); startItem.setText(TimelineChartLabels.RANGE_CONTEXT_SET_START); - startItem.addListener(new PopupStartMenuItemClickListener(startItem, - board)); + startItem.addListener(new PopupStartMenuItemClickListener(startItem, board)); DAPopupMenuItem endItem = new DAPopupMenuItem(popupMenu); endItem.setText(TimelineChartLabels.RANGE_CONTEXT_SET_END); endItem.addListener(new PopupEndMenuItemClickListener(endItem, board)); DAPopupMenuItem fromSelectionItem = new DAPopupMenuItem(popupMenu); - fromSelectionItem - .setText(TimelineChartLabels.RANGE_CONTEXT_SET_FROM_SELECTION); - fromSelectionItem - .addListener(new PopupFromSelectionMenuItemClickListener( - fromSelectionItem, board)); + fromSelectionItem.setText(TimelineChartLabels.RANGE_CONTEXT_SET_FROM_SELECTION); + fromSelectionItem.addListener(new PopupFromSelectionMenuItemClickListener( + fromSelectionItem, board)); DAPopupMenuItem analysisItem = new DAPopupMenuItem(popupMenu); analysisItem.setText(TimelineChartLabels.RANGE_CONTEXT_ANALYSIS); @@ -322,26 +309,21 @@ public class ThreadPageThreadDataManager { popupMenu, board.getTimeline()); chart.addMouseListener(timelineChartMouseEventListener); chart.addMouseMoveListener(timelineChartMouseEventListener); - chart.addMouseTrackListener(new TimelineChartMouseTrackAdapter(board - .getTimeline())); + chart.addMouseTrackListener(new TimelineChartMouseTrackAdapter(board.getTimeline())); plot.setMarkers(board.getMarkers()); } private void setChartSeries(DAChart chart) { - DAChartSeries loadSeries = new DAChartSeries( - ThreadPageLabels.THREAD_CHART_SERIES_LOAD, - DAChartSeries.SERIES_STYLE_LOAD, - ColorResources.THREAD_GRAPH_CPU_LOAD_COLOR); + DAChartSeries loadSeries = new DAChartSeries(ThreadPageLabels.THREAD_CHART_SERIES_LOAD, + DAChartSeries.SERIES_STYLE_LOAD, ColorResources.THREAD_GRAPH_MIN_CPU_LOAD_COLOR, + ColorResources.THREAD_GRAPH_MAX_CPU_LOAD_COLOR); loadSeries.setBarWidth(1); - DAChartSeries apiSeries = new DAChartSeries( - ThreadPageLabels.THREAD_CHART_SERIES_API, + DAChartSeries apiSeries = new DAChartSeries(ThreadPageLabels.THREAD_CHART_SERIES_API, DAChartSeries.SERIES_STYLE_EVENT, ColorResources.YELLOW); - DAChartSeries eventSeries = new DAChartSeries( - ThreadPageLabels.THREAD_CHART_SERIES_EVENT, - DAChartSeries.SERIES_STYLE_ARROW, - ColorResources.THREAD_GRAPH_CALLEE_COLOR); + DAChartSeries eventSeries = new DAChartSeries(ThreadPageLabels.THREAD_CHART_SERIES_EVENT, + DAChartSeries.SERIES_STYLE_ARROW, ColorResources.THREAD_GRAPH_CALLEE_COLOR); apiSeries.setSummarizeTooltipText(ThreadPageLabels.THREAD_TOOLTIP_APIS); eventSeries.setFont(FontResources.CHART_ARROW_TID_FONT); @@ -355,12 +337,11 @@ public class ThreadPageThreadDataManager { public void createMainThreadItem(int tid) { int funcID = Global.getFunctionID("main"); - ThreadPageThreadData mainData = new ThreadPageThreadData( - ThreadPageThreadData.TYPE_MAIN, String.valueOf(tid), - String.valueOf(tid), CommonConstants.EMPTY, funcID); + ThreadPageThreadData mainData = new ThreadPageThreadData(ThreadPageThreadData.TYPE_MAIN, + String.valueOf(tid), String.valueOf(tid), CommonConstants.EMPTY, funcID); pushRow(mainData); } - + public static String getAttrTypeByTypeInt(int typeInt) { if (typeInt == PTHREAD_CREATE_JOINABLE) { return ThreadPageLabels.THREAD_ATTR_TYPE_JOINABLE; @@ -371,8 +352,7 @@ public class ThreadPageThreadDataManager { } } - public List getLogsFromLogPackage(LogPackage logPack, - int logCenterConstants) { + public List getLogsFromLogPackage(LogPackage logPack, int logCenterConstants) { Logs logs = logPack.getLogs(logCenterConstants); if (null == logs || logs.getRawLogs().size() == 0) { return null; @@ -395,8 +375,8 @@ public class ThreadPageThreadDataManager { String tid; int load; - ProcessProfileData [] processDataList = sysLog.getProcessProfileDataList(); - + ProcessProfileData[] processDataList = sysLog.getProcessProfileDataList(); + for (int i = 0; i < processDataList.length; i++) { loads = processDataList[i].getThreadLoad(); String[] temp = loads.split(","); @@ -416,46 +396,43 @@ public class ThreadPageThreadDataManager { time = input.getTime(); ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, tid, - String.valueOf(load) - + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, - null); + String.valueOf(load) + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, null); pushEvent(event); - + } } - hasUpdate = true; -// loads = sysLog.getThreadLoad(); // TODO SystemData interface changed. -// // loads = input.get(LogCenterConstants.DEVICE_THREAD_LOAD_INDEX); -// String[] temp = loads.split(","); -// int tempSize = temp.length; -// double time; -// for (int j = 0; j + 1 < tempSize; j += 2) { -// try { -// tid = temp[j]; -// } catch (NumberFormatException nfe) { -// Logger.error("parseLoad - tid parsing"); -// break; -// } -// // if (null == findParentData(tid)) { -// // continue; -// // } -// load = (int) (Double.parseDouble(temp[j + 1])); -// time = Double.parseDouble(Long.toString(input.getTime())) -// / TimelineConstants.MEGA_DOUBLE; -// ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( -// ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, tid, -// String.valueOf(load) -// + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, -// null); -// pushEvent(event); -// -// } -// hasUpdate = true; + hasUpdate = true; + // loads = sysLog.getThreadLoad(); // TODO SystemData interface changed. + // // loads = input.get(LogCenterConstants.DEVICE_THREAD_LOAD_INDEX); + // String[] temp = loads.split(","); + // int tempSize = temp.length; + // double time; + // for (int j = 0; j + 1 < tempSize; j += 2) { + // try { + // tid = temp[j]; + // } catch (NumberFormatException nfe) { + // Logger.error("parseLoad - tid parsing"); + // break; + // } + // // if (null == findParentData(tid)) { + // // continue; + // // } + // load = (int) (Double.parseDouble(temp[j + 1])); + // time = Double.parseDouble(Long.toString(input.getTime())) + // / TimelineConstants.MEGA_DOUBLE; + // ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( + // ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, tid, + // String.valueOf(load) + // + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, + // null); + // pushEvent(event); + // + // } + // hasUpdate = true; } private void parseLoad(LogPackage logPack) { - List inputs = getLogsFromLogPackage(logPack, - DataChannelConstants.MSG_DATA_SYSTEM); + List inputs = getLogsFromLogPackage(logPack, DataChannelConstants.MSG_DATA_SYSTEM); int size; if (null == inputs || 0 == (size = inputs.size())) { return; @@ -467,8 +444,8 @@ public class ThreadPageThreadDataManager { int load; for (int i = 0; i < size; i++) { input = (SystemData) inputs.get(i); - ProcessProfileData [] processDataList = input.getProcessProfileDataList(); - + ProcessProfileData[] processDataList = input.getProcessProfileDataList(); + for (int j = 0; j < processDataList.length; j++) { loads = processDataList[j].getThreadLoad(); String[] temp = loads.split(","); @@ -488,38 +465,38 @@ public class ThreadPageThreadDataManager { time = input.getTime(); ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, tid, - String.valueOf(load) - + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, + String.valueOf(load) + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, null); pushEvent(event); - + } - } -// loads = input.getThreadLoad(); // TODO SystemData interface changed. -// String[] temp = loads.split(","); -// int tempSize = temp.length; -// double time; -// for (int j = 0; j + 1 < tempSize; j += 2) { -// try { -// tid = temp[j]; -// } catch (NumberFormatException nfe) { -// Logger.error("parseLoad - tid parsing"); -// break; -// } -// // if (null == findParentData(tid)) { -// // continue; -// // } -// -// load = (int) (Double.parseDouble(temp[j + 1])); -// time = Double.parseDouble(Long.toString(input.getTime())) -// / TimelineConstants.MEGA_DOUBLE; -// ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( -// ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, -// tid, String.valueOf(load) -// + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -// -1, null); -// pushEvent(event); -// } + } + // loads = input.getThreadLoad(); // TODO SystemData interface + // changed. + // String[] temp = loads.split(","); + // int tempSize = temp.length; + // double time; + // for (int j = 0; j + 1 < tempSize; j += 2) { + // try { + // tid = temp[j]; + // } catch (NumberFormatException nfe) { + // Logger.error("parseLoad - tid parsing"); + // break; + // } + // // if (null == findParentData(tid)) { + // // continue; + // // } + // + // load = (int) (Double.parseDouble(temp[j + 1])); + // time = Double.parseDouble(Long.toString(input.getTime())) + // / TimelineConstants.MEGA_DOUBLE; + // ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( + // ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, + // tid, String.valueOf(load) + // + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, + // -1, null); + // pushEvent(event); + // } } } @@ -532,7 +509,7 @@ public class ThreadPageThreadDataManager { long errorNum = input.getErrno(); ThreadPageThreadDataEvent event; String pthreadId = Long.toString(input.getPThreadId()); - + if (errorNum != 0) { SummaryDataManager.getInstance().getFailedApiDataMaker().makeData(input); } @@ -543,18 +520,15 @@ public class ThreadPageThreadDataManager { case LogCenterConstants.THREAD_API_TYPE_EXIT: case LogCenterConstants.THREAD_API_TYPE_WAIT_START: case LogCenterConstants.THREAD_API_TYPE_OTHER: - if (apiName.equals(ThreadPageLabels - .THREAD_API_PTHREAD_ATTR_INIT)) { + if (apiName.equals(ThreadPageLabels.THREAD_API_PTHREAD_ATTR_INIT)) { threadAttrMap.put(input.getArgs(), PTHREAD_CREATE_JOINABLE); - } else if (apiName.equals(ThreadPageLabels - .THREAD_API_PTHREAD_ATTR_SETDETACHSTATE)) { + } else if (apiName.equals(ThreadPageLabels.THREAD_API_PTHREAD_ATTR_SETDETACHSTATE)) { checkThreadAttrType(input.getArgs()); - } - - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_API, - LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, - apiName, errorNum, input); + } + + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_API, + LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, apiName, errorNum, + input); pushEvent(event); break; case LogCenterConstants.THREAD_API_TYPE_START: @@ -562,77 +536,74 @@ public class ThreadPageThreadDataManager { checkThreadType(input.getArgs(), pthreadId); checkThreadFunc(input.getArgs(), pthreadId); } - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_API, - LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, - apiName, errorNum, input); + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_API, + LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, apiName, errorNum, + input); event.setCallID(pthreadId); pushEvent(event); pushCallEvent(event); break; case LogCenterConstants.THREAD_API_TYPE_WAIT_END: - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_EVENT, - LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, - apiName, errorNum, input); + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_EVENT, + LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, apiName, errorNum, + input); pushEvent(event); - if (input.getApiName().equals( - ThreadPageLabels.THREAD_API_PTHREAD_JOIN)) { + if (input.getApiName().equals(ThreadPageLabels.THREAD_API_PTHREAD_JOIN)) { // join, delete warning - SummaryDataManager.getInstance().getWarningDataMaker().removeData( - event.getContents(), - ThreadPageLabels.THREAD_CHART_NAME_TID - + findCallerTid(pthreadId), - WarningCase.JOINABLE_LEAK.getType()); -// AnalyzerManager.getWarningChecker().removeData( -// ThreadPageLabels.THREAD_CHART_NAME_TID -// + (Long.toString(input -// .getOspThreadId())), -// WarningCase.JOINABLE_LEAK.getType()); + SummaryDataManager + .getInstance() + .getWarningDataMaker() + .removeData(event.getContents(), + ThreadPageLabels.THREAD_CHART_NAME_TID + findCallerTid(pthreadId), + WarningCase.JOINABLE_LEAK.getType()); + // AnalyzerManager.getWarningChecker().removeData( + // ThreadPageLabels.THREAD_CHART_NAME_TID + // + (Long.toString(input + // .getOspThreadId())), + // WarningCase.JOINABLE_LEAK.getType()); } break; case LogCenterConstants.THREAD_API_TYPE_INTERNAL_STOP: - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_EVENT, + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_EVENT, LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, ThreadPageLabels.THREAD_CHART_ITEM_EXITED, errorNum, input); event.setCallID(pthreadId); pushEvent(event); pushCallEvent(event); - + if (true == isJoinableThread(tid)) { // warningData -// WarningData wData = new WarningData( -// WarningCase.JOINABLE_LEAK.getType(), input, -// ThreadPageLabels.THREAD_CHART_NAME_TID + tid); -// AnalyzerManager.getWarningChecker().getWarningData().add(wData); - SummaryDataManager.getInstance().getWarningDataMaker().add( - input, ThreadPageLabels.THREAD_CHART_NAME_TID + tid, - WarningCase.JOINABLE_LEAK.getType()); - } - //FIXME add code for remove waning case + // WarningData wData = new WarningData( + // WarningCase.JOINABLE_LEAK.getType(), input, + // ThreadPageLabels.THREAD_CHART_NAME_TID + tid); + // AnalyzerManager.getWarningChecker().getWarningData().add(wData); + SummaryDataManager + .getInstance() + .getWarningDataMaker() + .add(input, ThreadPageLabels.THREAD_CHART_NAME_TID + tid, + WarningCase.JOINABLE_LEAK.getType()); + } + // FIXME add code for remove waning case break; case LogCenterConstants.THREAD_API_TYPE_INTERNAL_START: Integer threadAttrTypeInt = threadAttrMap.get(pthreadId); String threadAttrType; int funcID; - + if (null != threadAttrTypeInt) { threadAttrType = getAttrTypeByTypeInt(threadAttrTypeInt); } else { threadAttrType = ThreadPageLabels.THREAD_ATTR_TYPE_JOINABLE; } // get thread function id for this pthread - funcID = SymbolManager.getFuncId(null, threadFuncMap.get(pthreadId), - input.getPid(), input.getTime()); - - ThreadPageThreadData data = new ThreadPageThreadData( - ThreadPageThreadData.TYPE_PTHREAD, pid, tid, - threadAttrType, funcID); + funcID = SymbolManager.getFuncId(null, threadFuncMap.get(pthreadId), input.getPid(), + input.getTime()); + + ThreadPageThreadData data = new ThreadPageThreadData(ThreadPageThreadData.TYPE_PTHREAD, + pid, tid, threadAttrType, funcID); pushRow(data); - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_EVENT, + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_EVENT, LogCenterConstants.THREAD_TYPE_PTHREAD, apiType, time, tid, ThreadPageLabels.THREAD_CHART_ITEM_CREATED, errorNum, input); pushEvent(event); @@ -644,7 +615,7 @@ public class ThreadPageThreadDataManager { private void parseTIZEN(ThreadData input) { long time = input.getTime(); - String pid = Integer.toString(input.getPid()); + String pid = Integer.toString(input.getPid()); String tid = Integer.toString(input.getTid()); int apiType = input.getApiType(); String apiName = input.getApiName(); @@ -653,28 +624,26 @@ public class ThreadPageThreadDataManager { ThreadPageThreadData data; ThreadPageThreadDataEvent event; long errorNum = input.getErrno(); - + if (errorNum != 0) { SummaryDataManager.getInstance().getFailedApiDataMaker().makeData(input); } - + switch (apiType) { case LogCenterConstants.THREAD_API_TYPE_NEW: case LogCenterConstants.THREAD_API_TYPE_STOP: case LogCenterConstants.THREAD_API_TYPE_EXIT: case LogCenterConstants.THREAD_API_TYPE_WAIT_START: case LogCenterConstants.THREAD_API_TYPE_OTHER: - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_API, - LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, - apiName, errorNum, input); + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_API, + LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, apiName, errorNum, + input); pushEvent(event); break; case LogCenterConstants.THREAD_API_TYPE_START: - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_API, - LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, - apiName, errorNum, input); + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_API, + LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, apiName, errorNum, + input); event.setCallID(callID); data = findCallQueue(callID); @@ -686,28 +655,28 @@ public class ThreadPageThreadDataManager { pushCallEvent(event); break; case LogCenterConstants.THREAD_API_TYPE_WAIT_END: - if (input.getApiName().equals( - ThreadPageLabels.THREAD_API_TIZEN_JOIN)) { - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_EVENT, - LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, - tid, apiName, errorNum, input); + if (input.getApiName().equals(ThreadPageLabels.THREAD_API_TIZEN_JOIN)) { + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_EVENT, + LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, apiName, + errorNum, input); pushEvent(event); // join, delete warning -// AnalyzerManager.getWarningChecker().removeData( -// ThreadPageLabels.THREAD_CHART_NAME_TID -// + findCallerTid(Long.toString(input -// .getOspThreadId())), -// WarningCase.JOINABLE_LEAK.getType()); - SummaryDataManager.getInstance().getWarningDataMaker().removeData( - event.getContents(), ThreadPageLabels.THREAD_CHART_NAME_TID + findCallerTid(callID), - WarningCase.JOINABLE_LEAK.getType()); + // AnalyzerManager.getWarningChecker().removeData( + // ThreadPageLabels.THREAD_CHART_NAME_TID + // + findCallerTid(Long.toString(input + // .getOspThreadId())), + // WarningCase.JOINABLE_LEAK.getType()); + SummaryDataManager + .getInstance() + .getWarningDataMaker() + .removeData(event.getContents(), + ThreadPageLabels.THREAD_CHART_NAME_TID + findCallerTid(callID), + WarningCase.JOINABLE_LEAK.getType()); } // FIXME : do not shows sleep's wait end break; case LogCenterConstants.THREAD_API_TYPE_INTERNAL_STOP: - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_EVENT, + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_EVENT, LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, ThreadPageLabels.THREAD_CHART_ITEM_EXITED, errorNum, input); event.setCallID(Long.toString(input.getOspThreadId())); @@ -715,29 +684,29 @@ public class ThreadPageThreadDataManager { pushCallEvent(event); if (true == isJoinableThread(tid)) { // warningData -// WarningData wData = new WarningData( -// WarningCase.JOINABLE_LEAK.getType(), -// event.getContents(), -// ThreadPageLabels.THREAD_CHART_NAME_TID + tid); -// AnalyzerManager.getWarningChecker().getWarningData().add(wData); - SummaryDataManager.getInstance().getWarningDataMaker().add( - event.getContents(), ThreadPageLabels.THREAD_CHART_NAME_TID + tid, - WarningCase.JOINABLE_LEAK.getType()); + // WarningData wData = new WarningData( + // WarningCase.JOINABLE_LEAK.getType(), + // event.getContents(), + // ThreadPageLabels.THREAD_CHART_NAME_TID + tid); + // AnalyzerManager.getWarningChecker().getWarningData().add(wData); + SummaryDataManager + .getInstance() + .getWarningDataMaker() + .add(event.getContents(), ThreadPageLabels.THREAD_CHART_NAME_TID + tid, + WarningCase.JOINABLE_LEAK.getType()); } break; case LogCenterConstants.THREAD_API_TYPE_INTERNAL_START: - data = new ThreadPageThreadData( - ThreadPageThreadData.TYPE_TIZEN, pid, tid, + data = new ThreadPageThreadData(ThreadPageThreadData.TYPE_TIZEN, pid, tid, ThreadPageLabels.THREAD_ATTR_TYPE_JOINABLE, -1); // TIZEN thread includes the internal thread if ((className = checkCalledThread(callID)) != null) { - data.setThreadClassName(className); - pushRow(data); + data.setThreadClassName(className); + pushRow(data); } else { pushCallRow(data); } - event = new ThreadPageThreadDataEvent( - ThreadPageThreadDataEvent.TYPE_EVENT, + event = new ThreadPageThreadDataEvent(ThreadPageThreadDataEvent.TYPE_EVENT, LogCenterConstants.THREAD_TYPE_TIZEN, apiType, time, tid, ThreadPageLabels.THREAD_CHART_ITEM_CREATED, errorNum, input); pushEvent(event); @@ -774,8 +743,7 @@ public class ThreadPageThreadDataManager { } private void parseAPI(LogPackage logPack) { - List inputs = getLogsFromLogPackage(logPack, - DataChannelConstants.MSG_PROBE_THREAD); + List inputs = getLogsFromLogPackage(logPack, DataChannelConstants.MSG_PROBE_THREAD); int size; if (null == inputs || 0 == (size = inputs.size())) { return; @@ -819,35 +787,31 @@ public class ThreadPageThreadDataManager { case LogCenterConstants.SYNC_TYPE_TIZEN_MUTEX: case LogCenterConstants.SYNC_TYPE_TIZEN_MONITOR: case LogCenterConstants.SYNC_TYPE_TIZEN_SEMAPHORE: - event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, - apiName, errorNum, input); + event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, apiName, errorNum, + input); pushSyncEvent(event); // parseTIZENSync(input, type); break; case LogCenterConstants.SYNC_TYPE_PTHREAD_MUTEX: case LogCenterConstants.SYNC_TYPE_PTHREAD_COND_VARIABLE: - if (apiName - .equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_INIT)) { - syncAttrMap.put(syncData.getArgs(), - ThreadPageSyncDataManager.PTHREAD_MUTEX_NORMAL); - } else if (apiName - .equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_SETTYPE)) { + if (apiName.equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_INIT)) { + syncAttrMap.put(syncData.getArgs(), ThreadPageSyncDataManager.PTHREAD_MUTEX_NORMAL); + } else if (apiName.equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_SETTYPE)) { checkMutexAttrType(syncData.getArgs()); } else { - if (apiName - .equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEX_INIT)) { + if (apiName.equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEX_INIT)) { checkMutexType(syncData.getArgs()); } - event = new ThreadPageSyncDataEvent(name, type, apiType, time, - tid, apiName, errorNum, input); + event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, apiName, + errorNum, input); pushSyncEvent(event); } break; case LogCenterConstants.SYNC_TYPE_PTHREAD_RWLOCK: case LogCenterConstants.SYNC_TYPE_PTHREAD_SPINLOCK: case LogCenterConstants.SYNC_TYPE_PTHREAD_BARRIER: - event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, - apiName, errorNum, input); + event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, apiName, errorNum, + input); pushSyncEvent(event); Logger.error("error : sync parse - type = " + type); break; @@ -858,8 +822,7 @@ public class ThreadPageThreadDataManager { } private void parseSync(LogPackage logPack) { - List inputs = getLogsFromLogPackage(logPack, - DataChannelConstants.MSG_PROBE_SYNC); + List inputs = getLogsFromLogPackage(logPack, DataChannelConstants.MSG_PROBE_SYNC); int size; if (null == inputs || 0 == (size = inputs.size())) { return; @@ -882,41 +845,37 @@ public class ThreadPageThreadDataManager { case LogCenterConstants.SYNC_TYPE_TIZEN_MUTEX: case LogCenterConstants.SYNC_TYPE_TIZEN_MONITOR: case LogCenterConstants.SYNC_TYPE_TIZEN_SEMAPHORE: - event = new ThreadPageSyncDataEvent(name, type, apiType, time, - tid, apiName, errorNum, input); + event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, apiName, + errorNum, input); pushSyncEvent(event); // parseTIZENSync(input, type); break; case LogCenterConstants.SYNC_TYPE_PTHREAD_MUTEX: case LogCenterConstants.SYNC_TYPE_PTHREAD_COND_VARIABLE: - if (apiName - .equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_INIT)) { - syncAttrMap.put(input.getArgs(), - ThreadPageSyncDataManager.PTHREAD_MUTEX_NORMAL); - } else if (apiName - .equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_SETTYPE)) { + if (apiName.equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_INIT)) { + syncAttrMap + .put(input.getArgs(), ThreadPageSyncDataManager.PTHREAD_MUTEX_NORMAL); + } else if (apiName.equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEXATTR_SETTYPE)) { checkMutexAttrType(input.getArgs()); } else { - if (apiName - .equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEX_INIT)) { + if (apiName.equals(ThreadPageLabels.SYNC_API_PTHREAD_MUTEX_INIT)) { checkMutexType(input.getArgs()); } - event = new ThreadPageSyncDataEvent(name, type, apiType, - time, tid, apiName, errorNum, input); + event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, apiName, + errorNum, input); pushSyncEvent(event); } break; case LogCenterConstants.SYNC_TYPE_PTHREAD_RWLOCK: case LogCenterConstants.SYNC_TYPE_PTHREAD_SPINLOCK: case LogCenterConstants.SYNC_TYPE_PTHREAD_BARRIER: - event = new ThreadPageSyncDataEvent(name, type, apiType, time, - tid, apiName, errorNum, input); + event = new ThreadPageSyncDataEvent(name, type, apiType, time, tid, apiName, + errorNum, input); pushSyncEvent(event); Logger.debug("sync parse - type = " + type); break; default: - Logger.error("sync parse unknown - type = " - + type); + Logger.error("sync parse unknown - type = " + type); } } } @@ -927,8 +886,9 @@ public class ThreadPageThreadDataManager { parseSync(logPack); hasUpdate = true; } - // when INTERNAL_START log comes after START log, - // this method finds matching START log (for TIZEN thread only) + + // when INTERNAL_START log comes after START log, + // this method finds matching START log (for TIZEN thread only) // return class name from the START log private String checkCalledThread(String callId) { if (null == callId) { @@ -984,8 +944,7 @@ public class ThreadPageThreadDataManager { return null; } - private boolean isJoinableThreadFromQueue(List queue, - String tid) { + private boolean isJoinableThreadFromQueue(List queue, String tid) { int size; size = queue.size(); for (int i = 0; i < size; i++) { @@ -1034,9 +993,11 @@ public class ThreadPageThreadDataManager { threadAttrMap.put(pthreadId, attrType); } } + // extract function address from arguments of thread create function, - // (e.g. int pthread_create(pthread_t *, const pthread_attr_t *, void *(*)(void *), void *); ) - // put (pthreadId, function address) in the map + // (e.g. int pthread_create(pthread_t *, const pthread_attr_t *, void + // *(*)(void *), void *); ) + // put (pthreadId, function address) in the map private void checkThreadFunc(String args, String pthreadId) { String[] temp = args.split(","); if (temp.length != 4) { @@ -1045,10 +1006,10 @@ public class ThreadPageThreadDataManager { // 3rd argument is function address String strFuncAddr = temp[2].trim(); Long funcAddr = Long.decode(strFuncAddr); - + threadFuncMap.put(pthreadId, funcAddr); } - + private void checkMutexAttrType(String input) { String[] temp = input.split(","); if (temp.length != 2) { @@ -1120,8 +1081,7 @@ public class ThreadPageThreadDataManager { } else { if (threadType == LogCenterConstants.THREAD_TYPE_TIZEN) { String callerTizenID = callEvent.getCallID(); - String eventTizenID = Long.toString(tData - .getOspThreadId()); + String eventTizenID = Long.toString(tData.getOspThreadId()); if (eventTizenID.equals(callerTizenID)) { event.setCallerTid(callEvent.getTid()); callEventQueue.remove(i); @@ -1129,8 +1089,7 @@ public class ThreadPageThreadDataManager { } } else { String callerPthreadID = callEvent.getCallID(); - String eventPthreadID = Long.toString(tData - .getPThreadId()); + String eventPthreadID = Long.toString(tData.getPThreadId()); if (eventPthreadID.equals(callerPthreadID)) { event.setCallerTid(callEvent.getTid()); callEventQueue.remove(i); @@ -1156,23 +1115,26 @@ public class ThreadPageThreadDataManager { } else { if (threadType == LogCenterConstants.THREAD_TYPE_TIZEN) { String callerTizenID = callEvent.getCallID(); - String eventTizenID = Long.toString(tData - .getOspThreadId()); + String eventTizenID = Long.toString(tData.getOspThreadId()); if (eventTizenID.equals(callerTizenID)) { event.setCallerTid(callEvent.getTid()); if (null == callEvent.getChartItem()) { callEvent.setCallerTid(event.getTid()); } else { // join, delete warning - SummaryDataManager.getInstance().getWarningDataMaker().removeData( - event.getContents(), ThreadPageLabels.THREAD_CHART_NAME_TID + callEvent.getTid(), - WarningCase.JOINABLE_LEAK.getType()); -// AnalyzerManager.getWarningChecker().removeData( -// ThreadPageLabels.THREAD_CHART_NAME_TID -// + callEvent.getTid(), -// WarningCase.JOINABLE_LEAK.getType()); - callEvent.getChartItem().setY( - DAChartSeriesItem.SERIES_ARROW_RIGHT); + SummaryDataManager + .getInstance() + .getWarningDataMaker() + .removeData( + event.getContents(), + ThreadPageLabels.THREAD_CHART_NAME_TID + + callEvent.getTid(), + WarningCase.JOINABLE_LEAK.getType()); + // AnalyzerManager.getWarningChecker().removeData( + // ThreadPageLabels.THREAD_CHART_NAME_TID + // + callEvent.getTid(), + // WarningCase.JOINABLE_LEAK.getType()); + callEvent.getChartItem().setY(DAChartSeriesItem.SERIES_ARROW_RIGHT); callEvent.getChartItem().setBarWidth( Double.parseDouble(event.getTid())); } @@ -1181,15 +1143,13 @@ public class ThreadPageThreadDataManager { } } else { String callerPthreadID = callEvent.getCallID(); - String eventPthreadID = Long.toString(tData - .getPThreadId()); + String eventPthreadID = Long.toString(tData.getPThreadId()); if (eventPthreadID.equals(callerPthreadID)) { event.setCallerTid(callEvent.getTid()); if (null == callEvent.getChartItem()) { callEvent.setCallerTid(event.getTid()); } else { - callEvent.getChartItem().setY( - DAChartSeriesItem.SERIES_ARROW_RIGHT); + callEvent.getChartItem().setY(DAChartSeriesItem.SERIES_ARROW_RIGHT); callEvent.getChartItem().setBarWidth( Double.parseDouble(event.getTid())); } @@ -1218,7 +1178,7 @@ public class ThreadPageThreadDataManager { } private void chartFilteringByPid() { - if(null == board || null == board.getItemList()){ + if (null == board || null == board.getItemList()) { return; } int selectedPid = ToolbarArea.getInstance().getSelectedPid(); @@ -1236,44 +1196,23 @@ public class ThreadPageThreadDataManager { int parentSize = board.getItemList().getItemSize(); for (int i = 0; i < parentSize; i++) { DAChartBoardItem parentItem = board.getItemList().get(i); -/* - int childSize = parentItem.getChildItemList().getItemSize(); - int hidedCount = 0; - for (int j = 0; j < childSize; j++) { - DAChartBoardItem childItem = parentItem.getChildItemList() - .get(j); - int itemPid = getItemPid(childItem); - if (itemPid == selectedPid) { - parentItem.getChildItemList().showItem(j); - board.showItem(i); - } else if (selectedPid == 0) { - parentItem.getChildItemList().showItem(j); - board.showItem(i); - } else if (itemPid == -1) { - board.showItem(i); - } else { - parentItem.getChildItemList().hideItem(j); - hidedCount++; - } - } - if (childSize == 0) { - int itemPid = getItemPid(parentItem); - if (itemPid == selectedPid) { - board.showItem(i); - } else if (selectedPid == 0) { - board.showItem(i); - } else if (itemPid == -1) { - board.showItem(i); - } else { - board.hideItem(i); - hidedCount++; - } - } else { - if (childSize == hidedCount) { - board.hideItem(i); - } - } -*/ + /* + * int childSize = parentItem.getChildItemList().getItemSize(); + * int hidedCount = 0; for (int j = 0; j < childSize; j++) { + * DAChartBoardItem childItem = parentItem.getChildItemList() + * .get(j); int itemPid = getItemPid(childItem); if (itemPid == + * selectedPid) { parentItem.getChildItemList().showItem(j); + * board.showItem(i); } else if (selectedPid == 0) { + * parentItem.getChildItemList().showItem(j); board.showItem(i); + * } else if (itemPid == -1) { board.showItem(i); } else { + * parentItem.getChildItemList().hideItem(j); hidedCount++; } } + * if (childSize == 0) { int itemPid = getItemPid(parentItem); + * if (itemPid == selectedPid) { board.showItem(i); } else if + * (selectedPid == 0) { board.showItem(i); } else if (itemPid == + * -1) { board.showItem(i); } else { board.hideItem(i); + * hidedCount++; } } else { if (childSize == hidedCount) { + * board.hideItem(i); } } + */ int itemPid = getItemPid(parentItem); if (itemPid == selectedPid) { board.showItem(i); @@ -1283,7 +1222,7 @@ public class ThreadPageThreadDataManager { board.showItem(i); } else { board.hideItem(i); - } + } } } preSelectionPid = selectedPid; @@ -1297,20 +1236,19 @@ public class ThreadPageThreadDataManager { } return pid; } -// TODO: syncDataManager has same method : move this method to proper class + + // TODO: syncDataManager has same method : move this method to proper class private int getSortObject(DAChartBoardItem item) { Object sortObj = item.getSortObject(); if (sortObj instanceof Integer) { return (Integer) sortObj; } else { // should never go here - return -1; + return -1; } } - + public void checkUpdate() { - if (false == hasUpdate && - preSelectionPid == - ToolbarArea.getInstance().getSelectedPid()) { + if (false == hasUpdate && preSelectionPid == ToolbarArea.getInstance().getSelectedPid()) { return; } else { hasUpdate = false; @@ -1323,8 +1261,7 @@ public class ThreadPageThreadDataManager { data = rowsQueue.get(0); // sort chart items at each insertion createBoardItem(data, new Comparator() { - public int compare(DAChartBoardItem item1, - DAChartBoardItem item2) { + public int compare(DAChartBoardItem item1, DAChartBoardItem item2) { return getSortObject(item1) - getSortObject(item2); } }); @@ -1334,7 +1271,7 @@ public class ThreadPageThreadDataManager { } chartFilteringByPid(); - + size = eventQueue.size(); if (size > 0) { ThreadPageThreadData data; @@ -1359,7 +1296,7 @@ public class ThreadPageThreadDataManager { } } } - + /* load ThreadPageSyncData when open trace */ size = syncQueue.size(); if (size > 0) { @@ -1370,13 +1307,13 @@ public class ThreadPageThreadDataManager { data = findParentData(sync.getTid()); if (null != data) { createSyncBoardItem(data, sync); - data.pushSync(sync); + data.pushSync(sync); data.setHasUpdate(); } syncQueue.remove(0); - } + } } - + size = syncEventQueue.size(); if (size > 0) { ThreadPageThreadData data; @@ -1396,16 +1333,15 @@ public class ThreadPageThreadDataManager { syncAttrType = ThreadPageSyncDataManager .getAttrTypeByTypeInt(syncAttrTypeInt); } else { - syncAttrType = ThreadPageSyncDataManager - .getAttrTypeString(event); + syncAttrType = ThreadPageSyncDataManager.getAttrTypeString(event); } - sync = new ThreadPageSyncData(event.getType(), syncVal, pid, + sync = new ThreadPageSyncData(event.getType(), syncVal, pid, event.getTid(), syncAttrType, ThreadPageSyncData.THREAD_CHILD); sync.setParentID(data.getThreadDataID()); // save to DB SyncDataInserter.pushSyncData(sync); - SyncDataInserter.startThread(); + SyncDataInserter.startThread(); createSyncBoardItem(data, sync); data.pushSync(sync); }