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

Создаем свой блок. Вопросы, помощь знатоков.
Аватара пользователя
Phazz
Полковник
Сообщения: 3131
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

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

Сообщение Phazz »

[ref=#ff8000]AlexCrane[/ref], Ну как вариант, но это в том случае если я знаю сколько будет блоков, а если нет?
Аватара пользователя
AlexCrane
Капитан
Сообщения: 903
Зарегистрирован: 20 окт 2017, 13:22
Откуда: Ульяновск
Имя: Александр
Поблагодарили: 12 раз

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

Сообщение AlexCrane »

Phazz писал(а): 28 фев 2022, 21:05 Ну как вариант, но это в том случае если я знаю сколько будет блоков, а если нет?
А можно четче сформулировать свою мысль, недопонял если честно.
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Аватара пользователя
Phazz
Полковник
Сообщения: 3131
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

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

Сообщение Phazz »

[ref=#ff8000]AlexCrane[/ref], Вот смотрите, у вас в блоке можно выбрать 1 или 2. Ну допустим я сделаю 10, но вдруг в проекте мне нужно 11 или 20? В прочем посмотрев внимательно на библиотеку я уже отказался от этой идеи ) Как то я не представляю как ее сделать чтобы удобно было в флпрог ее использовать
Аватара пользователя
Dryundel
Полковник
Сообщения: 2449
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 6 раз
Поблагодарили: 31 раз

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

Сообщение Dryundel »

av писал(а): 28 фев 2022, 21:22 Но теперь параметры и условия не доступны. Кто как обходит такую проблему ?
Создать переменную с уникальным именем и идентификатор не использовать.
Присвоить этой переменной значение параметра первого блока.
Взять эту переменную другим блоком.
Аватара пользователя
Phazz
Полковник
Сообщения: 3131
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

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

Сообщение Phazz »

А сделать параметр общим нельзя?
Аватара пользователя
Dryundel
Полковник
Сообщения: 2449
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 6 раз
Поблагодарили: 31 раз

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

Сообщение Dryundel »

Phazz писал(а): 28 фев 2022, 21:46 А сделать параметр общим нельзя?
Мультиблоки разные. Не получится.
Аватара пользователя
AlexCrane
Капитан
Сообщения: 903
Зарегистрирован: 20 окт 2017, 13:22
Откуда: Ульяновск
Имя: Александр
Поблагодарили: 12 раз

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

Сообщение AlexCrane »

Phazz писал(а): 28 фев 2022, 21:39 Как то я не представляю как ее сделать чтобы удобно было в флпрог ее использовать
Вот это верно, сделать то можно, но будет крайне интуитивно не понятно и легко будет запутаться....
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Аватара пользователя
Phazz
Полковник
Сообщения: 3131
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 235 раз
Поблагодарили: 114 раз

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

Сообщение Phazz »

А если использовать Майн блок в котором настраиваются все параметры и блоки для графики. Хотя бы чтоб все блоки были в одном мультиблоке
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 14 раз
Поблагодарили: 100 раз
Контактная информация:

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

Сообщение aidar_i »

av писал(а): 24 мар 2022, 15:57 Снова непонятки с новым редактором. Создаю условие по нескольким параметрам:
УСЛОВИЕ.png
Логически такое условие должно работать следующим образом( ( пар1 "ИЛИ" пар2 ) "И" ( пар3 "ИЛИ" пар4 "ИЛИ" пар5 "ИЛИ" пар6 ) ), но это так не работает. Так как на рисунке нет доп. скобок экранирующие операции. В действительности операции логики производятся тупо по порядку. В связи с этим придется лепить еще 4 условия для того чтобы получилось то что задумано. Кто как решает такие задачи ? Поделитесь !

Отправлено спустя 40 минут :
Увы... не помогает даже создание еще 4 дополнительных условий. Потому что все эти условия нужно как то привязывать к одному параметру, а это невозможно сделать в новом редакторе.
Нажмите Ctrl и левой кнопкой мыши или правой кнопкой на нужные условия, появятся скобки наверху и условия выделятся желтым цветом. Чтобы удалить скобки нажмите на скобку, сверху появится знак удаления скобок

[spoiler]
ПБ условия.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2449
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Благодарил (а): 6 раз
Поблагодарили: 31 раз

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

Сообщение Dryundel »

av писал(а): 24 мар 2022, 15:57 Кто как решает такие задачи ? Поделитесь !
aidar_i писал(а): 24 мар 2022, 17:46 Нажмите правой кнопкой на нужные условия, появятся скобки наверху и условия выделятся желтым цветом.
Так же работает выделение нескольких условий левой кнопкой + Ctrl. После чего появляется пиктограмма "()" (скобки)
Naladchik
Капитан
Сообщения: 908
Зарегистрирован: 04 окт 2015, 19:10
Откуда: Новосибирск
Имя: Павел
Благодарил (а): 20 раз
Поблагодарили: 22 раза

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

Сообщение Naladchik »

[ref=#00aa00]support[/ref],
Сергей здравствуйте.
Когда Вы будете дорабатывать редактор блоков (проблема компиляции), прошу Вас рассмотреть возможность и следующей доработки: (Очень нужно!!!)
Суть проблемы в том, что есть библиотеки, для которых, при создании блоков, нужно создавать функции, код в которые должен добавляться по мере добавления блоков в проект. В случае, когда такая функция одна, такую задачу криво косо но решить можно, если таких функций две и более то уже очень проблематично. При этом тут же начинает возникать вопрос совместимости с другими блоками.
Что по идее должно получиться на выходе.
В секциях:
"Основные настройки"->"Общий код"->"секция Declare" и "секция Functions" и
"Пакет блоков"->"Основные настройки"->"Код блока"->"Общий код"->"секция Declare" и "секция Functions"
нужна возможность создания неких участков кода (именованных, с определенной меткой или т.п.), код в которые будет добавляться код из определенных участков (типа "поместить в ...." ) секций
"Пакет блоков"->"Основные настройки"->"Код блока"->"Код каждого экземпляра"->"секция Declare" и "секция Functions".
Спасибо.
Последний раз редактировалось Naladchik 25 апр 2022, 05:45, всего редактировалось 1 раз.
Win10-64. FLProg Portable.
Изображение
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

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

Сообщение support »

Когда Вы будете дорабатывать редактор блоков (проблема компиляции),
да буду конечно. в 7.5.2. я код вообще не менял, проблема была на ферме релизов, то есть я просто пересобрал релиз, и что бы не было путаницы, задал новый номер версии

Отправлено спустя 1 минуту 6 секунд:
Naladchik писал(а): 24 апр 2022, 06:27 (Очень нужно!!!)
Суть проблемы в том, что есть библиотеки, для которых, при создании блоков, нужно создавать функции, код в которые должен добавляться по мере добавления блоков в проект. В случае когда такая функция одна такую задачу криво косо но решить можно, если таких функций две и более то уже очень проблематично. При этом тут же начинает возникать вопрос совместимости с другими блоками.
Что по идее должно получиться на выходе.
В секциях:
"Основные настройки"->"Общий код"->"секция Declare" и "секция Functions" и
"Пакет блоков"->"Основные настройки"->"Код блока"->"Общий код"->"секция Declare" и "секция Functions"
нужна возможность создания неких участков кода (именованных, с определенной меткой или т.п.), код в которые будет добавляться код из определенных участков (типа "поместить в ...." ) секций
"Пакет блоков"->"Основные настройки"->"Код блока"->"Код каждого экземпляра"->"секция Declare" и "секция Functions".
а вот с этим попозже. работы много, и переключатся сейчас не очень хорошая идея
Автор программы FLProg.
Naladchik
Капитан
Сообщения: 908
Зарегистрирован: 04 окт 2015, 19:10
Откуда: Новосибирск
Имя: Павел
Благодарил (а): 20 раз
Поблагодарили: 22 раза

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

Сообщение Naladchik »

[ref=#00aa00]support[/ref],
Сергей, и еще, небольшая просьба.
В заголовке окна редактора хотелось бы вместо надписи "Редактор пользовательских блоков....." видеть само название блока.
[spoiler]
11.png
[/spoiler]
Когда одновременно открыто несколько версий блоков путаешься, с какой именно версией в данный момент работаешь.
Спасибо.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64. FLProg Portable.
Изображение
Аватара пользователя
support
Супермодератор
Сообщения: 1917
Зарегистрирован: 03 янв 2018, 11:45
Откуда: Астрахань
Имя: Сергей
Поблагодарили: 23 раза
Контактная информация:

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

Сообщение support »

Naladchik писал(а): 25 апр 2022, 08:26 [ref=#00aa00]support[/ref],
Сергей, и еще, небольшая просьба.
В заголовке окна редактора хотелось бы вместо надписи "Редактор пользовательских блоков....." видеть само название блока.
[spoiler]11.png[/spoiler]
Когда одновременно открыто несколько версий блоков путаешься, с какой именно версией в данный момент работаешь.
Спасибо.
это можно сделать только при открытии окна. То есть невозможно изменить его на лету(то есть вы поменяете название блока, а оно изментся только когда вы закроете окно и снова его откроете).
Автор программы FLProg.
Naladchik
Капитан
Сообщения: 908
Зарегистрирован: 04 окт 2015, 19:10
Откуда: Новосибирск
Имя: Павел
Благодарил (а): 20 раз
Поблагодарили: 22 раза

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

Сообщение Naladchik »

support писал(а): 25 апр 2022, 09:56 ... То есть невозможно изменить его на лету ...
Да вообще не проблема. Создал, назвал, закрыл, открыл и работай дальше.
Когда открываешь 2-3 версии блока (по крайней мере у меня они отличаются названиями) и начинаешь сравнивать/переносить код вот тогда путаница и возникает.
Win10-64. FLProg Portable.
Изображение
ecoins
Полковник
Сообщения: 4012
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 157 раз

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

Сообщение ecoins »

Остается пожелание группировать строки в пользовательском редакторе в разделе "Место вставки блока loop".
Так в блоке ecoins MCP23x17 в этой секции более 60 строк и при добавлении новой строки в начало, строка добавляется снизу и приходиться ее передвигать вверх курсором несколько десятков раз.
И группировать входы-выходы - те же сложности при проектировании.
----
И еще - размер блоков в новом редакторе получается большим - мегабайты. Если ли пути и планы по оптимизации размеров блоков?
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 14 раз
Поблагодарили: 100 раз
Контактная информация:

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

Сообщение aidar_i »

av писал(а): 20 дек 2022, 18:29 есть какой то непонятный баг
Кстати , когда редактируешь параметр, могут появляться аналогичные баги.
Я решаю так: В коде удаляю этот параметр, сохраняю блок и открыв, снова вставляю в код этот же параметр, сохраняю блок, и все появляется.
Naladchik
Капитан
Сообщения: 908
Зарегистрирован: 04 окт 2015, 19:10
Откуда: Новосибирск
Имя: Павел
Благодарил (а): 20 раз
Поблагодарили: 22 раза

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

Сообщение Naladchik »

[ref]av[/ref],
Делаю по другому. Надо переименовать то, что не вставляется (параметр, вход и т.д.), как переименовал проходишься по коду и где этот параметр не вставился с новым именем, вставляешь по новой. После этого можно переименовать обратно. У меня срабатывало.
Win10-64. FLProg Portable.
Изображение
JonyBest
Сержант
Сообщения: 269
Зарегистрирован: 18 ноя 2015, 22:42
Откуда: Близко к Ставрополю
Имя: Евгений
Поблагодарили: 2 раза

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

Сообщение JonyBest »

Доброго времени!
Начал осваивать новый редактор для создания пользовательских блоков. Столкнулся с проблемой.
При создании блока со String входом
[/code]
В описании библиотеки:

Код: Выделить всё

setValue(constchar*value)
PARAMETERS
value – String representation of the sensor’s value.
Arduino IDE формирует код

Код: Выделить всё

valve190208383.setValue(_swi1);
Получаю ошибку:

Код: Выделить всё

error: no matching function for call to 'HASensor::setValue(String)'
             valve190208383.setValue(_swi1);
Если переменную входа _swi1 заменить на "любой текст", то компилируется без ошибок, блок работает.
При использовании других типов данных в других блоках - ошибок нет. Что делаю не так?
ecoins
Полковник
Сообщения: 4012
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 157 раз

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

Сообщение ecoins »

Интересно. Выложите какой Ваш пользовательский блок порождает эту проблему и мы попробуем поисследовать.
Ответить

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

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя