MyOpera.net
Информация об Opera
Поддержка, сервис
Мастерская
Подписка на новости

e-mail:

My Counters


Rambler's Top100






  

  
     




Добавление кнопок пользователя

Автор: el-f
el-f@reversing.net

Раньше я был большим поклонником Netscape Communicator'а. И особенно мне в нем нравилась возможность создавать свои кнопочки в т.н. Personal Bar'е. Уже практически год я пользуюсь браузером Opera и мне всегда не хватало в ней этой возможности. Спешу вас обрадовать, она есть. Только очень глубоко спрятана. Итак, настройка панели инструментов у Оперы хранится в каталоге Buttons её домашней директории.

Opera
|---Buttons
... |---Default
|---DefSmall
|...


В каталоге Buttons в свою очередь тоже два каталога: Default и DefSmall (см. схему). В каждом из них хранятся картинки для кнопочек и файл buttons.ini, который задает конфигурацию этих кнопок: последовательность, функции и т.д.

Сразу хочу сделать два замечания:
1. В каталоге Buttons лежит файл ReadMe.txt. Прочитайте его внимательно — пригодится.

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

Для того, чтобы проверить какой набор у вас — сходите в настройки Оперы. Итак, сейчас мы добавим несколько своих кнопок.

Замечу, что Опера позволяет добавлять не больше 8 пользовательских кнопочек. Нам так много и не надо. Открываем файл buttons.ini. Он состоит из нескольких разделов.

Нас интересуют вот какие:
1. [TOOLBAR]
2. [Main Button Bar]

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

Я подготовил несколько рисунков:
1. Для перехода на диск C: (disk_c.gif)
2. Для перехода на диск D: (disk_d.gif)
3. Для перехода на сайт Reversing.NET (rev.gif)

Все эти картинки прилагаются к статье.
rar file Скачать картинки disk_c.gif, disk_d.gif, rev.gif

Кроме того, в каталоге DefSmall (и Default соответственно) лежит большой набор уже готовых кнопок.

Для добавления своих кнопок в Опере предусмотрены специальные имена:special, special2, ..., special8. Ровно восемь.

Ищем их в разделе [TOOLBAR] и находим:
special = url.gif
special2 = url.gif
special3 = url.gif
special4 = url.gif
special5 = url.gif
special6 = url.gif
special7 = url.gif
special8 = url.gif

Меняем на вот что:
special = search.gif
special2 = disk_c.gif
special3 = disk_d.gif
special4 = rev.gif
special5 = url.gif
special6 = url.gif
special7 = url.gif
special8 = url.gif

Причем картинка search.gif уже есть. Мы повесим на нее поисковик Яandex.

Теперь идем в раздел [Main Button Bar] и видим вот что:
[Main Button Bar]
Version = 1 # Version, this must be <> 0 #Button number = show when full; show when simple; id; spacing in front;
Button 0 = 1;1;10000;3 # New
Button 1 = 1;1;10004;0 # Print
Button 2 = 1;0;10227;3 # Find
Button 3 = 1;1;13010;0 # Toggle hotlist
Button 4 = 1;0;13011;3 # Fullscreen
Button 5 = 1;1;10032;0 # Back
Button 6 = 1;1;10056;0 # Reload
Button 7 = 1;1;10031;3 # Forward
Button 8 = 1;1;10072;0 # Home
Button 9 = 1;0;10052;3 # Active bookmark folder
Button 10 = 1;0;10019;0 # Tile
Button 11 = 1;0;10018;0 # Cascade

Добавляем в конец раздела такие строки:
Button 12 = 1;1;13000;0 # Yandex
Button 13 = 1;1;13001;0 # Disk C:
Button 14 = 1;1;13002;0 # Disk D:
Button 15 = 1;1;13003;0 # Reversing.NET

Несколько комментариев по поводу этого фрагмента. Как видно, для специальных кнопок выделен интервал идентификаторов начиная от 13000 (special) и кончая 13007 (special8).

Именно поэтому у нас указаны такие идентификаторы. Если вы напишите другие, то работать не будет. Точнее будет, но Опера будет выполнять стандартные действия, которые повешены на указанные вами идентификаторы.

Теперь можно перезапустить Оперу (если она у вас была открыта) и мы увидим наши кнопки. Но они пока что ничего не делают.

Для того, чтобы они начали работать, необходимо в конец файла дописать такие строки:

[SPECIAL URL]
Special = http://www.yandex.ru
Special2 = file://localhost/C:/
Special3 = file://localhost/D:/
Special4 = http://www.reversing.net

[SPECIAL TITLE]
Special = "Яandex"
Special2 = "Диск C:"
Special3 = "Диск D:"
Special4 = "Reverse"

Я думаю, что тут все понятно: в разделе [SPECIAL URL] указываются адреса, которые будут открыты при нажатии на специальные кнопки, а в разделе [SPECIAL TITLE] указываются подписи к кнопкам на панели инструментов.

Все, теперь все работает как мы и хотели. Можно еще добавить всплывающие подсказки к нашим специальным кнопкам. Для этого необходимо подправить файл lng, который вы используете.
Но он у вас будет только если вы его сами туда устанавливали.

В нем необходимо в раздел [Translation] добавить следующие строки:
13000="Искать в Яandex"
13001="Открыть диск C:"
13002="Открыть диск D:"
13003="Перейти на Reversing.NET"

rar file Скачать исправленные buttons.ini + LNG файл

Всё. Больше дополнять нечего.

P. S. Хотя можно добавить кнопки для запуска внешних программ.

Для этого в раздел [SPECIAL URL] пишем:
Special = file://localhost/C:/Program Files/FlashGet /JetCar.exe
или просто
Special = C:/Program Files/FlashGet/JetCar.exe

После этого при нажатии на кнопку Special запускается FlashGet. Но! Есть одно но... Открывается новое окно в опере, со строкой адреса, равной указанной нами в качестве значения параметра Special.

Ссылка передается в систему, а окно остается открытым. Как бы его закрыть? Стандартных средств Оперы я не нашел.

Но придумал другой путь: создать HTML файлик на винчестере, в котором прописать открытие нужного exe'шника, а затем на JavaScripte закрытие окна через window.close() А можно вообще класс на яве написать и запускать его как апплет.

Но мне это не нужно и делать это я не буду ;-( Хотите — делайте. Да и с явой последний раз я сталкивался год назад ;-( Просто не помню уже. Кстати, если я не ошибаюсь, браузеры давно уже поддерживают и VisualBasic'овские скрипты. И Опера не исключение.

Конец статьи  
Вверх
Статьи раздела:
 
 
© 2000-2001. Николай Ковальчук webmaster@myopera.net. All rights reserved.