<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
  <title>Последние темы Xpoint - Программирование::XUL</title>
  <link>http://xpoint.ru/forums/programming/XUL/forum.xhtml</link>
  <description>Анонс последних созданных тем на форум-сервере Xpoint</description>
  <language>ru</language>
  <copyright>Copyright 2003 Andrey Novikov</copyright>
<lastBuildDate>Sat, 13 Mar 2010 00:46:05 GMT</lastBuildDate>
  <docs>http://backend.userland.com/rss</docs>
  <generator>POEM(tm)</generator>
  <webMaster>novikov@xpoint.ru</webMaster>
  <ttl>10</ttl>

<item>
<title>Не могу сменить картинку твистера в дереве</title>
<dc:creator>papa-din</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44934.xhtml</link>
<description>treechildren::-moz-tree-twisty {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;list-style-image: url(&amp;quot;chrome://мойСкин/skin/мояКартинка.png&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
не работает. Почему?</description>
    <pubDate>Fri, 12 Mar 2010 12:13:38 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44934.xhtml</guid>
  </item>
<item>
<title>пример использования метода executeAsync() MozIStorageStatement</title>
<dc:creator>Driver</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44904.xhtml</link>
<description>Не могу понять как работает метод executeAsync() интерфейса mozIStorageStatement. Хочу выполнить асинхронно &lt;acronym title=&quot;Structured Query Language&quot;&gt;SQL&lt;/acronym&gt; оператор SELECT и получить результат.</description>
    <pubDate>Fri, 26 Feb 2010 15:30:04 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44904.xhtml</guid>
  </item>
<item>
<title>spellchecker dictionary obfuscation</title>
<dc:creator>Connie W.</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44851.xhtml</link>
<description>Задача: сделать расширение-спеллчекер, чтобы в нем не было словаря *.dic, а был бы какой-нибудь бинарный файл, который бы при загрузке конвертировался в памяти в формат Hunspell для проверки правописания.&lt;br /&gt;
Как сложно это сделать?&lt;br /&gt;
Спасибо.</description>
    <pubDate>Sat, 06 Feb 2010 12:18:42 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44851.xhtml</guid>
  </item>
<item>
<title>стиль для sizegrip</title>
<dc:creator>Alex</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44850.xhtml</link>
<description>У XUL окна рисуется sizegrip в углу (например как в Firefox). Можно ли этот sizegrip стилизовать через &lt;acronym title=&quot;Cascading Style Sheets (w3.org)&quot;&gt;CSS&lt;/acronym&gt;?</description>
    <pubDate>Fri, 05 Feb 2010 21:05:13 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44850.xhtml</guid>
  </item>
<item>
<title>Показать один флэш в разных окнах</title>
<dc:creator>Liseykina</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44831.xhtml</link>
<description>&lt;p&gt;Добрый день! очень нужна помощь.&lt;br /&gt;
Мне нужно показывать флеш-плеер во всплывающем окне в ff.&lt;br /&gt;
причем надо чтобы во всех открытых окнах ff использовался один экземпляр плеера, т.е. в тулбаре есть кнопка, при нажатии на кнопку появляется окно с плеером, при потере фокуса окно прячется, но плеер не убивается(музыка продолжает играть), если открыть новое окно ff и в нем плеер, то у плеера будет тоже состояние что и в предыдущем.&lt;/p&gt;

&lt;p&gt;По сути надо один раз создать плеер и везде его испольщовать, только я не знаю как это можно сделать&lt;/p&gt;

&lt;p&gt;пыталась добавлять флеш в panel и показывать ее&lt;br /&gt;
var music_pleer = document.createElementNS(&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;,&amp;quot;div&amp;quot;);&lt;br /&gt;
music_pleer.innerHTML=&amp;quot;&amp;lt;embed id=\&amp;quot;music_pleer_id\&amp;quot; src=\&amp;quot;_sp.swf\&amp;quot; width=\&amp;quot;320\&amp;quot; height=\&amp;quot;270\&amp;quot; type=\&amp;quot;application/x-shockwave-flash\&amp;quot; /&amp;gt; &lt;br /&gt;
panel_music.appendChild(music_div);&lt;/p&gt;

&lt;p&gt;но в таком варианте плеер реагирует только на двой клик мышью (баг, описан здесь &lt;a class=&quot;externalLink&quot; href=&quot;https://developer.mozilla.org/en/XUL/panel#pageText&quot;&gt;https://developer.mozilla.org/en/XUL/panel#pageText&lt;/a&gt;) и у меня не получилось с этим ничего сделать&lt;br /&gt;
ну и вопрос с одним экземпляром плеера на разные окна ff остается нерешенным.&lt;/p&gt;

&lt;p&gt;Очень надеюсь на помощь, потому что уже всю голову сломала...&lt;/p&gt;</description>
    <pubDate>Fri, 29 Jan 2010 11:24:27 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44831.xhtml</guid>
  </item>
<item>
<title>Многоэтажная система классов в XPCOM</title>
<dc:creator>Илья Коновалов</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44763.xhtml</link>
<description>&lt;p&gt;Допустим, я описал где-то интерфейс nsIPet:&lt;/p&gt;
&lt;pre&gt;interface nsIPet : nsISupports {
    attribute string name;
    readonly attribute string type;
    void eat(in string food);
}&lt;/pre&gt;
&lt;p&gt;Затем я написал на &lt;acronym title=&quot;Java Script&quot;&gt;JS&lt;/acronym&gt; модуль, в котором описал класс, реализующий такой интерфейс. Пока все в порядке.&lt;br /&gt;
Затем я описал интерфейсы nsICat и nsIDog:&lt;/p&gt;
&lt;pre&gt;interface nsICat : nsIPet {
    void meow();
}
interface nsIDog : nsIPet {
    void bark();
}&lt;/pre&gt;
&lt;p&gt;Теперь я хочу реализовать и их тоже, но при этом хочу максимально использовать уже существующий код. Проблема в том, что реализация класса pet находится (теоретически) в другом файле (из-за чего нельзя сказать cat.prototype = new pet()), а копировать/вставлять очень не хочется. Более того, если имеется текстовый файл вида&lt;/p&gt;
&lt;pre&gt;Tom cat
Jerry mouse
Spike dog&lt;/pre&gt;
&lt;p&gt;который надо пропарсить и получить список всех петов, не хочется сразу в зависимости от типа пета вызывать нужный конструктор. Вместо этого хочется усложнить QueryInterface класса pet, который бы проверял все &amp;quot;зарегистрированные&amp;quot; типы петов (мало ли, кто-нибудь реализует nsIMouse) и разрешал бы строить объекты cat или dog на основе уже существующего pet.&lt;/p&gt;

&lt;p&gt;Вот только как такое правильно сделать?&lt;/p&gt;</description>
    <pubDate>Thu, 31 Dec 2009 16:16:44 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44763.xhtml</guid>
  </item>
<item>
<title>Сортировка закладок в выпадающем меню &amp;quot;Закладки&amp;quot;</title>
<dc:creator>Дмитрий</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44722.xhtml</link>
<description>Как изменить (задать алгоритм) порядок сортировки в выпадающем меню &amp;quot;Закладки&amp;quot;? &lt;acronym title=&quot;Mozilla Firefox&quot;&gt;FF&lt;/acronym&gt;</description>
    <pubDate>Fri, 11 Dec 2009 23:29:00 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44722.xhtml</guid>
  </item>
<item>
<title>Нужно написать простой плагин для FireFox</title>
<dc:creator>Антон</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44552.xhtml</link>
<description>Привет всем. Помогите пожалуйста написать плагин для фирефокса, суть плагина проста нужно определить домен сайта, и если он являеться допустим mysite.ru то находим на открытой странице допустим слово Привет и заменяем его на Пока... вот и все... буду оч благодарен....</description>
    <pubDate>Tue, 06 Oct 2009 11:22:27 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44552.xhtml</guid>
  </item>
<item>
<title>XUL: диаграммы IDF0, IDF3, DFD</title>
<dc:creator>justtimofey</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44542.xhtml</link>
<description>&lt;p&gt;Совсем недавно столкнулся с этим языком и возник вопрос: можно ли на его основе создать приложение, рисующее подобные диаграммы в браузере? То есть можно ли, к примеру, задавать 2 точки, через которые потом будет прорисовываться линия, а так же менять уже отрисованные графические элементы?&lt;/p&gt;

&lt;p&gt;Заранее благодарен&lt;/p&gt;</description>
    <pubDate>Thu, 01 Oct 2009 11:40:37 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44542.xhtml</guid>
  </item>
<item>
<title>XUL: отловить смену раскладки клавиатуры</title>
<dc:creator>Just</dc:creator>
<category>Программирование::XUL</category>
    <link>http://xpoint.ru/forums/programming/XUL/thread/44520.xhtml</link>
<description>&lt;p&gt;Привет всем.&lt;/p&gt;

&lt;p&gt;Наверняка кто-нибудь сталкивался.&lt;br /&gt;
Думаю, некоторые хотя бы видели нечто подобное, или знают где копать...&lt;/p&gt;

&lt;p&gt;Начну &amp;quot;издалека&amp;quot;.&lt;br /&gt;
Хобби у меня&amp;nbsp;&amp;mdash; писать клавиатурне тренажеры.&lt;br /&gt;
Недавно сделал версию для Fire Fox.&lt;br /&gt;
Это не реклама, это, чтобы было понятно:&lt;br /&gt;
&lt;a class=&quot;externalLink&quot; href=&quot;https://addons.mozilla.org/ru/firefox/addon/14396&quot;&gt;https://addons.mozilla.org/ru/firefox/addon/14396&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;В общем, господа, кто-нибудь может помочь?&lt;/p&gt;

&lt;p&gt;Собственно, что мне нужно:&lt;br /&gt;
Мне необходимо отловить реакцию смены раскладки клавиатуры.&lt;br /&gt;
В каталоге bin после установки дополнения будет файлик kb.txt .&lt;br /&gt;
Есть в нем функция kb.changeMap().&lt;br /&gt;
Она в самом начале, седьмая строчка...&lt;/p&gt;

&lt;p&gt;Так вот, написанный код отлавливает реакцию нажатия клавишь Ctrl Alt Shift.&lt;br /&gt;
В Windows &amp;quot;всё чудесно&amp;quot; :)&lt;/p&gt;

&lt;p&gt;На моей любимой убунту, ради которой всё, собственно, и началось&amp;nbsp;&amp;mdash; &amp;quot;бида бида&amp;quot;...&lt;br /&gt;
Пришлось дописать туда кнопку 116 (F5), для принудительной смены раскладки.&lt;/p&gt;

&lt;p&gt;Попытки микроскопного изучения вопроса привели к тому, что в случае если в тренажере выбрано&lt;br /&gt;
такое же сочетание как и в системе, то нажатие какой-нибудь функциональной клавиши &lt;br /&gt;
сбрасывается в &amp;quot;0&amp;quot;. Например нажатие Ctrl + Alt сбрасывает Alt или Ctrl в keyCode == 0.&lt;br /&gt;
Еще одно замечание: в 0 сбрасывается то, что было нажато вторым.&lt;/p&gt;

&lt;p&gt;В результате вот прообраз будущего измененного кода этой функции:&lt;/p&gt;

&lt;p&gt;kb.changeMap = function(event){&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;var mc = kernel.vars.user.mapChanger;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;var ek = event.keyCode;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;var ctk = false, shk = false, alk = false;&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(event.ctrlKey || (ek == 17)){ ctk = true; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;if(event.shiftKey || (ek == 16)){shk = true; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;if(event.altKey || (ek == 18)){ alk = true; }&lt;/p&gt;

&lt;p&gt;//   document.title = &amp;quot;changeMap() &amp;quot; + ek + &amp;quot; &amp;quot; + ctk + &amp;quot; &amp;quot; + shk + &amp;quot; &amp;quot; + alk;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;if(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;((ek == 0) &amp;amp;&amp;amp; (navigator.platform.toLowerCase().indexOf('win') == -1)) &lt;br /&gt;
//Linux keyb switching function is fief ! it's stole ek!&lt;/p&gt;
&lt;table style=&quot;margin-left: 6ex;&quot;&gt;
&lt;tr&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(ek == 116)&lt;/p&gt;
&lt;table style=&quot;margin-left: 6ex;&quot;&gt;
&lt;tr&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(mc[0] == ctk) &amp;amp;&amp;amp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(mc[1] == shk) &amp;amp;&amp;amp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(mc[2] == alk)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;){&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(!kb.changeMap.stopControl){&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;kb.changeMap.stopControl = true;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;window.setTimeout(&amp;quot;kb.truStopControl()&amp;quot;, 200);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;kb.t_changeMap();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;Каменты в теле оставил для понятности.&lt;/p&gt;

&lt;p&gt;Но, что-то мне подсказывает, что это не совсем верно.&lt;br /&gt;
Во всяком случае такая &amp;quot;заплатка&amp;quot; перехватывает нажатие не всегда, а через раз.&lt;br /&gt;
Иногда &amp;quot;залипает&amp;quot; надолго.&lt;br /&gt;
Как показала практика 100% срабатывает если нажимать медленно и последовательно.&lt;br /&gt;
От быстрого нажатия&amp;nbsp;&amp;mdash; &amp;quot;залипает&amp;quot;, блин...&lt;/p&gt;

&lt;p&gt;Кто-нибудь может подсказать где здесь &amp;quot;собака порылась&amp;quot;?&lt;/p&gt;


&lt;p&gt;Да, самое, на &amp;quot;мой вкус&amp;quot; &amp;quot;чудовное&amp;quot; решение&amp;nbsp;&amp;mdash; просто прочесть текущую раскладку.&lt;br /&gt;
Читать ее, скажем, каждые 100 милисекунд...&lt;br /&gt;
Но как это сделать? Я так и не нашел никакого класса в &amp;quot;@nsI...&amp;quot;, который бы мне в этом помог.&lt;br /&gt;
Может кто-нибудь знает &amp;quot;такое&amp;quot; решение?&lt;/p&gt;

&lt;p&gt;Да, за работающий вариант Вы будете упомянуты в каментах к коду,&lt;br /&gt;
&amp;nbsp;и в &amp;quot;справочной системе&amp;quot; Вам будет отдельная спасибка.&lt;br /&gt;
Ну, если Вам это (спасибка == реклама?),  нужно.&lt;/p&gt;

&lt;p&gt;Собственно, это&amp;nbsp;&amp;mdash; основное...&lt;/p&gt;


&lt;p&gt;Уважаемый господин модератор, если сочтете нужным, то напишите мне, и я перенесу&lt;br /&gt;
нижеследующее в отдельный тред.&lt;br /&gt;
Но, просто сразу заводить его специально я не стал, т.к. речь, в общем-то, об одном и том же...&lt;/p&gt;

&lt;p&gt;Понимаете, я один, я не программист, и это просто хобби...&lt;/p&gt;

&lt;p&gt;В общем, камрады, если кто-нибудь реально захочет помочь:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Если у кого-нибудь есть мак... &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;У меня мака нет, и у друзей нет, и ставить хакинтошъ как-то, &lt;acronym title=&quot;In My Humble Opinion (По моему скромному мнению)&quot;&gt;IMHO&lt;/acronym&gt;, не совсем честно что ли...&lt;br /&gt;
Но я знаю, что в макоси есть мозилла...&lt;br /&gt;
А? Откликнитесь? Потестите?&lt;/p&gt;

&lt;ol&gt;
&lt;li value=&quot;2&quot;&gt;Я не знаю как сделать так, чтобы загрузка &lt;acronym title=&quot;Java Script&quot;&gt;JS&lt;/acronym&gt; кода и его &amp;quot;готовность к исполнению&amp;quot;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;были прозрачно очевидны. В HTA есть readyState. Здесь я его не нашел.&lt;br /&gt;
Поэтому использую try catch(e)... Жду, когда нужные функции подгрузятся...&lt;br /&gt;
Там же везде AJAX, значит асинхронность.&lt;br /&gt;
Конкретно весьма проблемный код получился в kernel.txt, функция kernel.fns.boot().&lt;br /&gt;
Предаврительно использую применительно к созданным скриптам parentNode != null...&lt;br /&gt;
Но это, явно&amp;nbsp;&amp;mdash; не то.&lt;br /&gt;
Если кто-нибудь может прокомментировать эту ситуацию...&lt;/p&gt;

&lt;ol&gt;
&lt;li value=&quot;3&quot;&gt;Последнее: если кто-нибудь реально знает как что-нибудь сделать &amp;quot;проще/лучше&amp;quot;,&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;и захочет принять участие&amp;nbsp;&amp;mdash; всегда рад ...&lt;/p&gt;

&lt;p&gt;:)&lt;/p&gt;


&lt;p&gt;Уважаемый господин модератор, я знаю что Вы лично весьма увлекаетесь XUL ;^)&lt;br /&gt;
Вам я лично Очень признателен, мне весьма помогало чтение кодов плагинов,&lt;br /&gt;
в разработке которых Вы принимали участие&lt;br /&gt;
(в основном меня интересовало размещение кнопки на панели и install.rdf)...&lt;br /&gt;
Спасибо Вам отдельное!&lt;br /&gt;
Если хотите, могу поставить ссылку у себя на сайте на этот чудесный форум (его я читаю давным давно).&lt;br /&gt;
Раньше здесь про мою поделку ничего не было, теперь есть этот тред, формально&amp;nbsp;&amp;mdash; это повод.&lt;br /&gt;
Когда-то на заре становления интернета cross-linking считался хорошей штукой...&lt;br /&gt;
Это будет &amp;quot;нормально&amp;quot;?&lt;/p&gt;

&lt;p&gt;Ну, вот, вроде-бы и&amp;nbsp;&amp;mdash; всё.&lt;br /&gt;
Всем, заранее, выражаю огромную признательность!&lt;/p&gt;

&lt;p&gt;Простите, &amp;quot;если что не так&amp;quot;, и за то, что &amp;quot;многа букаф&amp;quot;.&lt;/p&gt;







</description>
    <pubDate>Fri, 25 Sep 2009 09:21:20 GMT</pubDate>
<guid isPermaLink="false">http://xpoint.ru/forums/thread/44520.xhtml</guid>
  </item>
</channel>
</rss>
