Добавить возможность редактировать настройки скрипта через панель свойств в настройках

bolsun Закрыто

Реализовано в 6.6.9449.36485
https://disk.yandex.ru/d/XRPUNWQtrbwBUw

Комментарии

tormozit
#1, ред. 14 ноября 2025 18:31

Прошу сразу сделать в АПИ метод для открытия этой настройки и нужно учесть, что у ИР адаптера 100500 команд и пользователю должно быть понятно что у всех команд одного скрипта единые настройки.


bolsun
#2, 14 ноября 2025 18:32

(1) tormozit, поди догадается, пощелкав по ним.


bolsun
#3, ред. 14 ноября 2025 22:30

В скрипте добавляем настройки

//@settings [{"Name":"TestBoolean", "DisplayName":"Тест булево", "Type":"boolean","DefaultValue":true, "Description": "Здесь полное описание настройки"}, {"Name":"TestString","Type":"string","DefaultValue":"It works!"}, {"Name":"TestInt","Type":"int","DefaultValue":123}]


bolsun
#4, 14 ноября 2025 18:34

Получить

ТурбоКонф.ПолучитьЗначениеНастройкиСкрипта(ИмяСкрипта, ИмяНастройки)


tormozit
#5, ред. 14 ноября 2025 18:36

(2) bolsun, Нужно хотя бы сверху в панели параметров вывести "Скрипт: <Имя скрипта>". Тогда догадываться будет проще. Тем более место есть.


tormozit
#6, ред. 14 ноября 2025 18:45

(3) bolsun, в одну длинную строку будет очень неудобно редактировать и отслеживать изменения в гите. Хотелось бы какой то многострочный вариант, например такой

//@settings [
//	{"Name":"TestBoolean", "DisplayName":"Тест булево", "Type":"boolean","DefaultValue":true, "Description": "Здесь полное описание настройки"}, 
//	{"Name":"TestString","Type":"string","DefaultValue":"It works!"}, 
//	{"Name":"TestInt","Type":"int","DefaultValue":123}
//]

или такой

//@setting	{"Name":"TestBoolean", "DisplayName":"Тест булево", "Type":"boolean","DefaultValue":true, "Description": "Здесь полное описание настройки"} 
//@setting	{"Name":"TestString","Type":"string","DefaultValue":"It works!"}
//@setting	{"Name":"TestInt","Type":"int","DefaultValue":123}


bolsun
#7, 14 ноября 2025 18:53

(1) tormozit, используй ОткрытьНастройки(ИмяСкрипта)


tormozit
#8, 14 ноября 2025 18:54

(7) bolsun, у меня в документации другие параметры у этого метода

// Процедура - Открыть настройки
//
// Параметры:
//  ИмяСтраницы - Строка - ~Edit, ~Assist, ~Format, ~Navigate, ~OneTracker, ~Dev
//
Процедура ОткрытьНастройки(ИмяСтраницы = "") Экспорт 


bolsun
#9, 14 ноября 2025 18:55

(8) tormozit, это недокументированная фича, но теперь стала документированная.


bolsun
#10, ред. 14 ноября 2025 18:56

/// <summary>
/// Открывает Настройки
/// <param name="tabName">Имя настройки. Значения: ~Edit, ~Assist, ~Format, ~Navigate, ~HotKey, ~OneTracker, ~Dev. Строка. Необязательный</param>
/// </summary>


bolsun
#11, 14 ноября 2025 18:56

(10) bolsun, есть еще ~AI


tormozit
#12, ред. 14 ноября 2025 18:57

(9) bolsun, понял. Обновлю описание. Параметр переименую в ИмяСтраницыИлиСкрипта


tormozit
#13, ред. 14 ноября 2025 19:20

(7) bolsun, может быть туда сразу и параметр "ИмяПараметра" добавить, чтобы не заставлять пользователя глазами искать или вводить в фильтр нужное имя?


tormozit
#14, 14 ноября 2025 19:06

Сейчас я значения таких потенциальных параметров скрипта меняю полуавтоматически (одним кликом пользователя по уведомлению). Для пользовательских параметров скрипта ты хочешь запретить программную установку значения? Если нет, то прошу добавить метод для установки значения.


tormozit
#15, ред. 14 ноября 2025 19:23

Ну и заодно напоминаю про гиперссылку и подсказку https://turboconf.ru/Tasks/10027 для команды


bolsun
#16, 14 ноября 2025 20:14

(13) tormozit, ограничено беконтрольное изменение глобальных настроек Турбоконф, т.е. тех которые могут влиять на остальные функции программы. Свои настройки скрипт может менять сколько хочет.


tormozit
#17, 14 ноября 2025 20:48

(16) bolsun,

Свои настройки скрипт может менять сколько хочет

Каким методом? В (4) ты только метод чтения описал.


bolsun
#18, 14 ноября 2025 21:47

(17) tormozit,
6.6.9449.42507
https://disk.yandex.ru/d/XRPUNWQtrbwBUw

//Сохраняет значение пользовательской настройки скрипта
ТурбоКонф.СохранитьЗначениеНастройкиСкрипта(ИмяСкрипта, ИмяНастройки, Значение)
//Открыть заданную настройку
ТурбоКонф.ОткрытьНастройки("setting:Lineyka_TestString");


tormozit
#19, ред. 14 ноября 2025 23:02

Прошу

  1. Добавить кнопку очистки в поле фильтра параметров и скриптов
  2. Сделать для булевых параметров классические checkbox
  3. Добавить команды копирования имени параметра и команды. Полезно для обращений в тех. поддержку или передачи указателя другому пользователю.
  4. Сузить колонку значения, т.к. там в большинстве случаев будут короткие значения (числа и булевы)

Возможно задачу облегчит исходный код аналогичного компонента ClipAngel (settingsform.cs)


bolsun
#20, 16 ноября 2025 22:25

(19) tormozit, могу тебе скинуть этот блок кода ,если хочешь доработай.


bolsun
#21, 16 ноября 2025 22:30

(6) tormozit, планируешь много настроек добавлять?


tormozit
#22, 16 ноября 2025 23:02

(21) bolsun, Пока нет. Но текущий поход не даст уместить больше одного описания настройки в ширину экрана. Я сделал уже под сотню описаний кнопок и большинство из них не умещаются в ширину экрана. Из-за этого редактировать их достаточно неудобно.
Потом вполне вероятно все же наступит момент когда формат описания настоек скрипта придется адаптировать под вертикальное размещение с потерей совместимости. Если сейчас кто то сделает в скриптах настройки, то всем разом придется обновлять свои скрипты. Лучше сейчас немного доработать, чтобы потом не пришлось проходить через этот болезненный момент.


bolsun
#23, 16 ноября 2025 23:39

(22) tormozit, формат изменен, вместо одного списка теперь отдельные значения.

//@settings {"Name":"OffsetX", "DisplayName": "Смещение по оси Х", "Type":"int","DefaultValue":-32}
//@settings {"Name":"OffsetY", "DisplayName": "Смещение по оси Y", "Type":"int","DefaultValue": 0}

6.6.9452.2857
https://disk.yandex.ru/d/XRPUNWQtrbwBUw


bolsun
#24, 16 ноября 2025 23:42

тикет закрываю, если нужны дополнительные фичи, как в (19) то нужно добавить на каждую отдельную заявку, чтобы повысить шансы на их реализацию, а лучше их добавить самому, в очереди более 600 заявок разной степени важности.


bolsun
#25, 16 ноября 2025 23:42

bolsun изменил статус на Закрыто


tormozit
#26, 17 ноября 2025 00:19

(23) bolsun, проверил. Работает.


bolsun
#27, 17 ноября 2025 00:20

bolsun изменил статус на Закрыто


bolsun
#28, 17 ноября 2025 15:38

6.6.9452.31138
https://disk.yandex.ru/d/XRPUNWQtrbwBUw

  • Колонка с названием поля теперь 80% от ширины редактора свойств.
  • В Настройках добавлена кнопка очистки фильтра.
  • Текущий фильтр теперь сохраняется между открытиями окна Настройки.

API
В settings добавлено свойство Description, которое будет отображаться внизу панели свойств.

//@settings {"Name":"OpenPff", "DisplayName": "Открывать файл замеров", Description: "Открывать файл замеров для отображения широкой панели", "Type":"boolean","DefaultValue": true}


tormozit
#29, 17 ноября 2025 21:21

(28) bolsun, Проверил. Работает.


tormozit
#30, ред. 17 ноября 2025 21:36

Еще бы в добавок к запоминанию фильтра еще запоминать текущую строку списка команд. Будет очень полезно при переборе значений параметров скрипта.


tormozit
#31, 06 декабря 2025 15:49

Команды копирования названия скрипта/команды реально нужны. Вот очередной пример - хотел доложить о неверном типе у команды. Но скопировать ее название не могу. Приходится руками каждый раз набивать. А я создаю очень много заявок.


bolsun
#32, 06 декабря 2025 17:01

(31) tormozit, да, столкнулся сам сегодня, что нужно. Копирование будет.


bolsun
#33, 07 декабря 2025 18:12

bolsun изменил статус на Закрыто


tormozit
#34, 07 декабря 2025 18:34

Проверил. Копирование названия строки работает в обоих списках.


bolsun
#35, 07 декабря 2025 22:03

bolsun изменил статус на Закрыто


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера