1 22 package org.aspectj.debugger.gui; 23 24 import java.util.*; 25 26 abstract class MethodNode extends AJTreeNode 27 implements Sourceable, 28 Breakable, 29 Advisedable { 30 31 protected MethodHelper helper; 32 33 protected MethodNode(MethodHelper helper) { 34 super(AJIcons.METHOD_ICON); 35 this.helper = helper; 36 setUserObject(helper.getDisplayName()); 37 setAlwaysExpand(true); 38 } 39 40 public String getRealName() { 41 return helper.getRealName(); 42 } 43 44 public String getToolTipText() { 45 return showClass() + helper.getToolTipText(); 46 } 47 48 private String showClass() { 49 if (getParent() instanceof AdviceNode) { 50 return helper.getClassName() + "."; 51 } 52 return ""; 53 } 54 55 public void showOnSource(AbstractSourcePane sourcePane) { 56 sourcePane.showSourceForFileAndLine(helper.getRelativePath(), 57 helper.getLine()); 58 } 59 60 public String getBreakpoint() { 61 return helper.getBreakpoint(); 62 } 63 64 public abstract List getAdviceStrings(); 65 66 public int getType() { 67 return helper.getType(); 68 } 69 70 public static int getType(boolean isCtr, 71 boolean isStatic, 72 boolean isPublic, 73 boolean isPrivate, 74 boolean isProtected) { 75 if (isStatic) { 76 if (isPublic) return AJIcons.METHOD_STATIC_PUBLIC_ICON; 77 if (isProtected) return AJIcons.METHOD_STATIC_PROTECTED_ICON; 78 if (isPrivate) return AJIcons.METHOD_STATIC_PRIVATE_ICON; 79 else return AJIcons.METHOD_STATIC_PACKAGE_ICON; 80 } else if (isCtr) { 81 if (isPublic) return AJIcons.CTR_PUBLIC_ICON; 82 if (isProtected) return AJIcons.CTR_PROTECTED_ICON; 83 if (isPrivate) return AJIcons.CTR_PRIVATE_ICON; 84 else return AJIcons.CTR_PACKAGE_ICON; 85 } else { 86 if (isPublic) return AJIcons.METHOD_PUBLIC_ICON; 87 if (isProtected) return AJIcons.METHOD_PROTECTED_ICON; 88 if (isPrivate) return AJIcons.METHOD_PRIVATE_ICON; 89 else return AJIcons.METHOD_PACKAGE_ICON; 90 } 91 } 92 } 93 | Popular Tags |