Полезная информация

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.

№852608-06-2015 14:22:02

manuk
Участник
 
Группа: Members
Зарегистрирован: 17-10-2010
Сообщений: 275
UA: Palemoon 25.0

Re: Custom Buttons

Indomito, достаточно ЛКМ- активное окно в буфер. А АНК это не больно? В смысле у меня косорукого получится?

Отсутствует

 

№852708-06-2015 14:28:53

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

manuk пишет

Indomito, достаточно ЛКМ- активное окно в буфер. А АНК это не больно? В смысле у меня косорукого получится?

не больно, я тебе дам exe-файл :)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№852808-06-2015 14:31:32

manuk
Участник
 
Группа: Members
Зарегистрирован: 17-10-2010
Сообщений: 275
UA: Palemoon 25.0

Re: Custom Buttons

Indomito, Ок. Давай попробую.

Отредактировано manuk (08-06-2015 14:32:11)

Отсутствует

 

№852908-06-2015 14:33:25

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

manuk пишет

Indomito, Ок. Давай попробую.

и исходник и линк на язык))))


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№853008-06-2015 14:44:09

manuk
Участник
 
Группа: Members
Зарегистрирован: 17-10-2010
Сообщений: 275
UA: Palemoon 25.0

Re: Custom Buttons

Indomito, и FAQ :).

Отсутствует

 

№853108-06-2015 14:48:11

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

manuk пишет

Indomito, и FAQ :).

оно в комплекте поставляется ;)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№853208-06-2015 15:51:51

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

И так... не мучаясь особенно.

Кнопка в мозиллу или куда ещё

Выделить код

Код:

/*Initialization Code*/

this.leftclick = function(event) {

ExecuteExternalApps("C:\\test.exe",[]); // место запуска правишь под себя

}

 ExecuteExternalApps = function (path, args) {
    var file = Components.classes["@mozilla.org/file/local;1"]
        .createInstance(Components.interfaces.nsILocalFile);
     file.initWithPath(path);
    if(file.exists()) {
       var process = Components.classes["@mozilla.org/process/util;1"]
              .createInstance(Components.interfaces.nsIProcess);
       process.init(file);
        process.run(false, args, args.length);
      } else custombuttons. alertBox ("Файл не найден", path);
};


this.setAttribute('onclick', 'custombuttons.gQuot.mHandler(event, this)');
// this.setAttribute('ondblclick', 'custombuttons.gQuot.mHandler(event, this)'); резерв - двойной клик ЛКМ ПКМ и т.д.

Как назвалось test.exe :)   (работает где угодно, т.е. место - пофиг, откуда вызывать - пофиг)

Исходник на АНК - "Краткость сестра таланта" :D

Выделить код

Код:

Send, {Shift Down}{Alt Down}{PrintScreen Down}
 KeyWait, % A_ThisHotkey
Send, {Shift Up}{Alt Up}{PrintScreen Up}
ExitApp

У меня работает только такой скрипт

Выделить код

Код:

Send, {Shift Down}{Alt Down}{PrintScreen Down}
 KeyWait, % A_ThisHotkey
Send, {Shift Up}{Alt Up}{PrintScreen Up}
ExitApp

Ну дополнительно сохранение буфера обмена на диск

Выделить код

Код:

ClipSaved := ClipboardAll ; Сохраняет клипборд полностью в указанной переменной.
    ; ... здесь можно временно использовать клипборд, например,
    ; для сохранения текста Unicode с помощью Transform Unicode...

    ; ClipboardAll также может быть сохранена в файл (в этом режиме FileAppend всегда перезаписывает существующий файл):
    ; FileAppend, %ClipboardAll%, C:\Company Logo.clip ;  Путь, имя и расширения файла не имеют значения.

Clipboard := ClipSaved ; Восстанавливает клипборд.
ClipSaved = ; Освобождает память, когда клипборд громоздок.

Ну и справочная инфа - мой личный топик, там много что есть  AutoHotKey - скриптовый язык программирования или AutoHotkey — Википедия Тут много ссылок, хотя они у меня есть.

Вроде ничего не забыл :)

Отредактировано Indomito (08-06-2015 18:06:23)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№853308-06-2015 18:13:05

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 41.0

Re: Custom Buttons

becool пишет

запуская прогу только в момент снятия скрина

Ничто не мешает и IU так запускать. Даже из CB с параметрами

скрытый текст

Выделить код

Код:

/func=addimages — Add Images dialog
    /func=addfiles — Add Files dialog
    /func=fullscreenshot — capture the entire screen.
    /func=windowscreenshot — capture the active window.
    /func=windowhandlescreenshot — capture choosen window control (HWND)
    /func=freeformscreenshot — freeform screen capture
    /func=screenshotdlg — screenshot dialog
    /func=downloadimages — Image Downloader dialog
    /func=addfolder — Add folder dialog
    /func=paste — paste from clipboard
    /func=settings — settings dialog
    /func=reuploadimages — re-upload images dialog
    /func=shortenurl — URL shortening dialog
    /func=mediainfo — MediaInfo dialog
    /quickshot — снимок прямоугольной области
    /quick и /noquick — включение и выключение режима быстрого начала загрузки (пропуск страниц мастера)
    /mediainfo — показ технической информации для первого видео файла в командной строке
    /imageeditor — open file in the image editor (version >= 1.3.1.4276)
    /uninstall — удаление всех записей программы в системном реестре


idontnow.gif
Но это лирика. Всяк свое болото хвалит. :)


Возвращаясь к теме, подскажите, пожалуйста, с кнопкой:

скрытый текст

Выделить код

Код:

(function() {

   var tbb = [
      'greasemonkey-tbb',
      'useragentoverrider-button',
      'referrercontrol-button',
      'flashgot-tbb-all',
      'tiletabs-buttonmenu',
      'rainbow-toolbarbutton',
      's3gt-toolbar-button',
      'siif_toolbarbutton'
   ];

   for (i=0; i<tbb.length; i++) {

      var tbbm = document.getElementById(tbb[i]);
      var dm = document.getAnonymousElementByAttribute(tbbm, "class", "toolbarbutton-menu-dropmarker");
      var ico = document.getAnonymousElementByAttribute(tbbm, "class", "toolbarbutton-icon");

      if (tbbm) {
         tbbm.setAttribute('type', "menu");
         tbbm.setAttribute('oncontextmenu', 'if (event.target == this && !event.ctrlKey && !event.shiftKey) {event.preventDefault(); event.stopPropagation(); doCommand();}');
      };

      if (dm) {
         dm.setAttribute('hidden', 'true');
      };

      if (ico) {
         ico.setAttribute('style', 'padding-right: 0 !important; padding-left: 0 !important;');
      };

   };

})();


при инициализации после редактирования - все срабатывает как надо. Но вот при запуске браузера атрибуты для дропмаркера и иконок - не устанавливаются.

И еще, может кто подскажет, как сделать так, чтобы это наоборот, применялось ко всем кнопкам, но только на указанных панелях, и кроме тех, чьи id явно заданы в исключениях.

Спасибо.

Добавлено 08-06-2015 18:26:55
С первым разобрался (нашел решение с таймаутом в теме):

скрытый текст

Выделить код

Код:

(function() {
   var stopTime = Date.now() + 500;
   var tbb = [
      'greasemonkey-tbb',
      'useragentoverrider-button',
      'referrercontrol-button',
      'flashgot-tbb-all',
      'tiletabs-buttonmenu',
      'rainbow-toolbarbutton',
      's3gt-toolbar-button',
      'siif_toolbarbutton'
   ];

   setTimeout(function hideDropMarker() { 
      for (i=0; i<tbb.length; i++) {

          var tbbm = document.getElementById(tbb[i]);
          var dm = document.getAnonymousElementByAttribute(tbbm, "class", "toolbarbutton-menu-dropmarker");
          var ico = document.getAnonymousElementByAttribute(tbbm, "class", "toolbarbutton-icon");

          if (tbbm) {
             tbbm.setAttribute('type', "menu");
             tbbm.setAttribute('oncontextmenu', 'if (event.target == this && !event.ctrlKey && !event.shiftKey) {event.preventDefault(); event.stopPropagation(); doCommand();}');
          };

          if (dm) {
             dm.setAttribute('hidden', 'true');
          };

          if (ico) {
             ico.setAttribute('style', 'padding-right: 0 !important; padding-left: 0 !important;');
          };

      };

      if (Date.now() < stopTime)
            setTimeout(hideDropMarker, 10);
   }, 0);
})();


Э, ошибся, так вообще не работает. С этим тоже буду благодарен за помощь.
И опять ошибся - работает, но почему-то не всегда...
Все, разобрался: увеличил значение для stopTime - срабатывает всегда. :)

а вот вторая хотелка - не выходит. Буду благодарен за помощь.

Отредактировано turbot (08-06-2015 19:07:02)

Отсутствует

 

№853408-06-2015 20:03:23

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 41.0

Re: Custom Buttons

villa7
Это совсем для другого кнопка. :)

villa7 пишет

с "Снимок выделенной области"

Выделить код

Код:

var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
file.initWithPath("C:\\Program Files (x86)\\Image Uploader\\Image Uploader.exe"); //путь на свой меняйте
process.init(file);
process.run(false, ['/quickshot'], 1);

в "код".

Отсутствует

 

№853508-06-2015 20:43:08

villa7
Участник
 
Группа: Members
Зарегистрирован: 21-07-2012
Сообщений: 2235
UA: Firefox 39.0

Re: Custom Buttons

turbot
Вот, другое дело, а то мучился, запускал, выбирал, а сейчас оперативненько. Спасибо.
P.S. Блин, не обратил зразу внимание, есть один минус. Если через кнопку снимать, то не появляется кнопка "Загрузить на fastpic.ru", получается движений больше, а через запуск программы всё нормально.
68d895611731143ca3a26a165da27c2b.jpeg

Отредактировано villa7 (08-06-2015 20:58:12)


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№853609-06-2015 11:37:49

Vukmop
Участник
 
Группа: Members
Зарегистрирован: 02-01-2014
Сообщений: 6
UA: Firefox 38.0

Re: Custom Buttons

Lex1 пишет

Save snapshot to html
Кнопка сохраняет страницу с картинками или её часть, если она выделена, в html одним файлом.

Использую эту кнопку для сохранения сайтов. Многие сайты сохраняет нормально, но есть сайты которые не может сохранить напр. этот Может из-за объёма/размера. Огромная просьба автору и всем, возможно ли как-то это исправить/доработать!? Очень нужное дополнение! Кстати (могу ошибаться и это может быть только у меня), после попытки сохранения этого сайта из FF38 выбило/удало/сглючило/ плагины flash и java, их просто не стало в "Дополнениях/Плагины".
Всем Спасибо.

Отредактировано Vukmop (09-06-2015 11:38:58)

Отсутствует

 

№853709-06-2015 22:53:45

Kamui
Участник
 
Группа: Members
Зарегистрирован: 31-03-2011
Сообщений: 1796
UA: Firefox 38.0

Re: Custom Buttons

turbot

turbot пишет

И еще, может кто подскажет, как сделать так, чтобы это наоборот, применялось ко всем кнопкам, но только на указанных панелях, и кроме тех, чьи id явно заданы в исключениях.

Я вообще не спец, но предположу что в этом участке надо отрицание

Выделить код

Код:

if (tbbm) {
         tbbm.setAttribute('type', "menu");
Выделить код

Код:

if (!tbbm) {
         tbbm.setAttribute('type', "menu");

Даже не знаю как точно это делается, но вроде так.

turbot пишет

при инициализации после редактирования - все срабатывает как надо. Но вот при запуске браузера атрибуты для дропмаркера и иконок - не устанавливаются.

Возможно надо задержку сделать перед тем как устанавливать атрибуты.

Отсутствует

 

№853809-06-2015 23:13:47

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 41.0

Re: Custom Buttons

Kamui пишет

но предположу

Да нет, у меня загвоздка в том, чтобы применялось только кнопкам расположенных на указанных панелях. Плохо сформулировал просто. :)

Kamui пишет

задержку сделать

Ну да, так и сделал. Я же там дописал дальше про это. :)

Отсутствует

 

№853910-06-2015 15:02:15

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 31.0

Re: Custom Buttons

turbot пишет

как сделать так, чтобы это наоборот, применялось ко всем кнопкам, но только на указанных панелях, и кроме тех, чьи id явно заданы в исключениях

у меня загвоздка в том, чтобы применялось только кнопкам расположенных на указанных панелях. Плохо сформулировал просто.

Вроде всё понятно сформулировал, кроме того, в чём загвоздка.
Что у тебя показывает, например, такой алерт ?

скрытый текст

Выделить код

Код:

var selector = `
    #PersonalToolbar > toolbarbutton[type="menu-button"],
    #nav-bar-customization-target > toolbarbutton[type="menu-button"]:not(#bookmarks-menu-button),
    #TabsToolbar > toolbarbutton[type="menu-button"]
`;
var result = [];
for(var btn of document.querySelectorAll(selector)) {
    result.push(btn.id || "-----");
}
alert(result.join("\n"));

Отсутствует

 

№854010-06-2015 15:50:22

turbot
Участник
 
Группа: Members
Зарегистрирован: 09-10-2011
Сообщений: 2529
UA: Firefox 41.0

Re: Custom Buttons

Dumby пишет

кроме того, в чём загвоздка.

Вот в этом:

Выделить код

Код:

for(var btn of document.querySelectorAll(selector))

не знал, как такое сделать. Спасибо. :)

Отсутствует

 

№854112-06-2015 08:22:08

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

Кто знает - помогите.

FF периодически теряет фокус активного окна, как его заставить стать активным -  нужен только фрагмент кода, кнопка с таймером есть.

P.S. Я конечно могу это сделать внешней программой, но уж больно не хочется.


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№854212-06-2015 18:58:17

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

Indomito пишет

FF периодически теряет фокус активного окна, как его заставить стать активным -  нужен только фрагмент кода, кнопка с таймером есть.

Выделить код

Код:

window.focus();

Отсутствует

 

№854312-06-2015 19:54:31

LactariuS
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 10-10-2011
Сообщений: 20
UA: Firefox 38.0

Re: Custom Buttons

В эту тему обнаруженные баги можно кидать? Надеюсь, да.

Кнопки не сохраняются вообще ни х**. Создал несколько кнопок, сохранил. Перешёл на другую вкладку, вернулся в редактор кнопок - все пропали нахрен.
Если отредактировать кнопку - она дублируется непонятно зачем.

Отредактировано LactariuS (20-06-2015 13:13:57)

Отсутствует

 

№854413-06-2015 16:08:42

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

bunda1 пишет
Indomito пишет

FF периодически теряет фокус активного окна, как его заставить стать активным -  нужен только фрагмент кода, кнопка с таймером есть.

Выделить код

Код:

window.focus();

Спасибо.

Всё замечательно, но я не могу редактировать кнопки.
Это как лечиться?

С уважением.

Добавлено 13-06-2015 16:36:29

LactariuS пишет

В эту тему обнаруженные баги можно кидать? Хз точно, но уж точно не пойду регистрироваться там, где указано в описании дополнения.

Кнопки не сохраняются вообще ни . Перешёл на другую вкладку - всё кнопки пропали на йух.
Если отредактировать кнопку - она зачем-то дублируется.

Воспользуйся моей кнопкой для сохранения кнопок - FF Exp Imp CB(Firefox[все версии] и Thunderbird[все версии])

Основные функции:
- сохраняет все кнопки в HTML-файле с автогенерацией имени файла;
- сохраняет одну кнопку в HTML-файле, имя файла - имя кнопки;
- устанавливает и запоминает путь для чтения записи HTML-файлов;
- считывает HTML-файл по запомненному или выбранному пути.

Она не сохраняет только один вид кнопок, т.е. сохраняет, но линки не туда ссылаются, это подмена папки на кнопку.

Последняя версия от 19.01.2015

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3EFF%20Exp%20Imp%20CB%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAABV1JREFUSEutVmtsk1UYriF2qCSC4ibQDUcdaghCZAE2MGwosCEGJGBkKMQfWwISyBI0TqO/MBr5AQkalWiQAXGZLLu5revWtXa23bpetl7ZurbrdV2Za3dp13Ur8znfWbu1NAaSvnly8p7znfd5vvOe6xPz8/MVP/5ZIx4wuf2s1Fn6qqeP5HF/qTjF+vyH6uNfVYrUZiil0PRWD2grrlWzct6/JFQNppA6RiVUmUDOYu2+iKZIJGJSm1MIEIIW5IsC5j7LIIGVKRdg7o060XbaLVpaH45CC5BEwKIborBSR8uAOjobaY9W0YFAy7RobYs9Y4G6oUSB0FxkyGi3GR0om3RVR9XcHaoVCqVSa+yjUOlVil65VCkRy8VCcXtrB69F0PRXTdNm8Yq32jfUKqsQSBlsBpR2EMalKDgdcQ64HAwOqTlrKpc99TNrqN9GZ2x2dnZudi4UmpmanPL5/F6v1+PxuFxuSVv33kZOUSt3W10mE+t0mJhywAXCOIGpQMRtGabI62Gn/5a28gbL0m958GAeEIvF0qjJGLNYLE6nU9wu3f7r88VVOetuP+m2eKIMcDwgTBQYsXs99vsodynYa28sh8CgwRyJPIgtO6Q1GAxOTEyMjo663W673S7mSYukmR8oNuOHEBgFIUkiMOr+lyJfwX7p5jPpt1n3tKZweDYcDnd1dSkY6+npoaXVarXZbKIWSVEnBwLPXWfHwqmTKOAfn/Pd9/u9PpQQyLn9LAR0an0wOA1zOBwulws5wV8jOSaTCewwYbMYIyjpeR0CPq8fsQRwvH4QxqUI9YmxSQYTecq0jVUrOVUstbwXHQFj1AwGg16v12q1ZrMZgxA0ioql608qt0CAxjIgPEkEAhMBil1K9qbq1dl3l/VIFWNjPmQcjOCF6XQ6+BqNBoOABr+h45As+5RqKwRo7BTFeCBRYOR+IBQMTRNMQ2BLTXpO7XK5UIlpH7aNeMj8e+E4zS67yWEx2jA9BvW91uqO97q5H/e9sfo6ezoQCiGfFIEQCONShPrMTHgmFEaZr2Tn1r+4tWHVuboPz9aeOFtXApyrX8CF+pPn60+U15cAn9adPq54jQqQ2FA4DMwQJBGYgzEbareCvbORs7NpzY7mF4A8fjqwuy1jT8favaJ1+zszD0qykZnD3TlgxxIq1WyDAAklIJsSJEkEsMypYRW92ZJJ0MopaMkqbM4GsF2L+C8X8bn7eRsO8LLf4XGPSTYBWEJl+lwIxMKpkyjgcPmjvzCXr2IX8LIL+Fl72tZeqP5o3DOJpGvkeolAJvu7u7e7j0yAYuCy4LOr8i/umK/cGr50pfc7/DU9UegoQBg3B6jT9CGP+co0nF9AgTCzvOa0yCgoe0zDRCYRmA6Q2ccawFlULMwB9nWuxwgEfXzw0538KIbO4EkUsFhHsX7pWi6UZewXZR3+51VM5pnKYy3dDVQg9iIgY2ex6BlFHfqJtqAzSEAYlyLUY5tQ7ZFtb8vYJ1p/VL6x9PcjIs3CCGIUMeqHZagAqJII0DOEQm2Xv92Y+8ofnAPfFmI/PzwCEF1kLGEcVMDn9SUK9A8MJxyHS6sxgaWPj6VpSUgRYkEYlyLUR3AZ2OiZTg70pXiUOYhpozMYEgUMxmG3GdfZ0luJVkkLFVj6+//jo7Pb7AFh3Ag0fbhOyV2KS9U54CQgtyt80vKY26AM1zII4wSUCiteA0N4E5DHAXkZDJHHARzyzqDt9LlAng6k56LP9GFCFvs4QLggkP7u10KZXCoxphzNAgHIWaXf3DxYfq1B0JlaAZFUUnT+6pnvb5Ht9+VPd8krFe/I1AH//snlOyD/D9ukZ0RvxbAvAAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B/*Initialization%20Code*/%0A//%20%u0412%u0435%u0440%u0441%u0438%u044F%20%u043E%u0442%2019.01.2015%0A//%20%u0410%u0432%u0442%u043E%u0440%20-%20Indomito%0A%0A%0A//*********************************************************************%0A//%20----------------%u041C%u043E%u0436%u043D%u043E%20%u043C%u0435%u043D%u044F%u0442%u044C%20%u0437%u043D%u0430%u0447%u0435%u043D%u0438%u044F%20%u043A%u043E%u043D%u0441%u0442%u0430%u043D%u0442%20---------------------%0A//%20------------------------BEGIN%20DEF-----------------------------------%0Aconst%20cEICB%20%3D%20%22Export.Import.CB.type.HTML%22%3B%20//%20%u0416%u0435%u043B%u0430%u0442%u0435%u043B%u044C%u043D%u043E%20%u043D%u0435%20%u0442%u0440%u043E%u0433%u0430%u0442%u044C%2C%20%u0442.%u043A.%20%u0441%u0442%u0430%u0440%u044B%u0435%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u0431%u0443%u0434%u0443%u0442%20%u0441%u0447%u0438%u0442%u044B%u0432%u0430%u0442%u044C%u0441%u044F%20%u0441%20%u043E%u0448%u0438%u0431%u043A%u0430%u043C%u0438%0Aconst%20cPathEI%20%3D%20%22C%3A%5C%5CCustom%20Buttons%5C%5C%u0421%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u0435%20%u043A%u043D%u043E%u043F%u043E%u043A%5C%5C%22%3B%20//%20%u041D%u0435%u0442%20%u0441%u043C%u044B%u0441%u043B%u0430%20%u043C%u0435%u043D%u044F%u0442%u044C%2C%20%u0442%u0430%u043A%20%u043A%u0430%u043A%20%u043F%u0443%u0442%u044C%20%u043C%u043E%u0436%u043D%u043E%20%u043F%u0435%u0440%u0435%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0438%u0442%u044C%20%u043D%u0430%u0436%u0430%u0432%20%u0421%u041A%u041C%0Aconst%20cPrefName%20%3D%20%22Mozilla%20FF%20add-on%20to%20CB%20%22%3B%20//%20%u043F%u0440%u0435%u0444%u0438%u043A%u0441%20%u0437%u0430%u0433%u043E%u043B%u043E%u0432%u043A%u0430%20%u0434%u043B%u044F%20%u0443%u0442%u043E%u0447%u043D%u0435%u043D%u0438%u044F%20Mozilla%20FireFox%20%u0438%u043B%u0438%20Mozilla%20Thunderbird%0Aconst%20cPathSetMsg%20%3D%20%22%u041D%u0430%u0434%u043E%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u0438%u0442%u044C%20%u043F%u0443%u0442%u044C%20%u0434%u043B%u044F%20%u0447%u0442%u0435%u043D%u0438%u044F/%u0437%u0430%u043F%u0438%u0441%u0438%20%u043A%u043D%u043E%u043F%u043E%u043A%22%3B%0Aconst%20csExpT%20%3D%20%22%u042D%u043A%u0441%u043F%u043E%u0440%u0442%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0432%20HTML%22%3B%0Aconst%20csExpOneT%20%3D%22%u042D%u043A%u0441%u043F%u043E%u0440%u0442%20%u043E%u0434%u043D%u043E%u0439%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u0432%20HTML%22%3B%0Aconst%20csExpOneMsg%20%3D%22%u0412%u044B%u0431%u0435%u0440%u0438%u0442%u0435%20%u0438%u043C%u044F%20%u043A%u043D%u043E%u043F%u043A%u0438%22%3B%20%0Aconst%20csImpT%20%3D%20%22%u0418%u043C%u043F%u043E%u0440%u0442%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0438%u0437%20HTML%22%3B%0Aconst%20csSetIET%20%3D%20%22%u041A%u0430%u0442%u0430%u043B%u043E%u0433%20%u0434%u043B%u044F%20%u042D%u043A%u0441%u043F%u043E%u0440%u0442%u0430/%u0418%u043C%u043F%u043E%u0440%u0442%u0430%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0432/%u0438%u0437%20HTML%22%3B%0Aconst%20dProc%20%3D%200.30%3B%20//%20%u043F%u0440%u043E%u0446%u0435%u043D%u0442%20%u043E%u0442%u043A%u0440%u044B%u0442%u0438%u044F%20%u0432%u044B%u0431%u043E%u0440%u0430%20%u043E%u043A%u043D%u0430%20%u043A%u043D%u043E%u043F%u043E%u043A%2C%20%u043F%u0440%u0438%20dProc%20%3D%200.30%20%u044D%u0442%u043E%2030%25%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u043E%u0442%20%u043E%u0431%u0449%u0435%u0433%u043E%20%u0447%u0438%u0441%u043B%u0430%0Aconst%20csNoNameBT%20%3D%20%22%u0414%u043B%u044F%20%u044D%u0442%u043E%u0439%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u043D%u0435%20%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0435%u043D%u043E%20%u0438%u043C%u044F%22%3B%0Aconst%20csNoBT%20%3D%20%22%u042D%u0442%u043E%20%u043D%u0435%20%u043A%u043D%u043E%u043F%u043A%u0430%22%3B%0Aconst%20spcTn%20%3D%20%22%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%22%3B%0Aconst%20spcTm%20%3D%20%22%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%u041D%u0435%20%u0430%u043A%u0442%u0438%u0432%u043D%u044B%u0435%20%u043A%u043D%u043E%u043F%u043A%u0438%22%3B%0Athis.tooltipText%20%3D%20%22%u0418%u043C%u043F%u043E%u0440%u0442%20%u0438%20%u042D%u043A%u0441%u043F%u043E%u0440%u0442%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0438%u0437/%u0432%20HTML-%u0444%u0430%u0439%u043B%5Cn%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%u2014%5CnShift+Left%20%20%u2014%20%20%u0417%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u043E%u0434%u043D%u0443%20%u043A%u043D%u043E%u043F%u043A%u0443%22+%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5CnLeft%20%20%20%20%20%20%20%20%20%20%20%20%20%u2014%20%20%u0417%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u0432%u0441%u0435%20%u043A%u043D%u043E%u043F%u043A%u0438%22+%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5CnMiddle%20%20%20%20%20%20%20%20%u2014%20%20%u041A%u0430%u0442%u0430%u043B%u043E%u0433%20%u0437%u0430%u043F%u0438%u0441%u0438/%u0447%u0442%u0435%u043D%u0438%u044F%20%u043A%u043D%u043E%u043F%u043E%u043A%22+%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%5CnRight%20%20%20%20%20%20%20%20%20%20%20%u2014%20%20%u0421%u0447%u0438%u0442%u0430%u0442%u044C%20%u0432%u0441%u0435%20%u043A%u043D%u043E%u043F%u043A%u0438%22%3B%0A//%20-------------------------END%20DEF-----------------------------------%0A%0A//*********************************************************************%0A//%20%u041E%u0431%u0440%u0430%u0431%u043E%u0442%u0447%u0438%u043A%20%u0441%u043E%u0431%u044B%u0442%u0438%u0439%20%u043F%u043E%20%u043D%u0430%u0436%u0430%u0442%u0438%u044E%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u043C%u044B%u0448%u0438%20%u0441/%u0431%u0435%u0437%20%u043C%u043E%u0434%u0438%u0444%u0438%u043A%u0430%u0442%u043E%u0440%u0430%u043C%u0438%0A//*********************************************************************%0Athis.onclick%20%3D%20function%28event%29%20%7B%0A%20%20%20%20if%28event.button%20%3D%3D%200%20%26%26%20event.shiftKey%29%20%7B%0A//%20%u0414%u0435%u0439%u0441%u0442%u0432%u0438%u0435%20%u043F%u0440%u0438%20%u043A%u043B%u0438%u043A%u0435%20shift+%u041B%u041A%u041C%0AshKeylbMouse%28%29%3B%0A%20%20%20%20%7D%0A%20%20%20%20else%20if%28event.button%20%3D%3D%200%29%20%7B%0A//%20%u0414%u0435%u0439%u0441%u0442%u0432%u0438%u0435%20%u043F%u0440%u0438%20%u043A%u043B%u0438%u043A%u0435%20%u041B%u041A%u041C%0AlbMouse%28%29%3B%0A%20%20%20%20%7D%0A%20%20%20%20else%20if%28event.button%20%3D%3D%201%29%20%7B%0A%20%20%20%20%20%20%20%20//%20%u0414%u0435%u0439%u0441%u0442%u0432%u0438%u0435%20%u043F%u0440%u0438%20%u043A%u043B%u0438%u043A%u0435%20%u0421%u041A%u041C%0AmbMouse%28%29%3B%0A%20%20%20%20%7D%0A%20%20%20%20else%20if%28event.button%20%3D%3D%202%20%26%26%20%21event.ctrlKey%20%26%26%21event.shiftKey%20%26%26%20%21event.altKey%20%26%26%20%21event.metaKey%29%20%7B%0A%20%20%20%20%20%20%20%20//%20%u0414%u0435%u0439%u0441%u0442%u0432%u0438%u0435%20%u043F%u0440%u0438%20%u043A%u043B%u0438%u043A%u0435%20%u041F%u041A%u041C%20%u0431%u0435%u0437%20%u043C%u043E%u0434%u0438%u0444%u0438%u043A%u0430%u0442%u043E%u0440%u043E%u0432%0ArbMouse%28%29%3B%0A%20%20%20%20%7D%0A%7D%3B%0Athis.oncontextmenu%20%3D%20function%28event%29%20%7B%0A%20%20%20%20if%28event.button%20%3D%3D%202%20%26%26%20%21event.ctrlKey%20%26%26%21event.shiftKey%20%26%26%20%21event.altKey%20%26%26%20%21event.metaKey%29%20%7B%0A%20%20%20%20%20%20%20%20//%20%u0411%u043B%u043E%u043A%u0438%u0440%u0443%u0435%u043C%20%u043A%u043E%u043D%u0442%u0435%u043A%u0441%u0442%u043D%u043E%u0435%20%u043C%u0435%u043D%u044E%20%u043F%u0440%u0438%20%u043A%u043B%u0438%u043A%u0435%20%u041F%u041A%u041C%20%u0431%u0435%u0437%20%u043C%u043E%u0434%u0438%u0444%u0438%u043A%u0430%u0442%u043E%u0440%u043E%u0432%0A%20%20%20%20%20%20%20%20event.preventDefault%28%29%3B%0A%20%20%20%20%20%20%20%20event.stopPropagation%28%29%3B%0A%20%20%20%20%7D%0A%7D%3B%0A%0A//*********************************************************************%0A//%u0417%u0430%u043F%u0438%u0441%u044C%20%u043E%u0434%u043D%u043E%u0439%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u043F%u043E%20%u0432%u044B%u0431%u043E%u0440%u0443%0Afunction%20shKeylbMouse%28%29%7B%0A%0Aif%20%28chkPath%28Application.prefs.getValue%28cEICB%2C%200%29%29%20%21%3D%201%29%0A%20%20%20%7B%0A%20%20%20custombuttons.%20alertBox%20%28csExpT%2C%20cPathSetMsg%29%3B%0A%20%20%20return%3B%0A%20%20%20%7D%0A%0Avar%20name%20%3D%20%5B%5D%3B%20//%u043C%u0430%u0441%u0441%u0438%u0432%20%u0438%u043C%u0451%u043D%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0434%u043B%u044F%20%u0432%u044B%u0432%u043E%u0434%u0430%0Avar%20namea%20%3D%20%5B%5D%3B%20//%u043C%u0430%u0441%u0441%u0438%u0432%20%u0438%u043C%u0451%u043D%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0430%u043A%u0442%u0438%u0432%u043D%u044B%u0445%0Avar%20namep%20%3D%20%5B%5D%3B%20//%u043C%u0430%u0441%u0441%u0438%u0432%20%u0438%u043C%u0451%u043D%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u043D%u0435%20%u0430%u043A%u0442%u0438%u0432%u043D%u044B%u0445%0Avar%20i%2Cj%2C%20buts%3B%0A%0Abuts%20%3D%20document.%20getElementsByTagName%20%28%22toolbarbutton%22%29%3B%0Afor%20%28i%20%3D%200%2C%20j%20%3D%200%3B%20i%20%3C%20buts.%20length%3B%20i++%29%0A%20%20%20%20if%20%28buts%5Bi%5D.getAttribute%28%22id%22%29.indexOf%28%22custombuttons-button%22%29%3D%3D0%20%26%26%20typeof%28buts%20%5Bi%5D.name%29%3D%3D%22string%22%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20namea%5Bj++%5D%20%3D%20buts%20%5Bi%5D.%20name%3B%0Anamea.sort%28cmp%29%3B%0Anamea.splice%28j%2C0%2CspcTn%2CspcTm%2CspcTn%29%3B%0A%0Abuts%20%3D%20custombuttons.%20palette.%20getElementsByTagName%20%28%22toolbarbutton%22%29%3B%0Afor%20%28%20i%20%3D%200%2C%20j%20%3D%200%3B%20i%20%3C%20buts.%20length%3B%20i++%29%0A%20%20%20%20if%20%28buts%20%5Bi%5D.%20getAttribute%20%28%22id%22%29.%20indexOf%20%28%22custombuttons-button%22%29%20%3D%3D%200%26%26typeof%28buts%20%5Bi%5D.getAttribute%20%28%22label%22%29%29%3D%3D%22string%22%29%0A%20%20%20%20%20%20%20%20%20%20%20%20namep%5Bj++%5D%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22label%22%29%3B%0A%0Anamep.sort%28cmp%29%3B%0Aname%3Dnamea.concat%28namep%29%3B%0A%0A//%20%u041E%u0442%u043A%u0440%u044B%u0442%u0438%u0435%20%u043C%u043E%u0434%u0430%u043B%u044C%u043D%u043E%u0433%u043E%20%u043E%u043A%u043D%u0430%20%u0432%u044B%u0431%u043E%u0440%u0430%20%u0438%u043C%u0451%u043D%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0441%20%u0443%u0447%u0451%u0442%u043E%u043C%20%u043E%u0431%u0449%u0435%u0433%u043E%20%u0447%u0438%u0441%u043B%u0430%20%u043A%u043D%u043E%u043F%u043E%u043A%0Avar%20rowsCount%20%3D%20name.length%20*%20dProc%3B%20%0Avar%20oSvc%20%3D%20Components.classes%5B%22@mozilla.org/observer-service%3B1%22%5D%0A%20%20%20%20.getService%28Components.interfaces.nsIObserverService%29%3B%0Avar%20observer%20%3D%20%7B%0A%20%20%20%20added%3A%20true%2C%0A%20%20%20%20observe%3A%20function%28subject%2C%20topic%2C%20data%29%20%7B%0A%20%20%20%20%20%20%20%20subject.addEventListener%28%22load%22%2C%20this%2C%20false%29%3B%0A%20%20%20%20%7D%2C%0A%20%20%20%20handleEvent%3A%20function%28e%29%20%7B%0A%20%20%20%20%20%20%20%20var%20doc%20%3D%20e.target%3B%0A%20%20%20%20%20%20%20%20var%20win%20%3D%20doc.defaultView%3B%0A%20%20%20%20%20%20%20%20win.removeEventListener%28%22load%22%2C%20this%2C%20false%29%3B%0A%20%20%20%20%20%20%20%20if%28doc.location.href%20%21%3D%20%22chrome%3A//global/content/selectDialog.xul%22%29%0A%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20oSvc.removeObserver%28this%2C%20%22domwindowopened%22%29%3B%0A%20%20%20%20%20%20%20%20this.added%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20var%20list%20%3D%20doc.getElementById%28%22list%22%29%3B%0A%20%20%20%20%20%20%20%20if%28list%29%0A%20%20%20%20%20%20%20%20%20%20%20%20list.setAttribute%28%22rows%22%2C%20rowsCount%29%3B%0A%20%20%20%20%7D%0A%7D%3B%0AoSvc.addObserver%28observer%2C%20%22domwindowopened%22%2C%20false%29%3B%0A%0Avar%20selected%20%3D%20%7B%7D%3B%0Avar%20bRt%20%3D%20Components.classes%5B%22@mozilla.org/embedcomp/prompt-service%3B1%22%5D%0A%20%20%20%20%20%20%20%20.getService%28Components.interfaces.nsIPromptService%29%0A%20%20%20%20%20%20%20%20.select%28window%2C%20csExpOneT%2C%20csExpOneMsg%2C%20name.length%2C%20name%2C%20selected%20%29%0Aobserver.added%20%26%26%20oSvc.removeObserver%28observer%2C%20%22domwindowopened%22%29%3B%0A%0Aif%20%28%21bRt%29%20return%3B%20//%20%u041E%u0442%u043C%u0435%u043D%u0430%20-%20%u0432%u044B%u0445%u043E%u0434%0A%20else%20if%20%28spcTm%3D%3Dname%5Bselected.value%5D%7C%7CspcTn%3D%3Dname%5Bselected.value%5D%29%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20custombuttons.%20alertBox%20%28csExpOneT%2C%20csNoBT%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20else%20if%20%28name%5Bselected.value%5D%3D%3D%22%22%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20custombuttons.%20alertBox%20%28csExpOneT%2C%20csNoNameBT%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%20%20%20%20%20%20%20%20%20%0A%20%0A//OK%20%20-%20%u043D%u0430%u0447%u0438%u043D%u0430%u0435%u043C%20%u043E%u0431%u0440%u0430%u0431%u043E%u043A%u0443%20%u0438%20%u0437%u0430%u043F%u0438%u0441%u044C%20%u0432%u044B%u0431%u0440%u0430%u043D%u043D%u043E%u0439%20%u043A%u043D%u043E%u043F%u043A%u0438%0Avar%20mydir%3DApplication.prefs.getValue%28cEICB%2C%200%29%2C%20myfilename%3Dname%20%5Bselected.value%5D%3B%0A%20%20var%20fp%20%3D%20Components.classes%5B%22@mozilla.org/filepicker%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20.createInstance%28Components.interfaces.nsIFilePicker%29%3B%0A%20%20fp.init%28window%2C%20csExpOneT%2C%20fp.modeSave%29%3B%0A%20%20var%20dd%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20.createInstance%28Components.interfaces.nsILocalFile%29%3B%0Add.initWithPath%28mydir%29%3B%20//%u041F%u0443%u0442%u044C%20%u043A%u043E%u0442%u043E%u0440%u044B%u0439%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043B%u0435%u043D%0Afp.displayDirectory%20%3D%20dd%3B%0Afp.defaultString%20%3D%20cPrefName+myfilename+%22.html%22%3B%0Aif%28fp.show%28%29%20%21%3D%20fp.returnCancel%29%0A%20%20%20%20%20%20%20%20custombuttons.%20alertBox%20%28csExpOneT%2C%20%22%u041A%u043D%u043E%u043F%u043A%u0430%20%22+myfilename+%22%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0430%20%u0432%20%5Cn%22+%20saveCB%28fp.file.path%2C%20myfilename%29%29%3B%0A%0A//******%20DefSub%0A//%u0421%u043E%u0440%u0442%u0438%u0440%u043E%u0432%u043A%u0430%20%u0441%u0442%u0440%u043E%u043A%20%u043F%u043E%20%u0432%u043E%u0437%u0440%u0430%u0441%u0442%u0430%u043D%u0438%u044E%0Afunction%20cmp%28a%2C%20b%29%20%7B%0A%20%20if%20%28a.toUpperCase%28%29%20%3E%20b.toUpperCase%28%29%29%20return%201%3B%0A%20%20if%20%28a.toUpperCase%28%29%20%3C%20b.toUpperCase%28%29%29%20return%20-1%3B%0A%20%20return%200%3B%0A%7D%3B%0A//******%20EndDefSub%0A%0A%7D%3B%0A%0A//*********************************************************************%0A//%u0417%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u043A%u043D%u043E%u043F%u043A%u0438%0Afunction%20lbMouse%28%29%7B%0Aif%20%28chkPath%28Application.prefs.getValue%28cEICB%2C%200%29%29%20%21%3D%201%29%20custombuttons.%20alertBox%20%28csExpT%2C%20cPathSetMsg%29%3B%0A%20else%20%20%7B%0Avar%20mydir%3DApplication.prefs.getValue%28cEICB%2C%200%29%2C%20myfilename%20%3D%20GenFileName%28%29%3B%0A%20%20var%20fp%20%3D%20Components.classes%5B%22@mozilla.org/filepicker%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20%20.createInstance%28Components.interfaces.nsIFilePicker%29%3B%0A%20%20fp.init%28window%2C%20csExpT%2C%20fp.modeSave%29%3B%0A%20%20var%20dd%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D%0A%20%20%20%20%20%20%20%20%20.createInstance%28Components.interfaces.nsILocalFile%29%3B%0Add.initWithPath%28mydir%29%3B%20//%u041F%u0443%u0442%u044C%20%u043A%u043E%u0442%u043E%u0440%u044B%u0439%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043B%u0435%u043D%0Afp.displayDirectory%20%3D%20dd%3B%0Afp.defaultString%20%3D%20myfilename%3B%0Aif%28fp.show%28%29%20%21%3D%20fp.returnCancel%29%0A%20%20%20%20%20%20%20%20custombuttons.%20alertBox%20%28csExpT%2C%20%22%u041D%u0430%u0431%u043E%u0440%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0441%u043E%u0445%u0440%u0430%u043D%u0451%u043D%20%u0432%20%5Cn%22+%20saveCB%28fp.file.path%2C%20%22%22%29%29%3B%0A%20%20%7D%0A%7D%3B%0A%0A//*********************************************************************%0A//%u0421%u0447%u0438%u0442%u0430%u0442%u044C%20%u043A%u043D%u043E%u043F%u043A%u0438%0Afunction%20rbMouse%28%29%7B%0Aif%20%28chkPath%28Application.prefs.getValue%28cEICB%2C%200%29%29%20%21%3D%201%29%20custombuttons.%20alertBox%20%28csImpT%2C%20cPathSetMsg%29%3B%0A%20%20else%0A%20%20%7B%0A%20%20%20var%20mydir%3DApplication.prefs.getValue%28cEICB%2C%200%29%3B%20//%2C%20myfilename%20%3D%20GenFileName%28%29%3B%0A%20%20%20var%20fp%20%3D%20Components.classes%5B%22@mozilla.org/filepicker%3B1%22%5D%0A%20%20%20%20%20%20.createInstance%28Components.interfaces.nsIFilePicker%29%3B%0A%20%20%20fp.init%28window%2C%20csImpT%2C%20fp.modeOpen%29%3B%0A%20%20%20var%20dd%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D%0A%20%20%20%20%20%20%20.createInstance%28Components.interfaces.nsILocalFile%29%3B%0A%20%20%20dd.initWithPath%28mydir%29%3B%0A%20%20%20fp.displayDirectory%20%3D%20dd%3B%0A%20%20%20if%28fp.show%28%29%20%21%3D%20fp.returnCancel%29%20getBrowser%20%28%29.%20selectedTab%20%3D%20getBrowser%20%28%29.%20addTab%20%28fp.file.path%29%3B%0A%20%20%7D%0A%7D%3B%0A%0A%0A//*********************************************************************%0A//%u0423%u0441%u0442%u0430%u043D%u043E%u0432%u0438%u0442%u044C%20%u043A%u0430%u0442%u0430%u043B%u043E%u0433%20%u0437%u0430%u043F%u0438%u0441%u0438/%u0447%u0442%u0435%u043D%u0438%u044F%0Afunction%20mbMouse%28%29%7B%0Avar%20sPathEI%3DApplication.prefs.getValue%28cEICB%2C%200%29%2C%20myfilename%20%3D%20GenFileName%28%29%3B%0Aif%20%28chkPath%28sPathEI%29%20%3D%3D%20-1%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20custombuttons.%20alertBox%20%28csSetIET%2C%20%22%u043F%u0435%u0440%u0435%u043C%u0435%u043D%u043D%u0430%u044F%20%20%20%22+cEICB+%22%20%u0443%u0436%u0435%20%u0441%u0443%u0449%u0435%u0441%u0442%u0432%u0443%u0435%u0442%20%u0438%20%u0437%u0430%u043D%u044F%u0442%u0430%22%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20return%3B%20//%u041D%u0435%u043B%u044C%u0437%u044F%20%u0441%u043E%u0437%u0434%u0430%u0432%u0430%u0442%u044C%20%u0442%u043A%20%u043F%u0435%u0440%u0435%u043C%u0435%u043D%u043D%u0430%u044F%20%u0443%u0436%u0435%20%u0437%u0430%u043D%u044F%u0442%u0430%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%3B%0A//%20%u0414%u0438%u0430%u043B%u043E%u0433%20%u0441%u043E%u0437%u0434%u0430%u043D%u0438%u044F%20%u0438%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043A%u0438%20%u043F%u0443%u0442%u0438%0Avar%20fp%20%3D%20Components.classes%5B%22@mozilla.org/filepicker%3B1%22%5D%0A%20%20%20%20.createInstance%28Components.interfaces.nsIFilePicker%29%3B%0Afp.init%28window%2C%20csSetIET%2C%20fp.modeGetFolder%29%3B%0Avar%20dd%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D%0A%20%20%20%20.createInstance%28Components.interfaces.nsILocalFile%29%3B%0Add.initWithPath%28sPathEI%29%3B%0Afp.displayDirectory%20%3D%20dd%3B%0Aif%28fp.show%28%29%20%3D%3D%20fp.returnCancel%29%20return%3B%0A%20%20%20else%0A%20%20%20%20%7B%0A%20%20%20%20sPathEI%20%3D%20fp.file.path%0A%20%20%20%20Application.prefs.setValue%28cEICB%2C%20sPathEI+%3D%28sPathEI%5BsPathEI.length-1%5D%20%21%3D%20%22%5C%5C%22%29%3F%22%5C%5C%22%3A%22%22%29%3B%0A%20%20%20%20custombuttons.%20alertBox%20%28csSetIET%2C%20%22%u0423%u0441%u0442%u0430%u043D%u043E%u0432%u043B%u0435%u043D%20%u043F%u0443%u0442%u044C%20%u0434%u043B%u044F%20%u0437%u0430%u043F%u0438%u0441%u0438/%u0447%u0442%u0435%u043D%u0438%u044F%20%5Cn%20%22%20+%20sPathEI%29%3B%0A%20%20%20%20%7D%0A%7D%3B%0A%0A//*********************************************************************%0A//chkPath%20%u043F%u0440%u043E%u0432%u0435%u0440%u044F%u0435%u0442%20%u043F%u0443%u0442%u044C%20%u0438%20%u0442%u0434%2C%20%u043C%u043E%u0436%u043D%u043E%20%u0434%u043E%u0431%u043E%u0432%u043B%u044F%u0442%u044C%20%u043F%u0440%u043E%u0432%u0435%u0440%u043A%u0438%2C%20%u0442%u043A%20%u043D%u0435%20%u0432%u0441%u0451%20%u043F%u0440%u043E%u0432%u0435%u0440%u044F%u0435%u0442%u0441%u044F.%0A//return%20%3D%20-10%20%u043E%u0448%u0438%u0431%u043A%u0430%20%u0432%20%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0435%u043D%u0438%u0438%20%u0441%u0438%u043D%u0442%u0430%u043A%u0441%u0438%u0441%u0430%20%u043F%u0443%u0442%u0438%20%28%u043D%u0435%20%u0438%u0441%u043F%u043E%u043B%u044C%u0437%u0443%u0435%u0442%u0441%u044F%29%0A//return%20%3D%20-2%20%20%u043E%u0448%u0438%u0431%u043E%u0447%u043D%u044B%u0439%20%u043F%u0443%u0442%u044C%20%u0438%u043B%u0438%20%u0435%u0433%u043E%20%u043D%u0435%20%u0441%u0443%u0449%u0435%u0441%u0442%u0432%u0443%u0435%u0442%20%28%u043F%u043E%u0447%u0442%u0438%20%u043D%u0435%20%u0438%u0441%u043F%u043E%u043B%u044C%u0437%u0443%u0435%u0442%u0441%u044F%29%0A//%20return%20%3D%20-1%20%u043E%u0448%u0438%u0431%u043A%u0430%20%u043D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0438%20%28%u0434%u043B%u044F%20%u0441%u043E%u0432%u043C%u0435%u0441%u0442%u0438%u043C%u043E%u0441%u0442%u0438%29%0A//%20return%20%3D%200%20%20%u0442%u0440%u0435%u0431%u0443%u0435%u0442%u0441%u044F%20%u0441%u043E%u0437%u0434%u0430%u0442%u044C%20%u0438%20%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0438%u0442%u044C%20%u043F%u0443%u0442%u044C%0A//%20return%20%3D%201%20%20%u0432%u0441%u0451%20%u041E%u041A%0A%0Afunction%20chkPath%28cPth%29%7B%0Avar%20vPth%20%3D%20Application.prefs.getValue%28cEICB%2C%20cEICB%29%2C%20res%20%3D%20-10%3B%20//%u043F%u0440%u0435%u0434%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043A%u0430%0Aif%20%28vPth%20%3D%3D%20cEICB%20%29%7B%0A%20%20%20%20%20%20%20Application.prefs.setValue%28cEICB%2C%20cPathEI%29%3B%20//%20%u0421%u043E%u0437%u0434%u0430%u043B%u0438%20%u0438%20%u043F%u0443%u0442%u044C%20%u043F%u043E%20%u0443%u043C%u043E%u043B%u0447%u0430%u043D%u0438%u044E%20%u0438%u0437%20%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0435%u043D%u0438%u044F%0A%20%20%20%20%20%20%20res%20%3D%201%3B%20//%u041F%u0435%u0440%u0435%u043C%u0435%u043D%u043D%u0430%u044F%20%u0441%u0443%u0449%u0435%u0441%u0442%u0432%u0443%u0435%u0442%20%u0438%20%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0435%u043D%u0430%0A%20%20%20%20%20%20%20%7D%0A%20else%20if%20%28typeof%28vPth%29%20%21%3D%20%22string%22%29%0A%20%20%20%20%20%20%20res%20%3D%20-1%3B%20//%u041F%u0435%u0440%u0435%u043C%u0435%u043D%u043D%u0430%u044F%20%u043E%u043F%u0440%u0435%u0434%u0435%u043B%u0435%u043D%u0430%20%u0438%20%u043D%u0435%20%u0442%u043E%u0433%u043E%20%u0442%u0438%u043F%u0430%2C%20%u0437%u043D%u0430%u0447%u0438%u0442%20%u043E%u043D%u0430%20%u043D%u0435%20%u043D%u0430%u0448%u0430%0A%20%20%20else%20%7B%0A%20%20%20%20%20%20%20%20//%u041F%u0440%u043E%u0431%u0443%u0435%u043C%20%u043F%u0440%u043E%u0432%u0435%u0440%u0438%u0442%u044C%20%u043F%u0443%u0442%u044C%20-%20%u043E%u0442%u0432%u0435%u0442%20%u0432%20%u0438%u0441%u043A%u043B%u044E%u0447%u0435%u043D%u0438%u0438.%0A%20%20%20%20%20%20%20%20var%20file%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20createInstance%28Components.interfaces.nsILocalFile%29%3B%0A%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20file.initWithPath%28cPth%29%3B%0A%20%20%20%20%20%20%20%20%20if%20%28%21file.isDirectory%28%29%20%29%20res%20%3D%200%3B%20//%u0422%u0430%u043A%u043E%u0433%u043E%20%u043F%u0443%u0442%u0438%20%u043D%u0435%u0442%20%u043D%u0430%u0434%u043E%20%u0441%u043E%u0437%u0434%u0430%u0432%u0430%u0442%u044C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20else%20%20res%20%3D%201%3B%20//%20%u041F%u0443%u0442%u044C%20%u0435%u0441%u0442%u044C%0A%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20catch%28e%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20res%20%3D%20-2%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20return%20res%3B%0A%7D%3B%0A%0A//*********************************************************************%0A//%u0413%u0435%u043D%u0435%u0440%u0430%u0446%u0438%u044F%20%u0438%u043C%u0435%u043D%u0438%20%u0444%u0430%u0439%u043B%u0430%20%u043F%u0440%u0438%20%u0437%u0430%u043F%u0438%u0441%u0438%20%u0432%u0441%u0435%u0445%20%u043A%u043D%u043E%u043F%u043E%u043A%0Afunction%20GenFileName%28%29%7B%0Avar%20t%3Dnew%20Date%28%29%3B%0Avar%20y%3D1900+t.getYear%28%29%3B%0Avar%20min%3Dt.getMinutes%28%29%3B%20if%20%28min%3C10%29%7Bmin%3D%220%22+min%7D%3B%0Avar%20h%3Dt.getHours%28%29%3B%0Avar%20m%3Dt.getMonth%28%29%3Bswitch%28m%29%7Bcase%200%3A%20m%3D%22Jan%22%3Bbreak%3Bcase%201%3A%20m%3D%22Feb%22%3Bbreak%3Bcase%202%3A%20m%3D%22Mar%22%3Bbreak%3Bcase%203%3A%20m%3D%22Apr%22%3Bbreak%3Bcase%204%3A%20m%3D%22May%22%3Bbreak%3Bcase%205%3A%20m%3D%22Jun%22%3Bbreak%3Bcase%206%3A%20m%3D%22Jul%22%3Bbreak%3Bcase%207%3A%20m%3D%22Aug%22%3Bbreak%3Bcase%208%3A%20m%3D%22Sep%22%3Bbreak%3Bcase%209%3A%20m%3D%22Oct%22%3Bbreak%3Bcase%2010%3A%20m%3D%22Nov%22%3Bbreak%3Bdefault%3A%20m%3D%22Dec%22%3B%7D%0Avar%20d%3Dt.getDate%28%29%3B%0Avar%20curdate%3Dy+%22-%22+d+%22-%22+m+%22_%22+h+%22-%22+min%3B%0Avar%20myfilename%20%3D%20cPrefName+curdate+%22.html%22%3B%0Areturn%20myfilename%3B%0A%7D%3B%0A%0A//*********************************************************************%0A//%20%u0424%u0443%u043D%u043A%u0446%u0438%u044F%20%u0437%u0430%u043F%u0438%u0441%u0438%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0432%20HTML-%u0444%u0430%u0439%u043B%0A//*********************************************************************%0A//%u0417%u0430%u043F%u0438%u0441%u044C%20%u043A%u043D%u043E%u043F%u043E%u043A%20%u0432%20HTML%20%u0444%u0430%u0439%u043B%0Afunction%20saveCB%28fullfilepath%2C%20nameCB%29%7B%0Avar%20bu%3D%22%22%2C%20buts%2C%20doc%2C%20name%2C%20image%2C%20uri%2C%20mode%2C%20code%2C%20initCode%2C%20accelkey%2C%20help%3B%0A%0AVisibleConv%20%28nameCB%29%3B%0AAllConv%28nameCB%29%3B%0A%0A//var%20uc%20%3D%20Components.%20classes%20%5B%22@mozilla.org/intl/scriptableunicodeconverter%22%5D.%20createInstance%20%28Components.%20interfaces.%20nsIScriptableUnicodeConverter%29%3B%0A//uc.%20charset%20%3D%20%22utf-8%22%3B%0A//bu%20%3D%20uc.%20ConvertFromUnicode%20%28bu%29%3B%0Avar%20head%20%3D%20%22%3Chtml%3E%5Cn%3Chead%3E%5Cn%3Cmeta%20http-equiv%3D%27Content-Type%27%20content%3D%27text/html%3B%20charset%3Dutf-8%27%3E%5Cn%3C/head%3E%5Cn%3Cbody%3E%5Cn%22%3B%0Avar%20fileend%20%3D%20%22%5Cn%3C/body%3E%5Cn%3C/html%3E%22%0Avar%20htmlSource%20%3D%20head%20+%20bu%20+%20fileend%3B%0A%0Avar%20filedata%3DhtmlSource%3B%0A%0Avar%20file%20%3D%20Components.classes%5B%22@mozilla.org/file/local%3B1%22%5D.%0A%20%20%20%20%20%20%20%20%20%20%20createInstance%28Components.interfaces.nsILocalFile%29%3B%0Afile.initWithPath%28fullfilepath%29%3B%0Avar%20foStream%20%3D%20Components.classes%5B%22@mozilla.org/network/file-output-stream%3B1%22%5D.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20createInstance%28Components.interfaces.nsIFileOutputStream%29%3B%0A%0AfoStream.init%28file%2C%200x02%20%7C%200x08%20%7C%200x20%2C%200666%2C%200%29%3B%0Avar%20converter%20%3D%20Components.classes%5B%22@mozilla.org/intl/converter-output-stream%3B1%22%5D.%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20createInstance%28Components.interfaces.nsIConverterOutputStream%29%3B%0Aconverter.init%28foStream%2C%20%22UTF-8%22%2C%200%2C%200%29%3B%0Aconverter.writeString%28filedata%29%3B%0Aconverter.close%28%29%3B%0Areturn%20fullfilepath%3B%0A%0A//*********************************************************************%0A//%u041F%u043E%u0434%u043F%u0440%u043E%u0433%u0440%u0430%u043C%u043C%u044B%20%u0434%u043B%u044F%20function%20saveCB%0A//*********************************************************************%0A//******DefSub%0A%0A//*********************************************************************%0Afunction%20VisibleConv%28nameCB%29%20%0A%7B%0Abuts%20%3D%20document.%20getElementsByTagName%20%28%22toolbarbutton%22%29%3B%0Afor%20%28var%20i%20%3D%200%3B%20i%20%3C%20buts.%20length%3B%20i++%29%0A%7B%0A%20%20%20%20if%20%28buts%20%5Bi%5D.getAttribute%20%28%22id%22%29.%20indexOf%20%28%22custombuttons-button%22%29%20%3D%3D%200%29%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20name%20%3D%20buts%20%5Bi%5D.%20name%3B%0A%20%20%20%20%20%20%20%20if%20%28nameCB%21%3D%22%22%26%26nameCB%21%3Dname%29%20continue%3B%0A%20%20%20%20%20%20%20%20image%20%3D%20buts%20%5Bi%5D.%20image%20%7C%7C%20buts%20%5Bi%5D.%20cbStdIcon%3B%0A%20%20%20%20%20%20%20%20uri%20%3D%20buts%20%5Bi%5D.%20URI%3B%0A%20%20%20%20%20%20%20%20bu%20+%3D%22%3Cimg%20src%3D%22%20+%20image%20+%20%22%3E%26nbsp%3Ca%20href%3D%22%20+%20uri%20+%20%22%3E%22%20+%20name%20+%22%3C/a%3E%3Cbr%3E%5Cn%22%3B%0A%20%20%20%20%7D%0A%7D%0Abu%20+%3D%22%3Chr%3E%22%3B%0A%7D%3B%0A%0A//*********************************************************************%0Afunction%20AllConv%28nameCB%29%0A%7B%0Abuts%20%3D%20custombuttons.%20palette.%20getElementsByTagName%20%28%22toolbarbutton%22%29%3B%0Afor%20%28var%20i%20%3D%200%3B%20i%20%3C%20buts.%20length%3B%20i++%29%0A%7B%0A%20%20%20%20if%20%28buts%20%5Bi%5D.%20getAttribute%20%28%22id%22%29.%20indexOf%20%28%22custombuttons-button%22%29%20%3D%3D%200%29%0A%20%20%20%20%7B%0A//%20%u0418%u043C%u044F%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u0432%20UTF-8%0A%20%20%20%20%20%20%20%20name%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22label%22%29%3B%0A%20%20%20%20%20%20%20%20if%20%28nameCB%21%3D%22%22%26%26nameCB%21%3Dname%29%20continue%3B%0A//%20%20%20%20%20%20%20%20var%20uc%20%3D%20Components.%20classes%20%5B%22@mozilla.org/intl/scriptableunicodeconverter%22%5D.%20createInstance%20%28Components.%20interfaces.%20nsIScriptableUnicodeConverter%29%3B%0A//%20%20%20%20%20%20%20%20uc.%20charset%20%3D%20%22utf-8%22%3B%0A//%20%20%20%20%20%20%20%20name%20%3D%20uc.%20ConvertFromUnicode%20%28name%29%3B%0A%0A//%20BASE64%20%u0432%20UTF-8%0A%20%20%20%20%20%20%20%20image%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22image%22%29%20%7C%7C%20buts%20%5Bi%5D.%20getAttribute%20%28%22cb-stdicon%22%29%3B%0A%20%20%20%20%20%20%20%20var%20uc%20%3D%20Components.%20classes%20%5B%22@mozilla.org/intl/scriptableunicodeconverter%22%5D.%20createInstance%20%28Components.%20interfaces.%20nsIScriptableUnicodeConverter%29%3B%0A%20%20%20%20%20%20%20%20uc.%20charset%20%3D%20%22utf-8%22%3B%0A%20%20%20%20%20%20%20%20image%20%3D%20uc.%20ConvertFromUnicode%20%28image%29%3B%0A%0A%20%20%20%20%20%20%20%20mode%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22cb-mode%22%29%3B%0A%20%20%20%20%20%20%20%20code%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22cb-oncommand%22%29%3B%0A%20%20%20%20%20%20%20%20initCode%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22cb-init%22%29%3B%0A%20%20%20%20%20%20%20%20accelkey%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22cb-accelkey%22%29%3B%0A%20%20%20%20%20%20%20%20help%20%3D%20buts%20%5Bi%5D.%20getAttribute%20%28%22Help%22%29%20%7C%7C%20buts%20%5Bi%5D.%20getAttribute%20%28%22help%22%29%20%7C%7C%20%22%22%3B%0A%20%20%20%20%20%20%20%20doc%20%3D%20document.%20implementation.%20createDocument%20%28%22%22%2C%20%22%22%2C%20null%29%3B%0A%20%20%20%20%20%20%20%20doc.%20async%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20doc.%20load%20%28%22chrome%3A//custombuttons/content/nbftemplate.xml%22%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22name%22%2C%20name%2C%20false%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22mode%22%2C%20mode%2C%20false%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22image%22%2C%20image%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22code%22%2C%20code%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22initcode%22%2C%20initCode%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22accelkey%22%2C%20accelkey%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20setText%20%28doc%2C%20%22help%22%2C%20help%2C%20true%29%3B%0A%20%20%20%20%20%20%20%20var%20ser%20%3D%20new%20XMLSerializer%20%28%29%3B%0A%20%20%20%20%20%20%20%20var%20data%20%3D%20ser.%20serializeToString%20%28doc%29%3B%0A%20%20%20%20%20%20%20%20uri%20%3D%20%22custombutton%3A//%22%20+%20escape%20%28data%29%3B%0A%20%20%20%20%20%20%20%20bu+%3D%22%3Cimg%20src%3D%22%20+%20image%20+%20%22%3E%26nbsp%3Ca%20href%3D%22%20+%20uri%20+%20%22%3E%22%20+%20name%20+%22%3C/a%3E%3Cbr%3E%5Cn%22%3B%0A%20%20%20%20%7D%0A%20%7D%0A%7D%3B%0A%0A//*********************************************************************%0Afunction%20setText%20%28doc%2C%20nodeName%2C%20text%2C%20make_CDATASection%29%0A%7B%0A%20%20%20%20var%20node%20%3D%20doc.%20getElementsByTagName%20%28nodeName%29%20%5B0%5D%2C%20cds%3B%0A%20%20%20%20if%20%28%21node%29%20return%3B%0A%20%20%20%20if%20%28make_CDATASection%29%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20try%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20cds%20%3D%20doc.%20createCDATASection%20%28text%20%7C%7C%20%22%22%29%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20catch%20%28e%29%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20cds%20%3D%20doc.%20createTextNode%20%28text%20%7C%7C%20%22%22%29%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20node.%20appendChild%20%28cds%29%3B%0A%20%20%20%20%7D%0A%20%20%20%20else%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20node.%20textContent%20%3D%20text%3B%0A%20%20%20%20%7D%0A%7D%3B%0A//******%20EndDefSub%0A%0A//******%20End%20function%20saveCB%0A%7D%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%0A%0A%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%u0412%u0435%u0440%u0441%u0438%u044F%20%u043E%u0442%2023.05.2014%0A%u0410%u0432%u0442%u043E%u0440%20-%20Indomito%20%A9%0A%u0411%u043B%u0430%u0433%u043E%u0434%u0430%u0440%u043D%u043E%u0441%u0442%u044C%20%u0437%u0430%20%u043F%u043E%u043C%u043E%u0449%u044C%20-%20Infocatcher%20%A9%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отредактировано Indomito (13-06-2015 16:36:29)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№854514-06-2015 02:54:35

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 38.0

Re: Custom Buttons

Проблема с window.focus(); устранена методом корректировкой кода с установкой глобального флага для работы данной функции.

Вопрос решён.

Отредактировано Indomito (14-06-2015 02:59:52)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№854614-06-2015 13:20:56

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 20.0

Re: Custom Buttons

Indomito пишет

Проблема с window.focus(); устранена методом корректировкой кода с установкой глобального флага для работы данной функции.

А как установить глобальный флаг, что это?

И чтоб два раза не вставать. В Firebug'e на вкладке Сеть я отслеживаю время загрузки элементов. Как понимать вертикальные синюю и красную полосы?
И что означает, когда часть элементов отделяется жирной горизонтальной линией?

Отсутствует

 

№854714-06-2015 13:25:40

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 38.0

Re: Custom Buttons

rbfyec пишет

Как понимать вертикальные синюю и красную полосы?

Там же во всплывающей подсказке написано, что это DOMContentLoaded и load.

rbfyec пишет

И что означает, когда часть элементов отделяется жирной горизонтальной линией?

Это где такое? Видимо, уже после загрузки страницы что-то.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№854814-06-2015 14:42:44

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 20.0

Re: Custom Buttons

Infocatcher пишет

Это где такое? Видимо, уже после загрузки страницы что-то.

Ну вот на этой странице http://maxpark.com/ я включил Firebug - последние два пункта снизу.
2015_06_14_143423.jpg

Отсутствует

 

№854914-06-2015 17:00:54

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 38.0

Re: Custom Buttons

rbfyec
Я так понимаю, это так отделяется, когда отдельно начинает грузиться, скажем, скрипт подтягивает что-нибудь.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№855014-06-2015 17:40:13

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 20.0

Re: Custom Buttons

Infocatcher
Ясно, спасибо :)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]