crashanalysis/crashanalyser/com.nokia.s60tools.crashanalyser/src/com/nokia/s60tools/crashanalyser/ui/views/MainViewContentProvider.java
changeset 4 615035072f7e
parent 0 5ad7ad99af01
--- a/crashanalysis/crashanalyser/com.nokia.s60tools.crashanalyser/src/com/nokia/s60tools/crashanalyser/ui/views/MainViewContentProvider.java	Tue Feb 23 17:04:33 2010 +0200
+++ b/crashanalysis/crashanalyser/com.nokia.s60tools.crashanalyser/src/com/nokia/s60tools/crashanalyser/ui/views/MainViewContentProvider.java	Tue Apr 20 14:41:43 2010 +0300
@@ -17,10 +17,11 @@
 
 package com.nokia.s60tools.crashanalyser.ui.views;
 
-import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.ITreeContentProvider;
 import org.eclipse.jface.viewers.Viewer;
 import com.nokia.s60tools.crashanalyser.data.*;
 import com.nokia.s60tools.crashanalyser.interfaces.INewCrashFilesObserver;
+import com.nokia.s60tools.crashanalyser.model.CrashFileBundle;
 import com.nokia.s60tools.crashanalyser.model.CrashFileManager;
 
 /**
@@ -31,7 +32,7 @@
  * format. 
  *
  */
-public class MainViewContentProvider implements IStructuredContentProvider {
+public class MainViewContentProvider implements ITreeContentProvider { // IStructuredContentProvider {
 
 	private final CrashFileManager crashFileManager;	
 	private ErrorLibrary errorLibrary = null;
@@ -59,4 +60,18 @@
 	public void inputChanged(Viewer arg0, Object arg1, Object arg2) {
 		// No implementation needed
 	}
+
+	public Object[] getChildren(Object crashFile) {
+		return crashFileManager.getThreads((CrashFileBundle) crashFile);
+	}
+
+	public Object getParent(Object arg0) {
+		return null;
+	}
+
+	public boolean hasChildren(Object arg0) {
+		if (crashFileManager.getTotalThreadCount((CrashFileBundle) arg0) > 1)
+			return true;
+		return false;
+	}
 }