Страницы: 1
<tree id="Tree" datasources="RDF:files" ref="file:///C:" flags="dont-build-content" hidecolumnpicker="true"> <treecols> <treecol id="Name" primary="true" hideheader="true" flex="1"/> </treecols> <template> <rule> <treechildren> <treeitem uri="rdf:*"> <treerow> <treecell label="rdf:http://home.netscape.com/NC-rdf#Name"/> </treerow> </treeitem> </treechildren> </rule> </template> </tree>
Этот код на XUL показывает файловую систему в виде дерева (как проводник). Только вот русские символы отображает некорректно. Кто-нибудь знает, как это можно исправить?
Отсутствует
Скорее всего, только "руками", прочтением и последующим перекодированием tree.database. Лично я других вариантов пока не вижу : (
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
database - это свойство элемента <tree>, содержит составной источник данных - localstore+источник данных, формирующий дерево. Возможно, что придётся записывать сначала в файл перед перекодировкой, т. к. на скорую руку сляпанный эксперимент с nsIRDFXMLSerializer:
<?xml version="1.0" encoding="windows-1251"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="mywindow" title="0" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="test();"> <![CDATA[ var outputStream = { data: "", close: function () {}, flush: function () {}, write: function (buffer, count) { this. data += buffer; return count; }, writeFrom: function (stream, count) {}, isNonBlocking: false }; function f () { var cds = document. getElementById ("Tree"). database; var dss = cds. GetDataSources (); var ds = null; var serializer = Components. classes ["@mozilla.org/rdf/xml-serializer;1"]. createInstance (Components. interfaces. nsIRDFXMLSerializer); while (dss. hasMoreElements ()) { ds = dss. getNext (); if (ds instanceof Components. interfaces. nsIRDFDataSource) { serializer. init (ds); serializer. QueryInterface (Components. interfaces. nsIRDFXMLSource); serializer. Serialize (outputStream); alert (outputStream. data); } } } ]]> <vbox> <tree flex="1" height="100" id="Tree" datasources="RDF:files" ref="file:///C:/" flags="dont-build-content" hidecolumnpicker="true"> <treecols> <treecol id="Name" primary="true" hideheader="true" flex="1"/> </treecols> <template> <rule> <treechildren> <treeitem uri="rdf:*"> <treerow> <treecell label="rdf:http://home.netscape.com/NC-rdf#Name"/> </treerow> </treeitem> </treechildren> </rule> </template> </tree> </vbox> <button label="clickme" onclick="f();"/> </window>
ломается на строчке
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Страницы: 1