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

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№390106-04-2012 12:06:05

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

Re: Custom Buttons

Infocatcher нет обычная тема т.е. стандартная, а содержимое userChrome.css я тебе показал. Правда я отключаю одну тему и перехожу к стандартной, может не просто отключить надо, но и удалить, но это... маразм уже :)


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

Отсутствует

 

№390206-04-2012 12:22:18

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

Re: Custom Buttons

А так работает: ThunderbirdPortable_buttons_style.7z?
Хотя это всего лишь портабл отсюда с добавленным \Data\profile\chrome\userChrome.css


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

Отсутствует

 

№390306-04-2012 12:32:40

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

Re: Custom Buttons

Да, нормально вот фрагмент окна программы

e7ba3addcd5a7a92a444702aa84a80ef.png

Добавлено 06-04-2012 12:34:37
Думаешь стоит переустановить Thunderbird ?

Отредактировано Indomito (06-04-2012 12:34:37)


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

Отсутствует

 

№390406-04-2012 13:09:26

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

Re: Custom Buttons

Во, я не заметил.
http://forum.mozilla-russia.org/viewtop … 06#p555906

\t9ka69ba.default\userChrome.css

Где папка chrome? :)


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

Отсутствует

 

№390506-04-2012 13:11:48

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

Re: Custom Buttons

балин.... я балбес....
Какая структура должна быть - скажи точно, а то я опять промажу :D

Всё ОК - вот как стало:
7dadb37401983cf06feee4be685f76cc.png

Спасибо тебе и что бы мы без тебя делали =)))

Отредактировано Indomito (06-04-2012 13:25:39)


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

Отсутствует

 

№390606-04-2012 13:24:42

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

Re: Custom Buttons

%папка_профиля%\chrome\userChrome.css
То есть
\t9ka69ba.default\chrome\userChrome.css


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

Отсутствует

 

№390706-04-2012 13:40:32

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

Re: Custom Buttons

Infocatcher ещё вопрос, а почему кнопки бледные, ну не такие ка FireFox?


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

Отсутствует

 

№390806-04-2012 13:44:01

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

Re: Custom Buttons

Так это
opacity: 0.5 !important;
, он только для проверки был – чтобы сразу видно было, применились ли стили.


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

Отсутствует

 

№390906-04-2012 13:47:10

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

Re: Custom Buttons

Уже понял :D т.е. сразу понял, но не успел ответить, просто я после всего стал бояться userChrome.css, хотя в  FF его активно использую :)

Отредактировано Indomito (06-04-2012 14:04:38)


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

Отсутствует

 

№391006-04-2012 20:54:36

pohunohi
Участник
 
Группа: Members
Зарегистрирован: 02-09-2009
Сообщений: 677
UA: Firefox 11.0

Re: Custom Buttons

bunda1

bunda1 пишет

Используй без кнопки.
Переключать проигрывания анимации(Firefox)

Спасибо.

//Устанавливаем где показывать новый пункт меню..........
//когда не показывать

А возможно ли реализовать подобное поведение в MenuManipulator? Может свойство какое-то можно задать, или скриптом присобачить?

Отредактировано pohunohi (06-04-2012 20:55:20)

Отсутствует

 

№391106-04-2012 22:12:38

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

Re: Custom Buttons

pohunohi пишет

А возможно ли реализовать подобное поведение в MenuManipulator? Может свойство какое-то можно задать, или скриптом присобачить?

Не знаю, я не пользовался MenuManipulator. Но кажется что установить где показывать новый пункт меню можно если использовать CSS, на форуме это обсуждалось. Может тут спроси Вопрос-ответ

Отсутствует

 

№391207-04-2012 01:11:07

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

Re: Custom Buttons

Как реализовать кнопку

Выделить код

Код:

/*CODE*/
BrowserDownloadsUI();
/*Initialization Code*/
this.tooltipText = "Показать список загруженных файлов";

что бы она показывала список загруженных файлов (реализовано), а по повторному нажатию закрывала этот список/окно ?

Отредактировано Indomito (07-04-2012 01:12:13)


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

Отсутствует

 

№391307-04-2012 11:34:06

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

Re: Custom Buttons

Indomito

Выделить код

Код:

//закрыть все остальные окна кроме текущего
var windowManager = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService(Components.interfaces.nsIWindowMediator);
var enumerator = windowManager.getEnumerator(null);
var thisWindow = windowManager.getMostRecentWindow(null);
while (enumerator.hasMoreElements()) {var thatWindow = enumerator.getNext(); if (thisWindow != thatWindow) {thatWindow.close();}}

Отсутствует

 

№391407-04-2012 12:45:26

lokiju
Участник
 
Группа: Members
Зарегистрирован: 30-01-2012
Сообщений: 208
UA: Firefox 11.0

Re: Custom Buttons

Indomito пишет

Экспорт импорт кнопок в HTML-файл. Просто иногда всякое случается и кнопки теряются, а так они запоминаются в файле и их можно восстановить/перенести.P.S. Сейчас просто форум сделал слияние двух постов и возникла проблемка - не всё влезло в один пост.
                    Отредактировано Indomito (05-04-2012 20:20:17)

Так красивше Custom Buttons XML Exporter/Importer

lokiju пишет

Вот есть кнопка

URLBar Search
Код:

Выделить код

Код:

/* -------------------------------------------------------------
     URLBar Search
     by LouCypher (aka Zoolcar9)

     This button will search anything you type in location bar
     For Firefox 2.0 or above only
   ------------------------------------------------------------- */

this.search(this, event);

Инициализация:

Выделить код

Код:

this.setAttribute("style", "padding-left: 2px !important; padding-right: 2px !important; padding-top: 0px !important; padding-bottom: 0px !important;  margin-top: 4px !important; margin-bottom: 4px !important;");
if (!("@mozilla.org/browser/search-service;1" in Components.classes)) {
  this.disabled = true;
  return;
}

function searchService() {
  return Components.classes["@mozilla.org/browser/search-service;1"]
          .getService(Components.interfaces.nsIBrowserSearchService);
}

function getInput() {
  var ss = searchService();
  return prompt(ss.currentEngine.name, "", "Search");
}

this.search = function(aNode, aEvent) {
  var openInTab, loadInBackground;
  try {
    openInTab = gPrefService.getBoolPref("browser.search.openintab");
    loadInBackground = gPrefService.getBoolPref("browser.search.openintab.loadInBackground")
  } catch(ex) {
  }

  var query = "";
  if (!gURLBar) {
    query = getInput();
  }
  else if (gURLBar && gURLBar.focused) {
    query = gURLBar.value;
  }
  if (query == null) return;

  var url = aNode.engine.getSubmission(query, null).uri.spec;

  if (openInTab) {
    var newTab = gBrowser.addTab(url);
    if (!loadInBackground) gBrowser.selectedTab = newTab;
  } else
    openUILink(url, aEvent, false, true);
}

this.checkForMiddleClick = function(aNode, aEvent) {
  closeMenus(aEvent.target);
  if (aEvent.button == 1) {
    var fn = new Function("event", "this.search(this, event)");
    fn.call(aNode, aEvent);
    if (gURLBar) handleURLBarRevert(); //reset the URL bar
  }
}

this.selectEngine = function(aNode, aEvent) {
  var engine = aEvent.target.engine;
  var ss = searchService();
  ss.currentEngine = ss.getEngineByName(engine.name);
  aNode.engine = engine;
  aNode.tooltipText = aNode.engine.name;
  aNode.image = aEvent.target.getAttribute("src");
}

this.populateMenu = function(aNode) {
  var ss = searchService();
  var engines = ss.getVisibleEngines({ });
  const kXULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";

  while(aNode.firstChild && aNode.firstChild.localName != "menuseparator") {
    aNode.removeChild(aNode.firstChild);
  }

  for (var i = engines.length - 1; i >= 0; i--) {
    var mi = document.createElementNS(kXULNS, "menuitem");
    mi.id = "cb-search-" + engines[i].name;
    mi.className = "menuitem-iconic searchbar-engine-menuitem";
    mi.setAttribute("label", engines[i].name);
    if (engines[i].iconURI)
      mi.setAttribute("src", engines[i].iconURI.spec);
    mi.engine = engines[i];
    if (mi.engine == ss.currentEngine)
      mi.style.fontWeight = "bold";
    mi.setAttribute("onclick",
      "parentNode.parentNode.selectEngine(parentNode.parentNode, event)");
    aNode.insertBefore(mi, aNode.firstChild);
  }
}

this.currentEngine = searchService().currentEngine;

var ss = searchService();
this.engine = ss.currentEngine;
this.tooltipText = this.engine.name;
this.image = this.engine.iconURI.spec;

var mp = this.appendChild(document.createElement("menupopup"));
mp.setAttribute("onpopupshowing", "parentNode.populateMenu(this)");
mp.setAttribute("oncommand", "event.stopPropagation()");

var managerSeparator = mp.appendChild(document.createElement("menuseparator"));
managerSeparator.id = "cb-searchbutton-separator"
var managerItem = mp.appendChild(document.createElement("menuitem"));
managerItem.setAttribute("label", "Управление списком поисковых систем");
managerItem.setAttribute("oncommand",
  "openDialog('chrome://browser/content/search/engineManager.xul', " +
  "'engineManager', 'chrome, dialog=no')");

this.type = "menu";
this.setAttribute("onclick", "this.checkForMiddleClick(this, event)");


в которой по ЛКМ - открывается список выбора поиска, а по СКМ - поиск в новой вкладке в бэкграунде. Возможно ли сделать, чтобы было, как в "Context Search" все по ЛКМ ,то есть : ЛКМ открылся список , ЛКМ в списке - это одновременно и выбор поиска и открытие поиска в новой текущей вкладке?
                    Отредактировано lokiju (Сегодня 10:21:20)

Так умеет Foobar :: Дополнения Firefox, но все таки хотелось бы кнопку CB

Отсутствует

 

№391507-04-2012 18:54:38

Abricosio
Участник
 
Группа: Members
Зарегистрирован: 13-01-2011
Сообщений: 30
UA: Firefox 10.0
Веб-сайт

Re: Custom Buttons

Infocatcher пишет

Вот «Выделить всё» – это

Выделить код

Код:

<menuitem id="menu_selectAll" label="Выделить всё" command="cmd_selectAll" />

Так что надо найти элемент <command> с id="cmd_selectAll":

Выделить код

Код:

<command id="cmd_selectAll" oncommand="goDoCommand('cmd_selectAll')" />

Так что искомый код такой:

Выделить код

Код:

goDoCommand('cmd_selectAll')

Спасибо Вам большое!

Отсутствует

 

№391607-04-2012 19:17:10

Inko7
Участник
 
Группа: Members
Зарегистрирован: 09-11-2009
Сообщений: 1008
UA: Firefox 11.0

Re: Custom Buttons

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

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

Выделить код

Код:

intervalID = setInterval(FindAndHighlight, 1000);
function FindAndHighlight(){
var wordsToSearch = ["Сюда", "вводим", "слова", "для", "поиска", " и ", "подсветки"]; 
while (wordsToSearch. length > 0)
{
    gFindBar. _findField. value = wordsToSearch. shift ();
    gFindBar. toggleHighlight (true);
}
}


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

Выделить код

Код:

function Highlight(event) {

// hide Highlight
gFindBar._highlightDoc(false);

// auto Highlight
if (custombuttonsUtils. getPrefs ("Auto.Highlight", true))
{
// getting prefs Unicode value
var value = prefs.getComplexValue("Auto.Highlight.value",
      Components.interfaces.nsISupportsString).data;

// Highlight
var word = [value];
gFindBar._highlightDoc(true, word);
}
 };


искомые слова находятся в параметре "Auto.Highlight.value" и в нем разделены пробелом
я в этом не силен, поэтому прошу помощи, а то мозг уже сломал

Отсутствует

 

№391707-04-2012 19:50:03

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

Re: Custom Buttons

bunda1 пишет

//закрыть все остальные окна кроме текущего
var windowManager = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService(Components.interfaces.nsIWindowMediator);
var enumerator = windowManager.getEnumerator(null);
var thisWindow = windowManager.getMostRecentWindow(null);
while (enumerator.hasMoreElements()) {var thatWindow = enumerator.getNext(); if (thisWindow != thatWindow) {thatWindow.close();}}

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

Добавлено 07-04-2012 20:09:36

lokiju пишет

Indomito пишет: Экспорт импорт кнопок в HTML-файл. Просто иногда всякое случается и кнопки теряются, а так они запоминаются в файле и их можно восстановить/перенести.P.S. Сейчас просто форум сделал слияние двух постов и возникла проблемка - не всё влезло в один пост.                    Отредактировано Indomito (05-04-2012 20:20:17)Так красивше [b]Custom Buttons XML Exporter/Importer/b]

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

Отредактировано Indomito (07-04-2012 20:09:36)


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

Отсутствует

 

№391807-04-2012 21:19:13

lokiju
Участник
 
Группа: Members
Зарегистрирован: 30-01-2012
Сообщений: 208
UA: Firefox 11.0

Re: Custom Buttons

Indomito пишет

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

ПКМ по любой кнопке СВ после установки Custom Buttons XML Exporter/Importer. См. контекстное меню СВ

Отсутствует

 

№391907-04-2012 21:23:29

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

Re: Custom Buttons

Ясно, попробую.
Если данная кнопка хорошая (нет багов), то стоит сделать перевод опций и добавить её в список кнопок с указанием авторства.


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

Отсутствует

 

№392008-04-2012 03:52:29

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

Re: Custom Buttons

Indomito пишет

Как реализовать кнопку

Выделить код

Код:

/*CODE*/
BrowserDownloadsUI();
/*Initialization Code*/
this.tooltipText = "Показать список загруженных файлов";

что бы она показывала список загруженных файлов (реализовано), а по повторному нажатию закрывала этот список/окно ?

Вот пример: window.js
Это для открытия произвольного окна. Для загрузок можно сделать проще. :)
В коде надо менять URI и windowtype (если есть) открываемого окна:
new Window("chrome://mozapps/content/downloads/downloads.xul", "Download:Manager");
И может понадобиться задание дополнительных параметров вызова.
Применительно к загрузкам это определяется опытным путем, потому как окно открывается из сервиса:

Выделить код

Код:

function BrowserDownloadsUI() {
    Cc['@mozilla.org/download-manager-ui;1'].getService(Ci.nsIDownloadManagerUI).show(window);
}

Еще для загрузок можно сделать так (секция «код»):

Выделить код

Код:

this.linkedWindow.close() || BrowserDownloadsUI();

Тогда можно обойтись без передачи непонятных параметров. :D


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

Отсутствует

 

№392108-04-2012 04:02:39

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

Re: Custom Buttons

Infocatcher не работает, т.е. код

Выделить код

Код:

this.linkedWindow.close() || BrowserDownloadsUI();

не открывает и не закрывает или я что то не понимаю.

Sun Apr 08 2012 04:04:58
Ошибка: this.linkedWindow is undefined
Источник: chrome://custombuttons-context/content/button.js?windowId=Firefox&id=custombuttons-button80@code
Строка: 4

Отредактировано Indomito (08-04-2012 04:06:21)


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

Отсутствует

 

№392208-04-2012 04:51:15

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

Re: Custom Buttons

Indomito
Потому что «/* Initialization */» и далее должно быть в инициализации.


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

Отсутствует

 

№392308-04-2012 04:58:09

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

Re: Custom Buttons

Infocatcher так?

Выделить код

Код:

/*Initialization Code*/
this.tooltipText = "Показать список загруженных файлов";
this.linkedWindow.close() || BrowserDownloadsUI();

function BrowserDownloadsUI() {
    Cc['@mozilla.org/download-manager-ui;1'].getService(Ci.nsIDownloadManagerUI).show(window);
};

да?
Если так, то ошибка та же... сорри если туплю.


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

Отсутствует

 

№392408-04-2012 05:05:01

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

Re: Custom Buttons

Indomito

Откуда: Москва-Север

А не надо по ночам не пойми чем заниматься. :D

Там по ссылке после «/* Code */» идет код для одноименной секции.
При этом вместо

Выделить код

Код:

this.linkedWindow.toggle([null, 0]);

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

Выделить код

Код:

this.linkedWindow.close() || BrowserDownloadsUI();

Далее после «/* Initialization */» идет код для «инициализации».


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

Отсутствует

 

№392508-04-2012 05:09:58

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

Re: Custom Buttons

Infocatcher спасибо, а я то думал что так мало кода выходит :D
т.е. по уму то больше должно быть же LOL

Отредактировано Indomito (08-04-2012 05:10:51)


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

Отсутствует

 

Board footer

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