K-Meleon
KMeleonWiki > Resources > MacroLibrary > MacroLibrary2 > Image Browsing Toolbar
Submitted by: Johnny Sim-Bravenboer
Notes:
A toolbar to make image browsing just a little easier.
The Zoom macros and the Open Image Links macro are already part of K-Meleon 0.9
To complete the toolbar, rename and convert (or recreate) this picture to imagebrowsing.bmp and place it in the folder of the skin in use:
If you do not wish to use the imagebrowsing.bmp toolbar picture, just leave out the references to the picture in the toolbar macro.
Changes:
# Image Browsing Macros
hide_visited_links{
$macro="hide-visited-links"; &JSEnable;
}
hide-visited-links{
open("javascript:(function(){var newSS, styles=':visited {display: none}'; if(document.createStyleSheet) { document.createStyleSheet("javascript:'"+styles+"'"); } else { newSS=document.createElement('link'); newSS.rel='stylesheet'; newSS.href='data:text/css,'+escape(styles); document.documentElement.childNodes[0].appendChild(newSS); } })();");
}
increment_link{
$macro="increment-link"; &JSEnable;
}
increment-link{
open("javascript:(function(){ var e,s; IB=1; function isDigit(c) { return ("0" <= c && c <= "9") } L = location.href; LL = L.length; for (e=LL-1; e>=0; --e) if (isDigit(L.charAt(e))) { for(s=e-1; s>=0; --s) if (!isDigit(L.charAt(s))) break; break; } ++s; if (e<0) return; oldNum = L.substring(s,e+1); newNum = "" + (parseInt(oldNum,10) + IB); while (newNum.length < oldNum.length) newNum = "0" + newNum; location.href = L.substring(0,s) + newNum + L.slice(e+1); })();");
}
decrement_link{
$macro="decrement-link"; &JSEnable;
}
decrement-link{
open("javascript:(function(){ var e,s; IB=-1; function isDigit(c) { return ("0" <= c && c <= "9") } L = location.href; LL = L.length; for (e=LL-1; e>=0; --e) if (isDigit(L.charAt(e))) { for(s=e-1; s>=0; --s) if (!isDigit(L.charAt(s))) break; break; } ++s; if (e<0) return; oldNum = L.substring(s,e+1); newNum = "" + (parseInt(oldNum,10) + IB); while (newNum.length < oldNum.length) newNum = "0" + newNum; location.href = L.substring(0,s) + newNum + L.slice(e+1); })();");
}
go_refferer{
$macro="go-refferer"; &JSEnable;
}
go-refferer{
open("javascript:if(!document.referrer) alert("No referrer!"); else document.location = document.referrer; void 0");
}
# Enable Automatic Image Resize
toggle_autoresize{
menu = "Enable Auto Image Resizing"
togglepref(BOOL, "browser.enable_automatic_image_resizing");
&Sync;
getpref(BOOL, "browser.enable_automatic_image_resizing") == true ? $warn = "ENABLED" :$warn = "DISABLED";
statusbar("Auto Image Resize has been ".$warn."!.");
}
# List Image Links
list_images_links{
menu=&List Images As Links
open("javascript:{var images='';for (var idx=0;idx<document.images.length;idx++)images+='<a href=\'+document.images[idx].src+\'>'+document.images[idx].src+'</a>
\';images='<html><body>'+images+'</body></html>\';document.write(images);document.close();}");
}
# Open all links in a page
OpenAllLinks{
getpref(BOOL, $popups) == "true" ? &PB2 : &AllLinks;
}
PB2{
&PBToggle; &AllLinks; &PBToggle;
}
AllLinks{
$macro = "OpenAll"; &JSEnable;
}
OpenAll{
open("javascript:(function(){var n_to_open,dl,dll,i; function linkIsSafe(u) { if (u.substr(0,7)=='mailto:') return false; if (u.substr(0,11)=='javascript:') return false; return true; } n_to_open = 0; dl = document.links; dll = dl.length; for(i = 0; i < dll; ++i) { if (linkIsSafe(dl[i].href)) ++n_to_open; } if (!n_to_open) alert ('no links'); else { if (confirm('Open ' + n_to_open + ' links in new windows?')) for (i = 0; i < dll; ++i) if (linkIsSafe(dl[i].href)) window.open(dl[i].href); } })();");
}
# Open Selected Links
open_selected_links{
getpref(BOOL, $popups) == "true" ? &PB3 : &selected_links;
}
PB3{
&PBToggle; &selected_links; &PBToggle;
}
selected_links{
$macro = "selected-links"; &JSEnable;
}
selected-links{
open("javascript:(function(){var n_to_open,dl,dll,i; function linkIsSafe(u) { if (u.substr(0,7)=='mailto:') return false; if (u.substr(0,11)=='javascript:') return false; return true; } n_to_open = 0; dl = document.links; dll = dl.length; if (window.getSelection && window.getSelection().containsNode) { /* mozilla */ for(i=0; i<dll; ++i) { if (window.getSelection().containsNode(dl[i], true) && linkIsSafe(dl[i].href)) ++n_to_open; } if (n_to_open && confirm('Open ' + n_to_open + ' selected links in new windows?')) { for(i=0; i<dll; ++i) if (window.getSelection().containsNode(dl[i], true) && linkIsSafe(dl[i].href)) window.open(dl[i].href); } } /* /mozilla */ if (!n_to_open) { /*ie, or mozilla with no links selected: this section matches open_all_links, except for the alert text */ for(i = 0; i < dll; ++i) { if (linkIsSafe(dl[i].href)) ++n_to_open; } if (!n_to_open) alert ('no links'); else { if (confirm('No links selected. Open ' + n_to_open + ' links in new windows?')) for (i = 0; i < dll; ++i) if (linkIsSafe(dl[i].href)) window.open(dl[i].href); } } })();");
}
# Slideshow
slide_show{
$macro = "slideshow"; &JSEnable;
}
# Slideshow Generator
slideshow{
pluginmsg(toolbars,"CheckButton","Image Browsing Bar,macros(slide_show),".1);
open("javascript:(function(){var intv=prompt('Enter number of seconds between images. (Click Back to stop the show)');if(intv&&!isNaN(intv)){with(document){write('<html><frameset rows=\"*,22\" framespacing=0 border=0 frameborder=no><frame noresize frameborder=no><frame scrolling=no noresize frameborder=no></frameset></html>');frames[0].location.href=document.location.href;var docstr='<html><body bgcolor=#33FF99 style=\"margin-top:0px\">\n';docstr+='<span id=\"caption\"></span></body>\n';docstr+='<script>\nvar reloadIntv='+intv+';\nvar secsLeft='+intv+';\nfunction reloadFrame(){secsLeft=reloadIntv+1;Increment();}\nfunction countDown(){secsLeft--;showTime();}\nfunction showTime(){document.getElementById(\"caption\").innerHTML=\"-- Current image: \"+L.substring(0,s)+newNum+L.slice(e+1) +\" -- Next image in \"+ parseInt(secsLeft)+\" secs.\";}\nfunction Increment(){IB=1;\nfunction isDigit(c){return ("0"<= c && c <= "9");}L = parent.frames[0].location.href;LL = L.length;for (e=LL-1; e>=0; --e)if (isDigit(L.charAt(e))){for(s=e-1; s>=0; --s)if (!isDigit(L.charAt(s)))break;break;}++s;if (e<0)return;oldNum = L.substring(s,e+1);newNum = "" + (parseInt(oldNum,10) + IB);while (newNum.length < oldNum.length)newNum = "0" + newNum;parent.frames[0].location.href = L.substring(0,s) + newNum + L.slice(e+1);}\nsetInterval(\"reloadFrame()\",'+intv*1000+');\nsetInterval(\"countDown()\",1000);\nshowTime();\n</script>\n</html>';frames[1].document.write(docstr);}}})();");
}
Sync{
&EngineSync;
setcheck("macros(SN0)",getpref(INT,$so)==0? true:false);
setcheck("macros(SN1)",getpref(INT,$so)==1? true:false);
setcheck("macros(SN2)",getpref(INT,$so)==2? true:false);
setcheck("macros(SearchLock)",getpref(BOOL,$sl));
...
pluginmsg(toolbars,"CheckButton","Image Browsing Bar,macros(toggle_autoresize),".(getpref(BOOL,"browser.enable_automatic_image_resizing")? 1:0));
pluginmsg(toolbars,"CheckButton","Image Browsing Bar,macros(slide_show),".0);
}
# Image Browsing Toolbar
%ifplugin macros
Image Browsing Bar(66,10){
Zoom In {
macros(ZoomInImages)
Zoom In Images
imagebrowsing.bmp[0]
}
Zoom Out {
macros(ZoomOutImages)
Zoom Out Images
imagebrowsing.bmp[1]
}
Open Links {
macros(open_image_links)
Open Linked Images
imagebrowsing.bmp[2]
}
Hide Visited {
macros(hide_visited_links)
Hide Visited Links
imagebrowsing.bmp[3]
}
++ Link {
macros(increment_link)
Increment Last Number Of Link
imagebrowsing.bmp[4]
}
-- Link {
macros(decrement_link)
Decrement Last Number Of Link
imagebrowsing.bmp[5]
}
List Links {
macros(list_images_links)
Create an Image Link List
imagebrowsing.bmp[6]
}
All Links {
macros(OpenAllLinks, Open All Links)
Open All Links
imagebrowsing.bmp[7]
}
Selected {
macros(open_selected_links)
Open Selected Links
imagebrowsing.bmp[8]
}
Go Refferer {
macros(go_refferer)
Go to Refferer
imagebrowsing.bmp[9]
}
BugMeNot {
macros(BugMeNot, Bypass Registration (BugMeNot))
Bypass Site Registration
imagebrowsing.bmp[10]
}
Auto Resize {
macros(toggle_autoresize)
En- or Disable Auto Image Resize
imagebrowsing.bmp[11]
}
Slide Show {
macros(slide_show)
Automatically Increment Image Numbering
imagebrowsing.bmp[12]
}
}
%endif
(c) 2000-2010 kmeleonbrowser.org. All rights reserved.
design by splif.

