All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.gwt.editor.client.Editor Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2010 Google Inc.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */
package com.google.gwt.editor.client;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Describes an editor whose behavior is not altered by the value being
 * displayed.
 * 

* Editors, which may be classes or interfaces, may expose their sub-editors in * one or more of the following ways: *

    *
  • An instance field with at least package visibility whose name exactly is * the property that will be edited or propertyNameEditor. *
  • *
  • A no-arg method with at least package visibility whose name exactly is * the property that will be edited or propertyNameEditor. *
  • *
  • The {@link Path} annotation may be used on the field or accessor method * to specify a dotted path or to bypass the implicit naming convention.
  • *
  • Sub-Editors may be null. In this case, the Editor framework will ignore * these sub-editors.
  • *
* Any exposed field or method whose type is Editor may also use the * {@link IsEditor} interface to provide an Editor instance. This allows view * objects to be written that can be attached to an Editor hierarchy without the * view directly implementing an Editor interface. * * @param the type of object the editor displays. */ public interface Editor { /** * Tells the Editor framework to ignore an Editor accessor. */ @Documented @Retention(RetentionPolicy.RUNTIME) @Target(value = {ElementType.FIELD, ElementType.METHOD}) public @interface Ignore { } /** * Maps a composite Editor's component Editors into the data-model. */ @Documented @Retention(RetentionPolicy.RUNTIME) @Target(value = {ElementType.FIELD, ElementType.METHOD}) public @interface Path { String value(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy