亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? actioneditor.java

?? 一個很好實用的工作流OSWORKFLOW開發例子.有著非常優秀的靈活性.
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package com.opensymphony.workflow.designer.editor;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

import com.jgoodies.forms.builder.PanelBuilder;
import com.jgoodies.forms.layout.CellConstraints;
import com.jgoodies.forms.layout.FormLayout;
import com.opensymphony.workflow.designer.dialogs.AttributeDialog;
import com.opensymphony.workflow.designer.WorkflowDesigner;
//import com.opensymphony.workflow.designer.InitialActionCell;
import com.opensymphony.workflow.designer.ResourceManager;
import com.opensymphony.workflow.designer.UIFactory;
import com.opensymphony.workflow.designer.beanutils.BeanConnector;
import com.opensymphony.workflow.designer.model.ConditionsTableModel;
import com.opensymphony.workflow.designer.model.FunctionsTableModel;
import com.opensymphony.workflow.designer.model.AttributesTableModel;
import com.opensymphony.workflow.designer.model.ValidatorsTableModel;
import com.opensymphony.workflow.loader.*;

/**
 * @author jackflit
 *         Date: 2003-11-18
 */
public class ActionEditor extends DetailPanel implements ActionListener
{
  private static final String[] BUTTONS = new String[]{"add", "remove", "edit"};

  private JTextField id = UIFactory.createReadOnlyTextField(12);
  private JTextField name = new JTextField(12);
  private JTextField view = new JTextField(12);
  private JCheckBox auto = new JCheckBox();
  private JCheckBox finish = new JCheckBox();
  private JComboBox restrict = new JComboBox(new String[]{"AND", "OR"});

  private ConditionsTableModel conditionsModel = new ConditionsTableModel();
  private JTable conditionsTable;

  private FunctionsTableModel preModel = new FunctionsTableModel();
  private JTable pre;

  private FunctionsTableModel postModel = new FunctionsTableModel();
  private JTable post;

  private AttributesTableModel attributesModel = new AttributesTableModel();
  private JTable attributesTable;

  private ValidatorsTableModel validatorsModel = new ValidatorsTableModel();
  private JTable validatorsTable;

  private BeanConnector connector = new BeanConnector();
  private ActionDescriptor descriptor;

  public ActionEditor()
  {
  }

  protected void initComponents()
  {
    String colLayout = "2dlu, max(32dlu;pref), 2dlu, pref:grow, 4dlu";
    String rowLayout = "4dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref";

    JTabbedPane tabbedPane = new JTabbedPane();
    FormLayout layout = new FormLayout("2dlu, pref:grow, 2dlu", "2dlu, pref, 2dlu");
    PanelBuilder builder = new PanelBuilder(this, layout);
    CellConstraints cc = new CellConstraints();

    ////////////////////////////////////
    // Tab1 (info)
    ////////////////////////////////////
    FormLayout layoutInfo = new FormLayout(colLayout, rowLayout);
    JPanel panelInfo = new JPanel();
    PanelBuilder builderInfo = new PanelBuilder(panelInfo, layoutInfo);
    //builder.addSeparator(ResourceManager.getString("info"), cc.xywh(2, 1, 3, 1));

    builderInfo.addLabel(ResourceManager.getString("id"), cc.xy(2, 2));
    connector.connect(id, "id");
    builderInfo.add(id, cc.xy(4, 2));

    builderInfo.addLabel(ResourceManager.getString("name"), cc.xy(2, 4));
    connector.connect(name, "name");
    builderInfo.add(name, cc.xy(4, 4));

    builderInfo.addLabel(ResourceManager.getString("view"), cc.xy(2, 6));
    connector.connect(view, "view");
    builderInfo.add(view, cc.xy(4, 6));

    builderInfo.addLabel(ResourceManager.getString("auto"), cc.xy(2, 8));
    connector.connect(auto, "autoExecute");
    builderInfo.add(auto, cc.xy(4, 8));

    builderInfo.addLabel(ResourceManager.getString("finish"), cc.xy(2, 10));
    connector.connect(finish, "finish");
    builderInfo.add(finish, cc.xy(4, 10));

    tabbedPane.add(ResourceManager.getString("info"), panelInfo);

    ///////////////////////////
    // Tab2 (meta attributes)
    ///////////////////////////
    FormLayout layoutAttrib = new FormLayout(colLayout, rowLayout);
    JPanel panelAttrib = new JPanel();
    PanelBuilder builderAttrib = new PanelBuilder(panelAttrib, layoutAttrib);

    attributesTable = new JTable(attributesModel);
    attributesTable.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    builderAttrib.add(UIFactory.createTablePanel(attributesTable), cc.xywh(2, 2, 3, 1));		// 2, 15, 3, 1
    builderAttrib.add(UIFactory.getAddRemovePropertiesBar(this, "attribute", BUTTONS), cc.xywh(2, 4, 3, 1));	// 2, 16, 3, 1

    tabbedPane.add(ResourceManager.getString("attributes"), panelAttrib);


    /////////////////////////////
    // Tab3 (permissions)
    /////////////////////////////
    FormLayout layoutPerm = new FormLayout(colLayout, rowLayout);
    JPanel panelPerm = new JPanel();
    PanelBuilder builderPerm = new PanelBuilder(panelPerm, layoutPerm);
    //builderInfo.addSeparator(ResourceManager.getString("permissions"), cc.xywh(2, 8, 3, 1));

    builderPerm.addLabel(ResourceManager.getString("type"), cc.xy(2, 2));
    connector.connect(restrict, "restriction.conditionType");
    builderPerm.add(restrict, cc.xy(4, 2));

    conditionsTable = new JTable(conditionsModel);
    conditionsTable.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    conditionsModel.setType(ConditionsTableModel.PERMISSION);
    conditionsModel.setGraphModel(getModel());
    builderPerm.add(UIFactory.createTablePanel(conditionsTable), cc.xywh(2, 4, 3, 1));
    builderPerm.add(UIFactory.getAddRemovePropertiesBar(this, "permission", BUTTONS), cc.xywh(2, 6, 3, 1));

    tabbedPane.add(ResourceManager.getString("permissions"), panelPerm);

    /////////////////////////////
    // Tab4 (validators)
    /////////////////////////////
    FormLayout layoutValid = new FormLayout(colLayout, rowLayout);
    JPanel panelValid = new JPanel();
    PanelBuilder builderValid = new PanelBuilder(panelValid, layoutValid);

    validatorsTable = new JTable(validatorsModel);
    validatorsTable.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    //validatorsModel.setGraphModel(getModel());
    builderValid.add(UIFactory.createTablePanel(validatorsTable), cc.xywh(2, 2, 3, 1));
    builderValid.add(UIFactory.getAddRemovePropertiesBar(this, "validator", BUTTONS), cc.xywh(2, 4, 3, 1));

    tabbedPane.add(ResourceManager.getString("validators"), panelValid);


    /////////////////////////////
    // Tab5 (pre-functions)
    /////////////////////////////
    FormLayout layoutPrefunc = new FormLayout(colLayout, rowLayout);
    JPanel panelPrefunc = new JPanel();
    PanelBuilder builderPrefunc = new PanelBuilder(panelPrefunc, layoutPrefunc);

    pre = new JTable(preModel);
    pre.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    preModel.setGraphModel(getModel());
    builderPrefunc.add(UIFactory.createTablePanel(pre), cc.xywh(2, 2, 3, 1));
    builderPrefunc.add(UIFactory.getAddRemovePropertiesBar(this, "pre", BUTTONS), cc.xywh(2, 4, 3, 1));

    tabbedPane.add(ResourceManager.getString("prefunctions"), panelPrefunc);

    /////////////////////////////
    // Tab6 (post-functions)
    /////////////////////////////
    FormLayout layoutPostfunc = new FormLayout(colLayout, rowLayout);
    JPanel panelPostfunc = new JPanel();
    PanelBuilder builderPostfunc = new PanelBuilder(panelPostfunc, layoutPostfunc);

    post = new JTable(postModel);
    post.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    postModel.setGraphModel(getModel());
    builderPostfunc.add(UIFactory.createTablePanel(post), cc.xywh(2, 2, 3, 1));
    builderPostfunc.add(UIFactory.getAddRemovePropertiesBar(this, "post", BUTTONS), cc.xywh(2, 4, 3, 1));

    tabbedPane.add(ResourceManager.getString("postfunctions"), panelPostfunc);

    builder.add(tabbedPane, cc.xy(2, 2));
  }

  public String getTitle()
  {
    return ResourceManager.getString("title.start");
  }

  protected void viewClosed()
  {
    if(conditionsTable.isEditing())
    {
      conditionsTable.getCellEditor().stopCellEditing();
    }

    if(pre.isEditing())
    {
      pre.getCellEditor().stopCellEditing();
    }

    if(post.isEditing())
    {
      post.getCellEditor().stopCellEditing();
    }

    if(attributesTable.isEditing())
    {
      attributesTable.getCellEditor().stopCellEditing();
    }

    if(validatorsTable.isEditing())
    {
      validatorsTable.getCellEditor().stopCellEditing();
    }
  }

  protected void updateView()
  {
    descriptor = (ActionDescriptor)getDescriptor();
    RestrictionDescriptor restriction = descriptor.getRestriction();
    if(restriction == null)
    {
      restriction = new RestrictionDescriptor();
      restriction.setParent(descriptor);
      ConditionsDescriptor conditions = DescriptorFactory.getFactory().createConditionsDescriptor();
      restriction.setConditionsDescriptor(conditions);
      conditions.setParent(restriction);
      conditions.setType((String)restrict.getSelectedItem());
      descriptor.setRestriction(restriction);
    }
    conditionsModel.setList(restriction.getConditionsDescriptor().getConditions());
    conditionsTable.getSelectionModel().clearSelection();

    preModel.setList(descriptor.getPreFunctions());
    pre.getSelectionModel().clearSelection();

    postModel.setList(descriptor.getPostFunctions());
    post.getSelectionModel().clearSelection();

    attributesModel.setMap(descriptor.getMetaAttributes());
    attributesTable.getSelectionModel().clearSelection();

    validatorsModel.setList(descriptor.getValidators());
    validatorsTable.getSelectionModel().clearSelection();

    connector.setSource(descriptor);
  }

  public void actionPerformed(ActionEvent e)
  {
    String command = e.getActionCommand();

    if(command.equals("attributeadd"))
    {
      attributeadd();
    }
    else if(command.equals("attributeremove"))
    {
      attributeremove();
    }
    else if(command.equals("attributeedit"))
    {
      attributemodify();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品乱码久久久久久黑人| 久久av老司机精品网站导航| 欧美亚洲禁片免费| 亚洲一区视频在线| 在线播放国产精品二区一二区四区| 天天色综合天天| 欧美哺乳videos| 国产高清无密码一区二区三区| 国产精品私人自拍| 色综合久久综合中文综合网| 亚洲一区影音先锋| 精品久久一区二区| 成人激情电影免费在线观看| 亚洲精品高清在线观看| 欧美精品在线观看播放| 国产一区二区美女诱惑| 亚洲欧美一区二区三区孕妇| 欧美日韩一区国产| 久久国产精品区| 国产精品卡一卡二卡三| 在线一区二区视频| 免费观看久久久4p| 中文字幕精品一区二区三区精品| 色综合久久88色综合天天免费| 日本欧美肥老太交大片| 国产女主播视频一区二区| 在线观看视频一区| 韩国精品主播一区二区在线观看 | 欧美裸体一区二区三区| 国产在线精品视频| 亚洲美女精品一区| 欧美成人福利视频| 99久久精品国产毛片| 全国精品久久少妇| 日韩美女视频一区| 欧美成人精品3d动漫h| 91丨九色丨黑人外教| 欧美aⅴ一区二区三区视频| 国产精品理论片| 欧美一区二区三区在线观看 | 一区二区三区波多野结衣在线观看| 91精品国产欧美一区二区| 国产成人激情av| 亚洲v日本v欧美v久久精品| 国产偷v国产偷v亚洲高清| 欧美午夜免费电影| 国产福利一区二区三区| 亚洲成人自拍一区| 国产精品超碰97尤物18| 日韩精品一区二区三区视频播放| 色综合久久综合网97色综合 | 91精品国产入口| 99精品国产91久久久久久| 精品一区二区免费看| 一区二区久久久久| 中文字幕成人av| 欧美军同video69gay| 北条麻妃一区二区三区| 精品一区二区成人精品| 亚洲国产视频直播| 中文字幕一区二区三区乱码在线 | 亚洲免费观看高清完整版在线 | 欧美国产精品中文字幕| 91精品国产免费| 在线观看亚洲一区| www.av精品| 国产激情偷乱视频一区二区三区| 婷婷久久综合九色综合绿巨人 | 国产婷婷精品av在线| 7777精品伊人久久久大香线蕉最新版| 97aⅴ精品视频一二三区| 久久99精品国产麻豆不卡| 亚洲国产精品久久人人爱蜜臀| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 欧美视频精品在线观看| 成人福利视频在线看| 国产一区二区三区在线观看免费 | 欧美三级三级三级| 99re成人精品视频| 国产精品综合av一区二区国产馆| 日韩国产欧美三级| 午夜精品在线看| 亚洲自拍偷拍综合| 一区二区在线免费观看| 国产精品久久久久一区二区三区 | 久久成人精品无人区| 午夜av电影一区| 一区二区三区国产精华| 亚洲男女毛片无遮挡| 国产精品国产成人国产三级| 国产欧美日韩视频在线观看| 久久女同精品一区二区| 久久久久久久久久久久久夜| 亚洲精品在线观看网站| 日韩精品专区在线影院观看| 欧美一区二区免费视频| 91精品欧美福利在线观看| 欧美女孩性生活视频| 欧美亚洲国产一区在线观看网站| 97久久超碰国产精品| 99久久99久久精品免费观看| 99精品欧美一区| 色成年激情久久综合| 色94色欧美sute亚洲线路二| 色综合久久久久久久| 色婷婷综合久色| 欧美性猛片xxxx免费看久爱| 欧美性欧美巨大黑白大战| 欧美色男人天堂| 欧美日韩日日骚| 欧美在线观看视频一区二区三区| 欧美亚洲高清一区二区三区不卡| 欧美在线一区二区| 欧美精品三级日韩久久| 欧美大片免费久久精品三p| 精品日韩成人av| 久久精品水蜜桃av综合天堂| 国产日韩v精品一区二区| 国产精品色婷婷| 亚洲精品一二三| 亚洲一级不卡视频| 日本亚洲一区二区| 精品一区二区免费视频| 成人免费高清在线| 99久久99久久精品国产片果冻| 91蝌蚪porny九色| 欧美中文字幕一二三区视频| 欧美日韩一区二区在线观看视频| 欧美区一区二区三区| 精品欧美久久久| 中文字幕国产一区| 一区二区三区欧美久久| 日韩精品亚洲一区二区三区免费| 毛片基地黄久久久久久天堂| 国产夫妻精品视频| 色妞www精品视频| 欧美日韩国产精品自在自线| 精品久久一区二区三区| 中文字幕一区二| 亚洲成av人片在线观看| 久久成人麻豆午夜电影| 懂色中文一区二区在线播放| 色一情一乱一乱一91av| 6080日韩午夜伦伦午夜伦| 精品国产凹凸成av人导航| 国产精品卡一卡二| 午夜av一区二区| 国产成人精品免费网站| 欧美性三三影院| 久久久久久久国产精品影院| 亚洲三级理论片| 日av在线不卡| 成人激情黄色小说| 欧美精品在线视频| 国产三级三级三级精品8ⅰ区| 亚洲精品乱码久久久久久久久 | 91免费视频观看| 日韩一区二区三区在线| 欧美激情综合五月色丁香| 亚洲r级在线视频| 国产黑丝在线一区二区三区| 欧美曰成人黄网| 国产亚洲女人久久久久毛片| 亚洲一区在线观看网站| 国产精品自拍一区| 欧美日韩中文字幕一区二区| 久久综合色播五月| 亚洲一级二级在线| 国产91丝袜在线播放| 欧美老女人第四色| 国产精品久久久久影院色老大| 日本不卡中文字幕| 91老司机福利 在线| 精品国产精品网麻豆系列| 亚洲一级不卡视频| 成人激情免费网站| 欧美成人一区二区三区片免费| 亚洲婷婷在线视频| 国产一区二区h| 欧美日韩精品一二三区| 国产精品丝袜一区| 精品写真视频在线观看| 欧洲激情一区二区| 国产精品国模大尺度视频| 麻豆成人久久精品二区三区小说| 色菇凉天天综合网| 欧美国产在线观看| 免费国产亚洲视频| 欧美视频日韩视频在线观看| 国产精品欧美一区二区三区| 麻豆一区二区三区| 在线精品视频小说1| 国产精品热久久久久夜色精品三区 | 久久成人免费日本黄色| 欧美午夜免费电影| 亚洲色图制服丝袜| 国产高清精品网站| 欧美成人一级视频| 日本中文字幕一区二区有限公司| 91浏览器打开|