Netspirit писал(а):
...если значение свойства равно по-умолчанию, то оно перекрывается значением из потока. Есть какие-то соображения? Например, в стандартном пакете значение из потока берется, если значение свойства 0 или "". Может как-то можно усовершенствовать систему приоритетов?
В кодогенераторе доработана функция чтения данных элемента: d(name, type, default), где
name - имя верхней точки или свойства элемента,
type - тип данных, к которому приводится значение, полученное из потока,
default - значение по-умолчанию, которое возвращается функцией, если невозможно получить данные из потока.
Теперь у функции можно указать три аргумента. Данная возможность предназначена для чтения данных с нетипизированных верхних точек и при инициализации элемента в теле функции init(), когда невозможно принять данные из потока. Подробности здесь: Работа с элементом
пример использования
#hws
func init
...
// initialize instance
sys.add_var(this.name, 'Graphics')
params = this.props('Constructor').value
if(params == 'Constructor')
blk_init.println(this.codename, ' = ', d('Control', 0, 'this'), '.CreateGraphics();')
...
end