public static Color POPUP_MENU_OUTLINE_STORKE1 = getColor("popup_menu_outline_stroke1", new RGB(145, 145, 145)); //$NON-NLS-1$\r
public static Color POPUP_MENU_OUTLINE_STORKE2 = getColor("popup_menu_outline_stroke2", new RGB(255, 255, 255)); //$NON-NLS-1$\r
\r
- \r
+ /*** common button colors ***/\r
+ public static Color BUTTON_DISABLE_COLOR_START = getColor("button_disable_color_start", new RGB(206, 206, 206)); //$NON-NLS-1$\r
+ public static Color BUTTON_DISABLE_COLOR_END = getColor("button_disable_color_end", new RGB(163, 163, 163)); //$NON-NLS-1$\r
+ public static Color BUTTON_NORMAL_COLOR_START = getColor("button_normal_color_start", new RGB(240, 240, 240)); //$NON-NLS-1$\r
+ public static Color BUTTON_NORMAL_COLOR_END = getColor("button_normal_color_end", new RGB(163, 163, 163)); //$NON-NLS-1$\r
+ public static Color BUTTON_HOVER_COLOR_START = getColor("button_hover_color_start", new RGB(240, 240, 240)); //$NON-NLS-1$\r
+ public static Color BUTTON_HOVER_COLOR_END = getColor("button_hover_color_end", new RGB(163, 163, 163)); //$NON-NLS-1$\r
+ public static Color BUTTON_PUSH_COLOR_START = getColor("button_push_color_start", new RGB(163, 163, 163)); //$NON-NLS-1$\r
+ public static Color BUTTON_PUSH_COLOR_END = getColor("button_push_color_end", new RGB(240, 240, 240)); //$NON-NLS-1$\r
+\r
+ public static Color BUTTON_OUTLINE_NORMAL_IN_COLOR = getColor("button_outline_normal_in_color", new RGB(120, 120, 120)); //$NON-NLS-1$\r
+ public static Color BUTTON_OUTLINE_PUSH_IN_COLOR = getColor("button_outline_push_in_color", new RGB(120, 120, 120)); //$NON-NLS-1$\r
+ public static Color BUTTON_OUTLINE_HOVER_IN_COLOR = getColor("button_outline_hover_in_color", new RGB(120, 120, 120)); //$NON-NLS-1$\r
+ public static Color BUTTON_OUTLINE_DISABLE_IN_COLOR = getColor("button_outline_disable_in_color", new RGB(115, 115, 115)); //$NON-NLS-1$\r
+\r
+ public static Color BUTTON_OUTLINE_NORMAL_COLOR = getColor("button_outline_normal_color", new RGB(203, 230, 230)); //$NON-NLS-1$\r
+ public static Color BUTTON_OUTLINE_PUSH_COLOR = getColor("button_outline_push_color", new RGB(203, 203, 203)); //$NON-NLS-1$\r
+ public static Color BUTTON_OUTLINE_HOVER_COLOR = getColor("button_outline_hover_color", new RGB(50, 185, 231)); //$NON-NLS-1$\r
+ public static Color BUTTON_OUTLINE_DISABLE_COLOR = getColor("button_outline_disable_color", new RGB(115, 115, 115)); //$NON-NLS-1$\r
+\r
+ public static Color BUTTON_NORMAL_FONT_COLOR = getColor("button_normal_font_color", new RGB(0, 0, 0)); //$NON-NLS-1$\r
+ public static Color BUTTON_PUSH_FONT_COLOR = getColor("button_push_font_color", new RGB(91, 91, 91)); //$NON-NLS-1$\r
+ public static Color BUTTON_HOVER_FONT_COLOR = getColor("button_hover_font_color", new RGB(91, 91, 91)); //$NON-NLS-1$\r
+ public static Color BUTTON_DISABLE_FONT_COLOR = getColor("button_disable_font_color", new RGB(91, 91, 91)); //$NON-NLS-1$\r
+\r
//\r
// /** device and application combo specific colors start **/\r
// public static final Color DEVICE_APPLICATION_ENABLE = WHITE;\r
import org.eclipse.swt.widgets.Composite;
import org.tizen.dynamicanalyzer.widgets.DAWidgetConstants;
import org.tizen.dynamicanalyzer.widgets.animation.DAAnimationIcon;
+import org.tizen.dynamicanalyzer.widgets.button.DACustomButton;
+import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;
import org.tizen.dynamicanalyzer.widgets.helper.ColorResources;
import org.tizen.dynamicanalyzer.widgets.helper.FontResources;
import org.tizen.dynamicanalyzer.widgets.helper.ImageResources;
public class Progress extends Canvas {
public static final int PROGRESS_STYLE_BAR_ALONE = 0;
- public static final int PROGRESS_STYLE_ALL = 1;
+ public static final int PROGRESS_STYLE_DEFAULT = 1;
+ public static final int PROGRESS_STYLE_CANCEL = 2;
private List<Image> loadingImage = new ArrayList<Image>();
private DAAnimationIcon icon = null;
private int maxSize = 100;
private int value = 0;
+ private DACustomButton cancelButton = null;
+
private Color barStartColor = ColorResources.STOP_PROGRESS_BAR_START_COLOR;
private Color barEndColor = ColorResources.STOP_PROGRESS_BAR_END_COLOR;
private Color barStartBgColor = ColorResources.STOP_PROGRESS_BAR_BG_START_COLOR;
private Font progressLowerFont = FontResources.STOP_PROGRESS_FONT;
private Font progressUpperFont = FontResources.PROGRESS_FONT;
- private int style = PROGRESS_STYLE_ALL;
+ private int style = PROGRESS_STYLE_DEFAULT;
+
public Progress(Composite parent, int style) {
super(parent, style);
this.addPaintListener(progressPaintListener);
this.setLayout(new FormLayout());
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_01);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_02);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_03);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_04);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_05);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_06);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_07);
- loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_08);
-
- icon = new DAAnimationIcon(this, SWT.NONE, loadingImage);
- FormData data = new FormData();
- data.top = new FormAttachment(0, 11);
- data.left = new FormAttachment(0, 12);
- data.width = 24;
- data.height = 24;
- icon.setLayoutData(data);
- icon.start();
}
public Progress(Composite parent, int style, int progressStyle) {
this(parent, style);
this.style = progressStyle;
+ if (progressStyle == PROGRESS_STYLE_CANCEL) {
+ initCancelButton();
+ }
+
+ if (progressStyle == PROGRESS_STYLE_CANCEL
+ || progressStyle == PROGRESS_STYLE_DEFAULT) {
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_01);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_02);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_03);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_04);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_05);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_06);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_07);
+ loadingImage.add(ImageResources.STOP_PROGRESS_LOADING_08);
+
+ icon = new DAAnimationIcon(this, SWT.NONE, loadingImage);
+ FormData data = new FormData();
+ data.top = new FormAttachment(0, 11);
+ data.left = new FormAttachment(0, 12);
+ data.width = 24;
+ data.height = 24;
+ icon.setLayoutData(data);
+ icon.start();
+ }
}
public int getValue() {
setUpperText(Message);
}
+ public void setCancelButtonListener(
+ DACustomButtonClickEventListener listener) {
+ if (null != cancelButton) {
+ cancelButton.addClickListener(listener);
+ }
+ }
+
private PaintListener progressPaintListener = new PaintListener() {
@Override
canvas.setBackground(barBgColor);
Rectangle rect = canvas.getBounds();
- if (style == PROGRESS_STYLE_ALL) {
+ if (style == PROGRESS_STYLE_DEFAULT) {
// draw outline
e.gc.setForeground(dialogOutlineColor2);
e.gc.drawRectangle(rect);
e.gc.setForeground(barOutlineColor);
e.gc.drawRectangle(rect);
+ } else if (style == PROGRESS_STYLE_CANCEL) {
+ // draw outline
+ e.gc.setForeground(dialogOutlineColor2);
+ e.gc.drawRectangle(rect);
+ e.gc.setForeground(dialogOutlineColor1);
+ e.gc.drawRectangle(rect.x + 1, rect.y + 1, rect.width - 2,
+ rect.height - 2);
+
+ // draw upper text
+ Font prevFont = e.gc.getFont();
+ if (null != progressUpperFont) {
+ e.gc.setFont(progressUpperFont);
+ }
+ if (null != progressUpperFontColor) {
+ e.gc.setForeground(progressUpperFontColor);
+ }
+ e.gc.drawText(upperText, 41, 18);
+ e.gc.setFont(prevFont);
+
+ // draw bottom text
+ prevFont = e.gc.getFont();
+ if (null != progressLowerFont) {
+ e.gc.setFont(progressLowerFont);
+ }
+ if (null != progressLowerFontColor) {
+ e.gc.setForeground(progressLowerFontColor);
+ }
+ e.gc.drawText(bottomText, 12, 76);
+ e.gc.setFont(prevFont);
+
+ // draw progress bar
+ Rectangle barRect = new Rectangle(12, 45, rect.width - 24, 22);
+ e.gc.setForeground(barStartBgColor);
+ e.gc.setBackground(barEndBgColor);
+ e.gc.fillGradientRectangle(barRect.x, barRect.y, barRect.width,
+ barRect.height, true);
+
+ int width = (value * barRect.width) / 100;
+ e.gc.setForeground(barStartColor);
+ e.gc.setBackground(barEndColor);
+ e.gc.fillGradientRectangle(barRect.x, barRect.y, width,
+ barRect.height, true);
+
+ e.gc.setForeground(barOutlineColor);
+ e.gc.drawRectangle(barRect);
} else {
System.out.println("invalid progress style..."); //$NON-NLS-1$
}
}
};
+
+ private void initCancelButton() {
+ cancelButton = new DACustomButton(this, SWT.NONE);
+ cancelButton.setText("Cancel");
+ FormData data = new FormData();
+ data.top = new FormAttachment(0, 78);
+ data.right = new FormAttachment(100, -12);
+ data.width = 80;
+ data.height = 22;
+ cancelButton.setLayoutData(data);
+
+ cancelButton.setGradation(ColorResources.BUTTON_NORMAL_COLOR_START,
+ ColorResources.BUTTON_NORMAL_COLOR_END,
+ ColorResources.BUTTON_PUSH_COLOR_START,
+ ColorResources.BUTTON_PUSH_COLOR_END,
+ ColorResources.BUTTON_HOVER_COLOR_START,
+ ColorResources.BUTTON_HOVER_COLOR_END,
+ ColorResources.BUTTON_DISABLE_COLOR_START,
+ ColorResources.BUTTON_DISABLE_COLOR_END);
+ cancelButton.setFontColors(ColorResources.BUTTON_NORMAL_FONT_COLOR,
+ ColorResources.BUTTON_PUSH_FONT_COLOR,
+ ColorResources.BUTTON_HOVER_FONT_COLOR,
+ ColorResources.BUTTON_DISABLE_FONT_COLOR);
+ cancelButton.setOutlineColors(
+ ColorResources.BUTTON_OUTLINE_NORMAL_COLOR,
+ ColorResources.BUTTON_OUTLINE_PUSH_COLOR,
+ ColorResources.BUTTON_OUTLINE_HOVER_COLOR,
+ ColorResources.BUTTON_OUTLINE_DISABLE_COLOR);
+ cancelButton.setOutlineInColors(
+ ColorResources.BUTTON_OUTLINE_NORMAL_IN_COLOR,
+ ColorResources.BUTTON_OUTLINE_PUSH_IN_COLOR,
+ ColorResources.BUTTON_OUTLINE_HOVER_IN_COLOR,
+ ColorResources.BUTTON_OUTLINE_DISABLE_IN_COLOR);
+ cancelButton.setButtonFont(FontResources.DIALOG_BUTTON_FONT);
+ }
+
+ public DACustomButton getCancelButton() {
+ return cancelButton;
+ }
}
import org.tizen.dynamicanalyzer.ui.summary.profiling.FunctionUsageProfiler;
import org.tizen.dynamicanalyzer.ui.thread.ThreadChartManager;
import org.tizen.dynamicanalyzer.ui.toolbar.ConfigureManager;
+import org.tizen.dynamicanalyzer.ui.toolbar.StartProcessManager;
import org.tizen.dynamicanalyzer.ui.toolbar.ToolbarArea;
import org.tizen.dynamicanalyzer.ui.userinterface.UIDataManager;
import org.tizen.dynamicanalyzer.ui.widgets.DADialog;
e.printStackTrace();
}
}
-
+
// data receive thread create and start
Thread dataThread = new Thread(null, new DataChannelThread(),
AnalyzerConstants.COMMUNICATOR_RECEIVE_THREAD);
HostResult result = handleControlMessage(
DACommunicator.getSelectedDevice(), ret);
+ // FIX
+ if (!StartProcessManager.getInstance().isCancelled()) {
+ //StartProcessManager.getInstance().setCancelDisable();
+ StartProcessManager.getInstance().setValue(100);
+ }
+
if (result.isSuccess()) {
if (!isCorrectAck(MSG_START_ACK, result)) {
HostResult failResult = HostResult.ERR_MSG_START_FAIL;
index += INT_SIZE;
profilingStartTime.setSec(sec);
profilingStartTime.setNano(nano);
-
+
UIRecorderTool.getInstance().startRecorder();
ToolbarArea.getInstance().startTimer();
SWAPLogParser.startLogParser();
import org.tizen.dynamicanalyzer.swap.model.data.LogDataFactory;
import org.tizen.dynamicanalyzer.swap.model.data.LogDataUtils;
import org.tizen.dynamicanalyzer.ui.thread.ThreadChartManager;
+import org.tizen.dynamicanalyzer.ui.toolbar.StartProcessManager;
import org.tizen.dynamicanalyzer.ui.toolbar.StopLogProcessor;
import org.tizen.dynamicanalyzer.ui.toolbar.StopProcessManager;
import org.tizen.dynamicanalyzer.ui.toolbar.ToolbarArea;
}
} // end while()
System.out.println("Receive thread end!!");
- Display.getDefault().asyncExec(new Runnable() {
- @Override
- public void run() {
- StopProcessManager.getInstance().stopProcessStart(
- AnalyzerLabels.STOP_PROCESS_DLG_SUMMARIZING_DATA); // socket
- // timeout
- }
- });
+ if (!StartProcessManager.getInstance().isCancelled()){
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ StopProcessManager.getInstance().stopProcessStart(
+ AnalyzerLabels.STOP_PROCESS_DLG_SUMMARIZING_DATA); // socket
+ // timeout
+ }
+ });
+ }
endingSteps();
} catch (IOException e) {
System.out
});
stopTimer();
addBufferToList();
- System.out.println("start!! : stop log process");//$NON-NLS-1$
- StopLogProcessor.runStopLogProcessThread();
+ if (!StartProcessManager.getInstance().isCancelled()) {
+ System.out.println("start!! : stop log process");//$NON-NLS-1$
+ StopLogProcessor.runStopLogProcessThread();
+ }
+
AnalyzerUtil.executeCommand(StopHandler.ID);
AnalyzerManager.setProcessInfoArrived(false);
ReplayTraceHandler.isReplay = false;
package org.tizen.dynamicanalyzer.ui.toolbar;
+import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.tizen.dynamicanalyzer.common.AnalyzerManager;
import org.tizen.dynamicanalyzer.nl.AnalyzerLabels;
-import org.tizen.dynamicanalyzer.ui.widgets.ProgressDialog;
import org.tizen.dynamicanalyzer.utils.AnalyzerUtil;
+import org.tizen.dynamicanalyzer.widgets.button.DACustomButton;
+import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;
public class StartProcessManager implements Runnable {
- private static ProgressDialog dialog = null;
+ private static StartProgressDialog dialog = null;
private static int count = 1;
+ private static boolean canceled = false;
private static StartProcessManager instance = new StartProcessManager();
public void startProcessStart(String waitMessage) {
Shell shell = AnalyzerUtil.getWorkbenchWindow().getShell();
- dialog = new ProgressDialog(shell);
+ dialog = new StartProgressDialog(shell, SWT.ON_TOP);
if (null != dialog) {
dialog.open();
+// AnalyzerManager.setExit(false);
+ canceled = false;
dialog.setProgressMessage(waitMessage);
dialog.setProgressInfo(AnalyzerLabels.STOP_PROCESS_DLG_PLEASE_WAIT);
+ dialog.setCancelListener(new DACustomButtonClickEventListener() {
+
+ @Override
+ public void handleClickEvent(DACustomButton button) {
+// AnalyzerManager.setExit(true);
+ canceled = true;
+ ToolbarArea.getInstance().stopTrace();
+ }
+ });
}
Thread thread = new Thread(new StartProcessManager());
thread.start();
}
-
+
+
public void setValue(final int nSelect) {
if (null != dialog) {
System.out.println("appinfo : "
+ AnalyzerManager.isProcessInfoArrived() + "is exit :"
+ AnalyzerManager.isExit());
- while (!AnalyzerManager.isExit()) {
-
+ while ((!AnalyzerManager.isExit()) && (canceled == false)) {
if (AnalyzerManager.isRunning()
&& AnalyzerManager.isProcessInfoArrived()) {
break;
}
stopProgress();
}
+
+ public boolean isCancelled() {
+ return canceled;
+ }
+
+ public void setCancelDisable() {
+ dialog.setCancelEnabled(false);
+ }
}
--- /dev/null
+package org.tizen.dynamicanalyzer.ui.toolbar;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Shell;
+import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;
+import org.tizen.dynamicanalyzer.widgets.helper.ColorResources;
+import org.tizen.dynamicanalyzer.widgets.helper.FontResources;
+import org.tizen.dynamicanalyzer.widgets.helper.WidgetUtils;
+import org.tizen.dynamicanalyzer.widgets.progress.Progress;
+
+public class StartProgressDialog {
+ private Shell shell = null;
+ private Progress progress = null;
+
+ private Listener shellMouseListener = new Listener() {
+ boolean down = false;
+ Point downPoint = new Point(0, 0);
+
+ @Override
+ public void handleEvent(Event event) {
+ int id = event.type;
+ if (event.widget instanceof Progress) {
+
+ Shell shell = (Shell) ((Progress) event.widget).getParent();
+ switch (id) {
+ case SWT.MouseDown:
+ downPoint.x = event.x;
+ downPoint.y = event.y;
+ down = true;
+ break;
+ case SWT.MouseUp:
+ down = false;
+ break;
+ case SWT.MouseMove:
+ if (down) {
+ Point p = shell.getLocation();
+ p.x = p.x + (event.x - downPoint.x);
+ p.y = p.y + (event.y - downPoint.y);
+ shell.setLocation(p);
+ }
+ break;
+ default:
+ break;
+ }
+ } else {
+ down = false;
+ }
+ }
+ };
+
+ public StartProgressDialog(Shell parent, int style) {
+ shell = new Shell(parent, style);
+ shell.setSize(300, 110);
+ shell.setLayout(new FillLayout());
+
+ progress = new Progress(shell, SWT.NONE, Progress.PROGRESS_STYLE_CANCEL);
+
+ progress.setBarStartColor(ColorResources.STOP_PROGRESS_BAR_START_COLOR);
+ progress.setBarEndColor(ColorResources.STOP_PROGRESS_BAR_END_COLOR);
+ progress.setBarStartBackgroundColor(ColorResources.STOP_PROGRESS_BAR_BG_START_COLOR);
+ progress.setBarEndBackgroundColor(ColorResources.STOP_PROGRESS_BAR_BG_END_COLOR);
+ progress.setBarOutlineColor(ColorResources.STOP_PROGRESS_BAR_OUTLINE_COLOR);
+ progress.setDialogOutlineColor1(ColorResources.STOP_PROGRESS_LINE1_COLOR);
+ progress.setDialogOutlineColor2(ColorResources.STOP_PROGRESS_LINE2_COLOR);
+ progress.setProgressUpperFont(FontResources.STOP_PROGRESS_FONT);
+ progress.setProgressLowerFont(FontResources.PROGRESS_FONT);
+ progress.setProgressUpperFontColor(ColorResources.BLACK);
+ progress.setProgressLowerFontColor(ColorResources.STOP_PROGRESS_INFO_FONT_COLOR);
+ progress.setBarBackgroundColor(ColorResources.STOP_PROGRESS_BACKGROUND_COLOR);
+
+ WidgetUtils.setCenter(shell);
+
+ shell.getDisplay().addFilter(SWT.MouseDown, shellMouseListener);
+ shell.getDisplay().addFilter(SWT.MouseUp, shellMouseListener);
+ shell.getDisplay().addFilter(SWT.MouseMove, shellMouseListener);
+
+ shell.addListener(SWT.Traverse, new Listener() {
+
+ @Override
+ public void handleEvent(Event event) {
+ if (event.detail == SWT.TRAVERSE_ESCAPE) {
+ event.doit = false;
+ }
+ }
+ });
+ }
+
+ public void open() {
+ shell.open();
+ ToolbarArea.getInstance().setEnabled(false);
+ }
+
+ public void close() {
+ if (null != progress) {
+ if (!progress.isDisposed()) {
+ progress.close();
+ progress.dispose();
+ }
+ progress = null;
+ }
+ if (null != shell) {
+ if (!shell.isDisposed()) {
+ shell.dispose();
+ }
+ shell = null;
+ }
+
+ ToolbarArea.getInstance().setEnabled(true);
+ }
+
+ public void setProgressMessage(String message) {
+ progress.setUpperText(message);
+ }
+
+ public void setProgressInfo(String infoMessage) {
+ progress.setBottomText(infoMessage);
+ }
+
+ public void setValue(int value) {
+ progress.setValue(value);
+ }
+
+ public void setValues(String progressMessage, int value) {
+ progress.setUpperText(progressMessage);
+ progress.setValue(value);
+ }
+
+ public void errorOccurred(String message, String bottomMessage) {
+ progress.errorOccured(message, bottomMessage);
+ }
+
+ public void setCancelListener(DACustomButtonClickEventListener listener) {
+ if (progress != null) {
+ progress.setCancelButtonListener(listener);
+ }
+ }
+
+ public void setCancelEnabled(final boolean enable) {
+ Display.getDefault().syncExec(new Runnable() {
+ @Override
+ public void run() {
+ if (null != progress) {
+ progress.getCancelButton().setButtonEnabled(enable);
+ }
+ }
+ });
+ }
+}
public void run() {
if (AnalyzerManager.isRunning()) {
HostResult isStarted = traceStart();
- if (isStarted.isSuccess()) {
+
+ if (StartProcessManager.getInstance().isCancelled()) { // cancel
+ traceCancel(AnalyzerLabels.START_TRACE_ERROR);
+ DACommunicator.stopTrace();
+ } else if (isStarted.isSuccess()) { // start
if (ReplayTraceHandler.isReplay) {
ReplayTraceHandler.setStopAlarm();
}
}
});
ShortCutManager.getInstance().setEnabled(true);
- } else {
- AnalyzerManager.setRunningState(false);
- final String msg = isStarted.toString();
- Display.getDefault().syncExec(new Runnable() {
- @Override
- public void run() {
- final Shell shell = AnalyzerUtil.getWorkbenchWindow()
- .getShell();
- DADialog dialog = new DADialog(shell, SWT.NONE);
- dialog.setIcon(ImageResources.DIALOG_WARNING_ICON);
- // dialog.setMessage(AnalyzerLabels.START_TRACE_ERROR);
- dialog.setMessage(msg);
- dialog.open();
-
- ToolbarArea.getInstance().setToolbarState(
- ToolbarArea.TOOLBAR_STATE_READY);
- ToolbarArea.getInstance()
- .setStartButtonEnablement(true);
- ToolbarArea.getInstance().setSettingsButtonEnablement(
- true);
- ShortCutManager.getInstance().setEnabled(true);
- }
- });
+ } else { // exception
+ traceCancel(isStarted.toString());
}
+ } else if (StartProcessManager.getInstance().isCancelled()) {
+ traceCancel(AnalyzerLabels.START_TRACE_ERROR);
+ DACommunicator.stopTrace();
} else {
traceStop();
}
count--;
}
+ private void traceCancel(String message) {
+ AnalyzerManager.setRunningState(false);
+ final String msg = message;
+ Display.getDefault().syncExec(new Runnable() {
+ @Override
+ public void run() {
+ final Shell shell = AnalyzerUtil.getWorkbenchWindow()
+ .getShell();
+ DADialog dialog = new DADialog(shell, SWT.NONE);
+ dialog.setIcon(ImageResources.DIALOG_WARNING_ICON);
+ dialog.setMessage(msg);
+ dialog.open();
+
+ ToolbarArea.getInstance().setToolbarState(
+ ToolbarArea.TOOLBAR_STATE_READY);
+ ToolbarArea.getInstance()
+ .setStartButtonEnablement(true);
+ ToolbarArea.getInstance().setSettingsButtonEnablement(
+ true);
+ ShortCutManager.getInstance().setEnabled(true);
+ }
+ });
+ }
+
private HostResult traceStart() {
Display.getDefault().syncExec(new Runnable() {
@Override
shell.setSize(300, 100);
shell.setLayout(new FillLayout());
- progress = new Progress(shell, SWT.NONE, Progress.PROGRESS_STYLE_ALL);
+ progress = new Progress(shell, SWT.NONE, Progress.PROGRESS_STYLE_DEFAULT);
progress.setBarStartColor(ColorResources.STOP_PROGRESS_BAR_START_COLOR);
progress.setBarEndColor(ColorResources.STOP_PROGRESS_BAR_END_COLOR);
progress.setBarStartBackgroundColor(ColorResources.STOP_PROGRESS_BAR_BG_START_COLOR);