Вопросы и ответы

open source скриптовой язык Orion (аналог PHP) для freepascal / delphi

Модераторы: devels, Модераторы

Вопросы и ответы

Сообщение devels » 15.04.2011 16:43:45

Тема, которая поможет создать будущий F.AQ. по использованию исходников языка и самого ориона.

Я постараюсь ответить на все вопросы касающиеся интеграции движка с приложениями. Движок находится пока в статусе unstable, поэтому в какие-то серьезные проекты я крайне не рекомендую его внедрять. Будьте терпеливы, подождите когда он станет стабильным. Также можно задавать вопросы касательно самого языка Орион.

На кое-какие вопросы ответы можно искать пока тут http://wiki.orion-lang.org и тут http://code.google.com/p/orionphp/w/list
devels
постоялец
 
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Re: Вопросы и ответы

Сообщение hinst » 15.04.2011 18:35:23

уже и домен первого уровня купил
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: Вопросы и ответы

Сообщение CoreX » 05.08.2011 22:41:57

Хотелось бы узнать как создавать и обрабатывать в orion события вызываемые из программы.
CoreX
незнакомец
 
Сообщения: 2
Зарегистрирован: 05.08.2011 22:38:15

Re: Вопросы и ответы

Сообщение devels » 09.08.2011 14:13:14

CoreX писал(а):Хотелось бы узнать как создавать и обрабатывать в orion события вызываемые из программы.


Извиняюсь что так долго не отвечал, есть возможность. Для языка есть универсальный тип - анонимная функция, т.е. даже метод объекта или класса это аннонимная функция для движка.

Поэтому достаточно хранить ссылку на анонимную функцию у себя в программе и вызывать эту функцию через ссылку, передав нужные параметры. Заведомо надо поставить блок на функцию, чтобы ее не уничтожил сборщик муссора, а когда она будет не нужна, снять свой блок.

Посмтреть как это сделать можно здесь:
http://code.google.com/p/game-abstract/ ... Script.pas

События можно легко добавлять через движок:

Например:
Код: Выделить всё
Game::Event(OnInit, function(){
  // код события
});

Game::Event(OnInit, &functionName);
Game::Event(OnInit, &Class::Method);
devels
постоялец
 
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Re: Вопросы и ответы

Сообщение CoreX » 15.08.2011 16:28:44

Хотелось бы мануал прочитать по событиям, если конечно есть. Код непонятен если честно и дополнительных юнитов много. Сложно достать то, что нужно. Я этот код видел уже до создания темы. По этому и решил обратится чтоб поподробней узнать как делается это всё. Желательно без классов. А просто, что-то вроде этого:

Код: Выделить всё

AddEvent(OnInit, function(){
/* code */
});



я так понял надо регистрировать AddEvent через addNativeFunc. Ну вот я допустим зарегистрировал, в параметрах приходит функция, а как её потом вызвать не знаю.
CoreX
незнакомец
 
Сообщения: 2
Зарегистрирован: 05.08.2011 22:38:15


Вернуться в Orion

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Рейтинг@Mail.ru