Difference between revisions of "MediaWiki/ExtensionV5"

From Jmol
Jump to navigation Jump to search
(Third-level subtags)
 
(5 intermediate revisions by the same user not shown)
Line 32: Line 32:
  
 
==== Second-level subtags that insert a JSmol panel (either inline or in a popup) ====
 
==== Second-level subtags that insert a JSmol panel (either inline or in a popup) ====
* <code>jmolAppletButton</code>
+
* Inline JSmol panel:
* <code>jmolAppletLink</code> both will, upon user action, open a small window (pop-up) with a JSmol panel displaying the structure. See [[MediaWiki/Tags for Pop-up Models]] for details.
+
** <code>jmolApplet</code> inserts the JSmol panel in the page as soon as it is loaded. See [[MediaWiki/Tags for In-page Models]] for details.
* <code>jmolAppletInlineButton</code>
+
** <code>jmolAppletInlineButton</code>
* <code>jmolAppletInlineLink</code> both will, upon user action, insert into the page a JSmol panel displaying a structure. See [[MediaWiki/Tags for Pop-in Models]] for details.
+
** <code>jmolAppletInlineLink</code> both will, upon user action, insert into the page a JSmol panel displaying a structure. See [[MediaWiki/Tags for Pop-in Models]] for details.
* <code>jmolApplet</code> inserts the JSmol panel in the page as soon as it is loaded. See [[MediaWiki/Tags for In-page Models]] for details.
+
* Pop-up JSmol panel:
 +
** <code>jmolAppletButton</code>
 +
** <code>jmolAppletLink</code> both will, upon user action, open a small window (pop-up) with a JSmol panel displaying the structure. See [[MediaWiki/Tags for Pop-up Models]] for details.
  
 
==== Second-level subtags that insert controls to act on one JSmol panel ====
 
==== Second-level subtags that insert controls to act on one JSmol panel ====
Line 47: Line 49:
  
 
==== Third-level subtags ====
 
==== Third-level subtags ====
* <code>image</code>
+
These are relevant for <code>jmolApplet</code>, and some of them also for some other 2nd-level subtags:
* <code>script</code>
+
* <code>text</code> (displayed in the page or in the UI control)
* <code>uploadedFileContents</code>
+
* <code>script</code> (commands for the molecule display in JSmol)
 +
* <code>uploadedFileContents</code> (model to be loaded)
 
* <code>urlContents</code>
 
* <code>urlContents</code>
 
* <code>wikiPageContents</code>
 
* <code>wikiPageContents</code>
 
* <code>inlineContents</code>
 
* <code>inlineContents</code>
* <code>text</code>
+
* <code>title</code> (either tooltip for the UI control or text to be displayed above the JSmol panel)
* <code>title</code>
+
* <code>caption</code> (text to be displayed below the JSmol panel)
* <code>caption</code>
+
* <code>color</code> (background color of JSmol panel)
* <code>color</code>
+
* <code>size</code> (dimensions of JSmol panel)
* <code>size</code>
+
* <code>controls</code> (display of optional buttons below the JSmol panel; value: any combination of spin | quality | labels | popup)
* <code>controls</code>
+
* <code>frame</code> (border around the JSmol panel)
* <code>frame</code>
+
* <code>image</code> (cover image to be displayed; replaced with the JSmol panel upon click)
* <code>pspeed</code>
+
* <code>pspeed</code> (performance: higher speed vs. higher quality, relevant for mobile platforms)
* <code>name</code>  applies to <code>jmolApplet</code>, same as all the above ones
+
* <code>name</code>  (applies to <code>jmolApplet</code>, needed when several JSmol panels are presemt in a page)
 +
These are more specific and relevant just for some 2nd-level subtags:
 
* <code>target</code>  applies to <code>jmolButton</code>, <code>jmolLink</code>, <code>jmolCheckbox</code>, <code>jmolMenu</code>, <code>jmolRadioGroup</code>
 
* <code>target</code>  applies to <code>jmolButton</code>, <code>jmolLink</code>, <code>jmolCheckbox</code>, <code>jmolMenu</code>, <code>jmolRadioGroup</code>
 
* <code>scriptWhenChecked</code>  applies only to <code>jmolCheckbox</code>
 
* <code>scriptWhenChecked</code>  applies only to <code>jmolCheckbox</code>
 
* <code>scriptWhenUnchecked</code>  applies only to <code>jmolCheckbox</code>
 
* <code>scriptWhenUnchecked</code>  applies only to <code>jmolCheckbox</code>
* <code>checked</code> applies only to <code>jmolRadioGroup</code>
+
* <code>checked</code> applies only to <code>jmolMenu</code> and <code>jmolRadioGroup</code>
 
* <code>item</code>  applies only to <code>jmolMenu</code> and <code>jmolRadioGroup</code>
 
* <code>item</code>  applies only to <code>jmolMenu</code> and <code>jmolRadioGroup</code>
 
* <code>vertical</code> applies only to <code>jmolRadioGroup</code>
 
* <code>vertical</code> applies only to <code>jmolRadioGroup</code>

Latest revision as of 21:01, 12 May 2024

Running Jmol / JSmol

Jmol (JSmol) Extension for MediaWiki, version 5

For general information on this Extension and particularly about how to install and set it up, visit the MediaWiki page.

This version of the Extension has been developed and tested with MediaWiki 1.32.

It will use by default JSmol objects in the HTML5 modality, but configuration may be adjusted to allow the Java modality (signed applet) or the WebGL modality (note that JSmol has limited functionality with the latter). All mentions of either Jmol or JSmol in this documentation are synonyms. Note also that the use of "applet" in names and references is maintained for legacy reasons but Java is not involved any more (unless forced by the user and allowed by the wiki administrator).

Please check the version you have installed in your wiki (browse to Special pages, then Version). Documentation for former versions of the Extension may be found in MediaWiki/ExtensionV3 and MediaWiki/ExtensionV4.


How to use the Jmol Extension

This applies to version 5 of the Extension

Simple tags

There are 4 tags that will render a link in the page that, when clicked by the user, will open a small window (pop-up) with a JSmol panel that displays a structure. No custom rendering or scripting on the structure is possible.

  • jmolFile
  • jmolMol
  • jmolSmiles
  • jmolPdb

See MediaWiki/Simple_Tags for details and demonstration with examples.

Full-featured tag

First level tag

The jmol tag encloses different subtags that offer more flexibility in how and when the model will be displayed, as well as its rendering or scripting.

Second-level subtags that insert a JSmol panel (either inline or in a popup)

  • Inline JSmol panel:
  • Pop-up JSmol panel:
    • jmolAppletButton
    • jmolAppletLink both will, upon user action, open a small window (pop-up) with a JSmol panel displaying the structure. See MediaWiki/Tags for Pop-up Models for details.

Second-level subtags that insert controls to act on one JSmol panel

See MediaWiki/Tags for Controls for details and examples.

  • jmolButton
  • jmolLink
  • jmolCheckbox
  • jmolMenu
  • jmolRadioGroup

Third-level subtags

These are relevant for jmolApplet, and some of them also for some other 2nd-level subtags:

  • text (displayed in the page or in the UI control)
  • script (commands for the molecule display in JSmol)
  • uploadedFileContents (model to be loaded)
  • urlContents
  • wikiPageContents
  • inlineContents
  • title (either tooltip for the UI control or text to be displayed above the JSmol panel)
  • caption (text to be displayed below the JSmol panel)
  • color (background color of JSmol panel)
  • size (dimensions of JSmol panel)
  • controls (display of optional buttons below the JSmol panel; value: any combination of spin | quality | labels | popup)
  • frame (border around the JSmol panel)
  • image (cover image to be displayed; replaced with the JSmol panel upon click)
  • pspeed (performance: higher speed vs. higher quality, relevant for mobile platforms)
  • name (applies to jmolApplet, needed when several JSmol panels are presemt in a page)

These are more specific and relevant just for some 2nd-level subtags:

  • target applies to jmolButton, jmolLink, jmolCheckbox, jmolMenu, jmolRadioGroup
  • scriptWhenChecked applies only to jmolCheckbox
  • scriptWhenUnchecked applies only to jmolCheckbox
  • checked applies only to jmolMenu and jmolRadioGroup
  • item applies only to jmolMenu and jmolRadioGroup
  • vertical applies only to jmolRadioGroup
  • menuheight applies only to jmolMenu

How to install the Jmol Extension

Please see MediaWiki/Installation

Former versions

For documentation on former versions of the Extension, see MediaWiki/ExtensionV3 and MediaWiki/ExtensionV4.

Test Pages

  1. A few basic examples of the <jmolFile>, <jmolPdb> and <jmolSmiles> tags.
  2. A demo page for the <jmol> tag
  3. Uploaded XYZ File -- includes test of <jmolCheckbox>, <jmolLink>, <jmolButton>, and <jmolMenu>
  4. Uploaded MDL Molfile
  5. Uploaded CML File
  6. Uploaded PDB File opening in a pop-up -- tests jmolAppletLink
  7. Inlined MDL Molfile
  8. Inlined PDB File
  9. Inlined CML File
  10. Load SMILES via script -- Includes test of signed applet and <jmolMenu>
  11. Test page (Brian's)

Contributors

AngelHerraez