Java源码示例:org.eclipse.core.databinding.DataBindingContext

示例1
public RelationFieldDetailsControl(Composite parent, BusinessDataModelFormPage formPage,
        IObservableValue<Field> selectedFieldObservable, IObservableValue<String> descriptionObservable,
        DataBindingContext ctx) {
    super(parent, SWT.None);
    this.descriptionObservable = descriptionObservable;
    setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    setLayout(GridLayoutFactory.fillDefaults().margins(10, 10).create());
    formPage.getToolkit().adapt(this);

    this.formPage = formPage;
    this.selectedFieldObservable = selectedFieldObservable;
    this.ctx = ctx;

    createDescriptionTextArea();
    createRelationKindLabel();
    createRelationKindCombo();
    createLoadingModeRadioButtons();
}
 
示例2
public FieldDetailsControl(Composite parent, BusinessDataModelFormPage formPage,
        IObservableValue<Field> selectedFieldObservable, DataBindingContext ctx) {
    super(parent, SWT.None);
    this.formPage = formPage;
    this.ctx = ctx;
    this.selectedFieldObservable = selectedFieldObservable;
    this.descriptionObservable = EMFObservables.observeDetailValue(Realm.getDefault(),
            selectedFieldObservable, BusinessDataModelPackage.Literals.FIELD__DESCRIPTION);
    formPage.getToolkit().adapt(this);

    stackLayout = new CustomStackLayout(this);
    setLayout(stackLayout);
    setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    createStringFieldDetailsComposite(ctx);
    createDateDeprecatedDetailsComposite();
    createDateOnlyDetailsComposite();
    createDateTimeComposite();
    createDateTimeInTimeZoneComposite();
    createTextFieldComposite();
    createRelationFieldComposite(ctx);
    createNoDetailsComposite();

    selectedFieldObservable.addValueChangeListener(e -> updateTopControl());
}
 
示例3
private void bindIndexedFieldObservableLists(DataBindingContext ctx, IObservableList<Field> actualsFieldsObservable) {
    ctx.bindList(indexedFieldsObservable, indexedFieldNameObservable,
            UpdateStrategyFactory.updateListStrategyFactory()
                    .withConverter(ConverterBuilder.<Field, String> newConverter()
                            .fromType(Field.class)
                            .toType(String.class)
                            .withConvertFunction(Field::getName)
                            .create())
                    .create(),
            UpdateStrategyFactory.updateListStrategyFactory()
                    .withConverter(ConverterBuilder.<String, Field> newConverter()
                            .fromType(String.class)
                            .toType(Field.class)
                            .withConvertFunction(fieldName -> actualsFieldsObservable
                                    .stream()
                                    .filter(aField -> Objects.equals(fieldName, aField.getName()))
                                    .findFirst()
                                    .orElseThrow(() -> new IllegalArgumentException(
                                            String.format("The field %s doesn't exists.", fieldName))))
                            .create())
                    .create());
}
 
示例4
public QueryEditionControl(Composite parent,
        QueryFormPage formPage,
        DataBindingContext ctx) {
    this.formPage = formPage;
    this.boSelectedObservable = formPage.observeBusinessObjectSelected();
    this.ctx = ctx;
    this.queryContentCreator = new QueryContentCreator();

    Composite queryEditionComposite = formPage.getToolkit().createComposite(parent);
    queryEditionComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());
    queryEditionComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    createDefinitionSection(queryEditionComposite);
    queryDetailsControl = new QueryDetailsControl(queryEditionComposite, querySelectedObservable, formPage,
            boSelectedObservable, viewer);
    enableButtons();

    customQueries = EMFObservables.observeDetailList(Realm.getDefault(), boSelectedObservable,
            BusinessDataModelPackage.Literals.BUSINESS_OBJECT__QUERIES);
    defaultQueries = EMFObservables.observeDetailList(Realm.getDefault(), boSelectedObservable,
            BusinessDataModelPackage.Literals.BUSINESS_OBJECT__DEFAULT_QUERIES);
}
 
示例5
@Override
public Control createControl(Composite parent, IWizardContainer wizardContainer, DataBindingContext ctx) {
    Composite mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    mainComposite.setLayout(GridLayoutFactory.fillDefaults().create());
    super.createControl(mainComposite, wizardContainer, ctx);
    currentShell = wizardContainer.getShell();

    ButtonWidget renameButton = new ButtonWidget.Builder()
            .alignLeft()
            .withLabel(org.bonitasoft.studio.ui.i18n.Messages.rename)
            .onClick(this::rename)
            .createIn(mainComposite);
    renameButton.disable();

    tableViewer.addSelectionChangedListener(e -> {
        if (getSelection().count() == 1
                && !Objects.equals(getSelection().findFirst().get().getName(), unRenamableFile.orElse(""))) {
            renameButton.enable();
        } else {
            renameButton.disable();
        }
    });

    return mainComposite;
}
 
示例6
private void createDefaultUserTextWidget(DataBindingContext ctx, final Composite mainComposite) {
    usernameObservable = PojoProperties.value("defaultUsername").observe(this);
    usernameProposalProvider = new SimpleContentProposalProvider();
    usernameProposalProvider.setFiltering(true);
    defaultUserTextWidget = new TextWidget.Builder()
            .useNativeRender()
            .labelAbove()
            .widthHint(530)
            .withLabel(org.bonitasoft.studio.actors.i18n.Messages.defaultUser)
            .withTootltip(org.bonitasoft.studio.actors.i18n.Messages.defaultUserTooltip)
            .bindTo(usernameObservable)
            .withProposalProvider(usernameProposalProvider)
            .withValidator(defaultUserValidator().create())
            .inContext(ctx)
            .createIn(mainComposite);
}
 
示例7
private void createConstraintEditionComposite(DataBindingContext ctx) {
    Composite composite = formPage.getToolkit().createComposite(mainComposite);
    composite.setLayout(GridLayoutFactory.fillDefaults().create());
    composite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    createConstraintDescriptionSection(composite, ctx);
    createConstraintEditionSection(composite);

    ctx.bindValue(WidgetProperties.visible().observe(composite), new ComputedValue<Boolean>() {

        @Override
        protected Boolean calculate() {
            return selectedConstraintObservable.getValue() != null;
        }
    });
}
 
示例8
public static Collection<Binding> bind ( final DataBindingContext dbc, final IObservableValue lineInputObservable, final IObservableValue linePropertiesObservable )
{
    final Collection<Binding> result = new LinkedList<Binding> ();

    try
    {
        result.add ( dbc.bindValue ( PojoObservables.observeDetailValue ( lineInputObservable, "lineWidth", null ), EMFObservables.observeDetailValue ( dbc.getValidationRealm (), linePropertiesObservable, ChartPackage.Literals.LINE_PROPERTIES__WIDTH ) ) ); //$NON-NLS-1$
        result.add ( dbc.bindValue ( PojoObservables.observeDetailValue ( lineInputObservable, "lineColor", null ), EMFObservables.observeDetailValue ( dbc.getValidationRealm (), linePropertiesObservable, ChartPackage.Literals.LINE_PROPERTIES__COLOR ) ) ); //$NON-NLS-1$
    }
    catch ( final Exception e )
    {
        logger.warn ( "Failed to bind line properties", e ); //$NON-NLS-1$
    }

    return result;
}
 
示例9
public BusinessObjectEditionControl(Composite parent, BusinessDataModelFormPage formPage, DataBindingContext ctx) {
    this.boSelectedObservable = formPage.observeBusinessObjectSelected();
    this.section = formPage.getToolkit().createSection(parent, Section.EXPANDED);
    section.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    section.setLayout(GridLayoutFactory.fillDefaults().create());

    Composite boEditionComposite = formPage.getToolkit().createComposite(section);
    boEditionComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    boEditionComposite.setLayout(GridLayoutFactory.fillDefaults().create());

    formPage.getToolkit().createLabel(boEditionComposite, "");// filler
    buildDescriptionSection(boEditionComposite, formPage, ctx);
    buildEditionSection(boEditionComposite, formPage, ctx);

    section.setClient(boEditionComposite);
}
 
示例10
public ButtonProfileEntry ( final DataBindingContext dbc, final Composite parent, final ProfileManager profileManager, final Profile profile, final ChartContext chartContext )
{
    super ( dbc, profileManager, profile, chartContext );

    this.widget = new Button ( parent, SWT.TOGGLE );

    addBinding ( dbc.bindValue ( SWTObservables.observeText ( this.widget ), EMFObservables.observeValue ( profile, ChartPackage.Literals.PROFILE__LABEL ) ) );

    this.widget.addSelectionListener ( new SelectionAdapter () {
        @Override
        public void widgetSelected ( final SelectionEvent e )
        {
            fireSelection ( ButtonProfileEntry.this.widget.getSelection () );
        };
    } );
}
 
示例11
protected DataBindingContext initDataBindings(){
	DataBindingContext bindingContext = new DataBindingContext();
	
	tableViewerContacts.setContentProvider(contentProvider);
	IObservableMap[] observeMaps =
		BeansObservables.observeMaps(contentProvider.getKnownElements(), IContact.class,
			new String[] {
				"description1", "description2", "mandator", "patient", "user"
			});
	ILabelDecorator decorator =
		PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator();
	tableViewerContacts.setLabelProvider(new TableDecoratingLabelProvider(
		new ContactSelectorObservableMapLabelProvider(observeMaps), decorator));
	tableViewerContacts.setInput(contactList);
	return bindingContext;
}
 
示例12
@Override
protected Control createDialogArea(final Composite parent) {
    dbc = new DataBindingContext();

    final Composite mainComposite = (Composite) super.createDialogArea(parent);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().hint(400, SWT.DEFAULT).create());
    mainComposite.setLayout(GridLayoutFactory.fillDefaults().extendedMargins(15, 15, 10, 0).spacing(0, 15).create());
    final Label descriptionLabel = new Label(mainComposite, SWT.WRAP);
    descriptionLabel.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    descriptionLabel.setText(Messages.testGroovyScriptDialogDescription);
    final Map<String, Serializable> procVariables = getProcessVariables(variables);
    final Map<String, Serializable> unknownVariables = getUnknownVariables(variables);
    if (!procVariables.isEmpty()) {
        createVariableGroup(mainComposite, Messages.processVariableLabel, procVariables, dbc);
    }
    if (!unknownVariables.isEmpty()) {
        createVariableGroup(mainComposite, Messages.unknownVariableLabel, unknownVariables, dbc);
    }

    return mainComposite;
}
 
示例13
@Override
public void createControl(final Composite parent) {
    dbc = new DataBindingContext();

    final Composite mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    mainComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(1).extendedMargins(10, 10, 5, 5).create());

    createProcessViewer(mainComposite);

    final Composite group = new Composite(mainComposite, SWT.NONE);
    group.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    group.setLayout(GridLayoutFactory.fillDefaults().numColumns(3).margins(0, 0).create());

    createConfiguration(group);
    createDestination(group);

    pageSupport = WizardPageSupport.create(this, dbc);
    setControl(mainComposite);
}
 
示例14
public XAxisViewer ( final DataBindingContext dbc, final ChartRenderer manager, final XAxis axis, final boolean top )
{
    super ( dbc, manager, axis );

    this.axis = axis;

    this.control = new org.eclipse.scada.chart.XAxis ();

    this.renderer = new XAxisDynamicRenderer ( manager );
    this.renderer.setAxis ( this.control );
    this.renderer.setAlign ( top ? SWT.TOP : SWT.BOTTOM );
    manager.addRenderer ( this.renderer, -2 );

    addBinding ( this.dbc.bindValue ( BeansObservables.observeValue ( this.control, "label" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.AXIS__LABEL ) ) ); //$NON-NLS-1$
    addBinding ( this.dbc.bindValue ( BeansObservables.observeValue ( this.control, "min" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.XAXIS__MINIMUM ) ) ); //$NON-NLS-1$
    addBinding ( this.dbc.bindValue ( BeansObservables.observeValue ( this.control, "max" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.XAXIS__MAXIMUM ) ) ); //$NON-NLS-1$

    addBinding ( this.dbc.bindValue ( PojoObservables.observeValue ( this.renderer, "showLabels" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.AXIS__LABEL_VISIBLE ) ) ); //$NON-NLS-1$
    addBinding ( this.dbc.bindValue ( PojoObservables.observeValue ( this.renderer, "format" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.AXIS__FORMAT ) ) ); //$NON-NLS-1$
    addBinding ( this.dbc.bindValue ( PojoObservables.observeValue ( this.renderer, "textPadding" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.AXIS__TEXT_PADDING ) ) ); //$NON-NLS-1$
    addBinding ( this.dbc.bindValue ( PojoObservables.observeValue ( this.renderer, "color" ), EMFObservables.observeValue ( this.axis, ChartPackage.Literals.AXIS__COLOR ) ) ); //$NON-NLS-1$
}
 
示例15
private Composite createComposite ( final Composite wrapper )
{
    this.dbc = new DataBindingContext ( DisplayRealm.getRealm ( wrapper.getDisplay () ) );

    wrapper.addDisposeListener ( new DisposeListener () {

        @Override
        public void widgetDisposed ( final DisposeEvent e )
        {
            CallbackDialog.this.dbc.dispose ();
        }
    } );

    final Composite composite = new Composite ( wrapper, SWT.NONE );
    composite.setLayout ( new GridLayout ( 2, false ) );

    for ( final CallbackWidgetFactory factory : this.factories )
    {
        factory.createGridWidgets ( this.dbc, composite );
    }

    return composite;
}
 
示例16
@Override
public Control createControl(Composite parent, IWizardContainer wizardContainer, DataBindingContext ctx) {
    resourceManager = new LocalResourceManager(JFaceResources.getResources(), parent);
    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayout(GridLayoutFactory.fillDefaults().create());
    composite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    super.createControl(composite, wizardContainer, ctx);
    Composite importComposite = createImportComposite(composite);
    filePathObservable.addValueChangeListener(e -> parseInput());
    ctx.bindValue(WidgetProperties.visible().observe(importComposite), new ComputedValue<Boolean>() {

        @Override
        protected Boolean calculate() {
            return filePathObservable.getValue() != null;
        }
    });

    ctx.bindValue(new WritableValue(), importBdmModelObservable, // Purpose: disable on finish button when input isn't correct
            UpdateStrategyFactory.neverUpdateValueStrategy().create(),
            UpdateStrategyFactory.updateValueStrategy()
                    .withValidator(new SmartImportBdmModelValidator())
                    .create());

    return composite;
}
 
示例17
public void createDocumentTableViewerComposite(final Composite parent, final DataBindingContext dbc) {
    documentTableViewerComposite = new Composite(parent, SWT.NONE);
    documentTableViewerComposite.setLayout(GridLayoutFactory.swtDefaults().create());
    documentTableViewerComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    final TableViewer documentTableViewer = new TableViewer(documentTableViewerComposite,
            SWT.BORDER | SWT.SINGLE | SWT.NO_FOCUS | SWT.H_SCROLL
                    | SWT.V_SCROLL);
    documentTableViewer.getTable()
            .setLayoutData(GridDataFactory.fillDefaults().grab(true, true).hint(200, 100).create());
    final ObservableListContentProvider contentProvider = new ObservableListContentProvider();
    documentTableViewer.setContentProvider(contentProvider);
    documentTableViewer.setLabelProvider(new DocumentStyledLabelProvider());
    documentTableViewer.setInput(new WritableList(availableDocuments, ProcessPackage.Literals.DOCUMENT));
    final IViewerObservableValue observeSingleSelection = ViewersObservables
            .observeSingleSelection(documentTableViewer);
    dbc.bindValue(observeSingleSelection, selectedDataObservable,
            updateValueStrategy().withValidator(createDefaultValueAlreadyDefinedValidator()).create(), null);
    documentButton.addSelectionListener(createDocumentSelectionAdapter());
}
 
示例18
private void createSearch(DataBindingContext ctx, Composite parent) {
    Composite searchComposite = new Composite(parent, SWT.NONE);
    searchComposite.setLayout(GridLayoutFactory.fillDefaults().create());
    searchComposite.setLayoutData(GridDataFactory.fillDefaults().align(SWT.FILL, SWT.BOTTOM).create());

    new SearchWidget.Builder()
            .useNativeRender()
            .labelAbove()
            .fill()
            .widthHint(400)
            .withPlaceholder(Messages.searchArtifact)
            .bindTo(searchObservableValue)
            .withDelay(500)
            .inContext(ctx)
            .createIn(searchComposite);
}
 
示例19
private void createToolbarComposite(DataBindingContext ctx, Composite parent) {
    Composite composite = new Composite(parent, SWT.INHERIT_FORCE);
    composite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).extendedMargins(0, 0, 8, 0).create());
    composite.setLayoutData(
            GridDataFactory.fillDefaults().align(SWT.END, SWT.FILL).grab(true, false).create());

    Button onlyLatestProcessVersionButton = new Button(composite, SWT.CHECK);
    onlyLatestProcessVersionButton.setText(Messages.selectLatestVersion);

    ctx.bindValue(WidgetProperties.selection().observe(onlyLatestProcessVersionButton),
            PojoProperties.value("latestVersionOnly").observe(this));

    ToolBar toolBar = new ToolBar(composite, SWT.HORIZONTAL | SWT.RIGHT | SWT.NO_FOCUS | SWT.FLAT);

    new ToolItem(toolBar, SWT.SEPARATOR | SWT.VERTICAL);

    ToolItem expandAll = new ToolItem(toolBar, SWT.PUSH);
    expandAll.setImage(Pics.getImage(PicsConstants.expandAll));
    expandAll.setToolTipText(Messages.expandAll);
    expandAll.addListener(SWT.Selection, e -> fileStoreViewer.expandAll());

    ToolItem collapseAll = new ToolItem(toolBar, SWT.PUSH);
    collapseAll.setImage(Pics.getImage(PicsConstants.collapseAll));
    collapseAll.setToolTipText(Messages.collapseAll);
    collapseAll.addListener(SWT.Selection, e -> fileStoreViewer.collapseAll());
}
 
示例20
private Composite initDefaultOptionsUI(DataBindingContext dbc, Composite parent) {
	// A group for default options
	final Group defaultOptions = new Group(parent, NONE);
	defaultOptions.setLayout(GridLayoutFactory.fillDefaults().numColumns(1).create());

	final Button createGreeterFileButton = new Button(defaultOptions, CHECK);
	createGreeterFileButton.setText("Create a greeter file");

	initDefaultCreateGreeterBindings(dbc, createGreeterFileButton);

	return defaultOptions;
}
 
示例21
private void initTestProjectBinding(DataBindingContext dbc, Button addNormalSourceFolderButton,
		Button createTestGreeterFileButton) {
	// Bind the "normal source folder"-checkbox
	dbc.bindValue(WidgetProperties.buttonSelection().observe(addNormalSourceFolderButton),
			PojoProperties.value(N4JSProjectInfo.class, N4JSProjectInfo.ADDITIONAL_NORMAL_SOURCE_FOLDER_PROP_NAME)
					.observe(projectInfo));

	// Bind the "Create greeter file"-checkbox
	dbc.bindValue(WidgetProperties.buttonSelection().observe(createTestGreeterFileButton),
			BeanProperties.value(N4JSProjectInfo.class, N4JSProjectInfo.CREATE_GREETER_FILE_PROP_NAME)
					.observe(projectInfo));
}
 
示例22
@Override
public void createControl(Composite parent) {
	Composite mainComposite = new Composite(parent, SWT.NONE) ;
	mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()) ;
	mainComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(20,20).create()) ;
	
	databindingContext = new DataBindingContext() ;
	
	final TableViewer viewer = new TableViewer(mainComposite, SWT.FULL_SELECTION | SWT.BORDER | SWT.SINGLE ) ;
	viewer.getTable().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()) ;
	viewer.setContentProvider(new ArrayContentProvider()) ;
	viewer.setLabelProvider(new ActionLabelProvider()) ;
	viewer.setInput(getConfigurationImporterContributions()) ;
	
	UpdateValueStrategy startegy = new UpdateValueStrategy() ;
	startegy.setBeforeSetValidator(new IValidator() {
		
		@Override
		public IStatus validate(Object value) {
			if(value  instanceof IAction){
				return Status.OK_STATUS ;
			}
			return ValidationStatus.error(Messages.mustSelectExportError);
		}
	}) ;

	
	WizardPageSupport.create(this,databindingContext) ;
	databindingContext.bindValue(ViewersObservables.observeSingleSelection(viewer), PojoObservables.observeValue(this, "action"),startegy,null) ;

	
	setControl(mainComposite) ;
}
 
示例23
@Override
public void createControl(Composite parent) {
    final DataBindingContext dbc = new DataBindingContext();
    final Composite mainComposite = doCreateControls(parent, dbc);
    setControl(mainComposite);
    WizardPageSupport.create(this, dbc);
}
 
示例24
@Override
protected Control createContents(final Composite parent) {
    dbc = new DataBindingContext();
    final Control contents = super.createContents(parent);
    DialogSupport.create(this, dbc);
    return contents;
}
 
示例25
@Override
public Control createControl(Composite parent, IWizardContainer wizardContainer, DataBindingContext ctx) {
    Composite mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    mainComposite.setLayout(GridLayoutFactory.fillDefaults().create());

    tableViewer = createTableViewer(mainComposite);
    tableViewer.getControl().setLayoutData(
            GridDataFactory.fillDefaults().grab(true, true).hint(TABLE_WIDTH_HINT, SWT.DEFAULT).create());
    tableViewer.setContentProvider(ArrayContentProvider.getInstance());
    tableViewer.setLabelProvider(labelProvider);
    tableViewer.setInput(getInput());
    tableViewer.addDoubleClickListener(new WizardDoubleClickListener((WizardDialog) wizardContainer));

    ColumnViewerToolTipSupport.enableFor(tableViewer);

    IObservableList<IRepositoryFileStore> multiSelection = ViewersObservables.observeMultiSelection(tableViewer);
    ctx.addValidationStatusProvider(new MultiValidator() {

        @Override
        protected IStatus validate() {
            return multiSelection.isEmpty()
                    ? ValidationStatus.error("No selection")
                    : unselectableElements.isPresent()
                            && multiSelection.stream().anyMatch(unselectableElements.get()::contains)
                                    ? ValidationStatus.error("Unselectable element selected")
                                    : ValidationStatus.ok();
        }
    });

    return mainComposite;
}
 
示例26
public void bindControl(final DataBindingContext dbc, final IObservableValue modelObservable) {
    final DateTimeObservable dateObservable = new DateTimeObservable(dateControl);
    final DateTimeObservable timeObservable = new DateTimeObservable(timeControl);
    dbc.bindValue(dateObservable, modelObservable);
    dateControl.notifyListeners(SWT.Selection, new Event());
    timeObservable.addValueChangeListener(new IValueChangeListener() {

        @Override
        public void handleValueChange(final ValueChangeEvent event) {
            final Date newValue = (Date) event.diff.getNewValue();
            dateControl.setTime(newValue.getHours(), newValue.getMinutes(), newValue.getMinutes());
            dateControl.notifyListeners(SWT.Selection, new Event());
        }
    });
}
 
示例27
private Composite doFileLocationBrowser(Composite parent, DataBindingContext dbc) {
    Composite fileBrowserComposite = new Composite(parent, SWT.NONE);
    fileBrowserComposite
            .setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());
    fileBrowserComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());

    filePathObserveValue = PojoProperties.value("filePath").observe(this);
    filePathObserveValue.addValueChangeListener(this::parseArchive);
    textWidget = new TextWidget.Builder()
            .withLabel(Messages.selectLocation)
            .grabHorizontalSpace()
            .fill()
            .alignMiddle()
            .labelAbove()
            .withTargetToModelStrategy(updateValueStrategy()
                    .withValidator(new MultiValidator.Builder()
                            .havingValidators(getEmptyInputValidator("")).create()))
            .bindTo(filePathObserveValue)
            .inContext(dbc)
            .readOnly()
            .withButton(Messages.browseButton_label)
            .onClickButton(this::browseFile)
            .createIn(fileBrowserComposite);

    textWidget.focusButton();
    return parent;
}
 
示例28
public AttributeEditionControl(Composite parent,
        BusinessDataModelFormPage formPage,
        IObservableValue<BusinessObject> selectedBoObservable,
        DataBindingContext ctx) {
    super(parent, SWT.None);
    setLayout(GridLayoutFactory.fillDefaults().create());
    setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    formPage.getToolkit().adapt(this);
    this.formPage = formPage;
    this.selectedBoObservable = selectedBoObservable;
    this.ctx = ctx;

    fieldsObservable = EMFObservables.observeDetailList(Realm.getDefault(), selectedBoObservable,
            BusinessDataModelPackage.Literals.BUSINESS_OBJECT__FIELDS);

    Composite viewerComposite = formPage.getToolkit().createComposite(this);
    viewerComposite.setLayout(GridLayoutFactory.fillDefaults().spacing(LayoutConstants.getSpacing().x, 1).create());
    viewerComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).hint(1000, 300).create());

    Composite toolbarComposite = formPage.getToolkit().createComposite(viewerComposite);
    toolbarComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());
    toolbarComposite.setLayoutData(GridDataFactory.fillDefaults().create());

    createToolbar(toolbarComposite);
    createSearchField(toolbarComposite);
    createAttributeTableViewer(viewerComposite);

    createDetailsSection();
    enableButtons();
    selectedBoObservable.addValueChangeListener(e -> selectedFieldObservable.setValue(null));
}
 
示例29
protected DataBindingContext initDataBindings() {
	DataBindingContext bindingContext = new DataBindingContext();
	//
	ObservableListContentProvider listContentProvider = new ObservableListContentProvider();
	IObservableMap[] observeMaps = BeansObservables.observeMaps(listContentProvider.getKnownElements(), Preference.class, new String[]{"name", "value"});
	preferencesViewer.setLabelProvider(new ObservableMapLabelProvider(observeMaps));
	preferencesViewer.setContentProvider(listContentProvider);
	//
	IObservableList preferencesGetWidgetObserveList = BeanProperties.list("preferences").observe(getWidget());
	preferencesViewer.setInput(preferencesGetWidgetObserveList);
	//
	ObservableListContentProvider listContentProvider_1 = new ObservableListContentProvider();
	IObservableMap[] observeMaps_1 = BeansObservables.observeMaps(listContentProvider_1.getKnownElements(), Access.class, new String[]{"origin", "subdomains", "browserOnly"});
	accessViewer.setLabelProvider(new ObservableMapLabelProvider(observeMaps_1));
	accessViewer.setContentProvider(listContentProvider_1);
	//
	IObservableList accessesGetWidgetObserveList = BeanProperties.list("accesses").observe(getWidget());
	accessViewer.setInput(accessesGetWidgetObserveList);
	//
	ObservableListContentProvider listContentProvider_2 = new ObservableListContentProvider();
	IObservableMap[] observeMapsPlugin = BeansObservables.observeMaps(listContentProvider_2.getKnownElements(), Plugin.class, new String[]{"name", "spec"});
	featuresTableViewer.setLabelProvider(new ObservableMapLabelProvider(observeMapsPlugin));
	featuresTableViewer.setContentProvider(listContentProvider_2);
	//
	IObservableList featuresGetWidgetObserveList = BeanProperties.list("plugins").observe(getWidget());
	featuresTableViewer.setInput(featuresGetWidgetObserveList);
	//
	return bindingContext;
}
 
示例30
public ProfileManager ( final DataBindingContext ctx, final Realm realm, final ExtensionSpaceProvider extensionSpaceProvider, final ChartContext chartContext )
{
    this.ctx = ctx;
    this.extensionSpaceProvider = extensionSpaceProvider;
    this.chartContext = chartContext;
    this.list = new WritableList ( realm );
    this.list.addListChangeListener ( new IListChangeListener () {

        @Override
        public void handleListChange ( final ListChangeEvent event )
        {
            handleChange ( event.diff );
        }
    } );
}