// ======================================================
  // ======================================================
  public void showMenu(MouseEvent evt, boolean obj_has_polling, boolean running) {
    //	Set selection at mouse position
    TreePath selectedPath = parent.getPathForLocation(evt.getX(), evt.getY());

    if (selectedPath == null) return;
    parent.setSelectionPath(selectedPath);
    if (mode == MODE_ATTR) title.setText("Attribute: " + parent.getSelectedName());
    else if (mode == MODE_DEVICE) {
      title.setText("Device: " + parent.getSelectedName());
      String collection = parent.getCollection();
      getComponent(OFFSET + DEV_PROFILER).setEnabled(obj_has_polling);
      getComponent(OFFSET + DEV_GOTO_SERVER)
          .setVisible(collection.equals("Devices") || collection.equals("Aliases"));
      if (!running) {
        getComponent(OFFSET).setEnabled(false);
        getComponent(OFFSET + DEV_MONITOR).setEnabled(false);
        getComponent(OFFSET + DEV_POLLING).setEnabled(false);
        getComponent(OFFSET + DEV_PROFILER).setEnabled(false);
      }
    } else if (mode == MODE_SERVER) {
      title.setText("Server: " + parent.getSelectedName());
      getComponent(OFFSET + SERV_PROFILER).setEnabled(obj_has_polling);
      if (!running) {
        getComponent(OFFSET + SERV_PROFILER).setEnabled(false);
        getComponent(OFFSET + SERV_ARCHI).setEnabled(false);
        getComponent(SERV_TEST).setEnabled(false);
      }
    }

    show(parent, evt.getX(), evt.getY());
  }