Package org.eclipse.e4.xwt.javabean

Examples of org.eclipse.e4.xwt.javabean.ValueConvertorRegister


      return ObjectToObject.instance;
    }
    if (String.class == source && target.isEnum()) {
      return new StringToEnum(target);
    }
    ValueConvertorRegister convertorRegister = (ValueConvertorRegister)
        getService(ValueConvertorRegister.class);
    if (convertorRegister == null) {
      return null;
    }
    return convertorRegister.findConverter(source, target);
  }
View Full Code Here


   * .conversion.IConverter)
   */
  public void registerConvertor(IConverter converter) {
    Class<?> source = (Class<?>) converter.getFromType();
    Class<?> target = (Class<?>) converter.getToType();
    ValueConvertorRegister convertorRegister = (ValueConvertorRegister)
        getService(ValueConvertorRegister.class);
    convertorRegister.register(source, target, converter);
  }
View Full Code Here

    cores = new Stack<Core>();
    Core core = new Core(new ResourceLoaderFactory(), this);
    cores.push(core);

    core.registerService(ValueConvertorRegister.class,
        new ValueConvertorRegister());

    core.registerMetaclassManager(IConstants.XWT_NAMESPACE,
        new MetaclassManager(null, null, this));
    core.registerMetaclass(new BindingMetaclass(this),
        IConstants.XWT_NAMESPACE);
    core.registerMetaclass(new BindingMetaclass(MultiBinding.class, this),
        IConstants.XWT_NAMESPACE);
    core.registerMetaclass(new TableEditorMetaclass(core.getMetaclass(
        ControlEditor.class, IConstants.XWT_NAMESPACE), this),
        IConstants.XWT_NAMESPACE);

    registerConvertor(ObjectToString.instance);
    registerConvertor(DateToString.instance);
    registerConvertor(EnumToString.instance);
    registerConvertor(StringToInteger.instance);
    // It is not supported by eclipse 3.4.1
    registerConvertor(StringToNumberConverter.class, "toBigDecimal");
    registerConvertor(StringToNumberConverter.class, "toByte", false);

    registerConvertor(StringToNumberConverter.toLong(false));

    // It is not supported by eclipse 3.4.1
    registerConvertor(StringToNumberConverter.class, "toShort", false);

    registerConvertor(StringToNumberConverter.toFloat(false));
    registerConvertor(StringToNumberConverter.toDouble(false));

    registerConvertor(NumberToStringConverter.fromInteger(false));

    // It is not supported by eclipse 3.4.1
    registerConvertor(NumberToStringConverter.class, "fromBigDecimal");
    registerConvertor(NumberToStringConverter.class, "fromByte", false);

    registerConvertor(NumberToStringConverter.fromLong(false));

    // It is not supported by eclipse 3.4.1
    registerConvertor(NumberToStringConverter.class, "fromShort", false);

    registerConvertor(NumberToStringConverter.fromFloat(false));
    registerConvertor(NumberToStringConverter.fromDouble(false));

    registerConvertor(StringToBoolean.instance);
    registerConvertor(ObjectToBoolean.instance);
    registerConvertor(SelectionToBoolean.instance);
    registerConvertor(CollectionToBoolean.instance);
    registerConvertor(CollectionToInteger.instance);
    registerConvertor(StringToIntArray.instance);
    registerConvertor(BindingToObject.instance);
    registerConvertor(StringToColor.instance);
    registerConvertor(StringToFont.instance);
    registerConvertor(StringToImage.instance);
    registerConvertor(StringToPoint.instance);
    registerConvertor(StringToRectangle.instance);
    registerConvertor(StringToURL.instance);
    registerConvertor(StringToType.instance);
    registerConvertor(StringToFormAttachment.instance);
    registerConvertor(StringToIValidationRule.instance);
    registerConvertor(StringToIValueConverter.instance);
    registerConvertor(ListToIObservableCollection.instance);
    registerConvertor(SetToIObservableCollection.instance);
    registerConvertor(ObjectToISelection.instance);
    registerConvertor(ListToSet.instance);

    registerConvertor(IStatusToString.instance);
    registerConvertor(IStatusToBoolean.instance);

    ValueConvertorRegister convertorRegister = (ValueConvertorRegister) core
        .getService(ValueConvertorRegister.class);
    convertorRegister.register(String.class, float.class,
        StringToNumberConverter.toFloat(true));
    convertorRegister.register(String.class, int.class,
        StringToInteger.instance);

    // It is not supported by eclipse 3.4.1
    // convertorRegister.register(String.class, short.class,
    // StringToNumberConverter.toShort(true));
    registerConvertor(convertorRegister, String.class, short.class,
        StringToNumberConverter.class, "toShort", true);

    convertorRegister.register(String.class, long.class,
        StringToNumberConverter.toLong(true));

    // It is not supported by eclipse 3.4.1
    // convertorRegister.register(String.class, byte.class,
    // StringToNumberConverter.toByte(true));
    registerConvertor(convertorRegister, String.class, byte.class,
        StringToNumberConverter.class, "toByte", true);

    convertorRegister.register(String.class, boolean.class,
        StringToBoolean.instance);
    convertorRegister.register(String.class, double.class,
        StringToNumberConverter.toDouble(true));

    convertorRegister.register(float.class, String.class,
        NumberToStringConverter.fromFloat(true));
    convertorRegister.register(int.class, String.class,
        NumberToStringConverter.fromInteger(true));

    // It is not supported by eclipse 3.4.1
    // convertorRegister.register(short.class, String.class,
    // NumberToStringConverter.fromShort(true));
    registerConvertor(convertorRegister, short.class, String.class,
        NumberToStringConverter.class, "fromShort", true);

    convertorRegister.register(long.class, String.class,
        NumberToStringConverter.fromLong(true));

    // It is not supported by eclipse 3.4.1
    // convertorRegister.register(byte.class, String.class,
    // NumberToStringConverter.fromByte(true));
    registerConvertor(convertorRegister, byte.class, String.class,
        NumberToStringConverter.class, "fromByte", true);

    convertorRegister.register(double.class, String.class,
        NumberToStringConverter.fromDouble(true));

    Class<?> type = org.eclipse.swt.browser.Browser.class;
    IMetaclass browserMetaclass = (IMetaclass) registerMetaclass(type);
    browserMetaclass.addProperty(new DynamicProperty(type, String.class,
View Full Code Here

      if (factory != null) {
        return factory.create(javaClass, superMetaclass, xwtLoader);
      }
    }
    boolean lazyLoading = false; // TODO Get value from preference
    return new Metaclass(javaClass, superMetaclass, lazyLoading, xwtLoader);
  }
View Full Code Here

          ObservableTreeContentProvider xwtContentProvider = (ObservableTreeContentProvider) contentProvider;
          xwtContentProvider.updateContext(viewer, value);
        }
        if (contentProvider instanceof ObservableTreeContentProvider) {
          ObservableTreeContentProvider listContentProvider = (ObservableTreeContentProvider) contentProvider;
          viewer.setLabelProvider(new ObservableMapLabelProvider(
              viewer, listContentProvider.getKnownElements(),
              propertyNames));
        }
      }
      else {
        IContentProvider contentProvider = viewer.getContentProvider();
        if (value instanceof List<?> || value.getClass().isArray()) {
          if (contentProvider == null) {
            contentProvider = new ObservableListContentProvider();
            viewer.setContentProvider(contentProvider);
          }
          if (propertyNames != null && propertyNames.length > 0 && hasDefaultLabelProvider(viewer)
              && contentProvider instanceof ObservableListContentProvider) {
            ObservableListContentProvider listContentProvider = (ObservableListContentProvider) contentProvider;
            viewer.setLabelProvider(new ObservableMapLabelProvider(
                viewer, listContentProvider.getKnownElements(),
                propertyNames));
          }
        } else if (value instanceof Set<?>) {
          if (contentProvider == null) {
            contentProvider = new ObservableSetContentProvider();
            viewer.setContentProvider(contentProvider);
          }
          if (propertyNames != null && propertyNames.length > 0 && hasDefaultLabelProvider(viewer)
              && contentProvider instanceof ObservableSetContentProvider) {
            ObservableSetContentProvider setContentProvider = (ObservableSetContentProvider) contentProvider;
            viewer.setLabelProvider(new ObservableMapLabelProvider(
                viewer, setContentProvider.getKnownElements(), propertyNames));
          }
        }
      }
    }
View Full Code Here

      String[] propertyNames = JFacesHelper.getViewerProperties(viewer);
      if (target instanceof AbstractTreeViewer) {
        IContentProvider contentProvider = (IContentProvider) viewer.getContentProvider();
        if (contentProvider instanceof ObservableTreeContentProvider) {
          ObservableTreeContentProvider xwtContentProvider = (ObservableTreeContentProvider) contentProvider;
          xwtContentProvider.updateContext(viewer, value);
        }
        if (contentProvider instanceof ObservableTreeContentProvider) {
          ObservableTreeContentProvider listContentProvider = (ObservableTreeContentProvider) contentProvider;
          viewer.setLabelProvider(new ObservableMapLabelProvider(
              viewer, listContentProvider.getKnownElements(),
              propertyNames));
        }
      }
      else {
        IContentProvider contentProvider = viewer.getContentProvider();
        if (value instanceof List<?> || value.getClass().isArray()) {
          if (contentProvider == null) {
            contentProvider = new ObservableListContentProvider();
            viewer.setContentProvider(contentProvider);
          }
          if (propertyNames != null && propertyNames.length > 0 && hasDefaultLabelProvider(viewer)
              && contentProvider instanceof ObservableListContentProvider) {
            ObservableListContentProvider listContentProvider = (ObservableListContentProvider) contentProvider;
            viewer.setLabelProvider(new ObservableMapLabelProvider(
                viewer, listContentProvider.getKnownElements(),
                propertyNames));
          }
        } else if (value instanceof Set<?>) {
          if (contentProvider == null) {
            contentProvider = new ObservableSetContentProvider();
View Full Code Here

            propertyName, updateSourceTrigger, observeKind);
      }

      if (observable == null
          && dataProvider instanceof IObjectDataProvider) {
        IMetaclass mateclass = XWT.getMetaclass(type);
        IProperty property = mateclass.findProperty(propertyName);
        if (property instanceof EventProperty) {
          observable = new EventPropertyObservableValue(object,
              (EventProperty) property);
        }
      }
View Full Code Here

  public IMetaclass register(Class<?> javaClass) {
    return register(javaClass, null);
  }

  public IMetaclass register(Class<?> javaClass, IMetaclass superMetaclass) {
    IMetaclass metaclass = getMetaclass(javaClass);
    if (metaclass != null) {
      return metaclass;
    }
    if (superMetaclass == null) {
      Class<?> superclass = javaClass.getSuperclass();
      if (superclass != null && superclass != Object.class) {
        register(superclass, null);
      }
      superMetaclass = getMetaclass(superclass);
    }
    IMetaclass thisMetaclass = createMetaclass(javaClass, superMetaclass);
    register(thisMetaclass);
    return thisMetaclass;
  }
View Full Code Here

    return new Metaclass(javaClass, superMetaclass, lazyLoading, xwtLoader);
  }

  public IMetaclass getMetaclass(ILoadingContext context, String name,
      String namespace) {
    IMetaclass metaclass = nameRegister.get(name);
    if (metaclass != null) {
      if (namespace == null || namespace.equals(IConstants.XWT_NAMESPACE)) {
        return metaclass;
      }
      if (namespace != null
          && namespace
              .startsWith(IConstants.XAML_CLR_NAMESPACE_PROTO)) {
        String packageName = namespace
            .substring(IConstants.XAML_CLR_NAMESPACE_PROTO.length());
        int index = packageName.indexOf('=');
        if (index != -1) {
          packageName = packageName.substring(0, index);
        }
        // if using default package(null), use only name as class name,
        // else use package.class as class name
        String className = packageName.length() == 0 ? name
            : (packageName + "." + name);
        if (metaclass.getType().getName().equals(className)) {
          return metaclass;
        }
      }
    }
    if (namespace == null
View Full Code Here

    return getMetaclass(type);
  }

  public IMetaclass getMetaclass(Class<?> type) {
    if (classRegister.contains(type)) {
      IMetaclass metaclass = nameRegister.get(type.getSimpleName());
      if (metaclass != null && metaclass.getType() == type) {
        return metaclass;
      }
    }
    if (parent != null) {
      IMetaclass metaclass = parent.getMetaclass(type);
      if (metaclass != null) {
        return metaclass;
      }
    }
    return null;
View Full Code Here

TOP

Related Classes of org.eclipse.e4.xwt.javabean.ValueConvertorRegister

Copyright © 2018 www.massapicom. 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.