Giter VIP home page Giter VIP logo

josm_easypresets's People

Contributors

don-vip avatar floscher avatar gendy54 avatar maripo avatar meskobalazs avatar yuuhayashi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

josm_easypresets's Issues

Selective export

  • Dialog will open by clicking "Export" button
  • User can select presets
  • Exported XML files include only selected presets

Presets in the toolbar are disabled

Custom presets can be shown in the toolbar by toolbar preferences.
However these icons are grayed out and disabled. They should be available when the first data layer is loaded.
(Normal presets are grayed out at startup of JOSM and turn enabled after the first layer is downloaded.)

custom_presets_are_grayed_out

Custom presets become available if the code below is called at the right time, but I am struggling to find out which timing is appropriate.

MainApplication.getToolbar().refreshToolbarControl();

Can someone help me?

If you delete a preset, you will not be able to create it.

If you delete a preset, you will not be able to create it.

プリセットを削除すると、プリセットが作成できなくなってしまう

  • EasyPresets: version 1612708244, v2.2

  • (1) Delete "Preset". / 「新規プリセット」を削除
    Issue-A

  • (2) Can not 'Create preset'. / 「プリセットを作成」が無効
    Issue-B

fixed: Pull Request58(pr58 from maskobalazs)

This issue has already been resolved in pr58.
この問題は、すでに pr58 で解決済みです。

pr46 : F3(プリセット検索)

Issue F3(プリセット検索)

  • EasyPresetsがJOSMメニューの「プリセット検索 F3」にヒットしない

  • EasyPresets.xmlのロード時に、TaggingPresets.addTaggingPresets(presetList);を行うと「プリセット検索 F3」にヒットするようになる

    そうすると、別の問題が発生する

*** Exportしたカスタムプリセットファイルを JOSMに「プリセット登録」すると、

*** EasyPresetの「カスタムプリセット」が表示されなくなる

Issue ツールバーにEasyPresetsのプリセットが登録できない

  • JOSMの設定でEasyPresetsのカスタムメニュー項目を「ツーバー」に設定することができない
  • EasyPresets.xmlのロード時に、TaggingPresets.addTaggingPresets(presetList);を行うと「ツーバー登録設定画面に表示されるようになる」
    ** EasyPresetsのグループはツールバーに登録できない
    ** EasyPresetsの個別プリセットをツールバーに登録できる
    *** ツールバーに登録したプリセットを「カスタムプリセット編集」で更新すると、ツールバーのプリセットが動作しなくなる。
    **** JOSM再起動で復活する
    *** ツールバーに登録したプリセットを「カスタムプリセット編集」で削除すると、ツールバーのプリセットが動作しなくなる
    **** JOSM再起動しても回復しない

上記2件の問題はどちらも TaggingPresets.addTaggingPresets(presetList) をJOSMの起動時以外に行うことに起因しているようです。

TaggingPresets.addTaggingPresets(presetList)による TaggingPresets.taggingPresets への登録は、静的なインスタンスのみの登録で、登録された内容が変更することは想定されていないようです。

EasyPresetsの利用方法として、

(1) 編集した「カスタムプリセット」を「エクスポート」して、

(2) エクスポートしたファイルを適宜を挿入するなどして変更する

(3)エクスポートしたファイルをJOSMにプリセット登録する

という利用法が想定されます。

「グループ階層化」を実装した場合は、(2)に手順が不要になる。

エクスポートしたファイルをJOSMのプリセットに登録した場合、

登録したプリセットのpath+name とEasyPresetsのプリセットの path+name が重複してしまい、いろいろな不具合が発生します。(冒頭に示した問題点)

解決策

(1) EasyPresetsの管理対象プリセットは TaggingPresets.taggingPresets に登録しない

  • エクスポート → JOSMプリセット登録 することによって、
  • 「プリセット検索 F3」にヒットするようになる
  • JOSMツールバーに登録することもできる

(2) EasyPresets.xml のXML構造を変更する

  • エクスポート → JOSMプリセット登録 によって、プリセット名のパス名が重複しないようにする対策です
  • rootの下に単一のを置き、すべてのプリセットを此のタグに入れる
  • エクスポート時に、「プリセット名称」を入力してもらい、エクスポートファイルはとしてEasyPresets.xmlのプリセットと区別できるようにする
  • 「プリセット名称」には「Custom Presets」を指定できないようにする
  • 現versionのEasyPresetsで作成されたEasyPresets.xmlをリードしたときに、新バージョンのEasyPresets.xmlフォーマットに自動変換する

とりあえずこの2点の対策から手を付けていきます。

Errors seen in JOSM plugin integration test (PluginHandlerTestIT)

Hello,
Seen in https://josm.openstreetmap.de/jenkins/job/JOSM-Integration/701/jdk=JDK8/testReport/junit/org.openstreetmap.josm.plugins/PluginHandlerTestIT/testValidityOfAvailablePlugins/

java.lang.NumberFormatException: For input string: ""
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
	at java.lang.Integer.parseInt(Integer.java:592)
	at java.lang.Integer.parseInt(Integer.java:615)
	at org.maripo.josm.movementalert.MovementAlertSettings.load(MovementAlertSettings.java:26)
	at org.maripo.josm.movementalert.MovementAlertPlugin.<init>(MovementAlertPlugin.java:29)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.openstreetmap.josm.plugins.PluginInformation.load(PluginInformation.java:327)
	at org.openstreetmap.josm.plugins.PluginHandler.loadPlugin(PluginHandler.java:786)
	at org.openstreetmap.josm.plugins.PluginHandler.loadPlugins(PluginHandler.java:870)
	at org.openstreetmap.josm.plugins.PluginHandler.loadLatePlugins(PluginHandler.java:909)
	at org.openstreetmap.josm.plugins.PluginHandlerTestIT.testValidityOfAvailablePlugins(PluginHandlerTestIT.java:82)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.openstreetmap.josm.testutils.JOSMTestRules$TimeoutThread.run(JOSMTestRules.java:503)
java.io.FileNotFoundException: /var/lib/jenkins/jobs/JOSM-Integration/workspace/jdk/JDK8/test/config/unit-josm.home/EasyPresets.xml (No such file or directory)
	at java.io.FileInputStream.open0(Native Method)
	at java.io.FileInputStream.open(FileInputStream.java:195)
	at java.io.FileInputStream.<init>(FileInputStream.java:138)
	at java.io.FileInputStream.<init>(FileInputStream.java:93)
	at org.maripo.josm.easypresets.data.EasyPresets.load(EasyPresets.java:88)
	at org.maripo.josm.easypresets.EasyPresetsPlugin.<init>(EasyPresetsPlugin.java:28)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.openstreetmap.josm.plugins.PluginInformation.load(PluginInformation.java:327)
	at org.openstreetmap.josm.plugins.PluginHandler.loadPlugin(PluginHandler.java:786)
	at org.openstreetmap.josm.plugins.PluginHandler.loadPlugins(PluginHandler.java:870)
	at org.openstreetmap.josm.plugins.PluginHandler.loadLatePlugins(PluginHandler.java:909)
	at org.openstreetmap.josm.plugins.PluginHandlerTestIT.testValidityOfAvailablePlugins(PluginHandlerTestIT.java:82)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.openstreetmap.josm.testutils.JOSMTestRules$TimeoutThread.run(JOSMTestRules.java:503)

One click, no confirmation option?

I have created a preset to add a few tags to objects. There is no options, all are fixed. I have this as a button on my toolbar and it's cool!

However when I click on the button, it pops up a window asking me to apply the preset. It would great if it was possible to configure the preset to apply the tags without any user confirmation, to make it a "one click"

What is "hoge"?

image

When creating a textbox type field, the default text suggested is "hoge"? Perhaps, the suggested value could be the key instead? (like "name", for example)

EasyPresets are no longer searchable from Search Presets

I'm using EasyPresets v160504256 in JOSM v17428 and a few days ago EasyPresets entries stopped being searchable from Search Presets (activate using function key F3)

image

Before, it was possible to search for EasyPreset entries
image

This used to be a very convenient way of using the presets, especially when you have a very long list of entries.
image

java.lang.NoSuchFieldError: delimiter (when saving)

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (19) of main
java.lang.NoSuchFieldError: delimiter
at org.maripo.josm.easypresets.ui.editor.TagEditor$ValueFieldSelection.createItem(TagEditor.java:242)
at org.maripo.josm.easypresets.ui.editor.TagEditor.getTaggingPresetItem(TagEditor.java:471)
at org.maripo.josm.easypresets.ui.editor.PresetEditorDialog.validateInput(PresetEditorDialog.java:350)
at org.maripo.josm.easypresets.ui.editor.PresetEditorDialog.save(PresetEditorDialog.java:300)
at org.maripo.josm.easypresets.ui.editor.PresetEditorDialog$3.actionPerformed(PresetEditorDialog.java:248)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6539)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6304)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.awt.Dialog.show(Dialog.java:1084)
at java.awt.Component.show(Component.java:1671)
at java.awt.Component.setVisible(Component.java:1623)
at java.awt.Window.setVisible(Window.java:1014)
at java.awt.Dialog.setVisible(Dialog.java:1005)
at org.openstreetmap.josm.gui.ExtendedDialog.setVisible(ExtendedDialog.java:459)
at org.openstreetmap.josm.gui.ExtendedDialog.showDialog(ExtendedDialog.java:255)
at org.maripo.josm.easypresets.ui.editor.PresetEditorDialog.showDialog(PresetEditorDialog.java:411)
at org.maripo.josm.easypresets.ui.ManagePresetsDialog.edit(ManagePresetsDialog.java:203)
at org.maripo.josm.easypresets.ui.ManagePresetsDialog$2.mouseClicked(ManagePresetsDialog.java:100)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:270)
at java.awt.Component.processMouseEvent(Component.java:6542)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6304)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4544)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.awt.Dialog.show(Dialog.java:1084)
at java.awt.Component.show(Component.java:1671)
at java.awt.Component.setVisible(Component.java:1623)
at java.awt.Window.setVisible(Window.java:1014)
at java.awt.Dialog.setVisible(Dialog.java:1005)
at org.openstreetmap.josm.gui.ExtendedDialog.setVisible(ExtendedDialog.java:459)
at org.openstreetmap.josm.gui.ExtendedDialog.showDialog(ExtendedDialog.java:255)
at org.maripo.josm.easypresets.ui.ManagePresetsAction.actionPerformed(ManagePresetsAction.java:19)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at com.apple.laf.ScreenMenuItem.actionPerformed(ScreenMenuItem.java:125)
at java.awt.MenuItem.processActionEvent(MenuItem.java:669)
at java.awt.MenuItem.processEvent(MenuItem.java:628)
at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:357)
at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:345)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:763)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Feature request - improve tag organization

I wish it's possible to organize the preset tags by folder. 😸 , currently they can be arranged anyway you like it, but it's challenging if you have lots of presets.

Strange labels in Preset Editor dialog

  1. Strange label "PresetEditorDialogreset" in left top corner.
  2. Label "Show the name of the dialog" instead simple "Show dialog on apply" - as this option really works.
    EasyPreset v1623509627, JOSM v18193.

JOSM Easy Preset strange labels

NullPointerException when edited preset is applied to an object

{{{
Build-Date:2017-12-13 09:30:44
Revision:13200
Is-Local-Build:true

Identification: JOSM/1.5 (13200 SVN ja) Mac OS X 10.13
OS Build number: Mac OS X 10.13 (17A405)
Memory Usage: 953 MB / 3641 MB (671 MB allocated, but free)
Java version: 1.8.0_144-b01, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: Display 69732800 1280x800
Maximum Screen Size: 1280x800
Dataset consistency test: No problems found

Plugins:

  • EasyPresets (1512180774)
  • Mapillary (v1.5.9)
  • apache-commons (33668)
  • apache-http (32699)
  • buildings_tools (33735)
  • reverter (33865)

Tagging presets:

Map paint styles:

Last errors/warnings:

  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • W: java.io.IOException: Attribution is not loaded yet
  • E: Handled by bug report queue: java.lang.NullPointerException
  • E: Handled by bug report queue: java.lang.NullPointerException

=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (18) of main
java.lang.NullPointerException
at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem.matches(TaggingPresetItem.java:148)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.matches(TaggingPreset.java:605)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.test(TaggingPreset.java:590)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.test(TaggingPreset.java:80)
at java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
at java.util.LinkedList$LLSpliterator.tryAdvance(LinkedList.java:1249)
at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:498)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
at java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.allMatch(ReferencePipeline.java:454)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.createPanel(TaggingPreset.java:316)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.showDialog(TaggingPreset.java:468)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPreset.actionPerformed(TaggingPreset.java:393)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetSearchDialog.buttonAction(TaggingPresetSearchDialog.java:55)
at org.openstreetmap.josm.gui.ExtendedDialog$1.actionPerformed(ExtendedDialog.java:377)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicRootPaneUI$Actions.actionPerformed(BasicRootPaneUI.java:208)
at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1663)
at javax.swing.JComponent.processKeyBinding(JComponent.java:2882)
at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:307)
at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:250)
at javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2974)
at javax.swing.JComponent.processKeyBindings(JComponent.java:2966)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2845)
at java.awt.Component.processEvent(Component.java:6310)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771)
at java.awt.Component.dispatchEventImpl(Component.java:4760)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227)
at java.awt.Dialog.show(Dialog.java:1084)
at java.awt.Component.show(Component.java:1671)
at java.awt.Component.setVisible(Component.java:1623)
at java.awt.Window.setVisible(Window.java:1014)
at java.awt.Dialog.setVisible(Dialog.java:1005)
at org.openstreetmap.josm.gui.ExtendedDialog.setVisible(ExtendedDialog.java:458)
at org.openstreetmap.josm.gui.ExtendedDialog.showDialog(ExtendedDialog.java:254)
at org.openstreetmap.josm.gui.tagging.presets.TaggingPresetSearchDialog.showDialog(TaggingPresetSearchDialog.java:44)
at org.openstreetmap.josm.actions.TaggingPresetSearchAction.actionPerformed(TaggingPresetSearchAction.java:36)
at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1663)
at javax.swing.JComponent.processKeyBinding(JComponent.java:2882)
at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:307)
at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:263)
at javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2974)
at javax.swing.JComponent.processKeyBindings(JComponent.java:2966)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2845)
at java.awt.Component.processEvent(Component.java:6310)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771)
at java.awt.Component.dispatchEventImpl(Component.java:4760)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
}}}

error when editing an existing preset

I'm trying to edit an existing preset by removing a tag (in this came, the name tag) by un-setting the check box.

However, I cannot save the edit, and the dialog box displays the message "Tag list is empty"

image

Work-around, is to edit the file $HOME/.local/share/JOSM/EasyPresets.xml in an external editor

Text Encoding Problem

  1. Create a preset with Japanese characters & save
  2. Restart JOSM
  3. Problem occurs. SJIS->UTF8

Environment: JOSM 12712, Windows 10

(From Facebook comment)

plugin cannot create presets on JOSM v13576

After my upgrade to current version of JOSM, I can no longer create presets.

I can still manage and edit existing presets but unable to create new ones. There are no error alerts whenever I attempt to create a new preset.

Changing the preset name does not change the list display name.

The display in the list display (ManagePresetsDialog) does not change even if you "copy" the preset and change the preset name to an appropriate name in 'PresetEditorDialog'. (The change is reflected when JOSM is restarted.)
I want you to reflect it in the list display name with the setting in 'PresetEditorDialog'.

「プリセット名を変更してもリスト表示が変更されない」
プリセットを「コピー」してPresetEditorDialogでプリセット名を適切な名称に変更しても一覧表示(ManagePresetsDialog)での表示が変わらない。(JOSMを再起動すると変更が反映される。)
PresetEditorDialogでの設定で一覧表示名にも反映させてほしい。

duplicate presets found under Custom Presets

During a JOSM session, the list of presets found under Custom Presets menu keeps duplicating everytime I add a new one, or edit an existing preset. This reverts to normal after a reboot of JOSM. I'm running version 13053.

image

[feature request] add ability to sort existing presets

Thank you very much for this very useful plugin. I've had it for a while, and once you have a long list of presets, it gets tedious to find or edit older ones.

It would be nice to have the ability to sort (or search) the presets, so you can easily find them.

Happy new year. :)

do not over-write tags when they exist on applied objects

Perhaps, a better behavior than over-writing tags is to append the values to existing tags, and allow the user to edit it, as appropriate. The current behavior that simply overwrites tag, can cause inadvertent information loss.

Custom preset groups always display text on toolbar

When adding groups of custom presets onto the toolbar, their title is always shown & icons are occasionally the wrong size. Provide the ability to show only the icon (like included preset groups).

  1. An EasyPreset apply preset button (icon is grabbed from preset icon & no text is displayed)
  2. A custom preset folder (within Custom Presets) (icon is manually added to the toolbar item & annoying text is displayed) (also why is icon so big??)
  3. A custom preset folder without icon (wish title could be shrunk/swapped/not displayed)
  4. A default preset folder (exactly how I would like the custom preset folders to be displayed (icon only leading to frop down menu of custom preset apply buttons))

image

For reference, my exported toolbar XML config:

<config>
    <preferences operation="replace">
        <list key="toolbar" xmlns="http://josm.openstreetmap.de/preferences-1.0">
                
            <entry value="|"/>
                
            <entry value="tagging_Custom Presets/Buildings/Shed"/>
                
            <entry value="tagginggroup_Custom Presets/Gardens &amp; Nature{icon=presets/landmark/trees.svg}"/>
                
            <entry value="tagginggroup_Custom Presets/Street Furniture"/>
                
            <entry value="tagginggroup_Man Made/Historic Places"/>
                
            <entry value="|"/>
              
        </list>
    </preferences>
</config>```

Docking

Add a feature of docking EasyPresets menus to the right column of JOSM

unexpected behavior, manage custom preset dialog

When editing existing presets in the dialog box, the man dialog box should not disappear after you exit editing, so you can continue to edit more, if you wish to do so.

Currently, after closing the editor, the custom preset dialog box also disappears.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.