--- npicture.js 2010-10-30 00:24:45.916050638 -0700 +++ xpicture.js 2010-10-30 00:22:33.683925040 -0700 @@ -15,6 +15,17 @@ var zoomInputFocused = false; var navigationSubHash = ""; +function UnloadHandler() { + var x = true; + return x; +} + +function NextClickHandler(evt) { + if (!evt) var evt = window.event; + location=nextId+style_link+".html"+hash; + stopPropagation(evt); + return false; +} var zoom = "1.0"; // a number or "native" function getHashParams(hash) { if (top.slider) hash = top.location.hash; @@ -112,8 +123,12 @@ } function SliderFixLink(link, target) { - link.setAttribute('onclick', - "top.slider.sliderSelectId('"+target+"');return false;"); + registerOnClick(link, function(evt) { + top.slider.sliderSelectId(target); + return stopPropagation(evt); + }); + // link.setAttribute('onclick', +// "top.slider.sliderSelectId('"+target+"');return false;"); link.href = "slider.html#"+target; } @@ -131,8 +146,24 @@ ? "/" + hash.substring(1) : ""; if (prev_button_link) SliderFixLink(prev_button_link, prevId+style_link+slashTail); - if (next_button_link) - SliderFixLink(next_button_link, nextId+style_link+slashTail); + if (next_button_link) { + + registerOnClick(next_button_link, NextClickHandler); + +/*function(evt) { + alert("next-button1a w:"+window+" w.n:"+window.name+" link:"+(nextId+style_link+".html"+hash)); + location=nextId+style_link+".html"+hash; + // alert("next-button2 "+nextId+style_link+".html"+hash); +// top.slider.sliderSelectCurStyle(nextId); + stopPropagation(evt); + return false; + }); +*/ + +// top.slider.sliderSelectCurStyle(nextId); + next_button_link.href = "slider.html#"+nextId+style_link+slashTail; + // SliderFixLink(next_button_link, nextId+style_link+slashTail); + } if (slider_button_link) { slider_button_link.href = thisId+style_link+".html"+hash; var slider_child = slider_button_link.firstChild; @@ -152,8 +183,9 @@ bstyle = ""; var target = thisId+bstyle+slashTail; //if (hash && hash.length > 1 && hash[0] == '#') - // target = target + "/" + hash.substring(1); + // target = target + "/" + hash.substring(1); SliderFixLink(links[i], target); + //registerOnClick(links[i], stopPropagation); } } links = top.slider.document.getElementsByTagName("a"); @@ -171,20 +203,25 @@ href = m[1]; href = href + style_link; + if (hash && hash.length > 1 && hash[0] == '#') + href = href + "/" + hash.substring(1); links[i].href = href; } } } - else { + else { // Not slider if (up_button_link) up_button_link.href = "index.html"+uphash; + var bhash = navigationSubHash ? "#" + navigationSubHash : ""; + //alert("style-ix-links bh:"+bhash+" nasub:"+navigationSubHash); if (prev_button_link) - prev_button_link.hash = hash; + prev_button_link.hash = bhash; if (next_button_link) - next_button_link.hash = hash; + next_button_link.hash = bhash; for (var i = links.length; --i >= 0; ) { var bstyle = links[i].parentNode.getAttribute("style-button"); if (bstyle) { + //links[i].href.hash = bhash; registerOnClick(links[i].parentNode, stopPropagation); } } @@ -210,8 +247,14 @@ zoom_input_field.value = zoom; if (prev_button_link) registerOnClick(prev_button_link.parentNode, stopPropagation); - if (next_button_link) + if (next_button_link) { registerOnClick(next_button_link.parentNode, stopPropagation); + next_button_link.addEventListener('click', function(evt) { return false; }, true); + next_button_link.addEventListener('mousedown', function(evt) { return false; }, false); + next_button_link.addEventListener('mouseup', function(evt) { return false; }, false); + next_button_link.addEventListener('mousedown', function(evt) { return false; }, true); + next_button_link.addEventListener('mouseup', function(evt) { return false; }, true); + } registerOnClick(up_button_link.parentNode, stopPropagation); registerOnClick(slider_button_link.parentNode, stopPropagation); @@ -243,6 +286,7 @@ toggleHidePreamble(); } imageMoved = false; + stopPropagation(evt); return false; } @@ -375,6 +419,7 @@ registerOnClick(document, ImageClickHandler); registerOnClick(zoomInButton, ZoomIn); registerOnClick(zoomOutButton, ZoomOut); +// alert("ScaledLoad hide:"+hidePreamble); //FIXME use registerOnClick if (image.addEventListener) { image.addEventListener('DOMMouseScroll', OnMouseWheelSpin, false); @@ -460,6 +505,7 @@ top.slider.sliderSelectCurStyle(nextId); return false; } + // FIXME use navigationSubHash location=nextId+style_link+".html"+hash; return true; } if (key == 33) { // page-up @@ -483,7 +529,7 @@ if (key == 105) /* 'i' */ { location=thisId+"info.html"; return true; } if (key == 108) /* 'l' */ { location=thisId+"large.html#large-scaled"; return true; } if (key == 109) /* 'm' */ { location=thisId+".html"; return true; } - if (scaled && key == 104 ) { /* 'h' */ + if (/*scaled &&*/ key == 104 ) { /* 'h' */ toggleHidePreamble(); return true; } --- ngroup.js 2010-10-29 23:56:01.903925116 -0700 +++ xgroup.js 2010-10-30 00:21:08.443925427 -0700 @@ -6,6 +6,10 @@ if (key == 117) { location="../index.html"; return false; } return true; } +function UnloadHandler() { + var x= true; + return x; +} document.onkeypress = handler; function fixLinks() { if (hash=="") @@ -39,7 +43,8 @@ } function sliderSelectCurStyle(id) { - top.slider.sliderSelectId(id+top.main.style_link); + top.slider.sliderSelect(top.slider.document.getElementById(id), top.main.style_link, top.main.navigationSubHash); +// top.slider.sliderSelectId(id+top.main.style_link); } function sliderSelectId(id) { @@ -68,6 +73,7 @@ top.selected.setAttribute("bgcolor", top.sliderBgcolor ? top.sliderBgcolor : "black"); node.setAttribute("bgcolor", "orange"); top.selected = node; + var url = node.id+bstyle+".html"; /* OLD if (style=="medium-scaled") @@ -84,10 +90,12 @@ url = node.id+"large.html#large-scaled-only"; else if (style!="" && style != "medium") // Error */ - style = ""; +// style = ""; hash = node.id + bstyle; - - hash = style=="" ? hash : hash+"/"+style; + if (style != "") { + hash = hash+"/"+style; + url = url+"#"+style; + } top.main.location=url; // Konqueror doesn't like this: top.location.hash="#"+node.id; top.location.hash=hash;