Beispiel #1
0
 public Component getTreeCellRendererComponent(
     JTree tree,
     Object value,
     boolean sel,
     boolean expanded,
     boolean leaf,
     int row,
     boolean hasFocus) {
   if (_cellRenderer == null) {
     _cellRenderer = new DefaultTreeCellRenderer();
     _cellRenderer.setLeafIcon(Utils.getIcon("/icons/16x16/database.png"));
   }
   return _cellRenderer.getTreeCellRendererComponent(
       tree, value, sel, expanded, leaf, row, hasFocus);
 }
  ServiceInstanceEditor() {
    //
    // Template
    //
    Action gotoTemplate =
        new AbstractAction("", Utils.getIcon("/icons/16x16/goto.png")) {
          @Override
          public void actionPerformed(ActionEvent e) {
            TreeNode t = (TreeNode) _template.getSelectedItem();
            if (t != null) {
              t.getRoot().setSelectedNode(t);
            }
          }
        };
    gotoTemplate.putValue(Action.SHORT_DESCRIPTION, "Goto this service template");
    _templateButton = new JButton(gotoTemplate);

    _parameters = new ParameterValuesField(this);

    _propertySets.getDocument().addDocumentListener(_updateListener);
    _propertySets.setToolTipText("Property Set References");
    _properties = new PropertiesField(this);
  }
Beispiel #3
0
  public void setProperties(
      java.util.List<PropertyDescriptor> properties,
      java.util.List<AdapterDescriptor> adapters,
      String[] logs,
      Utils.Resolver resolver,
      boolean editable) {
    _editable = editable;

    //
    // We don't show the .Endpoint and .PublishedEndpoints of adapters,
    // since they already appear in the Adapter pages
    //
    java.util.Set<String> hiddenPropertyNames = new java.util.HashSet<String>();

    //
    // We also hide properties whose value match an object or allocatable
    //
    java.util.Set<String> hiddenPropertyValues = new java.util.HashSet<String>();

    _hiddenProperties.clear();

    if (adapters != null) {
      //
      // Note that we don't substitute *on purpose*, i.e. the names or values
      // must match before substitution.
      //
      for (AdapterDescriptor p : adapters) {
        hiddenPropertyNames.add(p.name + ".Endpoints");
        hiddenPropertyNames.add(p.name + ".PublishedEndpoints");
        hiddenPropertyNames.add(p.name + ".ProxyOptions");

        for (ObjectDescriptor q : p.objects) {
          hiddenPropertyValues.add(Ice.Util.identityToString(q.id));
        }
        for (ObjectDescriptor q : p.allocatables) {
          hiddenPropertyValues.add(Ice.Util.identityToString(q.id));
        }
      }
    }

    if (logs != null) {
      for (String log : logs) {
        hiddenPropertyValues.add(log);
      }
    }

    //
    // Transform list into vector of vectors
    //
    java.util.Vector<java.util.Vector<String>> vector =
        new java.util.Vector<java.util.Vector<String>>(properties.size());
    for (PropertyDescriptor p : properties) {
      if (hiddenPropertyNames.contains(p.name)) {
        //
        // We keep them at the top of the list
        //
        if (_editable) {
          _hiddenProperties.add(p);
        }

        //
        // We hide only the first occurence
        //
        hiddenPropertyNames.remove(p.name);
      } else if (hiddenPropertyValues.contains(p.value)) {
        //
        // We keep them at the top of the list
        //
        if (_editable) {
          _hiddenProperties.add(p);
        }

        //
        // We hide only the first occurence
        //
        hiddenPropertyValues.remove(p.value);
      } else {
        java.util.Vector<String> row = new java.util.Vector<String>(2);
        row.add(Utils.substitute(p.name, resolver));
        row.add(Utils.substitute(p.value, resolver));
        vector.add(row);
      }
    }

    if (_editable) {
      java.util.Vector<String> newRow = new java.util.Vector<String>(2);
      newRow.add("");
      newRow.add("");
      vector.add(newRow);
    }

    _model =
        new DefaultTableModel(vector, _columnNames) {
          @Override
          public boolean isCellEditable(int row, int column) {
            return _editable;
          }
        };

    _model.addTableModelListener(
        new TableModelListener() {
          @Override
          public void tableChanged(TableModelEvent e) {
            if (_editable) {
              Object lastKey = _model.getValueAt(_model.getRowCount() - 1, 0);
              if (lastKey != null && !lastKey.equals("")) {
                _model.addRow(new Object[] {"", ""});
              }
              _editor.updated();
            }
          }
        });
    setModel(_model);

    setCellSelectionEnabled(_editable);
    setOpaque(_editable);
    setPreferredScrollableViewportSize(getPreferredSize());

    DefaultTableCellRenderer cr = (DefaultTableCellRenderer) getDefaultRenderer(String.class);
    cr.setOpaque(_editable);
  }