Author: dazarov
Date: 2008-08-14 08:59:16 -0400 (Thu, 14 Aug 2008)
New Revision: 9723
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui.pages/src/org/jboss/tools/seam/ui/pages/editor/edit/LinkEditPart.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-2612
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui.pages/src/org/jboss/tools/seam/ui/pages/editor/edit/LinkEditPart.java
===================================================================
---
trunk/seam/plugins/org.jboss.tools.seam.ui.pages/src/org/jboss/tools/seam/ui/pages/editor/edit/LinkEditPart.java 2008-08-14
12:20:41 UTC (rev 9722)
+++
trunk/seam/plugins/org.jboss.tools.seam.ui.pages/src/org/jboss/tools/seam/ui/pages/editor/edit/LinkEditPart.java 2008-08-14
12:59:16 UTC (rev 9723)
@@ -33,6 +33,7 @@
import org.jboss.tools.common.gef.figures.xpl.CustomLocator;
import org.jboss.tools.seam.ui.pages.editor.PagesEditor;
import org.jboss.tools.seam.ui.pages.editor.ecore.pages.Link;
+import org.jboss.tools.seam.ui.pages.editor.ecore.pages.Page;
import org.jboss.tools.seam.ui.pages.editor.figures.ConnectionFigure;
import org.jboss.tools.seam.ui.pages.editor.figures.FigureFactory;
@@ -52,6 +53,8 @@
private CustomLocator pathLocator;
private GEFLabel pathLabel;
+
+ private PageEditPart pagePart = null;
public void activate() {
if (!isActive()) {
@@ -59,6 +62,16 @@
}
super.activate();
addEditPartListener(this);
+ Page page=null;
+ if(getLinkModel().getFromElement() instanceof Page)
+ page = (Page)getLinkModel().getFromElement();
+ if(page != null){
+ //pagePart = (PageEditPart)getViewer().getEditPartRegistry().get(page);
+ if(pagePart != null){
+ getLinkFigure().setVisible(false);
+ pagePart.addEditPartListener(this);
+ }
+ }
}
public void activateFigure() {
@@ -138,6 +151,8 @@
}
public void deactivate() {
+ if(pagePart != null)
+ pagePart.removeEditPartListener(this);
removeEditPartListener(this);
//getLink().removePropertyChangeListener(this);
if (isActive()) {
@@ -235,9 +250,14 @@
}
public void selectedStateChanged(EditPart editpart) {
- if (this.getSelected() == EditPart.SELECTED_PRIMARY) {
+ if(editpart == pagePart){
+ if(pagePart.getSelected() == EditPart.SELECTED_PRIMARY){
+ getFigure().setVisible(true);
+ }else
+ getFigure().setVisible(false);
+ }
+ if (editpart == this && this.getSelected() == EditPart.SELECTED_PRIMARY) {
((GEFRootEditPart) getParent()).setToFront(this);
-
}
}