Unterschiede

Hier werden die Unterschiede zwischen der gewählten und der aktuellen Version gezeigt.

swt-jface:treeviewer 2007/11/09 07:56 swt-jface:treeviewer 2020/01/22 20:59 aktuell
Zeile 1: Zeile 1:
====== TreeViewer ====== ====== TreeViewer ======
-{{eclipse-rcp:treeviewer.gif|}}+//org.eclipse.jface.viewers.TreeViewer//\\ 
 +\\ 
 +Siehe auch: [[treetableviewer|TreeViewer mit mehreren Spalten]]\\ 
 +{{eclipse-rcp:treeviewer.png|}}\\ 
 +\\ 
 +\\ 
 +<html> 
 +  <script type="text/javascript"><!-- 
 +      google_ad_client="pub-9681858985507948"; 
 +      google_ad_width = 468; 
 +      google_ad_height = 60; 
 +      google_ad_format = "468x60_as"; 
 +      google_ad_type = "text"; 
 +      google_ad_channel = ""; 
 +      google_color_border = "cccccc"; 
 +      google_color_bg = "FFFFFF"; 
 +      google_color_link = "1d2d8c"; 
 +      google_color_text = "000000"; 
 +      google_color_url = "1d2d8c"; 
 +      //--> 
 +  </script> 
 +  <script type="text/javascript" 
 +      src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 
 +  </script> 
 +</html> 
 +\\
<code java> <code java>
-package com.sowas.rpcdemos.treeviewer;+package com.sowas.javawiki.rpcbaseapplication;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
- 
-import javax.sound.midi.Track; 
import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.jface.viewers.ILabelProvider;
Zeile 63: Zeile 86:
  class City{   class City{
-      public Street[] getStreets(){ +      Street[] streets = new Street[4]; 
-        Street[] streets = new Street[4];+ 
 +      public City(){
        for (int i = 0; i<streets.length; i++)         for (int i = 0; i<streets.length; i++)
            streets[i] = new Street(this, i);             streets[i] = new Street(this, i);
 +      }
 +
 +      public Street[] getStreets(){
        return streets;         return streets;
      }       }
Zeile 77: Zeile 104:
  class Street{   class Street{
-      City city; +      City   city
-      int indx;+      House[] houses = new House[2]
 +      int     indx;
-      public Street(City city, int i){+      public Street(City city, int index){
        this.city = city;         this.city = city;
-        indx = i + 1;+        indx = index + 1
 +        for (int i = 0; i<houses.length; i++) 
 +            houses[i] = new House(this, i); 
 +      } 
 + 
 +      public House[] getHouses(){ 
 +        return houses;
      }       }
Zeile 90: Zeile 124:
  }   }
 +
 +  class House{
 +      Street street;
 +      int      indx;
 +
 +      public House(Street street, int i){
 +        this.street = street;
 +        indx = i + 1;
 +      }
 +
 +      public String toString(){
 +        return "Haus " + indx;
 +      }
 +  }
 +
  class AddressContentProvider implements ITreeContentProvider {   class AddressContentProvider implements ITreeContentProvider {
 +      /**
 +      * Liefert die Kinder eines Elements
 +      */
      public Object[] getChildren(Object parentElement) {       public Object[] getChildren(Object parentElement) {
        if (parentElement instanceof List)         if (parentElement instanceof List)
Zeile 98: Zeile 150:
        if (parentElement instanceof City)         if (parentElement instanceof City)
            return ((City) parentElement).getStreets();             return ((City) parentElement).getStreets();
 +        if (parentElement instanceof Street)
 +            return ((Street) parentElement).getHouses();
        return new Object[0];         return new Object[0];
      }       }
 +      /**
 +      * Liefert die Eltern eines Elements
 +      */
      public Object getParent(Object element) {       public Object getParent(Object element) {
        if (element instanceof Street)         if (element instanceof Street)
            return ((Street)element).city;             return ((Street)element).city;
 +        if (element instanceof House)
 +            return ((House)element).street;
        return null;         return null;
      }       }
 +      /**
 +      * Liefert, ob ein Element Kinder hat
 +      */
      public boolean hasChildren(Object element) {       public boolean hasChildren(Object element) {
        if (element instanceof List)         if (element instanceof List)
Zeile 112: Zeile 174:
        if (element instanceof City)         if (element instanceof City)
            return ((City) element).getStreets().length > 0;             return ((City) element).getStreets().length > 0;
 +        if (element instanceof Street)
 +            return ((Street) element).getHouses().length > 0;
        return false;         return false;
      }       }
-      public Object[] getElements(Object kundenstaemme) { +      /** 
-        return getChildren(kundenstaemme);+      * Liefert die Root-Elemente 
 +      * Kann daher meist getChildren() aufrufen 
 +      */ 
 +      public Object[] getElements(Object inputElement) { 
 +        return getChildren(inputElement);
      }       }
Zeile 126: Zeile 194:
  }   }
} }
-</code>+</code>\\

Eigene Werkzeuge
Werkzeuge

gratis Counter by GOWEB
seit 9.10.2007