Skip to content

Commit

Permalink
Connected view listeners with the app ones. Renamed them. Fixes #185.
Browse files Browse the repository at this point in the history
  • Loading branch information
ivmartel committed Nov 18, 2015
1 parent fc6732a commit ac8976b
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 29 deletions.
36 changes: 21 additions & 15 deletions src/app/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -376,7 +376,7 @@ dwv.App = function ()
var onLoadEnd = function (/*event*/) {
loadStateUrl([query.state]);
};
this.addEventListener( "onloadend", onLoadEnd );
this.addEventListener( "load-end", onLoadEnd );

}
}
Expand Down Expand Up @@ -587,7 +587,7 @@ dwv.App = function ()
}
};
urlIO.onerror = function (error) { handleError(error); };
urlIO.onloadend = function (/*event*/) { fireEvent({ 'type': 'onloadend' }); };
urlIO.onloadend = function (/*event*/) { fireEvent({ 'type': 'load-end' }); };
// main load (asynchronous)
urlIO.load(urls);
};
Expand Down Expand Up @@ -1161,11 +1161,11 @@ dwv.App = function ()
*/
function addImageInfoListeners()
{
view.addEventListener("wlchange", windowingInfo.update);
view.addEventListener("wlchange", miniColourMap.update);
view.addEventListener("wlchange", plotInfo.update);
view.addEventListener("colourchange", miniColourMap.update);
view.addEventListener("positionchange", positionInfo.update);
view.addEventListener("wl-change", windowingInfo.update);
view.addEventListener("wl-change", miniColourMap.update);
view.addEventListener("wl-change", plotInfo.update);
view.addEventListener("colour-change", miniColourMap.update);
view.addEventListener("position-change", positionInfo.update);
isInfoLayerListening = true;
}

Expand All @@ -1176,11 +1176,11 @@ dwv.App = function ()
*/
function removeImageInfoListeners()
{
view.removeEventListener("wlchange", windowingInfo.update);
view.removeEventListener("wlchange", miniColourMap.update);
view.removeEventListener("wlchange", plotInfo.update);
view.removeEventListener("colourchange", miniColourMap.update);
view.removeEventListener("positionchange", positionInfo.update);
view.removeEventListener("wl-change", windowingInfo.update);
view.removeEventListener("wl-change", miniColourMap.update);
view.removeEventListener("wl-change", plotInfo.update);
view.removeEventListener("colour-change", miniColourMap.update);
view.removeEventListener("position-change", positionInfo.update);
isInfoLayerListening = false;
}

Expand Down Expand Up @@ -1407,9 +1407,15 @@ dwv.App = function ()
dataWidth, dataHeight);

// image listeners
view.addEventListener("wlchange", self.onWLChange);
view.addEventListener("colourchange", self.onColourChange);
view.addEventListener("slicechange", self.onSliceChange);
view.addEventListener("wl-change", self.onWLChange);
view.addEventListener("colour-change", self.onColourChange);
view.addEventListener("slice-change", self.onSliceChange);

// connect with local listeners
view.addEventListener("wl-change", fireEvent);
view.addEventListener("colour-change", fireEvent);
view.addEventListener("position-change", fireEvent);
view.addEventListener("slice-change", fireEvent);

// update presets with loaded image (used in w/l tool)
viewController.updatePresets(image, true);
Expand Down
10 changes: 5 additions & 5 deletions src/image/view.js
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ dwv.image.View = function(image, isSigned)
if( this.getImage().getPhotometricInterpretation() === "MONOCHROME1") {
colourMap = dwv.image.lut.invPlain;
}
this.fireEvent({"type": "colourchange",
this.fireEvent({"type": "colour-change",
"wc": this.getWindowLut().getCenter(),
"ww": this.getWindowLut().getWidth() });
};
Expand Down Expand Up @@ -173,18 +173,18 @@ dwv.image.View = function(image, isSigned)
// only display value for monochrome data
if( image.getPhotometricInterpretation().match(/MONOCHROME/) !== null )
{
this.fireEvent({"type": "positionchange",
this.fireEvent({"type": "position-change",
"i": pos.i, "j": pos.j, "k": pos.k,
"value": image.getRescaledValue(pos.i,pos.j,pos.k)});
}
else
{
this.fireEvent({"type": "positionchange",
this.fireEvent({"type": "position-change",
"i": pos.i, "j": pos.j, "k": pos.k});
}
// slice change event (used to trigger redraw)
if( oldPosition.k !== currentPosition.k ) {
this.fireEvent({"type": "slicechange"});
this.fireEvent({"type": "slice-change"});
}
return true;
};
Expand Down Expand Up @@ -216,7 +216,7 @@ dwv.image.View = function(image, isSigned)
for ( var key in windowLuts ) {
windowLuts[key].setCenterAndWidth(center, width);
}
this.fireEvent({"type": "wlchange", "wc": center, "ww": width });
this.fireEvent({"type": "wl-change", "wc": center, "ww": width });
}
};

Expand Down
8 changes: 4 additions & 4 deletions tests/image/view.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,14 @@ QUnit.test("Test listeners.", function (assert) {
assert.equal( event.ww, 1, "Expected call to listener2.");
};
// with two listeners
view0.addEventListener("wlchange", listener1 );
view0.addEventListener("wlchange", listener2 );
view0.addEventListener("wl-change", listener1 );
view0.addEventListener("wl-change", listener2 );
view0.setWindowLevel(0,1);
// without listener2
view0.removeEventListener("wlchange", listener2 );
view0.removeEventListener("wl-change", listener2 );
view0.setWindowLevel(0,2);
// without listener1
view0.removeEventListener("wlchange", listener1 );
view0.removeEventListener("wl-change", listener1 );
view0.setWindowLevel(1,1);
});

Expand Down
15 changes: 10 additions & 5 deletions viewers/mobile/applauncher.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,16 @@ $(document).ready( function()
});

// example app listening
/*var consoleFunc = function (event) { console.log("event: "+event.type); };
myapp.addEventListener("draw-create", consoleFunc);
myapp.addEventListener("draw-move", consoleFunc);
myapp.addEventListener("draw-change", consoleFunc);
myapp.addEventListener("draw-delete", consoleFunc);*/
//var listener = function (event) { console.log("event: "+event.type); };
//myapp.addEventListener("load-end", listener);
//myapp.addEventListener("draw-create", listener);
//myapp.addEventListener("draw-move", listener);
//myapp.addEventListener("draw-change", listener);
//myapp.addEventListener("draw-delete", listener);
//myapp.addEventListener("wl-change", listener);
//myapp.addEventListener("colour-change", listener);
//myapp.addEventListener("position-change", listener);
//myapp.addEventListener("slice-change", listener);

var size = dwv.gui.getWindowSize();
$(".layerContainer").height(size.height);
Expand Down

0 comments on commit ac8976b

Please sign in to comment.