package sushi.application.pages.transformation; import java.util.ArrayList; import java.util.List; import org.apache.wicket.extensions.markup.html.tabs.AbstractTab; import org.apache.wicket.extensions.markup.html.tabs.ITab; import org.apache.wicket.markup.html.form.Button; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.panel.Panel; import org.apache.wicket.model.Model; import sushi.application.pages.AbstractSushiPage; import sushi.application.pages.eventrepository.eventtypeeditor.EventTypeEditor; import sushi.application.pages.transformation.patternbuilder.externalknowledge.ExternalKnowledgeModal; import sushi.transformation.TransformationManager; import de.agilecoders.wicket.markup.html.bootstrap.tabs.BootstrapTabbedPanel; public class TransformationPage extends AbstractSushiPage { private static final long serialVersionUID = 1L; private TransformationManager transformationManager; private TransformationPage transformationPage; private ExternalKnowledgeModal externalKnowledgeModal; public TransformationPage() { super(); this.transformationPage = this; this.transformationManager = TransformationManager.getInstance(); buildOpenEventTypeEditorButton(); List<ITab> tabs = new ArrayList<ITab>(); tabs.add(new AbstractTab(new Model<String>("Advanced Rule Editor")) { @Override public Panel getPanel(String panelId) { return new AdvancedTransformationRuleEditorPanel(panelId, transformationPage); } }); tabs.add(new AbstractTab(new Model<String>("Basic Rule Editor")) { @Override public Panel getPanel(String panelId) { return new BasicTransformationRuleEditorPanel(panelId, transformationPage); } }); add(new BootstrapTabbedPanel<ITab>("tabs", tabs)); externalKnowledgeModal = new ExternalKnowledgeModal("externalKnowledgeModal"); externalKnowledgeModal.setOutputMarkupId(true); add(externalKnowledgeModal); } private void buildOpenEventTypeEditorButton() { Button openEventTypeEditorButton = new Button("openEventTypeEditorButton") { private static final long serialVersionUID = 1L; @Override public void onSubmit() { setResponsePage(EventTypeEditor.class); } }; Form<Void> layoutForm = new Form<Void>("layoutForm"); add(layoutForm); layoutForm.add(openEventTypeEditorButton); } public TransformationManager getTransformationManager() { return transformationManager; } public void setTransformationManager(TransformationManager transformationManager) { this.transformationManager = transformationManager; } public ExternalKnowledgeModal getExternalKnowledgeModal() { return externalKnowledgeModal; } public void setExternalKnowledgeModal( ExternalKnowledgeModal externalKnowledgeModal) { this.externalKnowledgeModal = externalKnowledgeModal; } }