From a643b8f36d6dc8c1a7996c50ffed760759c941f8 Mon Sep 17 00:00:00 2001 From: Chris Morgan Date: Sat, 1 Oct 2005 00:22:45 +0000 Subject: [PATCH] Remove htmlarea now that xinha has replaced it --- htmlarea/dialog.js | 74 - htmlarea/examples/2-areas.cgi | 16 - htmlarea/examples/2-areas.html | 162 - htmlarea/examples/character_map.html | 30 - htmlarea/examples/context-menu.html | 95 - htmlarea/examples/core.html | 184 -- htmlarea/examples/css.html | 90 - htmlarea/examples/custom.css | 29 - htmlarea/examples/dynamic.css | 45 - htmlarea/examples/dynamic_css.html | 44 - htmlarea/examples/empty.html | 22 - htmlarea/examples/full-page.html | 77 - htmlarea/examples/fully-loaded.html | 262 -- htmlarea/examples/index.html | 43 - htmlarea/examples/list-type.html | 66 - htmlarea/examples/remove-font-tags.html | 41 - htmlarea/examples/spell-checker.html | 132 - htmlarea/examples/table-operations.html | 116 - htmlarea/examples/test.cgi | 21 - htmlarea/htmlarea.css | 180 -- htmlarea/htmlarea.js | 2595 ----------------- htmlarea/htmlarea_loader.js | 28 - htmlarea/images/ed_about.gif | Bin 87 -> 0 bytes htmlarea/images/ed_align_center.gif | Bin 69 -> 0 bytes htmlarea/images/ed_align_justify.gif | Bin 69 -> 0 bytes htmlarea/images/ed_align_left.gif | Bin 69 -> 0 bytes htmlarea/images/ed_align_right.gif | Bin 68 -> 0 bytes htmlarea/images/ed_blank.gif | Bin 56 -> 0 bytes htmlarea/images/ed_charmap.gif | Bin 143 -> 0 bytes htmlarea/images/ed_color_bg.gif | Bin 181 -> 0 bytes htmlarea/images/ed_color_fg.gif | Bin 171 -> 0 bytes htmlarea/images/ed_copy.gif | Bin 110 -> 0 bytes htmlarea/images/ed_custom.gif | Bin 67 -> 0 bytes htmlarea/images/ed_cut.gif | Bin 91 -> 0 bytes htmlarea/images/ed_delete.gif | Bin 90 -> 0 bytes htmlarea/images/ed_format_bold.gif | Bin 74 -> 0 bytes htmlarea/images/ed_format_italic.gif | Bin 77 -> 0 bytes htmlarea/images/ed_format_strike.gif | Bin 78 -> 0 bytes htmlarea/images/ed_format_sub.gif | Bin 78 -> 0 bytes htmlarea/images/ed_format_sup.gif | Bin 77 -> 0 bytes htmlarea/images/ed_format_underline.gif | Bin 85 -> 0 bytes htmlarea/images/ed_help.gif | Bin 70 -> 0 bytes htmlarea/images/ed_hr.gif | Bin 70 -> 0 bytes htmlarea/images/ed_html.gif | Bin 75 -> 0 bytes htmlarea/images/ed_image.gif | Bin 148 -> 0 bytes htmlarea/images/ed_indent_less.gif | Bin 87 -> 0 bytes htmlarea/images/ed_indent_more.gif | Bin 87 -> 0 bytes htmlarea/images/ed_killword.gif | Bin 154 -> 0 bytes htmlarea/images/ed_left_to_right.gif | Bin 89 -> 0 bytes htmlarea/images/ed_link.gif | Bin 97 -> 0 bytes htmlarea/images/ed_list_bullet.gif | Bin 80 -> 0 bytes htmlarea/images/ed_list_num.gif | Bin 82 -> 0 bytes htmlarea/images/ed_paste.gif | Bin 139 -> 0 bytes htmlarea/images/ed_print.gif | Bin 128 -> 0 bytes htmlarea/images/ed_redo.gif | Bin 80 -> 0 bytes htmlarea/images/ed_right_to_left.gif | Bin 88 -> 0 bytes htmlarea/images/ed_rmformat.gif | Bin 118 -> 0 bytes htmlarea/images/ed_save.gif | Bin 143 -> 0 bytes htmlarea/images/ed_show_border.gif | Bin 104 -> 0 bytes htmlarea/images/ed_splitcel.gif | Bin 143 -> 0 bytes htmlarea/images/ed_undo.gif | Bin 81 -> 0 bytes htmlarea/images/fullscreen_maximize.gif | Bin 97 -> 0 bytes htmlarea/images/fullscreen_minimize.gif | Bin 97 -> 0 bytes htmlarea/images/insert_table.gif | Bin 121 -> 0 bytes htmlarea/index.html | 190 -- htmlarea/lang/b5.js | 36 - htmlarea/lang/ch.js | 83 - htmlarea/lang/cz.js | 63 - htmlarea/lang/da.js | 38 - htmlarea/lang/de.js | 80 - htmlarea/lang/ee.js | 63 - htmlarea/lang/el.js | 75 - htmlarea/lang/en.js | 147 - htmlarea/lang/es.js | 51 - htmlarea/lang/fi.js | 46 - htmlarea/lang/fr.js | 97 - htmlarea/lang/gb.js | 36 - htmlarea/lang/he.js | 89 - htmlarea/lang/hu.js | 90 - htmlarea/lang/it.js | 79 - htmlarea/lang/ja-euc.js | 37 - htmlarea/lang/ja-jis.js | 37 - htmlarea/lang/ja-sjis.js | 37 - htmlarea/lang/ja-utf8.js | 37 - htmlarea/lang/lt.js | 77 - htmlarea/lang/lv.js | 55 - htmlarea/lang/nb.js | 36 - htmlarea/lang/nl.js | 90 - htmlarea/lang/no.js | 79 - htmlarea/lang/pl.js | 36 - htmlarea/lang/pt_br.js | 37 - htmlarea/lang/ro.js | 80 - htmlarea/lang/ru.js | 63 - htmlarea/lang/se.js | 38 - htmlarea/lang/si.js | 63 - htmlarea/lang/vn.js | 77 - htmlarea/license.txt | 30 - htmlarea/plugins/CSS/css.js | 116 - htmlarea/plugins/CSS/lang/en.js | 2 - .../plugins/CharacterMap/character-map.js | 70 - .../plugins/CharacterMap/img/ed_charmap.gif | Bin 143 -> 0 bytes htmlarea/plugins/CharacterMap/lang/de.js | 16 - htmlarea/plugins/CharacterMap/lang/en.js | 16 - .../CharacterMap/popups/select_character.html | 251 -- htmlarea/plugins/ContextMenu/context-menu.js | 451 --- htmlarea/plugins/ContextMenu/lang/de.js | 59 - htmlarea/plugins/ContextMenu/lang/el.js | 57 - htmlarea/plugins/ContextMenu/lang/en.js | 71 - htmlarea/plugins/ContextMenu/lang/fr.js | 66 - htmlarea/plugins/ContextMenu/lang/he.js | 66 - htmlarea/plugins/ContextMenu/lang/nl.js | 66 - htmlarea/plugins/ContextMenu/menu.css | 65 - htmlarea/plugins/DynamicCSS/dynamiccss.js | 235 -- htmlarea/plugins/DynamicCSS/lang/de.js | 15 - htmlarea/plugins/DynamicCSS/lang/en.js | 15 - htmlarea/plugins/DynamicCSS/lang/fr.js | 15 - htmlarea/plugins/FullPage/full-page.js | 172 -- htmlarea/plugins/FullPage/img/docprop.gif | Bin 302 -> 0 bytes htmlarea/plugins/FullPage/lang/de.js | 25 - htmlarea/plugins/FullPage/lang/en.js | 25 - htmlarea/plugins/FullPage/lang/fr.js | 25 - htmlarea/plugins/FullPage/lang/he.js | 25 - htmlarea/plugins/FullPage/lang/ro.js | 25 - htmlarea/plugins/FullPage/popups/docprop.html | 143 - htmlarea/plugins/FullPage/test.html | 89 - htmlarea/plugins/HtmlTidy/README | 104 - .../plugins/HtmlTidy/html-tidy-config.cfg | 29 - htmlarea/plugins/HtmlTidy/html-tidy-logic.php | 83 - htmlarea/plugins/HtmlTidy/html-tidy.js | 128 - htmlarea/plugins/HtmlTidy/img/html-tidy.gif | Bin 107 -> 0 bytes htmlarea/plugins/HtmlTidy/lang/en.js | 18 - htmlarea/plugins/ListType/lang/de.js | 23 - htmlarea/plugins/ListType/lang/en.js | 23 - htmlarea/plugins/ListType/list-type.js | 89 - .../SpellChecker/img/he-spell-check.gif | Bin 899 -> 0 bytes .../plugins/SpellChecker/img/spell-check.gif | Bin 107 -> 0 bytes htmlarea/plugins/SpellChecker/lang/cz.js | 37 - htmlarea/plugins/SpellChecker/lang/da.js | 37 - htmlarea/plugins/SpellChecker/lang/de.js | 28 - htmlarea/plugins/SpellChecker/lang/en.js | 38 - htmlarea/plugins/SpellChecker/lang/he.js | 38 - htmlarea/plugins/SpellChecker/lang/hu.js | 37 - htmlarea/plugins/SpellChecker/lang/it.js | 28 - htmlarea/plugins/SpellChecker/lang/nl.js | 39 - htmlarea/plugins/SpellChecker/lang/ro.js | 37 - .../plugins/SpellChecker/readme-tech.html | 114 - .../SpellChecker/spell-check-logic.cgi | 210 -- .../SpellChecker/spell-check-style.css | 10 - .../plugins/SpellChecker/spell-check-ui.html | 122 - .../plugins/SpellChecker/spell-check-ui.js | 397 --- .../plugins/SpellChecker/spell-checker.js | 79 - .../TableOperations/img/cell-delete.gif | Bin 101 -> 0 bytes .../TableOperations/img/cell-insert-after.gif | Bin 118 -> 0 bytes .../img/cell-insert-before.gif | Bin 118 -> 0 bytes .../TableOperations/img/cell-merge.gif | Bin 896 -> 0 bytes .../plugins/TableOperations/img/cell-prop.gif | Bin 155 -> 0 bytes .../TableOperations/img/cell-split.gif | Bin 907 -> 0 bytes .../TableOperations/img/col-delete.gif | Bin 100 -> 0 bytes .../TableOperations/img/col-insert-after.gif | Bin 111 -> 0 bytes .../TableOperations/img/col-insert-before.gif | Bin 110 -> 0 bytes .../plugins/TableOperations/img/col-split.gif | Bin 908 -> 0 bytes .../TableOperations/img/row-delete.gif | Bin 104 -> 0 bytes .../TableOperations/img/row-insert-above.gif | Bin 116 -> 0 bytes .../TableOperations/img/row-insert-under.gif | Bin 115 -> 0 bytes .../plugins/TableOperations/img/row-prop.gif | Bin 149 -> 0 bytes .../plugins/TableOperations/img/row-split.gif | Bin 895 -> 0 bytes .../TableOperations/img/table-prop.gif | Bin 145 -> 0 bytes htmlarea/plugins/TableOperations/lang/cz.js | 90 - htmlarea/plugins/TableOperations/lang/da.js | 90 - htmlarea/plugins/TableOperations/lang/de.js | 81 - htmlarea/plugins/TableOperations/lang/el.js | 81 - htmlarea/plugins/TableOperations/lang/en.js | 90 - htmlarea/plugins/TableOperations/lang/fi.js | 66 - htmlarea/plugins/TableOperations/lang/fr.js | 90 - htmlarea/plugins/TableOperations/lang/he.js | 90 - htmlarea/plugins/TableOperations/lang/hu.js | 63 - htmlarea/plugins/TableOperations/lang/it.js | 81 - htmlarea/plugins/TableOperations/lang/nl.js | 90 - htmlarea/plugins/TableOperations/lang/no.js | 91 - htmlarea/plugins/TableOperations/lang/ro.js | 90 - .../TableOperations/table-operations.js | 1113 ------- htmlarea/popupdiv.js | 369 --- htmlarea/popups/about.html | 375 --- htmlarea/popups/blank.html | 2 - htmlarea/popups/custom2.html | 35 - htmlarea/popups/editor_help.html | 16 - htmlarea/popups/fullscreen.html | 139 - htmlarea/popups/insert_image.html | 191 -- htmlarea/popups/insert_table.html | 175 -- htmlarea/popups/link.html | 155 - htmlarea/popups/old-fullscreen.html | 131 - htmlarea/popups/old_insert_image.html | 206 -- htmlarea/popups/popup.js | 114 - htmlarea/popups/select_color.html | 347 --- htmlarea/popupwin.js | 139 - htmlarea/reference.html | 523 ---- htmlarea/release-notes.html | 182 -- 197 files changed, 15758 deletions(-) delete mode 100644 htmlarea/dialog.js delete mode 100644 htmlarea/examples/2-areas.cgi delete mode 100644 htmlarea/examples/2-areas.html delete mode 100644 htmlarea/examples/character_map.html delete mode 100644 htmlarea/examples/context-menu.html delete mode 100644 htmlarea/examples/core.html delete mode 100644 htmlarea/examples/css.html delete mode 100644 htmlarea/examples/custom.css delete mode 100644 htmlarea/examples/dynamic.css delete mode 100644 htmlarea/examples/dynamic_css.html delete mode 100644 htmlarea/examples/empty.html delete mode 100644 htmlarea/examples/full-page.html delete mode 100644 htmlarea/examples/fully-loaded.html delete mode 100644 htmlarea/examples/index.html delete mode 100644 htmlarea/examples/list-type.html delete mode 100644 htmlarea/examples/remove-font-tags.html delete mode 100644 htmlarea/examples/spell-checker.html delete mode 100644 htmlarea/examples/table-operations.html delete mode 100644 htmlarea/examples/test.cgi delete mode 100644 htmlarea/htmlarea.css delete mode 100644 htmlarea/htmlarea.js delete mode 100644 htmlarea/htmlarea_loader.js delete mode 100644 htmlarea/images/ed_about.gif delete mode 100644 htmlarea/images/ed_align_center.gif delete mode 100644 htmlarea/images/ed_align_justify.gif delete mode 100644 htmlarea/images/ed_align_left.gif delete mode 100644 htmlarea/images/ed_align_right.gif delete mode 100644 htmlarea/images/ed_blank.gif delete mode 100644 htmlarea/images/ed_charmap.gif delete mode 100644 htmlarea/images/ed_color_bg.gif delete mode 100644 htmlarea/images/ed_color_fg.gif delete mode 100644 htmlarea/images/ed_copy.gif delete mode 100644 htmlarea/images/ed_custom.gif delete mode 100644 htmlarea/images/ed_cut.gif delete mode 100644 htmlarea/images/ed_delete.gif delete mode 100644 htmlarea/images/ed_format_bold.gif delete mode 100644 htmlarea/images/ed_format_italic.gif delete mode 100644 htmlarea/images/ed_format_strike.gif delete mode 100644 htmlarea/images/ed_format_sub.gif delete mode 100644 htmlarea/images/ed_format_sup.gif delete mode 100644 htmlarea/images/ed_format_underline.gif delete mode 100644 htmlarea/images/ed_help.gif delete mode 100644 htmlarea/images/ed_hr.gif delete mode 100644 htmlarea/images/ed_html.gif delete mode 100644 htmlarea/images/ed_image.gif delete mode 100644 htmlarea/images/ed_indent_less.gif delete mode 100644 htmlarea/images/ed_indent_more.gif delete mode 100644 htmlarea/images/ed_killword.gif delete mode 100644 htmlarea/images/ed_left_to_right.gif delete mode 100644 htmlarea/images/ed_link.gif delete mode 100644 htmlarea/images/ed_list_bullet.gif delete mode 100644 htmlarea/images/ed_list_num.gif delete mode 100644 htmlarea/images/ed_paste.gif delete mode 100644 htmlarea/images/ed_print.gif delete mode 100644 htmlarea/images/ed_redo.gif delete mode 100644 htmlarea/images/ed_right_to_left.gif delete mode 100644 htmlarea/images/ed_rmformat.gif delete mode 100644 htmlarea/images/ed_save.gif delete mode 100644 htmlarea/images/ed_show_border.gif delete mode 100644 htmlarea/images/ed_splitcel.gif delete mode 100644 htmlarea/images/ed_undo.gif delete mode 100644 htmlarea/images/fullscreen_maximize.gif delete mode 100644 htmlarea/images/fullscreen_minimize.gif delete mode 100644 htmlarea/images/insert_table.gif delete mode 100644 htmlarea/index.html delete mode 100644 htmlarea/lang/b5.js delete mode 100644 htmlarea/lang/ch.js delete mode 100644 htmlarea/lang/cz.js delete mode 100644 htmlarea/lang/da.js delete mode 100644 htmlarea/lang/de.js delete mode 100644 htmlarea/lang/ee.js delete mode 100644 htmlarea/lang/el.js delete mode 100644 htmlarea/lang/en.js delete mode 100644 htmlarea/lang/es.js delete mode 100644 htmlarea/lang/fi.js delete mode 100644 htmlarea/lang/fr.js delete mode 100644 htmlarea/lang/gb.js delete mode 100644 htmlarea/lang/he.js delete mode 100644 htmlarea/lang/hu.js delete mode 100644 htmlarea/lang/it.js delete mode 100644 htmlarea/lang/ja-euc.js delete mode 100644 htmlarea/lang/ja-jis.js delete mode 100644 htmlarea/lang/ja-sjis.js delete mode 100644 htmlarea/lang/ja-utf8.js delete mode 100644 htmlarea/lang/lt.js delete mode 100644 htmlarea/lang/lv.js delete mode 100644 htmlarea/lang/nb.js delete mode 100644 htmlarea/lang/nl.js delete mode 100644 htmlarea/lang/no.js delete mode 100644 htmlarea/lang/pl.js delete mode 100644 htmlarea/lang/pt_br.js delete mode 100644 htmlarea/lang/ro.js delete mode 100644 htmlarea/lang/ru.js delete mode 100644 htmlarea/lang/se.js delete mode 100644 htmlarea/lang/si.js delete mode 100644 htmlarea/lang/vn.js delete mode 100644 htmlarea/license.txt delete mode 100644 htmlarea/plugins/CSS/css.js delete mode 100644 htmlarea/plugins/CSS/lang/en.js delete mode 100644 htmlarea/plugins/CharacterMap/character-map.js delete mode 100644 htmlarea/plugins/CharacterMap/img/ed_charmap.gif delete mode 100644 htmlarea/plugins/CharacterMap/lang/de.js delete mode 100644 htmlarea/plugins/CharacterMap/lang/en.js delete mode 100644 htmlarea/plugins/CharacterMap/popups/select_character.html delete mode 100644 htmlarea/plugins/ContextMenu/context-menu.js delete mode 100644 htmlarea/plugins/ContextMenu/lang/de.js delete mode 100644 htmlarea/plugins/ContextMenu/lang/el.js delete mode 100644 htmlarea/plugins/ContextMenu/lang/en.js delete mode 100644 htmlarea/plugins/ContextMenu/lang/fr.js delete mode 100644 htmlarea/plugins/ContextMenu/lang/he.js delete mode 100644 htmlarea/plugins/ContextMenu/lang/nl.js delete mode 100644 htmlarea/plugins/ContextMenu/menu.css delete mode 100644 htmlarea/plugins/DynamicCSS/dynamiccss.js delete mode 100644 htmlarea/plugins/DynamicCSS/lang/de.js delete mode 100644 htmlarea/plugins/DynamicCSS/lang/en.js delete mode 100644 htmlarea/plugins/DynamicCSS/lang/fr.js delete mode 100644 htmlarea/plugins/FullPage/full-page.js delete mode 100644 htmlarea/plugins/FullPage/img/docprop.gif delete mode 100644 htmlarea/plugins/FullPage/lang/de.js delete mode 100644 htmlarea/plugins/FullPage/lang/en.js delete mode 100644 htmlarea/plugins/FullPage/lang/fr.js delete mode 100644 htmlarea/plugins/FullPage/lang/he.js delete mode 100644 htmlarea/plugins/FullPage/lang/ro.js delete mode 100644 htmlarea/plugins/FullPage/popups/docprop.html delete mode 100644 htmlarea/plugins/FullPage/test.html delete mode 100644 htmlarea/plugins/HtmlTidy/README delete mode 100644 htmlarea/plugins/HtmlTidy/html-tidy-config.cfg delete mode 100644 htmlarea/plugins/HtmlTidy/html-tidy-logic.php delete mode 100644 htmlarea/plugins/HtmlTidy/html-tidy.js delete mode 100644 htmlarea/plugins/HtmlTidy/img/html-tidy.gif delete mode 100644 htmlarea/plugins/HtmlTidy/lang/en.js delete mode 100644 htmlarea/plugins/ListType/lang/de.js delete mode 100644 htmlarea/plugins/ListType/lang/en.js delete mode 100644 htmlarea/plugins/ListType/list-type.js delete mode 100644 htmlarea/plugins/SpellChecker/img/he-spell-check.gif delete mode 100644 htmlarea/plugins/SpellChecker/img/spell-check.gif delete mode 100644 htmlarea/plugins/SpellChecker/lang/cz.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/da.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/de.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/en.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/he.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/hu.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/it.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/nl.js delete mode 100644 htmlarea/plugins/SpellChecker/lang/ro.js delete mode 100644 htmlarea/plugins/SpellChecker/readme-tech.html delete mode 100644 htmlarea/plugins/SpellChecker/spell-check-logic.cgi delete mode 100644 htmlarea/plugins/SpellChecker/spell-check-style.css delete mode 100644 htmlarea/plugins/SpellChecker/spell-check-ui.html delete mode 100644 htmlarea/plugins/SpellChecker/spell-check-ui.js delete mode 100644 htmlarea/plugins/SpellChecker/spell-checker.js delete mode 100644 htmlarea/plugins/TableOperations/img/cell-delete.gif delete mode 100644 htmlarea/plugins/TableOperations/img/cell-insert-after.gif delete mode 100644 htmlarea/plugins/TableOperations/img/cell-insert-before.gif delete mode 100644 htmlarea/plugins/TableOperations/img/cell-merge.gif delete mode 100644 htmlarea/plugins/TableOperations/img/cell-prop.gif delete mode 100644 htmlarea/plugins/TableOperations/img/cell-split.gif delete mode 100644 htmlarea/plugins/TableOperations/img/col-delete.gif delete mode 100644 htmlarea/plugins/TableOperations/img/col-insert-after.gif delete mode 100644 htmlarea/plugins/TableOperations/img/col-insert-before.gif delete mode 100644 htmlarea/plugins/TableOperations/img/col-split.gif delete mode 100644 htmlarea/plugins/TableOperations/img/row-delete.gif delete mode 100644 htmlarea/plugins/TableOperations/img/row-insert-above.gif delete mode 100644 htmlarea/plugins/TableOperations/img/row-insert-under.gif delete mode 100644 htmlarea/plugins/TableOperations/img/row-prop.gif delete mode 100644 htmlarea/plugins/TableOperations/img/row-split.gif delete mode 100644 htmlarea/plugins/TableOperations/img/table-prop.gif delete mode 100644 htmlarea/plugins/TableOperations/lang/cz.js delete mode 100644 htmlarea/plugins/TableOperations/lang/da.js delete mode 100644 htmlarea/plugins/TableOperations/lang/de.js delete mode 100644 htmlarea/plugins/TableOperations/lang/el.js delete mode 100644 htmlarea/plugins/TableOperations/lang/en.js delete mode 100644 htmlarea/plugins/TableOperations/lang/fi.js delete mode 100644 htmlarea/plugins/TableOperations/lang/fr.js delete mode 100644 htmlarea/plugins/TableOperations/lang/he.js delete mode 100644 htmlarea/plugins/TableOperations/lang/hu.js delete mode 100644 htmlarea/plugins/TableOperations/lang/it.js delete mode 100644 htmlarea/plugins/TableOperations/lang/nl.js delete mode 100644 htmlarea/plugins/TableOperations/lang/no.js delete mode 100644 htmlarea/plugins/TableOperations/lang/ro.js delete mode 100644 htmlarea/plugins/TableOperations/table-operations.js delete mode 100644 htmlarea/popupdiv.js delete mode 100644 htmlarea/popups/about.html delete mode 100644 htmlarea/popups/blank.html delete mode 100644 htmlarea/popups/custom2.html delete mode 100644 htmlarea/popups/editor_help.html delete mode 100644 htmlarea/popups/fullscreen.html delete mode 100644 htmlarea/popups/insert_image.html delete mode 100644 htmlarea/popups/insert_table.html delete mode 100644 htmlarea/popups/link.html delete mode 100644 htmlarea/popups/old-fullscreen.html delete mode 100644 htmlarea/popups/old_insert_image.html delete mode 100644 htmlarea/popups/popup.js delete mode 100644 htmlarea/popups/select_color.html delete mode 100644 htmlarea/popupwin.js delete mode 100644 htmlarea/reference.html delete mode 100644 htmlarea/release-notes.html diff --git a/htmlarea/dialog.js b/htmlarea/dialog.js deleted file mode 100644 index c42bfa6..0000000 --- a/htmlarea/dialog.js +++ /dev/null @@ -1,74 +0,0 @@ -// htmlArea v3.0 - Copyright (c) 2003-2005 dynarch.com -// 2002-2003 interactivetools.com, inc. -// This copyright notice MUST stay intact for use (see license.txt). -// -// Portions (c) dynarch.com, 2003-2004 -// -// A free WYSIWYG editor replacement for - -
- - - -
- - - - -
-
Mihai Bazon
- - Last modified: Wed Jan 28 11:10:40 EET 2004 - - - diff --git a/htmlarea/examples/character_map.html b/htmlarea/examples/character_map.html deleted file mode 100644 index 678a281..0000000 --- a/htmlarea/examples/character_map.html +++ /dev/null @@ -1,30 +0,0 @@ - - - Test of CharacterMap plugin - - - - - - - - - - - -

Test of DynamicCSS plugin

- - - - diff --git a/htmlarea/examples/context-menu.html b/htmlarea/examples/context-menu.html deleted file mode 100644 index e2c2a45..0000000 --- a/htmlarea/examples/context-menu.html +++ /dev/null @@ -1,95 +0,0 @@ - - - Test of ContextMenu plugin - - - - - - - - - - - -

Test of ContextMenu plugin

- - - - -
-
Mihai Bazon
- - Last modified: Wed Jan 28 11:10:29 EET 2004 - - - diff --git a/htmlarea/examples/core.html b/htmlarea/examples/core.html deleted file mode 100644 index 204c81d..0000000 --- a/htmlarea/examples/core.html +++ /dev/null @@ -1,184 +0,0 @@ - - -Example of HTMLArea 3.0 - - - - - - - - - - - - - - - - -

HTMLArea 3.0

- -

A replacement for TEXTAREA elements. © InteractiveTools.com, 2003-2004.

- -
- - - -

- - - - - -submit - - - -

- - - diff --git a/htmlarea/examples/css.html b/htmlarea/examples/css.html deleted file mode 100644 index ffbc27e..0000000 --- a/htmlarea/examples/css.html +++ /dev/null @@ -1,90 +0,0 @@ - - - Test of CSS plugin - - - - - - - - - - - -

Test of FullPage plugin

- - - -
-
Mihai Bazon
- - Last modified: Wed Jan 28 11:10:16 EET 2004 - - - diff --git a/htmlarea/examples/custom.css b/htmlarea/examples/custom.css deleted file mode 100644 index dbcb310..0000000 --- a/htmlarea/examples/custom.css +++ /dev/null @@ -1,29 +0,0 @@ -body { background-color: #234; color: #dd8; font-family: tahoma; font-size: 12px; } - -a:link, a:visited { color: #8cf; } -a:hover { color: #ff8; } - -h1 { background-color: #456; color: #ff8; padding: 2px 5px; border: 1px solid; border-color: #678 #012 #012 #678; } - -/* syntax highlighting (used by the first combo defined for the CSS plugin) */ - -pre { margin: 0px 1em; padding: 5px 1em; background-color: #000; border: 1px dotted #02d; border-left: 2px solid #04f; } -.code { color: #f5deb3; } -.string { color: #00ffff; } -.comment { color: #8fbc8f; } -.variable-name { color: #fa8072; } -.type { color: #90ee90; font-weight: bold; } -.reference { color: #ee82ee; } -.preprocessor { color: #faf; } -.keyword { color: #ffffff; font-weight: bold; } -.function-name { color: #ace; } -.html-tag { font-weight: bold; } -.html-helper-italic { font-style: italic; } -.warning { color: #ffa500; font-weight: bold; } -.html-helper-bold { font-weight: bold; } - -/* info combo */ - -.quote { font-style: italic; color: #ee9; } -.highlight { background-color: yellow; color: #000; } -.deprecated { text-decoration: line-through; color: #aaa; } diff --git a/htmlarea/examples/dynamic.css b/htmlarea/examples/dynamic.css deleted file mode 100644 index af7ac98..0000000 --- a/htmlarea/examples/dynamic.css +++ /dev/null @@ -1,45 +0,0 @@ -p { - FONT-FAMILY: Arial, Helvetica; - FONT-SIZE: 9pt; - FONT-WEIGHT: normal; - COLOR: #000000; -} - -p.p1 { - FONT-FAMILY: Arial, Helvetica; - FONT-SIZE: 11pt; - FONT-WEIGHT: normal; - COLOR: #000000; -} - -p.p2 { - FONT-FAMILY: Arial, Helvetica; - FONT-SIZE: 13pt; - FONT-WEIGHT: normal; - COLOR: #000000; -} - -div { - FONT-FAMILY: Arial, Helvetica; - FONT-SIZE: 9pt; - FONT-WEIGHT: bold; - COLOR: #000000; -} - -div.div1 { - FONT-FAMILY: Arial, Helvetica; - FONT-SIZE: 11pt; - FONT-WEIGHT: bold; - COLOR: #000000; -} - -div.div2 { - FONT-FAMILY: Arial, Helvetica; - FONT-SIZE: 13pt; - FONT-WEIGHT: bold; - COLOR: #000000; -} - -.quote { font-style: italic; color: #ee9; } -.highlight { background-color: yellow; color: #000; } -.deprecated { text-decoration: line-through; color: #aaa; } diff --git a/htmlarea/examples/dynamic_css.html b/htmlarea/examples/dynamic_css.html deleted file mode 100644 index 2e0a346..0000000 --- a/htmlarea/examples/dynamic_css.html +++ /dev/null @@ -1,44 +0,0 @@ - - - Test of CSS plugin - - - - - - - - - - - -

Test of DynamicCSS plugin

- - - - diff --git a/htmlarea/examples/empty.html b/htmlarea/examples/empty.html deleted file mode 100644 index db5af47..0000000 --- a/htmlarea/examples/empty.html +++ /dev/null @@ -1,22 +0,0 @@ - - - HTMLArea 3.0 core test - - - - - - - - diff --git a/htmlarea/examples/full-page.html b/htmlarea/examples/full-page.html deleted file mode 100644 index d7e7537..0000000 --- a/htmlarea/examples/full-page.html +++ /dev/null @@ -1,77 +0,0 @@ - - - Test of FullPage plugin - - - - - - - - - - - -

Test of FullPage plugin

- - - -
-
Mihai Bazon
- - Last modified: Wed Aug 11 13:59:07 CEST 2004 - - - diff --git a/htmlarea/examples/fully-loaded.html b/htmlarea/examples/fully-loaded.html deleted file mode 100644 index e0330dc..0000000 --- a/htmlarea/examples/fully-loaded.html +++ /dev/null @@ -1,262 +0,0 @@ - - -Example of HTMLArea 3.0 - - - - - - - - - - - - - - - - - - - - - -

HTMLArea 3.0

- -

A replacement for TEXTAREA elements. © InteractiveTools.com, 2003-2004.

- -
- - - -

- - - - - -submit - - - -

- - - diff --git a/htmlarea/examples/index.html b/htmlarea/examples/index.html deleted file mode 100644 index 15a5b64..0000000 --- a/htmlarea/examples/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - -HTMLArea examples index - - - -

HTMLArea: auto-generated examples index

- - - -
-
mihai_bazon@yahoo.com
- Last modified: Sun Feb 1 13:30:39 EET 2004 - - diff --git a/htmlarea/examples/list-type.html b/htmlarea/examples/list-type.html deleted file mode 100644 index e7f2096..0000000 --- a/htmlarea/examples/list-type.html +++ /dev/null @@ -1,66 +0,0 @@ - - - -Example of HTMLArea 3.0 -- ListType plugin - - - - - - - - - - - - - - -

HTMLArea :: the ListType plugin

- -
- - - -
- - - diff --git a/htmlarea/examples/remove-font-tags.html b/htmlarea/examples/remove-font-tags.html deleted file mode 100644 index 646eb23..0000000 --- a/htmlarea/examples/remove-font-tags.html +++ /dev/null @@ -1,41 +0,0 @@ - - - The "htmlRemoveTags" feature - - - - - - - - - - - -

Remove FONT tags

- - - - -
-
Mihai Bazon
- - Last modified: Wed Apr 28 15:09:09 EEST 2004 - - - diff --git a/htmlarea/examples/spell-checker.html b/htmlarea/examples/spell-checker.html deleted file mode 100644 index 2e95951..0000000 --- a/htmlarea/examples/spell-checker.html +++ /dev/null @@ -1,132 +0,0 @@ - - -Example of HTMLArea 3.0 - - - - - - - - - - - - - - - - - -

HTMLArea 3.0

- -

A replacement for TEXTAREA elements. © InteractiveTools.com, 2003-2004.

- -

Plugins: - SpellChecker (sponsored by American Bible Society). -

- -
- - - -

- - - - - -submit - - - -

- - - diff --git a/htmlarea/examples/table-operations.html b/htmlarea/examples/table-operations.html deleted file mode 100644 index 94b9670..0000000 --- a/htmlarea/examples/table-operations.html +++ /dev/null @@ -1,116 +0,0 @@ - - -Example of HTMLArea 3.0 - - - - - - - - - - - - - - - - - -

HTMLArea 3.0

- -

A replacement for TEXTAREA elements. © InteractiveTools.com, 2003-2004.

- -

Page that demonstrates the additional features of the -TableOperations plugin (sponsored by Zapatec Inc.).

- -
- - - -

- - - - - -submit - - - -

- - - diff --git a/htmlarea/examples/test.cgi b/htmlarea/examples/test.cgi deleted file mode 100644 index 7645962..0000000 --- a/htmlarea/examples/test.cgi +++ /dev/null @@ -1,21 +0,0 @@ -#! /usr/bin/perl -w -# -# -# - - - -use CGI; - -print "Content-type: text/html\n\n"; -$c = new CGI; -$ta = $c->param('ta'); - -print < - - -$ta - - -EOF diff --git a/htmlarea/htmlarea.css b/htmlarea/htmlarea.css deleted file mode 100644 index 0b84fc7..0000000 --- a/htmlarea/htmlarea.css +++ /dev/null @@ -1,180 +0,0 @@ -.htmlarea { background: #fff; } - -.htmlarea .toolbar { - cursor: default; - background: ButtonFace; - padding: 3px; - border: 1px solid; - border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; -} -.htmlarea .toolbar table { font-family: tahoma,verdana,sans-serif; font-size: 11px; } -.htmlarea .toolbar img { border: none; } -.htmlarea .toolbar .label { padding: 0px 3px; } - -.htmlarea .toolbar .button { - background: ButtonFace; - color: ButtonText; - border: 1px solid ButtonFace; - padding: 1px; - margin: 0px; - width: 18px; - height: 18px; -} -.htmlarea .toolbar .buttonHover { - border: 1px solid; - border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; -} -.htmlarea .toolbar .buttonActive, .htmlarea .toolbar .buttonPressed { - padding: 2px 0px 0px 2px; - border: 1px solid; - border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow; -} -.htmlarea .toolbar .buttonPressed { - background: ButtonHighlight; -} -.htmlarea .toolbar .indicator { - padding: 0px 3px; - overflow: hidden; - width: 20px; - text-align: center; - cursor: default; - border: 1px solid ButtonShadow; -} - -.htmlarea .toolbar .buttonDisabled img { - filter: gray() alpha(opacity = 25); - -moz-opacity: 0.25; -} - -.htmlarea .toolbar .separator { - position: relative; - margin: 3px; - border-left: 1px solid ButtonShadow; - border-right: 1px solid ButtonHighlight; - width: 0px; - height: 16px; - padding: 0px; -} - -.htmlarea .toolbar .space { width: 5px; } - -.htmlarea .toolbar select { font: 11px Tahoma,Verdana,sans-serif; } - -.htmlarea .toolbar select, -.htmlarea .toolbar select:hover, -.htmlarea .toolbar select:active { background: FieldFace; color: ButtonText; } - -.htmlarea .statusBar { - border: 1px solid; - border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow; - padding: 2px 4px; - background-color: ButtonFace; - color: ButtonText; - font: 11px Tahoma,Verdana,sans-serif; -} - -.htmlarea .statusBar .statusBarTree a { - padding: 2px 5px; - color: #00f; -} - -.htmlarea .statusBar .statusBarTree a:visited { color: #00f; } -.htmlarea .statusBar .statusBarTree a:hover { - background-color: Highlight; - color: HighlightText; - padding: 1px 4px; - border: 1px solid HighlightText; -} - - -/* Hidden DIV popup dialogs (PopupDiv) */ - -.dialog { - color: ButtonText; - background: ButtonFace; -} - -.dialog .content { padding: 2px; } - -.dialog, .dialog button, .dialog input, .dialog select, .dialog textarea, .dialog table { - font: 11px Tahoma,Verdana,sans-serif; -} - -.dialog table { border-collapse: collapse; } - -.dialog .title { - background: #008; - color: #ff8; - border-bottom: 1px solid #000; - padding: 1px 0px 2px 5px; - font-size: 12px; - font-weight: bold; - cursor: default; -} - -.dialog .title .button { - float: right; - border: 1px solid #66a; - padding: 0px 1px 0px 2px; - margin-right: 1px; - color: #fff; - text-align: center; -} - -.dialog .title .button-hilite { border-color: #88f; background: #44c; } - -.dialog button { - width: 5em; - padding: 0px; -} - -.dialog .buttonColor { - padding: 1px; - cursor: default; - border: 1px solid; - border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; -} - -.dialog .buttonColor-hilite { - border-color: #000; -} - -.dialog .buttonColor .chooser, .dialog .buttonColor .nocolor { - height: 0.6em; - border: 1px solid; - padding: 0px 1em; - border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow; -} - -.dialog .buttonColor .nocolor { padding: 0px; } -.dialog .buttonColor .nocolor-hilite { background-color: #fff; color: #f00; } - -.dialog .label { text-align: right; width: 6em; } -.dialog .value input { width: 100%; } -.dialog .buttons { text-align: right; padding: 2px 4px 0px 4px; } - -.dialog legend { font-weight: bold; } -.dialog fieldset table { margin: 2px 0px; } - -.popupdiv { - border: 2px solid; - border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; -} - -.popupwin { - padding: 0px; - margin: 0px; -} - -.popupwin .title { - background: #fff; - color: #000; - font-weight: bold; - font-size: 120%; - padding: 3px 10px; - margin-bottom: 10px; - border-bottom: 1px solid black; - letter-spacing: 2px; -} - -form { margin: 0px; border: none; } diff --git a/htmlarea/htmlarea.js b/htmlarea/htmlarea.js deleted file mode 100644 index e710cbc..0000000 --- a/htmlarea/htmlarea.js +++ /dev/null @@ -1,2595 +0,0 @@ -// htmlArea v3.0 - Copyright (c) 2003-2005 dynarch.com -// 2002-2003 interactivetools.com, inc. -// This copyright notice MUST stay intact for use (see license.txt). -// -// A free WYSIWYG editor replacement for - -
-
Mihai Bazon
- - -Last modified on Sat Oct 25 01:06:59 2003 - - - - diff --git a/htmlarea/plugins/HtmlTidy/README b/htmlarea/plugins/HtmlTidy/README deleted file mode 100644 index c77f450..0000000 --- a/htmlarea/plugins/HtmlTidy/README +++ /dev/null @@ -1,104 +0,0 @@ -// Plugin for htmlArea to run code through the server's HTML Tidy -// By Adam Wright, for The University of Western Australia -// -// Email: zeno@ucc.gu.uwa.edu.au -// Homepage: http://blog.hipikat.org/ -// -// Distributed under the same terms as HTMLArea itself. -// This notice MUST stay intact for use (see license.txt). -// -// Version: 0.5 -// Released to the outside world: 04/03/04 - - -HtmlTidy is a plugin for the popular cross-browser TTY WYSIWYG editor, -htmlArea (http://www.htmlarea.com/). HtmlTidy -basically queries HTML Tidy (http://tidy.sourceforge.net/) on the -server side, getting it to make-html-nice, instead of relying on masses -of javascript, which the client would have to download. - -Hi, this is a quick explanation of how to install HtmlTidy. Much better -documentation is probably required, and you're welcome to write it :) - - -* The HtmlTidy directory you should have found this file in should - include the following: - - - README - This file, providing help installing the plugin. - - - html-tidy-config.cfg - This file contains the configuration options HTML Tidy uses to - clean html, and can be modified to suit your organizations - requirements. - - - html-tidy-logic.php - This is the php script, which is queried with dirty html and is - responsible for invoking HTML Tidy, getting nice new html and - returning it to the client. - - - html-tidy.js - The main htmlArea plugin, providing functionality to tidy html - through the htmlArea interface. - - - htmlarea.js.onmode_event.diff - At the time of publishing, an extra event handler was required - inside the main htmlarea.js file. htmlarea.js may be patched - against this file to make the changes reuquired, but be aware - that the event handler may either now be in the core or - htmlarea.js may have changed enough to invalidate the patch. - - UPDATE: now it exists in the official htmlarea.js; applying - this patch is thus no longer necessary. - - - img/html-tidy.gif - The HtmlTidy icon, for the htmlArea toolbar. Created by Dan - Petty for The University of Western Australia. - - - lang/en.js - English language file. Add your own language files here and - please contribute back into the htmlArea community! - - The HtmlArea directory should be extracted to your htmlarea/plugins/ - directory. - - -* Make sure the onMode event handler mentioned above, regarding - htmlarea.js.onmode_event.diff, exists in your htmlarea.js - - -* html-tidy-logic.php should be executable, and your web server should - be configured to execute php scripts in the directory - html-tidy-logic.php exists in. - - -* HTML Tidy needs to be installed on your server, and 'tidy' should be - an alias to it, lying in the PATH known to the user executing such - web scripts. - - -* In your htmlArea configuration, do something like this: - - HTMLArea.loadPlugin("HtmlTidy"); - - editor = new HTMLArea("doc"); - editor.registerPlugin("HtmlTidy"); - - -* Then, in your htmlArea toolbar configuration, use: - - - "HT-html-tidy" - This will create the 'tidy broom' icon on the toolbar, which - will attempt to tidy html source when clicked, and; - - - "HT-auto-tidy" - This will create an "Auto Tidy" / "Don't Tidy" dropdown, to - select whether the source should be tidied automatically when - entering source view. On by default, if you'd like it otherwise - you can do so programatically after generating the toolbar :) - (Or just hack it to be otherwise...) - - -Thank you. - -Any bugs you find can be emailed to zeno@ucc.gu.uwa.edu.au diff --git a/htmlarea/plugins/HtmlTidy/html-tidy-config.cfg b/htmlarea/plugins/HtmlTidy/html-tidy-config.cfg deleted file mode 100644 index 4315dd7..0000000 --- a/htmlarea/plugins/HtmlTidy/html-tidy-config.cfg +++ /dev/null @@ -1,29 +0,0 @@ -// Default configuration file for the htmlArea, HtmlTidy plugin -// By Adam Wright, for The University of Western Australia -// -// Evertything you always wanted to know about HTML Tidy * -// can be found at http://tidy.sourceforge.net/, and a -// quick reference to the configuration options exists at -// http://tidy.sourceforge.net/docs/quickref.html -// -// * But were afraid to ask -// -// Distributed under the same terms as HTMLArea itself. -// This notice MUST stay intact for use (see license.txt). - -word-2000: yes -clean: no -drop-font-tags: yes -doctype: auto -drop-empty-paras: yes -drop-proprietary-attributes: yes -enclose-block-text: yes -enclose-text: yes -escape-cdata: yes -logical-emphasis: yes -indent: auto -indent-spaces: 2 -break-before-br: yes -output-xhtml: yes - -force-output: yes diff --git a/htmlarea/plugins/HtmlTidy/html-tidy-logic.php b/htmlarea/plugins/HtmlTidy/html-tidy-logic.php deleted file mode 100644 index a8fabeb..0000000 --- a/htmlarea/plugins/HtmlTidy/html-tidy-logic.php +++ /dev/null @@ -1,83 +0,0 @@ - array("pipe", "r"), - 1 => array("pipe", "w"), - 2 => array("file", "/dev/null", "a") - ); - $process = proc_open("tidy -config html-tidy-config.cfg", $descriptorspec, $pipes); - - // Make sure the program started and we got the hooks... - // Either way, get some source code into $source - if (is_resource($process)) { - - // Feed untidy source into the stdin - fwrite($pipes[0], $source); - fclose($pipes[0]); - - // Read clean source out to the browser - while (!feof($pipes[1])) { - //echo fgets($pipes[1], 1024); - $newsrc .= fgets($pipes[1], 1024); - } - fclose($pipes[1]); - - // Clean up after ourselves - proc_close($process); - - } else { - // Better give them back what they came with, so they don't lose it all... - $newsrc = "\n" .$source. "\n"; - } - - // Split our source into an array by lines - $srcLines = explode("\n",$newsrc); - - // Get only the lines between the body tags - $startLn = 0; - while ( strpos( $srcLines[$startLn++], ' - - - - - - - - - - diff --git a/htmlarea/plugins/HtmlTidy/html-tidy.js b/htmlarea/plugins/HtmlTidy/html-tidy.js deleted file mode 100644 index d403bf3..0000000 --- a/htmlarea/plugins/HtmlTidy/html-tidy.js +++ /dev/null @@ -1,128 +0,0 @@ -// Plugin for htmlArea to run code through the server's HTML Tidy -// By Adam Wright, for The University of Western Australia -// -// Distributed under the same terms as HTMLArea itself. -// This notice MUST stay intact for use (see license.txt). - -function HtmlTidy(editor) { - this.editor = editor; - - var cfg = editor.config; - var tt = HtmlTidy.I18N; - var bl = HtmlTidy.btnList; - var self = this; - - this.onMode = this.__onMode; - - // register the toolbar buttons provided by this plugin - var toolbar = []; - for (var i = 0; i < bl.length; ++i) { - var btn = bl[i]; - if (btn == "html-tidy") { - var id = "HT-html-tidy"; - cfg.registerButton(id, tt[id], editor.imgURL(btn[0] + ".gif", "HtmlTidy"), true, - function(editor, id) { - // dispatch button press event - self.buttonPress(editor, id); - }, btn[1]); - toolbar.push(id); - } else if (btn == "html-auto-tidy") { - var ht_class = { - id : "HT-auto-tidy", - options : { "Auto-Tidy" : "auto", "Don't Tidy" : "noauto" }, - action : function (editor) { self.__onSelect(editor, this); }, - refresh : function (editor) { }, - context : "body" - }; - cfg.registerDropdown(ht_class); - } - } - - for (var i in toolbar) { - cfg.toolbar[0].push(toolbar[i]); - } -}; - -HtmlTidy._pluginInfo = { - name : "HtmlTidy", - version : "1.0", - developer : "Adam Wright", - developer_url : "http://blog.hipikat.org/", - sponsor : "The University of Western Australia", - sponsor_url : "http://www.uwa.edu.au/", - license : "htmlArea" -}; - -HtmlTidy.prototype.__onSelect = function(editor, obj) { - // Get the toolbar element object - var elem = editor._toolbarObjects[obj.id].element; - - // Set our onMode event appropriately - if (elem.value == "auto") - this.onMode = this.__onMode; - else - this.onMode = null; -}; - -HtmlTidy.prototype.__onMode = function(mode) { - if ( mode == "textmode" ) { - this.buttonPress(this.editor, "HT-html-tidy"); - } -}; - -HtmlTidy.btnList = [ - null, // separator - ["html-tidy"], - ["html-auto-tidy"] -]; - -HtmlTidy.prototype.onGenerateOnce = function() { - var editor = this.editor; - - var ifr = document.createElement("iframe"); - ifr.name = "htiframe_name"; - var s = ifr.style; - s.position = "absolute"; - s.width = s.height = s.border = s.left = s.top = s.padding = s.margin = "0px"; - document.body.appendChild(ifr); - - var frm = '
'; - - var newdiv = document.createElement('div'); - newdiv.style.display = "none"; - newdiv.innerHTML = frm; - document.body.appendChild(newdiv); -}; - -HtmlTidy.prototype.buttonPress = function(editor, id) { - var i18n = HtmlTidy.I18N; - - switch (id) { - case "HT-html-tidy": - - var oldhtml = editor.getHTML(); - - // Ask the server for some nice new html, based on the old... - var myform = document.getElementById('htiform_id'); - var txtarea = document.getElementById('htisource_id'); - txtarea.value = editor.getHTML(); - - // Apply the 'meanwhile' text, e.g. "Tidying HTML, please wait..." - editor.setHTML(i18n['tidying']); - - // The returning tidying processing script needs to find the editor - window._editorRef = editor; - - // ...And send our old source off for processing! - myform.submit(); - break; - } -}; - -HtmlTidy.prototype.processTidied = function(newSrc) { - editor = this.editor; - editor.setHTML(newSrc); -}; diff --git a/htmlarea/plugins/HtmlTidy/img/html-tidy.gif b/htmlarea/plugins/HtmlTidy/img/html-tidy.gif deleted file mode 100644 index ed1cbb1bd40077b5ba53f234f67387732120550b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 107 zcmZ?wbhEHb6k-r!IK;rPaN$Cwq^}H;Ees3{|B-;=PZmZ71{MY#Mg~R(0R{mE24(|~ zU1t<^SFtY@zUsF|{B86$j)SUN5|VDr6WHQew!A-iMlUSu$L+7X~ E0E8$hG5`Po diff --git a/htmlarea/plugins/HtmlTidy/lang/en.js b/htmlarea/plugins/HtmlTidy/lang/en.js deleted file mode 100644 index 26c19c8..0000000 --- a/htmlarea/plugins/HtmlTidy/lang/en.js +++ /dev/null @@ -1,18 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Adam Wright, http://blog.hipikat.org/ - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -HtmlTidy.I18N = { - "tidying" : "\n Tidying up the HTML source, please wait...", - "HT-html-tidy" : "HTML Tidy" -}; diff --git a/htmlarea/plugins/ListType/lang/de.js b/htmlarea/plugins/ListType/lang/de.js deleted file mode 100644 index 0265f1a..0000000 --- a/htmlarea/plugins/ListType/lang/de.js +++ /dev/null @@ -1,23 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Holger Hees, http://www.systemconcept.de - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -ListType.I18N = { - "Decimal" : "1-Zahlen", - "Lower roman" : "i-Roemisch", - "Upper roman" : "I-Roemisch", - "Lower latin" : "a-Zeichen", - "Upper latin" : "A-Zeichen", - "Lower greek" : "Griechisch", - "ListStyleTooltip" : "Whlen Sie einen Typ fr die Nummerierung aus" -}; diff --git a/htmlarea/plugins/ListType/lang/en.js b/htmlarea/plugins/ListType/lang/en.js deleted file mode 100644 index 8dd2790..0000000 --- a/htmlarea/plugins/ListType/lang/en.js +++ /dev/null @@ -1,23 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Mihai Bazon, http://dynarch.com/mishoo - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -ListType.I18N = { - "Decimal" : "Decimal numbers", - "Lower roman" : "Lower roman numbers", - "Upper roman" : "Upper roman numbers", - "Lower latin" : "Lower latin letters", - "Upper latin" : "Upper latin letters", - "Lower greek" : "Lower greek letters", - "ListStyleTooltip" : "Choose list style type (for ordered lists)" -}; diff --git a/htmlarea/plugins/ListType/list-type.js b/htmlarea/plugins/ListType/list-type.js deleted file mode 100644 index 7df6d85..0000000 --- a/htmlarea/plugins/ListType/list-type.js +++ /dev/null @@ -1,89 +0,0 @@ -// ListType Plugin for HTMLArea-3.0 -// Sponsored by MEdTech Unit - Queen's University -// Implementation by Mihai Bazon, http://dynarch.com/mishoo/ -// -// (c) dynarch.com 2003-2005. -// Distributed under the same terms as HTMLArea itself. -// This notice MUST stay intact for use (see license.txt). -// -// $Id$ - -function ListType(editor) { - this.editor = editor; - var cfg = editor.config; - var toolbar = cfg.toolbar; - var self = this; - var i18n = ListType.I18N; - var options = {}; - options[i18n["Decimal"]] = "decimal"; - options[i18n["Lower roman"]] = "lower-roman"; - options[i18n["Upper roman"]] = "upper-roman"; - options[i18n["Lower latin"]] = "lower-alpha"; - options[i18n["Upper latin"]] = "upper-alpha"; - if (!HTMLArea.is_ie) - // IE doesn't support this property; even worse, it complains - // with a gross error message when we tried to select it, - // therefore let's hide it from the damn "browser". - options[i18n["Lower greek"]] = "lower-greek"; - var obj = { - id : "ListType", - tooltip : i18n["ListStyleTooltip"], - options : options, - action : function(editor) { self.onSelect(editor, this); }, - refresh : function(editor) { self.updateValue(editor, this); }, - context : "ol" - }; - cfg.registerDropdown(obj); - var a, i, j, found = false; - for (i = 0; !found && i < toolbar.length; ++i) { - a = toolbar[i]; - for (j = 0; j < a.length; ++j) { - if (a[j] == "unorderedlist") { - found = true; - break; - } - } - } - if (found) - a.splice(j, 0, "space", "ListType", "space"); -}; - -ListType._pluginInfo = { - name : "ListType", - version : "1.0", - developer : "Mihai Bazon", - developer_url : "http://dynarch.com/mishoo/", - c_owner : "dynarch.com", - sponsor : "MEdTech Unit - Queen's University", - sponsor_url : "http://www.queensu.ca/", - license : "htmlArea" -}; - -ListType.prototype.onSelect = function(editor, combo) { - var tbobj = editor._toolbarObjects[combo.id].element; - var parent = editor.getParentElement(); - while (!/^ol$/i.test(parent.tagName)) { - parent = parent.parentNode; - } - parent.style.listStyleType = tbobj.value; -}; - -ListType.prototype.updateValue = function(editor, combo) { - var tbobj = editor._toolbarObjects[combo.id].element; - var parent = editor.getParentElement(); - while (parent && !/^ol$/i.test(parent.tagName)) { - parent = parent.parentNode; - } - if (!parent) { - tbobj.selectedIndex = 0; - return; - } - var type = parent.style.listStyleType; - if (!type) { - tbobj.selectedIndex = 0; - } else { - for (var i = tbobj.firstChild; i; i = i.nextSibling) { - i.selected = (type.indexOf(i.value) != -1); - } - } -}; diff --git a/htmlarea/plugins/SpellChecker/img/he-spell-check.gif b/htmlarea/plugins/SpellChecker/img/he-spell-check.gif deleted file mode 100644 index a9ddac986789ce5458f1019f6a609a2a27075a38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 899 zcmZ?wbhEHb6k-r!_|5su=3``#xG>@2;Z`1Ijx!k(A35~$Nn0&B5xDq3mzb)bNam*} zM|yNLx0P5Xq&hb-71h~f20V9UWUc)tqO~R6Z?3DLobRd+D-O-`U+fhsA;4e_0Ci3; ArT_o{ diff --git a/htmlarea/plugins/SpellChecker/img/spell-check.gif b/htmlarea/plugins/SpellChecker/img/spell-check.gif deleted file mode 100644 index 29bd11ae9865647f02b6b05e2088b511650d1924..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 107 zcmZ?wbhEHb6k-r!SjYeZ|NsAIU}*mT|G(l-7Dg@xW(FOQC`g`x$!1Rf%G13JGCj&{ zRSOnA(3AFc+}b<)MDK*iu - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Prosím potvrďte otevření tohoto odkazu", - "Cancel" : "Zrušit", - "Dictionary" : "Slovník", - "Finished list of mispelled words" : "Dokončen seznam chybných slov", - "I will open it in a new page." : "Bude otevřen jej v nové stránce.", - "Ignore all" : "Ignorovat vše", - "Ignore" : "Ignorovat", - "NO_ERRORS" : "Podle zvoleného slovníku nebyla nalezena žádná chybná slova.", - "NO_ERRORS_CLOSING" : "Kontrola správnosti slov dokončena, nebyla nalezena žádná chybná slova. Ukončování ...", - "OK" : "OK", - "Original word" : "Původní slovo", - "Please wait. Calling spell checker." : "Prosím čekejte. Komunikuace s kontrolou správnosti slov.", - "Please wait: changing dictionary to" : "Prosím čekejte: změna adresáře na", - "QUIT_CONFIRMATION" : "Změny budou zrušeny a kontrola správnosti slov ukončena. Prosím potvrďte.", - "Re-check" : "Překontrolovat", - "Replace all" : "Zaměnit všechno", - "Replace with" : "Zaměnit za", - "Replace" : "Zaměnit", - "SC-spell-check" : "Kontrola správnosti slov", - "Suggestions" : "Doporučení", - "pliz weit ;-)" : "strpení prosím ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/da.js b/htmlarea/plugins/SpellChecker/lang/da.js deleted file mode 100644 index f3ab054..0000000 --- a/htmlarea/plugins/SpellChecker/lang/da.js +++ /dev/null @@ -1,37 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Steen Sønderup, - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Vil du følge dette link?", - "Cancel" : "Anuler", - "Dictionary" : "Ordbog", - "Finished list of mispelled words" : "Listen med stavefejl er gennemgået", - "I will open it in a new page." : "Jeg vil åbne det i en ny side.", - "Ignore all" : "Ignorer alle", - "Ignore" : "Ignorer", - "NO_ERRORS" : "Der blev ikke fundet nogle stavefejl med den valgte ordbog.", - "NO_ERRORS_CLOSING" : "Stavekontrollen er gennemført, der blev ikke fundet nogle stavefejl. Lukker...", - "OK" : "OK", - "Original word" : "Oprindeligt ord", - "Please wait. Calling spell checker." : "Vent venligst. Henter stavekontrol.", - "Please wait: changing dictionary to" : "Vent venligst: skifter ordbog til", - "QUIT_CONFIRMATION" : "Alle dine ændringer vil gå tabt, vil du fortsætte?", - "Re-check" : "Tjek igen", - "Replace all" : "Erstat alle", - "Replace with" : "Erstat med", - "Replace" : "Erstat", - "SC-spell-check" : "Stavekontrol", - "Suggestions" : "Forslag", - "pliz weit ;-)" : "Vent venligst" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/de.js b/htmlarea/plugins/SpellChecker/lang/de.js deleted file mode 100644 index efc5f57..0000000 --- a/htmlarea/plugins/SpellChecker/lang/de.js +++ /dev/null @@ -1,28 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Broxx, - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Wollen Sie diesen Link oeffnen", - "Cancel" : "Abbrechen", - "Dictionary" : "Woerterbuch", - "Finished list of mispelled words" : "Liste der nicht bekannten Woerter", - "I will open it in a new page." : "Wird auf neuer Seite geoeffnet", - "Ignore all" : "Alle ignorieren", - "Ignore" : "Ignorieren", - "NO_ERRORS" : "Keine falschen Woerter mit gewaehlten Woerterbuch gefunden", - "NO_ERRORS_CLOSING" : "Rechtsschreibpruefung wurde ohne Fehler fertiggestellt. Wird nun geschlossen...", - "OK" : "OK", - "Original word" : "Original Wort", - "Please wait. Calling spell checker." : "Bitte warten. Woerterbuch wird durchsucht.", - "Please wait: changing dictionary to" : "Bitte warten: Woerterbuch wechseln zu", - "QUIT_CONFIRMATION" : "Aenderungen werden nicht uebernommen. Bitte bestaettigen.", - "Re-check" : "Neuueberpruefung", - "Replace all" : "Alle ersetzen", - "Replace with" : "Ersetzen mit", - "Replace" : "Ersetzen", - "SC-spell-check" : "Ueberpruefung", - "Suggestions" : "Vorschlag", - "pliz weit ;-)" : "bittsche wartn ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/en.js b/htmlarea/plugins/SpellChecker/lang/en.js deleted file mode 100644 index ac7a84a..0000000 --- a/htmlarea/plugins/SpellChecker/lang/en.js +++ /dev/null @@ -1,38 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Mihai Bazon, http://dynarch.com/mishoo - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Please confirm that you want to open this link", - "Cancel" : "Cancel", - "Dictionary" : "Dictionary", - "Finished list of mispelled words" : "Finished list of mispelled words", - "I will open it in a new page." : "I will open it in a new page.", - "Ignore all" : "Ignore all", - "Ignore" : "Ignore", - "NO_ERRORS" : "No mispelled words found with the selected dictionary.", - "NO_ERRORS_CLOSING" : "Spell check complete, didn't find any mispelled words. Closing now...", - "OK" : "OK", - "Original word" : "Original word", - "Please wait. Calling spell checker." : "Please wait. Calling spell checker.", - "Please wait: changing dictionary to" : "Please wait: changing dictionary to", - "QUIT_CONFIRMATION" : "This will drop changes and quit spell checker. Please confirm.", - "Re-check" : "Re-check", - "Replace all" : "Replace all", - "Replace with" : "Replace with", - "Replace" : "Replace", - "Revert" : "Revert", - "SC-spell-check" : "Spell-check", - "Suggestions" : "Suggestions", - "pliz weit ;-)" : "pliz weit ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/he.js b/htmlarea/plugins/SpellChecker/lang/he.js deleted file mode 100644 index f5ef286..0000000 --- a/htmlarea/plugins/SpellChecker/lang/he.js +++ /dev/null @@ -1,38 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Mihai Bazon, http://dynarch.com/mishoo - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "אנא אשר שברצונך לפתוח קישור זה", - "Cancel" : "ביטול", - "Dictionary" : "מילון", - "Finished list of mispelled words" : "הסתיימה רשימת המילים המאויתות באופן שגוי", - "I will open it in a new page." : "אני אפתח את זה בחלון חדש.", - "Ignore all" : "התעלם מהכל", - "Ignore" : "התעלם", - "NO_ERRORS" : "לא נמצאו מילים מאויתות באופן שגוי עם המילון הנבחר.", - "NO_ERRORS_CLOSING" : "בדיקת האיות נסתיימה, לא נמצאו מילים מאויתות באופן שגוי. נסגר כעת...", - "OK" : "אישור", - "Original word" : "המילה המקורית", - "Please wait. Calling spell checker." : "אנא המתן. קורא לבודק איות.", - "Please wait: changing dictionary to" : "אנא המתן: מחליף מילון ל-", - "QUIT_CONFIRMATION" : "זה יבטל את השינויים ויצא מבודק האיות. אנא אשר.", - "Re-check" : "בדוק מחדש", - "Replace all" : "החלף הכל", - "Replace with" : "החלף ב-", - "Replace" : "החלף", - "Revert" : "החזר שינויים", - "SC-spell-check" : "בדיקת איות", - "Suggestions" : "הצעות", - "pliz weit ;-)" : "ענא המטן ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/hu.js b/htmlarea/plugins/SpellChecker/lang/hu.js deleted file mode 100644 index 0d414b3..0000000 --- a/htmlarea/plugins/SpellChecker/lang/hu.js +++ /dev/null @@ -1,37 +0,0 @@ -// I18N constants - -// LANG: "hu", ENCODING: UTF-8 -// Author: Miklós Somogyi, - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Megerősítés", - "Cancel" : "Mégsem", - "Dictionary" : "Szótár", - "Finished list of mispelled words" : "A tévesztett szavak listájának vége", - "I will open it in a new page." : "Megnyitás új lapon", - "Ignore all" : "Minden elvetése", - "Ignore" : "Elvetés", - "NO_ERRORS" : "A választott szótár szerint nincs tévesztett szó.", - "NO_ERRORS_CLOSING" : "A helyesírásellenőrzés kész, tévesztett szó nem fordult elő. Bezárás...", - "OK" : "Rendben", - "Original word" : "Eredeti szó", - "Please wait. Calling spell checker." : "Kis türelmet, a helyesírásellenőrző hívása folyamatban.", - "Please wait: changing dictionary to" : "Kis türelmet, szótár cseréje", - "QUIT_CONFIRMATION" : "Kilépés a változások eldobásával. Jóváhagyja?", - "Re-check" : "Újraellenőrzés", - "Replace all" : "Mind cseréje", - "Replace with" : "Csere a következőre:", - "Replace" : "Csere", - "SC-spell-check" : "Helyesírásellenőrzés", - "Suggestions" : "Tippek", - "pliz weit ;-)" : "Kis türelmet ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/it.js b/htmlarea/plugins/SpellChecker/lang/it.js deleted file mode 100644 index e6ddd09..0000000 --- a/htmlarea/plugins/SpellChecker/lang/it.js +++ /dev/null @@ -1,28 +0,0 @@ -// I18N constants - -// LANG: "it", ENCODING: UTF-8 | ISO-8859-1 -// Author: Fabio Rotondo, - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Devi confermare l'apertura di questo link", - "Cancel" : "Annulla", - "Dictionary" : "Dizionario", - "Finished list of mispelled words" : "La lista delle parole scritte male è terminata", - "I will open it in a new page." : "Lo aprirò in una nuova pagina.", - "Ignore all" : "Ignora sempre", - "Ignore" : "Ignora", - "NO_ERRORS" : "Non sono state trovate parole scritte male con il dizionario selezionato.", - "NO_ERRORS_CLOSING" : "Controllo completato, non sono state trovate parole scritte male. Sto chiudendo...", - "OK" : "OK", - "Original word" : "Parola originale", - "Please wait. Calling spell checker." : "Attendere. Sto invocando lo Spell Checker.", - "Please wait: changing dictionary to" : "Attendere. Cambio il dizionario in", - "QUIT_CONFIRMATION" : "Questo annullerà le modifiche e chiuderà lo Spell Checker. Conferma.", - "Re-check" : "Ricontrolla", - "Replace all" : "Sostituisci sempre", - "Replace with" : "Stostituisci con", - "Replace" : "Sostituisci", - "SC-spell-check" : "Spell-check", - "Suggestions" : "Suggerimenti", - "pliz weit ;-)" : "Attendere Prego ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/nl.js b/htmlarea/plugins/SpellChecker/lang/nl.js deleted file mode 100644 index 254a6b5..0000000 --- a/htmlarea/plugins/SpellChecker/lang/nl.js +++ /dev/null @@ -1,39 +0,0 @@ -// I18N constants - -// LANG: "nl", ENCODING: UTF-8 | ISO-8859-1 -// Author: A.H van den Broek http://www.kontaktfm.nl -// Email : tonbroek@kontaktfm.nl - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Weet u zeker dat u deze link wilt openen?", - "Cancel" : "Annuleer", - "Dictionary" : "Woordenboek", - "Finished list of mispelled words" : "klaar met de lijst van fouten woorden", - "I will open it in a new page." : "Ik zal het in een nieuwe pagina openen.", - "Ignore all" : "alles overslaan", - "Ignore" : "Overslaan", - "NO_ERRORS" : "Geen fouten gevonden met dit woordenboek.", - "NO_ERRORS_CLOSING" : "Spell checking is klaar, geen fouten gevonden. spell checking word gesloten...", - "OK" : "OK", - "Original word" : "Originele woord", - "Please wait. Calling spell checker." : "Even wachten. spell checker wordt geladen.", - "Please wait: changing dictionary to" : "even wachten: woordenboek wordt veranderd naar", - "QUIT_CONFIRMATION" : "Dit zal alle veranderingen annuleren en de spell checker sluiten. Weet u het zeker?", - "Re-check" : "Opnieuw", - "Replace all" : "Alles vervangen", - "Replace with" : "Vervangen met", - "Replace" : "Vervangen", - "Revert" : "Omkeren", - "SC-spell-check" : "Spell-check", - "Suggestions" : "Suggestie", - "pliz weit ;-)" : "Even wachten ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/lang/ro.js b/htmlarea/plugins/SpellChecker/lang/ro.js deleted file mode 100644 index 41aa63f..0000000 --- a/htmlarea/plugins/SpellChecker/lang/ro.js +++ /dev/null @@ -1,37 +0,0 @@ -// I18N constants - -// LANG: "ro", ENCODING: UTF-8 -// Author: Mihai Bazon, http://dynarch.com/mishoo - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -SpellChecker.I18N = { - "CONFIRM_LINK_CLICK" : "Vă rog confirmaţi că vreţi să deschideţi acest link", - "Cancel" : "Anulează", - "Dictionary" : "Dicţionar", - "Finished list of mispelled words" : "Am terminat lista de cuvinte greşite", - "I will open it in a new page." : "O voi deschide într-o altă fereastră.", - "Ignore all" : "Ignoră toate", - "Ignore" : "Ignoră", - "NO_ERRORS" : "Nu am găsit nici un cuvânt greşit cu acest dicţionar.", - "NO_ERRORS_CLOSING" : "Am terminat, nu am detectat nici o greşeală. Acum închid fereastra...", - "OK" : "OK", - "Original word" : "Cuvântul original", - "Please wait. Calling spell checker." : "Vă rog aşteptaţi. Apelez spell-checker-ul.", - "Please wait: changing dictionary to" : "Vă rog aşteptaţi. Schimb dicţionarul cu", - "QUIT_CONFIRMATION" : "Doriţi să renunţaţi la modificări şi să închid spell-checker-ul?", - "Re-check" : "Scanează", - "Replace all" : "Înlocuieşte toate", - "Replace with" : "Înlocuieşte cu", - "Replace" : "Înlocuieşte", - "SC-spell-check" : "Detectează greşeli", - "Suggestions" : "Sugestii", - "pliz weit ;-)" : "va rog ashteptatzi ;-)" -}; diff --git a/htmlarea/plugins/SpellChecker/readme-tech.html b/htmlarea/plugins/SpellChecker/readme-tech.html deleted file mode 100644 index c1703ec..0000000 --- a/htmlarea/plugins/SpellChecker/readme-tech.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - HTMLArea Spell Checker - - - -

HTMLArea Spell Checker

- -

The HTMLArea Spell Checker subsystem consists of the following - files:

- -
    - -
  • spell-checker.js — the spell checker plugin interface for - HTMLArea
  • - -
  • spell-checker-ui.html — the HTML code for the user - interface
  • - -
  • spell-checker-ui.js — functionality of the user - interface
  • - -
  • spell-checker-logic.cgi — Perl CGI script that checks a text - given through POST for spelling errors
  • - -
  • spell-checker-style.css — style for mispelled words
  • - -
  • lang/en.js — main language file (English).
  • - -
- -

Process overview

- -

- When an end-user clicks the "spell-check" button in the HTMLArea - editor, a new window is opened with the URL of "spell-check-ui.html". - This window initializes itself with the text found in the editor (uses - window.opener.SpellChecker.editor global variable) and it - submits the text to the server-side script "spell-check-logic.cgi". - The target of the FORM is an inline frame which is used both to - display the text and correcting. -

- -

- Further, spell-check-logic.cgi calls Aspell for each portion of plain - text found in the given HTML. It rebuilds an HTML file that contains - clear marks of which words are incorrect, along with suggestions for - each of them. This file is then loaded in the inline frame. Upon - loading, a JavaScript function from "spell-check-ui.js" is called. - This function will retrieve all mispelled words from the HTML of the - iframe and will setup the user interface so that it allows correction. -

- -

The server-side script (spell-check-logic.cgi)

- -

- Unicode safety — the program is - Unicode safe. HTML entities are expanded into their corresponding - Unicode characters. These characters will be matched as part of the - word passed to Aspell. All texts passed to Aspell are in Unicode - (when appropriate). However, Aspell seems to not support Unicode - yet (thread concerning Aspell and Unicode). - This mean that words containing Unicode - characters that are not in 0..255 are likely to be reported as "mispelled" by Aspell. -

- -

- Update: though I've never seen it mentioned - anywhere, it looks that Aspell does, in fact, speak - Unicode. Or else, maybe Text::Aspell does - transparent conversion; anyway, this new version of our - SpellChecker plugin is, as tests show so far, fully - Unicode-safe... well, probably the only freeware - Web-based spell-checker which happens to have Unicode support. -

- -

- The Perl Unicode manual (man perluniintro) states: -

- -
- - Starting from Perl 5.6.0, Perl has had the capacity to handle Unicode - natively. Perl 5.8.0, however, is the first recommended release for - serious Unicode work. The maintenance release 5.6.1 fixed many of the - problems of the initial Unicode implementation, but for example regular - expressions still do not work with Unicode in 5.6.1. - -
- -

In other words, do not assume that this script is - Unicode-safe on Perl interpreters older than 5.8.0.

- -

The following Perl modules are required:

- - - -

Of these, only Text::Aspell might need to be installed manually. The - others are likely to be available by default in most Perl distributions.

- -
-
Mihai Bazon
- - Last modified: Fri Jan 30 19:14:11 EET 2004 - - - diff --git a/htmlarea/plugins/SpellChecker/spell-check-logic.cgi b/htmlarea/plugins/SpellChecker/spell-check-logic.cgi deleted file mode 100644 index 6c68f24..0000000 --- a/htmlarea/plugins/SpellChecker/spell-check-logic.cgi +++ /dev/null @@ -1,210 +0,0 @@ -#! /usr/bin/perl -w - -# Spell Checker Plugin for HTMLArea-3.0 -# Sponsored by www.americanbible.org -# Implementation by Mihai Bazon, http://dynarch.com/mishoo/ -# -# (c) dynarch.com 2003. -# Distributed under the same terms as HTMLArea itself. -# This notice MUST stay intact for use (see license.txt). -# -# $Id$ - -use strict; -use utf8; -use Encode; -use Text::Aspell; -use XML::DOM; -use CGI; - -my $TIMER_start = undef; -eval { - use Time::HiRes qw( gettimeofday tv_interval ); - $TIMER_start = [gettimeofday()]; -}; -# use POSIX qw( locale_h ); - -binmode STDIN, ':utf8'; -binmode STDOUT, ':utf8'; - -my $debug = 0; - -my $speller = new Text::Aspell; -my $cgi = new CGI; - -my $total_words = 0; -my $total_mispelled = 0; -my $total_suggestions = 0; -my $total_words_suggested = 0; - -# FIXME: report a nice error... -die "Can't create speller!" unless $speller; - -my $dict = $cgi->param('dictionary') || $cgi->cookie('dictionary') || 'en'; - -# add configurable option for this -$speller->set_option('lang', $dict); -$speller->set_option('encoding', 'UTF-8'); -#setlocale(LC_CTYPE, $dict); - -# ultra, fast, normal, bad-spellers -# bad-spellers seems to cause segmentation fault -$speller->set_option('sug-mode', 'normal'); - -my %suggested_words = (); -keys %suggested_words = 128; - -my $file_content = decode('UTF-8', $cgi->param('content')); -$file_content = parse_with_dom($file_content); - -my $ck_dictionary = $cgi->cookie(-name => 'dictionary', - -value => $dict, - -expires => '+30d'); - -print $cgi->header(-type => 'text/html; charset: utf-8', - -cookie => $ck_dictionary); - -my $js_suggested_words = make_js_hash(\%suggested_words); -my $js_spellcheck_info = make_js_hash_from_array - ([ - [ 'Total words' , $total_words ], - [ 'Mispelled words' , $total_mispelled . ' in dictionary \"'.$dict.'\"' ], - [ 'Total suggestions' , $total_suggestions ], - [ 'Total words suggested' , $total_words_suggested ], - [ 'Spell-checked in' , defined $TIMER_start ? (tv_interval($TIMER_start) . ' seconds') : 'n/a' ] - ]); - -print qq^ - - - - - - -^; - -print $file_content; -if ($cgi->param('init') eq '1') { - my @dicts = $speller->dictionary_info(); - my $dictionaries = ''; - foreach my $i (@dicts) { - next if $i->{jargon}; - my $name = $i->{name}; - if ($name eq $dict) { - $name = '@'.$name; - } - $dictionaries .= ',' . $name; - } - $dictionaries =~ s/^,//; - print qq^
$dictionaries
^; -} - -print ''; - -# Perl is beautiful. -sub spellcheck { - my $node = shift; - my $doc = $node->getOwnerDocument; - my $check = sub { # called for each word in the text - # input is in UTF-8 - my $word = shift; - my $already_suggested = defined $suggested_words{$word}; - ++$total_words; - if (!$already_suggested && $speller->check($word)) { - return undef; - } else { - # we should have suggestions; give them back to browser in UTF-8 - ++$total_mispelled; - if (!$already_suggested) { - # compute suggestions for this word - my @suggestions = $speller->suggest($word); - my $suggestions = decode($speller->get_option('encoding'), join(',', @suggestions)); - $suggested_words{$word} = $suggestions; - ++$total_suggestions; - $total_words_suggested += scalar @suggestions; - } - # HA-spellcheck-error - my $err = $doc->createElement('span'); - $err->setAttribute('class', 'HA-spellcheck-error'); - my $tmp = $doc->createTextNode; - $tmp->setNodeValue($word); - $err->appendChild($tmp); - return $err; - } - }; - while ($node->getNodeValue =~ /([\p{IsWord}']+)/) { - my $word = $1; - my $before = $`; - my $after = $'; - my $df = &$check($word); - if (!$df) { - $before .= $word; - } - { - my $parent = $node->getParentNode; - my $n1 = $doc->createTextNode; - $n1->setNodeValue($before); - $parent->insertBefore($n1, $node); - $parent->insertBefore($df, $node) if $df; - $node->setNodeValue($after); - } - } -}; - -sub check_inner_text { - my $node = shift; - my $text = ''; - for (my $i = $node->getFirstChild; defined $i; $i = $i->getNextSibling) { - if ($i->getNodeType == TEXT_NODE) { - spellcheck($i); - } - } -}; - -sub parse_with_dom { - my ($text) = @_; - $text = ''.$text.''; - - my $parser = new XML::DOM::Parser; - if ($debug) { - open(FOO, '>:utf8', '/tmp/foo'); - print FOO $text; - close FOO; - } - my $doc = $parser->parse($text); - my $nodes = $doc->getElementsByTagName('*'); - my $n = $nodes->getLength; - - for (my $i = 0; $i < $n; ++$i) { - my $node = $nodes->item($i); - if ($node->getNodeType == ELEMENT_NODE) { - check_inner_text($node); - } - } - - my $ret = $doc->toString; - $ret =~ s{(.*)}{$1}sg; - return $ret; -}; - -sub make_js_hash { - my ($hash) = @_; - my $js_hash = ''; - while (my ($key, $val) = each %$hash) { - $js_hash .= ',' if $js_hash; - $js_hash .= '"'.$key.'":"'.$val.'"'; - } - return $js_hash; -}; - -sub make_js_hash_from_array { - my ($array) = @_; - my $js_hash = ''; - foreach my $i (@$array) { - $js_hash .= ',' if $js_hash; - $js_hash .= '"'.$i->[0].'":"'.$i->[1].'"'; - } - return $js_hash; -}; diff --git a/htmlarea/plugins/SpellChecker/spell-check-style.css b/htmlarea/plugins/SpellChecker/spell-check-style.css deleted file mode 100644 index ef3874f..0000000 --- a/htmlarea/plugins/SpellChecker/spell-check-style.css +++ /dev/null @@ -1,10 +0,0 @@ -.HA-spellcheck-error { border-bottom: 1px dashed #f00; cursor: default; } -.HA-spellcheck-same { background-color: #cef; color: #000; } -.HA-spellcheck-hover { background-color: #433; color: white; } -.HA-spellcheck-fixed { border-bottom: 1px dashed #0b8; } -.HA-spellcheck-current { background-color: #9be; color: #000; } -.HA-spellcheck-suggestions { display: none; } - -#HA-spellcheck-dictionaries { display: none; } - -a:link, a:visited { color: #55e; } diff --git a/htmlarea/plugins/SpellChecker/spell-check-ui.html b/htmlarea/plugins/SpellChecker/spell-check-ui.html deleted file mode 100644 index 322aa68..0000000 --- a/htmlarea/plugins/SpellChecker/spell-check-ui.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - Spell Checker - - - - - - - - - -
- - - - - - - - - - - - - -
-
Dictionary - - -
- Please wait. Calling spell checker. -
-
- -
-
Original word
-
pliz weit ;-)
-
- -
-
Replace with
-
-
-
-
-
-
-
Suggestions
-
- -
-
- -
-
- - -
-
-
- - - - diff --git a/htmlarea/plugins/SpellChecker/spell-check-ui.js b/htmlarea/plugins/SpellChecker/spell-check-ui.js deleted file mode 100644 index 618ed45..0000000 --- a/htmlarea/plugins/SpellChecker/spell-check-ui.js +++ /dev/null @@ -1,397 +0,0 @@ -// Spell Checker Plugin for HTMLArea-3.0 -// Sponsored by www.americanbible.org -// Implementation by Mihai Bazon, http://dynarch.com/mishoo/ -// -// (c) dynarch.com 2003-2005. -// Distributed under the same terms as HTMLArea itself. -// This notice MUST stay intact for use (see license.txt). -// -// $Id$ - -// internationalization file was already loaded in parent ;-) -var SpellChecker = window.opener.SpellChecker; -var i18n = SpellChecker.I18N; - -var HTMLArea = window.opener.HTMLArea; -var is_ie = HTMLArea.is_ie; -var editor = SpellChecker.editor; -var frame = null; -var currentElement = null; -var wrongWords = null; -var modified = false; -var allWords = {}; -var fixedWords = []; -var suggested_words = {}; - -function makeCleanDoc(leaveFixed) { - // document.getElementById("status").innerHTML = 'Please wait: rendering valid HTML'; - var words = wrongWords.concat(fixedWords); - for (var i = words.length; --i >= 0;) { - var el = words[i]; - if (!(leaveFixed && /HA-spellcheck-fixed/.test(el.className))) { - el.parentNode.insertBefore(el.firstChild, el); - el.parentNode.removeChild(el); - } else - el.className = "HA-spellcheck-fixed"; - } - // we should use innerHTML here, but IE6's implementation fucks up the - // HTML to such extent that our poor Perl parser doesn't understand it - // anymore. - return window.opener.HTMLArea.getHTML(frame.contentWindow.document.body, false, editor); -}; - -function recheckClicked() { - document.getElementById("status").innerHTML = i18n["Please wait: changing dictionary to"] + ': "' + document.getElementById("f_dictionary").value + '".'; - var field = document.getElementById("f_content"); - field.value = makeCleanDoc(true); - field.form.submit(); -}; - -function saveClicked() { - if (modified) { - editor.setHTML(makeCleanDoc(false)); - } - window.close(); - return false; -}; - -function cancelClicked() { - var ok = true; - if (modified) { - ok = confirm(i18n["QUIT_CONFIRMATION"]); - } - if (ok) { - window.close(); - } - return false; -}; - -function replaceWord(el) { - var replacement = document.getElementById("v_replacement").value; - var this_word_modified = (el.innerHTML != replacement); - if (this_word_modified) - modified = true; - if (el) { - el.className = el.className.replace(/\s*HA-spellcheck-(hover|fixed)\s*/g, " "); - } - el.className += " HA-spellcheck-fixed"; - el.__msh_fixed = true; - if (!this_word_modified) { - return false; - } - el.innerHTML = replacement; -}; - -function replaceClicked() { - replaceWord(currentElement); - var start = currentElement.__msh_id; - var index = start; - do { - ++index; - if (index == wrongWords.length) { - index = 0; - } - } while ((index != start) && wrongWords[index].__msh_fixed); - if (index == start) { - index = 0; - alert(i18n["Finished list of mispelled words"]); - } - wrongWords[index].__msh_wordClicked(true); - return false; -}; - -function revertClicked() { - document.getElementById("v_replacement").value = currentElement.__msh_origWord; - replaceWord(currentElement); - currentElement.className = "HA-spellcheck-error HA-spellcheck-current"; - return false; -}; - -function replaceAllClicked() { - var replacement = document.getElementById("v_replacement").value; - var ok = true; - var spans = allWords[currentElement.__msh_origWord]; - if (spans.length == 0) { - alert("An impossible condition just happened. Call FBI. ;-)"); - } else if (spans.length == 1) { - replaceClicked(); - return false; - } - /* - var message = "The word \"" + currentElement.__msh_origWord + "\" occurs " + spans.length + " times.\n"; - if (replacement == currentElement.__msh_origWord) { - ok = confirm(message + "Ignore all occurrences?"); - } else { - ok = confirm(message + "Replace all occurrences with \"" + replacement + "\"?"); - } - */ - if (ok) { - for (var i = 0; i < spans.length; ++i) { - if (spans[i] != currentElement) { - replaceWord(spans[i]); - } - } - // replace current element the last, so that we jump to the next word ;-) - replaceClicked(); - } - return false; -}; - -function ignoreClicked() { - document.getElementById("v_replacement").value = currentElement.__msh_origWord; - replaceClicked(); - return false; -}; - -function ignoreAllClicked() { - document.getElementById("v_replacement").value = currentElement.__msh_origWord; - replaceAllClicked(); - return false; -}; - -function learnClicked() { - alert("Not [yet] implemented"); - return false; -}; - -function internationalizeWindow() { - var types = ["div", "span", "button"]; - for (var i = 0; i < types.length; ++i) { - var tag = types[i]; - var els = document.getElementsByTagName(tag); - for (var j = els.length; --j >= 0;) { - var el = els[j]; - if (el.childNodes.length == 1 && /\S/.test(el.innerHTML)) { - var txt = el.innerHTML; - if (typeof i18n[txt] != "undefined") { - el.innerHTML = i18n[txt]; - } - } - } - } -}; - -function initDocument() { - internationalizeWindow(); - modified = false; - frame = document.getElementById("i_framecontent"); - var field = document.getElementById("f_content"); - field.value = HTMLArea.getHTML(editor._doc.body, false, editor); - field.form.submit(); - document.getElementById("f_init").value = "0"; - - // assign some global event handlers - - var select = document.getElementById("v_suggestions"); - select.onchange = function() { - document.getElementById("v_replacement").value = this.value; - }; - if (is_ie) { - select.attachEvent("ondblclick", replaceClicked); - } else { - select.addEventListener("dblclick", replaceClicked, true); - } - - document.getElementById("b_replace").onclick = replaceClicked; - // document.getElementById("b_learn").onclick = learnClicked; - document.getElementById("b_replall").onclick = replaceAllClicked; - document.getElementById("b_ignore").onclick = ignoreClicked; - document.getElementById("b_ignall").onclick = ignoreAllClicked; - document.getElementById("b_recheck").onclick = recheckClicked; - document.getElementById("b_revert").onclick = revertClicked; - document.getElementById("b_info").onclick = displayInfo; - - document.getElementById("b_ok").onclick = saveClicked; - document.getElementById("b_cancel").onclick = cancelClicked; - - select = document.getElementById("v_dictionaries"); - select.onchange = function() { - document.getElementById("f_dictionary").value = this.value; - }; -}; - -function getAbsolutePos(el) { - var r = { x: el.offsetLeft, y: el.offsetTop }; - if (el.offsetParent) { - var tmp = getAbsolutePos(el.offsetParent); - r.x += tmp.x; - r.y += tmp.y; - } - return r; -}; - -function wordClicked(scroll) { - var self = this; - if (scroll) (function() { - var pos = getAbsolutePos(self); - var ws = { x: frame.offsetWidth - 4, - y: frame.offsetHeight - 4 }; - var wp = { x: frame.contentWindow.document.body.scrollLeft, - y: frame.contentWindow.document.body.scrollTop }; - pos.x -= Math.round(ws.x/2); - if (pos.x < 0) pos.x = 0; - pos.y -= Math.round(ws.y/2); - if (pos.y < 0) pos.y = 0; - frame.contentWindow.scrollTo(pos.x, pos.y); - })(); - if (currentElement) { - var a = allWords[currentElement.__msh_origWord]; - currentElement.className = currentElement.className.replace(/\s*HA-spellcheck-current\s*/g, " "); - for (var i = 0; i < a.length; ++i) { - var el = a[i]; - if (el != currentElement) { - el.className = el.className.replace(/\s*HA-spellcheck-same\s*/g, " "); - } - } - } - currentElement = this; - this.className += " HA-spellcheck-current"; - var a = allWords[currentElement.__msh_origWord]; - for (var i = 0; i < a.length; ++i) { - var el = a[i]; - if (el != currentElement) { - el.className += " HA-spellcheck-same"; - } - } - // document.getElementById("b_replall").disabled = (a.length <= 1); - // document.getElementById("b_ignall").disabled = (a.length <= 1); - var txt; - if (a.length == 1) { - txt = "one occurrence"; - } else if (a.length == 2) { - txt = "two occurrences"; - } else { - txt = a.length + " occurrences"; - } - var suggestions = suggested_words[this.__msh_origWord]; - if (suggestions) - suggestions = suggestions.split(/,/); - else - suggestions = []; - var select = document.getElementById("v_suggestions"); - document.getElementById("statusbar").innerHTML = "Found " + txt + - ' for word "' + currentElement.__msh_origWord + '"'; - for (var i = select.length; --i >= 0;) { - select.remove(i); - } - for (var i = 0; i < suggestions.length; ++i) { - var txt = suggestions[i]; - var option = document.createElement("option"); - option.value = txt; - option.appendChild(document.createTextNode(txt)); - select.appendChild(option); - } - document.getElementById("v_currentWord").innerHTML = this.__msh_origWord; - if (suggestions.length > 0) { - select.selectedIndex = 0; - select.onchange(); - } else { - document.getElementById("v_replacement").value = this.innerHTML; - } - select.style.display = "none"; - select.style.display = "block"; - return false; -}; - -function wordMouseOver() { - this.className += " HA-spellcheck-hover"; -}; - -function wordMouseOut() { - this.className = this.className.replace(/\s*HA-spellcheck-hover\s*/g, " "); -}; - -function displayInfo() { - var info = frame.contentWindow.spellcheck_info; - if (!info) - alert("No information available"); - else { - var txt = "** Document information **"; - for (var i in info) { - txt += "\n" + i + " : " + info[i]; - } - alert(txt); - } - return false; -}; - -function finishedSpellChecking() { - // initialization of global variables - currentElement = null; - wrongWords = null; - allWords = {}; - fixedWords = []; - suggested_words = frame.contentWindow.suggested_words; - - document.getElementById("status").innerHTML = "HTMLArea Spell Checker (info)"; - var doc = frame.contentWindow.document; - var spans = doc.getElementsByTagName("span"); - var sps = []; - var id = 0; - for (var i = 0; i < spans.length; ++i) { - var el = spans[i]; - if (/HA-spellcheck-error/.test(el.className)) { - sps.push(el); - el.__msh_wordClicked = wordClicked; - el.onclick = function(ev) { - ev || (ev = window.event); - ev && HTMLArea._stopEvent(ev); - return this.__msh_wordClicked(false); - }; - el.onmouseover = wordMouseOver; - el.onmouseout = wordMouseOut; - el.__msh_id = id++; - var txt = (el.__msh_origWord = el.firstChild.data); - el.__msh_fixed = false; - if (typeof allWords[txt] == "undefined") { - allWords[txt] = [el]; - } else { - allWords[txt].push(el); - } - } else if (/HA-spellcheck-fixed/.test(el.className)) { - fixedWords.push(el); - } - } - wrongWords = sps; - if (sps.length == 0) { - if (!modified) { - alert(i18n["NO_ERRORS_CLOSING"]); - window.close(); - } else { - alert(i18n["NO_ERRORS"]); - } - return false; - } - (currentElement = sps[0]).__msh_wordClicked(true); - var as = doc.getElementsByTagName("a"); - for (var i = as.length; --i >= 0;) { - var a = as[i]; - a.onclick = function() { - if (confirm(i18n["CONFIRM_LINK_CLICK"] + ":\n" + - this.href + "\n" + i18n["I will open it in a new page."])) { - window.open(this.href); - } - return false; - }; - } - var dicts = doc.getElementById("HA-spellcheck-dictionaries"); - if (dicts) { - dicts.parentNode.removeChild(dicts); - dicts = dicts.innerHTML.split(/,/); - var select = document.getElementById("v_dictionaries"); - for (var i = select.length; --i >= 0;) { - select.remove(i); - } - for (var i = 0; i < dicts.length; ++i) { - var txt = dicts[i]; - var option = document.createElement("option"); - if (/^@(.*)$/.test(txt)) { - txt = RegExp.$1; - option.selected = true; - } - option.value = txt; - option.appendChild(document.createTextNode(txt)); - select.appendChild(option); - } - } -}; diff --git a/htmlarea/plugins/SpellChecker/spell-checker.js b/htmlarea/plugins/SpellChecker/spell-checker.js deleted file mode 100644 index cc2cb10..0000000 --- a/htmlarea/plugins/SpellChecker/spell-checker.js +++ /dev/null @@ -1,79 +0,0 @@ -// Spell Checker Plugin for HTMLArea-3.0 -// Sponsored by www.americanbible.org -// Implementation by Mihai Bazon, http://dynarch.com/mishoo/ -// -// (c) dynarch.com 2003-2005. -// Distributed under the same terms as HTMLArea itself. -// This notice MUST stay intact for use (see license.txt). -// -// $Id$ - -function SpellChecker(editor) { - this.editor = editor; - - var cfg = editor.config; - var tt = SpellChecker.I18N; - var bl = SpellChecker.btnList; - var self = this; - - // register the toolbar buttons provided by this plugin - var toolbar = []; - for (var i = 0; i < bl.length; ++i) { - var btn = bl[i]; - if (!btn) { - toolbar.push("separator"); - } else { - var id = "SC-" + btn[0]; - cfg.registerButton(id, tt[id], editor.imgURL(btn[0] + ".gif", "SpellChecker"), false, - function(editor, id) { - // dispatch button press event - self.buttonPress(editor, id); - }, btn[1]); - toolbar.push(id); - } - } - - for (var i = 0; i < toolbar.length; ++i) { - cfg.toolbar[0].push(toolbar[i]); - } -}; - -SpellChecker._pluginInfo = { - name : "SpellChecker", - version : "1.0", - developer : "Mihai Bazon", - developer_url : "http://dynarch.com/mishoo/", - c_owner : "Mihai Bazon", - sponsor : "American Bible Society", - sponsor_url : "http://www.americanbible.org", - license : "htmlArea" -}; - -SpellChecker.btnList = [ - null, // separator - ["spell-check"] - ]; - -SpellChecker.prototype.buttonPress = function(editor, id) { - switch (id) { - case "SC-spell-check": - SpellChecker.editor = editor; - SpellChecker.init = true; - var uiurl = _editor_url + "plugins/SpellChecker/spell-check-ui.html"; - var win; - if (HTMLArea.is_ie) { - win = window.open(uiurl, "SC_spell_checker", - "toolbar=no,location=no,directories=no,status=no,menubar=no," + - "scrollbars=no,resizable=yes,width=600,height=450"); - } else { - win = window.open(uiurl, "SC_spell_checker", - "toolbar=no,menubar=no,personalbar=no,width=600,height=450," + - "scrollbars=no,resizable=yes"); - } - win.focus(); - break; - } -}; - -// this needs to be global, it's accessed from spell-check-ui.html -SpellChecker.editor = null; diff --git a/htmlarea/plugins/TableOperations/img/cell-delete.gif b/htmlarea/plugins/TableOperations/img/cell-delete.gif deleted file mode 100644 index df9594f44f8dbf6b910b66ae2ff5cb35495fbcd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101 zcmZ?wbhEHb6k-r!SjYeZ|NsC0&%p5i|9{1wEQ|~c%nUjpQII?Xli8g9m8Y5cZ!<1r zQ{dfd(aF+!QK5!gfkiWF+VWLp?^N2_EF;68y_g&FI9F@`v4ZKGpQfEzwuFJf8UQPk BBbxvK diff --git a/htmlarea/plugins/TableOperations/img/cell-insert-after.gif b/htmlarea/plugins/TableOperations/img/cell-insert-after.gif deleted file mode 100644 index 6ff2154bafa4d11dba1ea9cbf013a6f9cb41f063..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 118 zcmZ?wbhEHb6k-r!IK;rfz|iopp@HE)2rw`}Xb@ZRCkrD313QBbNC`+S1G9C-t~>ue zOz?cHq|BcrdM(C1G%0~?q3fIs^7@ zoMcwo8F9_4?Zc4}*(2Xul{#Zjo$||7VAt?DV{&JgmF1u2TT7Tlykd^Af1F;T(`=iP L?=@A0fx#L8PpL5X diff --git a/htmlarea/plugins/TableOperations/img/cell-merge.gif b/htmlarea/plugins/TableOperations/img/cell-merge.gif deleted file mode 100644 index 35e4af1077dda57b05fe6d4be44a11ab3ba7dbf8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 896 zcmZ?wbhEHb6k-r!c+LO<4Gatn4GaxnssYS8aNxj!I|r7X`rx3zkf6ZOpun&|f#HAx z!vh5d1_uTO2L=ZRh6D$O1_y=(4h#nz7#=tT z0Thr837{BgSOD^L!vlr}289L%g$4(Oh6II%28D(N3JnJo8XkayQUT=fh6Ipv8Ww;o zX?Oq*UxkDQhlGZNgocKMh6M=?2ND_{fCF8j0p#?A1`t@#&~Tuk;Xy+K!-58d1t9+< zENEz0(6C@Z!+`}255Uo*Z~)}VgaaU@3l20KIMDC_9A^p-Kt4}+0MftULBoLu4G%yO zc|ZY_1P&yCBKE)nP;?!50FFfkg#!)>2NDzxG$E^KD7%QK@6+Dn9R>(tdfywtrsB Lf30NaWUvMRJ=s9p diff --git a/htmlarea/plugins/TableOperations/img/cell-split.gif b/htmlarea/plugins/TableOperations/img/cell-split.gif deleted file mode 100644 index 8bd011e1941e0b7293404abf1692a0f59ef590d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 907 zcmZ?wbhEHb6k-r!c+LO<4Gatn4GaxnssYS8aNxj!I|r7X`rx3zkf6ZOpun&|f#HAx z!vh5d1_uTO2L=ZRh6D$O1_y=(4h#nz7#=tT z0Thr837{BgSOD^L!vlr}289L%g$4(Oh6II%28D(N3JnJo8XkayQUT=fh6Ipv8Ww;o zX?Oq*UxkDQhlGZNgocKMh6M=?2ND_{fCF8j0p#?A1`t@#&~Tuk;Xy+K!-58d1t9+< zENEz0(6C@Z!+`}255Uo*Z~)}VgaaU@3l20KIMDC_9A^p-Kt4}+0MftULBoLu4G%yO zc|ZY_1P&yCBKE)nP;?!50FFfkg#!)>2NDzxG$lRXt&Z57#mm894FEt|cFh0) diff --git a/htmlarea/plugins/TableOperations/img/col-delete.gif b/htmlarea/plugins/TableOperations/img/col-delete.gif deleted file mode 100644 index 565afdc523b9d3afb789d43afa8c647e614b9f84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100 zcmZ?wbhEHb6k-r!SjYeZ|NsC0&%p5i|9{1wEQ|~c%nUjpQII?Xlj)rPm8aPl=X2;U z^ICr3fs>Ta9o8ugY14XLOixIbtrOn%nIYeN-n+I3)(o{xNfRr0_?pi|Gcs5M060`4 AU;qFB diff --git a/htmlarea/plugins/TableOperations/img/col-insert-after.gif b/htmlarea/plugins/TableOperations/img/col-insert-after.gif deleted file mode 100644 index 648e54f018c49759fcc082a51940c10ecf6e7a0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 111 zcmZ?wbhEHb6k-r!IK;s4u%Us0p@HE)2rw`}Xb@ZRCkrD313QBb0|NsCNG$`iNyV-^ z{{kjDa_&$$SLN8|qR|yt$&x0#X62@RYo+xwZ0gh$d6?q-tmmg)&t_zI5-_yPmJ?#I F1^`+cC+PqH diff --git a/htmlarea/plugins/TableOperations/img/col-insert-before.gif b/htmlarea/plugins/TableOperations/img/col-insert-before.gif deleted file mode 100644 index 9be8a6e4e92682c94a05aefc4953688cc43657e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110 zcmZ?wbhEHb6k-r!IK%(~4;vc(|Nqax(7^B?0Th3-FfuT(Gw6U+fYdTD8&~YQ^Y25W zL*ovGb5*Ww4jNtO1ZT z0Thr837{BgSOD^L!vlr}289L%g$4(Oh6II%28D(N3JnJo8XkayQUT=fh6Ipv8Ww;o zX?Oq*UxkDQhlGZNgocKMh6M=?2ND_{fCF8j0p#?A1`t@#&~Tuk;Xy+K!-58d1t9+< zENEz0(6C@Z!+`}255Uo*Z~)}VgaaU@3l20KIMDC_9A^p-Kt4}+0MftULBoLu4G%yO zc|ZY_1P&yCBKE)nP;?!50FFfkg#!)>2NDzxG$RB?0q2 fGAC`Bx%tJpr9$y)OCR(%sGU;qSRBcKIhioN8j``DYl~Xw{wS{LEP^#=u|= E0P>|I`v3p{ diff --git a/htmlarea/plugins/TableOperations/img/row-insert-above.gif b/htmlarea/plugins/TableOperations/img/row-insert-above.gif deleted file mode 100644 index e39c948b03c050f19b1165fae710d356ca093620..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116 zcmZ?wbhEHb6k-r!IK;rf@c%ypL(9X4hW{W2!+#i1{K>+|z`)L+!@$7608-1qY+14E z&OZY-*Q}|Z1q>{B6g)~~-3sTqL>@V{?V{ot6Pb&pI**%p_fEf&;PJ(_!&SB@ql97h Mt`$=zGB8*J0ArLcPyhe` diff --git a/htmlarea/plugins/TableOperations/img/row-insert-under.gif b/htmlarea/plugins/TableOperations/img/row-insert-under.gif deleted file mode 100644 index 200535855f458297df952f3923e076c5f8b79ac1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 115 zcmZ?wbhEHb6k-r!IK;rf@c%ypL(9X4hW{W2!+#i1{K>+|z`)L+!@$7608-1qY*Df6 z&c6>6JUv5{v#Y=EYoA^i=-TMCYSM&Vi`E^md&c6_nB?ZD$H=U(?z%EdvyD8X#*>#? L+h6E1GFSrukMk}Y diff --git a/htmlarea/plugins/TableOperations/img/row-prop.gif b/htmlarea/plugins/TableOperations/img/row-prop.gif deleted file mode 100644 index 76397253fbaec4d2cdf84ea0ec2ae4421daba6fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 149 zcmZ?wbhEHb6k-r!Sj5i2z|iopq2a)R0}RG9&zw2)|Nnmm28RFt|117vVPs%nXV76_ zU|;~LWnhk~*mdWf+9~D()^0CyU!A_WtdduwWwyF&dUx40Lmq{T z0Thr837{BgSOD^L!vlr}289L%g$4(Oh6II%28D(N3JnJo8XkayQUT=fh6Ipv8Ww;o zX?Oq*UxkDQhlGZNgocKMh6M=?2ND_{fCF8j0p#?A1`t@#&~Tuk;Xy+K!-58d1t9+< zENEz0(6C@Z!+`}255Uo*Z~)}VgaaU@3l20KIMDC_9A^p-Kt4}+0MftULBoLu4G%yO zc|ZY_1P&yCBKE)nP;?!50FFfkg#!)>2NDzxG$LZj@FAQYVGNm zn0%~*-&wEc#ryb^lhu6d?sRNQb?*`6JTb>}@&T_-y+AXSnMTjg&T`0q_NH?4@{5zq RUE6$4Y*~4EIU^&3H30sTbrJvo diff --git a/htmlarea/plugins/TableOperations/img/table-prop.gif b/htmlarea/plugins/TableOperations/img/table-prop.gif deleted file mode 100644 index e15a4a4445482677100bdebe0c8b5d621c14f438..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 145 zcmZ?wbhEHb6k-r!Sj5J_z|e5uzySv1ng9R)KXc{`0|UeV|Nj{n7!-f9FfuT(G3YQb zFff4BGBAf_?7H(#)r - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Zarovnání", - "All four sides": "Všechny čtyři strany", - "Background": "Pozadí", - "Baseline": "Základní linka", - "Border": "Obrys", - "Borders": "Obrysy", - "Bottom": "Dolů", - "CSS Style": "Kaskádové styly (CSS)", - "Caption": "Titulek", - "Cell Properties": "Vlastnosti buňky", - "Center": "Na střed", - "Char": "Znak", - "Collapsed borders": "Stlačené okraje", - "Color": "Barva", - "Description": "Popis", - "FG Color": "Barva popředí", - "Float": "Obtékání", - "Frames": "Rámečky", - "Height": "Výška", - "How many columns would you like to merge?": "Kolik sloupců si přejete spojit?", - "How many rows would you like to merge?": "Kolik řádků si přejete spojit?", - "Image URL": "Adresa obrázku", - "Justify": "Do stran", - "Layout": "Rozložení", - "Left": "Vlevo", - "Margin": "Okraj", - "Middle": "Na střed", - "No rules": "Žádné čáry", - "No sides": "Žádné strany", - "None": "Žádné", - "Padding": "Odsazování", - "Please click into some cell": "Prosím klikněte do některé buňky", - "Right": "Vpravo", - "Row Properties": "Vlastnosti řádku", - "Rules will appear between all rows and columns": "Čáry mezi všemi řádky i sloupci", - "Rules will appear between columns only": "Čáry pouze mezi sloupci", - "Rules will appear between rows only": "Čáry pouze mezi řádky", - "Rules": "Čáry", - "Spacing and padding": "Mezery a odsazování", - "Spacing": "Mezery", - "Summary": "Shrnutí", - "TO-cell-delete": "Smazat buňku", - "TO-cell-insert-after": "Vložit buňku za", - "TO-cell-insert-before": "Vložit buňku před", - "TO-cell-merge": "Spojit buňky", - "TO-cell-prop": "Vlastnosti buňky", - "TO-cell-split": "Rozdělit buňku", - "TO-col-delete": "Smazat sloupec", - "TO-col-insert-after": "Vložit sloupec za", - "TO-col-insert-before": "Vložit sloupec před", - "TO-col-split": "Rozdělit sloupec", - "TO-row-delete": "Smazat řádek", - "TO-row-insert-above": "Smazat řádek nad", - "TO-row-insert-under": "Smazat řádek pod", - "TO-row-prop": "Vlastnosti řádku", - "TO-row-split": "Rozdělit řádek", - "TO-table-prop": "Vlastnosti tabulky", - "Table Properties": "Vlastnosti tabulky", - "Text align": "Zarovnání textu", - "The bottom side only": "Pouze spodní strana", - "The left-hand side only": "Pouze levá strana", - "The right and left sides only": "Pouze levá a pravá strana", - "The right-hand side only": "Pouze pravá strana", - "The top and bottom sides only": "Pouze horní a dolní strana", - "The top side only": "Pouze horní strana", - "Top": "Nahoru", - "Unset color": "Zrušit barvu", - "Vertical align": "Svislé zarovnání", - "Width": "Šířka", - "not-del-last-cell": "HTMLArea zbaběle odmítá smazat poslední buňku v řádku.", - "not-del-last-col": "HTMLArea zbaběle odmítá smazat poslední sloupec v tabulce.", - "not-del-last-row": "HTMLArea zbaběle odmítá smazat poslední řádek v tabulce.", - "percent": "procent", - "pixels": "pixelů" -}; diff --git a/htmlarea/plugins/TableOperations/lang/da.js b/htmlarea/plugins/TableOperations/lang/da.js deleted file mode 100644 index bae8d1e..0000000 --- a/htmlarea/plugins/TableOperations/lang/da.js +++ /dev/null @@ -1,90 +0,0 @@ -// I18N constants - -// LANG: "da", ENCODING: UTF-8 | ISO-8859-1 -// Author: Steen Sønderup, - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Placer", - "All four sides": "Alle fire sider", - "Background": "Baggrund", - "Baseline": "Bundlinie", - "Border": "Kant", - "Borders": "Kanter", - "Bottom": "Bund", - "CSS Style": "Stil [CSS]", - "Caption": "Titel", - "Cell Properties": "Celle egenskaber", - "Center": "Centrer", - "Char": "Plads", - "Collapsed borders": "Sammensmelt rammer", - "Color": "Farve", - "Description": "Beskrivelse", - "FG Color": "Font farve", - "Float": "Justering", - "Frames": "Udvendig", - "Height": "Højde", - "How many columns would you like to merge?": "Hvor mange kollonner vil du samle?", - "How many rows would you like to merge?": "Hvor mange rækker vil du samle?", - "Image URL": "Billede URL", - "Justify": "Lige margener", - "Layout": "Opsætning", - "Left": "Venstre", - "Margin": "Margen", - "Middle": "Centrer", - "No rules": "Ingen rammer", - "No sides": "Ingen sider", - "None": "Ingen", - "Padding": "Margen", - "Please click into some cell": "Klik på en celle", - "Right": "Højre", - "Row Properties": "Række egenskaber", - "Rules will appear between all rows and columns": "Rammer mellem rækker og kolonner", - "Rules will appear between columns only": "Kun rammer mellem kolonner", - "Rules will appear between rows only": "Kun rammer mellem rækker", - "Rules": "Invendig", - "Spacing and padding": "Afstand og margen", - "Spacing": "Afstand", - "Summary": "Beskrivelse", - "TO-cell-delete": "Slet celle", - "TO-cell-insert-after": "Indsæt celle efter", - "TO-cell-insert-before": "Indsæt celle før", - "TO-cell-merge": "Sammensæt celler", - "TO-cell-prop": "Celle egenskaber", - "TO-cell-split": "Opdel celle", - "TO-col-delete": "Slet kollonne", - "TO-col-insert-after": "Indsæt kolonne efter", - "TO-col-insert-before": "Indsæt kolonne før", - "TO-col-split": "Opdel kolonne", - "TO-row-delete": "Slet række", - "TO-row-insert-above": "Indsæt række før", - "TO-row-insert-under": "Indsæt række efter", - "TO-row-prop": "Række egenskaber", - "TO-row-split": "Opdel række", - "TO-table-prop": "Tabel egenskaber", - "Table Properties": "Tabel egenskaber", - "Text align": "Tekst", - "The bottom side only": "Kun i bunden", - "The left-hand side only": "Kun i højre side", - "The right and left sides only": "Kun i siderne", - "The right-hand side only": "Kun i venstre side", - "The top and bottom sides only": "Kun i top og bund", - "The top side only": "Kun i toppen", - "Top": "Top", - "Unset color": "Farve ikke valgt", - "Vertical align": "Vertikal placering", - "Width": "Bredde", - "not-del-last-cell": "Du kan ikke slette den sidste celle i en række.", - "not-del-last-col": "Du kan ikke slette den sidste kolonne i en tabel.", - "not-del-last-row": "Du kan ikke slette den sidste række i en tabel.", - "percent": "procent", - "pixels": "pixel" -}; diff --git a/htmlarea/plugins/TableOperations/lang/de.js b/htmlarea/plugins/TableOperations/lang/de.js deleted file mode 100644 index 8730518..0000000 --- a/htmlarea/plugins/TableOperations/lang/de.js +++ /dev/null @@ -1,81 +0,0 @@ -// I18N constants - -// LANG: "de", ENCODING: UTF-8 | ISO-8859-1 -// Author: broxx, - -TableOperations.I18N = { - "Align": "Ausrichten", - "All four sides": "Alle 4 Seiten", - "Background": "Hintergrund", - "Baseline": "Basislinie", - "Border": "Rand", - "Borders": "Raender", - "Bottom": "Unten", - "CSS Style": "Style [CSS]", - "Caption": "Ueberschrift", - "Cell Properties": "Zellen", - "Center": "Zentrieren", - "Char": "Zeichen", - "Collapsed borders": "Collapsed borders", - "Color": "Farbe", - "Description": "Beschreibung", - "FG Color": "FG Farbe", - "Float": "Ausrichtung", - "Frames": "Rahmen", - "Height": "Hoehe", - "How many columns would you like to merge?": "Wieviele Spalten willst du verbinden?", - "How many rows would you like to merge?": "Wieviele Zeilen willst du verbinden?", - "Image URL": "Bild URL", - "Justify": "Justieren", - "Layout": "Layout", - "Left": "Links", - "Margin": "Rand", - "Middle": "Mitte", - "No rules": "Keine Balken", - "No sides": "Keine Seiten", - "None": "Keine", - "Padding": "Auffuellung", - "Please click into some cell": "Waehle eine Zelle", - "Right": "Rechts", - "Row Properties": "Reihen", - "Rules will appear between all rows and columns": "Balken zwischen Reihen und Spalten", - "Rules will appear between columns only": "Balken zwischen Spalten", - "Rules will appear between rows only": "Balken zwischen Reihen", - "Rules": "Balken", - "Spacing and padding": "Abstaende", - "Spacing": "Abstand", - "Summary": "Zusammenfassung", - "TO-cell-delete": "Zelle loeschen", - "TO-cell-insert-after": "Zelle einfuegen nach", - "TO-cell-insert-before": "Zelle einfuegen bevor", - "TO-cell-merge": "Zellen zusammenfuegen", - "TO-cell-prop": "Zelleinstellungen", - "TO-cell-split": "Zellen aufteilen", - "TO-col-delete": "Spalte loeschen", - "TO-col-insert-after": "Spalte einfuegen nach", - "TO-col-insert-before": "Spalte einfuegen bevor", - "TO-col-split": "Spalte aufteilen", - "TO-row-delete": "Reihe loeschen", - "TO-row-insert-above": "Reihe einfuegen vor", - "TO-row-insert-under": "Reihe einfuegen nach", - "TO-row-prop": "Reiheneinstellungen", - "TO-row-split": "Reihen aufteilen", - "TO-table-prop": "Tabelle", - "Table Properties": "Tabelle", - "Text align": "Ausrichtung", - "The bottom side only": "Nur untere Seite", - "The left-hand side only": "Nur linke Seite", - "The right and left sides only": "Nur linke und rechte Seite", - "The right-hand side only": "Nur rechte Seite", - "The top and bottom sides only": "Nur obere und untere Seite", - "The top side only": "Nur obere Seite", - "Top": "Oben", - "Unset color": "Farbe", - "Vertical align": "Ausrichtung", - "Width": "Breite", - "not-del-last-cell": "Letzte Zelle in dieser Reihe!", - "not-del-last-col": "Letzte Spalte in dieser Tabelle!", - "not-del-last-row": "Letzte Reihe in dieser Tabelle", - "percent": "%", - "pixels": "pixels" -}; diff --git a/htmlarea/plugins/TableOperations/lang/el.js b/htmlarea/plugins/TableOperations/lang/el.js deleted file mode 100644 index 119a6f6..0000000 --- a/htmlarea/plugins/TableOperations/lang/el.js +++ /dev/null @@ -1,81 +0,0 @@ -// I18N constants - -// LANG: "el", ENCODING: UTF-8 | ISO-8859-7 -// Author: Dimitris Glezos, dimitris@glezos.com - -TableOperations.I18N = { - "Align": "Στοίχηση", - "All four sides": "Και οι 4 πλευρές", - "Background": "Φόντο", - "Baseline": "Baseline", - "Border": "Περίγραμμα", - "Borders": "Περιγράμματα", - "Bottom": "Κάτω μέρος", - "CSS Style": "Στυλ [CSS]", - "Caption": "Λεζάντα", - "Cell Properties": "Ιδιότητες Κελιού", - "Center": "Κέντρο", - "Char": "Χαρακτήρας", - "Collapsed borders": "Συμπτυγμένα περιγράμματα", - "Color": "Χρώμα", - "Description": "Περιγραφή", - "FG Color": "Χρώμα αντικειμένων", - "Float": "Float", - "Frames": "Frames", - "Height": "Ύψος", - "How many columns would you like to merge?": "Πόσες στήλες θέλετε να ενώσετε;", - "How many rows would you like to merge?": "Πόσες γραμμές θέλετε να ενώσετε;", - "Image URL": "URL εικόνας", - "Justify": "Πλήρης στοίχηση", - "Layout": "Διάταξη", - "Left": "Αριστερά", - "Margin": "Περιθώριο", - "Middle": "Κέντρο", - "No rules": "Χωρίς Γραμμές", - "No sides": "No sides", - "None": "Τίποτα", - "Padding": "Εσοχή", - "Please click into some cell": "Κάντε κλικ μέσα σε κάποιο κελί", - "Right": "Δεξιά", - "Row Properties": "Ιδιότητες Γραμμής", - "Rules will appear between all rows and columns": "Γραμμές θα εμφανίζονται μεταξύ όλων των γραμμών και στηλών", - "Rules will appear between columns only": "Γραμμές θα εμφανίζονται μόνο μεταξύ στηλών", - "Rules will appear between rows only": "Γραμμές θα εμφανίζονται μόνο μεταξύ γραμμών", - "Rules": "Γραμμές", - "Spacing and padding": "Αποστάσεις και εσοχές", - "Spacing": "Αποστάσεις", - "Summary": "Σύνοψη", - "TO-cell-delete": "Διαγραφή κελιού", - "TO-cell-insert-after": "Εισαγωγή κελιού μετά", - "TO-cell-insert-before": "Εισαγωγή κελιού πριν", - "TO-cell-merge": "Συγχώνευση κελιών", - "TO-cell-prop": "Ιδιότητες κελιού", - "TO-cell-split": "Διαίρεση κελιού", - "TO-col-delete": "Διαγραφή στήλης", - "TO-col-insert-after": "Εισαγωγή στήλης μετά", - "TO-col-insert-before": "Εισαγωγή στήλης πριν", - "TO-col-split": "Διαίρεση στήλης", - "TO-row-delete": "Διαγραφή γραμμής", - "TO-row-insert-above": "Εισαγωγή γραμμής μετά", - "TO-row-insert-under": "Εισαγωγή γραμμής πριν", - "TO-row-prop": "Ιδιότητες γραμμής", - "TO-row-split": "Διαίρεση γραμμής", - "TO-table-prop": "Ιδιότητες πίνακα", - "Table Properties": "Ιδιότητες πίνακα", - "Text align": "Στοίχηση κειμένου", - "The bottom side only": "Η κάτω πλευρά μόνο", - "The left-hand side only": "Η αριστερή πλευρά μόνο", - "The right and left sides only": "Οι δεξιές και αριστερές πλευρές μόνο", - "The right-hand side only": "Η δεξιά πλευρά μόνο", - "The top and bottom sides only": "Οι πάνω και κάτω πλευρές μόνο", - "The top side only": "Η πάνω πλευρά μόνο", - "Top": "Πάνω", - "Unset color": "Αναίρεση χρώματος", - "Vertical align": "Κατακόρυφη στοίχηση", - "Width": "Πλάτος", - "not-del-last-cell": "Δεν μπορεί να διαγραφεί το τελευταίο κελί σε μια γραμμή.", - "not-del-last-col": "Δεν μπορεί να διαγραφεί η τελευταία στήλη σε ένα πίνακα.", - "not-del-last-row": "Δεν μπορεί να διαγραφεί η τελευταία γραμμή σε ένα πίνακα.", - "percent": "τοις εκατόν", - "pixels": "pixels" -}; diff --git a/htmlarea/plugins/TableOperations/lang/en.js b/htmlarea/plugins/TableOperations/lang/en.js deleted file mode 100644 index 17d3101..0000000 --- a/htmlarea/plugins/TableOperations/lang/en.js +++ /dev/null @@ -1,90 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Mihai Bazon, http://dynarch.com/mishoo - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Align", - "All four sides": "All four sides", - "Background": "Background", - "Baseline": "Baseline", - "Border": "Border", - "Borders": "Borders", - "Bottom": "Bottom", - "CSS Style": "Style [CSS]", - "Caption": "Caption", - "Cell Properties": "Cell Properties", - "Center": "Center", - "Char": "Char", - "Collapsed borders": "Collapsed borders", - "Color": "Color", - "Description": "Description", - "FG Color": "FG Color", - "Float": "Float", - "Frames": "Frames", - "Height": "Height", - "How many columns would you like to merge?": "How many columns would you like to merge?", - "How many rows would you like to merge?": "How many rows would you like to merge?", - "Image URL": "Image URL", - "Justify": "Justify", - "Layout": "Layout", - "Left": "Left", - "Margin": "Margin", - "Middle": "Middle", - "No rules": "No rules", - "No sides": "No sides", - "None": "None", - "Padding": "Padding", - "Please click into some cell": "Please click into some cell", - "Right": "Right", - "Row Properties": "Row Properties", - "Rules will appear between all rows and columns": "Rules will appear between all rows and columns", - "Rules will appear between columns only": "Rules will appear between columns only", - "Rules will appear between rows only": "Rules will appear between rows only", - "Rules": "Rules", - "Spacing and padding": "Spacing and padding", - "Spacing": "Spacing", - "Summary": "Summary", - "TO-cell-delete": "Delete cell", - "TO-cell-insert-after": "Insert cell after", - "TO-cell-insert-before": "Insert cell before", - "TO-cell-merge": "Merge cells", - "TO-cell-prop": "Cell properties", - "TO-cell-split": "Split cell", - "TO-col-delete": "Delete column", - "TO-col-insert-after": "Insert column after", - "TO-col-insert-before": "Insert column before", - "TO-col-split": "Split column", - "TO-row-delete": "Delete row", - "TO-row-insert-above": "Insert row before", - "TO-row-insert-under": "Insert row after", - "TO-row-prop": "Row properties", - "TO-row-split": "Split row", - "TO-table-prop": "Table properties", - "Table Properties": "Table Properties", - "Text align": "Text align", - "The bottom side only": "The bottom side only", - "The left-hand side only": "The left-hand side only", - "The right and left sides only": "The right and left sides only", - "The right-hand side only": "The right-hand side only", - "The top and bottom sides only": "The top and bottom sides only", - "The top side only": "The top side only", - "Top": "Top", - "Unset color": "Unset color", - "Vertical align": "Vertical align", - "Width": "Width", - "not-del-last-cell": "HTMLArea cowardly refuses to delete the last cell in row.", - "not-del-last-col": "HTMLArea cowardly refuses to delete the last column in table.", - "not-del-last-row": "HTMLArea cowardly refuses to delete the last row in table.", - "percent": "percent", - "pixels": "pixels" -}; diff --git a/htmlarea/plugins/TableOperations/lang/fi.js b/htmlarea/plugins/TableOperations/lang/fi.js deleted file mode 100644 index 2af3541..0000000 --- a/htmlarea/plugins/TableOperations/lang/fi.js +++ /dev/null @@ -1,66 +0,0 @@ -TableOperations.I18N = { - "Align": "Kohdistus", - "All four sides": "Kaikki nelj sivua", - "Background": "Tausta", - "Baseline": "Takaraja", - "Border": "Reuna", - "Borders": "Reunat", - "Bottom": "Alle", - "CSS Style": "Tyyli [CSS]", - "Caption": "Otsikko", - "Cell Properties": "Solun asetukset", - "Center": "Keskelle", - "Char": "Merkki", - "Collapsed borders": "Luhistetut reunat", - "Color": "Vri", - "Description": "Kuvaus", - "FG Color": "FG Vri", - "Frames": "Kehykset", - "Image URL": "Kuvan osoite", - "Layout": "Sommittelu", - "Left": "Vasen", - "Margin": "Marginaali", - "Middle": "Keskelle", - "No rules": "Ei viivoja", - "No sides": "Ei sivuja", - "Padding": "Palstantyte", - "Right": "Oikea", - "Row Properties": "Rivin asetukset", - "Rules will appear between all rows and columns": "Viivat jokaisen rivin ja sarakkeen vlill", - "Rules will appear between columns only": "Viivat ainoastaan sarakkeiden vlill", - "Rules will appear between rows only": "Viivat ainoastaan rivien vlill", - "Rules": "Viivat", - "Spacing": "Palstatila", - "Summary": "Yhteenveto", - "TO-cell-delete": "Poista solu", - "TO-cell-insert-after": "Lis solu pern", - "TO-cell-insert-before": "Lis solu ennen", - "TO-cell-merge": "Yhdist solut", - "TO-cell-prop": "Solun asetukset", - "TO-cell-split": "Jaa solu", - "TO-col-delete": "Poista sarake", - "TO-col-insert-after": "Lis sarake pern", - "TO-col-insert-before": "Lis sarake ennen", - "TO-col-split": "Jaa sarake", - "TO-row-delete": "Poista rivi", - "TO-row-insert-above": "Lis rivi ylpuolelle", - "TO-row-insert-under": "Lis rivi alapuolelle", - "TO-row-prop": "Rivin asetukset", - "TO-row-split": "Jaa rivi", - "TO-table-prop": "Taulukon asetukset", - "Top": "Yls", - "Table Properties": "Taulukon asetukset", - "The bottom side only": "Ainoastaan alapuolelle", - "The left-hand side only": "Ainoastaan vasenreuna", - "The right and left sides only": "Oikea- ja vasenreuna", - "The right-hand side only": "Ainoastaan oikeareuna", - "The top and bottom sides only": "Yl- ja alapuoli.", - "The top side only": "Ainoastaan ylpuoli", - "Vertical align": "Vertikaali kohdistus", - "Width": "Leveys", - "not-del-last-cell": "Ei voida poistaa viimeist solua rivist.", - "not-del-last-col": "Ei voida poistaa viimeist saraketta taulusta.", - "not-del-last-row": "Ei voida poistaa viimeist rivi taulusta.", - "percent": "prosenttia", - "pixels": "pikseli" -}; diff --git a/htmlarea/plugins/TableOperations/lang/fr.js b/htmlarea/plugins/TableOperations/lang/fr.js deleted file mode 100644 index 1e7e5fc..0000000 --- a/htmlarea/plugins/TableOperations/lang/fr.js +++ /dev/null @@ -1,90 +0,0 @@ -// I18N constants - -// LANG: "fr", ENCODING: UTF-8 | ISO-8859-1 -// Author: Cédric Guillemette, http://www.ebdata.com - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Aligner", - "All four sides": "Quatre cotés", - "Background": "Arrière plan", - "Baseline": "Ligne de base", - "Border": "Bordure", - "Borders": "Bordures", - "Bottom": "Bas", - "CSS Style": "Style [CSS]", - "Caption": "Étiquette", - "Cell Properties": "Propriétés de cellule", - "Center": "Centre", - "Char": "Charactère", - "Collapsed borders": "Bordure effondrés", - "Color": "Couleur", - "Description": "Description", - "FG Color": "Couleur de face", - "Float": "Flotteur", - "Frames": "Vues", - "Height": "Largeur", - "How many columns would you like to merge?": "Combien de colonnes voulez-vous fusionner?", - "How many rows would you like to merge?": "Combien de rangées voulez-vous fusionner?", - "Image URL": "URL pour l'image", - "Justify": "Justifié", - "Layout": "Arrangement", - "Left": "Gauche", - "Margin": "Marge", - "Middle": "Milieu", - "No rules": "Aucun règlement", - "No sides": "Aucun côtés", - "None": "Aucun", - "Padding": "Remplissage", - "Please click into some cell": "Cliquer sur une cellule", - "Right": "Droit", - "Row Properties": "Propriétés de rangée", - "Rules will appear between all rows and columns": "Les règles vont apparaître entre les rangées et les cellules", - "Rules will appear between columns only": "Les règles vont apparaître entre les colonnes seulement", - "Rules will appear between rows only": "Les règles vont apparaître entre les rangées seulement", - "Rules": "Les règles", - "Spacing and padding": "Espacement et remplissage", - "Spacing": "Espacement", - "Summary": "Sommaire", - "TO-cell-delete": "Supprimer une cellule", - "TO-cell-insert-after": "Insérer une cellule après", - "TO-cell-insert-before": "Insérer une cellule avant", - "TO-cell-merge": "Fusionner les cellules", - "TO-cell-prop": "Cell properties", - "TO-cell-split": "Diviser la cellule", - "TO-col-delete": "Supprimer la colonne", - "TO-col-insert-after": "Insérer une colonne après", - "TO-col-insert-before": "Insérer une colonne avant", - "TO-col-split": "Diviser une colonne", - "TO-row-delete": "Supprimer une rangée", - "TO-row-insert-above": "Insérer une rangée avant", - "TO-row-insert-under": "Insérer une rangée après", - "TO-row-prop": "Propriétés de rangée", - "TO-row-split": "Diviser la rangée", - "TO-table-prop": "Propriétés de table", - "Table Properties": "Propriétés de table", - "Text align": "Aligner le texte", - "The bottom side only": "Côté du bas seulement", - "The left-hand side only": "Côté gauche seulement", - "The right and left sides only": "Côté gauche et droit seulement", - "The right-hand side only": "Côté droit seulement", - "The top and bottom sides only": "Côté haut et bas seulement", - "The top side only": "Côté haut seulement", - "Top": "Haut", - "Unset color": "Enlever la couleur", - "Vertical align": "Alignement vertical", - "Width": "Longeur", - "not-del-last-cell": "HTMLArea refuse de supprimer la dernière cellule de la rangée.", - "not-del-last-col": "HTMLArea refuse de supprimer la dernière colonne de la table.", - "not-del-last-row": "HTMLArea refuse de supprimer la dernière rangée de la table", - "percent": "pourcentage", - "pixels": "pixels" -}; diff --git a/htmlarea/plugins/TableOperations/lang/he.js b/htmlarea/plugins/TableOperations/lang/he.js deleted file mode 100644 index b685c7b..0000000 --- a/htmlarea/plugins/TableOperations/lang/he.js +++ /dev/null @@ -1,90 +0,0 @@ -// I18N constants - -// LANG: "he", ENCODING: UTF-8 -// Author: Liron Newman, http://www.eesh.net, - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "ישור", - "All four sides": "כל ארבעת הצדדים", - "Background": "רקע", - "Baseline": "קו בסיס", - "Border": "גבול", - "Borders": "גבולות", - "Bottom": "תחתון", - "CSS Style": "סגנון [CSS]", - "Caption": "כותרת", - "Cell Properties": "מאפייני תא", - "Center": "מרכז", - "Char": "תו", - "Collapsed borders": "גבולות קורסים", - "Color": "צבע", - "Description": "תיאור", - "FG Color": "צבע קידמה", - "Float": "מרחף", - "Frames": "מסגרות", - "Height": "גובה", - "How many columns would you like to merge?": "כמה טורים ברצונך למזג?", - "How many rows would you like to merge?": "כמה שורות ברצונך למזג?", - "Image URL": "URL התמונה", - "Justify": "ישור", - "Layout": "פריסה", - "Left": "שמאל", - "Margin": "שוליים", - "Middle": "אמצע", - "No rules": "ללא קווים", - "No sides": "ללא צדדים", - "None": "אין", - "Padding": "ריווח בשוליים", - "Please click into some cell": "אנא לחץ על תא כלשהו", - "Right": "ימין", - "Row Properties": "מאפייני שורה", - "Rules will appear between all rows and columns": "קווים יופיעו בין כל השורות והטורים", - "Rules will appear between columns only": "קווים יופיעו בין טורים בלבד", - "Rules will appear between rows only": "קווים יופיעו בין שורות בלבד", - "Rules": "קווים", - "Spacing and padding": "ריווח ושוליים", - "Spacing": "ריווח", - "Summary": "סיכום", - "TO-cell-delete": "מחק תא", - "TO-cell-insert-after": "הכנס תא אחרי", - "TO-cell-insert-before": "הכנס תא לפני", - "TO-cell-merge": "מזג תאים", - "TO-cell-prop": "מאפייני תא", - "TO-cell-split": "פצל תא", - "TO-col-delete": "מחק טור", - "TO-col-insert-after": "הכנס טור אחרי", - "TO-col-insert-before": "הכנס טור לפני", - "TO-col-split": "פצל טור", - "TO-row-delete": "מחק שורה", - "TO-row-insert-above": "הכנס שורה לפני", - "TO-row-insert-under": "הכנס שורה אחרי", - "TO-row-prop": "מאפייני שורה", - "TO-row-split": "פצל שורה", - "TO-table-prop": "מאפייני טבלה", - "Table Properties": "מאפייני טבלה", - "Text align": "ישור טקסט", - "The bottom side only": "הצד התחתון בלבד", - "The left-hand side only": "הצד השמאלי בלבד", - "The right and left sides only": "הצדדים הימני והשמאלי בלבד", - "The right-hand side only": "הצד הימני בלבד", - "The top and bottom sides only": "הצדדים העליון והתחתון בלבד", - "The top side only": "הצד העליון בלבד", - "Top": "עליון", - "Unset color": "צבע לא נבחר", - "Vertical align": "יישור אנכי", - "Width": "רוחב", - "not-del-last-cell": "HTMLArea מסרב בפחדנות למחוק את התא האחרון בשורה.", - "not-del-last-col": "HTMLArea מסרב בפחדנות למחוק את הטור האחרון בטבלה.", - "not-del-last-row": "HTMLArea מסרב בפחדנות למחוק את השורה האחרונה בטבלה.", - "percent": "אחוז", - "pixels": "פיקסלים" -}; diff --git a/htmlarea/plugins/TableOperations/lang/hu.js b/htmlarea/plugins/TableOperations/lang/hu.js deleted file mode 100644 index 58b66f6..0000000 --- a/htmlarea/plugins/TableOperations/lang/hu.js +++ /dev/null @@ -1,63 +0,0 @@ -// I18N constants - -// LANG: "hu", ENCODING: UTF-8 -// Author: Miklós Somogyi, - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -HTMLArea.I18N = { - - // the following should be the filename without .js extension - // it will be used for automatically load plugin language. - lang: "hu", - - tooltips: { - bold: "Félkövér", - italic: "Dőlt", - underline: "Aláhúzott", - strikethrough: "Áthúzott", - subscript: "Alsó index", - superscript: "Felső index", - justifyleft: "Balra zárt", - justifycenter: "Középre zárt", - justifyright: "Jobbra zárt", - justifyfull: "Sorkizárt", - orderedlist: "Számozott lista", - unorderedlist: "Számozatlan lista", - outdent: "Behúzás csökkentése", - indent: "Behúzás növelése", - forecolor: "Karakterszín", - hilitecolor: "Háttérszín", - horizontalrule: "Elválasztó vonal", - createlink: "Hiperhivatkozás beszúrása", - insertimage: "Kép beszúrása", - inserttable: "Táblázat beszúrása", - htmlmode: "HTML forrás be/ki", - popupeditor: "Szerkesztő külön ablakban", - about: "Névjegy", - showhelp: "Súgó", - textindicator: "Aktuális stílus", - undo: "Visszavonás", - redo: "Újra végrehajtás", - cut: "Kivágás", - copy: "Másolás", - paste: "Beillesztés" - }, - - buttons: { - "ok": "Rendben", - "cancel": "Mégsem" - }, - - msg: { - "Path": "Hierarchia", - "TEXT_MODE": "Forrás mód. Visszaváltás [<>] gomb" - } -}; diff --git a/htmlarea/plugins/TableOperations/lang/it.js b/htmlarea/plugins/TableOperations/lang/it.js deleted file mode 100644 index 2025162..0000000 --- a/htmlarea/plugins/TableOperations/lang/it.js +++ /dev/null @@ -1,81 +0,0 @@ -// I18N constants - -// LANG: "it", ENCODING: UTF-8 | ISO-8859-1 -// Author: Fabio Rotondo - -TableOperations.I18N = { - "Align": "Allinea", - "All four sides": "Tutti e quattro i lati", - "Background": "Sfondo", - "Baseline": "Allineamento", - "Border": "Bordo", - "Borders": "Bordi", - "Bottom": "Basso", - "CSS Style": "Stile [CSS]", - "Caption": "Titolo", - "Cell Properties": "Proprietà della Cella", - "Center": "Centra", - "Char": "Carattere", - "Collapsed borders": "Bordi chiusi", - "Color": "Colore", - "Description": "Descrizione", - "FG Color": "Colore Principale", - "Float": "Fluttuante", - "Frames": "Frames", - "Height": "Altezza", - "How many columns would you like to merge?": "Quante colonne vuoi unire?", - "How many rows would you like to merge?": "Quante righe vuoi unire?", - "Image URL": "URL dell'Immagine", - "Justify": "Justifica", - "Layout": "Layout", - "Left": "Sinistra", - "Margin": "Margine", - "Middle": "Centrale", - "No rules": "Nessun righello", - "No sides": "Nessun lato", - "None": "Nulla", - "Padding": "Padding", - "Please click into some cell": "Per favore, clicca in una cella", - "Right": "Destra", - "Row Properties": "Proprietà della Riga", - "Rules will appear between all rows and columns": "Le linee appariranno tra tutte le righe e colonne", - "Rules will appear between columns only": "Le linee appariranno solo tra le colonne", - "Rules will appear between rows only": "Le linee appariranno solo tra le righe", - "Rules": "Linee", - "Spacing and padding": "Spaziatura e Padding", - "Spacing": "Spaziatura", - "Summary": "Sommario", - "TO-cell-delete": "Cancella cella", - "TO-cell-insert-after": "Inserisci cella dopo", - "TO-cell-insert-before": "Inserisci cella prima", - "TO-cell-merge": "Unisci celle", - "TO-cell-prop": "Proprietà della cella", - "TO-cell-split": "Dividi cella", - "TO-col-delete": "Cancella colonna", - "TO-col-insert-after": "Inserisci colonna dopo", - "TO-col-insert-before": "Inserisci colonna prima", - "TO-col-split": "Dividi colonna", - "TO-row-delete": "Cancella riga", - "TO-row-insert-above": "Inserisci riga prima", - "TO-row-insert-under": "Inserisci riga dopo", - "TO-row-prop": "Proprietà della riga", - "TO-row-split": "Dividi riga", - "TO-table-prop": "Proprietà della Tabella", - "Table Properties": "Proprietà della Tabella", - "Text align": "Allineamento del Testo", - "The bottom side only": "Solo la parte inferiore", - "The left-hand side only": "Solo la parte sinistra", - "The right and left sides only": "Solo destra e sinistra", - "The right-hand side only": "Solo la parte destra", - "The top and bottom sides only": "Solo sopra e sotto", - "The top side only": "Solo la parte sopra", - "Top": "Alto", - "Unset color": "Rimuovi colore", - "Vertical align": "Allineamento verticale", - "Width": "Larghezza", - "not-del-last-cell": "HTMLArea si rifiuta codardamente di cancellare l'ultima cella nella riga.", - "not-del-last-col": "HTMLArea si rifiuta codardamente di cancellare l'ultima colonna nella tabella.", - "not-del-last-row": "HTMLArea si rifiuta codardamente di cancellare l'ultima riga nella tabella.", - "percent": "percento", - "pixels": "pixels" -}; diff --git a/htmlarea/plugins/TableOperations/lang/nl.js b/htmlarea/plugins/TableOperations/lang/nl.js deleted file mode 100644 index 744ab16..0000000 --- a/htmlarea/plugins/TableOperations/lang/nl.js +++ /dev/null @@ -1,90 +0,0 @@ -// I18N constants - -// LANG: "nl", ENCODING: UTF-8 | ISO-8859-1 -// Author: Michel Weegeerink (info@mmc-shop.nl), http://mmc-shop.nl - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Uitlijning", - "All four sides": "Alle 4 zijden", - "Background": "Achtergrond", - "Baseline": "Basis", - "Border": "Rand", - "Borders": "Randen", - "Bottom": "Onder", - "CSS Style": "CSS Style", - "Caption": "Opmerking", - "Cell Properties": "Celeigenschappen", - "Center": "Centreren", - "Char": "Karakter", - "Collapsed borders": "Geen randen", - "Color": "Kleur", - "Description": "Omschrijving", - "FG Color": "Voorgrond", - "Float": "Zwevend", - "Frames": "Frames", - "Height": "Hoogte", - "How many columns would you like to merge?": "Hoeveel kolommen wilt u samenvoegen?", - "How many rows would you like to merge?": "Hoeveel rijen wilt u samenvoegen?", - "Image URL": "Afbeelding URL", - "Justify": "Uitvullen", - "Layout": "Opmaak", - "Left": "Links", - "Margin": "Marge", - "Middle": "Midden", - "No rules": "Geen regels", - "No sides": "Geen zijlijnen", - "None": "Geen", - "Padding": "Celmarge", - "Please click into some cell": "Klik in een cel a.u.b.", - "Right": "Rechts", - "Row Properties": "Rijeigenschappen", - "Rules will appear between all rows and columns": "Regels verschijnen tussen alle rijen en kolommen", - "Rules will appear between columns only": "Regels verschijnen enkel tussen de kolommen", - "Rules will appear between rows only": "Regels verschijnen enkel tussen de rijen", - "Rules": "Regels", - "Spacing and padding": "Celmarge en afstand tussen cellen", - "Spacing": "marge", - "Summary": "Overzicht", - "TO-cell-delete": "Cel verwijderen", - "TO-cell-insert-after": "Voeg cel toe achter", - "TO-cell-insert-before": "Voeg cel toe voor", - "TO-cell-merge": "Cellen samenvoegen", - "TO-cell-prop": "Celeigenschappen", - "TO-cell-split": "Cel splitsen", - "TO-col-delete": "Kolom verwijderen", - "TO-col-insert-after": "Kolom invoegen achter", - "TO-col-insert-before": "Kolom invoegen voor", - "TO-col-split": "Kolom splitsen", - "TO-row-delete": "Rij verwijderen", - "TO-row-insert-above": "Rij invoegen boven", - "TO-row-insert-under": "Rij invoegen onder", - "TO-row-prop": "Rij eigenschappen", - "TO-row-split": "Rij splitsen", - "TO-table-prop": "Tabel eigenschappen", - "Table Properties": "Tabel eigenschappen", - "Text align": "Text uitlijning", - "The bottom side only": "Enkel aan de onderkant", - "The left-hand side only": "Enkel aan de linkerkant", - "The right and left sides only": "Enkel aan de linker en rechterkant", - "The right-hand side only": "Enkel aan de rechterkant", - "The top and bottom sides only": "Enkel aan de bovenen onderkant", - "The top side only": "Enkel aan de bovenkant", - "Top": "Boven", - "Unset color": "Wis kleur", - "Vertical align": "Vertikale uitlijning", - "Width": "Breedte", - "not-del-last-cell": "HTMLArea kan de laatste cel in deze tabel niet verwijderen.", - "not-del-last-col": "HTMLArea kan de laatste kolom in deze tabel niet verwijderen.", - "not-del-last-row": "HTMLArea kan de laatste rij in deze tabel niet verwijderen.", - "percent": "procent", - "pixels": "pixels" -}; diff --git a/htmlarea/plugins/TableOperations/lang/no.js b/htmlarea/plugins/TableOperations/lang/no.js deleted file mode 100644 index 015fa3b..0000000 --- a/htmlarea/plugins/TableOperations/lang/no.js +++ /dev/null @@ -1,91 +0,0 @@ -// I18N constants - -// LANG: "en", ENCODING: UTF-8 | ISO-8859-1 -// Author: Mihai Bazon, -// translated into Norwegia: ses@online.no 11.11.03 - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Juster", - "All four sides": "Alle fire sider", - "Background": "Bakgrund", - "Baseline": "Grunnlinje", - "Border": "Kantlinje", - "Borders": "Kantlinjer", - "Bottom": "Bunn", - "CSS Style": "Stil [CSS]", - "Caption": "Overskrift", - "Cell Properties": "Celleegenskaper", - "Center": "Sentrer", - "Char": "Tegn", - "Collapsed borders": "Fjern kantlinjer", - "Color": "Farge", - "Description": "Beskrivelse", - "FG Color": "FG farge", - "Float": "Flytende", - "Frames": "rammer", - "Height": "Hyde", - "How many columns would you like to merge?": "Hvor mange kolonner vil du sl sammen?", - "How many rows would you like to merge?": "Hvor mange rader vil du sl sammen?", - "Image URL": "Bildets URL", - "Justify": "Juster", - "Layout": "Layout", - "Left": "Venstre", - "Margin": "Marg", - "Middle": "Midten", - "No rules": "Ingen linjal", - "No sides": "Ingen sider", - "None": "Ingen", - "Padding": "Luft", - "Please click into some cell": "Klikk i en eller annen celle", - "Right": "Hyre", - "Row Properties": "Egenskaper for rad", - "Rules will appear between all rows and columns": "Linjer vil synes mellom alle rader og kolonner", - "Rules will appear between columns only": "Linjer vil synes kun mellom kolonner", - "Rules will appear between rows only": "Linjer vil synes kun mellom rader", - "Rules": "Linjer", - "Spacing and padding": "Luft", - "Spacing": "Luft", - "Summary": "Sammendrag", - "TO-cell-delete": "Slett celle", - "TO-cell-insert-after": "Sett inn celle etter", - "TO-cell-insert-before": "Sett inn celle foran", - "TO-cell-merge": "Sl sammen celler", - "TO-cell-prop": "Egenskaper for celle", - "TO-cell-split": "Del celle", - "TO-col-delete": "Slett kolonne", - "TO-col-insert-after": "Skyt inn kolonne etter", - "TO-col-insert-before": "Skyt inn kolonne fr", - "TO-col-split": "Del kolonne", - "TO-row-delete": "Slett rad", - "TO-row-insert-above": "Skyt inn rad foran", - "TO-row-insert-under": "Skyt inn rad etter", - "TO-row-prop": "Egenskaper for rad", - "TO-row-split": "Del rad", - "TO-table-prop": "Tabellegenskaper", - "Table Properties": "Tabellegenskaper", - "Text align": "Juster tekst", - "The bottom side only": "Bunnen kun", - "The left-hand side only": "Venstresiden kun", - "The right and left sides only": "Hyre- og venstresiden kun", - "The right-hand side only": "Hyresiden kun", - "The top and bottom sides only": "The top and bottom sides only", - "The top side only": "Overkanten kun", - "Top": "Overkant", - "Unset color": "Ikke-bestemt farge", - "Vertical align": "Vertikal justering", - "Width": "Bredde", - "not-del-last-cell": "HTMLArea nekter slette siste cellen i tabellen.", - "not-del-last-col": "HTMLArea nekter slette siste kolonnen i tabellen.", - "not-del-last-row": "HTMLArea nekter slette siste raden i tabellen.", - "percent": "prosent", - "pixels": "billedpunkter" -}; diff --git a/htmlarea/plugins/TableOperations/lang/ro.js b/htmlarea/plugins/TableOperations/lang/ro.js deleted file mode 100644 index beb2260..0000000 --- a/htmlarea/plugins/TableOperations/lang/ro.js +++ /dev/null @@ -1,90 +0,0 @@ -// I18N constants - -// LANG: "ro", ENCODING: UTF-8 -// Author: Mihai Bazon, http://dynarch.com/mishoo - -// FOR TRANSLATORS: -// -// 1. PLEASE PUT YOUR CONTACT INFO IN THE ABOVE LINE -// (at least a valid email address) -// -// 2. PLEASE TRY TO USE UTF-8 FOR ENCODING; -// (if this is not possible, please include a comment -// that states what encoding is necessary.) - -TableOperations.I18N = { - "Align": "Aliniere", - "All four sides": "Toate părţile", - "Background": "Fundal", - "Baseline": "Baseline", - "Border": "Chenar", - "Borders": "Chenare", - "Bottom": "Jos", - "CSS Style": "Stil [CSS]", - "Caption": "Titlu de tabel", - "Cell Properties": "Proprietăţile celulei", - "Center": "Centru", - "Char": "Caracter", - "Collapsed borders": "Chenare asimilate", - "Color": "Culoare", - "Description": "Descriere", - "FG Color": "Culoare text", - "Float": "Poziţie", - "Frames": "Chenare", - "Height": "Înălţimea", - "How many columns would you like to merge?": "Câte coloane vrei să uneşti?", - "How many rows would you like to merge?": "Câte linii vrei să uneşti?", - "Image URL": "URL-ul imaginii", - "Justify": "Justify", - "Layout": "Aranjament", - "Left": "Stânga", - "Margin": "Margine", - "Middle": "Mijloc", - "No rules": "Fără linii", - "No sides": "Fără părţi", - "None": "Nimic", - "Padding": "Spaţiere", - "Please click into some cell": "Vă rog să daţi click într-o celulă", - "Right": "Dreapta", - "Row Properties": "Proprietăţile liniei", - "Rules will appear between all rows and columns": "Vor apărea linii între toate rândurile şi coloanele", - "Rules will appear between columns only": "Vor apărea doar linii verticale", - "Rules will appear between rows only": "Vor apărea doar linii orizontale", - "Rules": "Linii", - "Spacing and padding": "Spaţierea", - "Spacing": "Între celule", - "Summary": "Sumar", - "TO-cell-delete": "Şterge celula", - "TO-cell-insert-after": "Inserează o celulă la dreapta", - "TO-cell-insert-before": "Inserează o celulă la stânga", - "TO-cell-merge": "Uneşte celulele", - "TO-cell-prop": "Proprietăţile celulei", - "TO-cell-split": "Împarte celula", - "TO-col-delete": "Şterge coloana", - "TO-col-insert-after": "Inserează o coloană la dreapta", - "TO-col-insert-before": "Inserează o coloană la stânga", - "TO-col-split": "Împarte coloana", - "TO-row-delete": "Şterge rândul", - "TO-row-insert-above": "Inserează un rând înainte", - "TO-row-insert-under": "Inserează un rând după", - "TO-row-prop": "Proprietăţile rândului", - "TO-row-split": "Împarte rândul", - "TO-table-prop": "Proprietăţile tabelei", - "Table Properties": "Proprietăţile tabelei", - "Text align": "Aliniere", - "The bottom side only": "Doar partea de jos", - "The left-hand side only": "Doar partea din stânga", - "The right and left sides only": "Partea din stânga şi cea din dreapta", - "The right-hand side only": "Doar partea din dreapta", - "The top and bottom sides only": "Partea de sus si cea de jos", - "The top side only": "Doar partea de sus", - "Top": "Sus", - "Unset color": "Dezactivează culoarea", - "Vertical align": "Aliniere pe verticală", - "Width": "Lăţime", - "not-del-last-cell": "HTMLArea refuză cu laşitate să şteargă ultima celulă din rând.", - "not-del-last-col": "HTMLArea refuză cu laşitate să şteargă ultima coloamă din tabela.", - "not-del-last-row": "HTMLArea refuză cu laşitate să şteargă ultimul rând din tabela.", - "percent": "procente", - "pixels": "pixeli" -}; diff --git a/htmlarea/plugins/TableOperations/table-operations.js b/htmlarea/plugins/TableOperations/table-operations.js deleted file mode 100644 index 540bd71..0000000 --- a/htmlarea/plugins/TableOperations/table-operations.js +++ /dev/null @@ -1,1113 +0,0 @@ -// Table Operations Plugin for HTMLArea-3.0 -// Implementation by Mihai Bazon. Sponsored by http://www.zapatec.com -// -// Copyright (c) dynarch.com 2003-2005 -// This copyright notice must stay intact for use. -// -// $Id$ - -// Object that will encapsulate all the table operations provided by -// HTMLArea-3.0 (except "insert table" which is included in the main file) -function TableOperations(editor) { - this.editor = editor; - - var cfg = editor.config; - var tt = TableOperations.I18N; - var bl = TableOperations.btnList; - var self = this; - - // register the toolbar buttons provided by this plugin - var toolbar = ["linebreak"]; - for (var i = 0; i < bl.length; ++i) { - var btn = bl[i]; - if (!btn) { - toolbar.push("separator"); - } else { - var id = "TO-" + btn[0]; - cfg.registerButton(id, tt[id], editor.imgURL(btn[0] + ".gif", "TableOperations"), false, - function(editor, id) { - // dispatch button press event - self.buttonPress(editor, id); - }, btn[1]); - toolbar.push(id); - } - } - - // add a new line in the toolbar - cfg.toolbar.push(toolbar); -}; - -TableOperations._pluginInfo = { - name : "TableOperations", - version : "1.0", - developer : "Mihai Bazon", - developer_url : "http://dynarch.com/mishoo/", - c_owner : "Mihai Bazon", - sponsor : "Zapatec Inc.", - sponsor_url : "http://www.bloki.com", - license : "htmlArea" -}; - -/************************ - * UTILITIES - ************************/ - -// retrieves the closest element having the specified tagName in the list of -// ancestors of the current selection/caret. -TableOperations.prototype.getClosest = function(tagName) { - var editor = this.editor; - var ancestors = editor.getAllAncestors(); - var ret = null; - tagName = ("" + tagName).toLowerCase(); - for (var i = 0; i < ancestors.length; ++i) { - var el = ancestors[i]; - if (el.tagName.toLowerCase() == tagName) { - ret = el; - break; - } - } - return ret; -}; - -// this function requires the file PopupDiv/PopupWin to be loaded from browser -TableOperations.prototype.dialogTableProperties = function() { - var i18n = TableOperations.I18N; - // retrieve existing values - var table = this.getClosest("table"); - // this.editor.selectNodeContents(table); - // this.editor.updateToolbar(); - - var dialog = new PopupWin(this.editor, i18n["Table Properties"], function(dialog, params) { - TableOperations.processStyle(params, table); - for (var i in params) { - var val = params[i]; - switch (i) { - case "f_caption": - if (/\S/.test(val)) { - // contains non white-space characters - var caption = table.getElementsByTagName("caption")[0]; - if (!caption) { - caption = dialog.editor._doc.createElement("caption"); - table.insertBefore(caption, table.firstChild); - } - caption.innerHTML = val; - } else { - // search for caption and delete it if found - var caption = table.getElementsByTagName("caption")[0]; - if (caption) { - caption.parentNode.removeChild(caption); - } - } - break; - case "f_summary": - table.summary = val; - break; - case "f_width": - table.style.width = ("" + val) + params.f_unit; - break; - case "f_align": - table.align = val; - break; - case "f_spacing": - table.cellSpacing = val; - break; - case "f_padding": - table.cellPadding = val; - break; - case "f_borders": - table.border = val; - break; - case "f_frames": - table.frame = val; - break; - case "f_rules": - table.rules = val; - break; - } - } - // various workarounds to refresh the table display (Gecko, - // what's going on?! do not disappoint me!) - dialog.editor.forceRedraw(); - dialog.editor.focusEditor(); - dialog.editor.updateToolbar(); - var save_collapse = table.style.borderCollapse; - table.style.borderCollapse = "collapse"; - table.style.borderCollapse = "separate"; - table.style.borderCollapse = save_collapse; - }, - - // this function gets called when the dialog needs to be initialized - function (dialog) { - - var f_caption = ""; - var capel = table.getElementsByTagName("caption")[0]; - if (capel) { - f_caption = capel.innerHTML; - } - var f_summary = table.summary; - var f_width = parseInt(table.style.width); - isNaN(f_width) && (f_width = ""); - var f_unit = /%/.test(table.style.width) ? 'percent' : 'pixels'; - var f_align = table.align; - var f_spacing = table.cellSpacing; - var f_padding = table.cellPadding; - var f_borders = table.border; - var f_frames = table.frame; - var f_rules = table.rules; - - function selected(val) { - return val ? " selected" : ""; - }; - - // dialog contents - dialog.content.style.width = "400px"; - dialog.content.innerHTML = " \ -
" + i18n["Table Properties"] + "\ -
\ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ -
\ -
" + i18n["Description"] + " \ - \ - \ - \ - \ - \ - \ - \ - \ -
" + i18n["Caption"] + ":
" + i18n["Summary"] + ":
\ -
\ -
\ -
" + i18n["Spacing and padding"] + " \ - \ - \ - \ - \ - \ -
" + i18n["Spacing"] + ":  " + i18n["Padding"] + ":\ -   " + i18n["pixels"] + "\ -
\ -
\ -
\ -
Frame and borders \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ -
" + i18n["Borders"] + ":   " + i18n["pixels"] + "
" + i18n["Frames"] + ": \ - \ -
" + i18n["Rules"] + ": \ - \ -
\ -
\ -
\ -"; - var st_prop = TableOperations.createStyleFieldset(dialog.doc, dialog.editor, table); - var p = dialog.doc.getElementById("--HA-style"); - p.appendChild(st_prop); - var st_layout = TableOperations.createStyleLayoutFieldset(dialog.doc, dialog.editor, table); - p = dialog.doc.getElementById("--HA-layout"); - p.appendChild(st_layout); - dialog.modal = true; - dialog.addButtons("ok", "cancel"); - dialog.showAtElement(dialog.editor._iframe, "c"); - }); -}; - -// this function requires the file PopupDiv/PopupWin to be loaded from browser -TableOperations.prototype.dialogRowCellProperties = function(cell) { - var i18n = TableOperations.I18N; - // retrieve existing values - var element = this.getClosest(cell ? "td" : "tr"); - var table = this.getClosest("table"); - // this.editor.selectNodeContents(element); - // this.editor.updateToolbar(); - - var dialog = new PopupWin(this.editor, i18n[cell ? "Cell Properties" : "Row Properties"], function(dialog, params) { - TableOperations.processStyle(params, element); - for (var i in params) { - var val = params[i]; - switch (i) { - case "f_align": - element.align = val; - break; - case "f_char": - element.ch = val; - break; - case "f_valign": - element.vAlign = val; - break; - } - } - // various workarounds to refresh the table display (Gecko, - // what's going on?! do not disappoint me!) - dialog.editor.forceRedraw(); - dialog.editor.focusEditor(); - dialog.editor.updateToolbar(); - var save_collapse = table.style.borderCollapse; - table.style.borderCollapse = "collapse"; - table.style.borderCollapse = "separate"; - table.style.borderCollapse = save_collapse; - }, - - // this function gets called when the dialog needs to be initialized - function (dialog) { - - var f_align = element.align; - var f_valign = element.vAlign; - var f_char = element.ch; - - function selected(val) { - return val ? " selected" : ""; - }; - - // dialog contents - dialog.content.style.width = "400px"; - dialog.content.innerHTML = " \ -
" + i18n[cell ? "Cell Properties" : "Row Properties"] + "
\ - \ - \ - \ - \ - \ - \ - \ -
\ -
\ -"; - var st_prop = TableOperations.createStyleFieldset(dialog.doc, dialog.editor, element); - var p = dialog.doc.getElementById("--HA-style"); - p.appendChild(st_prop); - var st_layout = TableOperations.createStyleLayoutFieldset(dialog.doc, dialog.editor, element); - p = dialog.doc.getElementById("--HA-layout"); - p.appendChild(st_layout); - dialog.modal = true; - dialog.addButtons("ok", "cancel"); - dialog.showAtElement(dialog.editor._iframe, "c"); - }); -}; - -// this function gets called when some button from the TableOperations toolbar -// was pressed. -TableOperations.prototype.buttonPress = function(editor, button_id) { - this.editor = editor; - var mozbr = HTMLArea.is_gecko ? "
" : ""; - var i18n = TableOperations.I18N; - - // helper function that clears the content in a table row - function clearRow(tr) { - var tds = tr.getElementsByTagName("td"); - for (var i = tds.length; --i >= 0;) { - var td = tds[i]; - td.rowSpan = 1; - td.innerHTML = mozbr; - } - }; - - function splitRow(td) { - var n = parseInt("" + td.rowSpan); - var nc = parseInt("" + td.colSpan); - td.rowSpan = 1; - tr = td.parentNode; - var itr = tr.rowIndex; - var trs = tr.parentNode.rows; - var index = td.cellIndex; - while (--n > 0) { - tr = trs[++itr]; - var otd = editor._doc.createElement("td"); - otd.colSpan = td.colSpan; - otd.innerHTML = mozbr; - tr.insertBefore(otd, tr.cells[index]); - } - editor.forceRedraw(); - editor.updateToolbar(); - }; - - function splitCol(td) { - var nc = parseInt("" + td.colSpan); - td.colSpan = 1; - tr = td.parentNode; - var ref = td.nextSibling; - while (--nc > 0) { - var otd = editor._doc.createElement("td"); - otd.rowSpan = td.rowSpan; - otd.innerHTML = mozbr; - tr.insertBefore(otd, ref); - } - editor.forceRedraw(); - editor.updateToolbar(); - }; - - function splitCell(td) { - var nc = parseInt("" + td.colSpan); - splitCol(td); - var items = td.parentNode.cells; - var index = td.cellIndex; - while (nc-- > 0) { - splitRow(items[index++]); - } - }; - - function selectNextNode(el) { - var node = el.nextSibling; - while (node && node.nodeType != 1) { - node = node.nextSibling; - } - if (!node) { - node = el.previousSibling; - while (node && node.nodeType != 1) { - node = node.previousSibling; - } - } - if (!node) { - node = el.parentNode; - } - editor.selectNodeContents(node); - }; - - switch (button_id) { - // ROWS - - case "TO-row-insert-above": - case "TO-row-insert-under": - var tr = this.getClosest("tr"); - if (!tr) { - break; - } - var otr = tr.cloneNode(true); - clearRow(otr); - tr.parentNode.insertBefore(otr, /under/.test(button_id) ? tr.nextSibling : tr); - editor.forceRedraw(); - editor.focusEditor(); - break; - case "TO-row-delete": - var tr = this.getClosest("tr"); - if (!tr) { - break; - } - var par = tr.parentNode; - if (par.rows.length == 1) { - alert(i18n["not-del-last-row"]); - break; - } - // set the caret first to a position that doesn't - // disappear. - selectNextNode(tr); - par.removeChild(tr); - editor.forceRedraw(); - editor.focusEditor(); - editor.updateToolbar(); - break; - case "TO-row-split": - var td = this.getClosest("td"); - if (!td) { - break; - } - splitRow(td); - break; - - // COLUMNS - - case "TO-col-insert-before": - case "TO-col-insert-after": - var td = this.getClosest("td"); - if (!td) { - break; - } - var rows = td.parentNode.parentNode.rows; - var index = td.cellIndex; - for (var i = rows.length; --i >= 0;) { - var tr = rows[i]; - var ref = tr.cells[index + (/after/.test(button_id) ? 1 : 0)]; - var otd = editor._doc.createElement("td"); - otd.innerHTML = mozbr; - tr.insertBefore(otd, ref); - } - editor.focusEditor(); - break; - case "TO-col-split": - var td = this.getClosest("td"); - if (!td) { - break; - } - splitCol(td); - break; - case "TO-col-delete": - var td = this.getClosest("td"); - if (!td) { - break; - } - var index = td.cellIndex; - if (td.parentNode.cells.length == 1) { - alert(i18n["not-del-last-col"]); - break; - } - // set the caret first to a position that doesn't disappear - selectNextNode(td); - var rows = td.parentNode.parentNode.rows; - for (var i = rows.length; --i >= 0;) { - var tr = rows[i]; - tr.removeChild(tr.cells[index]); - } - editor.forceRedraw(); - editor.focusEditor(); - editor.updateToolbar(); - break; - - // CELLS - - case "TO-cell-split": - var td = this.getClosest("td"); - if (!td) { - break; - } - splitCell(td); - break; - case "TO-cell-insert-before": - case "TO-cell-insert-after": - var td = this.getClosest("td"); - if (!td) { - break; - } - var tr = td.parentNode; - var otd = editor._doc.createElement("td"); - otd.innerHTML = mozbr; - tr.insertBefore(otd, /after/.test(button_id) ? td.nextSibling : td); - editor.forceRedraw(); - editor.focusEditor(); - break; - case "TO-cell-delete": - var td = this.getClosest("td"); - if (!td) { - break; - } - if (td.parentNode.cells.length == 1) { - alert(i18n["not-del-last-cell"]); - break; - } - // set the caret first to a position that doesn't disappear - selectNextNode(td); - td.parentNode.removeChild(td); - editor.forceRedraw(); - editor.updateToolbar(); - break; - case "TO-cell-merge": - // !! FIXME: Mozilla specific !! - var sel = editor._getSelection(); - var range, i = 0; - var rows = []; - var row = null; - var cells = null; - if (!HTMLArea.is_ie) { - try { - while (range = sel.getRangeAt(i++)) { - var td = range.startContainer.childNodes[range.startOffset]; - if (td.parentNode != row) { - row = td.parentNode; - (cells) && rows.push(cells); - cells = []; - } - cells.push(td); - } - } catch(e) {/* finished walking through selection */} - rows.push(cells); - } else { - // Internet Explorer "browser" - var td = this.getClosest("td"); - if (!td) { - alert(i18n["Please click into some cell"]); - break; - } - var tr = td.parentElement; - var no_cols = prompt(i18n["How many columns would you like to merge?"], 2); - if (!no_cols) { - // cancelled - break; - } - var no_rows = prompt(i18n["How many rows would you like to merge?"], 2); - if (!no_rows) { - // cancelled - break; - } - var cell_index = td.cellIndex; - while (no_rows-- > 0) { - td = tr.cells[cell_index]; - cells = [td]; - for (var i = 1; i < no_cols; ++i) { - td = td.nextSibling; - if (!td) { - break; - } - cells.push(td); - } - rows.push(cells); - tr = tr.nextSibling; - if (!tr) { - break; - } - } - } - var HTML = ""; - for (i = 0; i < rows.length; ++i) { - // i && (HTML += "
"); - var cells = rows[i]; - for (var j = 0; j < cells.length; ++j) { - // j && (HTML += " "); - var cell = cells[j]; - HTML += cell.innerHTML; - (i || j) && (cell.parentNode.removeChild(cell)); - } - } - var td = rows[0][0]; - td.innerHTML = HTML; - td.rowSpan = rows.length; - td.colSpan = rows[0].length; - editor.selectNodeContents(td); - editor.forceRedraw(); - editor.focusEditor(); - break; - - // PROPERTIES - - case "TO-table-prop": - this.dialogTableProperties(); - break; - - case "TO-row-prop": - this.dialogRowCellProperties(false); - break; - - case "TO-cell-prop": - this.dialogRowCellProperties(true); - break; - - default: - alert("Button [" + button_id + "] not yet implemented"); - } -}; - -// the list of buttons added by this plugin -TableOperations.btnList = [ - // table properties button - ["table-prop", "table"], - null, // separator - - // ROWS - ["row-prop", "tr"], - ["row-insert-above", "tr"], - ["row-insert-under", "tr"], - ["row-delete", "tr"], - ["row-split", "td[rowSpan!=1]"], - null, - - // COLS - ["col-insert-before", "td"], - ["col-insert-after", "td"], - ["col-delete", "td"], - ["col-split", "td[colSpan!=1]"], - null, - - // CELLS - ["cell-prop", "td"], - ["cell-insert-before", "td"], - ["cell-insert-after", "td"], - ["cell-delete", "td"], - ["cell-merge", "tr"], - ["cell-split", "td[colSpan!=1,rowSpan!=1]"] - ]; - - - -//// GENERIC CODE [style of any element; this should be moved into a separate -//// file as it'll be very useful] -//// BEGIN GENERIC CODE ----------------------------------------------------- - -TableOperations.getLength = function(value) { - var len = parseInt(value); - if (isNaN(len)) { - len = ""; - } - return len; -}; - -// Applies the style found in "params" to the given element. -TableOperations.processStyle = function(params, element) { - var style = element.style; - for (var i in params) { - var val = params[i]; - switch (i) { - case "f_st_backgroundColor": - style.backgroundColor = val; - break; - case "f_st_color": - style.color = val; - break; - case "f_st_backgroundImage": - if (/\S/.test(val)) { - style.backgroundImage = "url(" + val + ")"; - } else { - style.backgroundImage = "none"; - } - break; - case "f_st_borderWidth": - style.borderWidth = val; - break; - case "f_st_borderStyle": - style.borderStyle = val; - break; - case "f_st_borderColor": - style.borderColor = val; - break; - case "f_st_borderCollapse": - style.borderCollapse = val ? "collapse" : ""; - break; - case "f_st_width": - if (/\S/.test(val)) { - style.width = val + params["f_st_widthUnit"]; - } else { - style.width = ""; - } - break; - case "f_st_height": - if (/\S/.test(val)) { - style.height = val + params["f_st_heightUnit"]; - } else { - style.height = ""; - } - break; - case "f_st_textAlign": - if (val == "char") { - var ch = params["f_st_textAlignChar"]; - if (ch == '"') { - ch = '\\"'; - } - style.textAlign = '"' + ch + '"'; - } else { - style.textAlign = val; - } - break; - case "f_st_verticalAlign": - style.verticalAlign = val; - break; - case "f_st_float": - style.cssFloat = val; - break; -// case "f_st_margin": -// style.margin = val + "px"; -// break; -// case "f_st_padding": -// style.padding = val + "px"; -// break; - } - } -}; - -// Returns an HTML element for a widget that allows color selection. That is, -// a button that contains the given color, if any, and when pressed will popup -// the sooner-or-later-to-be-rewritten select_color.html dialog allowing user -// to select some color. If a color is selected, an input field with the name -// "f_st_"+name will be updated with the color value in #123456 format. -TableOperations.createColorButton = function(doc, editor, color, name) { - if (!color) { - color = ""; - } else if (!/#/.test(color)) { - color = HTMLArea._colorToRgb(color); - } - - var df = doc.createElement("span"); - var field = doc.createElement("input"); - field.type = "hidden"; - df.appendChild(field); - field.name = "f_st_" + name; - field.value = color; - var button = doc.createElement("span"); - button.className = "buttonColor"; - df.appendChild(button); - var span = doc.createElement("span"); - span.className = "chooser"; - // span.innerHTML = "       "; - span.style.backgroundColor = color; - button.appendChild(span); - button.onmouseover = function() { if (!this.disabled) { this.className += " buttonColor-hilite"; }}; - button.onmouseout = function() { if (!this.disabled) { this.className = "buttonColor"; }}; - span.onclick = function() { - if (this.parentNode.disabled) { - return false; - } - editor._popupDialog("select_color.html", function(color) { - if (color) { - span.style.backgroundColor = "#" + color; - field.value = "#" + color; - } - }, color); - }; - var span2 = doc.createElement("span"); - span2.innerHTML = "×"; - span2.className = "nocolor"; - span2.title = TableOperations.I18N["Unset color"]; - button.appendChild(span2); - span2.onmouseover = function() { if (!this.parentNode.disabled) { this.className += " nocolor-hilite"; }}; - span2.onmouseout = function() { if (!this.parentNode.disabled) { this.className = "nocolor"; }}; - span2.onclick = function() { - span.style.backgroundColor = ""; - field.value = ""; - }; - return df; -}; - -TableOperations.createStyleLayoutFieldset = function(doc, editor, el) { - var i18n = TableOperations.I18N; - var fieldset = doc.createElement("fieldset"); - var legend = doc.createElement("legend"); - fieldset.appendChild(legend); - legend.innerHTML = i18n["Layout"]; - var table = doc.createElement("table"); - fieldset.appendChild(table); - table.style.width = "100%"; - var tbody = doc.createElement("tbody"); - table.appendChild(tbody); - - var tagname = el.tagName.toLowerCase(); - var tr, td, input, select, option, options, i; - - if (tagname != "td" && tagname != "tr" && tagname != "th") { - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - td.className = "label"; - tr.appendChild(td); - td.innerHTML = i18n["Float"] + ":"; - td = doc.createElement("td"); - tr.appendChild(td); - select = doc.createElement("select"); - td.appendChild(select); - select.name = "f_st_float"; - options = ["None", "Left", "Right"]; - for (var i = 0; i < options.length; ++i) { - var Val = options[i]; - var val = options[i].toLowerCase(); - option = doc.createElement("option"); - option.innerHTML = i18n[Val]; - option.value = val; - option.selected = (("" + el.style.cssFloat).toLowerCase() == val); - select.appendChild(option); - } - } - - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - td.className = "label"; - tr.appendChild(td); - td.innerHTML = i18n["Width"] + ":"; - td = doc.createElement("td"); - tr.appendChild(td); - input = doc.createElement("input"); - input.type = "text"; - input.value = TableOperations.getLength(el.style.width); - input.size = "5"; - input.name = "f_st_width"; - input.style.marginRight = "0.5em"; - td.appendChild(input); - select = doc.createElement("select"); - select.name = "f_st_widthUnit"; - option = doc.createElement("option"); - option.innerHTML = i18n["percent"]; - option.value = "%"; - option.selected = /%/.test(el.style.width); - select.appendChild(option); - option = doc.createElement("option"); - option.innerHTML = i18n["pixels"]; - option.value = "px"; - option.selected = /px/.test(el.style.width); - select.appendChild(option); - td.appendChild(select); - - select.style.marginRight = "0.5em"; - td.appendChild(doc.createTextNode(i18n["Text align"] + ":")); - select = doc.createElement("select"); - select.style.marginLeft = select.style.marginRight = "0.5em"; - td.appendChild(select); - select.name = "f_st_textAlign"; - options = ["Left", "Center", "Right", "Justify"]; - if (tagname == "td") { - options.push("Char"); - } - input = doc.createElement("input"); - input.name = "f_st_textAlignChar"; - input.size = "1"; - input.style.fontFamily = "monospace"; - td.appendChild(input); - for (var i = 0; i < options.length; ++i) { - var Val = options[i]; - var val = Val.toLowerCase(); - option = doc.createElement("option"); - option.value = val; - option.innerHTML = i18n[Val]; - option.selected = (el.style.textAlign.toLowerCase() == val); - select.appendChild(option); - } - function setCharVisibility(value) { - input.style.visibility = value ? "visible" : "hidden"; - if (value) { - input.focus(); - input.select(); - } - }; - select.onchange = function() { setCharVisibility(this.value == "char"); }; - setCharVisibility(select.value == "char"); - - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - td.className = "label"; - tr.appendChild(td); - td.innerHTML = i18n["Height"] + ":"; - td = doc.createElement("td"); - tr.appendChild(td); - input = doc.createElement("input"); - input.type = "text"; - input.value = TableOperations.getLength(el.style.height); - input.size = "5"; - input.name = "f_st_height"; - input.style.marginRight = "0.5em"; - td.appendChild(input); - select = doc.createElement("select"); - select.name = "f_st_heightUnit"; - option = doc.createElement("option"); - option.innerHTML = i18n["percent"]; - option.value = "%"; - option.selected = /%/.test(el.style.height); - select.appendChild(option); - option = doc.createElement("option"); - option.innerHTML = i18n["pixels"]; - option.value = "px"; - option.selected = /px/.test(el.style.height); - select.appendChild(option); - td.appendChild(select); - - select.style.marginRight = "0.5em"; - td.appendChild(doc.createTextNode(i18n["Vertical align"] + ":")); - select = doc.createElement("select"); - select.name = "f_st_verticalAlign"; - select.style.marginLeft = "0.5em"; - td.appendChild(select); - options = ["Top", "Middle", "Bottom", "Baseline"]; - for (var i = 0; i < options.length; ++i) { - var Val = options[i]; - var val = Val.toLowerCase(); - option = doc.createElement("option"); - option.value = val; - option.innerHTML = i18n[Val]; - option.selected = (el.style.verticalAlign.toLowerCase() == val); - select.appendChild(option); - } - - return fieldset; -}; - -// Returns an HTML element containing the style attributes for the given -// element. This can be easily embedded into any dialog; the functionality is -// also provided. -TableOperations.createStyleFieldset = function(doc, editor, el) { - var i18n = TableOperations.I18N; - var fieldset = doc.createElement("fieldset"); - var legend = doc.createElement("legend"); - fieldset.appendChild(legend); - legend.innerHTML = i18n["CSS Style"]; - var table = doc.createElement("table"); - fieldset.appendChild(table); - table.style.width = "100%"; - var tbody = doc.createElement("tbody"); - table.appendChild(tbody); - - var tr, td, input, select, option, options, i; - - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - tr.appendChild(td); - td.className = "label"; - td.innerHTML = i18n["Background"] + ":"; - td = doc.createElement("td"); - tr.appendChild(td); - var df = TableOperations.createColorButton(doc, editor, el.style.backgroundColor, "backgroundColor"); - df.firstChild.nextSibling.style.marginRight = "0.5em"; - td.appendChild(df); - td.appendChild(doc.createTextNode(i18n["Image URL"] + ": ")); - input = doc.createElement("input"); - input.type = "text"; - input.name = "f_st_backgroundImage"; - if (el.style.backgroundImage.match(/url\(\s*(.*?)\s*\)/)) { - input.value = RegExp.$1; - } - // input.style.width = "100%"; - td.appendChild(input); - - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - tr.appendChild(td); - td.className = "label"; - td.innerHTML = i18n["FG Color"] + ":"; - td = doc.createElement("td"); - tr.appendChild(td); - td.appendChild(TableOperations.createColorButton(doc, editor, el.style.color, "color")); - - // for better alignment we include an invisible field. - input = doc.createElement("input"); - input.style.visibility = "hidden"; - input.type = "text"; - td.appendChild(input); - - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - tr.appendChild(td); - td.className = "label"; - td.innerHTML = i18n["Border"] + ":"; - td = doc.createElement("td"); - tr.appendChild(td); - - var colorButton = TableOperations.createColorButton(doc, editor, el.style.borderColor, "borderColor"); - var btn = colorButton.firstChild.nextSibling; - td.appendChild(colorButton); - // borderFields.push(btn); - btn.style.marginRight = "0.5em"; - - select = doc.createElement("select"); - var borderFields = []; - td.appendChild(select); - select.name = "f_st_borderStyle"; - options = ["none", "dotted", "dashed", "solid", "double", "groove", "ridge", "inset", "outset"]; - var currentBorderStyle = el.style.borderStyle; - // Gecko reports "solid solid solid solid" for "border-style: solid". - // That is, "top right bottom left" -- we only consider the first - // value. - (currentBorderStyle.match(/([^\s]*)\s/)) && (currentBorderStyle = RegExp.$1); - for (var i in options) { - var val = options[i]; - option = doc.createElement("option"); - option.value = val; - option.innerHTML = val; - (val == currentBorderStyle) && (option.selected = true); - select.appendChild(option); - } - select.style.marginRight = "0.5em"; - function setBorderFieldsStatus(value) { - for (var i = 0; i < borderFields.length; ++i) { - var el = borderFields[i]; - el.style.visibility = value ? "hidden" : "visible"; - if (!value && (el.tagName.toLowerCase() == "input")) { - el.focus(); - el.select(); - } - } - }; - select.onchange = function() { setBorderFieldsStatus(this.value == "none"); }; - - input = doc.createElement("input"); - borderFields.push(input); - input.type = "text"; - input.name = "f_st_borderWidth"; - input.value = TableOperations.getLength(el.style.borderWidth); - input.size = "5"; - td.appendChild(input); - input.style.marginRight = "0.5em"; - var span = doc.createElement("span"); - span.innerHTML = i18n["pixels"]; - td.appendChild(span); - borderFields.push(span); - - setBorderFieldsStatus(select.value == "none"); - - if (el.tagName.toLowerCase() == "table") { - // the border-collapse style is only for tables - tr = doc.createElement("tr"); - tbody.appendChild(tr); - td = doc.createElement("td"); - td.className = "label"; - tr.appendChild(td); - input = doc.createElement("input"); - input.type = "checkbox"; - input.name = "f_st_borderCollapse"; - input.id = "f_st_borderCollapse"; - var val = (/collapse/i.test(el.style.borderCollapse)); - input.checked = val ? 1 : 0; - td.appendChild(input); - - td = doc.createElement("td"); - tr.appendChild(td); - var label = doc.createElement("label"); - label.htmlFor = "f_st_borderCollapse"; - label.innerHTML = i18n["Collapsed borders"]; - td.appendChild(label); - } - -// tr = doc.createElement("tr"); -// tbody.appendChild(tr); -// td = doc.createElement("td"); -// td.className = "label"; -// tr.appendChild(td); -// td.innerHTML = i18n["Margin"] + ":"; -// td = doc.createElement("td"); -// tr.appendChild(td); -// input = doc.createElement("input"); -// input.type = "text"; -// input.size = "5"; -// input.name = "f_st_margin"; -// td.appendChild(input); -// input.style.marginRight = "0.5em"; -// td.appendChild(doc.createTextNode(i18n["Padding"] + ":")); - -// input = doc.createElement("input"); -// input.type = "text"; -// input.size = "5"; -// input.name = "f_st_padding"; -// td.appendChild(input); -// input.style.marginLeft = "0.5em"; -// input.style.marginRight = "0.5em"; -// td.appendChild(doc.createTextNode(i18n["pixels"])); - - return fieldset; -}; - -//// END GENERIC CODE ------------------------------------------------------- diff --git a/htmlarea/popupdiv.js b/htmlarea/popupdiv.js deleted file mode 100644 index 8348882..0000000 --- a/htmlarea/popupdiv.js +++ /dev/null @@ -1,369 +0,0 @@ -/** This file is derived from PopupDiv, developed by Mihai Bazon for - * SamWare.net. Modifications were needed to make it usable in HTMLArea. - * HTMLArea is a free WYSIWYG online HTML editor from InteractiveTools.com. - * - * This file does not function standalone. It is dependent of global functions - * defined in HTMLArea-3.0 (htmlarea.js). - * - * Please see file htmlarea.js for further details. - **/ - -var is_ie = ( (navigator.userAgent.toLowerCase().indexOf("msie") != -1) && - (navigator.userAgent.toLowerCase().indexOf("opera") == -1) ); -var is_compat = (document.compatMode == "BackCompat"); - -function PopupDiv(editor, titleText, handler, initFunction) { - var self = this; - - this.editor = editor; - this.doc = editor._mdoc; - this.handler = handler; - - var el = this.doc.createElement("div"); - el.className = "content"; - - var popup = this.doc.createElement("div"); - popup.className = "dialog popupdiv"; - this.element = popup; - var s = popup.style; - s.position = "absolute"; - s.left = "0px"; - s.top = "0px"; - - var title = this.doc.createElement("div"); - title.className = "title"; - this.title = title; - popup.appendChild(title); - - HTMLArea._addEvent(title, "mousedown", function(ev) { - self._dragStart(is_ie ? window.event : ev); - }); - - var button = this.doc.createElement("div"); - button.className = "button"; - title.appendChild(button); - button.innerHTML = "×"; - title.appendChild(this.doc.createTextNode(titleText)); - this.titleText = titleText; - - button.onmouseover = function() { - this.className += " button-hilite"; - }; - button.onmouseout = function() { - this.className = this.className.replace(/\s*button-hilite\s*/g, " "); - }; - button.onclick = function() { - this.className = this.className.replace(/\s*button-hilite\s*/g, " "); - self.close(); - }; - - popup.appendChild(el); - this.content = el; - - this.doc.body.appendChild(popup); - - this.dragging = false; - this.onShow = null; - this.onClose = null; - this.modal = false; - - initFunction(this); -}; - -PopupDiv.currentPopup = null; - -PopupDiv.prototype.showAtElement = function(el, mode) { - this.defaultSize(); - var pos, ew, eh; - var popup = this.element; - popup.style.display = "block"; - var w = popup.offsetWidth; - var h = popup.offsetHeight; - popup.style.display = "none"; - if (el != window) { - pos = PopupDiv.getAbsolutePos(el); - ew = el.offsetWidth; - eh = el.offsetHeight; - } else { - pos = {x:0, y:0}; - var size = PopupDiv.getWindowSize(); - ew = size.x; - eh = size.y; - } - var FX = false, FY = false; - if (mode.indexOf("l") != -1) { - pos.x -= w; - FX = true; - } - if (mode.indexOf("r") != -1) { - pos.x += ew; - FX = true; - } - if (mode.indexOf("t") != -1) { - pos.y -= h; - FY = true; - } - if (mode.indexOf("b") != -1) { - pos.y += eh; - FY = true; - } - if (mode.indexOf("c") != -1) { - FX || (pos.x += Math.round((ew - w) / 2)); - FY || (pos.y += Math.round((eh - h) / 2)); - } - this.showAt(pos.x, pos.y); -}; - -PopupDiv.prototype.defaultSize = function() { - var s = this.element.style; - var cs = this.element.currentStyle; - var addX = (is_ie && is_compat) ? (parseInt(cs.borderLeftWidth) + - parseInt(cs.borderRightWidth) + - parseInt(cs.paddingLeft) + - parseInt(cs.paddingRight)) : 0; - var addY = (is_ie && is_compat) ? (parseInt(cs.borderTopWidth) + - parseInt(cs.borderBottomWidth) + - parseInt(cs.paddingTop) + - parseInt(cs.paddingBottom)) : 0; - s.display = "block"; - s.width = (this.content.offsetWidth + addX) + "px"; - s.height = (this.content.offsetHeight + this.title.offsetHeight) + "px"; - s.display = "none"; -}; - -PopupDiv.prototype.showAt = function(x, y) { - this.defaultSize(); - var s = this.element.style; - s.display = "block"; - s.left = x + "px"; - s.top = y + "px"; - this.hideShowCovered(); - - PopupDiv.currentPopup = this; - HTMLArea._addEvents(this.doc.body, ["mousedown", "click"], PopupDiv.checkPopup); - HTMLArea._addEvents(this.editor._doc.body, ["mousedown", "click"], PopupDiv.checkPopup); - if (is_ie && this.modal) { - this.doc.body.setCapture(false); - this.doc.body.onlosecapture = function() { - (PopupDiv.currentPopup) && (this.doc.body.setCapture(false)); - }; - } - window.event && HTMLArea._stopEvent(window.event); - - if (typeof this.onShow == "function") { - this.onShow(); - } else if (typeof this.onShow == "string") { - eval(this.onShow); - } - - var field = this.element.getElementsByTagName("input")[0]; - if (!field) { - field = this.element.getElementsByTagName("select")[0]; - } - if (!field) { - field = this.element.getElementsByTagName("textarea")[0]; - } - if (field) { - field.focus(); - } -}; - -PopupDiv.prototype.close = function() { - this.element.style.display = "none"; - PopupDiv.currentPopup = null; - this.hideShowCovered(); - HTMLArea._removeEvents(this.doc.body, ["mousedown", "click"], PopupDiv.checkPopup); - HTMLArea._removeEvents(this.editor._doc.body, ["mousedown", "click"], PopupDiv.checkPopup); - is_ie && this.modal && this.doc.body.releaseCapture(); - if (typeof this.onClose == "function") { - this.onClose(); - } else if (typeof this.onClose == "string") { - eval(this.onClose); - } - this.element.parentNode.removeChild(this.element); -}; - -PopupDiv.prototype.getForm = function() { - var forms = this.content.getElementsByTagName("form"); - return (forms.length > 0) ? forms[0] : null; -}; - -PopupDiv.prototype.callHandler = function() { - var tags = ["input", "textarea", "select"]; - var params = new Object(); - for (var ti = tags.length; --ti >= 0;) { - var tag = tags[ti]; - var els = this.content.getElementsByTagName(tag); - for (var j = 0; j < els.length; ++j) { - var el = els[j]; - params[el.name] = el.value; - } - } - this.handler(this, params); - return false; -}; - -PopupDiv.getAbsolutePos = function(el) { - var r = { x: el.offsetLeft, y: el.offsetTop }; - if (el.offsetParent) { - var tmp = PopupDiv.getAbsolutePos(el.offsetParent); - r.x += tmp.x; - r.y += tmp.y; - } - return r; -}; - -PopupDiv.getWindowSize = function() { - if (window.innerHeight) { - return { y: window.innerHeight, x: window.innerWidth }; - } - if (this.doc.body.clientHeight) { - return { y: this.doc.body.clientHeight, x: this.doc.body.clientWidth }; - } - return { y: this.doc.documentElement.clientHeight, x: this.doc.documentElement.clientWidth }; -}; - -PopupDiv.prototype.hideShowCovered = function () { - var self = this; - function isContained(el) { - while (el) { - if (el == self.element) { - return true; - } - el = el.parentNode; - } - return false; - }; - var tags = new Array("applet", "select"); - var el = this.element; - - var p = PopupDiv.getAbsolutePos(el); - var EX1 = p.x; - var EX2 = el.offsetWidth + EX1; - var EY1 = p.y; - var EY2 = el.offsetHeight + EY1; - - if (el.style.display == "none") { - EX1 = EX2 = EY1 = EY2 = 0; - } - - for (var k = tags.length; k > 0; ) { - var ar = this.doc.getElementsByTagName(tags[--k]); - var cc = null; - - for (var i = ar.length; i > 0;) { - cc = ar[--i]; - if (isContained(cc)) { - cc.style.visibility = "visible"; - continue; - } - - p = PopupDiv.getAbsolutePos(cc); - var CX1 = p.x; - var CX2 = cc.offsetWidth + CX1; - var CY1 = p.y; - var CY2 = cc.offsetHeight + CY1; - - if ((CX1 > EX2) || (CX2 < EX1) || (CY1 > EY2) || (CY2 < EY1)) { - cc.style.visibility = "visible"; - } else { - cc.style.visibility = "hidden"; - } - } - } -}; - -PopupDiv.prototype._dragStart = function (ev) { - if (this.dragging) { - return false; - } - this.dragging = true; - PopupDiv.currentPopup = this; - var posX = ev.clientX; - var posY = ev.clientY; - if (is_ie) { - posY += this.doc.body.scrollTop; - posX += this.doc.body.scrollLeft; - } else { - posY += window.scrollY; - posX += window.scrollX; - } - var st = this.element.style; - this.xOffs = posX - parseInt(st.left); - this.yOffs = posY - parseInt(st.top); - HTMLArea._addEvent(this.doc, "mousemove", PopupDiv.dragIt); - HTMLArea._addEvent(this.doc, "mouseover", HTMLArea._stopEvent); - HTMLArea._addEvent(this.doc, "mouseup", PopupDiv.dragEnd); - HTMLArea._stopEvent(ev); -}; - -PopupDiv.dragIt = function (ev) { - var popup = PopupDiv.currentPopup; - if (!(popup && popup.dragging)) { - return false; - } - is_ie && (ev = window.event); - var posX = ev.clientX; - var posY = ev.clientY; - if (is_ie) { - posY += this.doc.body.scrollTop; - posX += this.doc.body.scrollLeft; - } else { - posY += window.scrollY; - posX += window.scrollX; - } - popup.hideShowCovered(); - var st = popup.element.style; - st.left = (posX - popup.xOffs) + "px"; - st.top = (posY - popup.yOffs) + "px"; - HTMLArea._stopEvent(ev); -}; - -PopupDiv.dragEnd = function () { - var popup = PopupDiv.currentPopup; - if (!popup) { - return false; - } - popup.dragging = false; - HTMLArea._removeEvent(popup.doc, "mouseup", PopupDiv.dragEnd); - HTMLArea._removeEvent(popup.doc, "mouseover", HTMLArea._stopEvent); - HTMLArea._removeEvent(popup.doc, "mousemove", PopupDiv.dragIt); - popup.hideShowCovered(); -}; - -PopupDiv.checkPopup = function (ev) { - is_ie && (ev = window.event); - var el = is_ie ? ev.srcElement : ev.target; - var cp = PopupDiv.currentPopup; - for (; (el != null) && (el != cp.element); el = el.parentNode); - if (el == null) { - cp.modal || ev.type == "mouseover" || cp.close(); - HTMLArea._stopEvent(ev); - } -}; - -PopupDiv.prototype.addButtons = function() { - var self = this; - var div = this.doc.createElement("div"); - this.content.appendChild(div); - div.className = "buttons"; - for (var i = 0; i < arguments.length; ++i) { - var btn = arguments[i]; - var button = this.doc.createElement("button"); - div.appendChild(button); - button.innerHTML = HTMLArea.I18N.buttons[btn]; - switch (btn) { - case "ok": - button.onclick = function() { - self.callHandler(); - self.close(); - }; - break; - case "cancel": - button.onclick = function() { - self.close(); - }; - break; - } - } -}; diff --git a/htmlarea/popups/about.html b/htmlarea/popups/about.html deleted file mode 100644 index 22a8fd4..0000000 --- a/htmlarea/popups/about.html +++ /dev/null @@ -1,375 +0,0 @@ - - - - - -About HTMLArea - - - - - - - -
- - - -
- -
-
- -
- -

HTMLArea

- -

A free WYSIWYG editor replacement for <textarea> fields.
- For Mozilla 1.3+ (any platform) or Internet Explorer 5.5+ (Windows). -

- -

© 2002-2004 interactivetools.com, inc.
- © 2003-2005 dynarch.com LLC.
- All Rights Reserved.

- -

Project resources

- - - -

- For download section please see the project page @ SourceForge. -

- -
- -
-

Thank you

- -

- dynarch.com would like to thank the following - companies/persons for their donations to support development of HTMLArea (listed alphabetically): -

- - - -

Also many thanks to all people at InteractiveTools.com - HTMLArea forums for - contributing translations, feedback, bug reports and fixes.

- -

- Last but not least, this project wouldn't have existed without - InteractiveTools.com. -

- -
- -
-

htmlArea License (based on BSD license)

- -

© 2002-2004, interactivetools.com, inc.
- © 2003-2004 dynarch.com LLC
- All rights reserved.

- -

-Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: -

- -
    -
  1. -Redistributions of source code must retain the above copyright notice, -this list of conditions and the following disclaimer. -
  2. - -
  3. -Redistributions in binary form must reproduce the above copyright notice, -this list of conditions and the following disclaimer in the documentation -and/or other materials provided with the distribution. -
  4. - -
  5. -Neither the name of interactivetools.com, inc. nor the names of its -contributors may be used to endorse or promote products derived from this -software without specific prior written permission. -
  6. -
- -

-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. -

- -
- -
-

Plugins

-
-
-
- -
- - -
- - -
-
About
Thanks
License
Plugins
- -
- -
- - - - diff --git a/htmlarea/popups/blank.html b/htmlarea/popups/blank.html deleted file mode 100644 index 766e2b0..0000000 --- a/htmlarea/popups/blank.html +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/htmlarea/popups/custom2.html b/htmlarea/popups/custom2.html deleted file mode 100644 index e78ec33..0000000 --- a/htmlarea/popups/custom2.html +++ /dev/null @@ -1,35 +0,0 @@ - - - Select Phrase - - - - -
-
- - - - - -
-
- \ No newline at end of file diff --git a/htmlarea/popups/editor_help.html b/htmlarea/popups/editor_help.html deleted file mode 100644 index 4a173a1..0000000 --- a/htmlarea/popups/editor_help.html +++ /dev/null @@ -1,16 +0,0 @@ - - - Editor Help - - - - -

Editor Help

- -Todo... - - - - \ No newline at end of file diff --git a/htmlarea/popups/fullscreen.html b/htmlarea/popups/fullscreen.html deleted file mode 100644 index f56d3bc..0000000 --- a/htmlarea/popups/fullscreen.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - Fullscreen HTMLArea - - - - - - - - - - -
- -
- - diff --git a/htmlarea/popups/insert_image.html b/htmlarea/popups/insert_image.html deleted file mode 100644 index cef3adb..0000000 --- a/htmlarea/popups/insert_image.html +++ /dev/null @@ -1,191 +0,0 @@ - - - - Insert Image - - - - - - - - - - - -
Insert Image
- -
- - - - - - - - - - - - - -
Image URL: - -
Alternate text:
- -

- -

-Layout - -
- -
Alignment:
- - -

- -

Border thickness:
- - -
- -
- -
-Spacing - -
- -
Horizontal:
- - -

- -

Vertical:
- - -
- -
-
- - - - - -
- Image Preview:
- -
-
- -
-
- - diff --git a/htmlarea/popups/insert_table.html b/htmlarea/popups/insert_table.html deleted file mode 100644 index 84dc85b..0000000 --- a/htmlarea/popups/insert_table.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - Insert Table - - - - - - - - - - - -
Insert Table
- -
- - - - - - - - - - - - - - - - - -
Rows:Width:
Cols:
- -

- -

-Layout - -
- -
Alignment:
- - -

- -

Border thickness:
- - -
- -
- -
-Spacing - -
- -
Cell spacing:
- - -

- -

Cell padding:
- - -
- -
- -
- - -
- -
- - - diff --git a/htmlarea/popups/link.html b/htmlarea/popups/link.html deleted file mode 100644 index 34e20fa..0000000 --- a/htmlarea/popups/link.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - Insert/Modify Link - - - - - - - - -
Insert/Modify Link
-
- - - - - - - - - - - - - -
URL:
Title (tooltip):
Target: - -
- -
- - -
-
- - diff --git a/htmlarea/popups/old-fullscreen.html b/htmlarea/popups/old-fullscreen.html deleted file mode 100644 index 6ecfb8e..0000000 --- a/htmlarea/popups/old-fullscreen.html +++ /dev/null @@ -1,131 +0,0 @@ - -Fullscreen Editor - - - - - - -
- -
- - \ No newline at end of file diff --git a/htmlarea/popups/old_insert_image.html b/htmlarea/popups/old_insert_image.html deleted file mode 100644 index 632bb7a..0000000 --- a/htmlarea/popups/old_insert_image.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - - - - -Insert Image - - - - - -
Image URL:
- - -
Alternate Text:
- - -
-Layout -
- -
-Spacing -
- -
Alignment:
- - -
Horizontal:
- - -
Border Thickness:
- - -
Vertical:
- - - - - - - \ No newline at end of file diff --git a/htmlarea/popups/popup.js b/htmlarea/popups/popup.js deleted file mode 100644 index 151563b..0000000 --- a/htmlarea/popups/popup.js +++ /dev/null @@ -1,114 +0,0 @@ -// htmlArea v3.0 - Copyright (c) 2002, 2003 interactivetools.com, inc. -// This copyright notice MUST stay intact for use (see license.txt). -// -// Portions (c) dynarch.com, 2003 -// -// A free WYSIWYG editor replacement for - - -

Where can I find out more info, download the latest version and talk to -other HTMLArea users?

- -

You can find out more about HTMLArea and download the latest version on -the HTMLArea -homepage and you can talk to other HTMLArea users and post any comments -or suggestions you have in the HTMLArea forum.

- -

Keyboard shortcuts

- -

The editor provides the following key combinations:

- -
    -
  • CTRL-A -- select all
  • -
  • CTRL-B -- bold
  • -
  • CTRL-I -- italic
  • -
  • CTRL-U -- underline
  • -
  • CTRL-S -- strikethrough
  • -
  • CTRL-L -- justify left
  • -
  • CTRL-E -- justify center
  • -
  • CTRL-R -- justify right
  • -
  • CTRL-J -- justify full
  • -
  • CTRL-1 .. CTRL-6 -- headings (<h1> .. <h6>)
  • -
  • CTRL-0 (zero) -- clean content pasted from Word
  • -
- -

Installation

- -

How do I add HTMLArea to my web page?

- -

It's easy. First you need to upload HTMLArea files to your website. -Just follow these steps.

- -
    -
  1. Download the latest version from the htmlArea - homepage.
  2. -
  3. Unzip the files onto your local computer (making sure to maintain the - directory structure contained in the zip).
  4. -
  5. Create a new folder on your website called /htmlarea/ (make sure it's - NOT inside the cgi-bin).
  6. -
  7. Transfer all the HTMLArea files from your local computer into the - /htmlarea/ folder on your website.
  8. -
  9. Open the example page /htmlarea/examples/core.html with your browser to make - sure everything works.
  10. -
- -

Once htmlArea is on your website all you need to do is add some -JavaScript to any pages that you want to add WYSIWYG editors to. Here's how -to do that.

- -
    - -
  1. Define some global variables. "_editor_url" has to be the absolute - URL where HTMLArea resides within your - website; as we discussed, this would be “/htmlarea/”. "_editor_lang" must - be the language code in which you want HTMLArea to appear. This defaults - to "en" (English); for a list of supported languages, please look into - the "lang" subdirectory in the distribution. -
    <script type="text/javascript">
    -   _editor_url = "/htmlarea/";
    -   _editor_lang = "en";
    -</script>
    - -
  2. Include the "htmlarea.js" script: -
    <script type="text/javascript" src="/htmlarea/htmlarea.js"></script>
    -
  3. - -
  4. If you want to change all your <textarea>-s into - HTMLArea-s then you can use the simplest way to create HTMLArea:

    -
    <script type="text/javascript" defer="1">
    -    HTMLArea.replaceAll();
    -</script>
    -

    Note: you can also add the - HTMLArea.replaceAll() code to the onload - event handler for the body element, if you find it more appropriate.

    - -

    A different approach, if you have more than one textarea and only want - to change one of them, is to use HTMLArea.replace("id") -- - pass the id of your textarea. Do not use the - name attribute anymore, it's not a standard solution!

    - -
- -

This section applies to HTMLArea-3.0 release candidate 1 or later; prior -to this version, one needed to include more files; however, now HTMLArea is -able to include other files too (such as stylesheet, language definition -file, etc.) so you only need to define the editor path and load -"htmlarea.js". Nice, eh? ;-)

- -

I want to change the editor settings, how do I do that?

- -

While it's true that all you need is one line of JavaScript to create an -htmlArea WYSIWYG editor, you can also specify more config settings in the -code to control how the editor works and looks. Here's an example of some of -the available settings:

- -
var config = new HTMLArea.Config(); // create a new configuration object
-                                    // having all the default values
-config.width = '90%';
-config.height = '200px';
-
-// the following sets a style for the page body (black text on yellow page)
-// and makes all paragraphs be bold by default
-config.pageStyle =
-  'body { background-color: yellow; color: black; font-family: verdana,sans-serif } ' +
-  'p { font-width: bold; } ';
-
-// the following replaces the textarea with the given id with a new
-// HTMLArea object having the specified configuration
-HTMLArea.replace('id', config);
- -

Important: It's recommended that you add -custom features and configuration to a separate file. This will ensure you -that when we release a new official version of HTMLArea you'll have less -trouble upgrading it.

- -

How do I customize the toolbar?

- -

Using the configuration object introduced above allows you to completely -control what the toolbar contains. Following is an example of a one-line, -customized toolbar, much simpler than the default one:

- -
var config = new HTMLArea.Config();
-config.toolbar = [
-  ['fontname', 'space',
-   'fontsize', 'space',
-   'formatblock', 'space',
-   'bold', 'italic', 'underline']
-];
-HTMLArea.replace('id', config);
- -

The toolbar is an Array of Array objects. Each array in the toolbar -defines a new line. The default toolbar looks like this:

- -
config.toolbar = [
-[ "fontname", "space",
-  "fontsize", "space",
-  "formatblock", "space",
-  "bold", "italic", "underline", "separator",
-  "strikethrough", "subscript", "superscript", "separator",
-  "copy", "cut", "paste", "space", "undo", "redo" ],
-
-[ "justifyleft", "justifycenter", "justifyright", "justifyfull", "separator",
-  "insertorderedlist", "insertunorderedlist", "outdent", "indent", "separator",
-  "forecolor", "hilitecolor", "textindicator", "separator",
-  "inserthorizontalrule", "createlink", "insertimage", "inserttable", "htmlmode", "separator",
-  "popupeditor", "separator", "showhelp", "about" ]
-];
- -

Except three strings, all others in the examples above need to be defined -in the config.btnList object (detailed a bit later in this -document). The three exceptions are: 'space', 'separator' and 'linebreak'. -These three have the following meaning, and need not be present in -btnList:

- -
    -
  • 'space' -- Inserts a space of 5 pixels (the width is configurable by external - CSS) at the current - position in the toolbar.
  • -
  • 'separator' -- Inserts a small vertical separator, for visually grouping related - buttons.
  • -
  • 'linebreak' -- Starts a new line in the toolbar. Subsequent controls will be - inserted on the new line.
  • -
- -

Important: It's recommended that you add -custom features and configuration to a separate file. This will ensure you -that when we release a new official version of HTMLArea you'll have less -trouble upgrading it.

- -

How do I create custom buttons?

- -

By design, the toolbar is easily extensible. For adding a custom button -one needs to follow two steps.

- -

1. Register the button in config.btnList.

- -

For each button in the toolbar, HTMLArea needs to know the following -information:

-
    -
  • a name for it (we call it the ID of the button);
  • -
  • the path to an image to be displayed in the toolbar;
  • -
  • a tooltip for it;
  • -
  • whether the button is enabled or not in text mode;
  • -
  • what to do when the button is clicked;
  • -
-

You need to provide all this information for registering a new button -too. The button ID can be any string identifier and it's used when -defining the toolbar, as you saw above. We recommend starting -it with "my-" so that it won't clash with the standard ID-s (those from -the default toolbar).

- -

Register button example #1

- -
// get a default configuration
-var config = new HTMLArea.Config();
-// register the new button using Config.registerButton.
-// parameters:        button ID,   tooltip,          image,           textMode,
-config.registerButton("my-hilite", "Highlight text", "my-hilite.gif", false,
-// function that gets called when the button is clicked
-  function(editor, id) {
-    editor.surroundHTML('<span class="hilite">', '</span>');
-  }
-);
- -

An alternate way of calling registerButton is exemplified above. Though -the code might be a little bit larger, using this form makes your code more -maintainable. It doesn't even needs comments as it's pretty clear.

- -

Register button example #2

- -
var config = new HTMLArea.Config();
-config.registerButton({
-  id        : "my-hilite",
-  tooltip   : "Highlight text",
-  image     : "my-hilite.gif",
-  textMode  : false,
-  action    : function(editor, id) {
-                editor.surroundHTML('<span class="hilite">', '</span>');
-              }
-});
- -

You might notice that the "action" function receives two parameters: -editor and id. In the examples above we only used the -editor parameter. But it could be helpful for you to understand -both:

- -
    -
  • editor is a reference to the HTMLArea object. Since our entire - code now has an OOP-like - design, you need to have a reference to - the editor object in order to do things with it. In previous versions of - HTMLArea, in order to identify the object an ID was used -- the ID of the - HTML element. In this version ID-s are no longer necessary.
  • - -
  • id is the button ID. Wondering why is this useful? Well, you - could use the same handler function (presuming that it's not an anonymous - function like in the examples above) for more buttons. You can see an example a bit later in this document.
  • -
- -

2. Inserting it into the toolbar

- -

At this step you need to specify where in the toolbar to insert the -button, or just create the whole toolbar again as you saw in the previous -section. You use the button ID, as shown in the examples of customizing the -toolbar in the previous section.

- -

For the sake of completion, following there are another examples.

- -

Append your button to the default toolbar

- -
config.toolbar.push([ "my-hilite" ]);
- -

Customized toolbar

- -
config.toolbar = [
-  ['fontname', 'space',
-   'fontsize', 'space',
-   'formatblock', 'space',
-   'separator', 'my-hilite', 'separator', 'space', // here's your button
-   'bold', 'italic', 'underline', 'space']
-];
- -

Note: in the example above our new button is -between two vertical separators. But this is by no means required. You can -put it wherever you like. Once registered in the btnList (step 1) your custom button behaves just like a default -button.

- -

Important: It's recommended that you add -custom features and configuration to a separate file. This will ensure you -that when we release a new official version of HTMLArea you'll have less -trouble upgrading it.

- -

A complete example

- -

Please note that it is by no means necessary to include the following -code into the htmlarea.js file. On the contrary, it might not work there. -The configuration system is designed such that you can always customize the -editor from outside files, thus keeping the htmlarea.js file -intact. This will make it easy for you to upgrade your HTMLArea when we -release a new official version. OK, I promise it's the last time I said -this. ;)

- -
// All our custom buttons will call this function when clicked.
-// We use the buttonId parameter to determine what button
-// triggered the call.
-function clickHandler(editor, buttonId) {
-  switch (buttonId) {
-    case "my-toc":
-      editor.insertHTML("<h1>Table Of Contents</h1>");
-      break;
-    case "my-date":
-      editor.insertHTML((new Date()).toString());
-      break;
-    case "my-bold":
-      editor.execCommand("bold");
-      editor.execCommand("italic");
-      break;
-    case "my-hilite":
-      editor.surroundHTML("<span class=\"hilite\">", "</span>");
-      break;
-  }
-};
-
-// Create a new configuration object
-var config = new HTMLArea.Config();
-
-// Register our custom buttons
-config.registerButton("my-toc",  "Insert TOC", "my-toc.gif", false, clickHandler);
-config.registerButton("my-date", "Insert date/time", "my-date.gif", false, clickHandler);
-config.registerButton("my-bold", "Toggle bold/italic", "my-bold.gif", false, clickHandler);
-config.registerButton("my-hilite", "Hilite selection", "my-hilite.gif", false, clickHandler);
-
-// Append the buttons to the default toolbar
-config.toolbar.push(["linebreak", "my-toc", "my-date", "my-bold", "my-hilite"]);
-
-// Replace an existing textarea with an HTMLArea object having the above config.
-HTMLArea.replace("textAreaID", config);
- - -
-
© InteractiveTools.com 2002-2004. -
dynarch.com 2003-2004
-HTMLArea v3.0 developed by Mihai Bazon. -
-Documentation written by Mihai Bazon. -
- Last modified: Wed Jan 28 12:18:23 EET 2004 - - diff --git a/htmlarea/release-notes.html b/htmlarea/release-notes.html deleted file mode 100644 index cd06a3c..0000000 --- a/htmlarea/release-notes.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - HTMLArea-3.0-RC3 release notes - - - - - -

HTMLArea-3.0-RC3 release notes

- -

This release was compiled on Jan , 2005 [23:43] GMT.

- -

Changes since 3.0-RC2b:

- -
    -
  • Restored broken images and re-committed ALL images back to CVS in binary mode. -
  • Added error with instructions for when HTMLArea.init() isn't called first. -
  • Fixed examples to call HTMLArea.init() first: -
      -
    • 2-areas.html -
    • character_map.html -
    • css.html -
    • dynamic_css.html -
    • list-type.html -
    • remove-font-tags.html -
    -
  • -
- - -

Changes since 3.0-Beta:

- -
    -
  • - New plugins -
      -
    • - ContextMenu plugin (provides a nice context menu with common - operations, including table ops, link ops, etc.) -
    • -
    • - CSS plugin (provides an easy way to insert/change CSS classes) -
    • -
    • - FullPage plugin (allows HTMLArea to edit a whole HTML file, - not only the content within <body>.) -
    • -
    -
  • -
  • - Changes in the SpellChecker plugin -
      -
    • - Many bugfixes: now it works ;-) Fully Unicode-safe. -
    • -
    • - Speed and bandwidth optimization: reports the list of - suggestions only once for each mispelled word; this helps - in cases where you have, for instance, the word “HTMLArea” - in 10 places all over the document; the list of - suggestions for it--which is kind of huge--will only be - included once. -
    • -
    • - User interface improvements: the highlighted word will - remain in view; in cases where it's normally outside, the - window will be scrolled to it. -
    • -
    • - Added a "Revert" button for those that change their minds ;-) -
    • -
    • - Added a "Info" button which reports information about the - document, retrieved by the server-side spell checker: - total number of words, total number of mispelled words, - number of suggestions made, spell check time, etc. More - can be easily added. FIXME: this part - is not yet internationalized. -
    • -
    • - The server-side spell checker now uses XML::DOM instead of - HTML::Parser, which means that it will be unable to parse - “tag-soup” HTML. It needs valid code. Usually HTMLArea - generates valid code, but on rare occasions it might fail - and the spell checker will report a gross error message. - This gonna have to be fixed, but instead of making the - spell checker accept invalid HTML I prefer to make - HTMLArea generate valid code, so changes are to be done in - other places ;-) -
    • -
    -
  • -
  • - Changes in the core editor -
      -
    • - Easier to setup: you only need to load - htmlarea.js; other scripts will be loaded - automatically. Documentation - and examples updated. -
    • -
    • - Better plugin support (they register information about - themselves with the editor; can register event handlers for - the editor, etc.) -
    • -
    • - New about box; check it out, it's cool ;-) -
    • -
    • - Word cleaner (can be enabled to automatically kill Word crap - on paste (see Config.killWordOnPaste); otherwise accessible by - pressing CTRL-0 in the editor; a toolbar button will come up - soon) -
    • -
    • - Image preview in "insert image" dialog. Also allows - modification of current image, if selected. -
    • -
    • - New "insert link" dialog, allows target and title - specification, allows editing links. -
    • -
    • - Implemented support for text direction (left-to-right or - right-to-left). -
    • -
    • - Lots of bug fixes! ... and more, I guess ;-) an - automatically generated change log - is now available. -
    • -
    -
  • -
- -

I don't have the power to go through the bug -system at SourceForge - now. Some of the bugs reported there may be fixed; I'll update - their status, some other time. If you reported bugs there and now - find them to be fixed, please let me know.

- -

3.0-Beta

- -

Changes since 3.0-Alpha:

- -
    - -
  • Performance improvements.
  • - -
  • Many bugs fixed.
  • - -
  • Plugin infrastructure.
  • - -
  • TableOperations plugin.
  • - -
  • SpellChecker plugin.
  • - -
  • Status bar.
  • - -
  • API for registering custom buttons and drop-down boxes in the - toolbar.
  • - -
  • Toolbar can contain text labels.
  • - -
  • Cut, copy, paste, undo, redo buttons.
  • - -
-
-
Mihai Bazon
- - Last modified: Wed Mar 31 19:18:26 EEST 2004 - - - - -