package com.hundsun.ares.studio.jres.metadata.ui.editors; import org.eclipse.swt.widgets.Composite; import org.eclipse.ui.forms.widgets.FormToolkit; import com.hundsun.ares.studio.jres.metadata.ui.block.BizPropertyConfigListBlock; import com.hundsun.ares.studio.jres.model.metadata.MetadataPackage; import com.hundsun.ares.studio.ui.editor.EMFFormEditor; import com.hundsun.ares.studio.ui.editor.validate.EReferenceValidateUnit; import com.hundsun.ares.studio.validate.ValidateUtil; public class BizPropertyConfigListPage extends AbstractMetadataFormPage { private BizPropertyConfigListBlock block; /** * @param editor * @param id * @param title */ public BizPropertyConfigListPage(EMFFormEditor editor, String id, String title) { super(editor, id, title); } @Override protected void createMetadataComposite(Composite body, FormToolkit toolkit) { block = new BizPropertyConfigListBlock(this, getEditingDomain(), getSite(), getEditor().getARESResource(), getProblemPool()); block.setEditableControl(getEditableControl()); block.createControl(body, toolkit); getEditor().getActionBarContributor().addGlobalActionHandlerProvider(block); addPropertyListener(block); getEditingDomain().getCommandStack().addCommandStackListener(block); } @Override protected void configureValidateControl() { //������ getValidateControl().addValidateUnit(new EReferenceValidateUnit(getInfo(), MetadataPackage.Literals.METADATA_RESOURCE_DATA__ROOT)); getValidateControl().addValidateUnit(new EReferenceValidateUnit(getInfo(), MetadataPackage.Literals.METADATA_RESOURCE_DATA__ITEMS)); getValidateControl().setContext(ValidateUtil.getValidateContext(getEditor().getARESResource())); } @Override protected BizPropertyConfigListBlock getViewerBlock() { return block; } @Override public void infoChange() { block.setInput(getInfo()); super.infoChange(); } @Override public void dispose() { removePropertyListener(block); getEditingDomain().getCommandStack().removeCommandStackListener(block); super.dispose(); } }