*/
package org.tizen.dynamicanalyzer.control;
-import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.tizen.dynamicanalyzer.common.DALogExport;
import org.tizen.dynamicanalyzer.common.DAResult;
import org.tizen.dynamicanalyzer.common.Global;
import org.tizen.dynamicanalyzer.common.DAState;
import org.tizen.dynamicanalyzer.handlers.UIAction;
import org.tizen.dynamicanalyzer.nl.MenuBarLabels;
import org.tizen.dynamicanalyzer.project.Project;
-import org.tizen.dynamicanalyzer.resources.ImageResources;
import org.tizen.dynamicanalyzer.setting.Feature;
import org.tizen.dynamicanalyzer.setting.SettingDataManager;
import org.tizen.dynamicanalyzer.shortcut.ShortCutManager;
import org.tizen.dynamicanalyzer.ui.toolbar.Toolbar;
import org.tizen.dynamicanalyzer.util.Logger;
import org.tizen.dynamicanalyzer.util.WorkbenchUtil;
-import org.tizen.dynamicanalyzer.utils.AnalyzerUtil;
-import org.tizen.dynamicanalyzer.widgets.button.DACustomButton;
-import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;
-import org.tizen.dynamicanalyzer.widgets.da.base.DADialog;
import org.tizen.dynamicanalyzer.widgets.da.base.ProgressDialog;
public class StopTraceManager implements Runnable {
checkCompleted = stopThreadCompleted;
}
- long startTime = System.currentTimeMillis();
-
while(checkCompleted==false){
try {
Thread.sleep(10);
synchronized(stopThreadCompleted){
checkCompleted = stopThreadCompleted;
}
-
- long elapsedTime = System.currentTimeMillis() - startTime;
- if(elapsedTime > 10000){
-
- Display.getDefault().asyncExec(new Runnable() {
- @Override
- public void run() {
- Shell shell = WorkbenchUtil.getWorkbenchWindow().getShell();
- DADialog dialog = new DADialog(shell, SWT.NONE);
- dialog.setIcon(ImageResources.DIALOG_WARNING_ICON);
- dialog.setMessage("DA unsafely Stopped, If you want to another trace Select restart DA");
- dialog.setDialog(true);
- dialog.getExportButton().setText("restart DA");
- dialog.getExportButton().addClickListener(reStartListener);
- dialog.open();
- }
- });
-
- break;
- }
}
// set shortcut and toolbar UI as DA state
ShortCutManager.getInstance().setEnabled(true);
enableToolBar.start();
}
}
-
- private static DACustomButtonClickEventListener reStartListener = new DACustomButtonClickEventListener() {
- @Override
- public void handleClickEvent(DACustomButton button) {
- AnalyzerUtil.forcedRestartDA();
- }
- };
}
String appLabel = pkglist.get(i).getMainApp().getLabel();
appCombo.add(appLabel);
}
- redrawAppcombo();
+ // Tooltip Disabled
+ // set tooltip
+ /*
+ appCombo.setTooltip(new DACustomComboTooltip() {
+
+ @Override
+ public boolean makeTooltipInfo() {
+ Map<String, List<String>> map = getTooltipTextListMap();
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+ for (int i = 0; i < pkglist.size(); i++) {
+ PackageInfo pkg = pkglist.get(i);
+ AppInfo app = pkg.getMainApp();
+ if (AnalyzerConstants.RUNNING_PROCESS_LABEL.equals(app.getLabel())
+ || AnalyzerConstants.COMMON_EXECUTABLE_LABEL.equals(app.getLabel())
+ || AnalyzerConstants.WITHOUT_EXECUTABLE_LABEL.equals(app.getLabel())) {
+ continue;
+ }
+
+ // set information
+ List<String> info = new ArrayList<String>();
+ info.add(AnalyzerLabels.DETAIL_INFORMATION_PACKAGE_NAME
+ + pkg.getPackageId());
+ info.add(AnalyzerLabels.DETAIL_INFORMATION_PACKAGE_VERSION
+ + pkg.getVersion());
+ info.add(AnalyzerLabels.DETAIL_INFORMATION_PACKAGE_INSTALL_TIME
+ + dateFormat.format(new Date(pkg.getInstallTime() * 1000)));
+ info.add(AnalyzerLabels.DETAIL_INFORMATION_APPLICATION_NAME
+ + app.getLabel());
+ info.add(AnalyzerLabels.DETAIL_INFORMATION_APPLICATION_EXEC_PATH
+ + app.getExecPath());
+
+ map.put(app.getLabel(), info);
+ }
+ return true;
+ }
+ });
+ */
} else {
- appCombo.add("===[App List Empty]===");
- }
+ ShowAppComboTitle();
+ //appCombo.select(0);
+ }
+ redrawAppcombo();
}
@UIMethod
if (oldPackageName == null || (appCombo.getItems().indexOf(oldPackageName) < 0)) {
// there is no such item
- ShowAppComboTitle();
+ selectAppCombo(0);
} else {
appCombo.setText(oldPackageName);
}