diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ComponentMaintenancePanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ComponentMaintenancePanel.java
index 1564b4e70afb3beaa23ad2c0300db8f04022be92..a6d7d89ca1256b6774e53cba5555cb3858a1a097 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ComponentMaintenancePanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ComponentMaintenancePanel.java
@@ -67,7 +67,6 @@ public class ComponentMaintenancePanel extends javax.swing.JPanel
         }
         
         setNewRootNode();
-        setFieldValidations();
         return true;
     }
     
@@ -101,7 +100,7 @@ public class ComponentMaintenancePanel extends javax.swing.JPanel
         if (treePanel.getSelectedRows()[0] == 0) {
             try {
                 jVICnodeDef aVICnodeDef = itsMainFrame.getSharedVars().getOTDBrmi().getRemoteMaintenance().getComponentNode(itsComponentID);
-                VICnodeDefViewPanel1.setNode(aVICnodeDef);
+                VICnodeDefViewPanel1.setContent(aVICnodeDef);
                 jSplitPane1.remove(componentPanel1);
                 jSplitPane1.setRightComponent(VICnodeDefViewPanel1);
             } catch (RemoteException ex) {
@@ -110,7 +109,7 @@ public class ComponentMaintenancePanel extends javax.swing.JPanel
         } else {
             jSplitPane1.remove(VICnodeDefViewPanel1);
             jSplitPane1.setRightComponent(componentPanel1);
-            componentPanel1.setParam(aParam);
+            componentPanel1.setContent(aParam);
         }
     }
     
@@ -180,26 +179,8 @@ public class ComponentMaintenancePanel extends javax.swing.JPanel
             }
         });
         
-        setFieldValidations();
     }
     
-    private void setFieldValidations() {
-        componentPanel1.enableParamName(false);
-        componentPanel1.enableType(false);
-        componentPanel1.enableUnit(false);
-        componentPanel1.enableLimits(true);
-        componentPanel1.enableDescription(true);
-        componentPanel1.enableButtons(true);
-        componentPanel1.setButtonsVisible(true);
-        
-        VICnodeDefViewPanel1.enableName(false);
-        VICnodeDefViewPanel1.enableVersion(false);
-        VICnodeDefViewPanel1.enableClassif(false);
-        VICnodeDefViewPanel1.enableConstraints(true);
-        VICnodeDefViewPanel1.enableDescription(true);
-        VICnodeDefViewPanel1.enableButtons(true);
-        VICnodeDefViewPanel1.setButtonsVisible(true);
-    }
     
     private void buttonPanel1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonPanel1ActionPerformed
         logger.debug("actionPerformed: " + evt);
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ResultBrowserPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ResultBrowserPanel.java
index 73660b3144d2bf3cbf5ce1adf9e545fdd2009d64..6f8f201b9531daec64d0c07d00ae44d8531f8e23 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ResultBrowserPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/ResultBrowserPanel.java
@@ -7,9 +7,15 @@
 package nl.astron.lofar.sas.otb.panels;
 
 
+import java.awt.event.ActionEvent;
 import java.util.Iterator;
 import java.util.Vector;
+import javax.swing.JComponent;
+import javax.swing.JMenuItem;
 import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JTree;
+import javax.swing.SwingUtilities;
 import javax.swing.event.TreeModelEvent;
 import javax.swing.event.TreeModelListener;
 import org.apache.log4j.Logger;
@@ -50,9 +56,7 @@ public class ResultBrowserPanel extends javax.swing.JPanel
     }
     
     public void initialize() {
-
-        itsPanelHelper=new ResultPanelHelper();
-        
+       
         /// TOBECHANGED
         parmDBPlotPanel1 = new nl.astron.lofar.sas.otbcomponents.ParmDBPlotPanel();
         ///
@@ -209,7 +213,11 @@ public class ResultBrowserPanel extends javax.swing.JPanel
                 logger.debug("Skipping panel for: "+aPanelName);
             }
         }
-        jTabbedPane1.setSelectedIndex(savedSelection);
+        if (savedSelection > -1 && savedSelection < jTabbedPane1.getComponentCount()) {
+            jTabbedPane1.setSelectedIndex(savedSelection);
+        } else if (jTabbedPane1.getComponentCount() > 0) {
+            jTabbedPane1.setSelectedIndex(0);
+        }
     }
     
     private boolean viewInfo() {
@@ -239,6 +247,18 @@ public class ResultBrowserPanel extends javax.swing.JPanel
         return treeInfoDialog.isChanged();
     }
     
+    private void createPopupMenu(java.awt.event.MouseEvent evt) {
+        if (jTabbedPane1.getSelectedComponent() != null) {
+            if (((IViewPanel)jTabbedPane1.getSelectedComponent()).hasPopupMenu()) {
+                ((IViewPanel)jTabbedPane1.getSelectedComponent()).createPopupMenu((JComponent) evt.getSource(), evt.getX(), evt.getY());
+            }
+        }
+    }
+    
+    private void popupMenuActionHandler(ActionEvent evt) {
+        logger.debug("PopupMenu choice: "+ evt.getActionCommand());
+    }
+    
     /** This method is called from within the constructor to
      * initialize the form.
      * WARNING: Do NOT modify this code. The content of this method is
@@ -250,8 +270,6 @@ public class ResultBrowserPanel extends javax.swing.JPanel
         jSplitPane = new javax.swing.JSplitPane();
         treePanel = new nl.astron.lofar.sas.otbcomponents.TreePanel();
         jTabbedPane1 = new javax.swing.JTabbedPane();
-        logParamPanel1 = new nl.astron.lofar.sas.otbcomponents.LogParamPanel();
-        jPanel1 = new javax.swing.JPanel();
 
         setLayout(new java.awt.BorderLayout());
 
@@ -269,18 +287,32 @@ public class ResultBrowserPanel extends javax.swing.JPanel
                 treePanelValueChanged(evt);
             }
         });
+        treePanel.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mousePressed(java.awt.event.MouseEvent evt) {
+                treePanelMousePressed(evt);
+            }
+        });
 
         jSplitPane.setLeftComponent(treePanel);
 
-        jTabbedPane1.addTab("Log", logParamPanel1);
-
-        jTabbedPane1.addTab("Query Results", jPanel1);
-
         jSplitPane.setRightComponent(jTabbedPane1);
 
         add(jSplitPane, java.awt.BorderLayout.WEST);
 
     }// </editor-fold>//GEN-END:initComponents
+
+    private void treePanelMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_treePanelMousePressed
+        logger.debug("treeMouseEvent: " + evt.getButton());
+        if (evt == null) {
+            return;
+        }
+        //check if right button was clicked
+        if(SwingUtilities.isRightMouseButton(evt)) {
+            logger.debug("Right Mouse Button clicked"+evt.getSource().toString());
+            createPopupMenu(evt);
+            
+        }
+    }//GEN-LAST:event_treePanelMousePressed
     
     private void treePanelValueChanged(javax.swing.event.TreeSelectionEvent evt) {//GEN-FIRST:event_treePanelValueChanged
         logger.debug("treeSelectionEvent: " + evt);
@@ -319,7 +351,7 @@ public class ResultBrowserPanel extends javax.swing.JPanel
     // keep the TreeId that belongs to this panel
     private int itsTreeID = 0;   
     
-    private ResultPanelHelper itsPanelHelper=null;
+    private ResultPanelHelper itsPanelHelper=ResultPanelHelper.getResultPanelHelper();
 
     /// TOBECHANGED
     private nl.astron.lofar.sas.otbcomponents.ParmDBPlotPanel parmDBPlotPanel1;
@@ -327,10 +359,8 @@ public class ResultBrowserPanel extends javax.swing.JPanel
     
     // Variables declaration - do not modify//GEN-BEGIN:variables
     private nl.astron.lofar.sas.otbcomponents.ButtonPanel buttonPanel1;
-    private javax.swing.JPanel jPanel1;
     private javax.swing.JSplitPane jSplitPane;
     private javax.swing.JTabbedPane jTabbedPane1;
-    private nl.astron.lofar.sas.otbcomponents.LogParamPanel logParamPanel1;
     private nl.astron.lofar.sas.otbcomponents.TreePanel treePanel;
     // End of variables declaration//GEN-END:variables
     
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.form b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.form
index 2e3c774596ce1a8744f21cccdf53e3b6a2f97622..4cd9394f1ceda3623e1943cc3546932bc122bcdb 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.form
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.form
@@ -26,6 +26,7 @@
         <Component class="nl.astron.lofar.sas.otbcomponents.TreePanel" name="treePanel">
           <Events>
             <EventHandler event="valueChanged" listener="javax.swing.event.TreeSelectionListener" parameters="javax.swing.event.TreeSelectionEvent" handler="treePanelValueChanged"/>
+            <EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="treePanelMousePressed"/>
           </Events>
           <Constraints>
             <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
@@ -34,9 +35,6 @@
           </Constraints>
         </Component>
         <Container class="javax.swing.JTabbedPane" name="jTabbedPane1">
-          <Properties>
-            <Property name="enabled" type="boolean" value="false"/>
-          </Properties>
           <Constraints>
             <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JSplitPaneSupportLayout$JSplitPaneConstraintsDescription">
               <JSplitPaneConstraints position="right"/>
@@ -46,9 +44,6 @@
           <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
           <SubComponents>
             <Component class="nl.astron.lofar.sas.otbcomponents.NodeViewPanel" name="nodeViewPanel1">
-              <Properties>
-                <Property name="enabled" type="boolean" value="false"/>
-              </Properties>
               <Constraints>
                 <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
                   <JTabbedPaneConstraints tabName="Node">
@@ -58,9 +53,6 @@
               </Constraints>
             </Component>
             <Component class="nl.astron.lofar.sas.otbcomponents.ParameterViewPanel" name="parameterViewPanel1">
-              <Properties>
-                <Property name="enabled" type="boolean" value="false"/>
-              </Properties>
               <Constraints>
                 <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
                   <JTabbedPaneConstraints tabName="Param">
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.java
index ad79a3627702ff465af9736c9f6825a252508501..e3af8dee9dcfd78d3cd02f62236b52d8a4000ce0 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/panels/TemplateMaintenancePanel.java
@@ -7,11 +7,18 @@
 package nl.astron.lofar.sas.otb.panels;
 
 import java.rmi.RemoteException;
+import java.util.Iterator;
+import java.util.Vector;
+import javax.swing.JComponent;
 import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.SwingUtilities;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBnode;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBparam;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBtree;
+import nl.astron.lofar.sas.otb.util.IViewPanel;
+import nl.astron.lofar.sas.otb.util.ResultPanelHelper;
 import nl.astron.lofar.sas.otb.util.UserAccount;
 import nl.astron.lofar.sas.otb.util.treemanagers.OTDBNodeTreeManager;
 import nl.astron.lofar.sas.otb.util.treenodes.TreeNode;
@@ -88,7 +95,8 @@ public class TemplateMaintenancePanel extends javax.swing.JPanel
             treePanel.newRootNode(treeManager.getRootNode(args));
             itsMainFrame.setNormalCursor();
         } catch (Exception e) {
-            logger.debug("Exception during setNewRootNode: " + e);
+            logger.debug("Exception during setNewRootNode: " );
+            e.printStackTrace();
         }
     }
     
@@ -99,6 +107,14 @@ public class TemplateMaintenancePanel extends javax.swing.JPanel
     public static String getFriendlyNameStatic() { 
         return name;
     }
+  
+    private void createPopupMenu(java.awt.event.MouseEvent evt) {
+        if (jTabbedPane1.getSelectedComponent() != null) {
+            if (((IViewPanel)jTabbedPane1.getSelectedComponent()).hasPopupMenu()) {
+                ((IViewPanel)jTabbedPane1.getSelectedComponent()).createPopupMenu((JComponent) evt.getSource(), evt.getX(), evt.getY());
+            }
+        }
+    }
     
     /** This method is called from within the constructor to
      * initialize the form.
@@ -122,14 +138,16 @@ public class TemplateMaintenancePanel extends javax.swing.JPanel
                 treePanelValueChanged(evt);
             }
         });
+        treePanel.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mousePressed(java.awt.event.MouseEvent evt) {
+                treePanelMousePressed(evt);
+            }
+        });
 
         jSplitPane1.setLeftComponent(treePanel);
 
-        jTabbedPane1.setEnabled(false);
-        nodeViewPanel1.setEnabled(false);
         jTabbedPane1.addTab("Node", nodeViewPanel1);
 
-        parameterViewPanel1.setEnabled(false);
         jTabbedPane1.addTab("Param", parameterViewPanel1);
 
         jSplitPane1.setRightComponent(jTabbedPane1);
@@ -146,10 +164,31 @@ public class TemplateMaintenancePanel extends javax.swing.JPanel
 
     }// </editor-fold>//GEN-END:initComponents
 
+    private void treePanelMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_treePanelMousePressed
+        logger.debug("treeMouseEvent: " + evt.getButton());
+        if (evt == null) {
+            return;
+        }
+        //check if right button was clicked
+        if(SwingUtilities.isRightMouseButton(evt)) {
+            logger.debug("Right Mouse Button clicked"+evt.getSource().toString());
+            createPopupMenu(evt);
+            
+        }
+    }//GEN-LAST:event_treePanelMousePressed
+
     private void treePanelValueChanged(javax.swing.event.TreeSelectionEvent evt) {//GEN-FIRST:event_treePanelValueChanged
         logger.debug("treeSelectionEvent: " + evt);
-        TreeNode otdbNode= (TreeNode)evt.getNewLeadSelectionPath().getLastPathComponent();
-        changeTreeSelection((jOTDBnode)otdbNode.getUserObject());
+        if (evt != null && evt.getNewLeadSelectionPath() != null &&
+                evt.getNewLeadSelectionPath().getLastPathComponent() != null) {
+            
+            TreeNode treeNode = (TreeNode)evt.getNewLeadSelectionPath().getLastPathComponent();
+            
+            if(treeNode.getUserObject() instanceof jOTDBnode){
+                changeTreeSelection((jOTDBnode)treeNode.getUserObject());
+                
+            }
+        }
     }//GEN-LAST:event_treePanelValueChanged
 
     private void buttonPanel1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonPanel1ActionPerformed
@@ -236,23 +275,74 @@ public class TemplateMaintenancePanel extends javax.swing.JPanel
     }
 
     private void changeTreeSelection(jOTDBnode aNode) {
+        // save selected panel
+        int savedSelection=jTabbedPane1.getSelectedIndex();
         logger.debug("ChangeSelection for node: " + aNode.name);
         itsSelectedNode=aNode;
+        jOTDBparam aParam = null;
+        
+        jTabbedPane1.removeAll();
+
+        // Check if the nodename uses specific panels and create them
+        Vector aPanelList=null;
+        if (itsPanelHelper.isKey(aNode.name)) {
+            aPanelList=itsPanelHelper.getPanels(aNode.name);
+        } else {
+            aPanelList=itsPanelHelper.getPanels("*");            
+        }
+
         if (aNode.leaf) {
-            buttonPanel1.setButtonEnabled("Duplicate",false);
-            parameterViewPanel1.setContent(aNode);
         } else {
-            // this node is a node
-            jTabbedPane1.setSelectedComponent(nodeViewPanel1);
-            nodeViewPanel1.setContent(aNode);
-            if (treePanel.getSelectedRows()[0] ==  0) {
-                buttonPanel1.setButtonEnabled("Duplicate",false);
+        }
+        
+        // Loop through all the panels and fill the tabPanel with them
+        Iterator it = aPanelList.iterator();
+        while (it.hasNext()) {
+            boolean skip = false;
+            JPanel p=null;
+            String aPanelName= it.next().toString();
+            // Check if the wanted panel is the Node or Parameter Panel. if so only add depending on leaf 
+            if ((aPanelName.contains("NodeViewPanel") && aNode.leaf) |
+                    (aPanelName.contains("ParameterViewPanel") && !aNode.leaf)) {
+                skip = true;
+            }
+            if (!skip) {
+                logger.debug("Getting panel for: "+aPanelName);
+                try {
+                    p = (JPanel) Class.forName(aPanelName).newInstance();
+                } catch (ClassNotFoundException ex) {
+                    logger.debug("Error during getPanel: "+ ex);
+                    return;
+                } catch (InstantiationException ex) {
+                    logger.debug("Error during getPanel: "+ ex);
+                    return;
+                } catch (IllegalAccessException ex) {
+                    logger.debug("Error during getPanel: "+ ex);
+                    return;
+                }
+                if (p!=null) {
+                    jTabbedPane1.addTab(((IViewPanel)p).getShortName(),null,p,"");
+                    ((IViewPanel)p).setMainFrame(itsMainFrame);
+                    ((IViewPanel)p).setContent(aNode);
+                }
             } else {
-                buttonPanel1.setButtonEnabled("Duplicate",true);
+                logger.debug("Skipping panel for: "+aPanelName);
             }
         }
+        if (treePanel.getSelectedRows()[0] ==  0) {
+            buttonPanel1.setButtonEnabled("Duplicate",false);
+        } else {
+            buttonPanel1.setButtonEnabled("Duplicate",true);
+        }
+        if (savedSelection > -1 && savedSelection < jTabbedPane1.getComponentCount()) {
+            jTabbedPane1.setSelectedIndex(savedSelection);
+        } else if (jTabbedPane1.getComponentCount() > 0) {
+            jTabbedPane1.setSelectedIndex(0);
+        }
     }
     
+
+   
     private void initialize() {
         treePanel.setTitle("Template List");
         buttonPanel1.addButton("Delete");
@@ -271,7 +361,8 @@ public class TemplateMaintenancePanel extends javax.swing.JPanel
     // keep the TreeId that belongs to this panel
     private int itsTreeID = 0;
     private boolean changed = false;
-    
+    private ResultPanelHelper itsPanelHelper=ResultPanelHelper.getResultPanelHelper();
+
     // Variables declaration - do not modify//GEN-BEGIN:variables
     private nl.astron.lofar.sas.otbcomponents.ButtonPanel buttonPanel1;
     private javax.swing.JSplitPane jSplitPane1;
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/IViewPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/IViewPanel.java
index 358bb40a531610469b5845e25fa43d501d7027bf..9743476dc4f39e1a1df56ba62a8aa4bace243ae4 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/IViewPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/IViewPanel.java
@@ -9,6 +9,7 @@
 
 package nl.astron.lofar.sas.otb.util;
 
+import java.awt.Component;
 import nl.astron.lofar.sas.otb.MainFrame;
 
 /**
@@ -22,6 +23,9 @@ public interface IViewPanel {
     public void enableButtons(boolean visible);
     public void setButtonsVisible(boolean visible);
     public String getShortName();
+    public boolean hasPopupMenu();
+    public void createPopupMenu(Component aComponent, int x, int y);
+    public void popupMenuHandler(java.awt.event.ActionEvent evt);
     public void addActionListener(java.awt.event.ActionListener listener);
     public void removeActionListener(java.awt.event.ActionListener listener);
 }
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/ResultPanelHelper.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/ResultPanelHelper.java
index f7470b47e7a07d79e0e416d71cb280e552075ff8..d8325fec21a6ed6895e0d72616aaceb9c2081fdc 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/ResultPanelHelper.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/ResultPanelHelper.java
@@ -5,6 +5,8 @@
  *
  * This class maintains a list of available panels that can be shown on a given (VIC)name in the ResultBrowser.
  * In a later stage this should be obtained from the database to make it more solid and dynamic.
+ *
+ * Singleton !!
  * 
  * 
  */
@@ -23,12 +25,24 @@ public class ResultPanelHelper {
    
     private HashMap<String,Vector<String> > itsPanelMap;
     private Vector<String> itsVector;
+    private static ResultPanelHelper ref;
     
     /** Creates a new instance of ResultPanelHelper */
-    public ResultPanelHelper() {
+    private ResultPanelHelper() {
         initMap();
     }
     
+    public static synchronized ResultPanelHelper getResultPanelHelper() {
+        if (ref== null) {
+            ref = new ResultPanelHelper();
+        }
+        return ref;
+    }
+    
+    public Object clone() throws CloneNotSupportedException {
+        throw new CloneNotSupportedException();
+    }
+    
     private void initMap() {
         itsPanelMap = new HashMap<String, Vector<String> >();
         
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/treenodes/TreeNode.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/treenodes/TreeNode.java
index b67fdff654109b76c5bc1e2578e3dbb1693b913c..38f127d8bd702e9f94497b568f25d989cb0aa1f2 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/treenodes/TreeNode.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otb/util/treenodes/TreeNode.java
@@ -95,4 +95,6 @@ public class TreeNode extends DefaultMutableTreeNode {
     public void setName(String name){
         this.name=name;
     }
+    
+
 }
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ComponentPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ComponentPanel.java
index b5fe4b52d2322175a7cc03166b3f918c18f3ad78..fdae07f81f22156f2de5ce3937cde07e28df7fd2 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ComponentPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ComponentPanel.java
@@ -6,37 +6,42 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
+import java.awt.Component;
 import java.awt.event.ActionEvent;
 import java.rmi.RemoteException;
 import java.util.Iterator;
 import java.util.TreeMap;
 import javax.swing.DefaultComboBoxModel;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBparam;
+import nl.astron.lofar.sas.otb.util.IViewPanel;
 import nl.astron.lofar.sas.otb.util.OtdbRmi;
+import nl.astron.lofar.sas.otb.util.UserAccount;
 import org.apache.log4j.Logger;
 
 /**
  *
  * @author  coolen
  */
-public class ComponentPanel extends javax.swing.JPanel {
+public class ComponentPanel extends javax.swing.JPanel implements IViewPanel{
     
     static Logger logger = Logger.getLogger(ComponentPanel.class);    
-
+    static String name="Log";
    
     /** Creates new form BeanForm based upon aParameter
      *
      * @params  aParam   Param to obtain the info from
      *
      */    
-    public ComponentPanel(MainFrame aMainFrame,jOTDBparam aParam) {
+    public ComponentPanel(MainFrame aMainFrame,jOTDBparam aParam){
         initComponents();
         itsMainFrame = aMainFrame;
         itsParam = aParam;
         itsOtdbRmi=itsMainFrame.getSharedVars().getOTDBrmi();
         initComboLists();
-        initPanel(aParam);
+        initPanel();
     }
     
     /** Creates new form BeanForm */
@@ -54,15 +59,64 @@ public class ComponentPanel extends javax.swing.JPanel {
         }
     }
     
-    public void setParam(jOTDBparam aParam) {
-        if (aParam != null) {
-            itsParam=aParam;
-            initPanel(aParam);
+    public String getShortName() {
+        return name;
+   }
+     
+    public void setContent(Object anObject) {
+        if (anObject != null) {
+            itsParam=(jOTDBparam)anObject;
+            initPanel();
         } else {
             logger.debug("No param supplied");
         }
     }
     
+    /** has this panel a popupmenu?
+     *
+     *@returns  false/true depending on the availability of a popupmenu
+     *
+     */
+    public boolean hasPopupMenu() {
+        return false;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above        
+    }
+    
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+    }        
+        
     private void initComboLists() {
         DefaultComboBoxModel aTypeModel = new DefaultComboBoxModel();
         TreeMap aTypeMap = itsOtdbRmi.getParamType();
@@ -81,20 +135,36 @@ public class ComponentPanel extends javax.swing.JPanel {
         ParamUnitText.setModel(aUnitModel);
     }
 
-    private void initPanel(jOTDBparam aParam) {
-        if (aParam != null) {
-            setParamName(aParam.name);
-            setType(aParam.type);
-            setUnit(aParam.unit);
-            setLimits(String.valueOf(aParam.limits));
-            setDescription(aParam.description);
+    private void initPanel() {
+        // check access
+        UserAccount userAccount = itsMainFrame.getUserAccount();
+        
+        // For now:
+        enableLimits(true);
+        enableDescription(true);
+        
+        if(userAccount.isAdministrator()) {
+            // enable/disable certain controls
+        }
+        if(userAccount.isAstronomer()) {
+            // enable/disable certain controls
+        }
+        if(userAccount.isInstrumentScientist()) {
+            // enable/disable certain controls
+        }
+        
+        if (itsParam != null) {
+            setParamName(itsParam.name);
+            setType(itsParam.type);
+            setUnit(itsParam.unit);
+            setLimits(String.valueOf(itsParam.limits));
+            setDescription(itsParam.description);
         } else {
             logger.debug("ERROR:  no Param given");
         }
     }
     
-    /** Returns the Given Name for this Param */
-    public String getParamName() {
+    private String getParamName() {
         return this.ParamNameText.getText();
     }
     
@@ -102,16 +172,11 @@ public class ComponentPanel extends javax.swing.JPanel {
         this.ParamNameText.setText(aS);
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableParamName(boolean enabled) {
+    private void enableParamName(boolean enabled) {
         this.ParamNameText.setEnabled(enabled);
     }
 
-    /** Returns the Given Type for this Param */
-    public String getType() {
+    private String getType() {
         return (String)this.ParamTypeText.getSelectedItem();
     }
     
@@ -123,16 +188,11 @@ public class ComponentPanel extends javax.swing.JPanel {
        }
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableType(boolean enabled) {
+    private void enableType(boolean enabled) {
         this.ParamTypeText.setEnabled(enabled);
     }
     
-        /** Returns the Given Unit for this Param */
-    public String getUnit() {
+    private String getUnit() {
         return (String)this.ParamUnitText.getSelectedItem();
     }
     
@@ -144,16 +204,11 @@ public class ComponentPanel extends javax.swing.JPanel {
         }
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableUnit(boolean enabled) {
+    private void enableUnit(boolean enabled) {
         this.ParamUnitText.setEnabled(enabled);
     }
     
-    /** Returns the Given Limits for this Param */
-    public String getLimits() {
+    private String getLimits() {
         return this.ParamLimitsText.getText();
     }
     
@@ -161,16 +216,11 @@ public class ComponentPanel extends javax.swing.JPanel {
         this.ParamLimitsText.setText(aS);
     }
 
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableLimits(boolean enabled) {
+    private void enableLimits(boolean enabled) {
         this.ParamLimitsText.setEnabled(enabled);
     }
 
-    /** Returns the Given Description for this Param */
-    public String getDescription() {
+    private String getDescription() {
         return this.ParamDescriptionText.getText();
     }
     
@@ -178,11 +228,7 @@ public class ComponentPanel extends javax.swing.JPanel {
         this.ParamDescriptionText.setText(aS);
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableDescription(boolean enabled) {
+    private void enableDescription(boolean enabled) {
         this.ParamDescriptionText.setEnabled(enabled);
         this.ParamDescriptionText.setEditable(enabled);
     }
@@ -387,7 +433,7 @@ public class ComponentPanel extends javax.swing.JPanel {
     }//GEN-LAST:event_ParamApplyButtonActionPerformed
 
     private void ParamCancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ParamCancelButtonActionPerformed
-        initPanel(itsParam);
+        initPanel();
     }//GEN-LAST:event_ParamCancelButtonActionPerformed
     
     private MainFrame  itsMainFrame;
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.form b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.form
index 6c345bd828efaf12f11f904d00d943646ceb82bd..14b302b4dece2e3594a9b4ee99274ec09e4cda27 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.form
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.form
@@ -62,7 +62,7 @@
     <Component class="javax.swing.JLabel" name="jLabel1">
       <Properties>
         <Property name="horizontalAlignment" type="int" value="0"/>
-        <Property name="text" type="java.lang.String" value="Node View Panel"/>
+        <Property name="text" type="java.lang.String" value="Generic Observation Configuration Panel"/>
       </Properties>
     </Component>
   </SubComponents>
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.java
index 05296bd3dc04ac8bcfc9c42313156ae92e14a520..d8450d89364aea6f661105dabfe6219ac023843c 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/GenObsConfigPanel.java
@@ -8,7 +8,9 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
-import java.rmi.RemoteException;
+import java.awt.Component;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBnode;
 import nl.astron.lofar.sas.otb.util.IViewPanel;
@@ -62,7 +64,46 @@ public class GenObsConfigPanel extends javax.swing.JPanel implements IViewPanel{
         initPanel();
     }
 
-     private void initPanel() {
+     public boolean hasPopupMenu() {
+        return false;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above        
+    }
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+    }
+    
+    private void initPanel() {
         // check access
         UserAccount userAccount = itsMainFrame.getUserAccount();
 
@@ -166,7 +207,7 @@ public class GenObsConfigPanel extends javax.swing.JPanel implements IViewPanel{
         });
 
         jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
-        jLabel1.setText("Node View Panel");
+        jLabel1.setText("Generic Observation Configuration Panel");
 
         org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
         this.setLayout(layout);
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.form b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.form
index e2f6cea41a9fb3f71650fc4f1957b34b7fd47cf9..e19b0799162465c5687bffad176db6f672149116 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.form
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.form
@@ -6,7 +6,6 @@
     <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
     <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
     <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
-    <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,-113,0,0,3,-57"/>
   </AuxValues>
 
   <Layout>
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.java
index e5a97257e15d98e5e7ab4e7adf2ba3c9a74bb340..91f71414c889935624b8f7ca79d8ca3139ebadae 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/LogParamPanel.java
@@ -6,6 +6,9 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
+import java.awt.Component;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import javax.swing.ListSelectionModel;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBnode;
@@ -67,12 +70,50 @@ public class LogParamPanel extends javax.swing.JPanel implements IViewPanel {
     }
     
     public void setContent(Object anObject) {
-        TreeNode aNode = (TreeNode)anObject;
-        itsNode = (jOTDBnode)aNode.getUserObject();
+        itsNode = (jOTDBnode)anObject;
        
         initPanel();
     }
     
+    public boolean hasPopupMenu() {
+        return false;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above        
+    }
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+    }
+    
     private void initPanel() {
         // check access
         UserAccount userAccount = itsMainFrame.getUserAccount();
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/NodeViewPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/NodeViewPanel.java
index fa3d3f534f8c14dd78dd0e85359c3dc3419d1beb..5094dee3064af94970e22e9c214fe0df57b47c61 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/NodeViewPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/NodeViewPanel.java
@@ -6,7 +6,10 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
+import java.awt.Component;
 import java.rmi.RemoteException;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBnode;
 import nl.astron.lofar.sas.otb.util.IViewPanel;
@@ -57,12 +60,79 @@ public class NodeViewPanel extends javax.swing.JPanel implements IViewPanel{
     }
     
     public void setContent(Object anObject) {
-        TreeNode aNode = (TreeNode)anObject;
-        itsNode = (jOTDBnode)aNode.getUserObject();
+        itsNode = (jOTDBnode)anObject;
         initPanel();
     }
 
-     private void initPanel() {
+    public boolean hasPopupMenu() {
+        return true;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above
+        ///// TEST ONLY /////
+        aPopupMenu= new JPopupMenu();
+        aMenuItem=new JMenuItem("Node Choice 1");        
+        aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                popupMenuHandler(evt);
+            }
+        });
+        aMenuItem.setActionCommand("Choice 1");
+        aPopupMenu.add(aMenuItem);
+        
+        aMenuItem=new JMenuItem("Node Choice 2");        
+        aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                popupMenuHandler(evt);
+            }
+        });
+        aMenuItem.setActionCommand("Choice 2");
+        aPopupMenu.add(aMenuItem);
+
+        aPopupMenu.setOpaque(true);
+        aPopupMenu.show(aComponent, x, y );          
+        
+    }
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+        /// TEST ONLY ///
+        if (evt.getActionCommand().equals("Choice 1")) {
+            logger.debug("Node Choice 1 chosen");
+        }  else if (evt.getActionCommand().equals("Choice 2")) {
+            logger.debug("Node Choice 2 chosen");
+        }
+    }
+    
+    private void initPanel() {
         // check access
         UserAccount userAccount = itsMainFrame.getUserAccount();
 
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.form b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.form
index ce8e6f806ae18a8871236cce6ea0eccb6989c1f0..0ccde7d7151d85d52391895d189e876fe32dc2c8 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.form
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.form
@@ -421,7 +421,6 @@
             <Component class="javax.swing.JLabel" name="jLabel11">
               <Properties>
                 <Property name="text" type="java.lang.String" value="Storage Machines:"/>
-                <Property name="toolTipText" type="java.lang.String" value="null"/>
               </Properties>
             </Component>
             <Component class="javax.swing.JTextField" name="StorageNodeNamesText">
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.java
index 20baff71a1acb20496d24c623126a0b087719acb..cafa6326a59139599fbe467157de326223ad1f04 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/OLAPConfigPanel.java
@@ -8,8 +8,11 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
+import java.awt.Component;
 import java.util.Iterator;
 import java.util.Vector;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBnode;
 import nl.astron.lofar.sas.otb.util.IViewPanel;
@@ -60,7 +63,46 @@ public class OLAPConfigPanel extends javax.swing.JPanel implements IViewPanel{
         initPanel();
     }
 
-     private void initPanel() {
+    public boolean hasPopupMenu() {
+        return false;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above        
+    }
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+    }
+    
+    private void initPanel() {
         // check access
         UserAccount userAccount = itsMainFrame.getUserAccount();
 
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParameterViewPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParameterViewPanel.java
index ea7e69ab714f7affecd6bfcb2c0ffdeae4e76bd6..b7df1f9c8cab75b4a57a60545dab860b858c32a7 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParameterViewPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParameterViewPanel.java
@@ -6,10 +6,14 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
+import java.awt.Component;
 import java.rmi.RemoteException;
 import java.util.Iterator;
 import java.util.TreeMap;
 import javax.swing.DefaultComboBoxModel;
+import javax.swing.JComponent;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBnode;
 import nl.astron.lofar.sas.otb.jotdb2.jOTDBparam;
@@ -62,6 +66,10 @@ public class ParameterViewPanel extends javax.swing.JPanel implements IViewPanel
         initComponents();
     }
     
+    /** Sets the Mainframe for this class
+     *  
+     * @params  aMainFrame  Mainframe we need to link to
+     */
     public void setMainFrame(MainFrame aMainFrame) {
         if (aMainFrame != null) {
             itsMainFrame=aMainFrame;
@@ -72,15 +80,18 @@ public class ParameterViewPanel extends javax.swing.JPanel implements IViewPanel
         }
     }
     
+    /** Returns the shortname of this class */
     public String getShortName() {
         return name;
     }
     
+    /** Sets the content for this class
+     *
+     * @params anObject  The class that contains the content.
+     */
     public void setContent(Object anObject) {
         if (anObject != null) {
-            TreeNode aNode = (TreeNode)anObject;
-            itsNode = (jOTDBnode)aNode.getUserObject();
-            initPanel();
+            itsNode = (jOTDBnode)anObject;
             getParam(itsNode);
             initPanel();
         } else {
@@ -88,6 +99,79 @@ public class ParameterViewPanel extends javax.swing.JPanel implements IViewPanel
         }
     }
     
+    /** has this panel a popupmenu?
+     *
+     *@returns  false/true depending on the availability of a popupmenu
+     *
+     */
+    public boolean hasPopupMenu() {
+        return true;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above  
+        
+        ///// TEST ONLY /////
+        aPopupMenu= new JPopupMenu();
+        aMenuItem=new JMenuItem("Param Choice 1");        
+        aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                popupMenuHandler(evt);
+            }
+        });
+        aMenuItem.setActionCommand("Choice 1");
+        aPopupMenu.add(aMenuItem);
+        
+        aMenuItem=new JMenuItem("Param Choice 2");        
+        aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                popupMenuHandler(evt);
+            }
+        });
+        aMenuItem.setActionCommand("Choice 2");
+        aPopupMenu.add(aMenuItem);
+
+        aPopupMenu.setOpaque(true);
+        aPopupMenu.show(aComponent, x, y );  
+    }
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+        /// TEST ONLY ///
+        if (evt.getActionCommand().equals("Choice 1")) {
+            logger.debug("Param Choice 1 chosen");
+        }  else if (evt.getActionCommand().equals("Choice 2")) {
+            logger.debug("Param Choice 2 chosen");
+        }
+    }
+    
     private void getParam(jOTDBnode aNode) {
         if (aNode == null) {
             logger.debug("ERROR: Empty Node supplied for getParam");
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParmDBPlotPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParmDBPlotPanel.java
index 5683f7fac54b6ffacfa3121cec37f97a0cffeaf9..482d33fef4f255738fd213bfccfa49895ebe7e4e 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParmDBPlotPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/ParmDBPlotPanel.java
@@ -8,15 +8,19 @@ package nl.astron.lofar.sas.otbcomponents;
 
 import java.awt.BorderLayout;
 import java.awt.Color;
+import java.awt.Component;
 import java.awt.Dimension;
 import java.util.Vector;
+import javax.swing.JMenuItem;
 import javax.swing.JOptionPane;
+import javax.swing.JPopupMenu;
 import javax.swing.JScrollPane;
 import nl.astron.lofar.java.gui.plotter.PlotConstants;
 import nl.astron.lofar.java.gui.plotter.PlotPanel;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.SharedVars;
 import nl.astron.lofar.sas.otb.util.IViewPanel;
+import nl.astron.lofar.sas.otb.util.UserAccount;
 import nl.astron.lofar.sas.otb.util.jParmDBnode;
 import nl.astron.lofar.sas.otb.util.treenodes.TreeNode;
 import org.apache.log4j.Logger;
@@ -60,8 +64,62 @@ public class ParmDBPlotPanel extends javax.swing.JPanel implements IViewPanel{
         }
     }
     
+    public boolean hasPopupMenu() {
+        return false;
+    }
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above        
+    }
+    
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+    }
+    
     private void initPanel(String aParamName) {
-        if (aParamName != null) {
+        // check access
+        UserAccount userAccount = itsMainFrame.getUserAccount();
+        
+        // For now:
+        // give enabled/disabled fields here, can be changed later to choices stored in the database
+        
+        if(userAccount.isAdministrator()) {
+            // enable/disable certain controls
+        }
+        if(userAccount.isAstronomer()) {
+            // enable/disable certain controls
+        }
+        if(userAccount.isInstrumentScientist()) {
+            // enable/disable certain controls
+        }        if (aParamName != null) {
             if(aParamName.equalsIgnoreCase("ParmDB")){
                 itsParamName = "*";
             }else{
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.form b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.form
index 1343a6cefb9871f2e85aacfb36fddaa2a4f95396..3453ee7ea34090938038c3ea2ddb8fe69b71192a 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.form
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.form
@@ -37,7 +37,9 @@
           </Properties>
           <Events>
             <EventHandler event="valueChanged" listener="javax.swing.event.TreeSelectionListener" parameters="javax.swing.event.TreeSelectionEvent" handler="jTree1ValueChanged"/>
+            <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTree1MouseClicked"/>
             <EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTree1MousePressed"/>
+            <EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jTree1MouseReleased"/>
           </Events>
         </Component>
       </SubComponents>
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.java
index f04957324ce4bc89307f7d778fd93b75cf53ad9f..393b0ee8a1ce149dfedd45b59e634c088d213925 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/TreePanel.java
@@ -28,7 +28,7 @@ public class TreePanel extends javax.swing.JPanel {
     private String itsTitle;
     
     static Logger logger = Logger.getLogger(TreePanel.class);
-
+    static String name="TreePanel";
     
     /** Creates new form BeanForm */
     public TreePanel() {
@@ -60,6 +60,17 @@ public class TreePanel extends javax.swing.JPanel {
                 jTree1ValueChanged(evt);
             }
         });
+        jTree1.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                jTree1MouseClicked(evt);
+            }
+            public void mousePressed(java.awt.event.MouseEvent evt) {
+                jTree1MousePressed(evt);
+            }
+            public void mouseReleased(java.awt.event.MouseEvent evt) {
+                jTree1MouseReleased(evt);
+            }
+        });
         jScrollPane1.setViewportView(jTree1);
         jTree1.setSelectionRow(0);
     }
@@ -68,6 +79,10 @@ public class TreePanel extends javax.swing.JPanel {
         return jTree1.getSelectionRows();
     }
     
+    private void setSelection(java.awt.event.MouseEvent evt) {
+        jTree1.setSelectionPath(jTree1.getPathForLocation(evt.getX(),evt.getY()));
+    }
+    
     /** This method is called from within the constructor to
      * initialize the form.
      * WARNING: Do NOT modify this code. The content of this method is
@@ -92,9 +107,15 @@ public class TreePanel extends javax.swing.JPanel {
             }
         });
         jTree1.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                jTree1MouseClicked(evt);
+            }
             public void mousePressed(java.awt.event.MouseEvent evt) {
                 jTree1MousePressed(evt);
             }
+            public void mouseReleased(java.awt.event.MouseEvent evt) {
+                jTree1MouseReleased(evt);
+            }
         });
 
         jScrollPane1.setViewportView(jTree1);
@@ -103,20 +124,29 @@ public class TreePanel extends javax.swing.JPanel {
 
     }// </editor-fold>//GEN-END:initComponents
 
+    private void jTree1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTree1MouseClicked
+        setSelection(evt);
+        fireMouseListenerMouseClicked(evt);
+    }//GEN-LAST:event_jTree1MouseClicked
+
+    private void jTree1ValueChanged(javax.swing.event.TreeSelectionEvent evt) {//GEN-FIRST:event_jTree1ValueChanged
+        fireTreeSelectionListenerValueChanged(evt);
+    }//GEN-LAST:event_jTree1ValueChanged
+
+    private void jTree1MouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTree1MouseReleased
+        setSelection(evt);
+        fireMouseListenerMouseReleased(evt);
+    }//GEN-LAST:event_jTree1MouseReleased
+
     private void jTree1MousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTree1MousePressed
-        logger.debug("mouse pressed event: " + evt);
+        setSelection(evt);
         fireMouseListenerMousePressed(evt);
     }//GEN-LAST:event_jTree1MousePressed
 
     /**
      * Exports the TreeSelection.valueChanged event from tree to the outside world of this panel.
      * @param evt The TreeSelection event
-     */
-    private void jTree1ValueChanged(javax.swing.event.TreeSelectionEvent evt) {//GEN-FIRST:event_jTree1ValueChanged
-        logger.debug("treeselection event: " + evt);
-        fireTreeSelectionListenerValueChanged(evt);
-    }//GEN-LAST:event_jTree1ValueChanged
-    
+     */    
     
     // Variables declaration - do not modify//GEN-BEGIN:variables
     private javax.swing.JScrollPane jScrollPane1;
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.form b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.form
index 4127efab9184d1c4b30c5a281d1e260c3f8be843..c83b82f6ce8475c1bed16170190834086caedb79 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.form
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.form
@@ -6,7 +6,6 @@
     <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
     <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
     <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
-    <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,-108,0,0,2,-84"/>
   </AuxValues>
 
   <Layout>
diff --git a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.java b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.java
index 1c2a421103e983cdac33869a748e126d6691aec6..94d5dbddc222311c22e01a2776d03c7147ceb84a 100644
--- a/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.java
+++ b/SAS/OTB/OTB/src/nl/astron/lofar/sas/otbcomponents/VICnodeDefViewPanel.java
@@ -6,23 +6,29 @@
 
 package nl.astron.lofar.sas.otbcomponents;
 
+import java.awt.Component;
 import java.awt.event.ActionEvent;
 import java.rmi.RemoteException;
 import java.util.Iterator;
 import java.util.TreeMap;
 import javax.swing.DefaultComboBoxModel;
+import javax.swing.JMenuItem;
+import javax.swing.JPopupMenu;
 import nl.astron.lofar.sas.otb.MainFrame;
 import nl.astron.lofar.sas.otb.jotdb2.jVICnodeDef;
+import nl.astron.lofar.sas.otb.util.IViewPanel;
 import nl.astron.lofar.sas.otb.util.OtdbRmi;
+import nl.astron.lofar.sas.otb.util.UserAccount;
 import org.apache.log4j.Logger;
 
 /**
  *
  * @author  coolen
  */
-public class VICnodeDefViewPanel extends javax.swing.JPanel {
+public class VICnodeDefViewPanel extends javax.swing.JPanel implements IViewPanel{
     
-    static Logger logger = Logger.getLogger(VICnodeDefViewPanel.class);    
+    static Logger logger = Logger.getLogger(VICnodeDefViewPanel.class); 
+    static String name="VICNodeDef View";
 
    
     /** Creates new form BeanForm based upon aVICnodeDef
@@ -36,7 +42,7 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         itsNode = aNode;
         itsOtdbRmi=itsMainFrame.getSharedVars().getOTDBrmi();
         initComboLists();
-        initPanel(aNode);
+        initPanel();
     }
     
     /** Creates new form BeanForm */
@@ -53,11 +59,65 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
             logger.debug("No Mainframe supplied");
         }
     }
+
+    /** Returns the shortname of this class */
+    public String getShortName() {
+        return name;
+    }
+    
+    /** Sets the content for this class
+     *
+     * @params anObject  The class that contains the content.
+     */
+    public void setContent(Object anObject) {
+        if (anObject != null) {
+            itsNode=(jVICnodeDef)anObject;
+            initPanel();
+        } else {
+            logger.debug("No node supplied");
+        }
+    }
     
-    public void setNode(jVICnodeDef aNode) {
-        initPanel(aNode);
+    public boolean hasPopupMenu() {
+        return false;
     }
-
+    
+    
+    /** create popup menu for this panel
+     *
+     *  // build up the menu
+     *  aPopupMenu= new JPopupMenu();
+     *  aMenuItem=new JMenuItem("Choice 1");        
+     *  aMenuItem.addActionListener(new java.awt.event.ActionListener() {
+     *      public void actionPerformed(java.awt.event.ActionEvent evt) {
+     *          popupMenuHandler(evt);
+     *      }
+     *  });
+     *  aMenuItem.setActionCommand("Choice 1");
+     *  aPopupMenu.add(aMenuItem);
+     *  aPopupMenu.setOpaque(true);
+     *
+     *
+     *  aPopupMenu.show(aComponent, x, y );        
+     */
+    public void createPopupMenu(Component aComponent,int x, int y) {
+        JPopupMenu aPopupMenu=null;
+        JMenuItem  aMenuItem=null;
+        
+        //  Fill in menu as in the example above        
+    }
+    
+    /** handles the choice from the popupmenu 
+     *
+     * depending on the choices that are possible for this panel perform the action for it
+     *
+     *      if (evt.getActionCommand().equals("Choice 1")) {
+     *          perform action
+     *      }  
+     */
+    public void popupMenuHandler(java.awt.event.ActionEvent evt) {
+    } 
+    
     private void initComboLists() {
         DefaultComboBoxModel aClassifModel = new DefaultComboBoxModel();
         TreeMap aClassifMap = itsOtdbRmi.getClassif();
@@ -68,21 +128,32 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         ClassificationText.setModel(aClassifModel);
     }
      
-    private void initPanel(jVICnodeDef aNode) {
-        itsNode = aNode;
-         if (aNode != null) {
-            setName(aNode.name);
-            setVersion(String.valueOf(aNode.version));
-            setClassif(String.valueOf(aNode.classif));
-            setConstraints(aNode.constraints);
-            setDescription(aNode.description);
+    private void initPanel() {
+        // check access
+        UserAccount userAccount = itsMainFrame.getUserAccount();
+        
+        if(userAccount.isAdministrator()) {
+            // enable/disable certain controls
+        }
+        if(userAccount.isAstronomer()) {
+            // enable/disable certain controls
+        }
+        if(userAccount.isInstrumentScientist()) {
+            // enable/disable certain controls
+        }
+        
+         if (itsNode != null) {
+            setName(itsNode.name);
+            setVersion(String.valueOf(itsNode.version));
+            setClassif(String.valueOf(itsNode.classif));
+            setConstraints(itsNode.constraints);
+            setDescription(itsNode.description);
         } else {
             logger.debug("ERROR:  no node given");
         }
     }
     
-    /** Returns the Given Name for this Node */
-    public String getNodeName() {
+    private String getNodeName() {
         return this.NameText.getText();
     }
     
@@ -90,16 +161,11 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         this.NameText.setText(aS);
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableName(boolean enabled) {
+    private void enableName(boolean enabled) {
         this.NameText.setEnabled(enabled);
     }
     
-    /** Returns the Given Version for this Node */
-    public String getVersion() {
+    private String getVersion() {
         return this.VersionText.getText();
     }
     
@@ -107,17 +173,12 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         this.VersionText.setText(aS);
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableVersion(boolean enabled) {
+    private void enableVersion(boolean enabled) {
         this.VersionText.setEnabled(enabled);
     }
     
 
-    /** Returns the Given Classification for this Node */
-    public String getClassif() {
+    private String getClassif() {
         return (String)this.ClassificationText.getSelectedItem();
     }
     
@@ -129,16 +190,11 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         }
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableClassif(boolean enabled) {
+    private void enableClassif(boolean enabled) {
         this.ClassificationText.setEnabled(enabled);
     }
     
-    /** Returns the Given Constraints for this Node */
-    public String getConstraints() {
+    private String getConstraints() {
         return this.ConstraintsText.getText();
     }
     
@@ -146,16 +202,11 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         this.ConstraintsText.setText(aS);
     }
 
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableConstraints(boolean enabled) {
+    private void enableConstraints(boolean enabled) {
         this.ConstraintsText.setEnabled(enabled);
     }    
     
-    /** Returns the Given Description for this Node */
-    public String getDescription() {
+    private String getDescription() {
         return this.DescriptionText.getText();
     }
     
@@ -163,11 +214,7 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
         this.DescriptionText.setText(aS);
     }
     
-    /** Enables/disables this inputfield
-     *
-     * @param   enabled     true/false enabled/disabled
-     */
-    public void enableDescription(boolean enabled) {
+    private void enableDescription(boolean enabled) {
         this.DescriptionText.setEnabled(enabled);
         this.DescriptionText.setEditable(enabled);
     }    
@@ -375,7 +422,7 @@ public class VICnodeDefViewPanel extends javax.swing.JPanel {
     }//GEN-LAST:event_NodeApplyButtonActionPerformed
 
     private void NodeCancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_NodeCancelButtonActionPerformed
-        initPanel(itsNode);
+        initPanel();
     }//GEN-LAST:event_NodeCancelButtonActionPerformed
     
     private jVICnodeDef itsNode = null;