List of usage examples for org.eclipse.jface.fieldassist ContentProposalAdapter FILTER_CUMULATIVE
int FILTER_CUMULATIVE
To view the source code for org.eclipse.jface.fieldassist ContentProposalAdapter FILTER_CUMULATIVE.
Click Source Link
From source file:com.android.control.MtesterAutoCompleteField.java
License:Apache License
public MtesterAutoCompleteField(final Control control, final IControlContentAdapter controlContentAdapter, final String[] literals, final String[] labels, final Shell shell) { this.shell = shell; contentProposalProvider = new ContentProposalProvider(literals, labels); contentProposalProvider.setFiltering(false); contentProposalAdapter = new ContentProposalAdapter(control, new StyledTextContentAdapter(), contentProposalProvider, null, null); contentProposalAdapter.setPropagateKeys(false); contentProposalAdapter.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentProposalAdapter.setAutoActivationCharacters(new char[] { '.' }); contentProposalAdapter.setPopupSize(getPoint((StyledText) control)); contentProposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_INSERT); contentProposalAdapter.setLabelProvider(new LabelProvider() { @Override//from w ww. ja v a 2 s . c om public String getText(Object element) { IContentProposal proposal = (IContentProposal) element; return proposal.getLabel(); } @Override public Image getImage(Object element) { Image iconCapture = new Image(shell.getDisplay(), ClassLoader.getSystemResourceAsStream("icons/function.png")); return iconCapture; } }); }
From source file:org.eclipse.birt.chart.ui.swt.fieldassist.FieldAssistHelper.java
License:Open Source License
private int getContentAssistFilterStyle() { IPreferenceStore store = getPreferenceStore(); String acceptanceStyle = store.getString(PreferenceConstants.PREF_CONTENTASSISTFILTER); if (acceptanceStyle.equals(PreferenceConstants.PREF_CONTENTASSISTFILTER_CHAR)) return ContentProposalAdapter.FILTER_CHARACTER; if (acceptanceStyle.equals(PreferenceConstants.PREF_CONTENTASSISTFILTER_CUMULATIVE)) return ContentProposalAdapter.FILTER_CUMULATIVE; return ContentProposalAdapter.FILTER_NONE; }
From source file:org.eclipse.bpel.simpl.ui.properties.backup.RetrieveDataVariableSection.java
License:Apache License
private void createInputVariableWidgets() { Composite inputVariableComp = new Composite(parentComposite, SWT.NONE); GridLayout gridLayout = new GridLayout(); gridLayout.numColumns = 3;/*from w ww . j a va 2 s.c om*/ inputVariableComp.setLayout(gridLayout); inputVariableComp.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE)); GridData gridData12 = new GridData(); gridData12.horizontalSpan = 2; gridData12.grabExcessHorizontalSpace = true; gridData12.verticalAlignment = GridData.CENTER; gridData12.horizontalAlignment = GridData.FILL; inputVariableComp.setLayoutData(gridData12); GridData gridData6 = new GridData(); gridData6.horizontalAlignment = GridData.FILL; gridData6.verticalAlignment = GridData.CENTER; gridData6.grabExcessHorizontalSpace = true; inputVariableLabel = fWidgetFactory.createLabel(inputVariableComp, "Data variable:"); inputVariableText = fWidgetFactory.createText(inputVariableComp, EMPTY_STRING); inputVariableButton = fWidgetFactory.createButton(inputVariableComp, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.CENTER); VariableContentProvider provider = new VariableContentProvider(false); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider, fInputVariableFilter); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(inputVariableText, fTextContentAdapter, proposalProvider, null, null, true); // contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } Variable variable = null; try { variable = (Variable) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } SetDataVariableCommand cmd = new SetDataVariableCommand(getInput(), variable); getCommandFramework().execute(cmd); } }); // End of Content Assist for variable inputVariableButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); inputVariableText.addListener(SWT.KeyDown, new Listener() { public void handleEvent(Event event) { if (event.keyCode == SWT.CR) { findAndSetVariable(inputVariableText.getText()); } } }); inputVariableText.setLayoutData(gridData6); }
From source file:org.eclipse.bpel.ui.properties.InvokeImplSection.java
License:Open Source License
private Composite createPartnerWidgets(Composite top, Composite parent) { FlatFormData data;/*from w w w. j a va 2 s .c o m*/ final Composite composite = createFlatFormComposite(parent); data = new FlatFormData(); if (top == null) { data.top = new FlatFormAttachment(0, IDetailsAreaConstants.VSPACE); } else { data.top = new FlatFormAttachment(top, IDetailsAreaConstants.VSPACE); } data.left = new FlatFormAttachment(0, IDetailsAreaConstants.HSPACE); data.right = new FlatFormAttachment(SPLIT_POINT, -SPLIT_POINT_OFFSET); composite.setLayoutData(data); partnerLabel = fWidgetFactory.createLabel(composite, Messages.InvokeImplDetails_Partner__10); partnerName = fWidgetFactory.createText(composite, EMPTY_STRING, SWT.NONE); partnerBrowseButton = fWidgetFactory.createButton(composite, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.RIGHT); // Content Assist for Partner Link RunnableProposal proposal = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_0; } public void run() { createPartnerLink(ModelHelper.getProcess(getInput()), null); } }; RunnableProposal proposal2 = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_1; } public void run() { createPartnerLink(ModelHelper.getContainingScope(getInput()), null); } }; RunnableProposal proposal3 = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_2; } public void run() { CompoundCommand cmd = new CompoundCommand(); cmd.getCommands().addAll(basicCommandList(getInput(), null, null)); getCommandFramework().execute(cmd); } }; PartnerLinkContentProvider provider = new PartnerLinkContentProvider(); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider, fPartnerRoleFilter); proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(proposal); proposalProvider.addProposalToEnd(proposal2); proposalProvider.addProposalToEnd(proposal3); proposalProvider.addProposalToEnd(getWSDLEdit()); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(partnerName, fTextContentAdapter, proposalProvider, null, null, true); // contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(proposal); contentAssist.addContentProposalListener(proposal2); contentAssist.addContentProposalListener(proposal3); contentAssist.addContentProposalListener(getWSDLEdit()); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } PartnerLink pl = null; try { pl = (PartnerLink) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } CompoundCommand cmd = new CompoundCommand(); cmd.getCommands().addAll(basicCommandList(getInput(), pl, null)); getCommandFramework().execute(cmd); } }); // End of Content Assist for variable partnerBrowseButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); partnerName.addListener(SWT.KeyDown, new Listener() { public void handleEvent(Event event) { if (event.keyCode == SWT.CR) { findAndSetOrCreatePartnerLink(partnerName.getText()); } } }); // End of content assist for partner link data = new FlatFormData(); data.right = new FlatFormAttachment(100, 0); data.top = new FlatFormAttachment(partnerName, +2, SWT.TOP); data.bottom = new FlatFormAttachment(partnerName, -2, SWT.BOTTOM); partnerBrowseButton.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(partnerLabel, STANDARD_LABEL_WIDTH_SM)); data.right = new FlatFormAttachment(partnerBrowseButton, 0); partnerName.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, 0); data.right = new FlatFormAttachment(partnerName, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(partnerName, 0, SWT.CENTER); partnerLabel.setLayoutData(data); partnerBrowseButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); return composite; }
From source file:org.eclipse.bpel.ui.properties.InvokeImplSection.java
License:Open Source License
private Composite createOperationWidgets(Composite top, Composite parent) { FlatFormData data;/*from w ww. j a v a2s. co m*/ final Composite composite = createFlatFormComposite(parent); data = new FlatFormData(); if (top == null) { data.top = new FlatFormAttachment(0, IDetailsAreaConstants.VSPACE); } else { data.top = new FlatFormAttachment(top, IDetailsAreaConstants.VSPACE); } data.left = new FlatFormAttachment(0, IDetailsAreaConstants.HSPACE); data.right = new FlatFormAttachment(SPLIT_POINT, -SPLIT_POINT_OFFSET); composite.setLayoutData(data); operationLabel = fWidgetFactory.createLabel(composite, Messages.InvokeImplDetails_Operation__19); operationText = fWidgetFactory.createText(composite, EMPTY_STRING, SWT.NONE); operationButton = fWidgetFactory.createButton(composite, EMPTY_STRING, SWT.ARROW | SWT.CENTER | SWT.DOWN); // Provide Content Assist for the variables OperationContentProvider provider = new OperationContentProvider(); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider); proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(getWSDLEdit()); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(operationText, fTextContentAdapter, proposalProvider, null, null, true); // contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(getWSDLEdit()); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } Operation oper = null; try { oper = (Operation) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } List<Command> list = basicCommandList(getInput(), IGNORE_PARTNER_LINK, oper); CompoundCommand cmd = new CompoundCommand(); cmd.getCommands().addAll(list); getCommandFramework().execute(cmd); } }); // End of Content Assist for variable operationButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); operationText.addListener(SWT.KeyDown, new Listener() { public void handleEvent(Event event) { if (event.keyCode == SWT.CR) { findAndSetOperation(operationText.getText()); } } }); // end of content assist data = new FlatFormData(); data.right = new FlatFormAttachment(100, 0); data.top = new FlatFormAttachment(operationText, +2, SWT.TOP); data.bottom = new FlatFormAttachment(operationText, -2, SWT.BOTTOM); operationButton.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(operationLabel, STANDARD_LABEL_WIDTH_SM)); data.right = new FlatFormAttachment(operationButton, 0); operationText.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, 0); data.right = new FlatFormAttachment(operationText, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(operationText, 0, SWT.CENTER); operationLabel.setLayoutData(data); // operationViewer.addFilter(AddNullFilter.getInstance()); // operationViewer.setLabelProvider(new ModelLabelProvider()); // operationViewer.setContentProvider(new OperationContentProvider()); // operationViewer.setSorter(ModelViewerSorter.getInstance()); // operationViewer.addSelectionChangedListener(new ISelectionChangedListener() { // public void selectionChanged(SelectionChangedEvent event) { // IStructuredSelection sel = (IStructuredSelection)operationViewer.getSelection(); // // TODO: if changing to a one-way operation, clear the response variable (if any) // PartnerLink partnerLink = ModelHelper.getPartnerLink(getInput()); // // CompoundCommand cmd = new CompoundCommand(); // Command child = null; // PortType portType = getEffectivePortType(partnerLink); // Operation op = (Operation)sel.getFirstElement(); // // if (op == null) portType = null; // // child = new SetPortTypeCommand(getInput(), portType); // if (child.canExecute()) cmd.add(child); // // child = new SetOperationCommand(getInput(), op); // if (child.canExecute()) { // if (replyTypeEnabled()) { // Command setFaultCommand = new SetWSDLFaultCommand(getInput(), null); // if (setFaultCommand.canExecute()) cmd.add(setFaultCommand); // } // cmd.add(child); cmd.setLabel(child.getLabel()); // } // // if (getInput() instanceof OnEvent) { // child = new SetOnEventVariableTypeCommand((OnEvent)getInput()); // cmd.add(child); // } // blockOperationUpdates = true; // lastChangeContext = OPERATION_CONTEXT; // try { // getCommandFramework().execute(wrapInShowContextCommand(cmd)); // } finally { // blockOperationUpdates = false; // } // } // }); return composite; }
From source file:org.eclipse.bpel.ui.properties.InvokeImplSection.java
License:Open Source License
private Composite createFaultComposite(Composite top, Composite parent) { FlatFormData data;/*from w w w .ja va 2 s. co m*/ final Composite composite = faultComposite = createFlatFormComposite(parent); data = new FlatFormData(); if (top == null) { data.top = new FlatFormAttachment(0, IDetailsAreaConstants.VSPACE); } else { data.top = new FlatFormAttachment(top, IDetailsAreaConstants.VSPACE); } data.left = new FlatFormAttachment(0, IDetailsAreaConstants.HSPACE); data.right = new FlatFormAttachment(InvokeImplSection.SPLIT_POINT, -InvokeImplSection.SPLIT_POINT_OFFSET); composite.setLayoutData(data); faultLabel = fWidgetFactory.createLabel(composite, Messages.InvokeImplDetails_Fault_Name__25); faultText = fWidgetFactory.createText(composite, EMPTY_STRING); faultButton = fWidgetFactory.createButton(composite, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.CENTER); // Provide Content Assist for the operation WSDLFaultContentProvider provider = new WSDLFaultContentProvider(); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return ModelHelper.getOperation(getInput()); } }, provider); RunnableProposal proposalClearFault = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_25; } public void run() { CompoundCommand cmd = new CompoundCommand(); cmd.add(new SetWSDLFaultCommand(getInput(), null)); getCommandFramework().execute(cmd); } }; proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(proposalClearFault); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(faultText, fTextContentAdapter, proposalProvider, null, null, true); // contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } Fault fault = null; try { fault = (Fault) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } CompoundCommand cmd = new CompoundCommand(); cmd.add(new SetWSDLFaultCommand(getInput(), fault)); getCommandFramework().execute(cmd); } }); contentAssist.addContentProposalListener(proposalClearFault); // End of Content Assist for fault faultButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); data = new FlatFormData(); data.right = new FlatFormAttachment(100, 0); data.top = new FlatFormAttachment(faultText, +2, SWT.TOP); data.bottom = new FlatFormAttachment(faultText, -2, SWT.BOTTOM); faultButton.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(operationLabel, STANDARD_LABEL_WIDTH_SM)); data.right = new FlatFormAttachment(faultButton, 0); faultText.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, 0); data.right = new FlatFormAttachment(faultText, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(faultText, 0, SWT.CENTER); faultLabel.setLayoutData(data); return composite; }
From source file:org.eclipse.bpel.ui.properties.InvokeVariableSection.java
License:Open Source License
private Composite createInputVariableWidgets(Composite top, Composite parent) { FlatFormData data;//from w ww. j a v a 2s. c o m final Composite composite = inputVariableComposite = createFlatFormComposite(parent); data = new FlatFormData(); if (top == null) { data.top = new FlatFormAttachment(0, IDetailsAreaConstants.VSPACE); } else { data.top = new FlatFormAttachment(top, IDetailsAreaConstants.VSPACE); } data.left = new FlatFormAttachment(0, IDetailsAreaConstants.HSPACE); data.right = new FlatFormAttachment(InvokeImplSection.SPLIT_POINT, -InvokeImplSection.SPLIT_POINT_OFFSET); composite.setLayoutData(data); inputVariableLabel = fWidgetFactory.createLabel(composite, Messages.InvokeImplSection_7); inputVariableText = fWidgetFactory.createText(composite, EMPTY_STRING); inputVariableButton = fWidgetFactory.createButton(composite, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.CENTER); // Provide Content Assist for the variables // Content assist on partnerName RunnableProposal proposal = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_10; } public void run() { createVariable(ModelHelper.getProcess(getInput()), null, isInvoke() ? ModelHelper.OUTGOING : ModelHelper.INCOMING); } }; RunnableProposal proposal2 = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_11; } public void run() { createVariable(getInput(), null, isInvoke() ? ModelHelper.OUTGOING : ModelHelper.INCOMING); } }; RunnableProposal proposal3 = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_12; } public void run() { int direction = isInvoke() ? ModelHelper.OUTGOING : ModelHelper.INCOMING; getCommandFramework().execute(new SetVariableCommand(getInput(), null, direction)); } }; VariableContentProvider provider = new VariableContentProvider(true); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider, fInputVariableFilter); proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(proposal); proposalProvider.addProposalToEnd(proposal2); proposalProvider.addProposalToEnd(proposal3); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(inputVariableText, fTextContentAdapter, proposalProvider, null, null, true); // contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(proposal); contentAssist.addContentProposalListener(proposal2); contentAssist.addContentProposalListener(proposal3); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } if (((Adapter) chosenProposal).getTarget() instanceof Variable) { Variable variable = null; try { variable = (Variable) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } SetVariableCommand cmd = new SetVariableCommand(getInput(), variable); getCommandFramework().execute(cmd); } else { // TODO: This is a bad hack. A better solution is to // extend the model and handle the // ReferenceVariables in // separated classes. ReferenceVariable variable = null; Variable var = BPELFactory.eINSTANCE.createVariable(); try { variable = (ReferenceVariable) ((Adapter) chosenProposal).getTarget(); // To save the referenceVariable drop the name // in a new // variable object var.setName(variable.getName()); } catch (Throwable t) { return; } SetVariableCommand cmd = new SetVariableCommand(getInput(), var); getCommandFramework().execute(cmd); } } }); // End of Content Assist for variable inputVariableButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); inputVariableText.addListener(SWT.KeyDown, new Listener() { public void handleEvent(Event event) { if (event.keyCode == SWT.CR) { findAndSetOrCreateVariable(inputVariableText.getText(), isInvoke() ? ModelHelper.OUTGOING : ModelHelper.INCOMING); } } }); data = new FlatFormData(); data.right = new FlatFormAttachment(100, 0); data.top = new FlatFormAttachment(inputVariableText, +2, SWT.TOP); data.bottom = new FlatFormAttachment(inputVariableText, -2, SWT.BOTTOM); inputVariableButton.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(operationLabel, STANDARD_LABEL_WIDTH_SM)); data.right = new FlatFormAttachment(inputVariableButton, 0); inputVariableText.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, 0); data.right = new FlatFormAttachment(inputVariableText, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(inputVariableText, 0, SWT.CENTER); inputVariableLabel.setLayoutData(data); return composite; }
From source file:org.eclipse.bpel.ui.properties.InvokeVariableSection.java
License:Open Source License
/** * The output variable widgets are only pertaining to Invoke activity, if * there is an output message on the partner link * /*from www. j a v a 2 s.c om*/ * @param top * @param parent * @return the output variable composite */ private Composite createOutputVariableWidgets(Composite top, Composite parent) { FlatFormData data; final Composite composite = this.outputVariableComposite = createFlatFormComposite(parent); data = new FlatFormData(); if (top == null) { data.top = new FlatFormAttachment(0, IDetailsAreaConstants.VSPACE); } else { data.top = new FlatFormAttachment(top, IDetailsAreaConstants.VSPACE); } data.left = new FlatFormAttachment(0, IDetailsAreaConstants.HSPACE); data.right = new FlatFormAttachment(InvokeImplSection.SPLIT_POINT, -InvokeImplSection.SPLIT_POINT_OFFSET); composite.setLayoutData(data); outputVariableLabel = fWidgetFactory.createLabel(composite, Messages.InvokeImplSection_13); outputVariableText = fWidgetFactory.createText(composite, EMPTY_STRING); outputVariableButton = fWidgetFactory.createButton(composite, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.CENTER); // Provide Content Assist for the operation // Runnable proposal. RunnableProposal proposal = new RunnableProposal() { @Override public String getLabel() { return Messages.InvokeImplSection_16; } public void run() { createVariable(ModelHelper.getProcess(getInput()), null, isInvoke() ? ModelHelper.INCOMING : ModelHelper.OUTGOING); } }; RunnableProposal proposal2 = new RunnableProposal() { @Override public String getLabel() { return "Create Local Output Variable"; //$NON-NLS-1$ } public void run() { createVariable(getInput(), null, isInvoke() ? ModelHelper.INCOMING : ModelHelper.OUTGOING); } }; RunnableProposal proposal3 = new RunnableProposal() { @Override public String getLabel() { return "Clear Output Variable"; //$NON-NLS-1$ } public void run() { getCommandFramework().execute(new SetVariableCommand(getInput(), null, isInvoke() ? ModelHelper.INCOMING : ModelHelper.OUTGOING)); } }; VariableContentProvider provider = new VariableContentProvider(true); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider, fOutputVariableFilter); proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(proposal); proposalProvider.addProposalToEnd(proposal2); proposalProvider.addProposalToEnd(proposal3); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(outputVariableText, fTextContentAdapter, proposalProvider, null, null, true); // contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(proposal); contentAssist.addContentProposalListener(proposal2); contentAssist.addContentProposalListener(proposal3); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } if (((Adapter) chosenProposal).getTarget() instanceof Variable) { Variable variable = null; try { variable = (Variable) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } SetVariableCommand cmd = new SetVariableCommand(getInput(), variable, ModelHelper.INCOMING); getCommandFramework().execute(cmd); } else { // TODO: This is a bad hack. A better solution is to // extend the model and handle the // ReferenceVariables in // separated classes. ReferenceVariable variable = null; Variable var = BPELFactory.eINSTANCE.createVariable(); try { variable = (ReferenceVariable) ((Adapter) chosenProposal).getTarget(); // To save the referenceVariable drop the name // in a new // variable object var.setName(variable.getName()); } catch (Throwable t) { return; } SetVariableCommand cmd = new SetVariableCommand(getInput(), var, ModelHelper.INCOMING); getCommandFramework().execute(cmd); } } }); // End of Content Assist for operation outputVariableButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); outputVariableText.addListener(SWT.KeyDown, new Listener() { public void handleEvent(Event event) { if (event.keyCode == SWT.CR) { findAndSetOrCreateVariable(outputVariableText.getText(), ModelHelper.INCOMING); } } }); data = new FlatFormData(); data.right = new FlatFormAttachment(100, 0); data.top = new FlatFormAttachment(outputVariableText, +2, SWT.TOP); data.bottom = new FlatFormAttachment(outputVariableText, -2, SWT.BOTTOM); outputVariableButton.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(operationLabel, STANDARD_LABEL_WIDTH_SM)); data.right = new FlatFormAttachment(outputVariableButton, 0); outputVariableText.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, 0); data.right = new FlatFormAttachment(outputVariableText, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(outputVariableText, 0, SWT.CENTER); outputVariableLabel.setLayoutData(data); return composite; }
From source file:org.eclipse.bpel.ui.properties.InvokeVariableSection.java
License:Open Source License
private void createPartMappingRows(ILabelProvider labelProvider, final EObject model, List<Part> messageParts, Group refGroup, EObject fromPartsOrToParts, final boolean isFromParts) { FlatFormData data;/* w w w. ja v a 2 s . com*/ CLabel ref = null; for (final Part part : messageParts) { boolean isFirst = ref == null; // create text final Text text = fWidgetFactory.createText(refGroup, EMPTY_STRING); Variable var = null; // get the variable from a fromPart if (isFromParts) { FromParts fromParts = (FromParts) fromPartsOrToParts; if (fromParts != null && !fromParts.getChildren().isEmpty()) { for (FromPart fromPart : fromParts.getChildren()) { if (fromPart.getPart() != null && fromPart.getPart().equals(part)) { var = fromPart.getToVariable(); break; } } } } // get the variable from a toPart else { ToParts toParts = (ToParts) fromPartsOrToParts; if (toParts != null && !toParts.getChildren().isEmpty()) { for (ToPart toPart : toParts.getChildren()) { if (toPart.getPart() != null && toPart.getPart().equals(part)) { var = toPart.getFromVariable(); break; } } } } if (var != null) { text.setText(var.getName()); } else { text.setText(EMPTY_STRING); } Button button = null; if (model instanceof OnEvent == false) { text.setEditable(false); // create button button = fWidgetFactory.createButton(refGroup, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.CENTER); // align button data = new FlatFormData(); data.right = new FlatFormAttachment(100, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(text, +2, SWT.TOP); data.bottom = new FlatFormAttachment(text, -2, SWT.BOTTOM); button.setLayoutData(data); } // align text data = new FlatFormData(); if (isFirst) { data.top = new FlatFormAttachment(0, IDetailsAreaConstants.VSPACE); } else { data.top = new FlatFormAttachment(ref, IDetailsAreaConstants.VSPACE); } data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(ref, STANDARD_LABEL_WIDTH_LRG)); if (button == null) { data.right = new FlatFormAttachment(100, -IDetailsAreaConstants.HSPACE); } else { data.right = new FlatFormAttachment(button, -IDetailsAreaConstants.HSPACE); } text.setLayoutData(data); // create label ref = new CLabel(refGroup, SWT.LEFT); ref.setText(labelProvider.getText(part)); ref.setImage(labelProvider.getImage(part)); ref.setBackground(refGroup.getBackground()); // align label data = new FlatFormData(); data.left = new FlatFormAttachment(0, IDetailsAreaConstants.HSPACE); data.right = new FlatFormAttachment(text, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(text, 0, SWT.CENTER); ref.setLayoutData(data); /* * CONTENT ASSIST */ RunnableProposal proposal1 = new RunnableProposal() { @Override public String getLabel() { return "Create global Variable"; } public void run() { createVariableForPartMapping(ModelHelper.getProcess(model), model, part, isFromParts); } }; RunnableProposal proposal2 = new RunnableProposal() { @Override public String getLabel() { return "Create local Variable"; } public void run() { createVariableForPartMapping(model, model, part, isFromParts); } }; RunnableProposal proposal3 = new RunnableProposal() { @Override public String getLabel() { return "Clear Variable"; } public void run() { Command cmd = null; if (isFromParts) { cmd = new AddFromPartCommand(model, null, part); } else { cmd = new AddToPartCommand(model, null, part); } getCommandFramework().execute(cmd); } }; VariableFilter filter = new VariableFilter(); if (part.getElementDeclaration() != null) { filter.setType(part.getElementDeclaration()); } else if (part.getTypeDefinition() != null) { filter.setType(part.getTypeDefinition()); } VariableContentProvider provider = new VariableContentProvider(false); ModelContentProposalProvider proposalProvider = new ModelContentProposalProvider( new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider, filter); proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(proposal1); proposalProvider.addProposalToEnd(proposal2); proposalProvider.addProposalToEnd(proposal3); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(text, fTextContentAdapter, proposalProvider, null, null, true); contentAssist.setLabelProvider(labelProvider); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(proposal1); contentAssist.addContentProposalListener(proposal2); contentAssist.addContentProposalListener(proposal3); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal proposal) { if (proposal.getContent() == null) { return; } Variable variable = null; try { variable = (Variable) ((Adapter) proposal).getTarget(); } catch (Throwable t) { return; } Command cmd = null; if (isFromParts) { cmd = new AddFromPartCommand(model, variable, part); } else { cmd = new AddToPartCommand(model, variable, part); } getCommandFramework().execute(cmd); } }); // End of Content Assist for variable if (button != null) { button.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); } else if (model instanceof OnEvent) { IOngoingChange change = new IOngoingChange() { public Command createApplyCommand() { OnEvent onEvent = (OnEvent) model; String s = text.getText(); if (EMPTY_STRING.equals(s)) { s = null; } CompoundCommand ccmd = new CompoundCommand(); FromParts fromParts = onEvent.getFromParts(); FromPart fromPart = null; Variable variable = null; if (fromParts != null && fromParts.getChildren() != null) { for (FromPart fp : fromParts.getChildren()) { if (part.equals(fp.getPart())) { fromPart = fp; } } } if (s != null) { if (fromPart != null) { variable = fromPart.getToVariable(); } if (variable == null) { variable = BPELFactory.eINSTANCE.createVariable(); // set the variable's type to the part's type variable.setType(part.getTypeDefinition()); variable.setXSDElement(part.getElementDeclaration()); } variable.setName(s); ccmd.add(new AddFromPartCommand(onEvent, variable, part)); } else { ccmd.add(new AddFromPartCommand(onEvent, null, part)); } return ccmd; } public String getLabel() { return IBPELUIConstants.CMD_SELECT_VARIABLE; } public void restoreOldState() { updatePartMappingWidgets(); } }; ChangeTracker onEventVariableTracker = new ChangeTracker(text, change, getCommandFramework()); onEventVariableTracker.startTracking(); } } }
From source file:org.eclipse.bpel.ui.properties.MessageExchangeSection.java
License:Open Source License
protected void createMessExWidgets(Composite composite) { // create items messExLabel = fWidgetFactory.createLabel(composite, Messages.MessageExchangeImplSection_1); messExName = fWidgetFactory.createText(composite, EMPTY_STRING, SWT.NONE); messExBrowseButton = fWidgetFactory.createButton(composite, EMPTY_STRING, SWT.ARROW | SWT.DOWN | SWT.RIGHT); // Content Assist for Message Exchange RunnableProposal proposal = new RunnableProposal() { @Override//from w w w . ja v a2 s. co m public String getLabel() { return Messages.MessageExchangeImplSection_Create_Global; } public void run() { createMessageExchange(ModelHelper.getProcess(getInput()), null); } }; RunnableProposal proposal2 = new RunnableProposal() { @Override public String getLabel() { return Messages.MessageExchangeImplSection_Create_Local; } public void run() { createMessageExchange(ModelHelper.getContainingScope(getInput()), null); } }; RunnableProposal proposal3 = new RunnableProposal() { @Override public String getLabel() { return Messages.MessageExchangeImplSection_Clear; } public void run() { Command cmd = new SetMessageExchangeCommand(getInput(), null); cmd.setLabel(IBPELUIConstants.CMD_ADD_MESSAGEEXCHANGE); runCommand(cmd); } }; MessageExchangeContentProvider provider = new MessageExchangeContentProvider(); ModelContentProposalProvider proposalProvider; proposalProvider = new ModelContentProposalProvider(new ModelContentProposalProvider.ValueProvider() { @Override public Object value() { return getInput(); } }, provider); proposalProvider.addProposalToEnd(new Separator()); proposalProvider.addProposalToEnd(proposal); proposalProvider.addProposalToEnd(proposal2); proposalProvider.addProposalToEnd(proposal3); final FieldAssistAdapter contentAssist = new FieldAssistAdapter(messExName, fTextContentAdapter, proposalProvider, null, null, false); // installDecoration = false --> no icon that shows that we have content assist. contentAssist.setLabelProvider(new ModelLabelProvider()); contentAssist.setPopupSize(new Point(300, 100)); contentAssist.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); contentAssist.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE); contentAssist.addContentProposalListener(proposal); contentAssist.addContentProposalListener(proposal2); contentAssist.addContentProposalListener(proposal3); contentAssist.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal chosenProposal) { if (chosenProposal.getContent() == null) { return; } MessageExchange me = null; try { me = (MessageExchange) ((Adapter) chosenProposal).getTarget(); } catch (Throwable t) { return; } Command cmd = new SetMessageExchangeCommand(getInput(), me); cmd.setLabel(IBPELUIConstants.CMD_ADD_MESSAGEEXCHANGE); runCommand(cmd); } }); // Open content assist window on button click messExBrowseButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { contentAssist.openProposals(); } }); messExName.addListener(SWT.KeyDown, new Listener() { public void handleEvent(Event event) { if (event.keyCode == SWT.CR) { findAndSetOrCreateMessageExchange(messExName.getText()); } } }); // End of content assist for message exchange // Layout FlatFormData data = new FlatFormData(); data.right = new FlatFormAttachment(100, 0); data.top = new FlatFormAttachment(messExName, +2, SWT.TOP); data.bottom = new FlatFormAttachment(messExName, -2, SWT.BOTTOM); messExBrowseButton.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, BPELUtil.calculateLabelWidth(messExLabel, STANDARD_LABEL_WIDTH_SM)); data.right = new FlatFormAttachment(messExBrowseButton, 0); messExName.setLayoutData(data); data = new FlatFormData(); data.left = new FlatFormAttachment(0, 0); data.right = new FlatFormAttachment(messExName, -IDetailsAreaConstants.HSPACE); data.top = new FlatFormAttachment(messExName, 0, SWT.CENTER); messExLabel.setLayoutData(data); }