# Class JmolPopup

java.lang.Object
org.jmol.popup.GenericPopup
org.jmol.popup.JmolGenericPopup
org.jmol.popup.JmolPopup

All Implemented Interfaces:
  `GenericMenuInterface`

Direct Known Subclasses:
  `AwtJmolPopup, JSJmolPopup`

public abstract class JmolPopup extends JmolGenericPopup
An abstract popup class that is instantiated for a given platform and context as one of:

      -- abstract JmolPopup
         -- AwtJmolPopup
         -- JSJmolPopup

## Field Summary

Fields
Modifier and Type
Field
Description
`protected int`
`modelIndex`
`protected Map<String,Object>`
`modelInfo`
`protected Lst<SC>`
`Special`
`protected static final int`
`UPDATE_ALL`
`protected static final int`
`UPDATE_CONFIG`
`protected static final int`
`UPDATE_NEVER`
`protected static final int`
`UPDATE_SHOW`
`protected int`
`updateMode`

### Fields inherited from class JmolGenericPopup

`frankPopup, menuText, nFrankList, vwr`

### Fields inherited from class GenericPopup

`allowSignedFeatures, buttonGroup, currentMenuItemId, helper, htCheckbox, htMenus, isApplet, isJS, isSigned, isTainted, isWebGL, menuName, popupMenu, strMenuStructure, thisPopup, thisx, thisy, updatingForShow`

## Constructor Summary

Constructors
Constructor
Description
`JmolPopup()`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`appCheckItem(String item, SC newMenu)`
Opportunity to do something special with an item.
`void`
`appCheckSpecialMenu(String item, SC subMenu, String word)`
Opportunity to do something special with a given submenu is created
`protected String`
`appGetMenuAsString(String title)`
`protected void`
`appRestorePopupMenu()`
`protected void`
`appUpdateForShow()`
`protected void`
`appUpdateSpecialCheckBoxValue(SC item, String what, boolean TF)`
(1) setOption --> set setOption true or set setOption false
`protected PopupResource`
`getBundle(String menu)`
`protected String`
`getScriptForCallback(SC source, String id, String script)`
`protected String`
`getSpecialLabel(String name, String text)`
menus or menu items with SPECIAL in their name are sent here for on-the-fly labeling
`void`
`jpiDispose()`
`void`
`jpiUpdateComputedMenus()`
`protected boolean`
`showFrankMenu()`
`protected void`
`updateAboutSubmenu()`
`protected void`
`updateConfigurationComputedMenu()`
`protected void`
`updateElementsComputedMenu(BS elementsPresentBitSet)`
`protected void`
`updateFileMenu()`
`protected void`
`updateFileTypeDependentMenus()`
`protected void`
`updateFRAMESbyModelComputedMenu()`
`protected void`
`updateHeteroComputedMenu(Map<String,String> htHetero)`
`protected void`
`updateLanguageSubmenu()`
`protected void`
`updateMenus()`
////// protected methods //////////
`protected void`
`updateModelSetComputedMenu()`
`protected void`
`updatePDBResidueComputedMenus()`
`protected void`
`updateSceneComputedMenu()`
`protected void`
`updateSelectMenu()`
`protected void`
`updateSpecialMenuItem(SC m)`
`protected void`
`updateSpectraMenu()`
`protected void`
`updateSurfMoComputedMenu(Map<String,Object> moData)`
`protected void`
`updateSYMMETRYComputedMenus()`
`protected void`
`updateSYMMETRYSelectComputedMenu()`
`protected void`
`updateSYMMETRYShowComputedMenu()`

### Methods inherited from class JmolGenericPopup

`appFixLabel, appGetBooleanProperty, appRunScript, appRunSpecialCheckBox, initialize, jpiGetMenuAsObject, jpiInitialize, jpiShow`

### Methods inherited from class GenericPopup

`addMenu, addMenuItem, addMenuItems, convertToMegabytes, doMenuCheckBoxCallback, doMenuClickCallback, getEntryIcon, getImageIcon, getUnknownCheckBoxScriptToRun, initSwing, jpiGetMenuAsString, menuAddSeparator, menuAddSubMenu, menuCheckBoxCallback, menuClickCallback, menuCreateCheckboxItem, menuCreateItem, menuEnable, menuFocusCallback, menuGetId, menuGetListPosition, menuNewSubMenu, menuRemoveAll, menuSetAutoscrolls, menuSetLabel, menuShowPopup, setText, show, updateButton, updateSignedAppletItems`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### UPDATE_NEVER

protected static final int UPDATE_NEVER

See Also:
  - Constant Field Values

### UPDATE_ALL

protected static final int UPDATE_ALL

See Also:
  - Constant Field Values

### UPDATE_CONFIG

protected static final int UPDATE_CONFIG

See Also:
  - Constant Field Values

### UPDATE_SHOW

protected static final int UPDATE_SHOW

See Also:
  - Constant Field Values

### updateMode

protected int updateMode

### modelInfo

protected Map<String,Object> modelInfo

### Special

protected Lst<SC> Special

### modelIndex

protected int modelIndex

## Constructor Details

### JmolPopup

public JmolPopup()

## Method Details

### jpiDispose

public void jpiDispose()

Specified by:
  `jpiDispose` in interface `GenericMenuInterface`
Overrides:
  `jpiDispose` in class `JmolGenericPopup`

### getBundle

protected PopupResource getBundle(String menu)

Specified by:
  `getBundle` in class `JmolGenericPopup`

### showFrankMenu

protected boolean showFrankMenu()

Overrides:
  `showFrankMenu` in class `JmolGenericPopup`

### jpiUpdateComputedMenus

public void jpiUpdateComputedMenus()

### updateMenus

protected void updateMenus()
////// protected methods //////////

### appCheckItem

protected void appCheckItem(String item, SC newMenu)
Description copied from class: `GenericPopup`
Opportunity to do something special with an item.

Overrides:
  `appCheckItem` in class `GenericPopup`
Parameters:
  `item` -
  `newMenu` -

### appGetMenuAsString

protected String appGetMenuAsString(String title)

Overrides:
  `appGetMenuAsString` in class `GenericPopup`
Parameters:
  `title` -
Returns:
  null

### getScriptForCallback

protected String getScriptForCallback(SC source, String id, String script)

Specified by:
  `getScriptForCallback` in class `GenericPopup`

### appRestorePopupMenu

protected void appRestorePopupMenu()

Overrides:
  `appRestorePopupMenu` in class `JmolGenericPopup`

### appUpdateSpecialCheckBoxValue

protected void appUpdateSpecialCheckBoxValue(SC item, String what, boolean TF)
(1) setOption --> set setOption true or set setOption false

Specified by:
  `appUpdateSpecialCheckBoxValue` in class `GenericPopup`
Parameters:
  `item` -
  `what` - option to set
  `TF` - true or false

### appCheckSpecialMenu

public void appCheckSpecialMenu(String item, SC subMenu, String word)
Description copied from class: `GenericPopup`
Opportunity to do something special with a given submenu is created

Overrides:
  `appCheckSpecialMenu` in class `GenericPopup`
Parameters:
  `item` -
  `subMenu` -
  `word` -

### appUpdateForShow

protected void appUpdateForShow()

Specified by:
  `appUpdateForShow` in class `GenericPopup`

### updateFileMenu

protected void updateFileMenu()

### updateSelectMenu

protected void updateSelectMenu()

### updateElementsComputedMenu

protected void updateElementsComputedMenu(BS elementsPresentBitSet)

### updateSpectraMenu

protected void updateSpectraMenu()

### updateHeteroComputedMenu

protected void updateHeteroComputedMenu(Map<String,String> htHetero)

### updateSurfMoComputedMenu

protected void updateSurfMoComputedMenu(Map<String,Object> moData)

### updateFileTypeDependentMenus

protected void updateFileTypeDependentMenus()

### updateSceneComputedMenu

protected void updateSceneComputedMenu()

### updatePDBResidueComputedMenus

protected void updatePDBResidueComputedMenus()

### updateSYMMETRYComputedMenus

protected void updateSYMMETRYComputedMenus()

### updateSYMMETRYShowComputedMenu

protected void updateSYMMETRYShowComputedMenu()

### updateSYMMETRYSelectComputedMenu

protected void updateSYMMETRYSelectComputedMenu()

### updateFRAMESbyModelComputedMenu

protected void updateFRAMESbyModelComputedMenu()

### updateConfigurationComputedMenu

protected void updateConfigurationComputedMenu()

### updateModelSetComputedMenu

protected void updateModelSetComputedMenu()

### updateAboutSubmenu

protected void updateAboutSubmenu()

### updateLanguageSubmenu

protected void updateLanguageSubmenu()

### updateSpecialMenuItem

protected void updateSpecialMenuItem(SC m)

### getSpecialLabel

protected String getSpecialLabel(String name, String text)
menus or menu items with SPECIAL in their name are sent here for on-the-fly labeling

Parameters:
  `name` -
  `text` -
Returns:
  revised text