Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.pentaho.ui.xul.swt.tags.treeutil;
  
  import java.util.Vector;
  
  import  org.eclipse.jface.resource.JFaceResources;
  import  org.eclipse.jface.viewers.ILabelProviderListener;
 import  org.eclipse.jface.viewers.ITableLabelProvider;
 import  org.eclipse.jface.viewers.TableViewer;
 import  org.eclipse.swt.SWT;
 import  org.eclipse.swt.graphics.GC;
 import  org.eclipse.swt.graphics.Image;
 import  org.eclipse.swt.graphics.Point;
 import  org.eclipse.swt.widgets.Button;
 import  org.eclipse.swt.widgets.Display;
 import  org.eclipse.swt.widgets.Shell;
 
 public class XulTableColumnLabelProvider implements ITableLabelProvider {
 
   private static final String UNCHECKED = "UNCHECKED";
   private static final String CHECKED = "CHECKED";
 
   private XulTree tree;
   private static Log logger = LogFactory
       .getLog(XulTableColumnLabelProvider.class);
 
   private int imageIndex = 0;
 
   public XulTableColumnLabelProvider(XulTree treeXulDomContainer aDomContainer) {
     this. = tree;
     this. = aDomContainer;
     if (JFaceResources.getImageRegistry().getDescriptor() == null) {
       JFaceResources.getImageRegistry().put(
           ,
           makeImage(((TableViewer) tree.getManagedObject()).getControl()
               .getShell(), false));
       JFaceResources.getImageRegistry().put(
           ,
           makeImage(((TableViewer) tree.getManagedObject()).getControl()
               .getShell(), true));
     }
   }
 
   public String getColumnText(Object objint i) {
 
     final int colIdx = i;
     XulTreeCell cell = ((XulTreeItemobj).getRow().getCell(colIdx);
     if (cell == null) {
       return "";
     }
 
     switch (.getColumns().getColumn(colIdx).getColumnType()) {
     case :
       return cell.getLabel() != null ? cell.getLabel() : cell.getLabel();
     case :
     case :
       Vector vec = (Vectorcell.getValue();
       if (vec != null && vec.size() > cell.getSelectedIndex()) {
         return "" + vec.get(cell.getSelectedIndex());
       } else {
         return "";
       }
     case :
       return cell.getLabel() != null ? cell.getLabel() : "";
     case :
       return String.format(getPasswordString(cell.getLabel().length()));
     default:
       return cell.getLabel() != null ? cell.getLabel() : "";
     }
 
   }
   
   private String getPasswordString(int len){
     StringBuilder b = new StringBuilder();
     while(len-- > 0){
       b.append('*');
     }
     return b.toString();
   }
 
   public void addListener(ILabelProviderListener ilabelproviderlistener) {
   }
 
   public void dispose() {
   }
 
   public boolean isLabelProperty(Object objString s) {
    return false;
  }
  public void removeListener(ILabelProviderListener ilabelproviderlistener) {
  }
  public Image getColumnImage(Object rowint col) {
      if (isSelected(rowcol)) {
        return JFaceResources.getImageRegistry().get();
      } else {
        return JFaceResources.getImageRegistry().get();
      }
    }
    if (.getColumns().getColumn(col).getImagebinding() != null) {
      String src = ((SwtTreeItemrow).getImage();
      Display display = ((TableViewer) .getManagedObject()).getTable()
          .getDisplay();
      return SwtXulUtil.getCachedImage(srcdisplay);
    }
    return null;
  }
  private Image makeImage(Shell shellboolean type) {
    Shell placeholder = new Shell(shell, SWT.NO_TRIM);
    Button btn = new Button(placeholder, SWT.CHECK);
    btn.setSelection(type);
    Point bsize = btn.computeSize(SWT.DEFAULT, SWT.DEFAULT);
    btn.setSize(bsize);
    placeholder.setSize(bsize);
    btn.setLocation(0, 0);
    placeholder.open();
    GC gc = new GC(btn);
    Image image = new Image(shell.getDisplay(), bsize.x, bsize.y);
    gc.copyArea(image, 0, 0);
    gc.dispose();
    placeholder.close();
    return image;
  }
  private boolean isSelected(Object rowint col) {
    XulTreeRow r = ((XulTreeItemrow).getRow();
    if (r == null || r.getChildNodes().size() < col) {
      return false;
    }
    XulTreeCell c = r.getCell(col);
    if (c == null) {
      return false;
    }
    Object val = c.getValue();
    if (val == null || val instanceof Boolean == false) {
      return false;
    }
    return (Booleanc.getValue();
  }
New to GrepCode? Check out our FAQ X