Новый редактор для создания пользовательских блоков.

Появился в версии 7.

Создаем свой блок. Вопросы, помощь знатоков.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2284
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 335
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#121

Сообщение rw6cm » 01.11.2020{, 22:15}

Phazz писал(а):
01.11.2020{, 20:26}
Вес проекта не является существенной проблемой.
Если не выкладывать на форум и не делать сложных проектов, да.
Далеко ходить не надо. Пример с соседней ветки.
Файл проекта Nakia 5110 RUS ESP8266_FLP711_V2.flp состоящий всего из одного блока весит 3,22МБ.
Убираем из блока библиотеки, и проект весит 340КБ (из которых 140кб занимает рисунок)
Не хило так в 10 раз увеличится объем файлов на форуме ))
и это учесть, что это всего один блок, и в его библиотеке нет ни чего лишнего.
Не знаю как с блоками 7ой версии будут работать сложные проекты ,( пока не делал)
но в ранних версиях с встроенными тяжелыми библиотеками, средний по сложности проект, при редактировании жутко тормозил.
Время покажет будут проблемы или нет ))
Win10-64, FLProg (portable)

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#122

Сообщение Dryundel » 03.11.2020{, 16:36}

rw6cm писал(а):
01.11.2020{, 22:15}
Если не выкладывать на форум и не делать сложных проектов, да.
Далеко ходить не надо. Пример с соседней ветки.
Файл проекта Nakia 5110 RUS ESP8266_FLP711_V2.flp состоящий всего из одного блока весит 3,22МБ.
Ну и что страшного в 3,22МБ? Это как то сказывается на работу? - Не заметил.
А для выкладывания на форум есть такая штука как архиватор. :) Сомневаюсь что Вы про него не слышали.
Попробовал упаковать данный файл. При обычном сжатии 357кБ.
Не вижу никаких проблем.
А вот поиск именно нужной библиотеки для конкретного блока, может не слабо так усложнить жизнь.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2284
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 335
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#123

Сообщение rw6cm » 03.11.2020{, 22:05}

Dryundel писал(а):
03.11.2020{, 16:36}
А для выкладывания на форум есть такая штука как архиватор. :) Сомневаюсь что Вы про него не слышали.
Приятно общаться с грамотными людьми ))
По факту пока не упрешься в лимит, до архиватора дело не доходит. Есть и те, кто не умеет им пользоваться.
Но не будем больше об этом... Нам было что сказать - нас услышали.
Win10-64, FLProg (portable)

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 790
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#124

Сообщение support » 06.11.2020{, 07:13}

rw6cm писал(а):
01.11.2020{, 15:27}
Здесь как вариант если пристегнута библиотека к блоку, использовать именно ее, не трогая другие.
Например чтобы перед компиляцией флп создавал папку, клал в нее библиотеки с блоков и сформированный скетч, а после передавал IDE.
Это было бы идеально, но насколько я знаю, ИДЕ не при поиске не смотрит на папку куда складывается скетчь, а смотрит в заранее прописанные папки. И как её заставить сначала проверить временную папку скетча, я не знаю. Хотя возможно я не прав, буду проверять.
Автор программы FLProg.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2284
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 335
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#125

Сообщение rw6cm » 06.11.2020{, 08:46}

support писал(а):
06.11.2020{, 07:13}
Это было бы идеально, но насколько я знаю, ИДЕ не при поиске не смотрит на папку куда складывается скетчь, а смотрит в заранее прописанные папки. И как её заставить сначала проверить временную папку скетча, я не знаю. Хотя возможно я не прав, буду проверять.
Если в корне папки с скетчем есть файлы библиотеки, и в скетче указана эта библиотека в двойных кавычках,
то IDE берет библиотеку в первую очередь из папки. Если в папке нет библиотеки, то берет ее дальше по списку приоритетов.
Пример:
СпойлерПоказать
В примере две библиотеки с одним названием но разным содержанием.
Если в скетче библиотека указана #include <Stepper.h> , то IDE игнорирует библиотеку в папке.
2020_11_06_08_13_37_D_Desktop_1234.png
Если в скетче библиотека указана #include "Stepper.h" то IDE в первую очередь берет из папки.
2020_11_06_08_20_05_D_Desktop_1234.png
А если не находит библиотеку в папке, то берет ее дальше по списку.
2020_11_06_08_23_26_D_Desktop_1234.png
Сложности могут возникнуть если в блоке используется несколько сложных по структуре библиотек.
В которых будут одноименные файлы или папки. Так как их содержимое надо будет слить в корень папки скетча.
Здесь уже при создании блока понадобятся знания работы с библиотеками.
Win10-64, FLProg (portable)

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#126

Сообщение Dryundel » 06.11.2020{, 13:54}

rw6cm писал(а):
06.11.2020{, 08:46}
Если в корне папки с скетчем есть файлы библиотеки, и в скетче указана эта библиотека в двойных кавычках,
то IDE берет библиотеку в первую очередь из папки. Если в папке нет библиотеки, то берет ее дальше по списку приоритетов.
Так и есть. Все правильно.
rw6cm писал(а):
06.11.2020{, 08:46}
Сложности могут возникнуть если в блоке используется несколько сложных по структуре библиотек.
В которых будут одноименные файлы или папки. Так как их содержимое надо будет слить в корень папки скетча.
Здесь уже при создании блока понадобятся знания работы с библиотеками.
А вот здесь Вы не правы. При чем здесь сложность структур библиотек? Это не влияет. Каждая библиотека в своей папке.

Сложности могут возникнуть лишь в том случае, если используемые в скетче библиотеки, являются одноименными, но отличающимися.
К примеру, разные версии одной и той же библиотеки.
Вот тогда могут быть накладки.
Но и в этом случае есть вариант. Не могу оценивать на сколько он осуществим.
А именно:
Dryundel писал(а):
01.11.2020{, 12:41}
Сергей, возможно ли решить данную проблему, используя к примеру файл library.properties, присутсвующий в большинстве обновляемых библиотек?
Возможно ли использовать к примеру параметр version= из данного файла для проверки и сравнения с установленной версией библиотеки?
И в случае если в ПБ вшита более новая версия, логично было бы заменять уже установленную на свежую.
Вот и вопрос, возможно ли сравнивать библиотеки по параметру в файле, который находится в этой папке и выбирать наиболее свежую?
Точней, по очередности библиотеки залить в папку со скетчем.
А при заливке очередной, при совпадении имен, проверить параметр version= и в зависимости от него, либо залить с заменой, либо не заливать.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2284
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 335
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#127

Сообщение rw6cm » 06.11.2020{, 16:53}

Dryundel писал(а):
06.11.2020{, 13:54}
При чем здесь сложность структур библиотек? Это не влияет. Каждая библиотека в своей папке.
Увы. Это будет работать если файлы библиотеки лежат в корне папки с скетчем. Ни каких "своих" папок IDE не пропустит.
Win10-64, FLProg (portable)

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#128

Сообщение Dryundel » 06.11.2020{, 17:23}

rw6cm писал(а):
06.11.2020{, 16:53}
Увы. Это будет работать если файлы библиотеки лежат в корне папки с скетчем. Ни каких "своих" папок IDE не пропустит.
Блин! Точно! Тупой IDE! И я вместе с ним! :smile37:

Отправлено спустя 49 минут 29 секунд:
rw6cm писал(а):
06.11.2020{, 08:46}
Сложности могут возникнуть если в блоке используется несколько сложных по структуре библиотек.
В которых будут одноименные файлы или папки. Так как их содержимое надо будет слить в корень папки скетча.
Кароч. Я тут мозгами пораскинул, и пришел к мнению, что это фигня.
Вероятность что совпадут какие то файлы из разных библиотек ничтожно мала. Так что этот запар считаю не состоятельным.

А вот файл library.properties он везде одноименный, если вообще присутствует. Так что сравнивать его с уже залитым в папку со скетчем не имеет смысла, ибо там может быть файл от другой библиотеки.
Если только как то осуществить сравнение до заливки.

Хотя можно не только один параметр сравнить. Кроме версии там еще несколько.

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 790
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#129

Сообщение support » 06.11.2020{, 20:39}

rw6cm писал(а):
06.11.2020{, 08:46}
Если в корне папки с скетчем есть файлы библиотеки, и в скетче указана эта библиотека в двойных кавычках,
то IDE берет библиотеку в первую очередь из папки. Если в папке нет библиотеки, то берет ее дальше по списку приоритетов.
Не знал, буду изучать вопрос.
Автор программы FLProg.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#130

Сообщение Dryundel » 13.11.2020{, 14:54}

support, есть несколько небольших пожеланий по новому редактору:

1. В параметрах для числовых форматов разрешить ввод в BIN и HEX представлении. Вероятно надо всего лишь разрешить ввод символов b, x. A, B, C, D, E, F. (Но я могу ошибаться по поводу простоты)

Зачем это нужно:
При создании условия к примеру проверки диапазона адресов устройства, можно было бы ограничится "Адрес >= 0x20 END Адрес <= 0x27", а с типом String приходится вот так извращаться:
СпойлерПоказать
2020-11-13_143104.jpg
2. Добавить бы в условия, кроме "равно","не равно"... еще и пункт "не определено" (не выбрано).
С числовыми форматами еще как то можно придумать условие, когда параметр еще не определен. По диапазону например. И операторов там много. А вот со стрингом проблема. Там только "равно" или "не равно". А если стринговых пунктов в параметре пара десятков и надо сделать условие при котором значение не равно ни одному из этих пунктов, вот здесь и затык.

3. Рассмотрите пожалуйста возможность добавления условий при настройке параметра и кода. Или хотя бы что бы можно было создавать составное условие. Что бы в условие можно было включить не только параметр но и другое условие. В противном случае приходится дублировать условия если они составные и отличаются совсем не много.
СпойлерПоказать
2020-11-13_145032.jpg
4. Нельзя ли убрать слово "Значение" из настроек ПБ. Народ жалуется что мешает.
German писал(а):
13.11.2020{, 22:07}
При выборе столбцов и строк в блоке не много сбивает количество информации: "Строка значение 1", "Столбец значение 2".
Ну и действительно, мне кажется оно здесь лишнее.
СпойлерПоказать
2020-11-13_234840.jpg
Последний раз редактировалось Dryundel 14.11.2020{, 10:22}, всего редактировалось 5 раз.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#131

Сообщение Dryundel » 13.11.2020{, 21:24}

av писал(а):
13.11.2020{, 19:35}
в новом редакторе в вкладке "Общие параметры" да и не только при перемещении стрелками вверх вниз параметр после сохранения не сохраняет положение в которое его передвинули
av, Вы не там двигаете.
Двигаем здесь и тогда все окПоказать
2020-11-13_211744.jpg

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

Новый редактор для создания пользовательских блоков.

#132

Сообщение Naladchik » 15.11.2020{, 15:51}

support,
По моему уже было, но повторю.
В новом редакторе прошу рассмотреть возможность перенесения (копирования) кода из секции в секцию.
А то создал несколько фрагментов кода в одном месте секции (SETUP или LOOP), а надо попробовать их поместить в другое и приходится создавать все фрагменты заново, со всеми условиями. Один или два не страшно, а если десяток и больше. Потом сидишь и ищешь где какие условия потерялись.
А была бы возможность перемещения (копирования) все решилось бы махом.
Win10-64. FLProg Portable.
Изображение

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#133

Сообщение Dryundel » 18.11.2020{, 08:46}

В "Стандартном параметре" при настройке выпадающего списка или переключателя поля ввода ведут себя неадекватно.
"Значение" вводится справа налево, а в "Текст" при вводе пробела курсор перескакивает в начало строки.

Отправлено спустя 3 минуты 55 секунд:
.
Пользовательские блоки из нового редактора, имеющие достаточно сложную структуру, весьма заметно тормозят FLProg, тем более если таковых в проекте несколько.
Возможно ли как то исправить ситуацию?

Отправлено спустя 6 часов 40 минут 8 секунд:
Еще одно пожелание:
Чисто для удобства при отладке. Сделать возможность отключать компиляцию отдельных блоков кода. Типа чекбокс "Не компилировать" и пиктограмму на него с крестом.
Можно конечно код в блоке закоментировать, но не видно какой блок в данный момент в работе, а какой нет.
Последний раз редактировалось Dryundel 18.11.2020{, 19:26}, всего редактировалось 1 раз.

Ardudue
Лейтенант
Сообщения: 423
Зарегистрирован: 13.04.2020{, 18:22}
Репутация: 24
Имя: Антон

Новый редактор для создания пользовательских блоков.

#134

Сообщение Ardudue » 18.11.2020{, 20:13}

av писал(а):
18.11.2020{, 16:53}
в версии 7.1.1 при вводе пробела курсор перескакивает в начало строки.
support, подтверждаю при вводе пробела курсор перескакивает в начало строки

Ardudue
Лейтенант
Сообщения: 423
Зарегистрирован: 13.04.2020{, 18:22}
Репутация: 24
Имя: Антон

Новый редактор для создания пользовательских блоков.

#135

Сообщение Ardudue » 19.11.2020{, 05:37}

av писал(а):
18.11.2020{, 20:25}
Есть правда танец с бубном :smile171: . С начала пишем последнее слово нажимаем пробел перескакиваем в начало, теперь пишем первое слово и добавляем пробел.
именно так и камлаю. Но это не кашерно :smile390:

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 790
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#136

Сообщение support » 19.11.2020{, 18:32}

Dryundel писал(а):
18.11.2020{, 15:30}
В "Стандартном параметре" при настройке выпадающего списка или переключателя поля ввода ведут себя неадекватно.
"Значение" вводится справа налево, а в "Текст" при вводе пробела курсор перескакивает в начало строки.
Исправил

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#137

Сообщение Dryundel » 19.11.2020{, 18:36}

support, Сергей, Тормоза страшные от блоков из нового редактора. Можно что то сделать?
Пример: viewtopic.php?f=63&t=6836&p=95804#p95804

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 790
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Новый редактор для создания пользовательских блоков.

#138

Сообщение support » 19.11.2020{, 20:30}

Dryundel писал(а):
19.11.2020{, 18:36}
support, Сергей, Тормоза страшные от блоков из нового редактора. Можно что то сделать?
Пример: viewtopic.php?f=63&t=6836&p=95804#p95804
Победил вроде.
Автор программы FLProg.

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#139

Сообщение aidar_i » 19.11.2020{, 21:03}

Лежат еще 3 вылета, не знаю повторяюсь или нет
error3.log
(69.89 КБ) 46 скачиваний
error2.log
(71.38 КБ) 32 скачивания
error1.log
(67.61 КБ) 44 скачивания

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

Новый редактор для создания пользовательских блоков.

#140

Сообщение Naladchik » 23.11.2020{, 14:53}

support,
Сергей, так все таки что на счет копипаста viewtopic.php?f=112&t=6485&start=140#p95671 ?
Да / Нет /Возможно, но позднее ?
Win10-64. FLProg Portable.
Изображение

Ответить

Вернуться в «Разработка пользовательских блоков»