Вверх ↑
Администрация
Ответов: 15294
Рейтинг: 1518
#1: 2011-05-16 14:10:23 ЛС | профиль | цитата
RTCG выполнен как объектный язык в отличие от полностью функционального FTCG. Однако кто уже знает FTCG разобраться в RTCG сможет сразу - исходная концепция осталась неизменной. Например, в FTCG работа с блоками сделана примерно так:

#hws
gvar(BLK_BODY)
BLK_BODY = 'block.body'
block.reg(BLK_BODY)
block.select(BLK_BODY)
...
block.inclvl()
println(..)
println(..)
block.declvl()
...
block.delete(BLK_BODY)

а в RTCG уже так:

#hws
gvar(blk_vars)
blk_vars = block.reg("class_vars").inc()
...
blk_vars.println(..)
blk_vars.println(..)
...
block.delete(blk_vars)

Или скажем если раньше для доступа к полям или вызова методов одного элемента схемы из другого нужно было делать что-то вроде такой жуткой конструкции:

#hws
sys.selectElement(cgt.el_get_child_id(0))
event(cgt.pt_get_name_byid(cgt.pt_arr_event(index)), _data)
sys.selectElement(cgt.el_get_parent_id())

то теперь это выглядит примерно так:

#hws
this.sdk.elements(0).event(this.pt_event(index), _data)
карма: 26
0