Repository: qpid-dispatch Updated Branches: refs/heads/master 6e9c24e95 -> d441abbde
DISPATCH-453 - Limit topology svg width to take into account the legend Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/d441abbd Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/d441abbd Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/d441abbd Branch: refs/heads/master Commit: d441abbdeaafb8c6b06e0bf18d77111419b975f2 Parents: 6e9c24e Author: Ernest Allen <eal...@redhat.com> Authored: Fri Sep 9 11:28:31 2016 -0400 Committer: Ernest Allen <eal...@redhat.com> Committed: Fri Sep 9 11:28:31 2016 -0400 ---------------------------------------------------------------------- console/stand-alone/plugin/js/qdrTopology.js | 47 ++++++++++++++++------- 1 file changed, 34 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/d441abbd/console/stand-alone/plugin/js/qdrTopology.js ---------------------------------------------------------------------- diff --git a/console/stand-alone/plugin/js/qdrTopology.js b/console/stand-alone/plugin/js/qdrTopology.js index 8c69376..223ebe9 100644 --- a/console/stand-alone/plugin/js/qdrTopology.js +++ b/console/stand-alone/plugin/js/qdrTopology.js @@ -462,29 +462,49 @@ var QDR = (function (QDR) { }); // set up SVG for D3 - var width, height; - var tpdiv = $('#topology'); var colors = {'inter-router': "#EAEAEA", 'normal': "#F0F000", 'on-demand': '#00F000'}; - var gap = 5; var radii = {'inter-router': 25, 'normal': 15, 'on-demand': 15}; var radius = 25; var radiusNormal = 15; - width = tpdiv.width() - gap; - var top = tpdiv.offset().top - var tpform = $('#topologyForm') - var tpformHeight = tpform.height() - height = Math.max(window.innerHeight, tpformHeight + top) - top - gap; - if (width < 10) { - QDR.log.info("page width and height are abynormal: returning before very bad things happen") - return; - } - var svg, lsvg; var force; var animate = false; // should the force graph organize itself when it is displayed var path, circle; var savedKeys = {}; var dblckickPos = [0,0]; + var width = 0; + var height = 0; + + var getSizes = function () { + var legendWidth = 196; + var gap = 5; + var width = $('#topology').width() - gap - legendWidth; + var top = $('#topology').offset().top + var tpformHeight = $('#topologyForm').height() + var height = Math.max(window.innerHeight, tpformHeight + top) - top - gap; + if (width < 10) { + QDR.log.info("page width and height are abnormal w:" + width + " height:" + height) + return [0,0]; + } + return [width, height] + } + var resize = function () { + var sizes = getSizes(); + width = sizes[0] + height = sizes[1] + if (width > 0) { + // set attrs and 'resume' force + svg.attr('width', width); + svg.attr('height', height); + force.size(sizes).resume(); + } + } + window.addEventListener('resize', resize); + var sizes = getSizes() + width = sizes[0] + height = sizes[1] + if (width <= 0 || height <= 0) + return // set up initial nodes and links // - nodes are known by 'id', not by index in array. @@ -1715,6 +1735,7 @@ var QDR = (function (QDR) { QDRService.stopUpdating(); QDRService.delUpdatedAction("topology"); d3.select("#SVG_ID").remove(); + window.removeEventListener('resize', resize); }); initForceGraph(); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org