⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graphmarqueehandler.java

📁 jawe的最新版本,基于Java的图形化工作流编辑器。图形化工作流编辑器 。使用JAVA语言开发
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
                                          getGraphController().getSettings().getLanguageDependentString("ErrorCannotConnectStartAndEnd"),                                          getJaWEFrame().getAppTitle(),JOptionPane.ERROR_MESSAGE);            return false;         }                     Set targetActIncomingTrans=new HashSet();         Set targetActNonExcTrans=new HashSet();         Set targetActTrans=new HashSet();         Set sourceActNonExcTrans=new HashSet();         if (!(targetActivity instanceof GraphBubbleActivityInterface)) {            targetActIncomingTrans.addAll(XMLUtil.getIncomingTransitions((Activity)targetActivity.getPropertyObject()));            targetActTrans.addAll(XMLUtil.getOutgoingTransitions((Activity)targetActivity.getPropertyObject()));            targetActNonExcTrans.addAll(XMLUtil.getNonExceptionalOutgoingTransitions((Activity)targetActivity.getPropertyObject()));         }         if (!(sourceActivity instanceof GraphBubbleActivityInterface)) {            sourceActNonExcTrans.addAll(XMLUtil.getNonExceptionalOutgoingTransitions((Activity)sourceActivity.getPropertyObject()));                        }         // if target is end bubble, do not allow connection if source is already connected          // to another end bubble, or to some other activity except itself or if transition is exceptional one         if (targetActivity instanceof GraphBubbleActivityInterface) { // must be end bubble in that case                                if (GraphManager.hasConnectedEndBubble(sourceActivity) ||                  !(sourceActNonExcTrans.size()==0 || (sourceActNonExcTrans.size()==1 && JaWEManager.getInstance().getXPDLUtils().hasCircularTransitions(sourceActNonExcTrans)))) {                JOptionPane.showMessageDialog(getJaWEFrame(),                     getGraphController().getSettings().getLanguageDependentString(                        "ErrorEndingActivityCannotHaveOutgoingTransitions"),                     getJaWEFrame().getAppTitle(),JOptionPane.ERROR_MESSAGE);               return false;            }                        return true;         }                                 // if source is start bubble, do not allow connection if target is already connected          // to another start bubble, or some other activity except itself                            if (sourceActivity instanceof GraphBubbleActivityInterface) { // must be start bubble in that case            if (GraphManager.hasConnectedStartBubble(targetActivity) ||                   !(targetActIncomingTrans.size()==0 || (targetActIncomingTrans.size()==1 && JaWEManager.getInstance().getXPDLUtils().hasCircularTransitions(targetActIncomingTrans)))) {                                 JOptionPane.showMessageDialog(getJaWEFrame(),                                             getGraphController().getSettings().getLanguageDependentString(                                                "ErrorStartingActivityCannotHaveIncomingTransitions"),                                             getJaWEFrame().getAppTitle(),JOptionPane.ERROR_MESSAGE);               return false;            }                             if (!JaWEManager.getInstance().getTransitionHandler().acceptsTarget((Activity)targetActivity.getUserObject())) {               JOptionPane.showMessageDialog(getJaWEFrame(), getGraphController().getSettings().getLanguageDependentString(               "WarningCannotAcceptMoreIncomingTransitions"), getJaWEFrame().getAppTitle(),               JOptionPane.WARNING_MESSAGE);               return false;                           }                        return true;         }                  boolean circularTransition=(sourceActivity==targetActivity);         if (GraphManager.hasConnectedStartBubble(targetActivity) && !circularTransition) {            JOptionPane.showMessageDialog(getJaWEFrame(),                  getGraphController().getSettings().getLanguageDependentString(                     "ErrorStartingActivityCannotHaveIncomingTransitions"),                  getJaWEFrame().getAppTitle(),JOptionPane.ERROR_MESSAGE);            return false;                        }         if (!(sourceActivity instanceof GraphBubbleActivityInterface)) {            if (GraphManager.hasConnectedEndBubble(sourceActivity)                  && !(isExceptionalTrans || circularTransition)) {               JOptionPane.showMessageDialog(getJaWEFrame(), getGraphController().getSettings()                     .getLanguageDependentString("ErrorEndingActivityCannotHaveOutgoingTransitions"), getJaWEFrame()                     .getAppTitle(), JOptionPane.INFORMATION_MESSAGE);               return false;            }         }         Activity a = (Activity)sourceActivity.getUserObject();         Activity b = (Activity)targetActivity.getUserObject();          List status = new ArrayList(1);         if(!JaWEManager.getInstance().getTransitionHandler().allowsConnection(a,b,t,isExceptionalTrans,status)) {             String errorMsg = "WarningSourceActivityCannotHaveMoreOutgoingTransitions";             boolean isError=false;             if(((Integer)status.get(0)).intValue() == 2) {                 errorMsg = "WarningTargetActivityCannotHaveMoreIncomingTransitions";             } else if (((Integer)status.get(0)).intValue() == 3) {                isError=true;                errorMsg = "ErrorActivityCannotHaveMoreThenOneIncomingOutgoingTransitionFromToTheSameActivity";             }             JOptionPane.showMessageDialog(getJaWEFrame(),                     getGraphController().getSettings().getLanguageDependentString(errorMsg),                     getJaWEFrame().getAppTitle(),isError ? JOptionPane.ERROR_MESSAGE:JOptionPane.INFORMATION_MESSAGE);             return false;         }                  return true;      }                  return false;      }   protected GraphController getGraphController () {      return graphController;   }   protected Graph getGraph () {      return getGraphController().getSelectedGraph();   }   protected GraphManager getGraphManager () {      return getGraph().getGraphManager();   }   protected JaWEController getJaWEController () {      return JaWEManager.getInstance().getJaWEController();   }   protected JaWEFrame getJaWEFrame () {      return getJaWEController().getJaWEFrame();   }         public boolean isSelectButtonSelected () {      return mainType.equals(GraphEAConstants.SELECT_TYPE);   }      protected boolean isParticipantButtonSelected () {      return mainType.equals(JaWEConstants.PARTICIPANT_TYPE);   }   protected boolean isActivityButtonSelected () {      return mainType.equals(JaWEConstants.ACTIVITY_TYPE);   }   public boolean isTransitionButtonSelected () {      return mainType.equals(JaWEConstants.TRANSITION_TYPE);   }   protected boolean isStartButtonSelected () {      return mainType.equals(GraphEAConstants.START_TYPE);   }   protected boolean isEndButtonSelected () {      return mainType.equals(GraphEAConstants.END_TYPE);   }      public void addPoint(Point p) {      points.add(p);   }      public int getStatus() {      if (isSelectButtonSelected()) {         return JaWEGraphUI.SELECTION;      } else if (isParticipantButtonSelected()) {         return JaWEGraphUI.INSERT_PARTICIPANT;      } else if (isTransitionButtonSelected()) {         return JaWEGraphUI.INSERT_TRANSITION_START;      } else {         return JaWEGraphUI.INSERT_ELEMENT;      }         }      public void setSelectionMode() {      mainType = GraphEAConstants.SELECT_TYPE;      subType = GraphEAConstants.SELECT_TYPE_DEFAULT;            getGraph().setCursor(Cursor.getDefaultCursor());            reset();   }         public void reset () {      firstPort=null;      port = null;      start = null;      current = null;      getGraph().repaint();            ((JaWEGraphUI) getGraph().getUI()).reset();   }   public void popupMenu(Point pPopupPoint) {      double scale = getGraph().getScale();      Point p = new Point();      p.setLocation(pPopupPoint.getX()/scale, pPopupPoint.getY()/scale);      Object cell = getGraph().getFirstCellForLocation(p.x, p.y);      // needed for addPoint, etc.      this.popupPoint = new Point(p);      JPopupMenu menu = createPopupMenu(cell);      menu.show(getGraph(), (int) pPopupPoint.getX(), (int) pPopupPoint.getY());   }      public void insertParticipant() {      graphController.setUpdateInProgress(true);                         Participant toInsert=null;      Participants pars=getGraph().getWorkflowProcess().getParticipants();      String idForVO=null;      boolean insertIntoCollection=false;      if (GraphEAConstants.PARTICIPANT_TYPE_FREE_TEXT_EXPRESSION.equals(subType)) {         if (!getGraphManager().isFreeTextExpressionParticipantShown()) {            toInsert=FreeTextExpressionParticipant.getInstance();            idForVO=toInsert.getId();            setSelectionMode();         } else {            return;         }      } else if (GraphEAConstants.PARTICIPANT_TYPE_COMMON_EXPRESSION.equals(subType)) {         toInsert=CommonExpressionParticipants.getInstance().generateCommonExpressionParticipant(getGraph().getXPDLObject());         idForVO=CommonExpressionParticipants.getInstance().getIdForVisualOrderEA(toInsert.getId());      } else {         toInsert = JaWEManager.getInstance().getXPDLObjectFactory().createXPDLObject(               pars, subType, false);                  idForVO=toInsert.getId();         insertIntoCollection=true;      }      JaWEManager.getInstance().getJaWEController().startUndouableChange();                         if (insertIntoCollection) {         pars.add(toInsert);      }      List vo = GraphUtilities.getParticipantVisualOrder(getGraph().getXPDLObject());      vo.add(idForVO);      GraphUtilities.setParticipantVisualOrder(getGraph().getXPDLObject(), vo);      getGraphManager().insertParticipantAndArrangeParticipants(toInsert);      List toSelect=new ArrayList();      toSelect.add(toInsert);      JaWEManager.getInstance().getJaWEController().endUndouableChange(toSelect);      graphController.setUpdateInProgress(false);        //      getGraph().selectParticipant(toInsert);      graphController.adjustActions();   }   public void insertSpecialElement() {//      if (isActivitySetButtonSelected()) {//         Graph g = getGraph();//         if (g != null) {//            JaWEManager.getInstance().getJaWEController().startUndouableChange();  //            ActivitySets ass=g.getWorkflowProcess().getActivitySets();            //            ActivitySet as=JaWEManager.getInstance().getXPDLObjectFactory().createXPDLObject(ass,//                  getSelectedButtonType(), true);//            JaWEManager.getInstance().getJaWEController().endUndouableChange();                         //         }//      }   }   public void insertElement(Point whereTo) {      // if activity is selected      if (isActivityButtonSelected()) {         if (!getGraphManager().doesRootParticipantExist()) {            JaWEFrame frame = JaWEManager.getInstance().getJaWEController().getJaWEFrame();            JOptionPane.showMessageDialog(frame, getGraphController().getSettings().getLanguageDependentString(                  "WarningInvalidOperation"), frame.getAppTitle(),                  JOptionPane.WARNING_MESSAGE);         } else {            GraphParticipantInterface gpar = getGraphManager().findParentActivityParticipantForLocation(whereTo, null,                  null);            Point partLoc = getGraphManager().getBounds(gpar, null).getBounds().getLocation();            Point off = new Point(whereTo.x - partLoc.x, whereTo.y - partLoc.y);            String partId = gpar.getPropertyObject().get("Id").toValue();            Activities acts = (Activities) getGraph().getXPDLObject().get("Activities");            Activity act = JaWEManager.getInstance().getXPDLObjectFactory().createXPDLObject(acts, subType, false);            GraphUtilities.setOffsetPoint(act, off);            GraphUtilities.setParticipantId(act, partId);            int acttype=act.getActivityType();            if (acttype==XPDLConstants.ACTIVITY_TYPE_NO || acttype==XPDLConstants.ACTIVITY_TYPE_TOOL) {               if (!partId.equals(FreeTextExpressionParticipant.getInstance().getId())) {                  act.setPerformer(partId);               }            }            graphController.setUpdateInProgress(true);                                           JaWEManager.getInstance().getJaWEController().startUndouableChange();                         acts.add(act);

⌨️ 快捷键说明

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