📄 inlinepanel.java
字号:
// System.err.println("ENTRY IS VALID FOR "+p); return JaWEManager.getInstance().getPanelValidator().validatePanel(p.getOwner(), p); } } return false; } public boolean validateElement(XMLElement el) { // boolean retVal = true; // XPDLValidator xpdlValidator = // JaWEManager.getInstance().getXPDLValidator(); // // xpdlValidator.init(JaWE.getInstance().getProperties(), // JaWEManager.getInstance() // .getXPDLHandler(), // JaWEManager.getInstance().getJaWEController().getMainPackage(), // true, true, true, true, // JaWEManager.getInstance().getJaWEController().getEncoding()); // // if (el instanceof Activity // && ((Activity) el).getActivityType() == // XPDLConstants.ACTIVITY_TYPE_SUBFLOW) { // try { // boolean isSubFlowOK = xpdlValidator.checkActivitySubFlow((Activity) el, // true); // if (!isSubFlowOK) { // JOptionPane.showMessageDialog(JaWEManager.getInstance().getJaWEController().getJaWEFrame(), // JaWEManager.getInstance().getXPDLElementEditor().getLanguageDependentString( // "ErrorSubFlowFormalAndActualParametersDoNotMatch"), JaWEManager // .getInstance().getXPDLElementEditor().getLanguageDependentString( // "ErrorMessageKey"), JOptionPane.WARNING_MESSAGE); // retVal = false; // } // } catch (Throwable e) { // retVal = false; // } // } // return retVal; return true; } public void applySpecial() { if (!canApplyChanges()) return; XMLElement el = getActiveElement(); getJaWEComponent().setUpdateInProgress(true); JaWEManager.getInstance().getJaWEController().startUndouableChange(); apply(); List toSelect = new ArrayList(); XMLElement toSel = el; if (toSel != null) { toSelect.add(toSel); } JaWEManager.getInstance().getJaWEController().endUndouableChange(toSelect); getJaWEComponent().setUpdateInProgress(false); validateElement(el); setModified(false); } public void displayParentPanel() { if (isModified) { int sw = showModifiedWarning(); if (sw == JOptionPane.CANCEL_OPTION || (sw == JOptionPane.YES_OPTION && isModified())) return; } XMLElement el = getActiveElement(); if (el != null) { XMLElement parent = el.getParent(); if (parent != null) { XMLElement choice = null; while ((choice = XMLUtil.getParentElementByAssignableType(XMLComplexChoice.class, parent)) != null) { parent = choice.getParent(); } setActiveElement(parent); JaWEManager.getInstance().getJaWEController().getSelectionManager().setSelection(parent, true); } } } public void displayGivenElement(XMLElement el) { if (isModified) { int sw = showModifiedWarning(); if (sw == JOptionPane.CANCEL_OPTION || (sw == JOptionPane.YES_OPTION && isModified())) return; } if (el != null) { setActiveElement(el); JaWEManager.getInstance().getJaWEController().getSelectionManager().setSelection(el, true); if (getJaWEComponent() instanceof JDialog && ((JDialog)getJaWEComponent()).isModal()) { ((JDialog)getJaWEComponent()).setTitle(JaWEManager.getInstance().getLabelGenerator().getLabel(el)); } } } public void displayElement(XMLElement el) { XMLPanel previousPanel = getViewPanel(); XMLElement previousElement = getActiveElement(); if (previousPanel instanceof XMLTabbedPanel && previousElement != null) { XMLTabbedPanel tp = (XMLTabbedPanel) previousPanel; Class ec = previousElement.getClass(); int activeTab = tp.getActiveTab(); lastActiveTabs.put(ec, new Integer(activeTab)); } // MUST BE SET BEFORE GENERATING NEW PANEL BECAUSE PANELGENERATOR // CAN SET THIS FLAG TO TRUE isModified = false; XMLPanel p; if (el != null) { p = this.panelGenerator.getPanel(el); } else { p = new XMLBasicPanel(); } setViewPanel(p); if (p instanceof XMLTabbedPanel) { Integer at = (Integer) lastActiveTabs.get(el.getClass()); if (at != null) { int atno = at.intValue(); XMLTabbedPanel tp = (XMLTabbedPanel) p; if (tp.getTabCount() <= at.intValue()) { atno = tp.getTabCount() - 1; lastActiveTabs.put(el.getClass(), new Integer(atno)); } tp.setActiveTab(atno); } } getPanelSettings().adjustActions(); // enableApplyAction(isModified); // enableRevertAction(isModified); } public void setActiveElement(XMLElement el) { if (hm!=null) { XMLElement current = getActiveElement(); hm.addToHistory(current, el); } displayElement(el); getPanelSettings().adjustActions(); } public void displayPreviousElement() { if (hm==null) return; if (isModified()) { int sw = showModifiedWarning(); if (sw == JOptionPane.CANCEL_OPTION || (sw == JOptionPane.YES_OPTION && isModified())) return; } if (hm.canGoBack()) { XMLElement el = hm.getPrevious(getActiveElement()); displayElement(el); JaWEManager.getInstance().getJaWEController().getSelectionManager().setSelection(el, true); getPanelSettings().adjustActions(); } } public void displayNextElement() { if (hm==null) return; if (isModified()) { int sw = showModifiedWarning(); if (sw == JOptionPane.CANCEL_OPTION || (sw == JOptionPane.YES_OPTION && isModified())) return; } if (hm.canGoForward()) { XMLElement el = hm.getNext(getActiveElement()); displayElement(el); JaWEManager.getInstance().getJaWEController().getSelectionManager().setSelection(el, true); getPanelSettings().adjustActions(); } } public int showModifiedWarning() { if (!getPanelSettings().shouldShowModifiedWarning()) return JOptionPane.NO_OPTION; int option = JOptionPane.showConfirmDialog(JaWEManager.getInstance().getJaWEController().getJaWEFrame(), getPanelSettings().getLanguageDependentString("WarningElementChanged"), getPanelSettings() .getLanguageDependentString("DialogTitle"), JOptionPane.YES_NO_CANCEL_OPTION); if (option == JOptionPane.YES_OPTION) { applySpecial(); } return option; } public void setModified(boolean isModified) { this.isModified = isModified; // enableApplyAction(isModified); // enableRevertAction(isModified); getPanelSettings().adjustActions(); } public boolean isModified() { return this.isModified; } public void cleanup() { if (hm!=null) { hm.cleanHistory(); } getPanelSettings().adjustActions(); } public void panelChanged(XMLPanel panel, EventObject ev) { isModified = true; // enableApplyAction(isModified); // enableRevertAction(isModified); getPanelSettings().adjustActions(); } public Settings getSettings() { return controller.getSettings(); } public String getLanguageDependentString(String nm) { return controller.getSettings().getLanguageDependentString(nm); } public PanelGenerator getPanelGenerator() { return panelGenerator; } public LabelGenerator getLabelGenerator() { return JaWEManager.getInstance().getLabelGenerator(); } public DisplayNameGenerator getDisplayNameGenerator() { return JaWEManager.getInstance().getDisplayNameGenerator(); } public PanelValidator getPanelValidator() { return JaWEManager.getInstance().getPanelValidator(); } public TooltipGenerator getTooltipGenerator() { return JaWEManager.getInstance().getTooltipGenerator(); } public HistoryManager getHistoryManager() { return hm; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -