public List<VariableBean> getStructureVariables(Structure s) { List<VariableBean> vlist = new ArrayList<VariableBean>(); for (Variable v : s.getVariables()) { vlist.add(new VariableBean(v)); } return vlist; }
private void hideNestedTable(int level) { int n = nestedTableList.size(); for (int i = n - 1; i >= level; i--) { NestedTable ntable = nestedTableList.get(i); ntable.hide(); } }
public List<VariableBean> getVariableBeans(NetcdfFile ds) { List<VariableBean> vlist = new ArrayList<VariableBean>(); for (Variable v : ds.getVariables()) { vlist.add(new VariableBean(v)); } return vlist; }
public void showAtts() { if (ds == null) return; if (attTable == null) { // global attributes attTable = new BeanTableSorted( AttributeBean.class, (PreferencesExt) prefs.node("AttributeBeans"), false); PopupMenu varPopup = new ucar.nc2.ui.widget.PopupMenu(attTable.getJTable(), "Options"); varPopup.addAction( "Show Attribute", new AbstractAction() { public void actionPerformed(ActionEvent e) { AttributeBean bean = (AttributeBean) attTable.getSelectedBean(); if (bean != null) { infoTA.setText(bean.att.toString()); infoTA.gotoTop(); infoWindow.show(); } } }); attWindow = new IndependentWindow("Global Attributes", BAMutil.getImage("netcdfUI"), attTable); attWindow.setBounds( (Rectangle) prefs.getBean("AttWindowBounds", new Rectangle(300, 100, 500, 800))); } List<AttributeBean> attlist = new ArrayList<AttributeBean>(); for (Attribute att : ds.getGlobalAttributes()) { attlist.add(new AttributeBean(att)); } attTable.setBeans(attlist); attWindow.show(); }
private NestedTable setNestedTable(int level, Structure s) { NestedTable ntable; if (nestedTableList.size() < level + 1) { ntable = new NestedTable(level); nestedTableList.add(ntable); } else { ntable = nestedTableList.get(level); } if (s != null) // variables inside of records ntable.table.setBeans(getStructureVariables(s)); ntable.show(); return ntable; }
public void setDataset(NetcdfFile ds) { this.ds = ds; NestedTable nt = nestedTableList.get(0); nt.table.setBeans(getVariableBeans(ds)); hideNestedTable(1); datasetTree.setFile(ds); }
private void setSelected(Variable v) { eventsOK = false; List<Variable> vchain = new ArrayList<Variable>(); vchain.add(v); Variable vp = v; while (vp.isMemberOfStructure()) { vp = vp.getParentStructure(); vchain.add(0, vp); // reverse } for (int i = 0; i < vchain.size(); i++) { vp = vchain.get(i); NestedTable ntable = setNestedTable(i, vp.getParentStructure()); ntable.setSelected(vp); } eventsOK = true; }
private void compareDataset(CompareDialog.Data data) { if (data.name == null) return; NetcdfFile compareFile = null; try { compareFile = NetcdfDataset.openFile(data.name, null); Formatter f = new Formatter(); CompareNetcdf2 cn = new CompareNetcdf2(f, data.showCompare, data.showDetails, data.readData); if (data.howMuch == CompareDialog.HowMuch.All) cn.compare(ds, compareFile); else { NestedTable nested = nestedTableList.get(0); Variable org = getCurrentVariable(nested.table); if (org == null) return; Variable ov = compareFile.findVariable(org.getFullNameEscaped()); if (ov != null) cn.compareVariable(org, ov); } infoTA.setText(f.toString()); infoTA.gotoTop(); infoWindow.setTitle("Compare"); infoWindow.show(); } catch (Throwable ioe) { ByteArrayOutputStream bos = new ByteArrayOutputStream(10000); ioe.printStackTrace(new PrintStream(bos)); infoTA.setText(bos.toString()); infoTA.gotoTop(); infoWindow.show(); } finally { if (compareFile != null) try { compareFile.close(); } catch (Exception eek) { } } }