On Oct 24, 8:55 pm, reverendlinux <
reverendli...@googlemail.com>
wrote:
In case anyone would like to contribute some ideas as to why my data
is not being displayed within trees contained in tabs, here is the
full code of the three associated files I'm having the trouble with.
Any help is greatly appreciated as this has got me completely stopped
in writing my app.
**************
1 - mags.txt - A text file containing tab-separated values. This is
an example of the files contents:
**************
Automobile Vol 1 Issue 3 June 1986
Beekeeper Weekly 1057 April 1999
Choppers NN December 1978
************************
2 - populate-listing.js - The Javascript file that reads mags.txt,
formats the data and is supposed to insert it into the proper tree in
listing.xul. IE - All magazines starting with A go into the A tab
(aList tree), etc.
************************
function doPopulate() {
// Path to data file
var magFile = /home/paul/Documents/mags.txt;
//Read Data File//
var file = Components.classes["@
mozilla.org/file/local;
1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath( magFile );
var istream = Components.classes["@
mozilla.org/network/file-input-
stream;1"].createInstance(Components.interfaces.nsIFileInputStream);
istream.init(file, 0x01, 0444, 0);
istream.QueryInterface(Components.interfaces.nsILineInputStream);
var mag = {}, mags = [], hasmore;
do {
hasmore = istream.readLine(mag);
mags.push(mag.value);
} while(hasmore);
istream.close();
var filtered = [];
var charCodeRange = {
start: 65,
end: 90
}
// Get all all titles starting with A, then B, etc
for (var cc = charCodeRange.start; cc <= charCodeRange.end; cc++) {
for (var z=0;z<mags.length;z++) {
entry = mags[z].split("\t");
if (entry[1].charAt(0) === String.fromCharCode(cc) ||
entry[1].charAt(0) === String.fromCharCode(cc).toLowerCase()) {
filtered.push(filtered[z]);
}
}
// Set target tree name (ie - aList, bList, etc)
var alphaList = String.fromCharCode(cc).toLowerCase()+"List";
populateTree(filtered,alphaList);
// Add to allList tree (last tab)
alphaList = "allList";
populateTree(filtered,alphaList);
}
} // end function
function populateTree(filtered,alphaList) {
//Write Data in listing.xul
document.getElementById(alphaList).view = treeView;
} // end function
**************
3 - listing.xul - The XUL window into which my data is supposed to be
displayed.
**************
<?xml version="1.0"?>
<?xml-stylesheet href="style.css" type="text/css"?>
<!DOCTYPE window>
<window
id="list"
name="list"
title="Magazine Listing"
xmlns:html="
http://www.w3.org/1999/xhtml"
xmlns="
http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload='doPopulate();'>
<script type="application/x-javascript" src="./scripts/populate-
listing.js" />
<tabbox id="MagTabs" flex="1" style="font-size: 10px;">
<tabs>
<tab id="a" label="A" flex="1" />
<tab id="b" label="B" flex="1" />
<tab id="c" label="C" flex="1" />
<tab id="d" label="D" flex="1" />
<tab id="e" label="E" flex="1" />
<tab id="f" label="F" flex="1" />
<tab id="g" label="G" flex="1" />
<tab id="h" label="H" flex="1" />
<tab id="i" label="I" flex="1" />
<tab id="j" label="J" flex="1" />
<tab id="k" label="K" flex="1" />
<tab id="l" label="L" flex="1" />
<tab id="m" label="M" flex="1" />
<tab id="n" label="N" flex="1" />
<tab id="o" label="O" flex="1" />
<tab id="p" label="P" flex="1" />
<tab id="q" label="Q" flex="1" />
<tab id="r" label="R" flex="1" />
<tab id="s" label="S" flex="1" />
<tab id="t" label="T" flex="1" />
<tab id="u" label="U" flex="1" />
<tab id="v" label="V" flex="1" />
<tab id="w" label="W" flex="1" />
<tab id="x" label="X" flex="1" />
<tab id="y" label="Y" flex="1" />
<tab id="z" label="Z" flex="1" />
<tab id="all" label="All" flex="1" />
</tabs>
<tabpanels>
<tabpanel>
<tree
editable="false"
ref=""
id="aList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="bList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="cList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="dList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="eList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="fList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="gList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="hList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="iList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="jList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="kList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="lList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="mList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="nList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="oList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="pList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="qList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="rList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="sList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="tList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="uList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="vList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="wList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="xList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="yList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="zList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
<tabpanel>
<tree
editable="false"
ref=""
id="allList"
enableColumnDrag="true"
hidecolumnpicker="true"
seltype="multiple"
flex="1"
style="font-size: 8pt;">
<treecols style="font-size: 9pt;">
<treecol id="title" label="Title" flex="1" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="issue" label="Issue" flex="2" persist="width
ordinal hidden" />
<splitter class="tree-splitter" />
<treecol id="date" label="Date" persist="width ordinal hidden" /
>
</treecols>
<treechildren id="child">
</treechildren>
</tree>
</tabpanel>
</tabpanels>
</tabbox>
</window>