In-Portal Developers Guide

This is a wiki-based Developers Guide for In-Portal Open Source CMS. The purpose of this guide is to provide advanced users, web developers and programmers with documentation on how to expand, customize and improve the functionality and the code the In-Portal software. Please consider contributing to our documentation writing effort.

K4:Adding New Button to Toolbar

From In-Portal Developers Guide

Jump to: navigation, search
Работа с шаблонами и блоками Работа с шаблонами и блоками
Статьи в этой категории

Панель инструментов это один из основных элементов управления ходом событий в шаблонах. Для добавления новой кнопки в уже имеющуюся панель инструментов следует использовать следующий JavaScript код:

a_toolbar.AddButton(
	new ToolBarButton(
		'custom:sample_button',
		'<inp2:m_phrase label="la_ToolTip_SampleButton" escape="1"/>::<inp2:m_phrase label="la_ShortToolTip_SampleButton" escape="1"/>',
		function() {
			// alert('button worked');
		}
	)
);

Конструктор класса ToolBarButton принимает 5 параметров, из которых только первые 3 обязательные:

название описание
title (string) Идентификатор кнопки. Идентификатор должен быть уникальным в пределах одной панели инструментов. В идентификаторе также можно указать модуль, служащий источником пиктограмм используемых в кнопке (см. Структура директорий). Ниже приведены примеры названий файлов пиктограмм, определяющих вид кнопки:
  • tool_sample_button.gif - вид кнопки по умолчанию (можно нажать);
  • tool_sample_button_f1.gif - вид кнопки, если на неё подвести курсор мышки (можно нажать);
  • tool_sample_button_f2.gif - вид кнопки, когда она не активна (можно не создавать если не используется).

В приведённом выше примере вместо "sample_button" нужно подставить фактическое название кнопки. Название модуля отделяется от названия кнопки при помощи символа двоеточия (":"). Если используемый модуль "core", то его указывать не требуется. В последствии можно использовать название кнопки (не идентификатор) для работы с кнопкой (включение, выключение и т.п.) из объекта панели инструментов.

alt (string) Фраза, показываемая при наведении курсора мыши на кнопку (mouseover). Также эта фраза используется для показывания вспомогательного текста под кнопкой (только если опция конфигурации UseToolbarLabels включена). Если указать 2 фразы разделённые с использованием двух двоеточий ("::"), то фраза указанная до разделителя будет использована в качестве краткой подсказки (при наведении мышки), а фраза указанная после разделителя будет использована в качестве текста, показываемого под кнопкой.
onclick (string) Действие, которое должно происходить при нажатии на кнопку. Обычно, для наглядности, динамически определяется функция и в ней пишется фактический JavaScript код, который должен быть выполнен.
$hidden (int) Кнопка должна быть сразу спрятана после своего добавления в панель инструментов.
prefix (string) Префикс, который влияет на ID, которое будет проставлено созданной кнопке.