MarvinView: parameters and events

Version 14.9.29.0

Contents

  1. Parameters
    1. Applet and JavaBeans parameters
      1. Display parameters
      2. Structure display parameters
      3. Structure parameters
      4. 3D and animation
      5. Molecule tables
        1. The layout parameter
        2. The param parameter
        3. The celli and celli_j parameters
      6. Other parameters
    2. Applet only parameters
  2. Troubleshooting - MView and JMView tables
 

1   Parameters

1.1   Applet and JavaBeans parameters

Parameters of the MView and JMView applets can be set using the <param> HTML tag.

1.1.1   Display parameters

ParameterMeaningDefault
addRemoveHatomsEnabled Add/Remove -> Explicit Hydrogens is enabled or disabled in the Edit menu. It will be disabled if this parameter is false. true
autoTabScale Automatically change scale when component size changed. Only applicable to the MViewPane bean. false
background Background color in hexa. Sets the background color of the components (like menubar, toolbar, labels and buttons), excluding the molecule canvas. See also: molbg  
confirmTransfer Displays a confirmation dialog window upon closing the structure editor window in case the structure has been altered. false
detachable Enable or disable popping up detached viewer window. If this parameter is true, the selected molecule can be displayed in separate window by selecting "Window" menu item in the popup menu or by doubleclicking on the canvas. Viewer is not detachable if detachable parameter is false. (See also editable.) true
dispQuality Display quality.
  • 0 - low quality, faster rendering
  • 1 - high quality (antialiasing), slower rendering
1
molbg Molecule background color in hexa. To set different colors for some specified cells, use a comma separated list of "i:#rrggbb" settings, where i is the cell index. For example, to set the default color to white and the color of cell 2 to red, use "#ffffff,2:#ff0000". See also: background  
selectedIndex Select the specified cell.  
tabScale Magnification in the molecule table. Each cell has the specified magnification if positive. The scaling is automatic if negative (-1). -1
transferButtonIcon Sets the location of a custom icon for the Transfer action.  
transferButtonText Sets custom text for the Transfer action.  
transferButtonVisible Makes the Transfer button visible on the General Toolbar. true
winScale Magnification in the zoom window. A 1.54 Å long C-C bond is magnified to winScale pixels. 26.4

Simple viewer applet example:

<applet code="MView" width=100 height=100>
<param name="molbg" value="#a0ffa0">
<param name="escapeChar" value="\">
<param name="mol" value="Pyrrole\n
...
M  END\n"></applet>

1.1.2   Structure display parameters

ParameterMeaningDefault
aminoAcidBondColoringEnabled Enable (true) or disable (false) peptide bridge coloring true
atomFont Atom symbol/label font: Serif, SansSerif or Monospaced SansSerif
atomMappingVisible Show (true) or hide (false) atom mapping true
atomPropertiesVisible Show (true) or hide (false) atom properties true
atomNumbersVisible Deprecated  
atomNumberingType Sets the type of atom numbering to Off(0), Atom numbers (1) or IUPAC numbering (2) 0
valencePropertyVisible Show (true) or hide (false) valence properties true
atomsize Atom symbol font size in C-C bond length units:
atomsize*1.54 Å = atomsize*scale points,
where scale is the current magnification.
0.4
atomSymbolsVisible Show (true) or hide (false) atom symbols in 3D view true
bondLengthVisible Show (true) or hide (false) bond length labels false
bondSpacing Double bond spacing in C-C bond length units:
spacing*1.54 Å = spacing*scale pixels,
where scale is the current magnification.
0.18
chargeWithCircle Charge label (plus or minus sign) is displayed circled(true) or normal(false) false
chiralitySupport When to show atom chirality (R/S).
  • off - never
  • selected - if the chiral flag is set for the molecule or the atom's enhanced stereo type is absolute
  • all - always
off
circledChargeFont Circled charge labels font: any of the fonts installed on the machine SansSerif
circledChargeSize Circled Charge labels font size in C-C bond length units:
circledChargeSize*1.54 Å = circledChargeSize*scale points
0.4
colorScheme Color scheme.
  • mono - monochrome
  • cpk - Corey-Pauling-Kultun
  • shapely - shapely (residue types)
  • group - residue sequence numbers
cpk
downWedge Wedge bond display convention. Down wedge points downward in MDL's convention (mdl), upward (at the chiral center) in Daylight's (daylight). mdl
explicitH Show (true) or hide (false) explicit hydrogens. true
ezVisible Show (true) or hide (false) E/Z labels. false
grinv Show (true) or hide (false) graph invariants false
implicitH How to display H labels.
  • off
  • hetero - on heteroatoms
  • heteroterm - on hetero or terminal atoms
  • all - all atoms
false
ligandErrorVisible Show (true) or not (false) ligand error by coloring to red. false
lonePairsVisible Show (true) or hide (false) lone pairs false
peptideDisplayType Show peptide sequences with one letter or three letter abbreviations.
Valid values are "1-letter" and "3-letter"
3-letter
rgroupsVisible Show (true) or hide (false) R-group definitions true
selection0
selection1
selection2
...
Comma-separated list of atom numbers (0, ..., n-1).
Selected atoms are highlighted.
In a simple one-molecule viewer, selection0 must be used. In a molecule table, selectionn corresponds to molecule cell n.
 
showSets Show the specified atom sets only. Comma separated list of set sequence numbers (0, ..., 63). heteroterm
sketchAnyBond Display type of the Any bond in the sketcher:
  • auto - displayed as dashed line in most cases, solid line only when all bonds are generated from atom coordinates (e.g. XYZ and PDB files).
  • dashed - displayed as dashed line
  • solid - displayed as solid line
auto
valenceErrorVisibleInView Show (true) or hide (false) valence errors true
viewAnyBond Display type of the Any bond in the viewer:
  • auto - displayed as dashed line in most cases, solid line only when all bonds are generated from atom coordinates (e.g. XYZ and PDB files).
  • dashed - displayed as dashed line
  • solid - displayed as solid line
auto
zeroBasedAtomIndexing Starts the atom indexing from zero instead of one:
  • true - atom indexes are started from zero
  • false - atom indexes are started from one
false
viewAtomMarkEnabled Enables (true) or disables (false) atom highlight and atom mark in View. true
viewCarbonVisibility Display the label of carbon atoms in structures.
  • on - Always show the atom labels of carbon atoms.
  • off - Never show the atom labels of carbon atoms.
  • inChain - Show the atom labels of carbon atoms at straight angles and at implicit Hydrogens.
inChain
viewLigandOrderVisibility Display the ligand order of R-group atoms in structures.
  • on - Always show the ligand order of R-group atoms.
  • off - Never show the ligand order of R-group atoms.
  • showOnlyWithDefinition - Show the ligand order of R-group atoms only on R-groups with definition.
off

1.1.3   Structure parameters

ParameterMeaningDefault
atomSet0.1 ... atomSet0.63
atomSet1.1 ... atomSet1.63
...
Atom sets. Comma separated list of atom indices (0, ..., n-1). An atom in molecule cell number N will be in set M if its number appears in the atomSetN.M list. By default, all atoms are in set 0.  
atomSetColor0
...
atomSetColor63
Atom set color in hexa.  
bondSet0.1 ... bondSet0.63
bondSet1.1 ... bondSet1.63
...
Bond sets. Comma separated list of atom index pairs in i-j format, where i, j = 0, ..., n-1. A bond in molecule cell number N will be in set M if the corresponding atom pair appears in the bondSetN.M list. By default, all bonds are in set 0.  
bondSetColor1
...
bondSetColor63
Bond set color in hexa.  
clean2dOpts Options for 2D cleaning (0D->2D) See base 2D cleaning options  
clean3dOpts Options for 3D cleaning (0D->3D) See base 3D cleaning options  
cleanDim Number of space dimensions for cleaning.
  • 2 - two-dimensional cleaning
  • 3 - three-dimensional cleaning
See also: cleanOpts, importConv.
2
cleanOpts Options for 2D or 3D cleaning.
cleanOpts accepts the same parameter values as clean2dOpts or clean3dOpts depending on the cleaning dimension (cleanDim).
 
importConv Conversion(s) after molecule loading. Currently the following options are implemented:
"a" or "+a"     General aromatization
"a_bas" or "+a_bas"     Basic aromatization
"-a" dearomatization
"H" or "+H"     add explicit H atoms
"-H" remove explicit H atoms
"c" automatic cleaning
 
setColoringEnabled Atom/bond set coloring. true

1.1.4   3D and animation

ParameterMeaningDefault
animate Start an XYZ animation sequence, or starts rotating the specified 3D molecule(s).
Possible values: off, all, or a comma-separated list of molecule indices (0...n-1).
Note: This parameter does not apply to beans, only to applet.
off
animDelay Delay (seconds) before repeating the animation. 0
animFPS Number of frames per second in 3D animation. 10
animSync Whether the animations in different cells should be synchronized. false
ballRadius Ball radius for "ballstick" rendering mode, in units of covalent radius. 0.5
rendering Rendering style.
  • wireframe - wireframe
  • wireknobs - wireframe with knobs
  • sticks - 3D sticks
  • ballstick - ball & stick
  • spacefill - balls
wireframe
script
script0
script1
script2
...
Script containing a subset of RasMol commands delimited by semicolons. If this applet parameter is specified, then the mol parameter is neglected. The molecule(s) must be loaded using the load command in the script.
Note: To load the script from a file, use the script command:
<param name="script" value="script myscript.spt">
 
spin
spin0
spin1
spin2
...
Spinning rate and axis for animated molecules. Spinning rate is specified in degrees per second, the axis is specified with a 3D vector. Numbers are separated by commas.
Note: XYZ animations do not spin by default, only if this parameter is set.
36,0,1,0
stickThickness 3D stick diameter for "sticks" and "ballstick" rendering modes, in Angstroms. 0.1
wireThickness line thickness for "wireframe" and "wireknobs" rendering modes, in Angstroms. 0.064

1.1.5   Molecule tables

The cells in the multi-cell molecule table mode of MarvinView can be divided further and they can have they own layout, which however is uniform for all cells in the table. The parameters described here are used to define the structure of such a cell.
Example of using molecule tables: MarvinView Table View Example
A utility class is also available to generate parameter values: MViewParams

rows Number of "molecule rows", including the optional header row.
cols Number of "molecule columns".
visibleRows Number of visible rows. The table is scrollable if less than rows. Default value: visibleRows = rows.
visibleCols Number of visible columns. The table is scrollable if less than cols. Default value: visibleCols = cols.
layout Layout of molecule, label, button and checkbox components in a cell.
layoutH Layout for the header row.
param Parameters of the components.
paramH Parameters for the header row.
cell0
cell1
cell2
...
Contents of the cells.
Use these instead of the mol parameter.
border Border width in pixels. Default: 0 (no border between cells).
Increases the total applet WIDTH by border*(cols-1), and the HEIGHT by border*(rows-1).
1.1.5.1   The layout parameter
The layout and layoutH parameters are in the following format: ":rows:cols:type:k:l:h:w:anchor:fill:[weighty:[weightx:]]type:k:l:...", where : is the field separator, rows is the number of rows in the cell, cols is the number of columns, type is the type of the component in row k, column l of the current cell, h is the height of the component (rows), w is the width (columns).
The anchor parameter determines where to place the component if its size is smaller than its display area. It the component size is larger than the size of its text label, then anchor also sets the label alignment. Possible values: c (center), n (north), s (south), e (east), w (west), ne (northeast), etc.
The fill parameter determines how to resize the component if its size is smaller then its display area. Possible values: n (none), h (horizontal), v (vertical) or b (both).
The weights are nonnegative integers, zero by default. They determine how to distribute space. If all the weights are zero, all the components clump together in the center of the applet.

If you are familiar with Java, you might have noticed that anchor, fill, weightx and weighty have the same names as the fields of the GridBagConstraints class. The reason is that MarvinView uses the GridBagLayout class to determine the places and sizes of the components.

Component types: M (molecule), L (label), B (button), C (checkbox), T (text field) and I (image).

Example:

<param name="layout" value=":4:3:
M:0:0:4:1:c:n:
L:0:2:1:1:c:n:0:10:
L:1:2:1:1:c:n:0:10:
C:0:1:1:1:c:n:
C:1:1:1:1:c:n:
C:2:1:1:1:c:n:
B:3:1:1:1:c:n:10">

1.1.5.2   The param parameter
In a param or paramH parameter, the first character is the field separator (`:' here). The first field is the type of the first component (M, L, B, C or T), followed by its n parameters in the forthcoming n fields. Then the same for the second component, etc. Component parameters:
:M:width:height width and height are in pixel units.
:L:fontprops fontprops: font properties.
:B:fontprops::
:B:fontprops:description:
:B:fontprops:description:frame
fontprops: font properties,
description: description string,
target: target frame for the URL ("_self" = show in the window and frame that contain the applet, "_parent" = show in the applet's parent frame, "_top" = show in the top-level frame of the applet's window, "_blank" = show in new window).
:C:fontprops:
:C:fontprops:description
fontprops: font properties,
description: description string.
You may specify the checkbox group number in the type field, by writing gn next to the type-specifying character C, where n is the group number. No more than one button in a group can be pressed at the same time.
:T:fontprops
:T:fontprops:columns
:T:fontprops:columns:editable
fontprops: font properties,
columns: number of columns,
editable: editable (rw) or read only (r).
The fontprops field usually contains only one number, the font size. Additional properties are "b" (bold font) and "i" (italic). A 12pt bold italic font is specified as "12bi".

Example:

<param name="param" value=":
M:100:100:
L:10b:
C:10:select this molecule:
Cg0:10:include this structure:
B:10:search for more molecules like this:_self:
T:10:
T:10:15:
T:10:15:rw">

1.1.5.3   The celli and celli_j parameters
The parameter values of components in cell i can be specified either by listing them in one single list, using the celli parameter, or by assignments for each component separately, using celli_j, where i = 0, 1, ..., rows*cols-1 is the cell index and j = 0, 1, 2, ... is the component index inside the cell.

The contents of celli_j parameters are listed in the following table for the different component types:

ComponentParametersDescription
M molfile molfile: the molecule URL or the molecule itself (inline) in a molecule file format (MDL mol, compressed mol, MRV etc.)
L label label: the label string.
B |label|spec|action label: the button label,
spec: the special character (% from now),
action: the action string.
C |||||
|||state||
|||state|-|-
...
|label0|label1|state|action0|action1
label0: label for the unchecked state,
label1: label for the checked state,
state: default state (0, 1 or nothing),
action0: action string for unchecking,
action1: action string for checking.
For a "real" checkbox, both labels have to be empty string, otherwise the "checkbox" will be buttonlike.
If both action strings are empty, then the checkbox is disabled. To make it enabled without specifying JavaScript actions, the action values must be "-". Example: "|||1|-|-"
T string string: initial value.
I |iconfile||
|iconfile|action|title
iconfile: GIF or JPEG file containing the icon,
action: image file or js:JavaScript code
title: window title, only used if action is an image file.
Since newlines are usually neglected in applet parameters by the browsers, each newline should be replaced or preceded by \n, where \ is an escape character defined using the escapeChar parameter. If it is defined, then occurrences of this character must also be escaped as "\\". The parameter lists of the B, C and I components should start with "E\|" or "|", where \ is an escape character which overrides the escapeChar setting and | is the separator character (can also be colon, comma or anything else). If the separator occurs inside the parameter string of a component, then it must be escaped: "|" should be replaced by "\|".

Note that specifying the applet parameters in JavaScript (instead of directly inside an HTML applet tag) requires backslash to be escaped once more, except in case of the newline (\n) which does not need without extra escaping.

The action string for the B, C and I components can be an URL for buttons, a JPEG, PNG or GIF file for images, or js:javascript expression for buttons, checkboxes and images. The button action string may contain %C (where % is the special character), which is substituted with the checkbox states represented as a hexadecimal number. The nth bit in this number is the state of the nth checkbox.

A javascript expression can be used only if you specify the MAYSCRIPT attribute in the applet tag.

Example:

<param name="escapeChar" value="\">
<param name="cell2_0" value="\n
  MSketch 04169816382D\n
\n
 66 72  0  0  0  0  0  0  0  0999 V2000\n
mcIWFRwV60\n
...
M  END\n">
<param name="cell2_1" value="1002">
<param name="cell2_2" value="not bad">
<param name="cell2_3" value="|||1|js:cbx(1002,'not selected')|js:cbx(1002,'selected')">
<param name="cell2_4" value="| Include | Include ||js:cbx(1002,'no include')|js:cbx(1002,'include')">
<param name="cell2_5" value="| Exclude | Exclude ||js:cbx(1002,'no exclude')|js:cbx(1002,'exclude')">
<param name="cell2_6" value="| Search |%|js:searchmore(1002)">

A celli parameter contains the parameter values for all components in a single list. The list starts either with "E\|" or "|", where \ and | are the escape and separator characters. (Not necessarily backslash and vertical line.)

Example:

<param name="cell2" value="E\|\n
  MSketch 04169816382D\n
\n
 66 72  0  0  0  0  0  0  0  0999 V2000\n
mcIWFRwV60\n
...
M  END\n
|1002|not bad|||1|js:cbx(1002,'not selected')|js:cbx(1002,'selected')
| Include | Include ||js:cbx(1002,'no include')|js:cbx(1002,'include')
| Exclude | Exclude ||js:cbx(1002,'no exclude')|js:cbx(1002,'exclude')
| Search |%|searchmore.cgi?mol=1002&n=5&cbx=%C">

1.1.3   Other parameters

ParameterMeaningDefault
copyAsFormat Default clipboard format by Copy As action. platform dependent
copyOpts Enabled output formats at copy command To specify more formats, enumerate them in a comma separated list.
  • text - Copy As Text
  • bitmap - Copy As Bitmap Image
  • emf - Copy As Vector Graphical Image (EMF)
platform dependent
debug Debug mode. Possible values: 0, 1, 2. 0
defaultSaveFormat Determines the default chemical file format in the Save As dialog. mrv
draggable Allows (true) or denies (false) mouse dragged events in cells. true
editable Modes: display only (0) or editable (1, 2). If editable=2, then doubleclick launches MarvinSketch (instead of a viewer window). 0
escapeChar Escape character to use for parsing the values of mol and cell parameters.  
importEnabled Allow or forbid molecule import. If this parameter is false, paste function is disabled in MarvinView, also Import option is disabled in the Molecule Source window. (Use editable parameter to forbid the editing of the molecules.) true
molFormat Default file format: mol, csmol, smiles, cxsmiles, cml, pdb, pov, sybyl, or xyz. mol
navmode Mouse drag action.
  • translate - move the structure
  • zoom - change magnification
  • rotZ - rotate in the screen's plane
  • rot3d - 3D rotation
rotZ
selectable Use selectable=false to forbid molecule selection with mouse click. true
sketchHelp Sketcher help contents. chemaxon/marvin/help
/sketch-index.html
sketchQuickHelp Sketcher quick help. chemaxon/marvin/help
/sketch.html
namingWebServiceURL Specifies the URL of a name recognition and import service for the name import to use. empty

1.2   Applet only parameters

ParameterMeaningDefault
mol The URL of the molecule file or the file itself (inline) in any supported structure format such as MDL mol, compressed mol, SMILES, SMARTS, etc format.
For multiline values of this parameter, it is recommended to specify escapeChar="\" and replace or precede each newline occurring in the string with "\n". The escape character should also be escaped as "\\".
The file format and/or import options can be specified if one of the following forms is used:
"file{options}",
"file{MULTISET,options}",
"file{format:}",
"file{format:options}", or
"file{format:MULTISET,options}".
If the MULTISET option is specified, then a multi-molecule file is read into one molecule object containing multiple atom sets.
Examples: "foo.xyz{f1.4C4}", "foo.xyz.gz{gzip:xyz:MULTISET,f1.4C4}"
 
preload Deprecated  
cacheMols Store loaded molecules in an internal cache (true or false).  
loadMols Comma-separated list of molfiles to preload. Useful for caching molecules in JavaScript "slideshows".  
molChanged0
molChanged1
molChanged2
...
Evaluates a JavaScript code when the molecule is loaded or changed in the specified cell. The number in the parameter name determines the cell index. If no molecule table, use molChanged0 to refer to the molecule. The parameter value should be a JavaScript code. E.g.:
    <param name="molChanged0" value="alert('First molecule is modified')">
    
 
listenpropertychange Enable/disable property change event listener of the applet. If the listener is enabled the applet will call the propertyChange(prop) JavaScript method. The code snippet below demonstrates the handling of property change events in JavaScript. Note: If the MAYSCRIPT option is not specified, JavaScript can not be evaluated from the applet.
     function propertyChange(prop) {
        if(document.eventform != null) {
            var s = document.eventform.txt.value;
            document.eventform.txt.value = s + "\n" + prop;
        }
     }

     mview_mayscript=true;
     mview_begin("marvin",400,300);
     mview_param("listenpropertychange","true");
     mview_end();
     
Live applet example: MarvinView Example - Listening for events in applets
If you also specify the "appletid" parameter, its value will appearin the name of the property as prefix (e.g.: "firstapplet.mol").
false
appletid Identify applet in property change event notifications to JavaScript. Use this parameter with listenpropertychange when more than one applet are located on the same web page. It helps to identify which applet sent the notification.
listenmouseevent Enable/disable mouse event listener of the applet. If the listener is enabled the applet will call the mouseEvent(evt) JavaScript method.
The code snippet below demonstrates the handling of mouse events in JavaScript. Note: If the MAYSCRIPT option is not specified, JavaScript can not be evaluated from the applet.
    function mouseEvent(evt) {
        var s = document.mouseform.txt.value;
        s = s + evt + "\n";
        document.mouseform.txt.value = s;
    }

     mview_mayscript=true;
     mview_begin("marvin",400,300);
     mview_param("listenmouseevent","true");
     mview_end();
     
Live applet example: MarvinView Example - Listening for events in applets
false
skin Change the component's Look & Feel (only in SWING applet). If you do not specify this parameter, Marvin will use the default LookAndFeel style.
This parameter value is the name of the new LookAndFeel class.
javax.swing.plaf
.metal
.MetalLookAndFeel
splashScreenImage Change the component's Splash Screen displayed at startup. If you do not specify this parameter, Marvin will use its default splash screen.
This parameter value is the relative path of the image, specify relatively to the CODEBASE
Note: Animated gif files can be displayed badly(flashing, or too fast animation)
null
license Sets the contents of a pre-read license file to the license manager to read and validate licenses from.  
licenseFile Sets the license file location to the license manager to read and validate licenses from.  
onError A string containing a javascript code, that has to be run by the applet, if it has a failure at initialization.
The %s wildcard can be used to include the error message given by the applet inside the javascript code.
If used with alertError also set to true, the alert window will be shown first, and after the user has pressed the OK button on the alert will the given code run.
 
alertError If this parameter is set to true, the applet will show a javascript alert window with an error message, if there was a problem in the initialization process of the applet.  
legacy_lifecycle The "legacy_lifecycle" is a general Java applet parameter. If its value is true, it helps avoid destroying the applet when you leaves the applet page. If you use "marvin.js", it sets its value to true automatically unless you specify its value explicitly. By the way, the defalut value of this parameter in Java is false. See the discussion about it on the forum.  
viewHelp Viewer help contents. Accepts relative URL to the applet codebase or any absolute URL. chemaxon/marvin/help
/view-index.html
viewQuickHelp Viewer quick help. Accepts relative URL to the applet codebase or any absolute URL. chemaxon/marvin/help
/view.html


3   Troubleshooting - MView and JMView tables