From: jy.exe.lee Date: Wed, 11 Jul 2012 11:56:10 +0000 (+0900) Subject: [Title] DAButton fixed X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7cf679ea3b66a50a1374ee6fe7101bd8b7c350bf;p=sdk%2Ftools%2Fdynamic-analyzer.git [Title] DAButton fixed [Type] bug fix [Module] DynamicAnalyzer [Priority] normal [CQ#] [Redmine#] [Problem] [Cause] [Solution] [TestCase] --- diff --git a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomButton.java b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomButton.java index 000884b..3e0b088 100644 --- a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomButton.java +++ b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomButton.java @@ -159,53 +159,65 @@ public class DACustomButton extends Canvas { return this.enabled; } - public void setHoverImage(Image image) { - attr.setImage(STATE_HOVER, image); - } - - public void setNormalImage(Image image) { - attr.setImage(STATE_NORMAL, image); - } - - public void setPushImage(Image image) { - attr.setImage(STATE_PUSH, image); - } - - public void setDisableImage(Image image) { - attr.setImage(STATE_DISABLE, image); - } - - public Image getHoverImage() { - return attr.getImage(STATE_HOVER); - } - - public Image getNormalImage() { - return attr.getImage(STATE_NORMAL); - } - - public Image getPushImage() { - return attr.getImage(STATE_PUSH); - } - - public Image getDisableImage(Image image) { - return attr.getImage(STATE_DISABLE); - } - - public void setHoverColor(Color color) { - attr.setColor(STATE_HOVER, color); - } - - public void setNormalColor(Color color) { - attr.setColor(STATE_NORMAL, color); - } - - public void setPushColor(Color color) { - attr.setColor(STATE_PUSH, color); - } - - public void setDisableColor(Color color) { - attr.setColor(STATE_DISABLE, color); - } + public void setImage(int state, Image image) { + attr.setImage(state, image); + } + + // public void setHoverImage(Image image) { + // attr.setImage(STATE_HOVER, image); + // } + // + // public void setNormalImage(Image image) { + // attr.setImage(STATE_NORMAL, image); + // } + // + // public void setPushImage(Image image) { + // attr.setImage(STATE_PUSH, image); + // } + // + // public void setDisableImage(Image image) { + // attr.setImage(STATE_DISABLE, image); + // } + + public Image getImage(int state) { + return attr.getImage(state); + } + + // public Image getHoverImage() { + // return attr.getImage(STATE_HOVER); + // } + // + // public Image getNormalImage() { + // return attr.getImage(STATE_NORMAL); + // } + // + // public Image getPushImage() { + // return attr.getImage(STATE_PUSH); + // } + // + // public Image getDisableImage(Image image) { + // return attr.getImage(STATE_DISABLE); + // } + + public void setColor(int state, Color color) { + attr.setColor(state, color); + } + + // public void setHoverColor(Color color) { + // attr.setColor(STATE_HOVER, color); + // } + // + // public void setNormalColor(Color color) { + // attr.setColor(STATE_NORMAL, color); + // } + // + // public void setPushColor(Color color) { + // attr.setColor(STATE_PUSH, color); + // } + // + // public void setDisableColor(Color color) { + // attr.setColor(STATE_DISABLE, color); + // } public void setVisible(boolean visible) { setVisible(visible); @@ -256,4 +268,21 @@ public class DACustomButton extends Canvas { attr.setColor(7, disableEnd); attr.setDrawType(TYPE_GRADATION); } + + public void setGradationColor(int state, Color start, Color end) { + attr.setColor(state * 2, start); + attr.setColor(state * 2 + 1, end); + } + + public void setFontColors(Color normal, Color push, Color hover, + Color disable) { + attr.setFontColor(STATE_NORMAL, normal); + attr.setFontColor(STATE_PUSH, push); + attr.setFontColor(STATE_HOVER, hover); + attr.setFontColor(STATE_DISABLE, disable); + } + + public void setFontColor(int state, Color color) { + attr.setFontColor(state, color); + } } diff --git a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomWidgetAttribute.java b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomWidgetAttribute.java index 0899ee6..f5f244d 100644 --- a/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomWidgetAttribute.java +++ b/org.tizen.dynamicanalyzer.widgets/src/org/tizen/dynamicanalyzer/widgets/button/DACustomWidgetAttribute.java @@ -18,6 +18,7 @@ public class DACustomWidgetAttribute { private List images = new ArrayList(); private List colors = new ArrayList(); + private List fontColors = new ArrayList(); private boolean enabled; public DACustomWidgetAttribute() { @@ -27,6 +28,7 @@ public class DACustomWidgetAttribute { for (int i = 0; i < MAX_SIZE; i++) { images.add(null); colors.add(null); + fontColors.add(null); } } @@ -100,4 +102,11 @@ public class DACustomWidgetAttribute { colors.set(state, color); } + public void setFontColor(int state, Color color) { + fontColors.set(state, color); + } + + public Color getFontColor(int state) { + return fontColors.get(state); + } } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/AnalyzerManager.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/AnalyzerManager.java index 26c6a8b..512424c 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/AnalyzerManager.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/AnalyzerManager.java @@ -42,7 +42,6 @@ import org.tizen.dynamicanalyzer.model.LeakCheckList; import org.tizen.dynamicanalyzer.model.LogCenter; import org.tizen.dynamicanalyzer.model.Project; import org.tizen.dynamicanalyzer.theme.DAThemeBlack; -import org.tizen.dynamicanalyzer.theme.DAThemeWhite; import org.tizen.dynamicanalyzer.threads.InsertLogThread; import org.tizen.dynamicanalyzer.threads.OpenTraceInputThread; import org.tizen.dynamicanalyzer.threads.RecordStartStopThread; @@ -102,8 +101,8 @@ public class AnalyzerManager { public static DATheme getTheme() { if (null == theme) { -// theme = DAThemeBlack.getInstance(); - theme = DAThemeWhite.getInstance(); + theme = DAThemeBlack.getInstance(); + // theme = DAThemeWhite.getInstance(); } return theme; } @@ -111,10 +110,10 @@ public class AnalyzerManager { public static void setTheme(DATheme t) { theme = t; ColorResources.initColors(); - - //TODO: redraw all widgets! -// AnalyzerUtil.getWorkbenchWindow().getWorkbench() -// .getActiveWorkbenchWindow(); + + // TODO: redraw all widgets! + // AnalyzerUtil.getWorkbenchWindow().getWorkbench() + // .getActiveWorkbenchWindow(); } public static boolean hasSampleThread() { diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ColorResources.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ColorResources.java index 7b8ae00..71e3748 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ColorResources.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ColorResources.java @@ -120,6 +120,16 @@ public class ColorResources { public static Color OPEN_TRACE_TABLE_LINE2_HOVER = getColor("open_trace_table_line2_hover"); //$NON-NLS-1$ public static Color OPEN_TRACE_TABLE2_FONT_COLOR = getColor("open_trace_table2_font_color"); //$NON-NLS-1$ + /** tab widget colors **/ + public static Color TAB_SELECTED_START_COLOR = getColor("tab_selected_start_color"); //$NON-NLS-1$ + public static Color TAB_SELECTED_END_COLOR = getColor("tab_selected_end_color"); //$NON-NLS-1$ + public static Color TAB_NORMAL_COLOR = getColor("tab_selected_end_color"); //$NON-NLS-1$ + public static Color TAB_HOVER_COLOR = getColor("tab_selected_end_color"); //$NON-NLS-1$ + public static Color TAB_PUSH_COLOR = getColor("tab_selected_end_color"); //$NON-NLS-1$ + + public static Color TAB_NORMAL_FONT_COLOR = getColor("tab_normal_font_color"); //$NON-NLS-1$ + public static Color TAB_OTHER_FONT_COLOR = getColor("tab_other_font_color"); //$NON-NLS-1$ + /** snapshot viewer colors **/ public static Color SNAPSHOT_VIEWER_BORDER = getColor("snapshot_viewer_border"); //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeBlack.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeBlack.java index 50c96be..1983bff 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeBlack.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeBlack.java @@ -28,7 +28,7 @@ public class DAThemeBlack extends DATheme { /** device and application combo specific colors start **/ setColor("device_application_enable_font", new RGB(255, 255, 255)); //$NON-NLS-1$ - + setColor("device_application_disable_font", new RGB(128, 128, 128)); //$NON-NLS-1$ setColor("device_application_popup_outer_1", new RGB(31, 31, 31)); //$NON-NLS-1$ @@ -58,7 +58,7 @@ public class DAThemeBlack extends DATheme { setColor("device_application_button_hover_end", new RGB(0, 151, 201)); //$NON-NLS-1$ setColor("device_application_button_disable_start", new RGB(51, 52, 53)); //$NON-NLS-1$ setColor("device_application_button_disable_end", new RGB(0, 0, 0)); //$NON-NLS-1$ - + setColor("device_application_button_outline", new RGB(0, 0, 0)); /** normal view layout colors start **/ @@ -113,6 +113,16 @@ public class DAThemeBlack extends DATheme { setColor("open_trace_table2_font_color", new RGB(255, 85, 57)); //$NON-NLS-1$ + /** tab widget colors **/ + setColor("tab_selected_start_color", new RGB(128, 129, 130)); + setColor("tab_selected_end_color", new RGB(79, 78, 80)); + setColor("tab_normal_color", new RGB(51, 52, 53)); + setColor("tab_hover_color", new RGB(63, 72, 78)); + setColor("tab_push_color", new RGB(36, 41, 45)); + + setColor("tab_normal_font_color", new RGB(140, 140, 140)); + setColor("tab_other_font_color", new RGB(255, 255, 255)); + /** snapshot viewer colors **/ setColor("snapshot_viewer_border", new RGB(49, 104, 127)); //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java index f66f3af..576fe20 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/theme/DAThemeWhite.java @@ -116,6 +116,16 @@ public class DAThemeWhite extends DATheme { setColor("open_trace_table2_font_color", new RGB(255, 85, 57)); //$NON-NLS-1$ + /** tab widget colors **/ + setColor("tab_selected_start_color", new RGB(128, 129, 130)); + setColor("tab_selected_end_color", new RGB(79, 78, 80)); + setColor("tab_normal_color", new RGB(51, 52, 53)); + setColor("tab_hover_color", new RGB(63, 72, 78)); + setColor("tab_push_color", new RGB(36, 41, 45)); + + setColor("tab_normal_font_color", new RGB(140, 140, 140)); + setColor("tab_other_font_color", new RGB(255, 255, 255)); + /** snapshot viewer colors **/ setColor("snapshot_viewer_border", new RGB(49, 104, 127)); //$NON-NLS-1$ diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/renderers/ComboButtonRenderer.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/renderers/ComboButtonRenderer.java index d542b73..a43f16c 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/renderers/ComboButtonRenderer.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/renderers/ComboButtonRenderer.java @@ -28,7 +28,7 @@ public class ComboButtonRenderer extends DACustomButtonDefaultRenderer { } gc.drawImage(image, rect.x, rect.y); - drawButtonText(gc, rect, attr); + drawButtonText(gc, rect, state, attr); } else if (attr.getDrawType() == DACustomButton.TYPE_COLOR || attr.getDrawType() == DACustomButton.TYPE_GRADATION) { drawButton(gc, rect, state, attr); @@ -58,7 +58,7 @@ public class ComboButtonRenderer extends DACustomButtonDefaultRenderer { Rectangle r = new Rectangle(0, 0, rect.width - 1, rect.height - 1); if (attr.getButtonImage() == null) { - drawButtonText(gc, r, attr); + drawButtonText(gc, r, state, attr); } Color c = gc.getForeground(); // gc.setForeground(ColorResources.DEVICE_APPLICATION_BUTTON_OUTLINE); @@ -87,7 +87,7 @@ public class ComboButtonRenderer extends DACustomButtonDefaultRenderer { } } - protected void drawButtonText(GC gc, Rectangle rect, + protected void drawButtonText(GC gc, Rectangle rect, int state, DACustomWidgetAttribute attr) { String s = null; Font f = null; @@ -113,6 +113,11 @@ public class ComboButtonRenderer extends DACustomButtonDefaultRenderer { x = p.x; y = p.y; } + Color fontColor = attr.getFontColor(state); + if (fontColor == null) { + fontColor = ColorResources.WHITE; + } + gc.setForeground(fontColor); gc.drawString(s, x + offset, y, true); } } diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/views/CoolbarArea.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/views/CoolbarArea.java index 8e3f89c..af11d8c 100755 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/views/CoolbarArea.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/views/CoolbarArea.java @@ -780,7 +780,8 @@ public class CoolbarArea { if (state.equals(RecordStateSourceProvider.RECORD_READY)) { AnalyzerUtil .setRecordState(RecordStateSourceProvider.RECORD_RECORDING); - button.setHoverImage(stopHoverImage); + button.setImage(DACustomButton.STATE_HOVER, stopHoverImage); + // button.setHoverImage(stopHoverImage); setStartToolbarState(true); // timerClock.start(); setToolbarEnablement(false); @@ -788,7 +789,8 @@ public class CoolbarArea { } else { AnalyzerUtil .setRecordState(RecordStateSourceProvider.RECORD_READY); - button.setHoverImage(startHoverImage); + // button.setHoverImage(startHoverImage); + button.setImage(DACustomButton.STATE_HOVER, startHoverImage); setStartToolbarState(false); // timerClock.stop(); setToolbarEnablement(true); @@ -838,7 +840,9 @@ public class CoolbarArea { if (AnalyzerUtil.executeCommand(ReplayTraceHandler.ID) != ReplayTraceHandler.FAILED) { AnalyzerUtil .setRecordState(RecordStateSourceProvider.RECORD_RECORDING); - startButton.setNormalImage(stopImage); + // startButton.setNormalImage(stopImage); + startButton.setImage(DACustomButton.STATE_NORMAL, + stopImage); startButton.setToolTipText(AnalyzerLabels.STOP_TRACE); setStartToolbarState(true); timerClock.start(); @@ -1616,14 +1620,17 @@ public class CoolbarArea { if (isMaximized) { // maxButton.setImage(restoreImage); - maxButton.setNormalImage(restoreImage); - maxButton.setPushImage(restorePushImage); - maxButton.setHoverImage(restoreHoverImage); + maxButton.setImages(restoreImage, restorePushImage, + restoreHoverImage, null); + // maxButton.setNormalImage(restoreImage); + // maxButton.setPushImage(restorePushImage); + // maxButton.setHoverImage(restoreHoverImage); } else { // maxButton.setImage(maxImage); - maxButton.setNormalImage(maxImage); - maxButton.setPushImage(maxPushImage); - maxButton.setHoverImage(maxHoverImage); + maxButton.setImages(maxImage, maxPushImage, maxHoverImage, null); + // maxButton.setNormalImage(maxImage); + // maxButton.setPushImage(maxPushImage); + // maxButton.setHoverImage(maxHoverImage); } } @@ -1690,13 +1697,17 @@ public class CoolbarArea { private void setStartToolbarState(boolean isStarted) { if (isStarted) { - startButton.setNormalImage(stopImage); - startButton.setPushImage(stopPushImage); - startButton.setHoverImage(stopHoverImage); + startButton.setImages(stopImage, stopPushImage, stopHoverImage, + startDisableImage); + // startButton.setNormalImage(stopImage); + // startButton.setPushImage(stopPushImage); + // startButton.setHoverImage(stopHoverImage); } else { - startButton.setNormalImage(startImage); - startButton.setPushImage(startPushImage); - startButton.setHoverImage(startHoverImage); + startButton.setImages(startImage, startPushImage, startHoverImage, + startDisableImage); + // startButton.setNormalImage(startImage); + // startButton.setPushImage(startPushImage); + // startButton.setHoverImage(startHoverImage); } } @@ -1730,7 +1741,8 @@ public class CoolbarArea { public void stopTrace() { AnalyzerUtil.setRecordState(RecordStateSourceProvider.RECORD_READY); - startButton.setNormalImage(startImage); + // startButton.setNormalImage(startImage); + startButton.setImage(DACustomButton.STATE_NORMAL, startImage); startButton.setToolTipText(AnalyzerLabels.START_TRACE); setStartToolbarState(false); setToolbarEnablement(true); diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/widgets/DATabComposite.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/widgets/DATabComposite.java index 398a1d7..e7777da 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/widgets/DATabComposite.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/widgets/DATabComposite.java @@ -15,6 +15,7 @@ import org.tizen.dynamicanalyzer.constants.DesignConstants; import org.tizen.dynamicanalyzer.model.DASelectionData; import org.tizen.dynamicanalyzer.model.DAView; import org.tizen.dynamicanalyzer.model.LogPackage; +import org.tizen.dynamicanalyzer.ui.renderers.ComboButtonRenderer; import org.tizen.dynamicanalyzer.ui.views.base.ViewAction; import org.tizen.dynamicanalyzer.widgets.button.DACustomButton; import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener; @@ -62,8 +63,21 @@ public class DATabComposite extends DAView { // final DAButton tabButton = new DAButton(tabComposite, // ImageResources.TAB, ImageResources.TAB_PUSH, // ImageResources.TAB_HOVER, ImageResources.TAB_DISABLE); - final DACustomButton tabButton = new DACustomButton(tabComposite, - SWT.NONE); + // final DACustomButton tabButton = new DACustomButton(tabComposite, + // SWT.NONE); + final DACustomButton tabButton = new DACustomButton( + tabComposite, + ColorResources.TAB_NORMAL_COLOR, + ColorResources.TAB_NORMAL_COLOR, + ColorResources.TAB_PUSH_COLOR, ColorResources.TAB_PUSH_COLOR, + ColorResources.TAB_HOVER_COLOR, ColorResources.TAB_HOVER_COLOR, + ColorResources.TAB_SELECTED_START_COLOR, + ColorResources.TAB_SELECTED_END_COLOR); + tabButton.setFontColors(ColorResources.TAB_NORMAL_FONT_COLOR, + ColorResources.TAB_OTHER_FONT_COLOR, + ColorResources.TAB_OTHER_FONT_COLOR, + ColorResources.TAB_OTHER_FONT_COLOR); + tabButton.setRenderer(new ComboButtonRenderer()); tabButton.setEnabled(true); tabButton.setFont(FontResources.TAB_BUTTON_FONT); tabButton.setForeground(ColorResources.WHITE); @@ -101,7 +115,12 @@ public class DATabComposite extends DAView { if (getTabChildren().size() == 1) { stackLayout.topControl = child; contentsComposite.layout(); - tabButton.setDisableColor(ColorResources.CPU_CIRCULAR_GRAPH_COLOR); + // tabButton.setColor(DACustomButton.STATE_DISABLE, + // ColorResources.CPU_CIRCULAR_GRAPH_COLOR); + tabButton.setGradationColor(DACustomButton.STATE_DISABLE, + ColorResources.TAB_SELECTED_START_COLOR, + ColorResources.TAB_SELECTED_END_COLOR); + // tabButton.setDisableColor(ColorResources.CPU_CIRCULAR_GRAPH_COLOR); tabButton.setEnabled(false); } } @@ -122,7 +141,12 @@ public class DATabComposite extends DAView { } if (sample.equals(button)) { data.width = LONG_TAB_WIDTH; - button.setDisableColor(ColorResources.CPU_CIRCULAR_GRAPH_COLOR); + // button.setColor(DACustomButton.STATE_DISABLE, + // ColorResources.CPU_CIRCULAR_GRAPH_COLOR); + button.setGradationColor(DACustomButton.STATE_DISABLE, + ColorResources.TAB_SELECTED_START_COLOR, + ColorResources.TAB_SELECTED_END_COLOR); + // button.setDisableColor(ColorResources.CPU_CIRCULAR_GRAPH_COLOR); button.setEnabled(false); } else { data.width = SHORT_TAB_WIDTH;