View Issue Details

IDProjectCategoryView StatusLast Update
0003322Slicer4Core: Base Codepublic2017-07-25 00:53
ReporterjcfrAssigned Tojcfr 
PrioritynormalSeverityminorReproducibilityN/A
Status acknowledgedResolutionopen 
Product Version 
Target VersionbacklogFixed in Version 
Summary0003322: Re-factor qSlicerIO code
Description

1) Naming of function in qSlicerCoreIOManager is not consistent

  • fileDescription / fileWriterDescription
  • fileType / fileWriterFileType
    ...

2) Readers and writers should be registered in the "right" order with generic being the last one.

3) Consolidate qSlicerCoreIOManager::readers with qSlicerCoreIOManagerPrivate::readers.

4) Look into passing down a "writer id" after selecting an extension within the save dialog. Doing so would avoid ambiguity.

5) Consistently used vtkMRMLDoubleArrayStorageNode::InitializeSupported(Read|Write)FileTypes for both reader and writer

TagsNo tags attached.

Relationships

related to 0002464 acknowledgedjcfr Document python "load" method properties 

Activities

jcfr

jcfr

2013-08-26 19:41

administrator   ~0009606

Related commits:
http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=22337
http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=22338

lassoan

lassoan

2017-07-25 00:51

developer   ~0014958

2) Readers and writers should be registered in the "right" order with generic being the last one.
4) Look into passing down a "writer id" after selecting an extension within the save dialog. Doing so would avoid ambiguity.

These are now addressed by defining composite file extensions. Always the reader associated with the most specific file extension will be used to read a file.

For example:
something.nrrd => this will be either read as a scalar volume or a volume sequence
something.seq.nrrd => this will be loaded as a volume sequence (Sequences module) by default
something.seg.nrrd => this will be loaded as a segmentation node by default

Related Changesets

Slicer: 2145-support-for-installing-extension-from-file b0302280

2013-08-26 23:29:53

jcfr

Details Diff
BUG: Consider specific file writer before generic one.

Ideally the file reader/writer should be reworked to have a more
consistent API. More specifically after the user select a file type
in the "save dialog", the corresponding "file writer id" should be
passed down the qSlicerCoreIOManager::saveScene/saveNodes methods.

This would prevent confusion for the user. Indeed, if a writer fails a
clear error message would be displated and the system wouldn't try an other
possible writer.

See issue 0003322

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22337 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTCore/qSlicerCoreIOManager.cxx Diff File

Issue History

Date Modified Username Field Change
2013-08-26 07:41 jcfr New Issue
2013-08-26 07:41 jcfr Status new => assigned
2013-08-26 07:41 jcfr Assigned To => jcfr
2013-08-26 07:41 jcfr Target Version => Slicer 4.4.0
2013-08-26 07:58 jcfr Description Updated
2013-08-26 15:18 jcfr Description Updated
2013-08-26 19:41 jcfr Note Added: 0009606
2013-08-27 11:25 jcfr Relationship added related to 0002464
2014-03-07 09:05 jcfr Status assigned => acknowledged
2014-03-07 09:05 jcfr Target Version Slicer 4.4.0 =>
2017-06-07 23:27 jcfr Changeset attached => Slicer 2145-support-for-installing-extension-from-file b0302280
2017-07-25 00:51 lassoan Note Added: 0014958
2017-07-25 00:53 lassoan Severity major => minor
2017-07-25 00:53 lassoan Target Version => backlog