OnScriptRunLine

lvilvi
отредактировано 16:23 Раздел: FastScript
Как в OnScriptRunLine отловить вход в процедуру или функцию, чтобы при написании IDE для FastScript можно было реализовать отличия например (F7- входить в процедуру, F8 - до следующей строки без вождения)

Комментарии

  • отредактировано 16:23
    при нажатии F8 отладчик всегда переходит на след. строку(i+1),

    следователььно необходимо пропускать все OnRunLine пока строка не станет i+1...

    а при F7 естесвенно ничего пропускать не надо...
  • lvilvi
    отредактировано 16:23
    Хорошой ответ , но откуда мне знать . что в строке i (по вашему) и есть точка входа в процедуру ?????
    Вопрос то и состоит в том , как определить , что это вход в процедуру
  • lvilvi
    отредактировано 16:23
    Забыл отметить , что код может содержать комметарии и прочее , это как не учитывается в номере строки ?
  • отредактировано 16:23
    Ничего знать про вход не надо, если сработает OnRunLine, то вызовется ниже приведённая процедура где SourcePos и есть место в коде, и OnRunLine работает как F7, коментарии он опускает...

    procedure RunLine(Sender: TfsScript; const UnitName, SourcePos: String);
    begin
    p := fsPosToPoint(SourcePos);
    frmCodeEditor.SyntaxMemo.SetPos(p.x, p.y);
    frmCodeEditor.SyntaxMemo.SetActiveLine(p.y-1);
    FStopped := True;
    while FStopped then Application.ProcessMessages;
    end;

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.