nesco писал(а):
се эти проверки -- это попытка привести к старому алгоритму чтения данныхэто не является правильным. Алгоритм уже встроен в кодогенератор и не следует реализовывать его вручную. При нарушение данного пожелания компонент может начать не верно работать после возможного расширения алгоритма. Скажем когда дело дойдет до реализации МТ, то ни один компонент с таким "ручным" разбором не будет работать с этой технологией.
elseif (Text <> '') - так тоже делать нельзя. Правильнее использовать isdef и isset. Причина достаточно проста: если мы меняем дефолтное значение св-ва, то при такой реализации придется править еще и код элемента.
elseif (Text <> '') и ', PChar(', Text, '), ', - нельзя читать значение параметра элемента более одного раза. Этот код будет не верно работать в том случае, когда Text читается из потока. Поскольку в первый раз вместо Text кодогенератор поставит данные из потока, а во второй раз он уже будет считать, что поток пуст и вместо Text окажется пустая строка.