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

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№230116-01-2011 17:41:32

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

Re: Custom Buttons

Так кнопку то я сделал, но что делать вот с этим диалогом, те что выбрать что бы кнопки попали в Mozilla Thunderbird?
94c96c8c3a2a211e358e00181078233e.jpeg

Добавлено 16-01-2011 17:54:47

Infocatcher пишет

Обновил Attributes Inspector, теперь DOM Inspector ищется во всех окнах. Нужно при запуске из произвольного окна (важно для Mouse Gestures).

спасибо,удобный инструмент, а я то мучался.... блин :D


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

Отсутствует

 

№230216-01-2011 17:56:49

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.6
Веб-сайт

Re: Custom Buttons

Indomito

Так кнопку то я сделал, но что делать вот с этим диалогом, те что выбрать что бы кнопки попали в Mozilla Thunderbird?

Хм, не знаю, файл с бэкапом оверлея у меня нормально открывается:
316998b43047a2d94ace84c582752493.jpeg


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№230316-01-2011 17:59:19

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

Re: Custom Buttons

Anton те без диалога, как у меня? Если, да, то дело в настройках почтовика ИМХО
А если диалог есть, то что надо выбрать то?


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

Отсутствует

 

№230416-01-2011 18:04:20

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.6
Веб-сайт

Re: Custom Buttons

Anton те без диалога, как у меня?

Да, без диалога.
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.13pre) Gecko/20101104 Lanikai/3.1.7pre

ps. Диалог появляется, если указан не путь к файлу, а путь к каталогу с файлом.

Отредактировано Anton (16-01-2011 18:06:19)


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№230516-01-2011 18:11:40

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

Re: Custom Buttons

Anton "ps. Диалог появляется, если указан не путь к файлу, а путь к каталогу с файлом." - сенкс, исправил на

Выделить код

Код:

var url = "file:///C:/Custom Buttons/Сохранение кнопок/Mozilla Thunderbird/a.html"

всё заработало.


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

Отсутствует

 

№230616-01-2011 18:13:16

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

Re: Custom Buttons

А мы продолжаем. =)
Attributes Inspector теперь корректно завершает работу при закрытии вызвавшего окна (для Custom Buttons не актуально, там должен срабатывать onDestroy()).


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

Отсутствует

 

№230716-01-2011 18:19:26

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

Re: Custom Buttons

Infocatcher может отдельную тему создать, а то можно новый патч пропустить :D


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

Отсутствует

 

№230817-01-2011 02:30:43

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

Re: Custom Buttons

MySh После подгонке по ширине нужно реализовать сброс, а то надо обновлять страницу, а так всё нормально.  Я про  Fit to Width (Подогнать по ширине) (Firefox)

PS Вносить поправок не стал прочитав обсуждение выше :)

Отредактировано Indomito (17-01-2011 02:35:40)


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

Отсутствует

 

№230918-01-2011 16:10:34

Osetr
Участник
 
Группа: Members
Зарегистрирован: 24-11-2010
Сообщений: 13
UA: Firefox 3.6

Re: Custom Buttons

Помогите пожалуйста сделать кнопку удаляющую все flash cookies на компьютере

Отредактировано Osetr (18-01-2011 18:58:39)

Отсутствует

 

№231018-01-2011 17:39:48

luitzen
Участник
 
Группа: Members
Зарегистрирован: 19-07-2008
Сообщений: 791
UA: Firefox 3.6

Re: Custom Buttons

Osetr,

Выделить код

Код:

var dir = Components.classes["@mozilla.org/file/directory_service;1"]
          .getService(Components.interfaces.nsIProperties)
          .get("Home", Components.interfaces.nsIFile);

dir.append("Application Data");
dir.append("Macromedia");

dir.remove(true);

Способ брутальный, как по-другому — не знаю.

Отсутствует

 

№231118-01-2011 18:47:18

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.6
Веб-сайт

Re: Custom Buttons

Osetr

Есть дополнение BetterPrivacy (https://addons.mozilla.org/en-US/firefo … erprivacy/), которое вроде бы удаляет flash cookies.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№231218-01-2011 18:55:49

Osetr
Участник
 
Группа: Members
Зарегистрирован: 24-11-2010
Сообщений: 13
UA: Firefox 3.6

Re: Custom Buttons

luitzen пишет

Osetr,Код:var dir = Components.classes["@mozilla.org/file/directory_service;1"]
          .getService(Components.interfaces.nsIProperties)
          .get("Home", Components.interfaces.nsIFile);

dir.append("Application Data");
dir.append("Macromedia");

dir.remove(true);Способ брутальный, как по-другому — не знаю.

Вроде работает, спасибо большое! А почему брутальный, он кроме куков ещё что-то подчищает?

Отсутствует

 

№231318-01-2011 19:08:57

luitzen
Участник
 
Группа: Members
Зарегистрирован: 19-07-2008
Сообщений: 791
UA: Firefox 4.0

Re: Custom Buttons

Osetr пишет

Вроде работает, спасибо большое! А почему брутальный, он кроме куков ещё что-то подчищает?

Я не знаю, что ещё в этой папке может храниться. Вроде бы разные запомненные настройки (можно ли такому-то сайту использовать микрофон, например) там же хранятся.
И в этой же папке хранятся «flash cookies» других браузеров. А при другой ОС и другом flash-плагине всё это будет храниться в другом месте.

Утешает, что в Better Privacy всё примерно так же брутально :).

Отредактировано luitzen (18-01-2011 19:09:18)

Отсутствует

 

№231420-01-2011 01:59:21

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

Re: Custom Buttons

okkamas_knife можешь немного дополнить/поправить кнопку Экспорт всех кнопок в HTML(Firefox)
1. При открытии "Сохранить как..." открывалася заданный путь, те типа С:\Custom Buttons\Сохранение кнопок\Mozilla Thunderbird\ , а некий последний (так и не нашёл где он хранится, те нашёл, но модификация не помогает, видимо кривой код я сваял)
2.  Если прошло успешно, те код выполнился до конца, те файл записан

Выделить код

Код:

if(fp.show() == fp.returnCancel) return;

var stream = Components.classes['@mozilla.org/network/file-output-stream;1']
                 .createInstance(Components.interfaces.nsIFileOutputStream);

stream.init(fp.file, 0x02|0x20|0x08, 0666, 0);
stream.write(htmlSource, htmlSource.length);
stream.close();

в какую либо переменную заносился путь в том же формате, что и в пункте №1 + имя файла (хотя имя файла то есть)

Выделить код

Код:

fp.defaultString = "my_cbuttons_"+curdate+".html";

Я попытался задать путь, но у меня не вышло или ошибка в JS или... ну вообщем то ерунда получается.

С превеликим уважением. :)

PS Код можешь отправить мне в ЛС, а не править в теме про готовые кнопки.

Отредактировано Indomito (20-01-2011 02:02:12)


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

Отсутствует

 

№231522-01-2011 07:36:50

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

Re: Custom Buttons

Я опять про кнопку Экспорт всех кнопок в HTML(Firefox). При помощи okkamas_knife мне удалось достигнуть желаемого, те почти удалось, но возникла проблема с кодировкой, те при Меню - Файл - Открыть файл. 
Я вижу вот что:

скриншот
IndomioSCR01.png
Использовался такой код

Выделить код

Код:

var mydir="C:\\Custom Buttons\\Сохранение кнопок\\";
var name, image, uri;
var bu = "";
var buts = document. getElementsByTagName ("toolbarbutton");
for (var i = 0; i < buts. length; i++)
{
    if (buts [i]. getAttribute ("id"). indexOf ("custombuttons-button") == 0)
    {
        name = buts [i]. name;
        image = buts [i]. image || buts [i]. cbStdIcon;
        uri = buts [i]. URI;
        butmp = bu;
urltmp ="<img src=" + image + ">&nbsp<a href=" + uri + ">" + name +"</a><br>\n";
bu = butmp + urltmp;
//alert(name);

    }
};
butmp = bu;
bu = butmp + "<hr>";
function setText (doc, nodeName, text, make_CDATASection)
{
    var node = doc. getElementsByTagName (nodeName) [0], cds;
    if (!node)
        return;
    if (make_CDATASection)
    {
        try
        {
            cds = doc. createCDATASection (text || "");
        }
        catch (e)
        {
            cds = doc. createTextNode (text || "");
        }
        node. appendChild (cds);
    }
    else
    {
        node. textContent = text;
    }
}
var buts, doc, name, image, uri, mode, code, initCode, accelkey, help;
buts = custombuttons. palette. getElementsByTagName ("toolbarbutton");
for (var i = 0; i < buts. length; i++)
{
    if (buts [i]. getAttribute ("id"). indexOf ("custombuttons-button") == 0)
    {
        name = buts [i]. getAttribute ("label");
        image = buts [i]. getAttribute ("image") || buts [i]. getAttribute ("cb-stdicon");
        mode = buts [i]. getAttribute ("cb-mode");
        code = buts [i]. getAttribute ("cb-oncommand");
        initCode = buts [i]. getAttribute ("cb-init");
        accelkey = buts [i]. getAttribute ("cb-accelkey");
        help = buts [i]. getAttribute ("Help") || buts [i]. getAttribute ("help") || "";
        doc = document. implementation. createDocument ("", "", null);
        doc. async = false;
        doc. load ("chrome://custombuttons/content/nbftemplate.xml");
        setText (doc, "name", name, false);
        setText (doc, "mode", mode, false);
        setText (doc, "image", image, true);
        setText (doc, "code", code, true);
        setText (doc, "initcode", initCode, true);
        setText (doc, "accelkey", accelkey, true);
        setText (doc, "help", help, true);
        var ser = new XMLSerializer ();
        var data = ser. serializeToString (doc);
        uri = "custombutton://" + escape (data);
        //alert (uri);
        butmp = bu;
urltmp ="<img src=" + image + ">&nbsp<a href=" + uri + ">" + name +"</a><br>\n";
bu = butmp + urltmp;
    }
}


var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
uc. charset = "utf-8";
bu = uc. ConvertFromUnicode (bu);
var head = "<html>\n<head>\n<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>\n</head>\n<body>\n";
var fileend = "\n</body>\n</html>"
var htmlSource = head + bu + fileend;


var t=new Date();
var y=1900+t.getYear();
var min=t.getMinutes(); if (min<10){min="0"+min};
var h=t.getHours();
var m=t.getMonth();switch(m){case 0: m="Jan";break;case 1: m="Feb";break;case 2: m="Mar";break;case 3: m="Apr";break;case 4: m="May";break;case 5: m="Jun";break;case 6: m="Jul";break;case 7: m="Aug";break;case 8: m="Sep";break;case 9: m="Oct";break;case 10: m="Nov";break;default: m="Dec";}
var d=t.getDate();
var curdate=y+"-"+d+"-"+m+"_"+h+"-"+min;



var myfilename="my_cbuttons_"+curdate+".html";

var filedata=htmlSource;

var fullfilepath=mydir+myfilename;
var file = Components.classes["@mozilla.org/file/local;1"].
           createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(fullfilepath);
var foStream = Components.classes["@mozilla.org/network/file-output-stream;1"].
               createInstance(Components.interfaces.nsIFileOutputStream);

foStream.init(file, 0x02 | 0x08 | 0x20, 0666, 0); 
var converter = Components.classes["@mozilla.org/intl/converter-output-stream;1"].
                createInstance(Components.interfaces.nsIConverterOutputStream);
converter.init(foStream, "UTF-8", 0, 0);
converter.writeString(filedata);
converter.close();
alert("файл сохранён - "+ fullfilepath );

Поковырял код - не помогло. Сами кнопки, те исходники - нормальные, те русский шрифт нормально отображается, а вот название самой кнопки - нет.
Помогите найти ошибку, где то надо прописать приблизительно это:

var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
uc. charset = "utf-8";
bu = uc. ConvertFromUnicode (bu);

А где не понял...


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

Отсутствует

 

№231622-01-2011 17:42:20

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.6
Веб-сайт

Re: Custom Buttons

Indomito пишет

Помогите найти ошибку, где то надо прописать приблизительно это:

var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
uc. charset = "utf-8";
bu = uc. ConvertFromUnicode (bu);

Это надо выкинуть.
После

Выделить код

Код:

name = buts [i]. getAttribute ("label");

надо записать

Выделить код

Код:

var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
uc. charset = "utf-8";
name = uc. ConvertFromUnicode (name);

Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№231723-01-2011 03:18:24

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

Re: Custom Buttons

Anton поправил код вот так (фрагменты модификации выделены //*****):

Модифицированный код

Выделить код

Код:

var mydir="C:\\Custom Buttons\\Сохранение кнопок\\";
var name, image, uri;
var bu = "";
var buts = document. getElementsByTagName ("toolbarbutton");
for (var i = 0; i < buts. length; i++)
{
    if (buts [i]. getAttribute ("id"). indexOf ("custombuttons-button") == 0)
    {
        name = buts [i]. name;
        image = buts [i]. image || buts [i]. cbStdIcon;
        uri = buts [i]. URI;
        butmp = bu;
urltmp ="<img src=" + image + ">&nbsp<a href=" + uri + ">" + name +"</a><br>\n";
bu = butmp + urltmp;
//alert(name);

    }
};
butmp = bu;
bu = butmp + "<hr>";
function setText (doc, nodeName, text, make_CDATASection)
{
    var node = doc. getElementsByTagName (nodeName) [0], cds;
    if (!node)
        return;
    if (make_CDATASection)
    {
        try
        {
            cds = doc. createCDATASection (text || "");
        }
        catch (e)
        {
            cds = doc. createTextNode (text || "");
        }
        node. appendChild (cds);
    }
    else
    {
        node. textContent = text;
    }
}
var buts, doc, name, image, uri, mode, code, initCode, accelkey, help;
buts = custombuttons. palette. getElementsByTagName ("toolbarbutton");
for (var i = 0; i < buts. length; i++)
{
    if (buts [i]. getAttribute ("id"). indexOf ("custombuttons-button") == 0)
    {
        name = buts [i]. getAttribute ("label");
//*******************************************************
//----------- Дописал
        var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
        uc. charset = "utf-8";
        name = uc. ConvertFromUnicode (name);
//********************************************
        image = buts [i]. getAttribute ("image") || buts [i]. getAttribute ("cb-stdicon");
        mode = buts [i]. getAttribute ("cb-mode");
        code = buts [i]. getAttribute ("cb-oncommand");
        initCode = buts [i]. getAttribute ("cb-init");
        accelkey = buts [i]. getAttribute ("cb-accelkey");
        help = buts [i]. getAttribute ("Help") || buts [i]. getAttribute ("help") || "";
        doc = document. implementation. createDocument ("", "", null);
        doc. async = false;
        doc. load ("chrome://custombuttons/content/nbftemplate.xml");
        setText (doc, "name", name, false);
        setText (doc, "mode", mode, false);
        setText (doc, "image", image, true);
        setText (doc, "code", code, true);
        setText (doc, "initcode", initCode, true);
        setText (doc, "accelkey", accelkey, true);
        setText (doc, "help", help, true);
        var ser = new XMLSerializer ();
        var data = ser. serializeToString (doc);
        uri = "custombutton://" + escape (data);
        //alert (uri);
        butmp = bu;
urltmp ="<img src=" + image + ">&nbsp<a href=" + uri + ">" + name +"</a><br>\n";
bu = butmp + urltmp;
    }
}

//******************************
// -----------Убрал три сроки
//var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
//uc. charset = "utf-8";
//bu = uc. ConvertFromUnicode (bu);
//**************************************
var head = "<html>\n<head>\n<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>\n</head>\n<body>\n";
var fileend = "\n</body>\n</html>"
var htmlSource = head + bu + fileend;


var t=new Date();
var y=1900+t.getYear();
var min=t.getMinutes(); if (min<10){min="0"+min};
var h=t.getHours();
var m=t.getMonth();switch(m){case 0: m="Jan";break;case 1: m="Feb";break;case 2: m="Mar";break;case 3: m="Apr";break;case 4: m="May";break;case 5: m="Jun";break;case 6: m="Jul";break;case 7: m="Aug";break;case 8: m="Sep";break;case 9: m="Oct";break;case 10: m="Nov";break;default: m="Dec";}
var d=t.getDate();
var curdate=y+"-"+d+"-"+m+"_"+h+"-"+min;



var myfilename="my_cbuttons_"+curdate+".html";

var filedata=htmlSource;

var fullfilepath=mydir+myfilename;
var file = Components.classes["@mozilla.org/file/local;1"].
           createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(fullfilepath);
var foStream = Components.classes["@mozilla.org/network/file-output-stream;1"].
               createInstance(Components.interfaces.nsIFileOutputStream);

foStream.init(file, 0x02 | 0x08 | 0x20, 0666, 0); 
var converter = Components.classes["@mozilla.org/intl/converter-output-stream;1"].
                createInstance(Components.interfaces.nsIConverterOutputStream);
converter.init(foStream, "UTF-8", 0, 0);
converter.writeString(filedata);
converter.close();
alert("файл сохранён - "+ fullfilepath );

теперь те кнопки что активные, которые находились на панели, отображаются верно, при считывании, а те которые были в ПКМ - Настроить - Настройка панелей инструментов отображаются не верно:
Скриншот с ошибочной кодировкой
IndomioSCR02.png

Отредактировано Indomito (23-01-2011 03:35:35)


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

Отсутствует

 

№231823-01-2011 07:56:29

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.6
Веб-сайт

Re: Custom Buttons

Indomito пишет

теперь те кнопки что активные, которые находились на панели, отображаются верно, при считывании, а те которые были в ПКМ - Настроить - Настройка панелей инструментов отображаются не верно:

Ну, тогда и

Выделить код

Код:

var uc = Components. classes ["@mozilla.org/intl/scriptableunicodeconverter"]. createInstance (Components. interfaces. nsIScriptableUnicodeConverter);
uc. charset = "utf-8";
name = uc. ConvertFromUnicode (name);

надо выкинуть.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№231923-01-2011 08:07:21

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

Re: Custom Buttons

Anton да, помогло... а для чего перекодировали в UTF-8? И в каких случаях будет ошибка с кодировкой?

Это я не только для самообразования, но и для того что бы было понятно где искать проблему если такая возникнет. В мозилле установлена кодировка utf-8, почтовик, те Mozilla Thunderbird, не проверял ещё.

Добавлено 23-01-2011 08:23:05
Anton И ещё что надо сделать, те написать, перед BrowserOpenFileWindow(); что бы открылся нужный каталог. Я попытался написать:

Выделить код

Код:

Application.prefs.setValue("browser.open.lastDir", "D:");
BrowserOpenFileWindow();

, но первая строка помогает/срабатывает, если перезапустить браузер. А

Выделить код

Код:

Application.prefs.setValue("browser.download.lastDir", "C:\\Custom Buttons\\");
saveDocument(window.content.document);

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


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

Отсутствует

 

№232023-01-2011 16:19:18

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.6
Веб-сайт

Re: Custom Buttons

Indomito пишет

а для чего перекодировали в UTF-8?

Там в html устанавливается charset=utf-8.

И в каких случаях будет ошибка с кодировкой?

Например, при перекодировке из utf-8 в utf-8 считая исходную кодировку юникодом.

И ещё что надо сделать, те написать, перед BrowserOpenFileWindow(); что бы открылся нужный каталог.

Не знаю. У меня вот так работает:

Выделить код

Код:

var file = Components. classes ["@mozilla.org/file/local;1"].
           createInstance (Components. interfaces. nsILocalFile);
file. initWithPath ("/");
gLastOpenDirectory. path = file;
BrowserOpenFileWindow ();

Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№232125-01-2011 00:13:46

doob
Участник
 
Группа: Members
Зарегистрирован: 12-10-2010
Сообщений: 10
UA: Opera 11.0

Re: Custom Buttons

Подскажите пожалуйста как реализовать с помощью CB такую тему:

При открытии окна создания сообщения (создаю сообщение с помощью командной строки) моя кнопка проверяет наличие определённого файла в определённом месте (например 'c:\bober.txt'), если такой файл имеется - открывает его и читает первую строчку, если она = 'yes' происходит отправка сообщения. Если строка иная, либо такого файла не существует - ничего не происходит... ось - винда. Очень жду помощи...

Отредактировано doob (25-01-2011 00:17:39)

Отсутствует

 

№232225-01-2011 01:00:59

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

Re: Custom Buttons

doob а можно код привести, а то так сложно понять про что речь и в чём проблема.


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

Отсутствует

 

№232325-01-2011 08:06:21

doob
Участник
 
Группа: Members
Зарегистрирован: 12-10-2010
Сообщений: 10
UA: Opera 11.0

Re: Custom Buttons

Проблема в том, что стороннему приложению нужно наладить автоматическую отправку сообщений через Буревестник, но т.к. изначально у него такого функционала нет - приходится извращаться. Перед генерацией письма, приложение создаёт в определённом месте определённый файл. Громоптиц, создав письмо проверяет наличие файла в определённом месте, если находит его - отправляет письмо. После отправки (или неотправки) письма Громоптиц записывает в файл результат операции и время. Приложение считывает необходимую информацию и удаляет файл...

Вот такие лисапеды... :/ :)

Отредактировано doob (25-01-2011 08:08:35)

Отсутствует

 

№232427-01-2011 01:33:16

doob
Участник
 
Группа: Members
Зарегистрирован: 12-10-2010
Сообщений: 10
UA: Firefox 3.6

Re: Custom Buttons

Вобщем, одну проблему своими силами и с помощью данного форума решил! особая благодарность luitzen :beer:

Сгенерированные сообщения автоматически отправляются, правда с небольшой задержкой (адресат через командную строку не моментально вставляется). Реализовал при помощи кнопки в окне создания сообщения. Вот код инициализации:

скрытый текст
/*Initialization Code*/
/*CODE*/
var pathToDirectory = "C:\\mymail";
var filename = "bbb.txt";

var dir = Cc ["@mozilla.org/file/local;1"].
      createInstance (Ci. nsILocalFile);
dir. initWithPath (pathToDirectory);

var file = dir. clone ();
file. append (filename);

if (file. exists ()) setTimeout("goDoCommand('cmd_sendButton')", 1000);


Теперь необходимо, чтобы эта кнопка создавала файл содержащий дату и время отправки сообщения (если сообщение удачно отправлено). А в случае неудачи ничего не надо делать.

Жду вашей помощи. Заранее благодарен.

Отсутствует

 

№232527-01-2011 14:09:24

iDev.Pi
баг-репортёр
 
Группа: Extensions
Зарегистрирован: 31-01-2010
Сообщений: 2718
UA: Firefox 4.0

Re: Custom Buttons

Anton пишет

iDev.Pi

iDev.Pi пишет

А как насчёт того, чтобы сделать удобную интеграцию с новым менеджером дополнений?
Вот стайлиш и скриптиш (ну или гризманки) - оба этих дополнения интегрировались в новый АОМ и теперь управлять стилями и скриптами можно из одного места, что удобно.
Может возможно сделать такое и для КБ?

Возможно, но не во всех поддерживаемых CB приложениях новый менеджер дополнений, а делать две разные ветки кода мне бы не хотелось.

А нельзя как-то в 1 дополнении объединить оба варианта, чтобы в зависимости от приложения - использовался бы либо старый способ, либо подцеплялся новый АОМ?


mzfx

Отсутствует

 

Board footer

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