florin72а что они делают то?если просто переход по разделам форумато смотри в готовых кнопках там несколько вариантов кнопок с меню - выбирай который понравится и вставляй туда нужные адреса.
Эти кнопки из сборки Firefox Portable by 3Jlou.Вот здесь автор пишет как это реализовано у него(http://forum.mozilla-russia.org/viewtop … 88#p360788). Пишет что реализовано через userChrome.css.Но у меня нет в Фоксе этого файла.По этому и спрашиваю у знающих людей,как это организовать?
Отредактировано florin72 (08-07-2010 11:15:11)
Отсутствует
florin72userchrome.css и эта темаи CB к этому не имеет отношениявы уж определитесь как вы хотите сделать подобные кнопки если через СВ то я написал постом выше как.если через юзерхром то читаем приведённые ссылки чтоб представлять что делаемпотом создаём папки со ссылками в закладках,включаем панель закладок и выводим их туда и добавляем в юзерхром приведённый Злым код чтоб убрать подпись и сменить иконку.
Спасибо.Буду изучать
Отсутствует
а как там дела-то обстоят с разработкой новой версии CB под грядущий 4.0? После приземление кросс-платформенного метода регистрации компонентов (XPCOM) отвалилось много дополнений и CB из их числа.
Сейчас я сильно подсел на найтли билды и без кб кнопочек - ну совсем как без рук.
EDIT: упс, только сейчас в топике про найтли билды наткнулся на ссылочку на исправленное дополнение.
Отредактировано iDev.Pi (08-07-2010 18:52:47)
mzfx
Отсутствует
iDev.Pi уже есть рабочий
http://custombuttons.mozdev.org/drupal/ … ox-40b2pre
Отредактировано COPA (08-07-2010 18:53:16)
Отсутствует
Возвращаясь к старому....
Подскажите почему это
Секция Код:
И ещё вопрос: Как создавать и обращаться к глоб. переменным?
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
Подскажите почему это
Секция Код:
...
требует двойного нажатия
Потому, что этот код составлен частью из кода, предназначенного для раздела "Код", а частью - из кода, предназначенного для раздела "Инициализация".
А в целом - непригоден ни для одного из разделов.
И ещё вопрос: Как создавать и обращаться к глоб. переменным?
Через окно:
или выполнением кода в контексте окна.
Только аккуратно - чтобы не "убить" какую-нибудь из уже существующих глобальных переменных. Может быть, добавлять к имени какой-нибудь префикс ("my", "cb")
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Anton а так верно?
function lbMouse(){
var open="";
var close="";
var theBox = document.commandDispatcher.focusedElement;
var startPos = theBox.selectionStart;
var endPos = theBox.selectionEnd;
var text=theBox.value.substring(0,startPos);
text +=open+theBox.value.substring(startPos, endPos)+close;
text +=theBox.value.substring(endPos, theBox.value.length);
theBox.value = text;
};
function rbMouse(){
var open="";
var close="";
var theBox = document.commandDispatcher.focusedElement;
var startPos = theBox.selectionStart;
var endPos = theBox.selectionEnd;
var text=theBox.value.substring(0,startPos);
var paste = readFromClipboard();
text +=open+paste+close;
theBox.value = text;
};
this.onclick = function(event) {
if(event.button == 0) {
// Действие при клике ЛКМ
lbMouse();
}
else if(event.button == 1) {
// Действие при клике СКМ
}
else if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) {
// Действие при клике ПКМ без модификаторов
rbMouse();
}
};
this.oncontextmenu = function(event) {
if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) {
// Блокируем контекстное меню при клике ПКМ без модификаторов
event.preventDefault();
event.stopPropagation();
}
};
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
Кнопка потеряла функцию перетаскивания окна с последними найтли билдами.
Скорее всего, сломали resource://gre/modules/WindowDraggingUtils.jsm (или как-то хитро переделали, но у меня новая версия не работает).
Так что можно временно скопировать в начало инициализации весь код из старой версии:
/* ***** BEGIN LICENSE BLOCK ***** * Version: MPL 1.1/GPL 2.0/LGPL 2.1 * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. * * The Original Code is mozilla.org Code. * * The Initial Developer of the Original Code is * Markus Stange <mstange@themasta.com>. * Portions created by the Initial Developer are Copyright (C) 2008 * the Initial Developer. All Rights Reserved. * * Contributor(s): * * Alternatively, the contents of this file may be used under the terms of * either the GNU General Public License Version 2 or later (the "GPL"), or * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), * in which case the provisions of the GPL or the LGPL are applicable instead * of those above. If you wish to allow use of your version of this file only * under the terms of either the GPL or the LGPL, and not to allow others to * use your version of this file under the terms of the MPL, indicate your * decision by deleting the provisions above and replace them with the notice * and other provisions required by the GPL or the LGPL. If you do not delete * the provisions above, a recipient may use your version of this file under * the terms of any one of the MPL, the GPL or the LGPL. * * ***** END LICENSE BLOCK ***** */ let EXPORTED_SYMBOLS = [ "WindowDraggingElement" ]; function WindowDraggingElement(elem, window) { this._elem = elem; this._window = window; this._elem.addEventListener("mousedown", this, false); } WindowDraggingElement.prototype = { mouseDownCheck: function(e) { return true; }, dragTags: ["box", "hbox", "vbox", "spacer", "label", "statusbarpanel", "stack", "toolbaritem", "toolbarseparator", "toolbarspring", "toolbarspacer", "radiogroup", "deck", "scrollbox"], handleEvent: function(aEvent) { switch (aEvent.type) { case "mousedown": if (aEvent.button != 0 || !this.mouseDownCheck.call(this._elem, aEvent)) return; let target = aEvent.originalTarget, parent = aEvent.originalTarget; while (parent != this._elem) { let mousethrough = parent.getAttribute("mousethrough"); if (mousethrough == "always") target = parent.parentNode; else if (mousethrough == "never") break; parent = parent.parentNode; } while (target != this._elem) { if (this.dragTags.indexOf(target.localName) == -1) return; target = target.parentNode; } this._deltaX = aEvent.screenX - this._window.screenX; this._deltaY = aEvent.screenY - this._window.screenY; this._draggingWindow = true; this._window.addEventListener("mousemove", this, false); this._window.addEventListener("mouseup", this, false); break; case "mousemove": if (this._draggingWindow) this._window.moveTo(aEvent.screenX - this._deltaX, aEvent.screenY - this._deltaY); break; case "mouseup": this._draggingWindow = false; this._window.removeEventListener("mousemove", this, false); this._window.removeEventListener("mouseup", this, false); break; } } }
Отредактировано Infocatcher (10-07-2010 19:30:54)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Anton а так верно?
Если работает, значит верно, не вижу ничего подозрительного : )
Кнопка потеряла функцию перетаскивания окна с последними найтли билдами. Пофиксите, кто-нибудь?
Вот такой хак вроде бы помогает:
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
У меня на панели есть три кнопки:
Я хочу их совместить в одну, подскажите фрагмент кода по модификации размера или какой программой это сделать, DOM вроде это не делает, но я не уверен ибо не знаю.
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife это:
те Вид - Масштаб - Уменьшить|Сбросить|УвеличитьДобавлено 11-07-2010 13:53:23
okkamas_knife и ещё вопрос как модифицировать твой код Кнопка запуска внешнего приложения что бы можно было производить минимизацию Mozilla Thunderbird в трей после открытия, те ЛКМ я запускаю/ разворачиваю MT, а по ПКМ сворачиваю/закрываю в трей, те что надо поменять:
Запуск: args = args || [];
Закрытие: args = args || [" -turbo"];
Дополнение MTTP в Mozilla Thunderbird установлено.
Скриншот:
По сути я хочу сделать следующее:
ЛКМ - запустить приложение.
СКМ - (не знаю)
ПКМ - закрыть это приложение.
Отредактировано Indomito (11-07-2010 13:57:51)
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife
по ТВ не скажу - не пользуюсь потому не знаю.
ТВ это как частный случай
По сути я хочу сделать следующее:
ЛКМ - запустить приложение.
СКМ - (не знаю)
ПКМ - закрыть это приложение.
СКМ, ну не то что не знаю, просто в резерве.
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife про taskkill я естественно знаю, но тут немного другое. Если в окне ТВ нажать Х (Close), то он уходит в трей. Другие приложения просто закрываются, меня то интересует как сделать/отработать Х, ибо ТВ я не хочу совсем закрыть, тк он у меня постоянно работает.
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife спасибо за Zoom Text Zoom Text/Zoom Page Zoom Page и за участие в ТВ... буду копать )))
Да, в Zoom Page и в Zoom Text есть
как я понял по коду это множитель масштабирования, правда как бы я его не менял, число шагов остаётся прежним... где я ошибаюсь?
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife Посмотрел на:
mozimage.zoom 1.5
toolkit.zoomManager.zoomValues .3,.5,.67,.8,.9,1,1.1,1.2,1.33,1.5,1.7,2,2.4,3
zoom.maxPercent 300
zoom.minPercent 30
потом прочёл в MozillaZine Knowledge Base и прочёл об Toolkit.zoomManager.zoomValues и остальных и... совсем запутался.
Где указывается число шагов?
Зачем указаны %, если уже есть значения?
Извиняюсь за глупые вопросы.
Добавлено 11-07-2010 16:25:35
А mozimage.zoom я в базе почему то не нашел ((
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife и в дополнение что бы уяснить... предположим я написал:
toolkit.zoomManager.zoomValues;.3,.5,.8,1,1.2,1.5,3
zoom.maxPercent;300
zoom.minPercent;30
как мозилла вычислит что ей брать за 100%?
те при .3,.5,.8,1,1.2,1.5,1.7,3
В сторону уменьшения 3 значения.
В сторону увеличения 4 значения.
Проверил - работает, но не будет ли глюка когда либо (различные дополнения я не рассматриваю, а я про сам движок).
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife спасибо за уточнение, я конечно понимал
zoom.maxPercent;700 7 это 700%
zoom.minPercent;10 - 0.1 это 10%
просто подумал, может быть указывается число из toolkit.zoomManager.zoomValues которое должно быть принято по дефолту, те то которое устанавливается кнопкой Zoom Text при нажатии СКМ.
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
Было произведено или моё ошибочное действие или формат ICO был "битым"/ошибочным, так что скрытый текст о якобы баге на данный момент считается ошибочным/ложным/недействительным из за отсутствия возможности протестировать другими участниками (файл ICO был удалён мною и восстановлению не подлежит) конференции.
PS Может надо было не тут или послать ЛС, но по идеи тут обсуждение, так что этот пост думаю к месту к месту.
Отредактировано Indomito (13-07-2010 14:22:55)
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife ОС Win XP SP3 файл пропал, сорри что так получилось, просто пока думал написать файл кикнул.... правда он из инета + для ico весьма подозрительных размеров 256х256х32 это то что я запомнил... могу попробовать его восстановить, но он был на системном диске... хотя... получится выложу.
PS Блин не то, попутал с png, сейчас поищу.
PPS Восстановить не удалось и что бы не вводить в заблуждение я свой пост отредактирую, так более верно ИМХО.
Отредактировано Indomito (13-07-2010 14:32:18)
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife ок, не удалил изначальный пост №2025, а просто отредактировал.
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
okkamas_knife вопрос решил сам (скрытый текст) надо просто аккуратнее писать )))
Первый код подправлен, я добивался в нём следующего (второй взят из набора готовых кнопок и не подвергался модификации):
1. Убрать выделение
2. Поставить курсор в крайнюю позицию,те [ b]выделяемый жирным текст[ /b]_
Ошибка: на некоторых форумах происходит, то ли уход из области ввода, то ли курсор ставится на первую позицию редактируемого/вводимого поста.
Вопрос где я ошибся?
PS В JS я "плавую", просто почти не писал на нём, а в основном на С++, это так к слову, а точнее ко второму вопросу, про создание не модальных List Box, которые нужны для сложно-составных BBCode.
Отредактировано Indomito (14-07-2010 16:51:03)
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует
в переменной ip я получаю весь хтмл код странички
мне оттуда нужно вычленить IP
как это сделать проще?
Вот так:
работает, что касается оптимизации, не знаю, может можно и проще.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Я извиняюсь, но подскажите, а вот такой код сработает верно? (проблемная часть выделена красным):
"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах
Отсутствует