/******************************************************************************* * Copyright (c) 2007 Red Hat, Inc. * Distributed under license by Red Hat, Inc. All rights reserved. * This program is made available under the terms of the * Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Red Hat, Inc. - initial API and implementation ******************************************************************************/ package org.jboss.tools.cdi.xml.ui.editor.form; import org.jboss.tools.cdi.xml.beans.model.CDIBeansConstants; import org.jboss.tools.cdi.xml.ui.CDIXMLUIMessages; import org.jboss.tools.common.model.ui.forms.*; public class CDIBeansFileFormLayoutData implements CDIBeansConstants { static IFormData getClassListDefinition(String title) { return new FormData( title, CDIXMLFormLayoutData.EMPTY_DESCRIPTION, new FormAttributeData[]{new FormAttributeData("class", 100)}, //$NON-NLS-1$ new String[]{ENT_CDI_CLASS}, FormLayoutDataUtil.createDefaultFormActionData("CreateActions.CreateClass") //$NON-NLS-1$ ); } static IFormData CDI_STEREOTYPE_LIST_DEFINITION = new FormData( CDIXMLUIMessages.STEREOTYPES, CDIXMLFormLayoutData.EMPTY_DESCRIPTION, new FormAttributeData[]{new FormAttributeData("stereotype", 100)}, //$NON-NLS-1$ new String[]{ENT_CDI_STEREOTYPE}, FormLayoutDataUtil.createDefaultFormActionData("CreateActions.CreateStereotype") //$NON-NLS-1$ ); private final static IFormData[] DECORATORS_DEFINITIONS = new IFormData[] { getClassListDefinition(CDIXMLUIMessages.DECORATORS) }; private final static IFormData[] INTERCEPTORS_DEFINITIONS = new IFormData[] { getClassListDefinition(CDIXMLUIMessages.INTERCEPTORS) }; private final static IFormData[] ALTERNATIVES_DEFINITIONS = new IFormData[] { new FormData( CDIXMLUIMessages.ALTERNATIVES, CDIXMLFormLayoutData.EMPTY_DESCRIPTION, FormLayoutDataUtil.createGeneralFormAttributeData(ENT_ALTERNATIVES) ), getClassListDefinition(CDIXMLUIMessages.CLASSES), CDI_STEREOTYPE_LIST_DEFINITION }; private final static IFormData[] FILE_10_DEFINITIONS = new IFormData[] { new FormData( CDIXMLUIMessages.CDI_BEANS_1_0_FILE, CDIXMLFormLayoutData.EMPTY_DESCRIPTION, FormLayoutDataUtil.createGeneralFormAttributeData(ENT_CDI_BEANS) ), }; static IFormData getIncludeExcludeDefinition(String title) { return new FormData( title, CDIXMLFormLayoutData.EMPTY_DESCRIPTION, new FormAttributeData[]{new FormAttributeData("element type", 20, "Kind"), new FormAttributeData("name", 70), new FormAttributeData("is regular expression", 10, "RegEx")}, //$NON-NLS-1$ new String[]{"CDIWeldInclude", "CDIWeldExclude"}, //$NON-NLS-1$ //$NON-NLS-2$ FormLayoutDataUtil.createDefaultFormActionData("CreateActions.AddItem") //$NON-NLS-1$ ); } private final static IFormData[] WELD_SCAN_DEFINITIONS = new IFormData[] { getIncludeExcludeDefinition(CDIXMLUIMessages.INCLUDE_AND_EXCLUDE) }; static IFormData getExcludeListDefinition(String title) { return new FormData( title, CDIXMLFormLayoutData.EMPTY_DESCRIPTION, new FormAttributeData[]{new FormAttributeData("name", 100)}, //$NON-NLS-1$ new String[]{"CDIExclude"}, //$NON-NLS-1$ FormLayoutDataUtil.createDefaultFormActionData("CreateActions.AddExclude") //$NON-NLS-1$ ); } private final static IFormData[] SCAN_DEFINITIONS = new IFormData[] { getExcludeListDefinition("Exclude") }; final static IFormData FILE_20_FORM_DEFINITION = new FormData( ENT_CDI_BEANS, new String[]{null}, FILE_10_DEFINITIONS); final static IFormData DECORATORS_DEFINITION = new FormData( ENT_DECORATORS, new String[]{null}, DECORATORS_DEFINITIONS); final static IFormData INTERCEPTORS_DEFINITION = new FormData( ENT_INTERCEPTORS, new String[]{null}, INTERCEPTORS_DEFINITIONS); final static IFormData ALTERNATIVES_DEFINITION = new FormData( ENT_ALTERNATIVES, new String[]{null}, ALTERNATIVES_DEFINITIONS); final static IFormData WELD_SCAN_DEFINITION = new FormData( "CDIWeldScan", new String[]{null}, WELD_SCAN_DEFINITIONS); //$NON-NLS-1$ final static IFormData SCAN_DEFINITION = new FormData( "CDIScan", new String[]{null}, SCAN_DEFINITIONS); //$NON-NLS-1$ }