Package org.fusesource.ide.sap.ui.properties

Source Code of org.fusesource.ide.sap.ui.properties.SpecialPropertySection

/*******************************************************************************
* Copyright (c) 2014 Red Hat, Inc.
* Distributed under license by Red Hat, Inc. All rights reserved.
* This program is made available under the terms of the
* Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
* William Collins punkhornsw@gmail.com
******************************************************************************/
package org.fusesource.ide.sap.ui.properties;

import org.eclipse.core.databinding.DataBindingContext;
import org.eclipse.core.databinding.UpdateValueStrategy;
import org.eclipse.core.databinding.observable.value.IObservableValue;
import org.eclipse.emf.databinding.FeaturePath;
import org.eclipse.emf.databinding.edit.EMFEditProperties;
import org.eclipse.jface.databinding.swt.WidgetProperties;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CCombo;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
import org.fusesource.camel.component.sap.model.rfc.RfcPackage.Literals;
import org.fusesource.ide.sap.ui.Messages;
import org.fusesource.ide.sap.ui.converter.Boolean2StringConverter;
import org.fusesource.ide.sap.ui.converter.CpicTraceComboSelection2TraceLevelConverter;
import org.fusesource.ide.sap.ui.converter.String2BooleanConverter;
import org.fusesource.ide.sap.ui.converter.TraceLevel2CpicTraceComboSelectionConverter;
import org.fusesource.ide.sap.ui.util.LayoutUtil;

@SuppressWarnings("restriction")
public class SpecialPropertySection extends DestinationDataPropertySection {

  private Button traceBtn;
  private CCombo cpicTraceCombo;
  private Button lcheckBtn;
  private Text codepageText;
  private Button getsso2Btn;
  private Button denyInitialPasswordBtn;
 
  @Override
  public void createControls(Composite parent,
      TabbedPropertySheetPage aTabbedPropertySheetPage) {
    super.createControls(parent, aTabbedPropertySheetPage);
   
    Composite specialContainer = createFlatFormComposite(parent);
   
    traceBtn = getWidgetFactory().createButton(specialContainer, Messages.SpecialPropertySection_TraceLabel, SWT.CHECK);
    traceBtn.setToolTipText(Messages.SpecialPropertySection_TraceToolTip);
    traceBtn.setLayoutData(LayoutUtil.firstEntryLayoutData());

    cpicTraceCombo = getWidgetFactory().createCCombo(specialContainer, SWT.READ_ONLY);
    cpicTraceCombo.setItems(new String[] {"", Messages.SpecialPropertySection_CpicTraceLevel0Label, Messages.SpecialPropertySection_CpicTraceLevel1Label, Messages.SpecialPropertySection_CpicTraceLevel2Label, Messages.SpecialPropertySection_CpicTraceLevel3Label}); //$NON-NLS-1$
    cpicTraceCombo.setToolTipText(Messages.SpecialPropertySection_CpicTraceToolTip);
    cpicTraceCombo.setLayoutData(LayoutUtil.entryLayoutData(traceBtn));
    cpicTraceCombo.select(0);

    CLabel sysnrLbl2 = getWidgetFactory().createCLabel(specialContainer, Messages.SpecialPropertySection_SysnrLabel, SWT.NONE);
    sysnrLbl2.setLayoutData(LayoutUtil.labelLayoutData(cpicTraceCombo));
    sysnrLbl2.setAlignment(SWT.RIGHT);
   
    lcheckBtn = getWidgetFactory().createButton(specialContainer, Messages.SpecialPropertySection_LcheckLabel, SWT.CHECK);
    lcheckBtn.setToolTipText(Messages.SpecialPropertySection_LcheckToolTip);
    lcheckBtn.setLayoutData(LayoutUtil.entryLayoutData(cpicTraceCombo));
    lcheckBtn.setText(Messages.SpecialPropertySection_LcheckLabel);
   
    codepageText = getWidgetFactory().createText(specialContainer, "", SWT.BORDER); //$NON-NLS-1$
    codepageText.setToolTipText(Messages.SpecialPropertySection_CodepageToolTip);
    codepageText.setLayoutData(LayoutUtil.entryLayoutData(lcheckBtn));
   
    CLabel codepageLbl = getWidgetFactory().createCLabel(specialContainer, Messages.SpecialPropertySection_CodepageLabel, SWT.NONE);
    codepageLbl.setLayoutData(LayoutUtil.labelLayoutData(codepageText));
    codepageLbl.setAlignment(SWT.RIGHT);
   
    getsso2Btn = getWidgetFactory().createButton(specialContainer, Messages.SpecialPropertySection_Getsso2Label, SWT.CHECK);
    getsso2Btn.setToolTipText(Messages.SpecialPropertySection_Getsso2ToolTip);
    getsso2Btn.setLayoutData(LayoutUtil.entryLayoutData(codepageText));
   
    denyInitialPasswordBtn = getWidgetFactory().createButton(specialContainer, Messages.SpecialPropertySection_DenyInitialPasswordLabel, SWT.CHECK);
    denyInitialPasswordBtn.setToolTipText(Messages.SpecialPropertySection_DenyInitialPasswordToolTip);
    denyInitialPasswordBtn.setLayoutData(LayoutUtil.entryLayoutData(codepageText));
   
  }
 
  protected DataBindingContext initDataBindings() {
   
    DataBindingContext bindingContext = super.initDataBindings();
   
    //
    IObservableValue observeSelectionTraceBtnObserveWidget = WidgetProperties.selection().observe(traceBtn);
    IObservableValue managedConnectionFactoryTraceObserveValue = EMFEditProperties.value(editingDomain, FeaturePath.fromList(Literals.DESTINATION_DATA_STORE_ENTRY__VALUE, Literals.DESTINATION_DATA__TRACE)).observe(destinationDataStoreEntry);
    UpdateValueStrategy traceStrategy = new UpdateValueStrategy();
    traceStrategy.setConverter(new Boolean2StringConverter());
    UpdateValueStrategy traceModelStrategy = new UpdateValueStrategy();
    traceModelStrategy.setConverter(new String2BooleanConverter());
    bindingContext.bindValue(observeSelectionTraceBtnObserveWidget, managedConnectionFactoryTraceObserveValue, traceStrategy, traceModelStrategy);
    //
    IObservableValue observeSelectionCpicTraceComboObserveWidget = WidgetProperties.singleSelectionIndex().observe(cpicTraceCombo);
    IObservableValue managedConnectionFactoryCpicTraceObserveValue = EMFEditProperties.value(editingDomain, FeaturePath.fromList(Literals.DESTINATION_DATA_STORE_ENTRY__VALUE, Literals.DESTINATION_DATA__CPIC_TRACE)).observe(destinationDataStoreEntry);
    UpdateValueStrategy strategy_4 = new UpdateValueStrategy();
    strategy_4.setConverter(new CpicTraceComboSelection2TraceLevelConverter());
    UpdateValueStrategy cpicTraceStrategy = new UpdateValueStrategy();
    cpicTraceStrategy.setConverter(new TraceLevel2CpicTraceComboSelectionConverter());
    bindingContext.bindValue(observeSelectionCpicTraceComboObserveWidget, managedConnectionFactoryCpicTraceObserveValue, strategy_4, cpicTraceStrategy);
    //
    IObservableValue observeSelectionLcheckBtnObserveWidget = WidgetProperties.selection().observe(lcheckBtn);
    IObservableValue managedConnectionFactoryLcheckObserveValue = EMFEditProperties.value(editingDomain, FeaturePath.fromList(Literals.DESTINATION_DATA_STORE_ENTRY__VALUE, Literals.DESTINATION_DATA__LCHECK)).observe(destinationDataStoreEntry);
    UpdateValueStrategy strategy_5 = new UpdateValueStrategy();
    strategy_5.setConverter(new Boolean2StringConverter());
    UpdateValueStrategy lcheckModelStrategy = new UpdateValueStrategy();
    lcheckModelStrategy.setConverter(new String2BooleanConverter());
    bindingContext.bindValue(observeSelectionLcheckBtnObserveWidget, managedConnectionFactoryLcheckObserveValue, strategy_5, lcheckModelStrategy);
    //
    IObservableValue observeTextCodepageTextObserveWidget = WidgetProperties.text(SWT.FocusOut).observe(codepageText);
    IObservableValue managedConnectionFactoryCodepageObserveValue = EMFEditProperties.value(editingDomain, FeaturePath.fromList(Literals.DESTINATION_DATA_STORE_ENTRY__VALUE, Literals.DESTINATION_DATA__CODEPAGE)).observe(destinationDataStoreEntry);
    bindingContext.bindValue(observeTextCodepageTextObserveWidget, managedConnectionFactoryCodepageObserveValue, null, null);
    //
    IObservableValue observeSelectionGetsso2BtnObserveWidget = WidgetProperties.selection().observe(getsso2Btn);
    IObservableValue managedConnectionFactoryGetsso2ObserveValue = EMFEditProperties.value(editingDomain, FeaturePath.fromList(Literals.DESTINATION_DATA_STORE_ENTRY__VALUE, Literals.DESTINATION_DATA__GETSSO2)).observe(destinationDataStoreEntry);
    UpdateValueStrategy strategy_6 = new UpdateValueStrategy();
    strategy_6.setConverter(new Boolean2StringConverter());
    UpdateValueStrategy getssoModelStrategy = new UpdateValueStrategy();
    getssoModelStrategy.setConverter(new String2BooleanConverter());
    bindingContext.bindValue(observeSelectionGetsso2BtnObserveWidget, managedConnectionFactoryGetsso2ObserveValue, strategy_6, getssoModelStrategy);
    //
    IObservableValue observeSelectionDenyInitialPasswordBtnObserveWidget = WidgetProperties.selection().observe(denyInitialPasswordBtn);
    IObservableValue managedConnectionFactoryDenyInitialPasswordObserveValue = EMFEditProperties.value(editingDomain, FeaturePath.fromList(Literals.DESTINATION_DATA_STORE_ENTRY__VALUE, Literals.DESTINATION_DATA__DENY_INITIAL_PASSWORD)).observe(destinationDataStoreEntry);
    UpdateValueStrategy strategy_7 = new UpdateValueStrategy();
    strategy_7.setConverter(new Boolean2StringConverter());
    UpdateValueStrategy denyInitialPasswordModelStrategy = new UpdateValueStrategy();
    denyInitialPasswordModelStrategy.setConverter(new String2BooleanConverter());
    bindingContext.bindValue(observeSelectionDenyInitialPasswordBtnObserveWidget, managedConnectionFactoryDenyInitialPasswordObserveValue, strategy_7, denyInitialPasswordModelStrategy);

    return bindingContext;
 
}
TOP

Related Classes of org.fusesource.ide.sap.ui.properties.SpecialPropertySection

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.