home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Narzedzia / Calibre / calibre-0.8.18.msi / file_607 < prev    next >
Text File  |  2010-09-30  |  2KB  |  63 lines

  1. /*
  2.  * reference management
  3.  * Copyright 2008 Kovid Goyal
  4.  * License: GNU GPL v3
  5.  */
  6.  
  7.  
  8.  
  9. var reference_old_bgcol = "transparent";
  10. var reference_prefix = "1.";
  11.  
  12. function show_reference_panel(ref) {
  13.     panel = $("#calibre_reference_panel");
  14.     if (panel.length < 1) {
  15.         $(document.body).append('<div id="calibre_reference_panel" style="top:20px; left:20px; padding-left:30px; padding-right:30px; font:monospace normal;text-align:center; z-index:10000; background: beige; border:red ridge 2px; position:absolute;"><h5>Paragraph</h5><p style="text-indent:0pt">None</p></div>')
  16.         panel = $("#calibre_reference_panel");
  17.     }
  18.     $("> p", panel).text(ref);
  19.     panel.css({top:(window.pageYOffset+20)+"px"});
  20.     panel.fadeIn(500);
  21. }
  22.  
  23. function toggle_reference(e) {
  24.     p = $(this);
  25.     if (e.type == "mouseenter") {
  26.         reference_old_bgcol = p.css("background-color");
  27.         p.css({backgroundColor:"beige"});
  28.         var i = 0;
  29.         var paras = $("p");
  30.         for (j = 0; j < paras.length; j++,i++) {
  31.             if (paras[j] == p[0]) break;
  32.         }
  33.         show_reference_panel(reference_prefix+(i+1) );
  34.     } else {
  35.         p.css({backgroundColor:reference_old_bgcol});
  36.         panel = $("#calibre_reference_panel").hide();
  37.     }
  38.     return false;
  39. }
  40.  
  41. function enter_reference_mode() {
  42.     $("p").bind("mouseenter mouseleave", toggle_reference);
  43. }
  44.  
  45. function leave_reference_mode() {
  46.     $("p").unbind("mouseenter mouseleave", toggle_reference);
  47. }
  48.  
  49. function goto_reference(ref) {
  50.     var tokens = ref.split(".");
  51.     if (tokens.length != 2) {alert("Invalid reference: "+ref); return;}
  52.     var num = parseInt(tokens[1]);
  53.     if (isNaN(num)) {alert("Invalid reference: "+ref); return;}
  54.     num -= 1;
  55.     if (num < 0) {alert("Invalid reference: "+ref); return;}
  56.     var p = $("p");
  57.     if (num >= p.length) {alert("Reference not found: "+ref); return;}
  58.     $.scrollTo($(p[num]), 1000,
  59.         {onAfter:function(){window.py_bridge.animated_scroll_done()}});
  60. }
  61.  
  62.  
  63.