Package org.jmol.popup
Class GenericPopup
- java.lang.Object
-
- org.jmol.popup.GenericPopup
-
- All Implemented Interfaces:
GenericMenuInterface
- Direct Known Subclasses:
JmolGenericPopup
public abstract class GenericPopup extends java.lang.Object implements GenericMenuInterface
The overall parent of all popup classes in Jmol and JSmol. Contains methods and fields common to the "SwingComponent" SC class, which allows for both JavaScript (org.jmol.awtjs.swing) and Java (java.awt) components. This solution predates Jmol-SwingJS by about six years (2012 vs. 2018)abstract GenericPopop -- abstract JmolGenericPopup -- abstract JmolPopup -- AwtJmolPopup -- JSJmolPopup -- abstract ModelKitPopup -- AwtModelKitPopup -- JSModelKitPopup -- abstract JSVGenericPopup -- AwtPopup -- JsPopup- Author:
- Bob Hanson
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanallowSignedFeaturesprotected java.lang.ObjectbuttonGroupprotected java.lang.StringcurrentMenuItemIdprotected PopupHelperhelperprotected java.util.Map<java.lang.String,SC>htCheckboxprotected java.util.Map<java.lang.String,SC>htMenusprotected booleanisAppletprotected booleanisJSprotected booleanisSignedprotected booleanisTaintedprotected booleanisWebGLprotected java.lang.StringmenuNameprotected SCpopupMenuprivate javajs.util.Lst<SC>SignedOnlyprotected java.lang.StringstrMenuStructureprotected SCthisPopupintthisxintthisyprotected booleanupdatingForShow
-
Constructor Summary
Constructors Constructor Description GenericPopup()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description private static voidaddItemText(javajs.util.SB sb, char type, int level, java.lang.String name, java.lang.String label, java.lang.String script, java.lang.String flags)protected voidaddMenu(java.lang.String id, java.lang.String item, SC subMenu, java.lang.String label, PopupResource popupResourceBundle)protected SCaddMenuItem(SC menuItem, java.lang.String entry)voidaddMenuItems(java.lang.String parentId, java.lang.String key, SC menu, PopupResource popupResourceBundle)protected voidappCheckItem(java.lang.String item, SC newMenu)Opportunity to do something special with an item.voidappCheckSpecialMenu(java.lang.String item, SC subMenu, java.lang.String word)Opportunity to do something special with a given submenu is createdprotected abstract java.lang.StringappFixLabel(java.lang.String label)protected abstract booleanappGetBooleanProperty(java.lang.String name)protected java.lang.StringappGetMenuAsString(java.lang.String title)protected abstract voidappRestorePopupMenu()protected abstract voidappRunScript(java.lang.String script)protected abstract booleanappRunSpecialCheckBox(SC item, java.lang.String basename, java.lang.String what, boolean TF)protected abstract voidappUpdateForShow()protected abstract voidappUpdateSpecialCheckBoxValue(SC source, java.lang.String actionCommand, boolean selected)private booleancheckKey(java.lang.String key)protected static intconvertToMegabytes(long num)protected voiddoMenuCheckBoxCallback(SC source)protected voiddoMenuClickCallback(SC source, java.lang.String script)protected java.lang.ObjectgetEntryIcon(java.lang.String[] ret)protected abstract java.lang.ObjectgetImageIcon(java.lang.String fileName)protected abstract java.lang.StringgetScriptForCallback(SC source, java.lang.String name, java.lang.String script)protected abstract java.lang.StringgetUnknownCheckBoxScriptToRun(SC item, java.lang.String name, java.lang.String what, boolean TF)protected voidinitSwing(java.lang.String title, PopupResource bundle, java.lang.Object applet, boolean isJS, boolean isSigned, boolean isWebGL)java.lang.StringjpiGetMenuAsString(java.lang.String title)private voidmenuAddItem(SC menu, SC item)protected voidmenuAddSeparator(SC menu)protected voidmenuAddSubMenu(SC menu, SC subMenu)voidmenuCheckBoxCallback(SC source)voidmenuClickCallback(SC source, java.lang.String script)protected SCmenuCreateCheckboxItem(SC menu, java.lang.String entry, java.lang.String basename, java.lang.String id, boolean state, boolean isRadio)protected SCmenuCreateItem(SC menu, java.lang.String entry, java.lang.String script, java.lang.String id)protected voidmenuEnable(SC component, boolean enable)abstract voidmenuFocusCallback(java.lang.String name, java.lang.String actionCommand, boolean gained)private voidmenuGetAsText(javajs.util.SB sb, int level, SC menu, java.lang.String menuName)protected java.lang.StringmenuGetId(SC menu)protected intmenuGetListPosition(SC item)protected SCmenuNewSubMenu(java.lang.String entry, java.lang.String id)protected voidmenuRemoveAll(SC menu, int indexFrom)protected voidmenuSetAutoscrolls(SC menu)protected voidmenuSetLabel(SC m, java.lang.String entry)protected abstract voidmenuShowPopup(SC popup, int x, int y)private SCnewMenuItem(SC item, SC menu, java.lang.String text, java.lang.String script, java.lang.String id)private voidrememberCheckbox(java.lang.String key, SC checkboxMenuItem)private voidrunCheckBoxScript(SC item, java.lang.String what, boolean TF)protected SCsetText(java.lang.String item, java.lang.String text)protected voidshow(int x, int y, boolean doPopup)protected voidupdateButton(SC b, java.lang.String entry, java.lang.String script)private voidupdateCheckBoxesForShow()protected voidupdateSignedAppletItems()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jmol.api.GenericMenuInterface
jpiDispose, jpiGetMenuAsObject, jpiInitialize, jpiShow, jpiUpdateComputedMenus
-
-
-
-
Field Detail
-
helper
protected PopupHelper helper
-
strMenuStructure
protected java.lang.String strMenuStructure
-
allowSignedFeatures
protected boolean allowSignedFeatures
-
isJS
protected boolean isJS
-
isApplet
protected boolean isApplet
-
isSigned
protected boolean isSigned
-
isWebGL
protected boolean isWebGL
-
thisx
public int thisx
-
thisy
public int thisy
-
isTainted
protected boolean isTainted
-
menuName
protected java.lang.String menuName
-
popupMenu
protected SC popupMenu
-
thisPopup
protected SC thisPopup
-
htCheckbox
protected java.util.Map<java.lang.String,SC> htCheckbox
-
buttonGroup
protected java.lang.Object buttonGroup
-
currentMenuItemId
protected java.lang.String currentMenuItemId
-
htMenus
protected java.util.Map<java.lang.String,SC> htMenus
-
SignedOnly
private javajs.util.Lst<SC> SignedOnly
-
updatingForShow
protected boolean updatingForShow
-
-
Method Detail
-
getImageIcon
protected abstract java.lang.Object getImageIcon(java.lang.String fileName)
-
menuShowPopup
protected abstract void menuShowPopup(SC popup, int x, int y)
-
getUnknownCheckBoxScriptToRun
protected abstract java.lang.String getUnknownCheckBoxScriptToRun(SC item, java.lang.String name, java.lang.String what, boolean TF)
-
appCheckItem
protected void appCheckItem(java.lang.String item, SC newMenu)Opportunity to do something special with an item.- Parameters:
item-newMenu-
-
appCheckSpecialMenu
public void appCheckSpecialMenu(java.lang.String item, SC subMenu, java.lang.String word)Opportunity to do something special with a given submenu is created- Parameters:
item-subMenu-word-
-
appFixLabel
protected abstract java.lang.String appFixLabel(java.lang.String label)
-
getScriptForCallback
protected abstract java.lang.String getScriptForCallback(SC source, java.lang.String name, java.lang.String script)
-
appGetBooleanProperty
protected abstract boolean appGetBooleanProperty(java.lang.String name)
-
appRunSpecialCheckBox
protected abstract boolean appRunSpecialCheckBox(SC item, java.lang.String basename, java.lang.String what, boolean TF)
-
appRestorePopupMenu
protected abstract void appRestorePopupMenu()
-
appRunScript
protected abstract void appRunScript(java.lang.String script)
-
appUpdateSpecialCheckBoxValue
protected abstract void appUpdateSpecialCheckBoxValue(SC source, java.lang.String actionCommand, boolean selected)
-
appUpdateForShow
protected abstract void appUpdateForShow()
-
initSwing
protected void initSwing(java.lang.String title, PopupResource bundle, java.lang.Object applet, boolean isJS, boolean isSigned, boolean isWebGL)
-
addMenuItems
public void addMenuItems(java.lang.String parentId, java.lang.String key, SC menu, PopupResource popupResourceBundle)
-
addMenu
protected void addMenu(java.lang.String id, java.lang.String item, SC subMenu, java.lang.String label, PopupResource popupResourceBundle)
-
updateSignedAppletItems
protected void updateSignedAppletItems()
-
checkKey
private boolean checkKey(java.lang.String key)
- Parameters:
key-- Returns:
- true unless a JAVA-only key in JavaScript
-
rememberCheckbox
private void rememberCheckbox(java.lang.String key, SC checkboxMenuItem)
-
updateButton
protected void updateButton(SC b, java.lang.String entry, java.lang.String script)
-
getEntryIcon
protected java.lang.Object getEntryIcon(java.lang.String[] ret)
-
menuSetLabel
protected void menuSetLabel(SC m, java.lang.String entry)
-
menuFocusCallback
public abstract void menuFocusCallback(java.lang.String name, java.lang.String actionCommand, boolean gained)
-
menuClickCallback
public void menuClickCallback(SC source, java.lang.String script)
-
doMenuClickCallback
protected void doMenuClickCallback(SC source, java.lang.String script)
-
menuCheckBoxCallback
public void menuCheckBoxCallback(SC source)
-
doMenuCheckBoxCallback
protected void doMenuCheckBoxCallback(SC source)
-
runCheckBoxScript
private void runCheckBoxScript(SC item, java.lang.String what, boolean TF)
-
menuCreateItem
protected SC menuCreateItem(SC menu, java.lang.String entry, java.lang.String script, java.lang.String id)
-
menuCreateCheckboxItem
protected SC menuCreateCheckboxItem(SC menu, java.lang.String entry, java.lang.String basename, java.lang.String id, boolean state, boolean isRadio)
-
menuAddSeparator
protected void menuAddSeparator(SC menu)
-
menuNewSubMenu
protected SC menuNewSubMenu(java.lang.String entry, java.lang.String id)
-
menuRemoveAll
protected void menuRemoveAll(SC menu, int indexFrom)
-
newMenuItem
private SC newMenuItem(SC item, SC menu, java.lang.String text, java.lang.String script, java.lang.String id)
-
setText
protected SC setText(java.lang.String item, java.lang.String text)
-
menuEnable
protected void menuEnable(SC component, boolean enable)
-
menuGetId
protected java.lang.String menuGetId(SC menu)
-
menuSetAutoscrolls
protected void menuSetAutoscrolls(SC menu)
-
menuGetListPosition
protected int menuGetListPosition(SC item)
-
show
protected void show(int x, int y, boolean doPopup)- Parameters:
x-y-doPopup-
-
updateCheckBoxesForShow
private void updateCheckBoxesForShow()
-
jpiGetMenuAsString
public java.lang.String jpiGetMenuAsString(java.lang.String title)
- Specified by:
jpiGetMenuAsStringin interfaceGenericMenuInterface
-
appGetMenuAsString
protected java.lang.String appGetMenuAsString(java.lang.String title)
- Parameters:
title-- Returns:
- null
-
menuGetAsText
private void menuGetAsText(javajs.util.SB sb, int level, SC menu, java.lang.String menuName)
-
addItemText
private static void addItemText(javajs.util.SB sb, char type, int level, java.lang.String name, java.lang.String label, java.lang.String script, java.lang.String flags)
-
convertToMegabytes
protected static int convertToMegabytes(long num)
-
-