| /******************************************************************************* |
| * Copyright (c) 2006, 2012 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are 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: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.bpel.ui.properties; |
| |
| import org.eclipse.bpel.common.ui.details.ButtonIValue; |
| import org.eclipse.bpel.common.ui.flatui.FlatFormAttachment; |
| import org.eclipse.bpel.common.ui.flatui.FlatFormData; |
| import org.eclipse.bpel.common.ui.flatui.FlatFormLayout; |
| import org.eclipse.bpel.model.BPELPackage; |
| import org.eclipse.bpel.ui.IHelpContextIds; |
| import org.eclipse.bpel.ui.Messages; |
| import org.eclipse.emf.ecore.EObject; |
| import org.eclipse.swt.SWT; |
| import org.eclipse.swt.layout.FillLayout; |
| import org.eclipse.swt.widgets.Button; |
| import org.eclipse.swt.widgets.Composite; |
| import org.eclipse.ui.PlatformUI; |
| |
| |
| /** |
| * Details section for the "validate" property of Assign activities. |
| */ |
| public class ValidateSection extends BPELPropertySection { |
| |
| Button fValidateXMLButton; |
| |
| EditController fValidateController; |
| |
| protected void createChangeTrackers() { |
| fValidateController = createEditController(); |
| fValidateController.setFeature( BPELPackage.eINSTANCE.getAssign_Validate() ); |
| fValidateController.setViewIValue( new ButtonIValue ( fValidateXMLButton ) ); |
| fValidateController.startListeningTo(fValidateXMLButton); |
| } |
| |
| protected void createValidateWidgets(Composite composite) { |
| FlatFormData data; |
| |
| Composite parent = fWidgetFactory.createComposite(composite); |
| data = new FlatFormData(); |
| data.left = new FlatFormAttachment(0, 0); |
| data.top = new FlatFormAttachment(0, 0); |
| parent.setLayoutData(data); |
| parent.setLayout(new FillLayout()); |
| |
| fValidateXMLButton = fWidgetFactory.createButton(parent, Messages.Validate, SWT.CHECK); |
| } |
| |
| @Override |
| protected void createClient(Composite parent) { |
| Composite composite = createFlatFormComposite(parent); |
| // HACK: the checkbox by itself looks cramped..give it a little extra space |
| ((FlatFormLayout)composite.getLayout()).marginHeight += 3; |
| |
| createValidateWidgets(composite); |
| createChangeTrackers(); |
| |
| PlatformUI.getWorkbench().getHelpSystem().setHelp( |
| composite, IHelpContextIds.PROPERTY_PAGE_VALIDATE_DETAILS); |
| } |
| |
| |
| @Override |
| protected void basicSetInput(EObject newInput) { |
| super.basicSetInput(newInput); |
| |
| fValidateController.setInput(newInput); |
| } |
| |
| |
| /** |
| * @see org.eclipse.bpel.ui.properties.BPELPropertySection#getUserContext() |
| */ |
| @Override |
| public Object getUserContext() { |
| return null; |
| } |
| |
| /** |
| * @see org.eclipse.bpel.ui.properties.BPELPropertySection#restoreUserContext(java.lang.Object) |
| */ |
| @Override |
| public void restoreUserContext(Object userContext) { |
| fValidateXMLButton.setFocus(); |
| } |
| } |