Библиотека StdMenuTools служит для добавления стандартных (часто используемых) функций меню Инструменты.
Библиотека не использует (дополнительные) константы и переменные.
Для её включения надо добавить в секции процедур и функций код включения файла:
{$I _fun_StdMenuTools} { Standard Menu Tools functions, }При этом импортируются функции:
Процедура запускает “Меню выбора консольных окон
…”.
Обычно вызывается из меню Инструменты.
Процедура обработки “Меню выбора консольных окон
…”.
Обычно вызывается в секции обработки результатов редактирования.
Процедура запускает “Открыть программу для редактирования
…”.
Обычно вызывается из меню Инструменты.
Процедура обработки “Открыть программу для редактирования
…”.
Обычно вызывается в секции обработки результатов редактирования.
Процедура запускает “Перезапустить устройство
…”.
Обычно вызывается из меню Инструменты.
Процедура обработки “Перезапустить устройство
…”.
Обычно вызывается в секции обработки результатов редактирования.
Функция проверки уровня доступа aLevel (из набора
Lock,Guest,User,Root)
для команды aCmd.
При отказе в доступе выдается сообщение
Для использования библиотеки помимо её включения надо сделать следующее:
cmd_MenuConsolesOpen : Integer; { @MenuConsolesOpen }
cmd_MenuEditProgramOpen : Integer; { @MenuEditProgramOpen }
cmd_MenuDeviceRestartOpen : Integer; { @MenuDeviceRestartOpen } //////////////////////////////////////////
n:=n+EditAddInputLn('Открыть Консольное Окно …');
n:=n+EditAddConfirm('');
n:=n+EditAddCommand('@MenuConsolesOpen');
//////////////////////////////////////////
n:=n+EditAddInputLn('Отредактировать Программу …');
n:=n+EditAddConfirm('');
n:=n+EditAddCommand('@MenuEditProgramOpen');
//////////////////////////////////////////
n:=n+EditAddInputLn('Перезапустить Устройство …');
n:=n+EditAddConfirm('');
n:=n+EditAddCommand('@MenuDeviceRestartOpen'); {
Menu CONSOLES
}
MenuConsolesHandler;
{
Menu EDITPROGRAM
}
MenuEditProgramHandler;
{
Menu DEVICERESTART
}
MenuDeviceRestartHandler; cmd_MenuConsolesOpen:=RegisterStdInCmd('@MenuConsolesOpen','');
cmd_MenuEditProgramOpen:=RegisterStdInCmd('@MenuEditProgramOpen','');
cmd_MenuDeviceRestartOpen:=RegisterStdInCmd('@MenuDeviceRestartOpen',''); {
@MenuConsolesOpen
}
if (cmdid=cmd_MenuConsolesOpen) then begin
MenuConsolesStarter;
Data:='';
end else
{
@MenuEditProgramOpen
}
if (cmdid=cmd_MenuEditProgramOpen) then begin
if HasUserAccessLevelTip('root',cmd,7,7000) then MenuEditProgramStarter;
Data:='';
end else
{
@MenuDeviceRestartOpen
}
if (cmdid=cmd_MenuDeviceRestartOpen) then begin
if HasUserAccessLevelTip('root',cmd,7,7000) then MenuDeviceRestartStarter;
Data:='';
end elseСмотрите например wj300a_main_ctrl.pas.