// Return a collection of common actions. // Each action in the collection is a compound // action. There is one compound action in the collection // for each action which is common to all viewlets in the selection. public Collection getCommonActions() { Collection commonActions = new LinkedList(); Collection firstViewletsActions; ViewletAction currentAction; Iterator viewletsIterator; Iterator firstViewletsActionsIterator; Viewlet firstViewlet, currentViewlet; List currentViewletActions; boolean allContainAction; if (isEmpty()) { return (Collections.EMPTY_SET); } firstViewlet = (Viewlet) (iterator().next()); firstViewletsActions = firstViewlet.getActions(); firstViewletsActionsIterator = firstViewletsActions.iterator(); // for each currentAction in the first viewlet's actions while (firstViewletsActionsIterator.hasNext()) { currentAction = (ViewletAction) firstViewletsActionsIterator.next(); viewletsIterator = iterator(); allContainAction = true; // test whether each viewlet has an action equals() to currentAction while (viewletsIterator.hasNext() && allContainAction) { currentViewlet = (Viewlet) viewletsIterator.next(); if (!currentViewlet.getActions().contains(currentAction)) { allContainAction = false; } } if (allContainAction) { commonActions.add(currentAction.createCompoundAction(this)); } } return (commonActions); }
protected void modelChanged() { super.modelChanged(); MComponentInstance coi = (MComponentInstance) getOwner(); if (coi == null) return; String nameStr = ""; if (coi.getName() != null) { nameStr = coi.getName().trim(); } // construct bases string (comma separated) String baseStr = ""; Collection col = coi.getClassifiers(); if (col != null && col.size() > 0) { Iterator it = col.iterator(); baseStr = ((MClassifier) it.next()).getName(); while (it.hasNext()) { baseStr += ", " + ((MClassifier) it.next()).getName(); } } if (_readyToEdit) { if (nameStr == "" && baseStr == "") _name.setText(""); else _name.setText(nameStr.trim() + " : " + baseStr); } Dimension nameMin = _name.getMinimumSize(); Rectangle r = getBounds(); setBounds(r.x, r.y, r.width, r.height); updateStereotypeText(); }
private TreeModel buildModel(Object[] resolvers) { TreeModel fullModel = null; DefaultMutableTreeNode top = new DefaultMutableTreeNode(Tr.t("root")); try { cpos = null; for (Object resolver : resolvers) { if (resolver instanceof ColorPository) { cpos = (ColorPository) resolver; GraphCellRenderer graphCellRenderer = new GraphCellRenderer(cpos); colors.setCellRenderer(graphCellRenderer); break; } } Collection<ColorPository.ClassRecord> classes = cpos.getClasses(); String[] classNames = new String[classes.size()]; Iterator<ColorPository.ClassRecord> it = classes.iterator(); int count = 0; while (it.hasNext()) { classNames[count] = it.next().name; count++; } Arrays.sort(classNames); for (String className : classNames) { ColorPository.ColorRecord[] colors = cpos.enumerateColors(className); String[] colorNames = new String[colors.length]; for (int a = 0; a < colorNames.length; a++) { colorNames[a] = colors[a].name; } Arrays.sort(colorNames); DefaultMutableTreeNode tn = new DefaultMutableTreeNode(className); top.add(tn); for (String colorName : colorNames) { tn.add(new DefaultMutableTreeNode(colorName)); } } fullModel = new DefaultTreeModel(top); } catch (Exception e) { fullModel = new DefaultTreeModel(new DefaultMutableTreeNode(Tr.t("root.failed"))); // e.printStackTrace(); } return fullModel; }
protected void loadAirspacesFromPath(String path, Collection<Airspace> airspaces) { File file = ExampleUtil.saveResourceToTempFile(path, ".zip"); if (file == null) return; try { ZipFile zipFile = new ZipFile(file); ZipEntry entry = null; for (Enumeration<? extends ZipEntry> e = zipFile.entries(); e.hasMoreElements(); entry = e.nextElement()) { if (entry == null) continue; String name = WWIO.getFilename(entry.getName()); if (!(name.startsWith("gov.nasa.worldwind.render.airspaces") && name.endsWith(".xml"))) continue; String[] tokens = name.split("-"); try { Class c = Class.forName(tokens[0]); Airspace airspace = (Airspace) c.newInstance(); BufferedReader input = new BufferedReader(new InputStreamReader(zipFile.getInputStream(entry))); String s = input.readLine(); airspace.restoreState(s); airspaces.add(airspace); if (tokens.length >= 2) { airspace.setValue(AVKey.DISPLAY_NAME, tokens[1]); } } catch (Exception ex) { ex.printStackTrace(); } } } catch (IOException e) { e.printStackTrace(); } }