Инструмент FastDraw для JOSM - рисование и упрощение линий

получилось ) спасибо

Что-то у меня FastDraw сломался, никак не могу закончить линию и выйти из режима рисвания с сохраненим работы. На Enter вообще никакой реакции

Я ничего не менял, только что проверил - в latest работает. В настройках горячих клавиш этого нет (Enter и пробел жестко забиты)… Может, еще что-то на Enter назначили?
Или Java шутки шутит, или оконный менеджер, если дело под Linux. Надо проверить, работает ли пробел в FastDraw и зажатие A в угловой привязке.

Ага, на него Command Line вешается, только раньше в этой комплектации работало и в режиме фастдрав комманд лайн и сейчас не перехватывает ентер.

Пробел эквивалентен левому клику мыши. А в угловой привязке это так?

тогда, тоже работает.

PS: v.7449

Угу особо напрягает когда загружаешь очередной кусок карты и вместо запуска закачки завершается FD

Хорошо, это починю. Кнопки, наверное, тоже будут изменяемые.

Починил раздражающее срабатывание кнопок из чужих диалогов и глючный список старых тегов. Реакцию на клавиши унифицировал с остальным JOSM.
Смену сочетаний клавиш сделаю только если кому-то это действительно надо.

Если остались глюки - скажите! (окончательный вариант обработки кнопок только c josm-latest 7609)

Хм, у меня, после последнего обновления джосма и плагинов, после попытки вызвать последнюю команду в commandline двойным вводом: собственно не вызывается команда и перестают откликаться все инструменты кроме S. Лечится это заменой commandline.jar на архивный. Сей чудесный глюк повторился в двух системах, файл настроек, правда один. Может причина этого в том, что файл настроек у меня древний, но кроме подвешивания Аннотации\Адреса на F2, ничего криминального с ним не делалось.

Воспроизвел у себя, так что дело не в настройках. Это товарищ DonVip в процессе улучшений CommanLine что-то просмотрел:
https://trac.openstreetmap.org/log/subversion/applications/editors/josm/plugins/CommandLine
(например, автозагрузка набора команд добавилась)

Да, мне уже в личку пожаловались.
Может, дело в этой замене?

В ней, родимой :slight_smile: Но тут что-то и в ядре не так - при печати в окошке CommandLine горячие клавиши ведь действительно не должны срабатывать.

Хотя на поле CommandLine же свой личный AWTEventListener обработчик с кучей дополнительных кнопок, так что навешивание DisableShortcutsOnFocusGainedTextField излишне и приводит только к таким вот конфликтам.
Я бы вернул JTextField на место и создал на всякий случай карточку про это для обсуждения - вдруг у DonVip-а вылезал какой-то баг.

P.S. Мне этот DisableShortcutsOnFocusGainedTextField совсем не нравится - отключать и включать сотни действий при активации строки ввода - как-то слишком жестковато.

Можно надеятся на скорое появление сего нововведения?
С текущим fastdraw (30892) по прежнему никакой рекции на Enter не происходит, т.е. инструментом пользоваться не представляется возможным. На Enter хоткее CommandLine висел (но ведь раньше работало), назначил иной, Enter свободен, но fastdraw так на него и не реагирует…

Починил сто лет не сохранявшиеся настройки Q : http://forum.openstreetmap.org/viewtopic.php?pid=507654#p507654

Разрешил дорисовывание/упрощение существующих линий (включается в настройках Q, активируется Shift-F Shift-F при выделенном объекте)

А что с акцептом нарисованного по Enter? В v.31225 по прежнему не работает, иные хот кеи на Enter не назначены, да и переназначить для FastDraw нельзя :frowning:
akks, посмотри, пожалуйста.

PS:

На Q тоже никакой реакции (он же только в режиме FastDraw должен действовать?)…

При нажатии на Q (в режиме FastDraw) в консоль вываливается это:


java.lang.IllegalArgumentException: setSelectedIndex: 5 out of bounds
        at javax.swing.JComboBox.setSelectedIndex(Unknown Source)
        at org.openstreetmap.josm.plugins.fastdraw.FastDrawConfigDialog.<init>(FastDrawConfigDialog.java:101)
        at org.openstreetmap.josm.plugins.fastdraw.FastDrawingMode.doKeyPressed(FastDrawingMode.java:476)
        at org.openstreetmap.josm.gui.util.AdvancedKeyPressDetector.processKeyEvent(AdvancedKeyPressDetector.java:138)
        at org.openstreetmap.josm.gui.util.AdvancedKeyPressDetector.eventDispatched(AdvancedKeyPressDetector.java:183)
        at java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Unknown Source)
        at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Unknown Source)
        at java.awt.Toolkit.notifyAWTEventListeners(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)

        at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue$4.run(Unknown Source)
        at java.awt.EventQueue$4.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

На Enter никакой реакции.

Извини, что вовремя не отреагировал - с приведённым логом всё прояснилось. Решить проблему очень просто: слетела настройка fastdraw.simplifymode (допустимые значения - 0,1,2, а стоит 5).

Можно починить вручную в расширенных настройках, но в FastDraw я это сейчас тоже залью (вдруг ещё у кого вылезет).

P.S. Добавил автопочинку настройки в плагин, можно просто обновиться.

akks, спасибо, заработало

Обнаружился небольшой глюк - в настройках не сохраняется Действие по Enter - Сохранить как есть, сбрасывается на Автоупрощение

Спасибо за бдительность, всё починил!

Версия 31241 Josm 8489 , Ничего не изменилось.