Ошибка в описании параметра CLR_NONE?

 
В справке для SetIndexStyle читаем:
void SetIndexStyle( int index, int type, int style=EMPTY, int width=EMPTY, color clr=CLR_NONE)
Устанавливает новый тип, стиль, ширину и цвет для указанной линии индикатора.
Параметры:
.....................
clr - Цвет линии. Пустое значение CLR_NONE указывает, что цвет не будет изменен.

По ходу дела понадобилось только поменять толщину линии, цвет ее был уже установлен раньше:
   for(intCount=0;intCount<ArraySize(_astr);intCount++) {if(_astr[intCount]==Symbol()) break;}
   SetIndexStyle(intCount,DRAW_LINE,EMPTY,2,CLR_NONE);


В результате линия перестала быть видима, т.е. цвета у нее не стало :)

Вопрос: что все-таки устанавливает параметр CLR_NONE?

 
CLR_NONE на самом деле отсутствие цвета.

В данном случае, цвет не будет изменён, если параметр цвета совсем отсутствует
 
В данном случае, цвет не будет изменён, если параметр цвета совсем отсутствует

Slawa, такие уточнения нужны в хэлпе. Если бы я его читал, то тоже подумал бы, что присутствие параметра clr в значении CLR_NONE не изменяет цвет, а не его отсутствие.
 
Да. Уточнение будет
 
Спасибо, но, может быть, лучше сделать для цвета еще параметр EMPTY, как и для draw_style, который не меняет стиль рисования. Был бы полный комплект :) А то для стиля такой параметр есть, а для цвета - нет. За что такое поражение в правах? :)
В данном случае, цвет не будет изменён, если параметр цвета совсем отсутствует

Как говорил Форд: Цвет вашей машины может быть любым, при условии, что он - черный :)
 
Просто не указывайте этот параметр.
Проблема в том, что цвет можно закодировать почти любым целым числом.
 
Так это опциональный параметр?!
Тогда это я лоханулся :(
Спасибо, Слава!
------
Попробовал, все получилось.
Действительно, если это опциональный параметр, и он стоит последним в объявлении функции, нет никакой нужды устанавливать для него значение EMPTY.
Еще раз спасибо.
Причина обращения: