Skip to content

Commit

Permalink
add zoom event for biojs
Browse files Browse the repository at this point in the history
  • Loading branch information
MatSchaeff committed May 24, 2016
1 parent b05c277 commit b85a7ac
Show file tree
Hide file tree
Showing 5 changed files with 55 additions and 8 deletions.
47 changes: 42 additions & 5 deletions build/viewer.js
Original file line number Diff line number Diff line change
Expand Up @@ -20994,7 +20994,8 @@ var FeatureViewer = (function () {
var self = this;
// if (!div) var div = window;
this.events = {
FEATURE_SELECTED_EVENT: "feature-viewer-position-selected"
FEATURE_SELECTED_EVENT: "feature-viewer-position-selected",
ZOOM_EVENT: "feature-viewer-zoom-altered"
};

// if (!div) var div = window;
Expand All @@ -21011,7 +21012,13 @@ var FeatureViewer = (function () {
verticalLine: false
};
var offset = {start:1,end:fvLength};
if (options && options.offset) offset = options.offset;
if (options && options.offset) {
offset = options.offset;
if (offset.start < 1) {
offset.start = 1;
console.warn("WARNING ! offset.start should be > 0. Thus, it has been reset to 1.");
}
}
var pathLevel = 0;
var svg;
var svgContainer;
Expand Down Expand Up @@ -21325,6 +21332,10 @@ var FeatureViewer = (function () {
//$(document).on(self.events.FEATURE_SELECTED_EVENT, listener);
};

this.onZoom = function (listener) {
svgElement.addEventListener(self.events.ZOOM_EVENT, listener);
};

function addLevel(array) {
var leveling = [];
array.forEach(function (d) {
Expand Down Expand Up @@ -22204,6 +22215,18 @@ var FeatureViewer = (function () {
transition_data(features, currentShift);
reset_axis();

if (CustomEvent) {
svgElement.dispatchEvent(new CustomEvent(
self.events.ZOOM_EVENT,
{detail: { start: start, end: end, zoom: zoomScale }}
));
}
if (self.trigger) self.trigger(self.events.ZOOM_EVENT, {
start: start,
end: end,
zoom: zoomScale
});

//rectsPep2.classed("selected", false);
d3.select(div).selectAll(".brush").call(brush.clear());
} else {
Expand Down Expand Up @@ -22268,6 +22291,18 @@ var FeatureViewer = (function () {

transition_data(features, offset.start);
reset_axis();

// Fire Event
if (CustomEvent) {
svgElement.dispatchEvent(new CustomEvent(self.events.ZOOM_EVENT,
{ detail: { start: 1, end: sequence.length, zoom: 1 }}));
};
if (self.trigger) self.trigger(self.events.ZOOM_EVENT, {
start: 1,
end: sequence.length,
zoom: 1
});

d3.select(div).selectAll(".brush").call(brush.clear());
}

Expand Down Expand Up @@ -22386,7 +22421,7 @@ var FeatureViewer = (function () {

if (!$.fn.popover) {
options.bubbleHelp = false;
console.warn("The bubble help requires tooltip and popover bootrstrap js libraries. The feature viewer will continue to work, but without the info bubble");
console.warn("The bubble help requires tooltip and popover bootstrap js libraries. The feature viewer will continue to work, but without the info bubble");
}

// Create SVG
Expand Down Expand Up @@ -22543,8 +22578,10 @@ var FeatureViewer = (function () {
.attr("in", "SourceGraphic");

svgContainer.on('mousemove', function () {
var absoluteMousePos = SVGOptions.brushActive ? d3.mouse(d3.select(".background").node()) : d3.mouse(svgContainer.node());;
$(div + " #zoomPosition").text(Math.round(scalingPosition(absoluteMousePos[0])));
var absoluteMousePos = SVGOptions.brushActive ? d3.mouse(d3.select(".background").node()) : d3.mouse(svgContainer.node());;
var pos = Math.round(scalingPosition(absoluteMousePos[0]));
pos += sequence[pos-1] || "";
$(div + " #zoomPosition").text(pos);
});

if (options.showSequence && !(intLength)) {
Expand Down
2 changes: 1 addition & 1 deletion dist/feature-viewer.bundle.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/feature-viewer.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/feature-viewer.nextprot.js

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions src/feature-viewer.js
Original file line number Diff line number Diff line change
Expand Up @@ -1232,6 +1232,11 @@ var FeatureViewer = (function () {
{detail: { start: start, end: end, zoom: zoomScale }}
));
}
if (self.trigger) self.trigger(self.events.ZOOM_EVENT, {
start: start,
end: end,
zoom: zoomScale
});

//rectsPep2.classed("selected", false);
d3.select(div).selectAll(".brush").call(brush.clear());
Expand Down Expand Up @@ -1303,6 +1308,11 @@ var FeatureViewer = (function () {
svgElement.dispatchEvent(new CustomEvent(self.events.ZOOM_EVENT,
{ detail: { start: 1, end: sequence.length, zoom: 1 }}));
};
if (self.trigger) self.trigger(self.events.ZOOM_EVENT, {
start: 1,
end: sequence.length,
zoom: 1
});

d3.select(div).selectAll(".brush").call(brush.clear());
}
Expand Down

0 comments on commit b85a7ac

Please sign in to comment.