IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
configurer.setInitialSize(new Point(width, height));
configurer.setShowStatusLine(false);
- configurer.setShellStyle(SWT.NO_TRIM | SWT.NO_BACKGROUND);
+ configurer.setShellStyle(SWT.SHELL_TRIM/* | SWT.NO_BACKGROUND*/);
}
public void postWindowOpen() {
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.PaintEvent;
import org.eclipse.swt.events.PaintListener;
+import org.eclipse.swt.events.ShellEvent;
+import org.eclipse.swt.events.ShellListener;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Cursor;
import org.eclipse.swt.graphics.Font;
public static boolean bThreadPageWork = false; // FIXME
+ private ShellListener shellListener = new ShellListener(){
+
+ @Override
+ public void shellActivated(ShellEvent e) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void shellClosed(ShellEvent e) {
+ // TODO Auto-generated method stub
+ PlatformUI.getWorkbench().close();
+ }
+
+ @Override
+ public void shellDeactivated(ShellEvent e) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void shellDeiconified(ShellEvent e) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void shellIconified(ShellEvent e) {
+ // TODO Auto-generated method stub
+
+ }
+
+ };
private Listener titlebarListener = new Listener() {
Point downPt = null;
Point downLocation = null;
baseComposite.setLayout(layout);
// Creates title bar.
- titlebarComposite = new Composite(baseComposite, SWT.NONE);
- titlebarComposite.setLayout(layout);
- titlebarComposite.addPaintListener(new PaintListener() {
- @Override
- public void paintControl(PaintEvent e) {
- // Draws titlebar background.
- Pattern pattern = new Pattern(shell.getDisplay(), topImage2);
- e.gc.setBackgroundPattern(pattern);
- e.gc.fillRectangle(START, START,
- titlebarComposite.getBounds().width,
- titlebarComposite.getBounds().height);
- pattern.dispose();
- }
- });
-
- createTitlebar(titlebarComposite);
+// titlebarComposite = new Composite(baseComposite, SWT.NONE);
+// titlebarComposite.setLayout(layout);
+// titlebarComposite.addPaintListener(new PaintListener() {
+// @Override
+// public void paintControl(PaintEvent e) {
+// // Draws titlebar background.
+// Pattern pattern = new Pattern(shell.getDisplay(), topImage2);
+// e.gc.setBackgroundPattern(pattern);
+// e.gc.fillRectangle(START, START,
+// titlebarComposite.getBounds().width,
+// titlebarComposite.getBounds().height);
+// pattern.dispose();
+// }
+// });
+//
+// createTitlebar(titlebarComposite);
final FormLayout formLayout = new FormLayout();
formLayout.marginWidth = OFFSET_ZERO;
// Sets layout data.
Control page = configurer.createPageComposite(baseComposite);
- FormData data = new FormData();
- data.top = new FormAttachment(START, 0);
- data.left = new FormAttachment(START, 0);
- data.right = new FormAttachment(END, -0);
- data.height = DesignConstants.TITLEBAR_HEIGHT;
- titlebarComposite.setLayoutData(data);
+// FormData data = new FormData();
+// data.top = new FormAttachment(START, 0);
+// data.left = new FormAttachment(START, 0);
+// data.right = new FormAttachment(END, -0);
+// data.height = DesignConstants.TITLEBAR_HEIGHT;
+// titlebarComposite.setLayoutData(data);
- data = new FormData();
- data.top = new FormAttachment(titlebarComposite, 0);
+ FormData data = new FormData();
+ data.top = new FormAttachment(0, 0);
data.left = new FormAttachment(0, 0);
data.right = new FormAttachment(100, 0);
data.height = 38;
}
// Adds listeners.
- addTitlebarAndShellListeners();
+ shell.addShellListener(shellListener);
+// addTitlebarAndShellListeners();
}
private void addTitlebarListeners() {
}
// Removes listeners.
- removeTitlebarAndShellListeners();
+ shell.removeShellListener(shellListener);
+// removeTitlebarAndShellListeners();
}
public long getTime() {
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.tizen.dynamicanalyzer.ui.views.CoolbarArea;
-import org.tizen.dynamicanalyzer.ui.views.ThreadPage.ThreadPage;
import org.tizen.dynamicanalyzer.ui.views.filePage.FilePage;
import org.tizen.dynamicanalyzer.ui.views.summaryPage.SummaryPage;
+import org.tizen.dynamicanalyzer.ui.views.threadPage.ThreadPage;
import org.tizen.dynamicanalyzer.ui.views.timelinePage.TimelinePage;
import org.tizen.dynamicanalyzer.widgets.button.DACustomButton;
import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;
String seqNum = input.get(LogCenterConstants.SEQUENCE_NUMBER_INDEX);
// socket
int type = Integer.parseInt(fdType);
- if (type == 1) {
+ if (type == 1 || type == 2) {
continue;
}
--- /dev/null
+package org.tizen.dynamicanalyzer.ui.views.pageInfo;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PageDataColumn {
+ public final static int COLUMN_ATTRIBUTE_NONE = 0;
+ public final static int COLUMN_ATTRIBUTE_STRING = 1;
+ public final static int COLUMN_ATTRIBUTE_INT = 2;
+ public final static int COLUMN_ATTRIBUTE_DOUBLE = 3;
+ private List<String> Column = null;
+ private List<Integer> ColumnAttribute = null;
+ private int ColumnCount = 0;
+
+ public PageDataColumn(int ColumnCount, String Column[], Integer ColumnAttribute[]){
+ if(null == this.Column)
+ this.Column = new ArrayList<String>();
+
+ if(null == this.ColumnAttribute)
+ this.ColumnAttribute = new ArrayList<Integer>();
+
+ this.ColumnCount = ColumnCount;
+ for(int i=0; i < ColumnCount; i++){
+ if(Column.length > i)
+ SetColumnText(i,Column[i]);
+ else
+ SetColumnText(i,"Column"+i);
+ if(Column.length > i)
+ SetColumnAttribute(i,ColumnAttribute[i]);
+ else
+ SetColumnAttribute(i,COLUMN_ATTRIBUTE_NONE);
+ }
+ }
+
+ public String GetColumnText(int Index){
+ if(null != Column)
+ return Column.get(Index);
+ else
+ return null;
+ }
+
+ public int GetColumnAttribute(int Index){
+ if(null != ColumnAttribute)
+ return ColumnAttribute.get(Index);
+ else
+ return COLUMN_ATTRIBUTE_NONE;
+ }
+
+ public void SetColumnText(int Index, String Text){
+ if (Text == null)
+ return;
+ if (GetColumnText(Index).equals(Text))
+ return;
+ Column.add(Index,Text);
+ }
+
+ public void SetColumnAttribute(int Index, int Attribute){
+ if (Attribute < COLUMN_ATTRIBUTE_NONE || Attribute > COLUMN_ATTRIBUTE_DOUBLE)
+ return;
+ if (GetColumnAttribute(Index) == Attribute)
+ return;
+ ColumnAttribute.add(Index,Attribute);
+ }
+
+ public void clear(){
+ if(null != Column){
+ Column.clear();
+ Column = null;
+ }
+ if(null != ColumnAttribute){
+ ColumnAttribute.clear();
+ ColumnAttribute = null;
+ }
+ }
+}
--- /dev/null
+package org.tizen.dynamicanalyzer.ui.views.pageInfo;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class PageDataItem {
+ private List<String> Item = null;
+ private int ColumnCount = 0;
+
+ public PageDataItem(int ColumnCount, String Item[]){
+ if(null == this.Item)
+ this.Item = new ArrayList<String>();
+
+ this.ColumnCount = ColumnCount;
+ for(int i=0; i < ColumnCount; i++){
+ if(Item.length <= i)
+ return;
+ SetText(i,Item[i]);
+ }
+ }
+
+ public String GetText(int Index){
+ if(null != Item)
+ return Item.get(Index);
+ else
+ return null;
+ }
+ public void SetText(int Index, String Text){
+ if (Text == null)
+ return;
+ if (GetText(Index).equals(Text))
+ return;
+ Item.add(Index,Text);
+ }
+}
import org.tizen.dynamicanalyzer.model.WarningData;
import org.tizen.dynamicanalyzer.ui.views.filePage.fileChart.FileChartManager;
-public abstract class PageDataManager<E> {
- private List<E> row = null;
- private List<String> column = null;
+public abstract class PageDataManager {
+ private List<PageDataItem> rows = null;
+ private PageDataColumn column = SetPageDataColumn();
// private List<WarningData> warning = null;
private List<FailedData> failed = null;
+ private int ColumnCount = 0;
private void AddErrorData(FailedData data){
if(null == failed)
// warning = new ArrayList<WarningData>();
// warning.add(data);
// }
+
+ private void AddPageDataItem(PageDataItem data){
+ if(null == rows)
+ rows = new ArrayList<PageDataItem>();
+ rows.add(data);
+ }
- private void AddPageData(E data){
- if(null == row)
- row = new ArrayList<E>();
- row.add((E)data);
+ protected int FindInsertIndex(PageDataItem data, int Index){
+ int ret = rows.size()-1;
+ switch(column.GetColumnAttribute(Index)){
+ case PageDataColumn.COLUMN_ATTRIBUTE_INT:
+ int intVal = Integer.valueOf(data.GetText(Index));
+ for(int i=ret; i >=0; i-- ){
+ if(Integer.valueOf(rows.get(i).GetText(Index)) < intVal){
+ return i;
+ }
+ }
+ break;
+ case PageDataColumn.COLUMN_ATTRIBUTE_STRING:
+ String stringVal = data.GetText(Index);
+ for(int i=ret; i >=0; i-- ){
+ if(rows.get(i).GetText(Index).compareTo(stringVal) < 0){
+ return i;
+ }
+ }
+ break;
+ case PageDataColumn.COLUMN_ATTRIBUTE_DOUBLE:
+ double doubleVal = Double.valueOf(data.GetText(Index));
+ for(int i=ret; i >=0; i-- ){
+ if(Double.valueOf(rows.get(i).GetText(Index)) < doubleVal){
+ return i;
+ }
+ }
+ break;
+ default:
+ break;
+ }
+ return ret;
}
- public void SetColumn(List<String> column){
+ protected void AddPageDataItemBySortIndex(PageDataItem data, int Index){
+ int insertIndex;
+ if(null == rows)
+ rows = new ArrayList<PageDataItem>();
+ for(int i = rows.size() - 1; i>=0; i--){
+ insertIndex = FindInsertIndex(data, Index);
+ if(insertIndex>=0 && insertIndex<=rows.size())
+ rows.add(insertIndex,data);
+ }
+ }
+
+ public void SetPageDataColumn(PageDataColumn column){
this.column = column;
}
}
//add page data
- E data = GetPageData(input);
+ PageDataItem data = MakePageData(input);
if(null != data)
- AddPageData(data);
+ AddPageDataItem(data);
}
}
+
+ public void SetColumnCount(int ColumnCount){
+ this.ColumnCount = ColumnCount;
+ }
+
+ public void clear(){
+ if(null != rows){
+ rows.clear();
+ rows = null;
+ }
+ if(null != column){
+ column.clear();
+ column = null;
+ }
+// if(null != warning){
+// warning.clear();
+// warning = null;
+// }
+ if(null != failed){
+ failed.clear();
+ failed = null;
+ }
+ }
+ public abstract PageDataColumn SetPageDataColumn();
public abstract List<List<String>> GetLogsFromLogPackage(LogPackage logPack);
- public abstract E GetPageData(List<String> input);
+ public abstract PageDataItem MakePageData(List<String> input);
public abstract boolean ErrorCheck(List<String> input);
// public abstract boolean WarningCheck(List<String> input);
}
-package org.tizen.dynamicanalyzer.ui.views.ThreadPage;
+package org.tizen.dynamicanalyzer.ui.views.threadPage;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
-package org.tizen.dynamicanalyzer.ui.views.ThreadPage;
+package org.tizen.dynamicanalyzer.ui.views.threadPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.ControlListener;
-import org.eclipse.swt.graphics.Rectangle;
+
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.tizen.dynamicanalyzer.constants.DesignConstants;
-import org.tizen.dynamicanalyzer.nl.InformationViewLables;
-import org.tizen.dynamicanalyzer.ui.views.CallstackView;
+import org.tizen.dynamicanalyzer.model.LogPackage;
import org.tizen.dynamicanalyzer.ui.views.base.DAPageComposite;
-import org.tizen.dynamicanalyzer.ui.views.filePage.FileApiListView;
-import org.tizen.dynamicanalyzer.ui.views.filePage.FileChartView;
-import org.tizen.dynamicanalyzer.ui.views.filePage.FileDetailInfoView;
-import org.tizen.dynamicanalyzer.ui.widgets.DATabComposite;
public class ThreadPage extends DAPageComposite {
public final static int THREADCHART_INDEX = 0;
SashForm baseForm;
SashForm leftForm;
SashForm rightForm;
+
+ ThreadPageDataManager tManager = ThreadPageDataManager.getInstance();
public ThreadPage(Composite parent, int style) {
super(parent, style);
+
this.setLayout(new FillLayout());
baseForm = new SashForm(this, SWT.HORIZONTAL);
baseForm.setLayout(new FillLayout());
});
*/
}
+ public void updateLog(LogPackage logPack) {
+ tManager.ParsePageData(logPack);
+ }
}
--- /dev/null
+package org.tizen.dynamicanalyzer.ui.views.threadPage;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.tizen.dynamicanalyzer.constants.LogCenterConstants;
+import org.tizen.dynamicanalyzer.model.LogPackage;
+import org.tizen.dynamicanalyzer.model.Logs;
+import org.tizen.dynamicanalyzer.ui.views.pageInfo.PageDataColumn;
+import org.tizen.dynamicanalyzer.ui.views.pageInfo.PageDataItem;
+import org.tizen.dynamicanalyzer.ui.views.pageInfo.PageDataManager;
+import org.tizen.dynamicanalyzer.utils.AnalyzerUtil;
+
+public class ThreadPageDataManager extends PageDataManager {
+ private static ThreadPageDataManager instance = null;
+
+ public static ThreadPageDataManager getInstance() {
+ if (null == instance) {
+ instance = new ThreadPageDataManager();
+ }
+ return instance;
+ }
+
+ private ThreadPageDataManager(){
+
+ }
+
+ @Override
+ public PageDataColumn SetPageDataColumn() {
+ // TODO Auto-generated method stub
+ PageDataColumn pageColumn = new PageDataColumn(0, null, null);
+ return pageColumn;
+ }
+
+ @Override
+ public List<List<String>> GetLogsFromLogPackage(LogPackage logPack) {
+ // TODO Auto-generated method stub
+ Logs logs = logPack.getLogs(LogCenterConstants.LOG_RESOURCE);
+ if (null == logs || logs.getLogs().size() == 0) {
+ return null;
+ }
+ List<List<String>> inputs = logs.getLogs();
+ List<List<String>> ret = new ArrayList<List<String>>();
+ int size = inputs.size();
+
+ for (int i = 0; i < size; i++) {
+ List<String> input = inputs.get(i);
+ if (AnalyzerUtil.isInternal(input, false)) {
+ continue;
+ }
+ String fdType = input.get(LogCenterConstants.RESOURCE_FDTYPE_INDEX);
+
+ int type = Integer.parseInt(fdType);
+ if (type != 2) {
+ continue;
+ }
+ ret.add(input);
+ }
+ return ret;
+ }
+
+ @Override
+ public PageDataItem MakePageData(List<String> input) {
+ // TODO Auto-generated method stub
+
+ return null;
+ }
+
+ @Override
+ public boolean ErrorCheck(List<String> input) {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ public void clear(){
+ super.clear();
+ instance = null;
+ }
+
+}
package org.tizen.dynamicanalyzer.ui.widgets;
-import org.eclipse.jface.window.Window;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FormAttachment;
import org.tizen.dynamicanalyzer.widgets.button.DACustomButton;
import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;
-public class AboutDialog extends Window {
+public class AboutDialog {
private Shell parent = null;
private DAWindow shell = null;
private DACustomButton licenseButton = null;
private final Image iconImage = ImageResources.ABOUT_ICON;
public AboutDialog(Shell parent, int style) {
- super(parent);
this.parent = parent;
}
}
};
- @Override
+
public int open() {
shell = new DAWindow(parent, SWT.APPLICATION_MODAL);
shell.setSize(456, 184);
import org.tizen.dynamicanalyzer.widgets.button.DACustomButton;\r
import org.tizen.dynamicanalyzer.widgets.button.DACustomButtonClickEventListener;\r
\r
-public class ConfigurationDialog/* extends Window */{\r
+public class ConfigurationDialog{\r
private Shell parent = null;\r
private DAWindow window = null;\r
private DACustomButton okButton = null;\r