From f9e4773ea3d68a0ed665430f6fa1ae8cd8f579ee Mon Sep 17 00:00:00 2001 From: Matti Tahvonen Date: Wed, 9 Apr 2008 08:33:01 +0000 Subject: [PATCH] fixes #1555 svn changeset:4150/svn branch:trunk --- .../itmill/toolkit/terminal/PaintTarget.java | 18 ++++++++++++++++++ .../terminal/gwt/server/JsonPaintTarget.java | 6 ++++++ 2 files changed, 24 insertions(+) diff --git a/src/com/itmill/toolkit/terminal/PaintTarget.java b/src/com/itmill/toolkit/terminal/PaintTarget.java index f2a29401ad..a62407473d 100644 --- a/src/com/itmill/toolkit/terminal/PaintTarget.java +++ b/src/com/itmill/toolkit/terminal/PaintTarget.java @@ -55,6 +55,24 @@ public interface PaintTarget { public boolean startTag(Paintable paintable, String tag) throws PaintException; + /** + * Paints a component reference as an attribute to current tag. This method + * is meant to enable component interactions on client side. With reference + * the client side component can communicate directly to other component. + * + * Note! This is still an experimental feature and API is likely to change + * in future. + * + * @param paintable + * the Paintable to reference + * @param referenceName + * @throws PaintException + * + * @since 5.2 + */ + public void paintReference(Paintable paintable, String referenceName) + throws PaintException; + /** * Prints element start tag. * diff --git a/src/com/itmill/toolkit/terminal/gwt/server/JsonPaintTarget.java b/src/com/itmill/toolkit/terminal/gwt/server/JsonPaintTarget.java index 867f8d9907..67f0f5df03 100644 --- a/src/com/itmill/toolkit/terminal/gwt/server/JsonPaintTarget.java +++ b/src/com/itmill/toolkit/terminal/gwt/server/JsonPaintTarget.java @@ -783,6 +783,12 @@ public class JsonPaintTarget implements PaintTarget { return cacheEnabled && isPreviouslyPainted; } + public void paintReference(Paintable paintable, String referenceName) + throws PaintException { + final String id = manager.getPaintableId(paintable); + addAttribute(referenceName, id); + } + /** * @see com.itmill.toolkit.terminal.PaintTarget#addCharacterData(java.lang.String) */ -- 2.39.5