You're viewing an older version of Vaadin JavaDoc. Please see version 24.7.0 for the latest.
com.vaadin.flow.data.renderer.

Class Renderer<SOURCE>

    • Constructor Detail

      • Renderer

        protected Renderer()

        Default constructor.

      • Renderer

        @Deprecated
        protected Renderer​(String template)
        Deprecated.
        since Vaadin 22

        Builds a renderer with the specified template.

        Parameters:

        template - the template used by the renderer

    • Method Detail

      • setProperty

        @Deprecated
        protected void setProperty​(String property,
                                   ValueProvider<SOURCE,​?> provider)
        Deprecated.
        since Vaadin 22

        Sets a property to be used inside the template. Each property is referenced inside the template by using the [[item.property]] syntax.

        Examples:

         
         // Regular property
         TemplateRenderer.<Person> of("<div>Name: [[item.name]]</div>")
                  .withProperty("name", Person::getName);
        
         // Property that uses a bean. Note that in this case the entire "Address" object will be sent to the template.
         // Note that even properties of the bean which are not used in the template are sent to the client, so use
         // this feature with caution.
         TemplateRenderer.<Person> of("<span>Street: [[item.address.street]]</span>")
                  .withProperty("address", Person::getAddress);
        
         // In this case only the street field inside the Address object is sent
         TemplateRenderer.<Person> of("<span>Street: [[item.street]]</span>")
                  .withProperty("street", person -> person.getAddress().getStreet());
         
         
        Any types supported by the JsonSerializer are valid types for the Renderer.

        Parameters:

        property - the name of the property used inside the template, not null

        provider - a ValueProvider that provides the actual value for the property, not null

      • setEventHandler

        @Deprecated
        protected void setEventHandler​(String handlerName,
                                       SerializableConsumer<SOURCE> handler)
        Deprecated.
        since Vaadin 22

        Sets an event handler for events from elements inside the template. Each event is referenced inside the template by using the on-event syntax.

        Examples:

         
         // Standard event
         TemplateRenderer.of("<button on-click='handleClick'>Click me</button>")
                  .withEventHandler("handleClick", object -> doSomething());
        
         // You can handle custom events from webcomponents as well, using the same syntax
         TemplateRenderer.of("<my-webcomponent on-customevent=
            'onCustomEvent'></my-webcomponent>")
                  .withEventHandler("onCustomEvent", object -> doSomething());
         
         
        The name of the function used on the on-event attribute should be the name used at the handlerName parameter. This name must be a valid Javascript function name.

        Parameters:

        handlerName - the name of the handler used inside the on-event="handlerName", not null

        handler - the handler executed when the event is triggered, not null

        See Also:

        https://www.polymer-project.org/2.0/docs/devguide/events

      • render

        public Rendering<SOURCE> render​(Element container,
                                        DataKeyMapper<SOURCE> keyMapper)

        Handles the rendering of the model objects by creating a new <template> element in the given container.

        Parameters:

        container - the element in which the template will be attached to

        keyMapper - mapper used internally to fetch items by key and to provide keys for given items. It is required when either event handlers or DataGenerator are supported

        Returns:

        the context of the rendering, that can be used by the components to provide extra customization

      • render

        @Deprecated
        public Rendering<SOURCE> render​(Element container,
                                        DataKeyMapper<SOURCE> keyMapper,
                                        Element contentTemplate)
        Deprecated.
        since Vaadin 22

        Handles the rendering of the model objects by using the given <template> element in the given container.

        Subclasses of Renderer usually override this method to provide additional features.

        Parameters:

        container - the element in which the template will be attached to, not null

        keyMapper - mapper used internally to fetch items by key and to provide keys for given items. It is required when either event handlers or DataGenerator are supported

        contentTemplate - the <template> element to be used for rendering in the container, not null

        Returns:

        the context of the rendering, that can be used by the components to provide extra customization

      • getValueProviders

        @Deprecated
        public Map<String,​ValueProvider<SOURCE,​?>> getValueProviders()
        Deprecated.
        since Vaadin 23.1

        Gets the property mapped to ValueProviders in this renderer. The returned map is immutable.

        Returns:

        the mapped properties, never null