blob: 7c871e3c256cf8af623a41f76ad1647ab1b25ce1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
/*
* Copyright 2000-2013 Vaadin Ltd.
*
* 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.vaadin.ui;
/**
* Interface implemented by {@link HasComponents} implementors that wish to
* dynamically be able to prevent given child components from reaching the
* client side.
*
* @author Vaadin Ltd
* @version @VERSION@
* @since 7.0
*
*/
public interface SelectiveRenderer extends HasComponents {
/**
* Checks if the child component should be rendered (sent to the client
* side). This method allows hiding a child component from updates and
* communication to and from the client. It is mostly useful for parents
* which show only a limited number of their children at any given time and
* want to allow updates only for the visible children (e.g. TabSheet has
* one tab open at a time).
* <p>
* This method can only prevent updates from reaching the client, not force
* child components to reach the client. If the child is set to visible,
* returning false will prevent the child from being sent to the client. If
* a child is set to invisible, this method has no effect.
* </p>
*
* @param childComponent
* The child component to check
* @return true if the child component may be sent to the client, false
* otherwise
*/
public boolean isRendered(Component childComponent);
}
|