Страница 1 из 1

Пользовательский блок CODE

Добавлено: 08.02.2016{, 11:14}
AlexRyzh
Я уже задавал вопрос по этому поводу в другой ветке, там проблема описана http://forum.flprogwiki.ru/viewtopic.php?f=10&t=637
Но никто ничего не говорит.
Я так понимаю, что в коде extern uint8_t SmallFont[]; спецификатор SmallFont берется из библиотеки и в его имя нельзя добавлять ничего лишнего или что-то убрать, иначе будет ошибка.
Получается автор программы сделал дописывание к переменным уникального модификатора, чтоб исключить ошибку связанную с совпадением имён. Но палка о двух концах, и приписывание модификатора к спецификатору делает скетч нерабочим. Приходится вручную удалять уникальный модификатор, тогда работает. 
Даже один экран, с одним размером шрифта, при тестировании блоков очень напрягает каждый раз удалять приписанный модификатор в скетче. А если это будет несколько экранов, да еще информация на экране с разным размером шрифта??? 

Огромная просьба к разработчику, в идеале сделать возможность выбора - приписывать модификатор или нет. Но не плохо было бы даже отключение в программе приписывания модификаторов. 
Я так понимаю, коль уж пользователь вставляет свой код, пусть позаботится о уникальности переменных сам. Да если и ошибся где-то, произошло повторное определение такой же переменной (имя совпало), компилятор тоже выдаст ошибку, но эту ошибку можно 1 раз в блоке исправить (придать уникальность переменной) и скетч будет работать. А в моем случае после каждой компиляции нужно править, удаляя уникальный модификатор Изображение
Прилагаю библиотеку и скомпилированный в программе код.
Если везде в коде 
extern uint8_t SmallFont_190960762_1[];
заменить на
extern uint8_t SmallFont[];
то все работает, иначе ошибка.