extensions/xnat/src/components/XNATContourPanel.js
/**
   * onIOComplete - A callback executed on succesful completion of an
   * IO opperation. Recalculates the ROI Contour Collection state.
   *
   * @returns {type}  description
   */
A callback executed on succesful completion of an
IO opperation. Recalculates the ROI Contour Collection state.

@returns {type}  description
A callback executed on succesful completion of an IO opperation . Recalculates the ROI Contour Collection state . @returns { type } description
onIOComplete() {
    const SeriesInstanceUID = this.state.SeriesInstanceUID;
    const freehand3DStore = modules.freehand3D;
    let activeROIContourIndex = 0;
    if (modules.freehand3D.getters.series(SeriesInstanceUID)) {
      activeROIContourIndex = freehand3DStore.getters.activeROIContourIndex(
        SeriesInstanceUID
      );
    }
    const workingCollection = this.constructor._workingCollection(
      SeriesInstanceUID
    );
    const lockedCollections = this.constructor._lockedCollections(
      SeriesInstanceUID
    );
    this.setState({
      workingCollection,
      lockedCollections,
      activeROIContourIndex,
      importing: false,
      exporting: false,
    });
  }
onIOComplete ( ) { const SeriesInstanceUID = this . state . SeriesInstanceUID ; const freehand3DStore = modules . freehand3D ; let activeROIContourIndex = 0 ; if ( modules . freehand3D . getters . series ( SeriesInstanceUID ) ) { activeROIContourIndex = freehand3DStore . getters . activeROIContourIndex ( SeriesInstanceUID ) ; } const workingCollection = this . constructor . _workingCollection ( SeriesInstanceUID ) ; const lockedCollections = this . constructor . _lockedCollections ( SeriesInstanceUID ) ; this . setState ( { workingCollection , lockedCollections , activeROIContourIndex , importing : false , exporting : false , } ) ; }
onIOComplete - A callback executed on succesful completion of an
 IO opperation.
onIOComplete - A callback executed on succesful completion of an IO opperation .