standardtooltipgenerator.java

来自「jawe的最新版本,基于Java的图形化工作流编辑器。图形化工作流编辑器 。使用」· Java 代码 · 共 796 行 · 第 1/2 页

JAVA
796
字号
package org.enhydra.jawe.base.tooltip;import java.lang.reflect.Method;import java.util.Iterator;import java.util.Map;import org.enhydra.jawe.JaWEComponent;import org.enhydra.jawe.JaWEConstants;import org.enhydra.jawe.JaWEManager;import org.enhydra.jawe.ResourceManager;import org.enhydra.jawe.Settings;import org.enhydra.jawe.base.display.DisplayNameGenerator;import org.enhydra.jawe.base.label.LabelGenerator;import org.enhydra.shark.utilities.SequencedHashMap;import org.enhydra.shark.xpdl.XMLAttribute;import org.enhydra.shark.xpdl.XMLCollection;import org.enhydra.shark.xpdl.XMLCollectionElement;import org.enhydra.shark.xpdl.XMLComplexChoice;import org.enhydra.shark.xpdl.XMLComplexElement;import org.enhydra.shark.xpdl.XMLElement;import org.enhydra.shark.xpdl.XMLEmptyChoiceElement;import org.enhydra.shark.xpdl.XMLSimpleElement;import org.enhydra.shark.xpdl.elements.Activities;import org.enhydra.shark.xpdl.elements.Activity;import org.enhydra.shark.xpdl.elements.ActivitySet;import org.enhydra.shark.xpdl.elements.ActivitySets;import org.enhydra.shark.xpdl.elements.ActivityTypes;import org.enhydra.shark.xpdl.elements.ActualParameter;import org.enhydra.shark.xpdl.elements.ActualParameters;import org.enhydra.shark.xpdl.elements.Application;import org.enhydra.shark.xpdl.elements.ApplicationTypes;import org.enhydra.shark.xpdl.elements.Applications;import org.enhydra.shark.xpdl.elements.ArrayType;import org.enhydra.shark.xpdl.elements.Author;import org.enhydra.shark.xpdl.elements.Automatic;import org.enhydra.shark.xpdl.elements.BasicType;import org.enhydra.shark.xpdl.elements.BlockActivity;import org.enhydra.shark.xpdl.elements.Codepage;import org.enhydra.shark.xpdl.elements.Condition;import org.enhydra.shark.xpdl.elements.ConformanceClass;import org.enhydra.shark.xpdl.elements.Cost;import org.enhydra.shark.xpdl.elements.CostUnit;import org.enhydra.shark.xpdl.elements.Countrykey;import org.enhydra.shark.xpdl.elements.Created;import org.enhydra.shark.xpdl.elements.DataField;import org.enhydra.shark.xpdl.elements.DataFields;import org.enhydra.shark.xpdl.elements.DataType;import org.enhydra.shark.xpdl.elements.DataTypes;import org.enhydra.shark.xpdl.elements.Deadline;import org.enhydra.shark.xpdl.elements.DeadlineCondition;import org.enhydra.shark.xpdl.elements.Deadlines;import org.enhydra.shark.xpdl.elements.DeclaredType;import org.enhydra.shark.xpdl.elements.Description;import org.enhydra.shark.xpdl.elements.Documentation;import org.enhydra.shark.xpdl.elements.Duration;import org.enhydra.shark.xpdl.elements.EnumerationType;import org.enhydra.shark.xpdl.elements.EnumerationValue;import org.enhydra.shark.xpdl.elements.ExceptionName;import org.enhydra.shark.xpdl.elements.ExtendedAttribute;import org.enhydra.shark.xpdl.elements.ExtendedAttributes;import org.enhydra.shark.xpdl.elements.ExternalPackage;import org.enhydra.shark.xpdl.elements.ExternalPackages;import org.enhydra.shark.xpdl.elements.ExternalReference;import org.enhydra.shark.xpdl.elements.FinishMode;import org.enhydra.shark.xpdl.elements.FormalParameter;import org.enhydra.shark.xpdl.elements.FormalParameters;import org.enhydra.shark.xpdl.elements.Icon;import org.enhydra.shark.xpdl.elements.Implementation;import org.enhydra.shark.xpdl.elements.ImplementationTypes;import org.enhydra.shark.xpdl.elements.InitialValue;import org.enhydra.shark.xpdl.elements.Join;import org.enhydra.shark.xpdl.elements.Length;import org.enhydra.shark.xpdl.elements.Limit;import org.enhydra.shark.xpdl.elements.ListType;import org.enhydra.shark.xpdl.elements.Manual;import org.enhydra.shark.xpdl.elements.Member;import org.enhydra.shark.xpdl.elements.Namespace;import org.enhydra.shark.xpdl.elements.Namespaces;import org.enhydra.shark.xpdl.elements.No;import org.enhydra.shark.xpdl.elements.PackageHeader;import org.enhydra.shark.xpdl.elements.Participant;import org.enhydra.shark.xpdl.elements.ParticipantType;import org.enhydra.shark.xpdl.elements.Participants;import org.enhydra.shark.xpdl.elements.Performer;import org.enhydra.shark.xpdl.elements.Priority;import org.enhydra.shark.xpdl.elements.PriorityUnit;import org.enhydra.shark.xpdl.elements.ProcessHeader;import org.enhydra.shark.xpdl.elements.RecordType;import org.enhydra.shark.xpdl.elements.RedefinableHeader;import org.enhydra.shark.xpdl.elements.Responsible;import org.enhydra.shark.xpdl.elements.Responsibles;import org.enhydra.shark.xpdl.elements.Route;import org.enhydra.shark.xpdl.elements.SchemaType;import org.enhydra.shark.xpdl.elements.Script;import org.enhydra.shark.xpdl.elements.SimulationInformation;import org.enhydra.shark.xpdl.elements.Split;import org.enhydra.shark.xpdl.elements.StartFinishModes;import org.enhydra.shark.xpdl.elements.StartMode;import org.enhydra.shark.xpdl.elements.SubFlow;import org.enhydra.shark.xpdl.elements.TimeEstimation;import org.enhydra.shark.xpdl.elements.Tool;import org.enhydra.shark.xpdl.elements.Tools;import org.enhydra.shark.xpdl.elements.Transition;import org.enhydra.shark.xpdl.elements.TransitionRef;import org.enhydra.shark.xpdl.elements.TransitionRefs;import org.enhydra.shark.xpdl.elements.TransitionRestriction;import org.enhydra.shark.xpdl.elements.TransitionRestrictions;import org.enhydra.shark.xpdl.elements.Transitions;import org.enhydra.shark.xpdl.elements.TypeDeclaration;import org.enhydra.shark.xpdl.elements.TypeDeclarations;import org.enhydra.shark.xpdl.elements.UnionType;import org.enhydra.shark.xpdl.elements.ValidFrom;import org.enhydra.shark.xpdl.elements.ValidTo;import org.enhydra.shark.xpdl.elements.Vendor;import org.enhydra.shark.xpdl.elements.Version;import org.enhydra.shark.xpdl.elements.WaitingTime;import org.enhydra.shark.xpdl.elements.WorkflowProcess;import org.enhydra.shark.xpdl.elements.WorkflowProcesses;import org.enhydra.shark.xpdl.elements.WorkingTime;import org.enhydra.shark.xpdl.elements.XPDLVersion;/** * Used to generate tooltips for representing XPDL entities. *  * @author Sasa Bojanic */public class StandardTooltipGenerator implements TooltipGenerator {   /** Used for tooltips */   public static final String EMPTY_STRING = "";   /** Used for tooltips */   public static final String HTML_OPEN = "<html>";   /** Used for tooltips */   public static final String HTML_CLOSE = "</html>";   /** Used for tooltips */   public static final String STRONG_OPEN = "<strong>";   /** Used for tooltips */   public static final String STRONG_CLOSE = "</strong>";   /** Used for tooltips */   public static final String LINE_BREAK = "<br>";   /** Used for tooltips */   public static final String COLON_SPACE = ": ";   protected TooltipGeneratorSettings settings;   public StandardTooltipGenerator() {      settings = new TooltipGeneratorSettings();      settings.init((JaWEComponent) null);   }   public StandardTooltipGenerator(TooltipGeneratorSettings settings) {      this.settings = settings;      this.settings.init((JaWEComponent) null);   }   public String getTooltip(Activities el) {      return generateStandardTooltip(el);   }   public String getTooltip(Activity el) {      LabelGenerator lg = JaWEManager.getInstance().getLabelGenerator();      Map toDisplay = new SequencedHashMap();      putKeyValue(toDisplay, el.get("Id"));      putKeyValue(toDisplay, el.get("Name"));      putKeyValue(toDisplay, el.get("Description"));      putKeyValue(toDisplay, el.get("Performer"));      putKeyValue(toDisplay, el.getStartMode());      putKeyValue(toDisplay, el.getFinishMode());      putKeyValue(toDisplay, el.get("Priority"));      putKeyValue(toDisplay, el.get("Limit"));      if (el.getTransitionRestrictions().size() > 0) {         TransitionRestriction tr = (TransitionRestriction) el.getTransitionRestrictions().get(0);         putKeyValue(toDisplay, tr.getJoin());         putKeyValue(toDisplay, tr.getSplit());      } else {         toDisplay.put(lg.getLabel(new Join(null)), "");         toDisplay.put(lg.getLabel(new Split(null)), "");      }      fillTypePartOfTooltip(el, toDisplay);      return makeTooltip(toDisplay);   }   protected void fillTypePartOfTooltip(Activity el, Map toDisplay) {      LabelGenerator lg = JaWEManager.getInstance().getLabelGenerator();      String label, key;      label = lg.getLabel(el.getActivityTypes());      String type = JaWEManager.getInstance().getJaWEController().getTypeResolver().getJaWEType(el).getTypeId();      key = settings.getLanguageDependentString(type); // lg.getLabel(tp);      if (key == null || key.equals("")) {         key = type;      }      toDisplay.put(label, key);      if (type.equals(JaWEConstants.ACTIVITY_TYPE_TOOL)) {         label = settings.getLanguageDependentString("NoOfToolsKey");         key = String.valueOf(el.getActivityTypes().getImplementation().getImplementationTypes().getTools().size());         toDisplay.put(label, key);      }      if (type.equals(JaWEConstants.ACTIVITY_TYPE_SUBFLOW)) {         label = settings.getLanguageDependentString("ReferencedProcessKey");         key = el.getActivityTypes().getImplementation().getImplementationTypes().getSubFlow().getId();         if (key.equals("")) {            key = settings.getLanguageDependentString("NoneKey");         }         toDisplay.put(label, key);      }      if (type.equals(JaWEConstants.ACTIVITY_TYPE_ROUTE)) {         // tpSpecific=new XMLElement("Condition");         // tpSpecific.setValue(getLoop().get("Condition").toString());      }      if (type.equals(JaWEConstants.ACTIVITY_TYPE_BLOCK)) {         label = settings.getLanguageDependentString("ReferencedActivitySetKey");         key = el.getActivityTypes().getBlockActivity().getBlockId();         if (key.equals("")) {            key = settings.getLanguageDependentString("NoneKey");         }         toDisplay.put(label, key);      }   }   public String getTooltip(ActivitySet el) {      return generateStandardTooltip(el);   }   public String getTooltip(ActivitySets el) {      return generateStandardTooltip(el);   }   public String getTooltip(ActivityTypes el) {      return generateStandardTooltip(el);   }   public String getTooltip(ActualParameter el) {      return generateStandardTooltip(el);   }   public String getTooltip(ActualParameters el) {      return generateStandardTooltip(el);   }   public String getTooltip(Application el) {      return generateStandardTooltip(el);   }   public String getTooltip(Applications el) {      return generateStandardTooltip(el);   }   public String getTooltip(ApplicationTypes el) {      return generateStandardTooltip(el);   }   public String getTooltip(ArrayType el) {      return ResourceManager.getLanguageDependentString("SubTypeKey");      // return generateStandardLabel(el);   }   public String getTooltip(Author el) {      return generateStandardTooltip(el);   }   public String getTooltip(Automatic el) {      return generateStandardTooltip(el);   }   public String getTooltip(BasicType el) {      return ResourceManager.getLanguageDependentString("SubTypeKey");   }   public String getTooltip(BlockActivity el) {      return generateStandardTooltip(el);   }   public String getTooltip(Codepage el) {      return generateStandardTooltip(el);   }   public String getTooltip(Condition el) {      return generateStandardTooltip(el);   }   public String getTooltip(ConformanceClass el) {      return generateStandardTooltip(el);   }   public String getTooltip(Cost el) {      return generateStandardTooltip(el);   }   public String getTooltip(CostUnit el) {      return generateStandardTooltip(el);   }   public String getTooltip(Countrykey el) {      return generateStandardTooltip(el);   }   public String getTooltip(Created el) {      return generateStandardTooltip(el);   }   public String getTooltip(DataField el) {      return generateStandardTooltip(el);   }   public String getTooltip(DataFields el) {      return generateStandardTooltip(el);   }   public String getTooltip(DataType el) {      return generateStandardTooltip(el);   }   public String getTooltip(DataTypes el) {      return generateStandardTooltip(el);   }   public String getTooltip(Deadline el) {      return generateStandardTooltip(el);   }   public String getTooltip(DeadlineCondition el) {      return generateStandardTooltip(el);   }   public String getTooltip(Deadlines el) {      return generateStandardTooltip(el);   }   public String getTooltip(DeclaredType el) {      return ResourceManager.getLanguageDependentString("SubTypeKey");   }   public String getTooltip(Description el) {      return generateStandardTooltip(el);   }   public String getTooltip(Documentation el) {      return generateStandardTooltip(el);   }   public String getTooltip(Duration el) {      return generateStandardTooltip(el);   }   public String getTooltip(EnumerationType el) {      return generateStandardTooltip(el);   }   public String getTooltip(EnumerationValue el) {      return generateStandardTooltip(el);   }   public String getTooltip(ExceptionName el) {      return generateStandardTooltip(el);   }   public String getTooltip(ExtendedAttribute el) {      return generateStandardTooltip(el);   }   public String getTooltip(ExtendedAttributes el) {      return generateStandardTooltip(el);   }   public String getTooltip(ExternalPackage el) {      return generateStandardTooltip(el);   }   public String getTooltip(ExternalPackages el) {      return generateStandardTooltip(el);   }   public String getTooltip(ExternalReference el) {      return generateStandardTooltip(el);   }   public String getTooltip(FinishMode el) {      return generateStandardTooltip(el);   }   public String getTooltip(FormalParameter el) {      return generateStandardTooltip(el);   }   public String getTooltip(FormalParameters el) {      return generateStandardTooltip(el);   }   public String getTooltip(Icon el) {      return generateStandardTooltip(el);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?