JBrowseDev/StructuredTrackList
JBrowse is implemented using using the dojo toolkit [1]. The dojo files included in JBrowse are located in the jslib directory. The files are created through the following build process.
First, download a full, uncompressed source release [2].
Within the release,
cd util/buildscripts/
create the following file called profile/jbrowse_dojo.js.profile.js. This is the file which specifies what bundles should go into the compressed build ( will be created as ../../release/dojo/dijit/jbrowse_dojo.js). The dependencies match the dojo.require statements from the JBrowse JavaScript files.
dependencies = { layers: [ { // This is a specially named layer, literally 'dojo.js' // adding dependencies to this layer will include the modules // in addition to the standard dojo.js base APIs. name: "jbrowse_dojo.js", dependencies: [ "dojo.dnd.Source", "dojo.dnd.Moveable", "dojo.dnd.Mover", "dojo.dnd.move", "dijit.layout.ContentPane", "dijit.layout.BorderContainer", "dojo.data.ItemFileWriteStore", "dijit.tree.ForestStoreModel", "dijit.tree.dndSource", "dojo.cache", "dijit.Tree", "dijit.form.TextBox", "dijit.form.Button", "dijit.form.TabContainer" ] } ], prefixes: [ [ "dijit", "../dijit" ], ] }
Then run the following to create the build.
./build.sh profile=jbrowse_dojo action=release optimize=shrinksafe.keepLines layerOptimize=shrinksafe.keepLines
The release that was just created is found in ../../release/dojo. The required files should then be copied over to JBrowse's jslib directory.
Note: dijit/themes/tundra/tundra.css has been modified so cannot simply be copied over. Also dojo/jbrowse_dojo.js requires a few small changes to remove the default icons from the dijit.Tree. All other files haven't been modified.