Wiki2GoEditor 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. data/bin/Wiki2Go_install_editor.rb +13 -0
  2. data/fckeditor/editor/_source/classes/fckcontextmenu.js +134 -0
  3. data/fckeditor/editor/_source/classes/fckdocumentfragment_gecko.js +46 -0
  4. data/fckeditor/editor/_source/classes/fckdocumentfragment_ie.js +58 -0
  5. data/fckeditor/editor/_source/classes/fckdomrange.js +452 -0
  6. data/fckeditor/editor/_source/classes/fckdomrange_gecko.js +71 -0
  7. data/fckeditor/editor/_source/classes/fckdomrange_ie.js +149 -0
  8. data/fckeditor/editor/_source/classes/fckeditingarea.js +253 -0
  9. data/fckeditor/editor/_source/classes/fckelementpath.js +66 -0
  10. data/fckeditor/editor/_source/classes/fckenterkey.js +556 -0
  11. data/fckeditor/editor/_source/classes/fckevents.js +53 -0
  12. data/fckeditor/editor/_source/classes/fckicon.js +98 -0
  13. data/fckeditor/editor/_source/classes/fckiecleanup.js +68 -0
  14. data/fckeditor/editor/_source/classes/fckimagepreloader.js +68 -0
  15. data/fckeditor/editor/_source/classes/fckkeystrokehandler.js +136 -0
  16. data/fckeditor/editor/_source/classes/fckmenublock.js +143 -0
  17. data/fckeditor/editor/_source/classes/fckmenublockpanel.js +54 -0
  18. data/fckeditor/editor/_source/classes/fckmenuitem.js +160 -0
  19. data/fckeditor/editor/_source/classes/fckpanel.js +303 -0
  20. data/fckeditor/editor/_source/classes/fckplugin.js +56 -0
  21. data/fckeditor/editor/_source/classes/fckspecialcombo.js +363 -0
  22. data/fckeditor/editor/_source/classes/fckstyledef.js +59 -0
  23. data/fckeditor/editor/_source/classes/fckstyledef_gecko.js +119 -0
  24. data/fckeditor/editor/_source/classes/fckstyledef_ie.js +142 -0
  25. data/fckeditor/editor/_source/classes/fckstylesloader.js +88 -0
  26. data/fckeditor/editor/_source/classes/fcktoolbar.js +120 -0
  27. data/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js +36 -0
  28. data/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js +38 -0
  29. data/fckeditor/editor/_source/classes/fcktoolbarbutton.js +74 -0
  30. data/fckeditor/editor/_source/classes/fcktoolbarbuttonui.js +222 -0
  31. data/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js +114 -0
  32. data/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js +47 -0
  33. data/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js +52 -0
  34. data/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js +91 -0
  35. data/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js +134 -0
  36. data/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js +111 -0
  37. data/fckeditor/editor/_source/classes/fckw3crange.js +448 -0
  38. data/fckeditor/editor/_source/classes/fckxml_gecko.js +87 -0
  39. data/fckeditor/editor/_source/classes/fckxml_ie.js +90 -0
  40. data/fckeditor/editor/_source/commandclasses/fck_othercommands.js +380 -0
  41. data/fckeditor/editor/_source/commandclasses/fckfitwindow.js +169 -0
  42. data/fckeditor/editor/_source/commandclasses/fcknamedcommand.js +37 -0
  43. data/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js +38 -0
  44. data/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js +40 -0
  45. data/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js +39 -0
  46. data/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js +67 -0
  47. data/fckeditor/editor/_source/commandclasses/fckstylecommand.js +99 -0
  48. data/fckeditor/editor/_source/commandclasses/fcktablecommand.js +71 -0
  49. data/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js +175 -0
  50. data/fckeditor/editor/_source/fckconstants.js +52 -0
  51. data/fckeditor/editor/_source/fckeditorapi.js +161 -0
  52. data/fckeditor/editor/_source/fckjscoreextensions.js +152 -0
  53. data/fckeditor/editor/_source/fckscriptloader.js +108 -0
  54. data/fckeditor/editor/_source/internals/fck.js +859 -0
  55. data/fckeditor/editor/_source/internals/fck_contextmenu.js +307 -0
  56. data/fckeditor/editor/_source/internals/fck_gecko.js +254 -0
  57. data/fckeditor/editor/_source/internals/fck_ie.js +383 -0
  58. data/fckeditor/editor/_source/internals/fckbrowserinfo.js +48 -0
  59. data/fckeditor/editor/_source/internals/fckcodeformatter.js +100 -0
  60. data/fckeditor/editor/_source/internals/fckcommands.js +132 -0
  61. data/fckeditor/editor/_source/internals/fckconfig.js +199 -0
  62. data/fckeditor/editor/_source/internals/fckdebug.js +56 -0
  63. data/fckeditor/editor/_source/internals/fckdialog.js +38 -0
  64. data/fckeditor/editor/_source/internals/fckdialog_gecko.js +103 -0
  65. data/fckeditor/editor/_source/internals/fckdialog_ie.js +48 -0
  66. data/fckeditor/editor/_source/internals/fckdocumentprocessor.js +243 -0
  67. data/fckeditor/editor/_source/internals/fckdomtools.js +294 -0
  68. data/fckeditor/editor/_source/internals/fcklanguagemanager.js +161 -0
  69. data/fckeditor/editor/_source/internals/fcklisthandler.js +152 -0
  70. data/fckeditor/editor/_source/internals/fcklistslib.js +60 -0
  71. data/fckeditor/editor/_source/internals/fckplugins.js +46 -0
  72. data/fckeditor/editor/_source/internals/fckregexlib.js +95 -0
  73. data/fckeditor/editor/_source/internals/fckselection.js +24 -0
  74. data/fckeditor/editor/_source/internals/fckselection_gecko.js +151 -0
  75. data/fckeditor/editor/_source/internals/fckselection_ie.js +158 -0
  76. data/fckeditor/editor/_source/internals/fcktablehandler.js +385 -0
  77. data/fckeditor/editor/_source/internals/fcktablehandler_gecko.js +57 -0
  78. data/fckeditor/editor/_source/internals/fcktablehandler_ie.js +58 -0
  79. data/fckeditor/editor/_source/internals/fcktoolbaritems.js +121 -0
  80. data/fckeditor/editor/_source/internals/fcktoolbarset.js +357 -0
  81. data/fckeditor/editor/_source/internals/fcktools.js +225 -0
  82. data/fckeditor/editor/_source/internals/fcktools_gecko.js +235 -0
  83. data/fckeditor/editor/_source/internals/fcktools_ie.js +214 -0
  84. data/fckeditor/editor/_source/internals/fckundo_gecko.js +27 -0
  85. data/fckeditor/editor/_source/internals/fckundo_ie.js +123 -0
  86. data/fckeditor/editor/_source/internals/fckurlparams.js +39 -0
  87. data/fckeditor/editor/_source/internals/fckxhtml.js +466 -0
  88. data/fckeditor/editor/_source/internals/fckxhtml_gecko.js +66 -0
  89. data/fckeditor/editor/_source/internals/fckxhtml_ie.js +194 -0
  90. data/fckeditor/editor/_source/internals/fckxhtmlentities.js +345 -0
  91. data/fckeditor/editor/css/behaviors/disablehandles.htc +15 -0
  92. data/fckeditor/editor/css/behaviors/showtableborders.htc +36 -0
  93. data/fckeditor/editor/css/fck_editorarea.css +91 -0
  94. data/fckeditor/editor/css/fck_internal.css +111 -0
  95. data/fckeditor/editor/css/fck_showtableborders_gecko.css +42 -0
  96. data/fckeditor/editor/css/images/fck_anchor.gif +0 -0
  97. data/fckeditor/editor/css/images/fck_flashlogo.gif +0 -0
  98. data/fckeditor/editor/css/images/fck_hiddenfield.gif +0 -0
  99. data/fckeditor/editor/css/images/fck_pagebreak.gif +0 -0
  100. data/fckeditor/editor/dialog/common/fck_dialog_common.css +83 -0
  101. data/fckeditor/editor/dialog/common/fck_dialog_common.js +154 -0
  102. data/fckeditor/editor/dialog/common/fcknumericfield.htc +24 -0
  103. data/fckeditor/editor/dialog/common/images/locked.gif +0 -0
  104. data/fckeditor/editor/dialog/common/images/reset.gif +0 -0
  105. data/fckeditor/editor/dialog/common/images/unlocked.gif +0 -0
  106. data/fckeditor/editor/dialog/common/moz-bindings.xml +30 -0
  107. data/fckeditor/editor/dialog/fck_about.html +155 -0
  108. data/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif +0 -0
  109. data/fckeditor/editor/dialog/fck_about/logo_fredck.gif +0 -0
  110. data/fckeditor/editor/dialog/fck_anchor.html +227 -0
  111. data/fckeditor/editor/dialog/fck_button.html +107 -0
  112. data/fckeditor/editor/dialog/fck_checkbox.html +107 -0
  113. data/fckeditor/editor/dialog/fck_colorselector.html +171 -0
  114. data/fckeditor/editor/dialog/fck_docprops.html +600 -0
  115. data/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html +113 -0
  116. data/fckeditor/editor/dialog/fck_find.html +173 -0
  117. data/fckeditor/editor/dialog/fck_flash.html +146 -0
  118. data/fckeditor/editor/dialog/fck_flash/fck_flash.js +288 -0
  119. data/fckeditor/editor/dialog/fck_flash/fck_flash_preview.html +46 -0
  120. data/fckeditor/editor/dialog/fck_form.html +105 -0
  121. data/fckeditor/editor/dialog/fck_hiddenfield.html +116 -0
  122. data/fckeditor/editor/dialog/fck_image.html +252 -0
  123. data/fckeditor/editor/dialog/fck_image/fck_image.js +486 -0
  124. data/fckeditor/editor/dialog/fck_image/fck_image_preview.html +66 -0
  125. data/fckeditor/editor/dialog/fck_link.html +293 -0
  126. data/fckeditor/editor/dialog/fck_link/fck_link.js +664 -0
  127. data/fckeditor/editor/dialog/fck_listprop.html +116 -0
  128. data/fckeditor/editor/dialog/fck_paste.html +285 -0
  129. data/fckeditor/editor/dialog/fck_radiobutton.html +107 -0
  130. data/fckeditor/editor/dialog/fck_replace.html +156 -0
  131. data/fckeditor/editor/dialog/fck_select.html +176 -0
  132. data/fckeditor/editor/dialog/fck_select/fck_select.js +169 -0
  133. data/fckeditor/editor/dialog/fck_smiley.html +105 -0
  134. data/fckeditor/editor/dialog/fck_source.html +65 -0
  135. data/fckeditor/editor/dialog/fck_specialchar.html +113 -0
  136. data/fckeditor/editor/dialog/fck_spellerpages.html +64 -0
  137. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html +0 -0
  138. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js +87 -0
  139. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html +153 -0
  140. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm +174 -0
  141. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php +196 -0
  142. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl +180 -0
  143. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js +462 -0
  144. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html +71 -0
  145. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css +49 -0
  146. data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js +272 -0
  147. data/fckeditor/editor/dialog/fck_table.html +286 -0
  148. data/fckeditor/editor/dialog/fck_tablecell.html +255 -0
  149. data/fckeditor/editor/dialog/fck_template.html +242 -0
  150. data/fckeditor/editor/dialog/fck_template/images/template1.gif +0 -0
  151. data/fckeditor/editor/dialog/fck_template/images/template2.gif +0 -0
  152. data/fckeditor/editor/dialog/fck_template/images/template3.gif +0 -0
  153. data/fckeditor/editor/dialog/fck_textarea.html +94 -0
  154. data/fckeditor/editor/dialog/fck_textfield.html +139 -0
  155. data/fckeditor/editor/fckdebug.html +153 -0
  156. data/fckeditor/editor/fckdialog.html +324 -0
  157. data/fckeditor/editor/fckeditor.html +227 -0
  158. data/fckeditor/editor/fckeditor.original.html +319 -0
  159. data/fckeditor/editor/filemanager/browser/default/browser.css +88 -0
  160. data/fckeditor/editor/filemanager/browser/default/browser.html +154 -0
  161. data/fckeditor/editor/filemanager/browser/default/connectors/asp/basexml.asp +62 -0
  162. data/fckeditor/editor/filemanager/browser/default/connectors/asp/class_upload.asp +234 -0
  163. data/fckeditor/editor/filemanager/browser/default/connectors/asp/commands.asp +183 -0
  164. data/fckeditor/editor/filemanager/browser/default/connectors/asp/config.asp +49 -0
  165. data/fckeditor/editor/filemanager/browser/default/connectors/asp/connector.asp +124 -0
  166. data/fckeditor/editor/filemanager/browser/default/connectors/asp/io.asp +89 -0
  167. data/fckeditor/editor/filemanager/browser/default/connectors/asp/util.asp +55 -0
  168. data/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx +30 -0
  169. data/fckeditor/editor/filemanager/browser/default/connectors/cfm/config.cfm +99 -0
  170. data/fckeditor/editor/filemanager/browser/default/connectors/cfm/connector.cfm +363 -0
  171. data/fckeditor/editor/filemanager/browser/default/connectors/lasso/config.lasso +65 -0
  172. data/fckeditor/editor/filemanager/browser/default/connectors/lasso/connector.lasso +249 -0
  173. data/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl +63 -0
  174. data/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl +158 -0
  175. data/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi +137 -0
  176. data/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl +131 -0
  177. data/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl +667 -0
  178. data/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl +60 -0
  179. data/fckeditor/editor/filemanager/browser/default/connectors/php/basexml.php +75 -0
  180. data/fckeditor/editor/filemanager/browser/default/connectors/php/commands.php +222 -0
  181. data/fckeditor/editor/filemanager/browser/default/connectors/php/config.php +56 -0
  182. data/fckeditor/editor/filemanager/browser/default/connectors/php/connector.php +113 -0
  183. data/fckeditor/editor/filemanager/browser/default/connectors/php/io.php +101 -0
  184. data/fckeditor/editor/filemanager/browser/default/connectors/php/util.php +41 -0
  185. data/fckeditor/editor/filemanager/browser/default/connectors/py/connector.py +785 -0
  186. data/fckeditor/editor/filemanager/browser/default/connectors/test.html +180 -0
  187. data/fckeditor/editor/filemanager/browser/default/frmactualfolder.html +67 -0
  188. data/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html +113 -0
  189. data/fckeditor/editor/filemanager/browser/default/frmfolders.html +196 -0
  190. data/fckeditor/editor/filemanager/browser/default/frmresourceslist.html +160 -0
  191. data/fckeditor/editor/filemanager/browser/default/frmresourcetype.html +65 -0
  192. data/fckeditor/editor/filemanager/browser/default/frmupload.html +113 -0
  193. data/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif +0 -0
  194. data/fckeditor/editor/filemanager/browser/default/images/Folder.gif +0 -0
  195. data/fckeditor/editor/filemanager/browser/default/images/Folder32.gif +0 -0
  196. data/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif +0 -0
  197. data/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif +0 -0
  198. data/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif +0 -0
  199. data/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif +0 -0
  200. data/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif +0 -0
  201. data/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif +0 -0
  202. data/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif +0 -0
  203. data/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif +0 -0
  204. data/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif +0 -0
  205. data/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif +0 -0
  206. data/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif +0 -0
  207. data/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif +0 -0
  208. data/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif +0 -0
  209. data/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif +0 -0
  210. data/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif +0 -0
  211. data/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif +0 -0
  212. data/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif +0 -0
  213. data/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif +0 -0
  214. data/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif +0 -0
  215. data/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif +0 -0
  216. data/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif +0 -0
  217. data/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif +0 -0
  218. data/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif +0 -0
  219. data/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif +0 -0
  220. data/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif +0 -0
  221. data/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif +0 -0
  222. data/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif +0 -0
  223. data/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif +0 -0
  224. data/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif +0 -0
  225. data/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif +0 -0
  226. data/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif +0 -0
  227. data/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif +0 -0
  228. data/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif +0 -0
  229. data/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif +0 -0
  230. data/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif +0 -0
  231. data/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif +0 -0
  232. data/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif +0 -0
  233. data/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif +0 -0
  234. data/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif +0 -0
  235. data/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif +0 -0
  236. data/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif +0 -0
  237. data/fckeditor/editor/filemanager/browser/default/images/icons/html.gif +0 -0
  238. data/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif +0 -0
  239. data/fckeditor/editor/filemanager/browser/default/images/icons/js.gif +0 -0
  240. data/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif +0 -0
  241. data/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif +0 -0
  242. data/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif +0 -0
  243. data/fckeditor/editor/filemanager/browser/default/images/icons/png.gif +0 -0
  244. data/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif +0 -0
  245. data/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif +0 -0
  246. data/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif +0 -0
  247. data/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif +0 -0
  248. data/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif +0 -0
  249. data/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif +0 -0
  250. data/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif +0 -0
  251. data/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif +0 -0
  252. data/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif +0 -0
  253. data/fckeditor/editor/filemanager/browser/default/images/spacer.gif +0 -0
  254. data/fckeditor/editor/filemanager/browser/default/js/common.js +55 -0
  255. data/fckeditor/editor/filemanager/browser/default/js/fckxml.js +130 -0
  256. data/fckeditor/editor/filemanager/upload/asp/class_upload.asp +234 -0
  257. data/fckeditor/editor/filemanager/upload/asp/config.asp +52 -0
  258. data/fckeditor/editor/filemanager/upload/asp/io.asp +29 -0
  259. data/fckeditor/editor/filemanager/upload/asp/upload.asp +121 -0
  260. data/fckeditor/editor/filemanager/upload/aspx/upload.aspx +30 -0
  261. data/fckeditor/editor/filemanager/upload/cfm/config.cfm +98 -0
  262. data/fckeditor/editor/filemanager/upload/cfm/upload.cfm +168 -0
  263. data/fckeditor/editor/filemanager/upload/lasso/config.lasso +65 -0
  264. data/fckeditor/editor/filemanager/upload/lasso/upload.lasso +157 -0
  265. data/fckeditor/editor/filemanager/upload/php/config.php +56 -0
  266. data/fckeditor/editor/filemanager/upload/php/upload.php +124 -0
  267. data/fckeditor/editor/filemanager/upload/php/util.php +40 -0
  268. data/fckeditor/editor/filemanager/upload/test.html +133 -0
  269. data/fckeditor/editor/images/anchor.gif +0 -0
  270. data/fckeditor/editor/images/arrow_ltr.gif +0 -0
  271. data/fckeditor/editor/images/arrow_rtl.gif +0 -0
  272. data/fckeditor/editor/images/smiley/msn/angel_smile.gif +0 -0
  273. data/fckeditor/editor/images/smiley/msn/angry_smile.gif +0 -0
  274. data/fckeditor/editor/images/smiley/msn/broken_heart.gif +0 -0
  275. data/fckeditor/editor/images/smiley/msn/cake.gif +0 -0
  276. data/fckeditor/editor/images/smiley/msn/confused_smile.gif +0 -0
  277. data/fckeditor/editor/images/smiley/msn/cry_smile.gif +0 -0
  278. data/fckeditor/editor/images/smiley/msn/devil_smile.gif +0 -0
  279. data/fckeditor/editor/images/smiley/msn/embaressed_smile.gif +0 -0
  280. data/fckeditor/editor/images/smiley/msn/envelope.gif +0 -0
  281. data/fckeditor/editor/images/smiley/msn/heart.gif +0 -0
  282. data/fckeditor/editor/images/smiley/msn/kiss.gif +0 -0
  283. data/fckeditor/editor/images/smiley/msn/lightbulb.gif +0 -0
  284. data/fckeditor/editor/images/smiley/msn/omg_smile.gif +0 -0
  285. data/fckeditor/editor/images/smiley/msn/regular_smile.gif +0 -0
  286. data/fckeditor/editor/images/smiley/msn/sad_smile.gif +0 -0
  287. data/fckeditor/editor/images/smiley/msn/shades_smile.gif +0 -0
  288. data/fckeditor/editor/images/smiley/msn/teeth_smile.gif +0 -0
  289. data/fckeditor/editor/images/smiley/msn/thumbs_down.gif +0 -0
  290. data/fckeditor/editor/images/smiley/msn/thumbs_up.gif +0 -0
  291. data/fckeditor/editor/images/smiley/msn/tounge_smile.gif +0 -0
  292. data/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif +0 -0
  293. data/fckeditor/editor/images/smiley/msn/wink_smile.gif +0 -0
  294. data/fckeditor/editor/images/spacer.gif +0 -0
  295. data/fckeditor/editor/js/fckeditorcode_gecko.js +98 -0
  296. data/fckeditor/editor/js/fckeditorcode_ie.js +99 -0
  297. data/fckeditor/editor/lang/_getfontformat.html +85 -0
  298. data/fckeditor/editor/lang/_translationstatus.txt +76 -0
  299. data/fckeditor/editor/lang/af.js +504 -0
  300. data/fckeditor/editor/lang/ar.js +504 -0
  301. data/fckeditor/editor/lang/bg.js +504 -0
  302. data/fckeditor/editor/lang/bn.js +504 -0
  303. data/fckeditor/editor/lang/bs.js +504 -0
  304. data/fckeditor/editor/lang/ca.js +504 -0
  305. data/fckeditor/editor/lang/cs.js +504 -0
  306. data/fckeditor/editor/lang/da.js +504 -0
  307. data/fckeditor/editor/lang/de.js +504 -0
  308. data/fckeditor/editor/lang/el.js +504 -0
  309. data/fckeditor/editor/lang/en-au.js +504 -0
  310. data/fckeditor/editor/lang/en-ca.js +504 -0
  311. data/fckeditor/editor/lang/en-uk.js +504 -0
  312. data/fckeditor/editor/lang/en.js +504 -0
  313. data/fckeditor/editor/lang/eo.js +504 -0
  314. data/fckeditor/editor/lang/es.js +504 -0
  315. data/fckeditor/editor/lang/et.js +504 -0
  316. data/fckeditor/editor/lang/eu.js +505 -0
  317. data/fckeditor/editor/lang/fa.js +504 -0
  318. data/fckeditor/editor/lang/fi.js +504 -0
  319. data/fckeditor/editor/lang/fo.js +504 -0
  320. data/fckeditor/editor/lang/fr.js +504 -0
  321. data/fckeditor/editor/lang/gl.js +504 -0
  322. data/fckeditor/editor/lang/he.js +504 -0
  323. data/fckeditor/editor/lang/hi.js +504 -0
  324. data/fckeditor/editor/lang/hr.js +504 -0
  325. data/fckeditor/editor/lang/hu.js +504 -0
  326. data/fckeditor/editor/lang/it.js +504 -0
  327. data/fckeditor/editor/lang/ja.js +504 -0
  328. data/fckeditor/editor/lang/km.js +504 -0
  329. data/fckeditor/editor/lang/ko.js +504 -0
  330. data/fckeditor/editor/lang/lt.js +504 -0
  331. data/fckeditor/editor/lang/lv.js +504 -0
  332. data/fckeditor/editor/lang/mn.js +504 -0
  333. data/fckeditor/editor/lang/ms.js +504 -0
  334. data/fckeditor/editor/lang/nb.js +504 -0
  335. data/fckeditor/editor/lang/nl.js +504 -0
  336. data/fckeditor/editor/lang/no.js +504 -0
  337. data/fckeditor/editor/lang/pl.js +504 -0
  338. data/fckeditor/editor/lang/pt-br.js +504 -0
  339. data/fckeditor/editor/lang/pt.js +504 -0
  340. data/fckeditor/editor/lang/ro.js +504 -0
  341. data/fckeditor/editor/lang/ru.js +504 -0
  342. data/fckeditor/editor/lang/sk.js +504 -0
  343. data/fckeditor/editor/lang/sl.js +504 -0
  344. data/fckeditor/editor/lang/sr-latn.js +504 -0
  345. data/fckeditor/editor/lang/sr.js +504 -0
  346. data/fckeditor/editor/lang/sv.js +504 -0
  347. data/fckeditor/editor/lang/th.js +504 -0
  348. data/fckeditor/editor/lang/tr.js +504 -0
  349. data/fckeditor/editor/lang/uk.js +504 -0
  350. data/fckeditor/editor/lang/vi.js +504 -0
  351. data/fckeditor/editor/lang/zh-cn.js +504 -0
  352. data/fckeditor/editor/lang/zh.js +504 -0
  353. data/fckeditor/editor/plugins/autogrow/fckplugin.js +92 -0
  354. data/fckeditor/editor/plugins/placeholder/fck_placeholder.html +100 -0
  355. data/fckeditor/editor/plugins/placeholder/fckplugin.js +187 -0
  356. data/fckeditor/editor/plugins/placeholder/lang/de.js +27 -0
  357. data/fckeditor/editor/plugins/placeholder/lang/en.js +27 -0
  358. data/fckeditor/editor/plugins/placeholder/lang/fr.js +27 -0
  359. data/fckeditor/editor/plugins/placeholder/lang/it.js +27 -0
  360. data/fckeditor/editor/plugins/placeholder/lang/pl.js +27 -0
  361. data/fckeditor/editor/plugins/placeholder/placeholder.gif +0 -0
  362. data/fckeditor/editor/plugins/simplecommands/fckplugin.js +29 -0
  363. data/fckeditor/editor/plugins/tablecommands/fckplugin.js +32 -0
  364. data/fckeditor/editor/skins/_fckviewstrips.html +121 -0
  365. data/fckeditor/editor/skins/default/fck_dialog.css +137 -0
  366. data/fckeditor/editor/skins/default/fck_editor.css +464 -0
  367. data/fckeditor/editor/skins/default/fck_strip.gif +0 -0
  368. data/fckeditor/editor/skins/default/images/toolbar.arrowright.gif +0 -0
  369. data/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif +0 -0
  370. data/fckeditor/editor/skins/default/images/toolbar.collapse.gif +0 -0
  371. data/fckeditor/editor/skins/default/images/toolbar.end.gif +0 -0
  372. data/fckeditor/editor/skins/default/images/toolbar.expand.gif +0 -0
  373. data/fckeditor/editor/skins/default/images/toolbar.separator.gif +0 -0
  374. data/fckeditor/editor/skins/default/images/toolbar.start.gif +0 -0
  375. data/fckeditor/editor/skins/office2003/fck_dialog.css +138 -0
  376. data/fckeditor/editor/skins/office2003/fck_editor.css +476 -0
  377. data/fckeditor/editor/skins/office2003/fck_strip.gif +0 -0
  378. data/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif +0 -0
  379. data/fckeditor/editor/skins/office2003/images/toolbar.bg.gif +0 -0
  380. data/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif +0 -0
  381. data/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif +0 -0
  382. data/fckeditor/editor/skins/office2003/images/toolbar.end.gif +0 -0
  383. data/fckeditor/editor/skins/office2003/images/toolbar.expand.gif +0 -0
  384. data/fckeditor/editor/skins/office2003/images/toolbar.separator.gif +0 -0
  385. data/fckeditor/editor/skins/office2003/images/toolbar.start.gif +0 -0
  386. data/fckeditor/editor/skins/silver/fck_dialog.css +141 -0
  387. data/fckeditor/editor/skins/silver/fck_editor.css +473 -0
  388. data/fckeditor/editor/skins/silver/fck_strip.gif +0 -0
  389. data/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif +0 -0
  390. data/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif +0 -0
  391. data/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif +0 -0
  392. data/fckeditor/editor/skins/silver/images/toolbar.collapse.gif +0 -0
  393. data/fckeditor/editor/skins/silver/images/toolbar.end.gif +0 -0
  394. data/fckeditor/editor/skins/silver/images/toolbar.expand.gif +0 -0
  395. data/fckeditor/editor/skins/silver/images/toolbar.separator.gif +0 -0
  396. data/fckeditor/editor/skins/silver/images/toolbar.start.gif +0 -0
  397. data/fckeditor/fckconfig.js +224 -0
  398. data/fckeditor/fckeditor.js +214 -0
  399. data/fckeditor/fckstyles.xml +53 -0
  400. data/fckeditor/fcktemplates.xml +103 -0
  401. data/lib/Wiki2GoEditor/Install/editor.rb +39 -0
  402. data/test/test_install.rb +40 -0
  403. metadata +517 -0
@@ -0,0 +1,47 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
22
+ */
23
+
24
+ var FCKToolbarFontsCombo = function( tooltip, style )
25
+ {
26
+ this.CommandName = 'FontName' ;
27
+ this.Label = this.GetLabel() ;
28
+ this.Tooltip = tooltip ? tooltip : this.Label ;
29
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
30
+ }
31
+
32
+ // Inherit from FCKToolbarSpecialCombo.
33
+ FCKToolbarFontsCombo.prototype = new FCKToolbarSpecialCombo ;
34
+
35
+
36
+ FCKToolbarFontsCombo.prototype.GetLabel = function()
37
+ {
38
+ return FCKLang.Font ;
39
+ }
40
+
41
+ FCKToolbarFontsCombo.prototype.CreateItems = function( targetSpecialCombo )
42
+ {
43
+ var aFonts = FCKConfig.FontNames.split(';') ;
44
+
45
+ for ( var i = 0 ; i < aFonts.length ; i++ )
46
+ this._Combo.AddItem( aFonts[i], '<font face="' + aFonts[i] + '" style="font-size: 12px">' + aFonts[i] + '</font>' ) ;
47
+ }
@@ -0,0 +1,52 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
22
+ */
23
+
24
+ var FCKToolbarFontSizeCombo = function( tooltip, style )
25
+ {
26
+ this.CommandName = 'FontSize' ;
27
+ this.Label = this.GetLabel() ;
28
+ this.Tooltip = tooltip ? tooltip : this.Label ;
29
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
30
+ }
31
+
32
+ // Inherit from FCKToolbarSpecialCombo.
33
+ FCKToolbarFontSizeCombo.prototype = new FCKToolbarSpecialCombo ;
34
+
35
+
36
+ FCKToolbarFontSizeCombo.prototype.GetLabel = function()
37
+ {
38
+ return FCKLang.FontSize ;
39
+ }
40
+
41
+ FCKToolbarFontSizeCombo.prototype.CreateItems = function( targetSpecialCombo )
42
+ {
43
+ targetSpecialCombo.FieldWidth = 70 ;
44
+
45
+ var aSizes = FCKConfig.FontSizes.split(';') ;
46
+
47
+ for ( var i = 0 ; i < aSizes.length ; i++ )
48
+ {
49
+ var aSizeParts = aSizes[i].split('/') ;
50
+ this._Combo.AddItem( aSizeParts[0], '<font size="' + aSizeParts[0] + '">' + aSizeParts[1] + '</font>', aSizeParts[1] ) ;
51
+ }
52
+ }
@@ -0,0 +1,91 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * FCKToolbarPanelButton Class: represents a special button in the toolbar
22
+ * that shows a panel when pressed.
23
+ */
24
+
25
+ var FCKToolbarPanelButton = function( commandName, label, tooltip, style, icon )
26
+ {
27
+ this.CommandName = commandName ;
28
+
29
+ var oIcon ;
30
+
31
+ if ( icon == null )
32
+ oIcon = FCKConfig.SkinPath + 'toolbar/' + commandName.toLowerCase() + '.gif' ;
33
+ else if ( typeof( icon ) == 'number' )
34
+ oIcon = [ FCKConfig.SkinPath + 'fck_strip.gif', 16, icon ] ;
35
+
36
+ var oUIButton = this._UIButton = new FCKToolbarButtonUI( commandName, label, tooltip, oIcon, style ) ;
37
+ oUIButton._FCKToolbarPanelButton = this ;
38
+ oUIButton.ShowArrow = true ;
39
+ oUIButton.OnClick = FCKToolbarPanelButton_OnButtonClick ;
40
+ }
41
+
42
+ FCKToolbarPanelButton.prototype.TypeName = 'FCKToolbarPanelButton' ;
43
+
44
+ FCKToolbarPanelButton.prototype.Create = function( parentElement )
45
+ {
46
+ parentElement.className += 'Menu' ;
47
+
48
+ this._UIButton.Create( parentElement ) ;
49
+
50
+ var oPanel = FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName )._Panel ;
51
+ oPanel._FCKToolbarPanelButton = this ;
52
+
53
+ var eLineDiv = oPanel.Document.body.appendChild( oPanel.Document.createElement( 'div' ) ) ;
54
+ eLineDiv.style.position = 'absolute' ;
55
+ eLineDiv.style.top = '0px' ;
56
+
57
+ var eLine = this.LineImg = eLineDiv.appendChild( oPanel.Document.createElement( 'IMG' ) ) ;
58
+ eLine.className = 'TB_ConnectionLine' ;
59
+ // eLine.style.backgroundColor = 'Red' ;
60
+ eLine.src = FCK_SPACER_PATH ;
61
+
62
+ oPanel.OnHide = FCKToolbarPanelButton_OnPanelHide ;
63
+ }
64
+
65
+ /*
66
+ Events
67
+ */
68
+
69
+ function FCKToolbarPanelButton_OnButtonClick( toolbarButton )
70
+ {
71
+ var oButton = this._FCKToolbarPanelButton ;
72
+ var e = oButton._UIButton.MainElement ;
73
+
74
+ oButton._UIButton.ChangeState( FCK_TRISTATE_ON ) ;
75
+
76
+ oButton.LineImg.style.width = ( e.offsetWidth - 2 ) + 'px' ;
77
+
78
+ FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( oButton.CommandName ).Execute( 0, e.offsetHeight - 1, e ) ; // -1 to be over the border
79
+ }
80
+
81
+ function FCKToolbarPanelButton_OnPanelHide()
82
+ {
83
+ var oMenuButton = this._FCKToolbarPanelButton ;
84
+ oMenuButton._UIButton.ChangeState( FCK_TRISTATE_OFF ) ;
85
+ }
86
+
87
+ // The Panel Button works like a normal button so the refresh state functions
88
+ // defined for the normal button can be reused here.
89
+ FCKToolbarPanelButton.prototype.RefreshState = FCKToolbarButton.prototype.RefreshState ;
90
+ FCKToolbarPanelButton.prototype.Enable = FCKToolbarButton.prototype.Enable ;
91
+ FCKToolbarPanelButton.prototype.Disable = FCKToolbarButton.prototype.Disable ;
@@ -0,0 +1,134 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * FCKToolbarSpecialCombo Class: This is a "abstract" base class to be used
22
+ * by the special combo toolbar elements like font name, font size, paragraph format, etc...
23
+ *
24
+ * The following properties and methods must be implemented when inheriting from
25
+ * this class:
26
+ * - Property: CommandName [ The command name to be executed ]
27
+ * - Method: GetLabel() [ Returns the label ]
28
+ * - CreateItems( targetSpecialCombo ) [ Add all items in the special combo ]
29
+ */
30
+
31
+ var FCKToolbarSpecialCombo = function()
32
+ {
33
+ this.SourceView = false ;
34
+ this.ContextSensitive = true ;
35
+ this._LastValue = null ;
36
+ }
37
+
38
+
39
+ function FCKToolbarSpecialCombo_OnSelect( itemId, item )
40
+ {
41
+ FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).Execute( itemId, item ) ;
42
+ }
43
+
44
+ FCKToolbarSpecialCombo.prototype.Create = function( targetElement )
45
+ {
46
+ this._Combo = new FCKSpecialCombo( this.GetLabel(), this.FieldWidth, this.PanelWidth, this.PanelMaxHeight, FCKBrowserInfo.IsIE ? window : FCKTools.GetElementWindow( targetElement ).parent ) ;
47
+
48
+ /*
49
+ this._Combo.FieldWidth = this.FieldWidth != null ? this.FieldWidth : 100 ;
50
+ this._Combo.PanelWidth = this.PanelWidth != null ? this.PanelWidth : 150 ;
51
+ this._Combo.PanelMaxHeight = this.PanelMaxHeight != null ? this.PanelMaxHeight : 150 ;
52
+ */
53
+
54
+ //this._Combo.Command.Name = this.Command.Name;
55
+ // this._Combo.Label = this.Label ;
56
+ this._Combo.Tooltip = this.Tooltip ;
57
+ this._Combo.Style = this.Style ;
58
+
59
+ this.CreateItems( this._Combo ) ;
60
+
61
+ this._Combo.Create( targetElement ) ;
62
+
63
+ this._Combo.CommandName = this.CommandName ;
64
+
65
+ this._Combo.OnSelect = FCKToolbarSpecialCombo_OnSelect ;
66
+ }
67
+
68
+ function FCKToolbarSpecialCombo_RefreshActiveItems( combo, value )
69
+ {
70
+ combo.DeselectAll() ;
71
+ combo.SelectItem( value ) ;
72
+ combo.SetLabelById( value ) ;
73
+ }
74
+
75
+ FCKToolbarSpecialCombo.prototype.RefreshState = function()
76
+ {
77
+ // Gets the actual state.
78
+ var eState ;
79
+
80
+ // if ( FCK.EditMode == FCK_EDITMODE_SOURCE && ! this.SourceView )
81
+ // eState = FCK_TRISTATE_DISABLED ;
82
+ // else
83
+ // {
84
+ var sValue = FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).GetState() ;
85
+
86
+ // FCKDebug.Output( 'RefreshState of Special Combo "' + this.TypeOf + '" - State: ' + sValue ) ;
87
+
88
+ if ( sValue != FCK_TRISTATE_DISABLED )
89
+ {
90
+ eState = FCK_TRISTATE_ON ;
91
+
92
+ if ( this.RefreshActiveItems )
93
+ this.RefreshActiveItems( this._Combo, sValue ) ;
94
+ else
95
+ {
96
+ if ( this._LastValue != sValue )
97
+ {
98
+ this._LastValue = sValue ;
99
+ FCKToolbarSpecialCombo_RefreshActiveItems( this._Combo, sValue ) ;
100
+ }
101
+ }
102
+ }
103
+ else
104
+ eState = FCK_TRISTATE_DISABLED ;
105
+ // }
106
+
107
+ // If there are no state changes then do nothing and return.
108
+ if ( eState == this.State ) return ;
109
+
110
+ if ( eState == FCK_TRISTATE_DISABLED )
111
+ {
112
+ this._Combo.DeselectAll() ;
113
+ this._Combo.SetLabel( '' ) ;
114
+ }
115
+
116
+ // Sets the actual state.
117
+ this.State = eState ;
118
+
119
+ // Updates the graphical state.
120
+ this._Combo.SetEnabled( eState != FCK_TRISTATE_DISABLED ) ;
121
+ }
122
+
123
+ FCKToolbarSpecialCombo.prototype.Enable = function()
124
+ {
125
+ this.RefreshState() ;
126
+ }
127
+
128
+ FCKToolbarSpecialCombo.prototype.Disable = function()
129
+ {
130
+ this.State = FCK_TRISTATE_DISABLED ;
131
+ this._Combo.DeselectAll() ;
132
+ this._Combo.SetLabel( '' ) ;
133
+ this._Combo.SetEnabled( false ) ;
134
+ }
@@ -0,0 +1,111 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
22
+ */
23
+
24
+ var FCKToolbarStyleCombo = function( tooltip, style )
25
+ {
26
+ this.CommandName = 'Style' ;
27
+ this.Label = this.GetLabel() ;
28
+ this.Tooltip = tooltip ? tooltip : this.Label ;
29
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
30
+ }
31
+
32
+ // Inherit from FCKToolbarSpecialCombo.
33
+ FCKToolbarStyleCombo.prototype = new FCKToolbarSpecialCombo ;
34
+
35
+
36
+ FCKToolbarStyleCombo.prototype.GetLabel = function()
37
+ {
38
+ return FCKLang.Style ;
39
+ }
40
+
41
+ FCKToolbarStyleCombo.prototype.CreateItems = function( targetSpecialCombo )
42
+ {
43
+ var oTargetDoc = targetSpecialCombo._Panel.Document ;
44
+
45
+ // Add the Editor Area CSS to the panel so the style classes are previewed correctly.
46
+ FCKTools.AppendStyleSheet( oTargetDoc, FCKConfig.ToolbarComboPreviewCSS ) ;
47
+ oTargetDoc.body.className += ' ForceBaseFont' ;
48
+
49
+ // Add ID and Class to the body
50
+ if ( FCKConfig.BodyId && FCKConfig.BodyId.length > 0 )
51
+ oTargetDoc.body.id = FCKConfig.BodyId ;
52
+ if ( FCKConfig.BodyClass && FCKConfig.BodyClass.length > 0 )
53
+ oTargetDoc.body.className += ' ' + FCKConfig.BodyClass ;
54
+
55
+
56
+ // For some reason Gecko is blocking inside the "RefreshVisibleItems" function.
57
+ // The problem is present only in old versions
58
+ if ( !( FCKBrowserInfo.IsGecko && FCKBrowserInfo.IsGecko10 ) )
59
+ targetSpecialCombo.OnBeforeClick = this.RefreshVisibleItems ;
60
+
61
+ // Add the styles to the special combo.
62
+ var aCommandStyles = FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).Styles ;
63
+ for ( var s in aCommandStyles )
64
+ {
65
+ var oStyle = aCommandStyles[s] ;
66
+ var oItem ;
67
+
68
+ if ( oStyle.IsObjectElement )
69
+ oItem = targetSpecialCombo.AddItem( s, s ) ;
70
+ else
71
+ oItem = targetSpecialCombo.AddItem( s, oStyle.GetOpenerTag() + s + oStyle.GetCloserTag() ) ;
72
+
73
+ oItem.Style = oStyle ;
74
+ }
75
+ }
76
+
77
+ FCKToolbarStyleCombo.prototype.RefreshActiveItems = function( targetSpecialCombo )
78
+ {
79
+ // Clear the actual selection.
80
+ targetSpecialCombo.DeselectAll() ;
81
+
82
+ // Get the active styles.
83
+ var aStyles = FCK.ToolbarSet.CurrentInstance.Commands.GetCommand( this.CommandName ).GetActiveStyles() ;
84
+
85
+ if ( aStyles.length > 0 )
86
+ {
87
+ // Select the active styles in the combo.
88
+ for ( var i = 0 ; i < aStyles.length ; i++ )
89
+ targetSpecialCombo.SelectItem( aStyles[i].Name ) ;
90
+
91
+ // Set the combo label to the first style in the collection.
92
+ targetSpecialCombo.SetLabelById( aStyles[0].Name ) ;
93
+ }
94
+ else
95
+ targetSpecialCombo.SetLabel('') ;
96
+ }
97
+
98
+ FCKToolbarStyleCombo.prototype.RefreshVisibleItems = function( targetSpecialCombo )
99
+ {
100
+ if ( FCKSelection.GetType() == 'Control' )
101
+ var sTagName = FCKSelection.GetSelectedElement().tagName ;
102
+
103
+ for ( var i in targetSpecialCombo.Items )
104
+ {
105
+ var oItem = targetSpecialCombo.Items[i] ;
106
+ if ( ( sTagName && oItem.Style.Element == sTagName ) || ( ! sTagName && ! oItem.Style.IsObjectElement ) )
107
+ oItem.style.display = '' ;
108
+ else
109
+ oItem.style.display = 'none' ; // For some reason Gecko is blocking here.
110
+ }
111
+ }
@@ -0,0 +1,448 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2007 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * This class partially implements the W3C DOM Range for browser that don't
22
+ * support the standards (like IE):
23
+ * http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ranges.html
24
+ */
25
+
26
+ var FCKW3CRange = function( parentDocument )
27
+ {
28
+ this._Document = parentDocument ;
29
+
30
+ this.startContainer = null ;
31
+ this.startOffset = null ;
32
+ this.endContainer = null ;
33
+ this.endOffset = null ;
34
+ this.collapsed = true ;
35
+ }
36
+
37
+ FCKW3CRange.CreateRange = function( parentDocument )
38
+ {
39
+ // We could opt to use the Range implentation of the browsers. The problem
40
+ // is that every browser have different bugs on their implementations,
41
+ // mostly related to different interpretations of the W3C specifications.
42
+ // So, for now, let's use our implementation and pray for browsers fixings
43
+ // soon. Otherwise will go crazy on trying to find out workarounds.
44
+ /*
45
+ // Get the browser implementation of the range, if available.
46
+ if ( parentDocument.createRange )
47
+ {
48
+ var range = parentDocument.createRange() ;
49
+ if ( typeof( range.startContainer ) != 'undefined' )
50
+ return range ;
51
+ }
52
+ */
53
+ return new FCKW3CRange( parentDocument ) ;
54
+ }
55
+
56
+ FCKW3CRange.CreateFromRange = function( parentDocument, sourceRange )
57
+ {
58
+ var range = FCKW3CRange.CreateRange( parentDocument ) ;
59
+ range.setStart( sourceRange.startContainer, sourceRange.startOffset ) ;
60
+ range.setEnd( sourceRange.endContainer, sourceRange.endOffset ) ;
61
+ return range ;
62
+ }
63
+
64
+ FCKW3CRange.prototype =
65
+ {
66
+
67
+ _UpdateCollapsed : function()
68
+ {
69
+ this.collapsed = ( this.startContainer == this.endContainer && this.startOffset == this.endOffset ) ;
70
+ },
71
+
72
+ // W3C requires a check for the new position. If it is after the end
73
+ // boundary, the range should be collapsed to the new start. It seams we
74
+ // will not need this check for our use of this class so we can ignore it for now.
75
+ setStart : function( refNode, offset )
76
+ {
77
+ this.startContainer = refNode ;
78
+ this.startOffset = offset ;
79
+
80
+ if ( !this.endContainer )
81
+ {
82
+ this.endContainer = refNode ;
83
+ this.endOffset = offset ;
84
+ }
85
+
86
+ this._UpdateCollapsed() ;
87
+ },
88
+
89
+ // W3C requires a check for the new position. If it is before the start
90
+ // boundary, the range should be collapsed to the new end. It seams we
91
+ // will not need this check for our use of this class so we can ignore it for now.
92
+ setEnd : function( refNode, offset )
93
+ {
94
+ this.endContainer = refNode ;
95
+ this.endOffset = offset ;
96
+
97
+ if ( !this.startContainer )
98
+ {
99
+ this.startContainer = refNode ;
100
+ this.startOffset = offset ;
101
+ }
102
+
103
+ this._UpdateCollapsed() ;
104
+ },
105
+
106
+ setStartAfter : function( refNode )
107
+ {
108
+ this.setStart( refNode.parentNode, FCKDomTools.GetIndexOf( refNode ) + 1 ) ;
109
+ },
110
+
111
+ setStartBefore : function( refNode )
112
+ {
113
+ this.setStart( refNode.parentNode, FCKDomTools.GetIndexOf( refNode ) ) ;
114
+ },
115
+
116
+ setEndAfter : function( refNode )
117
+ {
118
+ this.setEnd( refNode.parentNode, FCKDomTools.GetIndexOf( refNode ) + 1 ) ;
119
+ },
120
+
121
+ setEndBefore : function( refNode )
122
+ {
123
+ this.setEnd( refNode.parentNode, FCKDomTools.GetIndexOf( refNode ) ) ;
124
+ },
125
+
126
+ collapse : function( toStart )
127
+ {
128
+ if ( toStart )
129
+ {
130
+ this.endContainer = this.startContainer ;
131
+ this.endOffset = this.startOffset ;
132
+ }
133
+ else
134
+ {
135
+ this.startContainer = this.endContainer ;
136
+ this.startOffset = this.endOffset ;
137
+ }
138
+
139
+ this.collapsed = true ;
140
+ },
141
+
142
+ selectNodeContents : function( refNode )
143
+ {
144
+ this.setStart( refNode, 0 ) ;
145
+ this.setEnd( refNode, refNode.nodeType == 3 ? refNode.data.length : refNode.childNodes.length ) ;
146
+ },
147
+
148
+ insertNode : function( newNode )
149
+ {
150
+ var startContainer = this.startContainer ;
151
+ var startOffset = this.startOffset ;
152
+
153
+ // If we are in a text node.
154
+ if ( startContainer.nodeType == 3 )
155
+ {
156
+ startContainer.splitText( startOffset ) ;
157
+
158
+ // Check if it is necessary to update the end boundary.
159
+ if ( startContainer == this.endContainer )
160
+ this.setEnd( startContainer.nextSibling, this.endOffset - this.startOffset ) ;
161
+
162
+ // Insert the new node it after the text node.
163
+ FCKDomTools.InsertAfterNode( startContainer, newNode ) ;
164
+
165
+ return ;
166
+ }
167
+ else
168
+ {
169
+ // Simply insert the new node before the current start node.
170
+ startContainer.insertBefore( newNode, startContainer.childNodes[ startOffset ] || null ) ;
171
+
172
+ // Check if it is necessary to update the end boundary.
173
+ if ( startContainer == this.endContainer )
174
+ {
175
+ this.endOffset++ ;
176
+ this.collapsed = false ;
177
+ }
178
+ }
179
+ },
180
+
181
+ deleteContents : function()
182
+ {
183
+ if ( this.collapsed )
184
+ return ;
185
+
186
+ this._ExecContentsAction( 0 ) ;
187
+ },
188
+
189
+ extractContents : function()
190
+ {
191
+ var docFrag = new FCKDocumentFragment( this._Document ) ;
192
+
193
+ if ( !this.collapsed )
194
+ this._ExecContentsAction( 1, docFrag ) ;
195
+
196
+ return docFrag ;
197
+ },
198
+
199
+ // The selection may be lost when clonning (due to the splitText() call).
200
+ cloneContents : function()
201
+ {
202
+ var docFrag = new FCKDocumentFragment( this._Document ) ;
203
+
204
+ if ( !this.collapsed )
205
+ this._ExecContentsAction( 2, docFrag ) ;
206
+
207
+ return docFrag ;
208
+ },
209
+
210
+ _ExecContentsAction : function( action, docFrag )
211
+ {
212
+ var startNode = this.startContainer ;
213
+ var endNode = this.endContainer ;
214
+
215
+ var startOffset = this.startOffset ;
216
+ var endOffset = this.endOffset ;
217
+
218
+ var removeStartNode = false ;
219
+ var removeEndNode = false ;
220
+
221
+ // Check the start and end nodes and make the necessary removals or changes.
222
+
223
+ // Start from the end, otherwise DOM mutations (splitText) made in the
224
+ // start boundary may interfere on the results here.
225
+
226
+ // For text containers, we must simply split the node and point to the
227
+ // second part. The removal will be handled by the rest of the code .
228
+ if ( endNode.nodeType == 3 )
229
+ endNode = endNode.splitText( endOffset ) ;
230
+ else
231
+ {
232
+ // If the end container has children and the offset is pointing
233
+ // to a child, then we should start from it.
234
+ if ( endNode.childNodes.length > 0 )
235
+ {
236
+ // If the offset points after the last node.
237
+ if ( endOffset > endNode.childNodes.length - 1 )
238
+ {
239
+ // Let's create a temporary node and mark it for removal.
240
+ endNode = FCKDomTools.InsertAfterNode( endNode.lastChild, this._Document.createTextNode('') ) ;
241
+ removeEndNode = true ;
242
+ }
243
+ else
244
+ endNode = endNode.childNodes[ endOffset ] ;
245
+ }
246
+ }
247
+
248
+ // For text containers, we must simply split the node. The removal will
249
+ // be handled by the rest of the code .
250
+ if ( startNode.nodeType == 3 )
251
+ {
252
+ startNode.splitText( startOffset ) ;
253
+
254
+ // In cases the end node is the same as the start node, the above
255
+ // splitting will also split the end, so me must move the end to
256
+ // the second part of the split.
257
+ if ( startNode == endNode )
258
+ endNode = startNode.nextSibling ;
259
+ }
260
+ else
261
+ {
262
+ // If the start container has children and the offset is pointing
263
+ // to a child, then we should start from its previous sibling.
264
+ if ( startNode.childNodes.length > 0 && startOffset <= startNode.childNodes.length - 1 )
265
+ {
266
+ // If the offset points to the first node, we don't have a
267
+ // sibling, so let's use the first one, but mark it for removal.
268
+ if ( startOffset == 0 )
269
+ {
270
+ // Let's create a temporary node and mark it for removal.
271
+ startNode = startNode.insertBefore( this._Document.createTextNode(''), startNode.firstChild ) ;
272
+ removeStartNode = true ;
273
+ }
274
+ else
275
+ startNode = startNode.childNodes[ startOffset ].previousSibling ;
276
+ }
277
+ }
278
+
279
+ // Get the parent nodes tree for the start and end boundaries.
280
+ var startParents = FCKDomTools.GetParents( startNode ) ;
281
+ var endParents = FCKDomTools.GetParents( endNode ) ;
282
+
283
+ // Compare them, to find the top most siblings.
284
+ var i, topStart, topEnd ;
285
+
286
+ for ( i = 0 ; i < startParents.length ; i++ )
287
+ {
288
+ topStart = startParents[i] ;
289
+ topEnd = endParents[i] ;
290
+
291
+ // The compared nodes will match until we find the top most
292
+ // siblings (different nodes that have the same parent).
293
+ // "i" will hold the index in the parants array for the top
294
+ // most element.
295
+ if ( topStart != topEnd )
296
+ break ;
297
+ }
298
+
299
+ var clone, levelStartNode, levelClone, currentNode, currentSibling ;
300
+
301
+ if ( docFrag )
302
+ clone = docFrag.RootNode ;
303
+
304
+ // Remove all successive sibling nodes for every node in the
305
+ // startParents tree.
306
+ for ( var j = i ; j < startParents.length ; j++ )
307
+ {
308
+ levelStartNode = startParents[j] ;
309
+
310
+ // For Extract and Clone, we must clone this level.
311
+ if ( clone && levelStartNode != startNode ) // action = 0 = Delete
312
+ levelClone = clone.appendChild( levelStartNode.cloneNode( levelStartNode == startNode ) ) ;
313
+
314
+ currentNode = levelStartNode.nextSibling ;
315
+
316
+ while( currentNode )
317
+ {
318
+ // Stop processing when the current node matches a node in the
319
+ // endParents tree or if it is the endNode.
320
+ if ( currentNode == endParents[j] || currentNode == endNode )
321
+ break ;
322
+
323
+ // Cache the next sibling.
324
+ currentSibling = currentNode.nextSibling ;
325
+
326
+ // If clonning, just clone it.
327
+ if ( action == 2 ) // 2 = Clone
328
+ clone.appendChild( currentNode.cloneNode( true ) ) ;
329
+ else
330
+ {
331
+ // Both Delete and Extract will remove the node.
332
+ currentNode.parentNode.removeChild( currentNode ) ;
333
+
334
+ // When Extracting, move the removed node to the docFrag.
335
+ if ( action == 1 ) // 1 = Extract
336
+ clone.appendChild( currentNode ) ;
337
+ }
338
+
339
+ currentNode = currentSibling ;
340
+ }
341
+
342
+ if ( clone )
343
+ clone = levelClone ;
344
+ }
345
+
346
+ if ( docFrag )
347
+ clone = docFrag.RootNode ;
348
+
349
+ // Remove all previous sibling nodes for every node in the
350
+ // endParents tree.
351
+ for ( var k = i ; k < endParents.length ; k++ )
352
+ {
353
+ levelStartNode = endParents[k] ;
354
+
355
+ // For Extract and Clone, we must clone this level.
356
+ if ( action > 0 && levelStartNode != endNode ) // action = 0 = Delete
357
+ levelClone = clone.appendChild( levelStartNode.cloneNode( levelStartNode == endNode ) ) ;
358
+
359
+ // The processing of siblings may have already been done by the parent.
360
+ if ( !startParents[k] || levelStartNode.parentNode != startParents[k].parentNode )
361
+ {
362
+ currentNode = levelStartNode.previousSibling ;
363
+
364
+ while( currentNode )
365
+ {
366
+ // Stop processing when the current node matches a node in the
367
+ // startParents tree or if it is the startNode.
368
+ if ( currentNode == startParents[k] || currentNode == startNode )
369
+ break ;
370
+
371
+ // Cache the next sibling.
372
+ currentSibling = currentNode.previousSibling ;
373
+
374
+ // If clonning, just clone it.
375
+ if ( action == 2 ) // 2 = Clone
376
+ clone.insertBefore( currentNode.cloneNode( true ), clone.firstChild ) ;
377
+ else
378
+ {
379
+ // Both Delete and Extract will remove the node.
380
+ currentNode.parentNode.removeChild( currentNode ) ;
381
+
382
+ // When Extracting, mode the removed node to the docFrag.
383
+ if ( action == 1 ) // 1 = Extract
384
+ clone.insertBefore( currentNode, clone.firstChild ) ;
385
+ }
386
+
387
+ currentNode = currentSibling ;
388
+ }
389
+ }
390
+
391
+ if ( clone )
392
+ clone = levelClone ;
393
+ }
394
+
395
+ if ( action == 2 ) // 2 = Clone.
396
+ {
397
+ // No changes in the DOM should be done, so fix the split text (if any).
398
+
399
+ var startTextNode = this.startContainer ;
400
+ if ( startTextNode.nodeType == 3 )
401
+ {
402
+ startTextNode.data += startTextNode.nextSibling.data ;
403
+ startTextNode.parentNode.removeChild( startTextNode.nextSibling ) ;
404
+ }
405
+
406
+ var endTextNode = this.endContainer ;
407
+ if ( endTextNode.nodeType == 3 && endTextNode.nextSibling )
408
+ {
409
+ endTextNode.data += endTextNode.nextSibling.data ;
410
+ endTextNode.parentNode.removeChild( endTextNode.nextSibling ) ;
411
+ }
412
+ }
413
+ else
414
+ {
415
+ // Collapse the range.
416
+
417
+ // If a node has been partially selected, collapse the range between
418
+ // topStart and topEnd. Otherwise, simply collapse it to the start. (W3C specs).
419
+ if ( topStart && topEnd && ( startNode.parentNode != topStart.parentNode || endNode.parentNode != topEnd.parentNode ) )
420
+ this.setStart( topEnd.parentNode, FCKDomTools.GetIndexOf( topEnd ) ) ;
421
+
422
+ // Collapse it to the start.
423
+ this.collapse( true ) ;
424
+ }
425
+
426
+ // Cleanup any marked node.
427
+ if( removeStartNode )
428
+ startNode.parentNode.removeChild( startNode ) ;
429
+
430
+ if( removeEndNode && endNode.parentNode )
431
+ endNode.parentNode.removeChild( endNode ) ;
432
+ },
433
+
434
+ cloneRange : function()
435
+ {
436
+ return FCKW3CRange.CreateFromRange( this._Document, this ) ;
437
+ },
438
+
439
+ toString : function()
440
+ {
441
+ var docFrag = this.cloneContents() ;
442
+
443
+ var tmpDiv = this._Document.createElement( 'div' ) ;
444
+ docFrag.AppendTo( tmpDiv ) ;
445
+
446
+ return tmpDiv.textContent || tmpDiv.innerText ;
447
+ }
448
+ } ;