diff options
Diffstat (limited to 'plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java')
-rw-r--r-- | plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java index e647440eac5..bdef0bf915e 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java @@ -59,6 +59,7 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Listener; +import org.eclipse.swt.widgets.TreeItem; import org.eclipse.ui.IActionBars; import org.eclipse.ui.IMemento; import org.eclipse.ui.IViewSite; @@ -306,4 +307,30 @@ public class NavigateView extends ViewPart implements IXNavigateEventListener { } } + public XNavigateItem getItem(long topLinkId, boolean recurseChildren) { + for (TreeItem treeItem : xNavComp.getFilteredTree().getViewer().getTree().getItems()) { + XNavigateItem treeNavItem = (XNavigateItem) treeItem.getData(); + XNavigateItem foundItem = getItem(treeNavItem, topLinkId, recurseChildren); + if (foundItem != null) { + return foundItem; + } + } + return null; + } + + public XNavigateItem getItem(XNavigateItem item, long topLinkId, boolean recurseChildren) { + if (item.getId() == topLinkId) { + return item; + } + if (recurseChildren) { + for (XNavigateItem child : item.getChildren()) { + XNavigateItem found = getItem(child, topLinkId, recurseChildren); + if (found != null) { + return found; + } + } + } + return null; + } + }
\ No newline at end of file |