Modify

Opened 4 years ago

Closed 4 years ago

Last modified 3 years ago

#18919 closed enhancement (fixed)

Allow sorting of table content in changeset manager to facilitate finding related rows

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

Attachments (2)

20200312 134059 Änderungssatzverwaltung.png (170.4 KB ) - added by schoschi 4 years ago.
screenshot
18919-partly-fix.patch (4.9 KB ) - added by GerdP 4 years ago.

Download all attachments as: .zip

Change History (26)

by schoschi, 4 years ago

screenshot

comment:1 by schoschi, 4 years ago

Component: CorePlugin changeset_viewer

comment:2 by skyper, 4 years ago

Component: Plugin changeset_viewerCore

comment:3 by skyper, 4 years ago

Keywords: changeset manager content tab column added
Type: defectenhancement

comment:4 by Don-vip, 4 years ago

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

comment:5 by Don-vip, 4 years ago

Resolution: fixed
Status: assignedclosed

In 16121/josm:

fix #18919 - sort tables in changeset manager

comment:6 by skyper, 4 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, 4 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, 4 years ago

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

by GerdP, 4 years ago

Attachment: 18919-partly-fix.patch added

comment:9 by GerdP, 4 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, 4 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, 4 years ago

Resolution: fixed
Status: reopenedclosed

comment:12 by GerdP, 4 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, 4 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, 4 years ago

Description: modified (diff)
Resolution: fixed
Status: closedreopened

comment:15 by GerdP, 4 years ago

Maybe a filter would be the better solution?

in reply to:  15 comment:16 by skyper, 4 years ago

Replying to GerdP:

Maybe a filter would be the better solution?

No, it is another enhancement but not a solution for sorting. I use a mix of both if available.

comment:17 by simon04, 4 years ago

Resolution: fixed
Status: reopenedclosed

In 16826/josm:

fix #18919 - Changeset Manager: sort tables

comment:18 by simon04, 4 years ago

Milestone: 20.0320.08

comment:19 by GerdP, 3 years ago

The change in r16826 re-introduced the problem with the missing use of JTable.convertRowIndexToModel(), see comment:7 and following.
See #18527 for one regression.
I did not yet find the right place to fix that.

Version 0, edited 3 years ago by GerdP (next)

comment:20 by GerdP, 3 years ago

IIGTR methods like getSelectedRow() or hasSelectedRow() should never be implemented in TableModel?

comment:21 by GerdP, 3 years ago

see #19984

in reply to:  21 comment:22 by skyper, 3 years ago

Replying to GerdP:

see #19984

and #18985

Last edited 3 years ago by skyper (previous) (diff)

comment:23 by schoschi, 3 years ago

Cool, now it works as I imagined it - and I consider it helpful! Thank you :)

comment:24 by GerdP, 3 years ago

In fact it doesn't work well, make sure you understand #19984

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Don-vip.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.