home *** CD-ROM | disk | FTP | other *** search
- // ╬ß·σΩ≥ Σδ ⌡≡αφσφΦ ταΩδαΣεΩ Γ±σ⌡ ε≥Ω≡√≥√⌡ ΣεΩ≤∞σφ≥εΓ
- var allmarks = {};
-
- // ╧≡ε÷σΣ≤≡α ΣεßαΓδσφΦ ταΩδαΣΩΦ
- function docmark_add()
- {
- // URL ΣεΩ≤∞σφ≥α ß≤Σσ∞ Φ±∩εδⁿτεΓα≥ⁿ Γ Ωα≈σ±≥Γσ ≤φΦΩαδⁿφεπε
- // ΦΣσφ≥Φ⌠ΦΩα≥ε≡α ±∩Φ±Ωα ταΩδαΣεΩ
- var id = window.content.document.location.href;
-
- if (typeof(allmarks[id]) == "undefined") {
- allmarks[id] = [];
- }
-
- var num = allmarks[id].length;
- var label = prompt(document.getElementById("docmark-string-bundle").getFormattedString("docmarkMarkTitle", [num + 1]), "");
- if (label != null) {
- // pageXOffset, pageYOffset -- ≥σΩ≤∙σσ ∩εδεµσφΦσ ∩≡εΩ≡≤≥ΩΦ
- allmarks[id][num] = {offsetX:window.content.pageXOffset, offsetY:window.content.pageYOffset, label:label};
- }
- }
-
- // ╧≡ε÷σΣ≤≡α πσφσ≡α÷ΦΦ ±∩Φ±Ωα ταΩδαΣεΩ
- function docmark_generate_menu_marks(menu)
- {
- // ╙ΣαδΦ∞ Γ±σ ±≥α≡√σ ταΩδαΣΩΦ
- docmark_remove_menu_marks(menu);
-
- var marks = allmarks[window.content.document.location.href];
- if (typeof(marks) == "undefined") return;
-
- var menuItem;
-
- if (marks.length != 0) {
- // ─εßαΓΦ∞ ≡ατΣσδΦ≥σδⁿφ≤■ δΦφΦ■
- menuItem = document.createElement("menuseparator");
- docmark_insert_menu_item(menu, menuItem);
- } else return;
-
- for (var i = 0; i < marks.length; ++i) {
- var num = i + 1;
- var mark = marks[i];
- menuItem = document.createElement("menuitem");
- menuItem.setAttribute("label", num + '. ' + mark.label);
- menuItem.setAttribute("oncommand", "window.content.scrollTo(" + mark.offsetX + "," + mark.offsetY + ")");
- if (num <= 10) {
- menuItem.setAttribute("accesskey", num % 10);
- }
- docmark_insert_menu_item(menu, menuItem);
- }
- }
-
- // ─εßαΓδσφΦσ ταΩδαΣΩΦ Γ ∞σφ■
- function docmark_insert_menu_item(menu, item)
- {
- item.setAttribute("class", "docmark-generated-menu");
- menu.insertBefore(item, document.getElementById("docmark-separator-end"));
- }
-
- // ╙ΣαδσφΦσ ±πσφσ≡Φ≡εΓαφ√⌡ ταΩδαΣεΩ
- function docmark_remove_menu_marks(menu)
- {
- var menuItems = menu.getElementsByAttribute("class", "docmark-generated-menu");
- for (var i = 0; i < menuItems.length; ++i) {
- menu.removeChild(menuItems[i]);
- }
- }
- // ─Φαδεπ "About"
- function docmark_about()
- {
- window.openDialog("chrome://docmark/content/about.xul", "docmark-about-dialog", "centerscreen,chrome,modal");
- }
-