Package com.onpositive.gae.profiler.ui

Source Code of com.onpositive.gae.profiler.ui.PerformanceConfugurableViewer

package com.onpositive.gae.profiler.ui;

import org.eclipse.jdt.core.IMethod;
import org.eclipse.jdt.internal.ui.JavaPluginImages;
import org.eclipse.jdt.ui.JavaElementLabelProvider;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.events.DisposeEvent;
import org.eclipse.swt.events.DisposeListener;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Composite;

import com.onpositive.commons.ui.viewers.ConfigurableViewer;
import com.onpositive.gae.profiler.Activator;
import com.onpositive.gae.profiler.ITrace;
import com.onpositive.gae.profiler.core.AccumulatedMethod;
import com.onpositive.gae.profiler.core.MethodGroup;

public class PerformanceConfugurableViewer extends ConfigurableViewer {

  SnapshotDataViewer own;

  JavaElementLabelProvider provider = new JavaElementLabelProvider();

  private Image jspImage=Activator.imageDescriptorFromPlugin(Activator.PLUGIN_ID, "/icons/tag-jsp.gif").createImage();
  static Image pImage = JavaPluginImages.DESC_OBJS_PACKAGE.createImage();
  static Image mImage = Activator.imageDescriptorFromPlugin(Activator.PLUGIN_ID, "/icons/private_co.gif").createImage();
 
 
  protected int getMaxSize() {
    return 24;
  }

  public PerformanceConfugurableViewer(Composite owner, SnapshotDataViewer own) {
    super(owner);
    owner.addDisposeListener(new DisposeListener() {

      public void widgetDisposed(DisposeEvent e) {
        provider.dispose();
      }
    });
    this.own = own;
  }

 
  protected Image getDefaultImage() {
    return null;
  }

 
  protected Image getImage(Object trace) {
    if (trace instanceof MethodGroup) {
      MethodGroup c = (MethodGroup) trace;
      return pImage;
    }
    if (trace instanceof AccumulatedMethod){
      AccumulatedMethod ma=(AccumulatedMethod) trace;
      if (ma.getMethodName().length()==0){
        return jspImage;
      }
    }
    IMethod method = own.getMethod(trace);
    if (method != null) {
      return provider.getImage(method);
    }
    return mImage;
  }

 
  protected String getImplicitFilterString(Object trace) {
    String string = (trace instanceof InverseTrace) ? "(parent is not filtered)"
        : "(has not not filtered children)";
    return string;
  }

 
  protected String getName(Object o1) {
    ITrace t = (ITrace) o1;
    return t.getName();
  }

 
  public IPreferenceStore getPreferenceStore() {
    return Activator.getDefault().getPreferenceStore();
  }

 
  protected RenderInfo getRenderInfo(Object trace) {
    AccumulatedMethod t = (AccumulatedMethod) trace;
    String name = t.getName();
    int blackLength = t.getName().indexOf(')') + 1;
    if (blackLength == 0) {
      blackLength = name.length() + 1;
    }
    return new RenderInfo(blackLength, name);
  }

 
  protected void onOpen(Object firstElement) {
    own.handleOpen(firstElement);
  }
}
TOP

Related Classes of com.onpositive.gae.profiler.ui.PerformanceConfugurableViewer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.