public DashboardPanel(DashboardFrame frame, ITable table)
 {
   base.\u002Ector();
   DashboardPanel dashboardPanel = this;
   this.backPane = new JPanel();
   this.elements = new LinkedList();
   this.fields = (Map) new HashMap();
   this.hiddenFields = (Set) new HashSet();
   this.editable = false;
   this.listener = new DashboardPanel.RobotListener(this, (DashboardPanel.\u0031) null);
   this.subsystems = new ArrayList();
   this.frame = frame;
   this.table = table;
   this.glassPane = new GlassPane(frame, this);
   ((Container) this).add((Component) this.glassPane);
   ((Container) this).add((Component) this.backPane);
   ((Container) this.backPane).setLayout((LayoutManager) new DashboardPanel.DashboardLayout(this, (DashboardPanel.\u0031) null));
   ((Component) this.backPane).setFocusable(true);
   ((Container) this).setLayout((LayoutManager) new DashboardPanel.DashboardLayout(this, (DashboardPanel.\u0031) null));
   this.setEditable(this.editable);
   table.addTableListener((ITableListener) this.listener, true);
   table.addSubTableListener((ITableListener) this.listener);
 }
 public override void setValue(object value)
 {
   if (!(value is ITable))
     return;
   ITable table = (ITable) value;
   if (table != null)
     table.removeTableListener((ITableListener) this);
   this.table = table;
   if (table == null)
     return;
   table.addTableListener((ITableListener) this, true);
   if (!this.listenSubtables)
     return;
   table.addSubTableListener((ITableListener) this);
 }