Ticket #7869 (closed: fixed)

Opened 7 years ago

Last modified 5 years ago

Errors when MantidPlot tables are updated on afterReplace

Reported by: Arturs Bekasovs Owned by: Arturs Bekasovs
Priority: major Milestone: Release 3.0
Component: GUI Keywords:
Cc: Blocked By:
Blocking: Tester: Anders Markvardsen

Description (last modified by Arturs Bekasovs) (diff)

This happens when TableWorkspace in ADS gets replaced. Lots of errors when views are trying to get updated. We shouldn't probably show the confirmation to delete columns in this case as well.

To reproduce:

  1. Open MuonAnalysis interface.
  2. Load some data, fit it on Data Analysis tab and go to Results Table tab.
  3. Select multiple values in the upper list, and create the table.
  4. Open the view to the created table (in ADS, right-click and "Show Data".
  5. Back to the Results Table tab, deselect one of the values in the middle of the ones selected (e.g. if a,b,c were selected, deselect b), and try to create the table with the same name.
  6. Notice lots of annoying error messages and irrelevant confirmation. This shouldn't happen.

The reason is in the way MantidTable gets updated - it just resizes the table and updates the names of the columns. It causes problems when columns get removed from the middle as we end up trying give the name which already exists in a table.

Change History

comment:1 Changed 7 years ago by Arturs Bekasovs

Happens to happen even when the set of columns is not changed.

comment:2 Changed 7 years ago by Arturs Bekasovs

  • Status changed from new to inprogress
  • Description modified (diff)

comment:3 Changed 7 years ago by Arturs Bekasovs

Refactored resize methods.

They are called from GUI and deal with some UX, but the actual "resizing" happens in setNumCols and setNumRows now, hence I can use them from the code if I need to resize table.

Refs #7869

Changeset: aeb98b2b35c3ddfd6db54e75ca9ba944cae90891

comment:4 Changed 7 years ago by Arturs Bekasovs

Use more low-level resize functions when filling.

This will avoid confirmation being shown when updating the table.

Refs #7869

Changeset: 1cf5e92ac2c868282edee98debbb69d4df15b394

comment:5 Changed 7 years ago by Arturs Bekasovs

Empty the table before filling it.

Refs #7869

Changeset: c84f28dcb0f6b69974284d5414619e81e79b3d57

comment:6 Changed 7 years ago by Arturs Bekasovs

Show waiting cursor when filling, and hide table when updating.

Refs #7869

Changeset: f570f2d7e67e6ecaee3b54ef0da924db90c9ffac

comment:7 Changed 7 years ago by Arturs Bekasovs

UX improvements.

Refs #7869

Changeset: 7b1ad705a3519d1e98dbd6cfc881684b012dfab4

comment:8 Changed 7 years ago by Arturs Bekasovs

Tester:

Steps to reproduce are in the description. Make sure it works as expected now, without throwing any errors or confirmations.

Additionally, some changes have been made to the QtiPlot Table, so please check the following:

  1. Create a new QtiPlot Table (Ctrl + T).
  2. Try to delete a single row and column. No confirmations should be shown.
  3. Now try to reduce the number of rows and columns using Table > Rows... and Table > Columns... menus. In that case confirmation should be shown.

comment:9 Changed 7 years ago by Arturs Bekasovs

  • Priority changed from minor to major
  • Milestone changed from Backlog to Release 3.0

comment:10 Changed 7 years ago by Arturs Bekasovs

  • Status changed from inprogress to verify
  • Resolution set to fixed

comment:11 Changed 7 years ago by Anders Markvardsen

  • Status changed from verify to verifying
  • Tester set to Anders Markvardsen

comment:12 Changed 7 years ago by Anders Markvardsen

  • Status changed from verifying to closed

Works as described

comment:13 Changed 7 years ago by Anders Markvardsen

Merge remote-tracking branch 'origin/feature/7869_table_replace_errors'

comment:14 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 8714

Note: See TracTickets for help on using tickets.