Package org.jmol.util
Class GenericApplet
- java.lang.Object
-
- org.jmol.util.GenericApplet
-
- All Implemented Interfaces:
javajs.api.JSInterface
,JmolAppletInterface
,JmolCallbackListener
,JmolStatusListener
,JmolSyncInterface
- Direct Known Subclasses:
Jmol
public abstract class GenericApplet extends java.lang.Object implements javajs.api.JSInterface, JmolAppletInterface, JmolStatusListener
A collection of all methods necessary for initialization of and communication with the applet. JavaScript and Java applet (which is still part of Jmol-SwingJS).
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Object
appletObject
protected java.util.Map<CBK,java.lang.String>
callbacks
protected java.lang.String
codeBase
protected java.lang.String
documentBase
protected boolean
doTranslate
protected java.lang.String
fullName
protected java.lang.Object
gRight
protected boolean
haveDocumentAccess
protected boolean
haveNotifiedError
protected java.lang.String
htmlName
protected java.util.Map<java.lang.String,java.lang.Object>
htParams
protected static java.util.Map<java.lang.String,java.lang.Object>
htRegistry
protected static boolean
isJS
protected boolean
isSigned
protected boolean
isStereoSlave
protected java.lang.String
language
private boolean
loading
protected boolean
mayScript
private javajs.util.SB
outputBuffer
private static int
SCRIPT_CHECK
private static int
SCRIPT_NOWAIT
private static int
SCRIPT_WAIT
protected java.lang.String
statusForm
protected java.lang.String
statusText
protected java.lang.String
statusTextarea
private java.lang.String
syncId
protected Viewer
viewer
protected java.util.Map<java.lang.String,java.lang.Object>
vwrOptions
-
Constructor Summary
Constructors Constructor Description GenericApplet()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description int
cacheFileByName(java.lang.String fileName, boolean isAdd)
void
cachePut(java.lang.String key, java.lang.Object data)
(package private) static void
checkIn(java.lang.String name, java.lang.Object applet)
(package private) static void
checkOut(java.lang.String name)
private void
consoleMessage(java.lang.String message)
java.lang.String
createImage(java.lang.String fileName, java.lang.String type, java.lang.Object text_or_bytes, int quality)
Starting with Jmol 11.8.RC5, for a context where the Jmol application is embedded in another application simply to send the returned message to the application.void
destroy()
protected java.lang.String
doEval(java.lang.String strEval)
return RAW JAVASCRIPT OBJECT, NOT A STRINGprotected java.lang.String
doSendCallback(CBK type, java.lang.Object callback, java.lang.Object[] data, java.lang.String strInfo)
protected void
doShowDocument(java.net.URL url)
protected void
doShowStatus(java.lang.String message)
java.lang.String
eval(java.lang.String strEval)
(package private) static void
findApplets(java.lang.String appletName, java.lang.String mySyncId, java.lang.String excludeName, javajs.util.Lst<java.lang.String> apps)
float[][]
functionXY(java.lang.String functionName, int nX, int nY)
for isosurface FUNCTIONXYfloat[][][]
functionXYZ(java.lang.String functionName, int nX, int nY, int nZ)
for isosurface FUNCTIONXYZjava.lang.String
getAppletInfo()
protected boolean
getBooleanValue(java.lang.String propertyName, boolean defaultValue)
java.lang.String
getFullName()
java.lang.Object
getGLmolView()
This method is only called by JmolGLmol applet._refresh();protected java.lang.String
getJmolParameter(java.lang.String paramName)
java.util.Map<java.lang.String,java.lang.Object>
getJSpecViewProperty(java.lang.String key)
JSpecView shares the JmolSyncInterface; used to get JSpecViewint
getModelIndexFromId(java.lang.String id)
java.lang.Object
getProperty(java.lang.String infoType)
java.lang.Object
getProperty(java.lang.String infoType, java.lang.String paramInfo)
java.lang.String
getPropertyAsJSON(java.lang.String infoType)
java.lang.String
getPropertyAsJSON(java.lang.String infoType, java.lang.String paramInfo)
java.lang.String
getPropertyAsString(java.lang.String infoType)
java.lang.String
getPropertyAsString(java.lang.String infoType, java.lang.String paramInfo)
java.util.Map<java.lang.String,java.lang.Object>
getRegistryInfo()
protected java.lang.String
getValue(java.lang.String propertyName, java.lang.String defaultValue)
private java.lang.String
getValueLowerCase(java.lang.String paramName, java.lang.String defaultValue)
boolean
handleEvent(java.awt.Event e)
protected void
init(java.lang.Object applet)
private void
initApplication()
protected void
initOptions()
java.lang.String
loadDOMNode(java.lang.Object DOMNode)
java.lang.String
loadInline(java.lang.String strModel)
Deprecated.java.lang.String
loadInline(java.lang.String[] strModels)
Deprecated.java.lang.String
loadInline(java.lang.String[] strModels, java.lang.String script)
Deprecated.java.lang.String
loadInline(java.lang.String strModel, java.lang.String script)
Deprecated.java.lang.String
loadInlineArray(java.lang.String[] strModels, java.lang.String script, boolean isAppend)
java.lang.String
loadInlineString(java.lang.String strModel, java.lang.String script, boolean isAppend)
void
notifyAudioEnded(java.lang.Object htParams)
void
notifyCallback(CBK type, java.lang.Object[] data)
boolean
notifyEnabled(CBK type)
private java.lang.String
notifySync(java.lang.String info, java.lang.String appletName)
java.lang.String
openFile(java.lang.String fileName)
possibly called from JSmolApplet.js upon start upvoid
openFileAsyncSpecial(java.lang.String fileName, int flags)
void
openFileAsyncSpecialType(java.lang.String fileName, int flags, java.lang.String type)
void
output(java.lang.String s)
boolean
processMouseEvent(int id, int x, int y, int modifiers, long time)
void
processTwoPointGesture(float[][][] touches)
void
register(java.lang.String id, JmolSyncInterface jsi)
(package private) void
resizeDisplay(int width, int height)
int[]
resizeInnerPanel(java.lang.String data)
void
script(java.lang.String script)
java.lang.String
scriptCheck(java.lang.String script)
java.lang.String
scriptNoWait(java.lang.String script)
private java.lang.String
scriptProcessor(java.lang.String script, java.lang.String statusParams, int processType)
java.lang.String
scriptWait(java.lang.String script)
java.lang.String
scriptWait(java.lang.String script, java.lang.String statusParams)
java.lang.String
scriptWaitOutput(java.lang.String script)
private java.lang.String
sendScript(java.lang.String script, java.lang.String appletName, boolean isSync, boolean doCallback)
void
setCallback(java.lang.String name, java.lang.Object callbackObject)
set a callback either as a function or a function name from JavaScriptvoid
setCallbackFunction(java.lang.String callbackName, java.lang.String callbackObject)
From StatusManagervoid
setDisplay(java.lang.Object canvas)
protected void
setJSOptions(java.util.Map<java.lang.String,java.lang.Object> vwrOptions)
void
setScreenDimension(int width, int height)
boolean
setStatusDragDropped(int mode, int x, int y, java.lang.String fileName, java.lang.String[] retType)
java.lang.Object
setStereoGraphics(boolean isStereo)
private void
setStringProperty(java.lang.String name, java.lang.String value)
void
showUrl(java.lang.String urlString)
void
startHoverWatcher(boolean enable)
void
syncScript(java.lang.String script)
void
update()
-
-
-
Field Detail
-
htRegistry
protected static java.util.Map<java.lang.String,java.lang.Object> htRegistry
-
isJS
protected static boolean isJS
-
SCRIPT_CHECK
private static final int SCRIPT_CHECK
- See Also:
- Constant Field Values
-
SCRIPT_WAIT
private static final int SCRIPT_WAIT
- See Also:
- Constant Field Values
-
SCRIPT_NOWAIT
private static final int SCRIPT_NOWAIT
- See Also:
- Constant Field Values
-
codeBase
protected java.lang.String codeBase
-
documentBase
protected java.lang.String documentBase
-
isSigned
protected boolean isSigned
-
language
protected java.lang.String language
-
doTranslate
protected boolean doTranslate
-
haveDocumentAccess
protected boolean haveDocumentAccess
-
isStereoSlave
protected boolean isStereoSlave
-
mayScript
protected boolean mayScript
-
htmlName
protected java.lang.String htmlName
-
fullName
protected java.lang.String fullName
-
statusForm
protected java.lang.String statusForm
-
statusText
protected java.lang.String statusText
-
statusTextarea
protected java.lang.String statusTextarea
-
gRight
protected java.lang.Object gRight
-
viewer
protected Viewer viewer
-
callbacks
protected java.util.Map<CBK,java.lang.String> callbacks
-
vwrOptions
protected java.util.Map<java.lang.String,java.lang.Object> vwrOptions
-
haveNotifiedError
protected boolean haveNotifiedError
-
appletObject
protected java.lang.Object appletObject
-
loading
private boolean loading
-
syncId
private java.lang.String syncId
-
outputBuffer
private javajs.util.SB outputBuffer
-
htParams
protected java.util.Map<java.lang.String,java.lang.Object> htParams
-
-
Method Detail
-
setStereoGraphics
public java.lang.Object setStereoGraphics(boolean isStereo)
- Specified by:
setStereoGraphics
in interfaceJmolAppletInterface
-
processMouseEvent
public boolean processMouseEvent(int id, int x, int y, int modifiers, long time)
- Specified by:
processMouseEvent
in interfacejavajs.api.JSInterface
-
setDisplay
public void setDisplay(java.lang.Object canvas)
- Specified by:
setDisplay
in interfacejavajs.api.JSInterface
-
setStatusDragDropped
public boolean setStatusDragDropped(int mode, int x, int y, java.lang.String fileName, java.lang.String[] retType)
- Specified by:
setStatusDragDropped
in interfacejavajs.api.JSInterface
-
startHoverWatcher
public void startHoverWatcher(boolean enable)
- Specified by:
startHoverWatcher
in interfacejavajs.api.JSInterface
-
update
public void update()
- Specified by:
update
in interfacejavajs.api.JSInterface
-
openFileAsyncSpecial
public void openFileAsyncSpecial(java.lang.String fileName, int flags)
- Specified by:
openFileAsyncSpecial
in interfacejavajs.api.JSInterface
-
openFileAsyncSpecialType
public void openFileAsyncSpecialType(java.lang.String fileName, int flags, java.lang.String type)
- Specified by:
openFileAsyncSpecialType
in interfacejavajs.api.JSInterface
-
processTwoPointGesture
public void processTwoPointGesture(float[][][] touches)
- Specified by:
processTwoPointGesture
in interfacejavajs.api.JSInterface
-
setScreenDimension
public void setScreenDimension(int width, int height)
- Specified by:
setScreenDimension
in interfacejavajs.api.JSInterface
-
resizeDisplay
void resizeDisplay(int width, int height)
-
init
protected void init(java.lang.Object applet)
-
initApplication
private void initApplication()
-
destroy
public void destroy()
- Specified by:
destroy
in interfaceJmolAppletInterface
- Specified by:
destroy
in interfacejavajs.api.JSInterface
-
getBooleanValue
protected boolean getBooleanValue(java.lang.String propertyName, boolean defaultValue)
-
getValue
protected java.lang.String getValue(java.lang.String propertyName, java.lang.String defaultValue)
-
getValueLowerCase
private java.lang.String getValueLowerCase(java.lang.String paramName, java.lang.String defaultValue)
-
setStringProperty
private void setStringProperty(java.lang.String name, java.lang.String value)
-
scriptProcessor
private java.lang.String scriptProcessor(java.lang.String script, java.lang.String statusParams, int processType)
-
register
public void register(java.lang.String id, JmolSyncInterface jsi)
- Specified by:
register
in interfaceJmolSyncInterface
-
getJSpecViewProperty
public java.util.Map<java.lang.String,java.lang.Object> getJSpecViewProperty(java.lang.String key)
JSpecView shares the JmolSyncInterface; used to get JSpecView- Specified by:
getJSpecViewProperty
in interfaceJmolStatusListener
- Specified by:
getJSpecViewProperty
in interfaceJmolSyncInterface
-
syncScript
public void syncScript(java.lang.String script)
- Specified by:
syncScript
in interfaceJmolSyncInterface
-
handleEvent
public boolean handleEvent(java.awt.Event e)
- Specified by:
handleEvent
in interfaceJmolAppletInterface
-
getAppletInfo
public java.lang.String getAppletInfo()
- Specified by:
getAppletInfo
in interfaceJmolAppletInterface
-
script
public void script(java.lang.String script)
- Specified by:
script
in interfaceJmolAppletInterface
-
scriptCheck
public java.lang.String scriptCheck(java.lang.String script)
- Specified by:
scriptCheck
in interfaceJmolAppletInterface
-
scriptNoWait
public java.lang.String scriptNoWait(java.lang.String script)
- Specified by:
scriptNoWait
in interfaceJmolAppletInterface
-
scriptWait
public java.lang.String scriptWait(java.lang.String script)
- Specified by:
scriptWait
in interfaceJmolAppletInterface
-
scriptWait
public java.lang.String scriptWait(java.lang.String script, java.lang.String statusParams)
- Specified by:
scriptWait
in interfaceJmolAppletInterface
-
scriptWaitOutput
public java.lang.String scriptWaitOutput(java.lang.String script)
- Specified by:
scriptWaitOutput
in interfaceJmolAppletInterface
-
getModelIndexFromId
public int getModelIndexFromId(java.lang.String id)
- Specified by:
getModelIndexFromId
in interfaceJmolAppletInterface
- Parameters:
id
- some_id, filename#id, or ~fileNo.modelNo added ".basemodel" indicates to get the first model in a series from a JDX-MOL file.- Returns:
- model index if found; -2 if file found but model not found -2 if no file indicated and no model found -1 if no such file
-
getProperty
public java.lang.Object getProperty(java.lang.String infoType)
- Specified by:
getProperty
in interfaceJmolAppletInterface
- Parameters:
infoType
-- Returns:
- value
-
getProperty
public java.lang.Object getProperty(java.lang.String infoType, java.lang.String paramInfo)
- Specified by:
getProperty
in interfaceJmolAppletInterface
- Parameters:
infoType
-paramInfo
-- Returns:
- value
-
getPropertyAsString
public java.lang.String getPropertyAsString(java.lang.String infoType)
- Specified by:
getPropertyAsString
in interfaceJmolAppletInterface
- Parameters:
infoType
-- Returns:
- value
-
getPropertyAsString
public java.lang.String getPropertyAsString(java.lang.String infoType, java.lang.String paramInfo)
- Specified by:
getPropertyAsString
in interfaceJmolAppletInterface
- Parameters:
infoType
-paramInfo
-- Returns:
- value
-
getPropertyAsJSON
public java.lang.String getPropertyAsJSON(java.lang.String infoType)
- Specified by:
getPropertyAsJSON
in interfaceJmolAppletInterface
- Parameters:
infoType
-- Returns:
- value
-
getPropertyAsJSON
public java.lang.String getPropertyAsJSON(java.lang.String infoType, java.lang.String paramInfo)
- Specified by:
getPropertyAsJSON
in interfaceJmolAppletInterface
- Parameters:
infoType
-paramInfo
-- Returns:
- value
-
loadInlineString
public java.lang.String loadInlineString(java.lang.String strModel, java.lang.String script, boolean isAppend)
- Specified by:
loadInlineString
in interfaceJmolAppletInterface
-
loadInlineArray
public java.lang.String loadInlineArray(java.lang.String[] strModels, java.lang.String script, boolean isAppend)
- Specified by:
loadInlineArray
in interfaceJmolAppletInterface
-
loadDOMNode
public java.lang.String loadDOMNode(java.lang.Object DOMNode)
- Specified by:
loadDOMNode
in interfaceJmolAppletInterface
-
loadInline
@Deprecated public java.lang.String loadInline(java.lang.String strModel)
Deprecated.- Specified by:
loadInline
in interfaceJmolAppletInterface
- Parameters:
strModel
-- Returns:
- error or null
-
loadInline
@Deprecated public java.lang.String loadInline(java.lang.String strModel, java.lang.String script)
Deprecated.- Specified by:
loadInline
in interfaceJmolAppletInterface
- Parameters:
strModel
-script
-- Returns:
- error or null
-
loadInline
@Deprecated public java.lang.String loadInline(java.lang.String[] strModels)
Deprecated.- Specified by:
loadInline
in interfaceJmolAppletInterface
- Parameters:
strModels
-- Returns:
- error or null
-
loadInline
@Deprecated public java.lang.String loadInline(java.lang.String[] strModels, java.lang.String script)
Deprecated.- Specified by:
loadInline
in interfaceJmolAppletInterface
- Parameters:
strModels
-script
-- Returns:
- error or null
-
output
public void output(java.lang.String s)
-
setCallback
public void setCallback(java.lang.String name, java.lang.Object callbackObject)
set a callback either as a function or a function name from JavaScript- Specified by:
setCallback
in interfaceJmolAppletInterface
-
setCallbackFunction
public void setCallbackFunction(java.lang.String callbackName, java.lang.String callbackObject)
From StatusManager- Specified by:
setCallbackFunction
in interfaceJmolCallbackListener
-
consoleMessage
private void consoleMessage(java.lang.String message)
-
notifyEnabled
public boolean notifyEnabled(CBK type)
- Specified by:
notifyEnabled
in interfaceJmolCallbackListener
-
notifyCallback
public void notifyCallback(CBK type, java.lang.Object[] data)
- Specified by:
notifyCallback
in interfaceJmolCallbackListener
- Parameters:
type
- the callback type or null for getJsObjectInfo() -- Java applet onlydata
- type-dependent
-
sendScript
private java.lang.String sendScript(java.lang.String script, java.lang.String appletName, boolean isSync, boolean doCallback)
-
notifySync
private java.lang.String notifySync(java.lang.String info, java.lang.String appletName)
-
eval
public java.lang.String eval(java.lang.String strEval)
- Specified by:
eval
in interfaceJmolStatusListener
-
createImage
public java.lang.String createImage(java.lang.String fileName, java.lang.String type, java.lang.Object text_or_bytes, int quality)
Description copied from interface:JmolStatusListener
Starting with Jmol 11.8.RC5, for a context where the Jmol application is embedded in another application simply to send the returned message to the application. In this way any application can have access to the WRITE command.- Specified by:
createImage
in interfaceJmolStatusListener
text_or_bytes
- information or null indicates message AFTER Jmol creates the image- Returns:
- null (canceled) or a message starting with OK or an error message
-
getRegistryInfo
public java.util.Map<java.lang.String,java.lang.Object> getRegistryInfo()
- Specified by:
getRegistryInfo
in interfaceJmolStatusListener
-
showUrl
public void showUrl(java.lang.String urlString)
- Specified by:
showUrl
in interfaceJmolStatusListener
-
resizeInnerPanel
public int[] resizeInnerPanel(java.lang.String data)
- Specified by:
resizeInnerPanel
in interfaceJmolStatusListener
-
checkIn
static void checkIn(java.lang.String name, java.lang.Object applet)
-
checkOut
static void checkOut(java.lang.String name)
-
findApplets
static void findApplets(java.lang.String appletName, java.lang.String mySyncId, java.lang.String excludeName, javajs.util.Lst<java.lang.String> apps)
-
notifyAudioEnded
public void notifyAudioEnded(java.lang.Object htParams)
- Specified by:
notifyAudioEnded
in interfaceJmolAppletInterface
-
setJSOptions
protected void setJSOptions(java.util.Map<java.lang.String,java.lang.Object> vwrOptions)
-
initOptions
protected void initOptions()
-
getJmolParameter
protected java.lang.String getJmolParameter(java.lang.String paramName)
-
functionXY
public float[][] functionXY(java.lang.String functionName, int nX, int nY)
Description copied from interface:JmolStatusListener
for isosurface FUNCTIONXY- Specified by:
functionXY
in interfaceJmolStatusListener
- Returns:
- 2D array or null
-
functionXYZ
public float[][][] functionXYZ(java.lang.String functionName, int nX, int nY, int nZ)
Description copied from interface:JmolStatusListener
for isosurface FUNCTIONXYZ- Specified by:
functionXYZ
in interfaceJmolStatusListener
- Returns:
- 3D array or null
-
doShowDocument
protected void doShowDocument(java.net.URL url)
-
doSendCallback
protected java.lang.String doSendCallback(CBK type, java.lang.Object callback, java.lang.Object[] data, java.lang.String strInfo)
-
doEval
protected java.lang.String doEval(java.lang.String strEval)
return RAW JAVASCRIPT OBJECT, NOT A STRING- Parameters:
strEval
-- Returns:
- result, not necessarily a String
-
doShowStatus
protected void doShowStatus(java.lang.String message)
-
getGLmolView
public java.lang.Object getGLmolView()
This method is only called by JmolGLmol applet._refresh();- Returns:
- enough data to update a WebGL view
-
openFile
public java.lang.String openFile(java.lang.String fileName)
possibly called from JSmolApplet.js upon start up- Parameters:
fileName
-- Returns:
- error or null
-
cacheFileByName
public int cacheFileByName(java.lang.String fileName, boolean isAdd)
- Specified by:
cacheFileByName
in interfacejavajs.api.JSInterface
-
cachePut
public void cachePut(java.lang.String key, java.lang.Object data)
- Specified by:
cachePut
in interfacejavajs.api.JSInterface
-
getFullName
public java.lang.String getFullName()
- Specified by:
getFullName
in interfacejavajs.api.JSInterface
-
-