blob: fd3d52c2fed6f9b34053bb985858e47e104e56e9 [file] [log] [blame]
/*******************************************************************************
* 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();
}
}