Новый Редактор Свойств готов, осталось только его зарегистрировать в среде Delphi. Для этого в интерфейсной части модуля с нашим редактором требуется поместить декларацию процедуры Register, а в части implementation
Как уже сообщалось выше, один и тот же редактор свойств можно “привязать” к свойствам, в зависимости от их названия или типа объекта. Это определяется параметрами (второй и третий), которые передаются во время регистрации в процедуре RegisterPropertyEditor. Возможны четыре варианта:
Класс компоненты
Имя свойства
Для каких свойств
Nil
‘’
совпадает тип свойства
Nil
‘Name’
Тип свойства + Имя свойства
TClass
‘’
Тип свойства + класс компоненты
TClass
‘Name’
Тип свойства + Имя свойства+ класс компоненты
Пояснение к таблице. Если вы зарегистрировали Редактор и указали как класс компоненты, так и имя свойства, то данный редактор “привязывается” ко всем свойствам, которые:
имеют тип, указанный в первом параметре процедуры;
принадлежат компоненте, которая относится к классу (или его потомкам), указанному во втором параметре;
имеют имя, совпадающее с указанным в третьем параметре;
Если вместо типа класса в процедуре регистрации стоит Nil, а вместо имени свойства - пустая строка ‘’, то данный редактор “привязывается” ко всем свойствам, которые имеют тип, указанный в первом параметре, независимо от их имени или принадлежности к объекту какого-либо класса.
Если указан только класс, то редактор относится ко всем свойствам указанного типа для объектов указанного класса.
Если указано только имя, то редактор относится к свойствам указанного типа, которые имеют указанное имя.
В нашем случае Редактор Свойств зарегистрирован для всех свойств, которые имеют тип String, относятся к компоненте класса TControl или наследника от него и имеют имя ‘Hint’.