JBrowseDev/StructuredTrackList

From GMOD
Revision as of 14:59, 5 July 2011 by NFox (Talk | contribs)

Jump to: navigation, search

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.