Opened 6 years ago

Last modified 5 years ago

#18919 closed enhancement

Allow sorting of table content in changeset manager to facilitate finding related rows — at Version 14

Reported by: schoschi Owned by: Don-vip
Priority: normal Milestone: 20.08
Component: Core Version:
Keywords: template_report changeset manager content tab column Cc:

Description (last modified by schoschi)

What steps will reproduce the problem?

  1. Menu > Windows > Changeset manager (DE: Änderungssatzverwaltung)
  2. My Changesets and select a changeset where you a) have a little more rows and b) you did split some ways and c) you did create as well as update objects
  3. Download changeset content, switch to tab content

What is the expected result?

I can click any table header to sort table e.g. by "Name" column, so all elements with same name are directly next to each other. Like that, I can easily check the ways I did split are split correctly: All related ways are next to each other, and I can simply go trough all groups from top to bottom.

What happens instead?

The table is always sorted by created/updated, so the ways you did split are scattered across the table - this makes it hard to check the split was correct: You must manually look whether objects with similar names exist and you must memorize (despite arbitrary processing sequence) which parts you did already check.

Please provide any additional information below. Attach a screenshot if possible.

I also tried with Java version: 11.0.5+10, AdoptOpenJDK, OpenJDK 64-Bit Server VM

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-02-26 10:50:27 +0100 (Wed, 26 Feb 2020)
Revision:15937
Build-Date:2020-02-26 09:52:41
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (15937 de) Windows 10 64-Bit
OS Build number: Windows 10 Pro 1909 (18363)
Memory Usage: 630 MB / 4078 MB (281 MB allocated, but free)
Java version: 11.0.5+10, AdoptOpenJDK, OpenJDK 64-Bit Server VM
Screen: \Display0 3240x2160, \Display1 2560x1440
Maximum Screen Size: 3240x2160
Dataset consistency test: No problems found

Plugins:
+ DirectUpload (35248)
+ InfoMode (35248)
+ Mapillary (1.5.20)
+ OpeningHoursEditor (35250)
+ PicLayer (35313)
+ ShapeTools (1240)
+ apache-commons (35092)
+ apache-http (35092)
+ buildings_tools (35248)
+ contourmerge (v0.1.6)
+ jna (35092)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/SkiingTrail&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Mountains&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/Heritage&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/OpenPisteMap&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/NewTags&zip=1
+ https://github.com/kendzi/Simple3dBuildingsPreset/releases/download/0.9_2018-05-08/s3db-preset.zip

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Enhanced_Lane_and_Road_Attributes&zip=1

Change History (16)

by schoschi, 6 years ago

screenshot

comment:1 by schoschi, 6 years ago

Component: CorePlugin changeset_viewer

comment:2 by skyper, 6 years ago

Component: Plugin changeset_viewerCore

comment:3 by skyper, 6 years ago

Keywords: changeset manager content tab column added
Type: defectenhancement

comment:4 by Don-vip, 6 years ago

Milestone: 20.03
Owner: changed from team to Don-vip
Status: newassigned

comment:5 by Don-vip, 6 years ago

Resolution: fixed
Status: assignedclosed

In 16121/josm:

fix #18919 - sort tables in changeset manager

comment:6 by skyper, 6 years ago

Resolution: fixed
Status: closedreopened

The selection does not work anymore see GerdP on 18985#comment:3:

Just a moment: It seems that the selection of the object doesn't work. When I download the history for a selected node object I get one for another object in the list.

comment:7 by skyper, 6 years ago

If you sort the column the selection gets mixed up. Best way to notice is opening the history browser of an object.

comment:8 by GerdP, 6 years ago

I've learned we have to use method JTable.convertRowIndexToModel()

by GerdP, 6 years ago

Attachment: 18919-partly-fix.patch added

comment:9 by GerdP, 6 years ago

The patch fixes only the changeset content table. Working now on the other tables in ChangesetManager. Please stop me if my approach is wrong.

comment:10 by GerdP, 6 years ago

In 16216/josm:

see #18919: Allow sorting of table content in changeset manager to facilitate finding related rows

  • partly revert r16121: don't use setAutoCreateRowSorter() in ChangesetCacheManager. This requires a lot more changes to make it work
  • fix handling of selected rows after sorting of rows in ChangesetContentPanel

comment:11 by GerdP, 6 years ago

Resolution: fixed
Status: reopenedclosed

comment:12 by GerdP, 6 years ago

I tried to fix ChangesetCacheManager in a similar way but got stucked with the unit tests. Since the ticket doesn't request a sorting of the changesets list I simply removed the line tblChangesets.setAutoCreateRowSorter() for now.

comment:13 by schoschi, 6 years ago

Tested in v16239, clicking table header now changes sorting of rows :) but it's sorting in a weird way and not helping the purpose of the ticket :( E.g. in changeset 82793284 when sorting by column name, I get the sequence 33478468, Straße, Reitanlage Faas, Amphitheater, 131896580, Straße. I would expect all rows with name "Straße" to be neighbours, also the rows with numbers as names to be neighbouring rows.

In my tests, rows were atomic and not mixed up (i.e. all cells of one row stick together independent of sorting)

comment:14 by schoschi, 6 years ago

Description: modified (diff)
Resolution: fixed
Status: closedreopened
Note: See TracTickets for help on using tickets.