All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jive3.TaskDevicePropertyNode Maven / Gradle / Ivy

The newest version!
package jive3;

import fr.esrf.TangoApi.*;
import fr.esrf.Tango.DevFailed;

import javax.swing.*;

import jive.JiveUtils;

import java.io.IOException;
import java.util.Vector;

// ---------------------------------------------------------------

class TaskDevicePropertyNode extends PropertyNode {

  private Database db;
  private String   devName;

  TaskDevicePropertyNode(TreePanel parent,Database db,String devName) {
    this.db = db;
    this.devName = devName;
    this.parentPanel = parent;
  }

  void populateNode() throws DevFailed {

    Vector nameList = new Vector();

    // Build subNames (Property which contains a / in the name)
    String plist[] = db.get_device_property_list(devName, "*");
    for(int i=0;i=0) {
        String subName = plist[i].substring(0,slash);
        // add subName the the name list
        addToList(nameList,subName);
      }
    }

    for(int i=0;i0) {
      // Insert at i
      v.add(i,s);
    }

  }

  private boolean acceptProperty(String name) {

    int slash = name.indexOf('/');
    return !(JiveUtils.IsPollCfgItem(name) ||
             JiveUtils.IsLogCfgItem(name) ||
             JiveUtils.IsHdbCfgItem(name) ||
             JiveUtils.IsSystemItem(name)) &&
           slash<0;

  }

  private boolean acceptPropertyForCopy(String name) {

    return !(JiveUtils.IsPollCfgItem(name) ||
        JiveUtils.IsLogCfgItem(name) ||
        JiveUtils.IsHdbCfgItem(name) ||
        JiveUtils.IsSystemItem(name));

  }

  public void execAction(int number,boolean multipleCall) {
    switch(number) {

      case TreePanel.ACTION_COPY:
        JiveUtils.the_clipboard.clear();
        String[][] props = getPropertiesForCopy();
        for(int i=0;i=0) {
      // We need to refresh the tree under this node
      String subName = propName.substring(0,slash);
      parentPanel.refreshNode(this,subName);
    }

  }

  void deleteProperty(String propName) {

    try {
      db.delete_device_property(devName, JiveUtils.makeDbDatum(propName, ""));
    } catch (DevFailed e) {
      JiveUtils.showTangoError(e);
    }

  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy