:: Forum >> Version 1 >>

Mozilla XUL

I was wondering if anyone has used an AW Grid with Mozilla XUL extension. I have been able to do it by basically "embedding" a html file within a XUl iframe. The html file is much like some grid example with basic grid definition ... css and creating a grid object, defining number of rows and columns and some other initial configuration. Further interaction with the grid using xul controls/javascript was done in a awkward and roundabout way (using notifiers/observers). That was the only way I could get it to work. I tried embedding pretty much the html file example content directly within xul but it would not render the right.

So if anyone has any experience with this, I would appreciate it.

Thanks,
Charlie



harle11
Saturday, March 26, 2005
I am not expert in XUL, so here is the code I was trying:

<?xml version="1.0"?>
<
?xml-stylesheet href="file:grid.css" type="text/css"?>
<
window xmlns:html="http://www.w3.org/1999/xhtml"
  
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
  
onload="insertHTML()"
  
>
    <
hbox>
        <
button label="Test"></button>
    </
hbox>
    <
hbox height="200px" width="400px">
        <
html:div id="myBox"></html:div>
    </
hbox>

    <
html:script src="grid.js"/>
    <
html:style>
        
#myBox {
             -
moz-box-flex1;
             
positionrelative;
             
overflowhidden;
             
border:1px solid #ccc;
        }

        
#myGrid {
            
font:menu;
            
width100%;
            
height100%;
        }
    </
html:style>
    <
html:script>
        <![
CDATA[

        function 
insertHTML() {
            var 
div document.getElementById("myBox");

            var 
obj = new Active.Controls.Grid;
            
obj.setId("myGrid");
            
obj.setColumnCount(10);
            
obj.setRowCount(10);
            
obj.setDataText("-");

            var 
"";
            
+= "<html xmlns=\"http://www.w3.org/1999/xhtml\">";
            
+= obj.toString().replace(/&nbsp;/g"");
            
+= "</html>";

            var 
parser = new DOMParser();
            var 
doc parser.parseFromString(s"text/xml");
            
div.appendChild(doc.firstChild.firstChild);
        }
        ]]>
    </
html:script>
</
window>

 
You have to copy style files and grid.js to the same directory and then, well, you can see the grid and even resizing works :-) but not much else.

I found that neither range.createContextualFragment nor innerHTML work inside XUL (contrary to the documentation). If anyone can tell whats wrong here I would really appreciate it.

BTW: Why are you using AW grid in XUL instead of native grid ?????
Alex (ActiveWidgets)
Sunday, March 27, 2005



This topic is archived.

Back to support forum

Forum search