public void actionPerformed(ActionEvent e) {
   final String S_ProcName = "actionPerformed";
   Container cont = getParent();
   while ((cont != null) && (!(cont instanceof JInternalFrame))) {
     cont = cont.getParent();
   }
   if (cont != null) {
     JInternalFrame frame = (JInternalFrame) cont;
     if (frame instanceof ICFBamSwingPopSubDep3JPanelCommon) {
       ICFBamSwingPopSubDep3JPanelCommon jpanelCommon =
           (ICFBamSwingPopSubDep3JPanelCommon) frame;
       jpanelCommon.setPanelMode(CFJPanel.PanelMode.Unknown);
       ICFBamPopSubDep3EditObj editObj =
           (ICFBamPopSubDep3EditObj) jpanelCommon.getSwingFocusAsPopSubDep3().getEdit();
       if (editObj != null) {
         editObj.endEdit();
       }
     } else {
       throw CFLib.getDefaultExceptionFactory()
           .newUnsupportedClassException(
               getClass(), S_ProcName, "frame", frame, "ICFBamSwingPopSubDep3JPanelCommon");
     }
     try {
       frame.setClosed(true);
     } catch (Exception x) {
     }
   }
 }
 public void setPanelMode(CFJPanel.PanelMode value) {
   final String S_ProcName = "setPanelMode";
   CFJPanel.PanelMode oldMode = getPanelMode();
   if (oldMode == value) {
     return;
   }
   if ((value != CFJPanel.PanelMode.Unknown)
       && (value != CFJPanel.PanelMode.View)
       && (value != CFJPanel.PanelMode.Delete)) {
     throw CFLib.getDefaultExceptionFactory()
         .newUsageException(
             getClass(),
             S_ProcName,
             "AskDeleteJPanels only support PanelMode Unknown, View or Delete");
   }
   super.setPanelMode(value);
   if (attrJPanel != null) {
     ((ICFBamSwingPopSubDep3JPanelCommon) attrJPanel).setPanelMode(value);
   }
 }