/** * As long as no windows have openned or closed, then the indexes in the returned list should * still be valid for doing operations on the respective Controller objects * * @param giveIndex Give this SwingControllers index in the list as an Integer appended to the * List * @return List of String objects, each representing an open Document's origin. The last element * may be an Integer */ @SuppressWarnings({"rawtypes", "unchecked"}) public List getWindowDocumentOriginList(SwingController giveIndex) { Integer foundIndex = null; int count = controllers.size(); List list = new ArrayList(count + 1); for (int i = 0; i < count; i++) { Object toAdd = null; SwingController controller = controllers.get(i); if (giveIndex == controller) foundIndex = new Integer(i); Document document = controller.getDocument(); if (document != null) toAdd = document.getDocumentOrigin(); list.add(toAdd); } if (foundIndex != null) list.add(foundIndex); return list; }