Skip to content

Commit

Permalink
Pan and zoom
Browse files Browse the repository at this point in the history
  • Loading branch information
qu1ck committed Aug 5, 2018
1 parent d88f82e commit 4be1f40
Show file tree
Hide file tree
Showing 4 changed files with 229 additions and 90 deletions.
10 changes: 9 additions & 1 deletion InteractiveHtmlBom/ibom.css
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,11 @@ button#bom-btn {
}

canvas {
margin: 1px;
cursor: crosshair;
}

canvas:active {
cursor: grabbing;
}

.fileinfo {
Expand Down Expand Up @@ -258,3 +262,7 @@ mark.highlight {
border: 1px solid #ccc;
width: calc(100% - 18px);
}

#dbg {
display: none;
}
2 changes: 1 addition & 1 deletion InteractiveHtmlBom/ibom.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@

<body>
<div id="topmostdiv" style="width: 100%; height: 100%">
<div id="top" style="height: 80px; border-bottom: 2px solid black;">
<div id="top" style="height: 78px; border-bottom: 2px solid black;">
<div style="float: right;">
<div class="hideonprint menu" style="float: right; margin: 10px; top: 8px;">
<button class="menubtn"></button>
Expand Down
33 changes: 13 additions & 20 deletions InteractiveHtmlBom/ibom.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,9 @@ var storagePrefix = 'KiCad_HTML_BOM__' + pcbdata.metadata.title + '__' +
pcbdata.metadata.revision + '__';
var bomsplit;
var canvassplit;
var frontscale = 12;
var backscale = 12;
var canvaslayout = "default";
var bomlayout = "default";
var highlightedRefs = [];

function readStorage(key) {
return window.localStorage.getItem(storagePrefix + '#' + key);
Expand All @@ -23,7 +22,8 @@ function dbg(str) {

function createRowMouseEnterHandler(refs) {
return function() {
drawHighlights(refs);
highlightedRefs = refs;
drawHighlights();
}
}

Expand Down Expand Up @@ -130,7 +130,8 @@ function populateBomTable() {
bom.appendChild(tr);
tr.onmouseenter = createRowMouseEnterHandler(references);
if ((filter || reflookup) && first) {
drawHighlights(references);
highlightedRefs = references;
drawHighlights();
first = false;
}
}
Expand Down Expand Up @@ -183,7 +184,7 @@ function changeCanvasLayout(layout) {
}
canvaslayout = layout;
writeStorage("canvaslayout", layout);
resizeCanvas();
resizeAll();
populateBomTable(layout);
}

Expand Down Expand Up @@ -231,14 +232,14 @@ function changeBomLayout(layout) {
}
bomsplit = Split(['#bomdiv', '#canvasdiv'], {
sizes: [50, 50],
onDragEnd: resizeCanvas,
onDragEnd: resizeAll,
direction: "vertical",
gutterSize: 5
});
canvassplit = Split(['#frontcanvas', '#backcanvas'], {
sizes: [50, 50],
gutterSize: 5,
onDragEnd: resizeCanvas
onDragEnd: resizeAll
});
break;
case 'LR':
Expand All @@ -258,14 +259,14 @@ function changeBomLayout(layout) {
}
bomsplit = Split(['#bomdiv', '#canvasdiv'], {
sizes: [50, 50],
onDragEnd: resizeCanvas,
onDragEnd: resizeAll,
gutterSize: 5
});
canvassplit = Split(['#frontcanvas', '#backcanvas'], {
sizes: [50, 50],
gutterSize: 5,
direction: "vertical",
onDragEnd: resizeCanvas
onDragEnd: resizeAll
});
}
bomlayout = layout;
Expand All @@ -290,15 +291,7 @@ function cleanGutters() {

window.onload = function(e) {
cleanGutters();
allcanvas = {};
allcanvas.front = {};
allcanvas.back = {};
allcanvas.front.bg = document.getElementById("F_bg");
allcanvas.front.silk = document.getElementById("F_slk");
allcanvas.front.highlight = document.getElementById("F_hl");
allcanvas.back.bg = document.getElementById("B_bg");
allcanvas.back.silk = document.getElementById("B_slk");
allcanvas.back.highlight = document.getElementById("B_hl");
initRender();
dbgdiv = document.getElementById("dbg");
bom = document.getElementById("bombody");
bomlayout = readStorage("bomlayout");
Expand All @@ -319,5 +312,5 @@ window.onload = function(e) {
}
}

window.onresize = resizeCanvas;
window.matchMedia("print").addListener(resizeCanvas);
window.onresize = resizeAll;
window.matchMedia("print").addListener(resizeAll);
Loading

0 comments on commit 4be1f40

Please sign in to comment.