Снегопат https://snegopat.ru/forum/ |
|
Переход к ссылкам метаданных::Перейти к ссылке ИЗ. Сортировк https://snegopat.ru/forum/viewtopic.php?f=3&t=921 |
Страница 1 из 1 |
Автор: | tormozit [ 22 сен 2020, 16:38 ] | ||
Заголовок сообщения: | Переход к ссылкам метаданных::Перейти к ссылке ИЗ. Сортировк | ||
Почему то список переходов не отсортирован по умолчанию. Не нашел как сохранить сортировку по алфавиту. Если не предусмотрено, то прошу это реализовать. И вообще почему по умолчанию то не включена сортировка? В чем польза от отсутствия сортировки при открытии? Или там какой то непонятный и потому бесполезный порядок.
|
Автор: | tormozit [ 24 сен 2020, 13:52 ] |
Заголовок сообщения: | Re: Переход к ссылкам метаданных::Перейти к ссылке ИЗ. Сорти |
Исправил скрипт, чтобы он по умолчанию с сортировкой открывался. Пометил комментарием "// tormozit" свои изменения Код: function doJump(command, forceShow)
{ if(windows.modalMode != msNone) return false // Для начала проверим, что мы в окне метаданных var view = windows.getFocusedView(); var state = command.getState(); if(!view || !state || !state.enabled) { //MessageBox("Не выбран объект метаданных") return false } refs = [] // Ставим перехват на вывод в окно сообщений events.connect(windows, "onMessage", SelfScript.self) // Подавляем показ диалога events.connect(windows, "onDoModal", SelfScript.self) // Посылаем команду поиска ссылок command.send() // Убираем перехваты events.disconnect(windows, "onMessage", SelfScript.self) events.disconnect(windows, "onDoModal", SelfScript.self) if(refs.length < 2) { MessageBox("Ссылок не найдено"); return false } var mdObj = view.mdObj; if (!mdObj) mdObj = windows.getActiveView().mdObj; var rootObject = (mdObj ? mdObj.container : metadata.current).rootObject; var currentObject = findObject(rootObject, refs[0].match(/"(.+)"/)[1]) var choice if(refs.length == 2 && !forceShow) choice = refs[1] else { refs.splice(0, 1) var dlg = new SelectValueDialog("Выберите объект для перехода!", refs); dlg.form.SortByName = true; // tormozit dlg.sortValuesList(true); // tormozit if (dlg.selectValue()) choice = dlg.selectedValue; else return false } var mdObj = findObject(rootObject, choice) mdObj.activateInTree() lastObjects.push(currentObject) return true } |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |