if (null == sharedState) {
sharedState = createState();
}
+
+ Root root = getRoot();
+ if (root != null && !root.getConnectorTracker().isDirty(this)) {
+ requestRepaint();
+ }
+
return sharedState;
}
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
addMethodInvocationToQueue(rpcInterfaceName, method, args);
- // TODO no need to do full repaint if only RPC calls
- requestRepaint();
return null;
}
// add to queue
pendingInvocations.add(new ClientMethodInvocation(this, interfaceName,
method, parameters));
+ // TODO no need to do full repaint if only RPC calls
+ requestRepaint();
}
/**
JavaScriptFunction javaScriptCallback) {
callbacks.put(functionName, javaScriptCallback);
JavaScriptConnectorState state = getConnectorState();
- if (state.getCallbackNames().add(functionName)) {
- connector.requestRepaint();
- }
+ state.getCallbackNames().add(functionName);
ensureRpc();
}
connector.addMethodInvocationToQueue(
JavaScriptCallbackRpc.class.getName(), CALL_METHOD,
new Object[] { name, args });
- connector.requestRepaint();
}
public void registerRpc(Class<?> rpcInterfaceType) {
}
rpcInterfaces.put(interfaceName, methodNames);
- connector.requestRepaint();
}
}
public void setStyleName(String style) {
if (style == null || "".equals(style)) {
getState().setStyles(null);
- requestRepaint();
return;
}
if (getState().getStyles() == null) {
styles.add(part);
}
}
- requestRepaint();
}
@Override
List<String> styles = getState().getStyles();
if (!styles.contains(style)) {
styles.add(style);
- requestRepaint();
}
}
getState().getStyles().remove(part);
}
}
- requestRepaint();
}
}
@Override
public void setCaption(String caption) {
getState().setCaption(caption);
- requestRepaint();
}
/*
@Override
public void setIcon(Resource icon) {
getState().setIcon(ResourceReference.create(icon));
- requestRepaint();
}
/*
*/
@Override
public void setEnabled(boolean enabled) {
- if (getState().isEnabled() != enabled) {
- getState().setEnabled(enabled);
- requestRepaint();
- }
+ getState().setEnabled(enabled);
}
/*
*/
public void setImmediate(boolean immediate) {
getState().setImmediate(immediate);
- requestRepaint();
}
/*
}
getState().setVisible(visible);
- requestRepaint();
if (getParent() != null) {
// Must always repaint the parent (at least the hierarchy) when
// visibility of a child component changes.
*/
public void setDescription(String description) {
getState().setDescription(description);
- requestRepaint();
}
/*
@Override
public void setReadOnly(boolean readOnly) {
getState().setReadOnly(readOnly);
- requestRepaint();
}
/*
}
}
- /* Documentation copied from interface */
- @Override
- public void requestRepaint() {
- // Invisible components (by flag in this particular component) do not
- // need repaints
- if (!getState().isVisible()) {
- return;
- }
- super.requestRepaint();
- }
-
/* General event framework */
private static final Method COMPONENT_EVENT_METHOD = ReflectTools
private void setModified(boolean modified) {
getState().setModified(modified);
- requestRepaint();
}
/**
@Override
public void readOnlyStatusChange(Property.ReadOnlyStatusChangeEvent event) {
getState().setPropertyReadOnly(event.getProperty().isReadOnly());
- requestRepaint();
}
/**
@Override
public void setTabIndex(int tabIndex) {
getState().setTabIndex(tabIndex);
- requestRepaint();
}
/**
@Override
public void setRequired(boolean required) {
getState().setRequired(required);
- requestRepaint();
}
/**
if (source != null) {
getState().getSources().add(new ResourceReference(source));
getState().getSourceTypes().add(source.getMIMEType());
- requestRepaint();
}
}
*/
public void setShowControls(boolean showControls) {
getState().setShowControls(showControls);
- requestRepaint();
}
/**
*/
public void setAltText(String altText) {
getState().setAltText(altText);
- requestRepaint();
}
/**
*/
public void setHtmlContentAllowed(boolean htmlContentAllowed) {
getState().setHtmlContentAllowed(htmlContentAllowed);
- requestRepaint();
}
/**
*/
public void setAutoplay(boolean autoplay) {
getState().setAutoplay(autoplay);
- requestRepaint();
}
/**
*/
public void setMuted(boolean muted) {
getState().setMuted(muted);
- requestRepaint();
}
/**
private void componentRemoved(Component c) {
getState().getChildData().remove(c);
- requestRepaint();
}
private void componentAdded(Component c) {
getState().getChildData().put(c, new ChildComponentData());
- requestRepaint();
-
}
/**
if (childData != null) {
// Alignments are bit masks
childData.setAlignmentBitmask(alignment.getBitMask());
- requestRepaint();
} else {
throw new IllegalArgumentException(
"Component must be added to layout before using setComponentAlignment()");
@Override
public void setSpacing(boolean spacing) {
getState().setSpacing(spacing);
- requestRepaint();
}
/*
}
childData.setExpandRatio(ratio);
- requestRepaint();
- };
+ }
/**
* Returns the expand ratio of given component.
@Override
public void setMargin(MarginInfo marginInfo) {
getState().setMarginsBitmask(marginInfo.getBitMask());
- requestRepaint();
}
}
*/
public void setMaxLength(int maxLength) {
getState().setMaxLength(maxLength);
- requestRepaint();
}
/**
columns = 0;
}
getState().setColumns(columns);
- requestRepaint();
}
/**
*/
public void setInputPrompt(String inputPrompt) {
getState().setInputPrompt(inputPrompt);
- requestRepaint();
}
/* ** Text Change Events ** */
*/
public void setDisableOnClick(boolean disableOnClick) {
getState().setDisableOnClick(disableOnClick);
- requestRepaint();
}
/*
@Override
public void setTabIndex(int tabIndex) {
getState().setTabIndex(tabIndex);
- requestRepaint();
}
@Override
* <code>false</code> otherwise
*/
public void setHtmlContentAllowed(boolean htmlContentAllowed) {
- if (getState().isHtmlContentAllowed() != htmlContentAllowed) {
- getState().setHtmlContentAllowed(htmlContentAllowed);
- requestRepaint();
- }
+ getState().setHtmlContentAllowed(htmlContentAllowed);
}
/**
diffStates.put(connector, diffState);
}
+ public boolean isDirty(ClientConnector connector) {
+ return dirtyConnectors.contains(connector);
+ }
+
}
getState().getChildLocations().put(c, location);
c.setParent(this);
fireComponentAttachEvent(c);
- requestRepaint();
}
/**
slots.values().remove(c);
getState().getChildLocations().remove(c);
super.removeComponent(c);
- requestRepaint();
}
/**
slots.put(oldLocation, newComponent);
getState().getChildLocations().put(newComponent, oldLocation);
getState().getChildLocations().put(oldComponent, newLocation);
- requestRepaint();
}
}
public void setTemplateName(String templateName) {
getState().setTemplateName(templateName);
getState().setTemplateContents(null);
- requestRepaint();
}
/**
public void setTemplateContents(String templateContents) {
getState().setTemplateContents(templateContents);
getState().setTemplateName(null);
- requestRepaint();
}
@Override
// Replace the previous layout
layout.setParent(this);
getState().setLayout(layout);
-
- // Hierarchy has changed so we need to repaint (this could be a
- // hierarchy repaint only)
- requestRepaint();
}
/**
getState().setFooter(footer);
footer.setParent(this);
-
- // Hierarchy has changed so we need to repaint (this could be a
- // hierarchy repaint only)
- requestRepaint();
-
}
@Override
}
getState().setColumns(columns);
-
- requestRepaint();
}
/**
}
getState().setRows(rows);
-
- requestRepaint();
}
/**
@Override
public void setSpacing(boolean spacing) {
getState().setSpacing(spacing);
- requestRepaint();
}
/*
@Override
public void setMargin(MarginInfo marginInfo) {
getState().setMarginsBitmask(marginInfo.getBitMask());
- requestRepaint();
}
/*
*/
public void addFunction(String name, JavaScriptFunction function) {
functions.put(name, function);
- if (getState().getNames().add(name)) {
- requestRepaint();
- }
+ getState().getNames().add(name);
}
/**
*/
public void removeFunction(String name) {
functions.remove(name);
- if (getState().getNames().remove(name)) {
- requestRepaint();
- }
+ getState().getNames().remove(name);
}
/**
}
if (getPropertyDataSource() == null) {
getState().text = (String) newStringValue;
- requestRepaint();
} else {
throw new IllegalStateException(
"Label is only a Property.Viewer and cannot update its data source");
}
getState().contentMode = contentMode;
- requestRepaint();
}
/* Value change events */
public void valueChange(Property.ValueChangeEvent event) {
// Update the internal value from the data source
getState().text = getValue();
- requestRepaint();
fireValueChange();
}
"Scroll offset must be at least 0");
}
getState().setScrollLeft(scrollLeft);
- requestRepaint();
}
/*
"Scroll offset must be at least 0");
}
getState().setScrollTop(scrollTop);
- requestRepaint();
}
/* Documented in superclass */
@Override
public void setTabIndex(int tabIndex) {
getState().setTabIndex(tabIndex);
- requestRepaint();
}
/**
if (content != null) {
super.addComponent(content);
}
-
- requestRepaint();
}
/**
rows = 0;
}
getState().setRows(rows);
- requestRepaint();
}
/**
*/
public void setWordwrap(boolean wordwrap) {
getState().setWordwrap(wordwrap);
- requestRepaint();
}
/**
*/
public void setPoster(Resource poster) {
getState().setPoster(ResourceReference.create(poster));
- requestRepaint();
}
/**
final int x = positionx.intValue();
// This is information from the client so it is already using the
// position. No need to repaint.
- setPositionX(x < 0 ? -1 : x, false);
+ setPositionX(x < 0 ? -1 : x);
}
final Integer positiony = (Integer) variables.get("positiony");
if (positiony != null) {
final int y = positiony.intValue();
// This is information from the client so it is already using the
// position. No need to repaint.
- setPositionY(y < 0 ? -1 : y, false);
+ setPositionY(y < 0 ? -1 : y);
}
if (isClosable()) {
* @since 4.0.0
*/
public void setPositionX(int positionX) {
- setPositionX(positionX, true);
- }
-
- /**
- * Sets the distance of Window left border in pixels from left border of the
- * containing (main window).
- *
- * @param positionX
- * the Distance of Window left border in pixels from left border
- * of the containing (main window). or -1 if unspecified.
- * @param repaintRequired
- * true if the window needs to be repainted, false otherwise
- * @since 6.3.4
- */
- private void setPositionX(int positionX, boolean repaintRequired) {
getState().setPositionX(positionX);
getState().setCentered(false);
- if (repaintRequired) {
- requestRepaint();
- }
}
/**
* @since 4.0.0
*/
public void setPositionY(int positionY) {
- setPositionY(positionY, true);
- }
-
- /**
- * Sets the distance of Window top border in pixels from top border of the
- * containing (main window).
- *
- * @param positionY
- * the Distance of Window top border in pixels from top border of
- * the containing (main window). or -1 if unspecified
- * @param repaintRequired
- * true if the window needs to be repainted, false otherwise
- *
- * @since 6.3.4
- */
- private void setPositionY(int positionY, boolean repaintRequired) {
getState().setPositionY(positionY);
getState().setCentered(false);
- if (repaintRequired) {
- requestRepaint();
- }
}
private static final Method WINDOW_CLOSE_METHOD;
public void setModal(boolean modal) {
getState().setModal(modal);
center();
- requestRepaint();
}
/**
*/
public void setResizable(boolean resizable) {
getState().setResizable(resizable);
- requestRepaint();
}
/**
*/
public void setResizeLazy(boolean resizeLazy) {
getState().setResizeLazy(resizeLazy);
- requestRepaint();
}
/**
*/
public void center() {
getState().setCentered(true);
- requestRepaint();
}
/**
*/
public void setDraggable(boolean draggable) {
getState().setDraggable(draggable);
- requestRepaint();
}
/*