Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/parts/DocumentEditPart.java')
-rw-r--r--jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/parts/DocumentEditPart.java46
1 files changed, 41 insertions, 5 deletions
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/parts/DocumentEditPart.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/parts/DocumentEditPart.java
index 71a42143d..92c9bb9f4 100644
--- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/parts/DocumentEditPart.java
+++ b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/parts/DocumentEditPart.java
@@ -81,6 +81,25 @@ public class DocumentEditPart extends NodeEditPart implements StyleListener,
refresh();
}
+ /**
+ * @param recursive
+ */
+ public void refresh(final boolean recursive)
+ {
+ if (!recursive)
+ {
+ refresh();
+ }
+ else
+ {
+ refreshVisuals();
+ refreshChildren(recursive);
+ refreshSourceConnections();
+ refreshTargetConnections();
+
+ }
+ }
+
/*
* (non-Javadoc)
*
@@ -104,13 +123,30 @@ public class DocumentEditPart extends NodeEditPart implements StyleListener,
* @see org.eclipse.gef.editparts.AbstractEditPart#refreshChildren()
*/
protected void refreshChildren() {
- super.refreshChildren();
- List children1 = getChildren();
- for (int i = 0, size = children1.size(); i < size; i++) {
- ((EditPart) children1.get(i)).refresh();
- }
+ refreshChildren(false);
}
+ /**
+ * @param recursive
+ */
+ protected void refreshChildren(final boolean recursive)
+ {
+ super.refreshChildren();
+ List children1 = getChildren();
+ for (int i = 0, size = children1.size(); i < size; i++)
+ {
+ final EditPart editPart = (EditPart) children1.get(i);
+ if (editPart instanceof ElementEditPart)
+ {
+ ((ElementEditPart)editPart).refresh(recursive);
+ }
+ else
+ {
+ editPart.refresh();
+ }
+ }
+ }
+
// protected void removeChildVisual(EditPart childEditPart)
// {
// if (childEditPart instanceof SubNodeEditPart)

Back to the top