static

in application/org.openjdk.jmc.rjmx.ui/src/main/java/org/openjdk/jmc/rjmx/ui/celleditors/CellEditorStore.java [58:169]


	static {
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				return new TogglingCellEditor(parent, new Object[] {null, true, false});
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return Boolean.class.isAssignableFrom(forType);
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				return new TogglingCellEditor(parent, new Object[] {true, false});
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return boolean.class.isAssignableFrom(forType);
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				return new NullableTextCellEditor(parent);
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return String.class.isAssignableFrom(forType);
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				Class<? extends Number> klass = TypeHandling.toNonPrimitiveClass(forType).asSubclass(Number.class);
				return new NumberCellEditor<Number>(parent, klass, !forType.isPrimitive(), true);
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				Class<?> klass = TypeHandling.toNonPrimitiveClass(forType);
				return Number.class.isAssignableFrom(klass) && StringConstructorCellEditor.checkContructor(klass);
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				return new CharacterEditor(parent, !forType.isPrimitive());
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return TypeHandling.toNonPrimitiveClass(forType) == Character.class;
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) throws Exception {
				return new DateCellEditor(parent);
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return Date.class.isAssignableFrom(forType);
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				return new StringConstructorCellEditor<Object>(parent, forType);
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return StringConstructorCellEditor.checkContructor(forType);
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) {
				return new ArrayLengthCellEditor(parent, forType);
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return forType.isArray();
			}
		});
		FACTORIES.add(new CellEditorFactory() {

			@Override
			public CellEditor createCellEditor(Composite parent, Class<?> forType) throws Exception {
				return new UpdateIntervalCellEditor(parent);
			}

			@Override
			public boolean editorFor(Class<?> forType) {
				return IUpdateInterval.class.isAssignableFrom(forType);
			}
		});
	}