List of usage examples for org.eclipse.jface.databinding.swt SWTObservables observeText
@Deprecated public static ISWTObservableValue observeText(Control control, int event)
control
. From source file:org.bonitasoft.studio.properties.sections.document.DocumentPropertySection.java
License:Open Source License
protected void bindDetails(final IObservableValue documentSelected) { if (nameBinding != null) { nameBinding.dispose();/*from w w w . j a v a 2 s. c o m*/ } if (decorationSupport != null) { decorationSupport.dispose(); } IObservableValue externalUrlObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.DOCUMENT__URL).observeDetail(documentSelected); emfDataBindingContext.bindValue(ViewerProperties.singleSelection().observe(documentUrlViewer), externalUrlObserved); documentUrlViewer.setInput(documentSelected); IObservableValue mimeTypeObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.DOCUMENT__MIME_TYPE) .observeDetail(documentSelected); emfDataBindingContext.bindValue(ViewerProperties.singleSelection().observe(documentMimeTypeViewer), mimeTypeObserved); documentMimeTypeViewer.setInput(documentSelected); final UpdateValueStrategy targetToModel = new UpdateValueStrategy(); targetToModel.setAfterGetValidator(new InputLengthValidator(Messages.name, 50)); targetToModel.setBeforeSetValidator(new DocumentNameValidator(documentListViewer)); final IObservableValue nameObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.ELEMENT__NAME).observeDetail(documentSelected); nameBinding = emfDataBindingContext.bindValue( SWTObservables.observeDelayedValue(500, SWTObservables.observeText(documentNameText, SWT.Modify)), nameObserved, targetToModel, null); decorationSupport = ControlDecorationSupport.create(nameBinding, SWT.LEFT); nameObserved.addValueChangeListener(new IValueChangeListener() { @Override public void handleValueChange(ValueChangeEvent event) { if (documentListViewer != null && !documentListViewer.getList().isDisposed()) { documentListViewer.refresh(); } } }); IObservableValue descriptionObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.ELEMENT__DOCUMENTATION) .observeDetail(documentSelected); emfDataBindingContext.bindValue(SWTObservables.observeDelayedValue(500, SWTObservables.observeText(documentDescriptionText, SWT.Modify)), descriptionObserved); IObservableValue internalTypeObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.DOCUMENT__IS_INTERNAL) .observeDetail(documentSelected); emfDataBindingContext.bindValue(SWTObservables.observeSelection(internalCheckbox), internalTypeObserved); IObservableValue documentInternalIDObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.DOCUMENT__DEFAULT_VALUE_ID_OF_DOCUMENT_STORE) .observeDetail(documentSelected); emfDataBindingContext.bindValue( SWTObservables.observeDelayedValue(500, SWTObservables.observeText(documentTextId, SWT.Modify)), documentInternalIDObserved); IObservableValue externalTypeObserved = EMFEditProperties .value(getEditingDomain(), ProcessPackage.Literals.DOCUMENT__IS_INTERNAL) .observeDetail(documentSelected); emfDataBindingContext.bindValue(SWTObservables.observeSelection(externalCheckbox), externalTypeObserved, new UpdateValueStrategy() { @Override public Object convert(Object value) { return super.convert(!(Boolean) value); } }, new UpdateValueStrategy() { @Override public Object convert(Object value) { return super.convert(!(Boolean) value); } }); emfDataBindingContext.bindValue(SWTObservables.observeEnabled(documentUrlViewer.getTextControl()), externalTypeObserved, new UpdateValueStrategy() { @Override public Object convert(Object value) { return super.convert(!(Boolean) value); } }, new UpdateValueStrategy() { @Override public Object convert(Object value) { return super.convert(!(Boolean) value); } }); emfDataBindingContext.bindValue(SWTObservables.observeEnabled(documentUrlViewer.getButtonControl()), externalTypeObserved, new UpdateValueStrategy() { @Override public Object convert(Object value) { return super.convert(!(Boolean) value); } }, new UpdateValueStrategy() { @Override public Object convert(Object value) { return super.convert(!(Boolean) value); } }); emfDataBindingContext.bindValue(SWTObservables.observeEnabled(documentTextId), internalTypeObserved); emfDataBindingContext.bindValue(SWTObservables.observeEnabled(browseButton), internalTypeObserved); }
From source file:org.bonitasoft.studio.properties.sections.forms.wizard.SelectGeneratedWidgetsWizardPage.java
License:Open Source License
@Override public void createControl(Composite parent) { databindingContext = new DataBindingContext(); // main composite Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(new GridLayout(1, false)); // ----- TOP/* w w w. j a v a 2s .com*/ Composite topComposite = new Composite(composite, SWT.NONE); topComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).spacing(10, 5).create()); topComposite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); Label nameLabel = new Label(topComposite, SWT.LEFT); nameLabel.setLayoutData(GridDataFactory.swtDefaults().align(SWT.END, SWT.CENTER).create()); nameLabel.setText(Messages.GeneralSection_Name); final Text nameText = new Text(topComposite, SWT.BORDER); nameText.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); UpdateValueStrategy stratetgy = new UpdateValueStrategy(); stratetgy.setBeforeSetValidator(new InputLengthValidator(Messages.name, 50)); ISWTObservableValue observeText = SWTObservables.observeText(nameText, SWT.Modify); observeText.addValueChangeListener(new IValueChangeListener() { @Override public void handleValueChange(ValueChangeEvent event) { getContainer().updateButtons(); } }); databindingContext.bindValue(observeText, PojoProperties.value("formName").observe(this), stratetgy, null); // ------------ Description Label descLabel = new Label(topComposite, SWT.LEFT); descLabel.setLayoutData(GridDataFactory.swtDefaults().align(SWT.END, SWT.TOP).create()); descLabel.setText(Messages.GeneralSection_Description); final Text descriptionText = new Text(topComposite, SWT.MULTI + SWT.BORDER); descriptionText.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).align(SWT.FILL, SWT.CENTER) .hint(SWT.DEFAULT, 45).create()); databindingContext.bindValue(SWTObservables.observeText(descriptionText, SWT.Modify), PojoProperties.value("formDescription").observe(this)); if (hasWidgetToGenerated()) { Group parentGroup = createWidgetGroup(composite); createSelectionComposite(parentGroup); ScrolledComposite scrolledComposite = createScrolledComposite(parentGroup); Composite scrollable = new Composite(scrolledComposite, SWT.NONE); scrollable.setLayout(new GridLayout(2, false)); scrollable.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); for (Data currentData : data) { createChoice(scrollable, currentData); } for (Document document : documents) { createDocumentChoice(scrollable, document); } selectAll(true); /*Add settings of the scrolled composite*/ scrolledComposite.setMinSize(scrollable.computeSize(SWT.DEFAULT, SWT.DEFAULT)); scrolledComposite.setAlwaysShowScrollBars(false); scrolledComposite.setExpandHorizontal(true); scrolledComposite.setExpandVertical(true); scrolledComposite.setContent(scrollable); } else { Label title = new Label(composite, SWT.CENTER); title.setText(Messages.createForm_noData); } WizardPageSupport.create(this, databindingContext); setControl(composite); }
From source file:org.bonitasoft.studio.properties.sections.general.NameGridPropertySectionContribution.java
License:Open Source License
@Override protected void createBinding(EMFDataBindingContext context) { labelTargetToModelUpdate = new UpdateValueStrategy(); labelTargetToModelUpdate.setAfterGetValidator(new UTF8InputValidator(Messages.name)); List<IValidator> validators = new ArrayList<IValidator>(); validators.add(new InputLengthValidator(Messages.name, 0, 50)); MultiValidator multiValidation = new MultiValidator(validators); labelTargetToModelUpdate.setBeforeSetValidator(multiValidation); labelTargetToModelUpdate.setAfterConvertValidator(new SpecialCharactersValidator()); observable = SWTObservables.observeDelayedValue(400, SWTObservables.observeText(text, SWT.Modify)); observable.addValueChangeListener(new IValueChangeListener() { @Override//from ww w . j av a 2 s. c o m public void handleValueChange(ValueChangeEvent event) { updatePropertyTabTitle(); } }); ControlDecorationSupport.create(context.bindValue(observable, EMFEditObservables.observeValue(editingDomain, element, ProcessPackage.Literals.ELEMENT__NAME), labelTargetToModelUpdate, null), SWT.LEFT); bindingInitialized = true; }
From source file:org.bonitasoft.studio.properties.sections.general.ProcessElementNameContribution.java
License:Open Source License
@Override protected void createBinding(final EMFDataBindingContext context) { observable = SWTObservables.observeDelayedValue(250, SWTObservables.observeText(text, SWT.Modify)); final IObservableValue nameObservable = EMFEditObservables.observeValue(editingDomain, element, ProcessPackage.Literals.ELEMENT__NAME); nameObservable.addValueChangeListener(new IValueChangeListener() { @Override//from w ww . jav a 2 s. c om public void handleValueChange(final ValueChangeEvent event) { updatePropertyTabTitle(); updatePartName((String) event.diff.getNewValue(), Display.getDefault()); } }); context.bindValue(observable, nameObservable); final MultiValidator validationStatusProvider = nameValidationStatusProvider(observable); context.addValidationStatusProvider(validationStatusProvider); ControlDecorationSupport.create(validationStatusProvider, SWT.LEFT); bindingInitialized = true; }
From source file:org.bonitasoft.studio.properties.sections.general.TextAnnotationTextPropertySectionContribution.java
License:Open Source License
public void updateBindings() { if (text != null && !text.isDisposed()) { if (context != null) { context.dispose();/*from w ww . jav a 2 s . c o m*/ } context = new EMFDataBindingContext(); context.bindValue(SWTObservables.observeText(text, SWT.Modify), EMFEditObservables .observeValue(editingDomain, textAnnotation, ProcessPackage.Literals.TEXT_ANNOTATION__TEXT)); } }
From source file:org.bonitasoft.studio.properties.sections.general.VersionGridPropertySectionContribution.java
License:Open Source License
protected void createBinding(EMFDataBindingContext context) { UpdateValueStrategy versionUpdate = new UpdateValueStrategy(); versionUpdate.setAfterGetValidator(new EmptyInputValidator(Messages.GeneralSection_Version)); versionUpdate.setBeforeSetValidator(new UTF8InputValidator(Messages.GeneralSection_Version)); ISWTObservableValue observable = SWTObservables.observeDelayedValue(400, SWTObservables.observeText(text, SWT.Modify)); context.bindValue(observable, EMFEditObservables.observeValue(editingDomain, process, ProcessPackage.Literals.ABSTRACT_PROCESS__VERSION), versionUpdate, versionUpdate); }
From source file:org.bonitasoft.studio.properties.sections.message.wizards.AddMessageEventWizardPage.java
License:Open Source License
private Text createDescriptionLine(Composite composite) { Label descLabel = new Label(composite, SWT.NONE); descLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.END, SWT.TOP).create()); descLabel.setText(Messages.dataDescriptionLabel); final Text descText = new Text(composite, SWT.MULTI | SWT.BORDER); gd = new GridData(SWT.FILL, SWT.CENTER, true, false); gd.heightHint = 45;//w w w . ja va 2 s . c o m descText.setLayoutData(gd); databindingContext.bindValue( SWTObservables.observeDelayedValue(200, SWTObservables.observeText(descText, SWT.Modify)), EMFObservables.observeValue(workingCopyMessage, ProcessPackage.Literals.ELEMENT__DOCUMENTATION)); return descText; }
From source file:org.bonitasoft.studio.properties.sections.message.wizards.AddMessageEventWizardPage.java
License:Open Source License
private Text createNameLine(Composite composite) { Label nameLabel = new Label(composite, SWT.NONE); nameLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.END, SWT.CENTER).create()); nameLabel.setText(Messages.dataNameLabel); nameText = new Text(composite, SWT.BORDER); nameText.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); IValidator nameValidator = new IValidator() { @Override/*from w w w . j a v a 2 s . co m*/ public IStatus validate(Object arg0) { if (arg0 instanceof String) { String s = (String) arg0; if (s == null || s.isEmpty()) { return ValidationStatus.error(Messages.emptyName); } else { List<Message> events = ModelHelper.getAllItemsOfType(ModelHelper.getMainProcess(element), ProcessPackage.eINSTANCE.getMessage()); for (Message ev : events) { if (!ev.equals(originalMessage) && ev.getName().equals(s)) { return ValidationStatus.error(Messages.messageEventAddWizardNameAlreadyExists); } } } } return ValidationStatus.ok(); } }; UpdateValueStrategy uvs = new UpdateValueStrategy(/* * UpdateValueStrategy. * POLICY_CONVERT */); uvs.setBeforeSetValidator(nameValidator); databindingContext.bindValue( SWTObservables.observeDelayedValue(200, SWTObservables.observeText(nameText, SWT.Modify)), EMFObservables.observeValue(workingCopyMessage, ProcessPackage.Literals.ELEMENT__NAME), uvs, null); return nameText; }
From source file:org.bonitasoft.studio.properties.sections.timer.cron.CronEditor.java
License:Open Source License
protected void createMonthlyTab(TabFolder tablFolder) { final TabItem item = new TabItem(tablFolder, SWT.NONE); item.setText(Messages.monthly);/*from w w w. java2 s. c om*/ final Composite monthlyContent = new Composite(tablFolder, SWT.NONE); monthlyContent.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); monthlyContent.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(15, 10).create()); final Button dayRadio = new Button(monthlyContent, SWT.RADIO); dayRadio.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); dayRadio.setText(Messages.day); context.bindValue(SWTObservables.observeSelection(dayRadio), PojoProperties.value("useDayInMonthForMonthly").observe(cronExpression)); final Composite dayComposite = new Composite(monthlyContent, SWT.NONE); dayComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); dayComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(4).margins(0, 0).create()); final Text dayText = new Text(dayComposite, SWT.BORDER | SWT.SINGLE); dayText.setLayoutData(GridDataFactory.fillDefaults().hint(70, SWT.DEFAULT).create()); UpdateValueStrategy dayTextStrategy = new UpdateValueStrategy(); dayTextStrategy.setAfterGetValidator(dotValidator); dayTextStrategy.setConverter(StringToNumberConverter.toInteger(true)); dayTextStrategy.setBeforeSetValidator(new DayInMonthValidator()); context.bindValue(SWTObservables.observeText(dayText, SWT.Modify), PojoProperties.value("dayOfMonthForMonthly").observe(cronExpression), dayTextStrategy, null); final Label ofEveryLabel = new Label(dayComposite, SWT.NONE); ofEveryLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); ofEveryLabel.setText(Messages.ofEvery); final Text everyMonthText = new Text(dayComposite, SWT.BORDER | SWT.SINGLE); everyMonthText.setLayoutData(GridDataFactory.fillDefaults().hint(70, SWT.DEFAULT).create()); UpdateValueStrategy everyMonthTextStrategy = new UpdateValueStrategy(); everyMonthTextStrategy.setAfterGetValidator(dotValidator); everyMonthTextStrategy.setConverter(StringToNumberConverter.toInteger(true)); everyMonthTextStrategy.setBeforeSetValidator(new MonthInYearValidator()); context.bindValue(SWTObservables.observeText(everyMonthText, SWT.Modify), PojoProperties.value("monthInYearForMonthly").observe(cronExpression), everyMonthTextStrategy, null); final Label monthLabel = new Label(dayComposite, SWT.NONE); monthLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); monthLabel.setText(Messages.monthLabel); final Button theRadio = new Button(monthlyContent, SWT.RADIO); theRadio.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); theRadio.setText(Messages.the); final Composite theComposite = new Composite(monthlyContent, SWT.NONE); theComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); theComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(5).margins(0, 0).create()); final Combo rankCombo = new Combo(theComposite, SWT.READ_ONLY | SWT.BORDER); rankCombo.setItems(RANK); UpdateValueStrategy rankComboStrategy = new UpdateValueStrategy(); rankComboStrategy.setConverter(new Converter(String.class, Integer.class) { @Override public Object convert(Object fromObject) { if (fromObject.toString().equals(Messages.first)) { return 1; } else if (fromObject.toString().equals(Messages.second)) { return 2; } else if (fromObject.toString().equals(Messages.third)) { return 3; } else if (fromObject.toString().equals(Messages.fourth)) { return 4; } else if (fromObject.toString().equals(Messages.fifth)) { return 5; } return 1; } }); UpdateValueStrategy rankComboStrategy2 = new UpdateValueStrategy(); rankComboStrategy2.setConverter(new Converter(Integer.class, String.class) { @Override public Object convert(Object fromObject) { Integer value = (Integer) fromObject; switch (value) { case 1: return Messages.first; case 2: return Messages.second; case 3: return Messages.third; case 4: return Messages.fourth; case 5: return Messages.fifth; default: break; } return Messages.first; } }); context.bindValue(SWTObservables.observeText(rankCombo), PojoProperties.value("monthRankForMonthly").observe(cronExpression), rankComboStrategy, rankComboStrategy2); final Combo dayCombo = new Combo(theComposite, SWT.READ_ONLY | SWT.BORDER); dayCombo.setItems(DAYS_OF_WEEK); UpdateValueStrategy dayComboStrategy = new UpdateValueStrategy(); dayComboStrategy.setConverter(new Converter(String.class, Integer.class) { @Override public Object convert(Object fromObject) { if (fromObject.toString().equals(Messages.monday)) { return 1; } else if (fromObject.toString().equals(Messages.tuesday)) { return 2; } else if (fromObject.toString().equals(Messages.wednesday)) { return 3; } else if (fromObject.toString().equals(Messages.thursday)) { return 4; } else if (fromObject.toString().equals(Messages.friday)) { return 5; } else if (fromObject.toString().equals(Messages.saturday)) { return 6; } else if (fromObject.toString().equals(Messages.sunday)) { return 7; } return 1; } }); UpdateValueStrategy dayComboStrategy2 = new UpdateValueStrategy(); dayComboStrategy2.setConverter(new Converter(Integer.class, String.class) { @Override public Object convert(Object fromObject) { Integer value = (Integer) fromObject; switch (value) { case 1: return Messages.monday; case 2: return Messages.tuesday; case 3: return Messages.wednesday; case 4: return Messages.thursday; case 5: return Messages.friday; case 6: return Messages.saturday; case 7: return Messages.sunday; default: break; } return Messages.monday; } }); context.bindValue(SWTObservables.observeText(dayCombo), PojoProperties.value("dayOfWeekForMonthly").observe(cronExpression), dayComboStrategy, dayComboStrategy2); final Label ofEveryLabel2 = new Label(theComposite, SWT.NONE); ofEveryLabel2.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); ofEveryLabel2.setText(Messages.ofEvery); final Text everyMonthText2 = new Text(theComposite, SWT.BORDER | SWT.SINGLE); everyMonthText2.setLayoutData(GridDataFactory.swtDefaults().hint(70, SWT.DEFAULT).create()); UpdateValueStrategy everyMonthText2Strategy = new UpdateValueStrategy(); everyMonthText2Strategy.setConverter(StringToNumberConverter.toInteger(true)); everyMonthText2Strategy.setBeforeSetValidator(new FrequencyValidator()); context.bindValue(SWTObservables.observeText(everyMonthText2, SWT.Modify), PojoProperties.value("monthOfYearForMonthly").observe(cronExpression), everyMonthText2Strategy, null); final Label monthLabel2 = new Label(theComposite, SWT.NONE); monthLabel2.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); monthLabel2.setText(Messages.monthLabel); final IObservableValue hourObservable = PojoProperties.value("atHourInMonth").observe(cronExpression); final IObservableValue minuteObservable = PojoProperties.value("atMinuteInMonth").observe(cronExpression); final IObservableValue secondObservable = PojoProperties.value("atSecondInMonth").observe(cronExpression); createStartTimeComposite(monthlyContent, hourObservable, minuteObservable, secondObservable); item.setControl(monthlyContent); }
From source file:org.bonitasoft.studio.properties.sections.timer.cron.CronEditor.java
License:Open Source License
protected void createDailyTab(TabFolder tablFolder) { final TabItem item = new TabItem(tablFolder, SWT.NONE); item.setText(Messages.daily);/*from ww w . ja v a 2s . c o m*/ final Composite dailyContent = new Composite(tablFolder, SWT.NONE); dailyContent.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); dailyContent.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(15, 10).create()); final Button everyRadio = new Button(dailyContent, SWT.RADIO); everyRadio.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); everyRadio.setText(Messages.every); context.bindValue(SWTObservables.observeSelection(everyRadio), PojoProperties.value("useEveryDayForDaily").observe(cronExpression)); final Composite everyComposite = new Composite(dailyContent, SWT.NONE); everyComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).indent(-65, 0).create()); everyComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(0, 0).create()); final Text dayText = new Text(everyComposite, SWT.BORDER | SWT.SINGLE); dayText.setLayoutData(GridDataFactory.fillDefaults().hint(70, SWT.DEFAULT).create()); UpdateValueStrategy dayFrequencyStrategy = new UpdateValueStrategy(); dayFrequencyStrategy.setAfterGetValidator(dotValidator); dayFrequencyStrategy.setConverter(StringToNumberConverter.toInteger(true)); dayFrequencyStrategy.setBeforeSetValidator(new FrequencyValidator()); context.bindValue(SWTObservables.observeText(dayText, SWT.Modify), PojoProperties.value("dayFrequencyForDaily").observe(cronExpression), dayFrequencyStrategy, null); final Label dayLabel = new Label(everyComposite, SWT.NONE); dayLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); dayLabel.setText(Messages.dayLabel); final Button everyWeekDayRadio = new Button(dailyContent, SWT.RADIO); everyWeekDayRadio.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.CENTER).create()); everyWeekDayRadio.setText(Messages.everyWeekDay); final Label filler = new Label(dailyContent, SWT.NONE); filler.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); final IObservableValue hourObservable = PojoProperties.value("atHourInDay").observe(cronExpression); final IObservableValue minuteObservable = PojoProperties.value("atMinuteInDay").observe(cronExpression); final IObservableValue secondObservable = PojoProperties.value("atSecondInDay").observe(cronExpression); createStartTimeComposite(dailyContent, hourObservable, minuteObservable, secondObservable); item.setControl(dailyContent); }