Сейчас есть только один способ обработать нажатие кнопки скрипта - через общий обработчик ПриНажатииКнопки().
Но кнопки как и команды часто меняют содержимое буфера обмена. И для них тоже хочется иметь возможность восстанавливать состояние буфера. Но сделать это сейчас невозможно, т.к. обработчик у всех команд общий, а самостоятельно восстановить буфер обмена через УстановитьБуферОбмена() не удается (он не изменяется).
Поэтому прошу добавить возможность прямой привязки обработчика к кнопке и поддержку аннотации &ВосстанавливатьБуферОбмена. Также прошу сделать, чтобы при наличии прямого указания обработчика в кнопке, общий обработчик ПриНажатииКнопки() для нее не вызывался.
Процедура ПриНажатииКнопки(Кнопка)
Если Не ПроверитьРазрешениеИР() Тогда
ПоказатьРазрешениеПриложенияИР(Ложь);
Возврат;
КонецЕсли;
Если Кнопка = "КнопкаРедактироватьТекст" Тогда
РедактироватьТекст();
ИначеЕсли Кнопка = "КнопкаОтладитьОбъект" Тогда
ОтладитьОбъект();
ИначеЕсли Кнопка = "КнопкаУсловиеОстанова" Тогда
КнопкаУсловиеОстанова();
ИначеЕсли Кнопка = "ВычислитьСвойствоРодителяИзВыражения" Тогда
ВычислитьСвойствоРодителяИзВыражения();
...
ИначеЕсли Кнопка = "КнопкаВставитьВОкнеПоискTab" Тогда
КнопкаВставитьВОкнеПоискTab();
КонецЕсли;
КонецПроцедуры