Archived
1
0

(Experimental) Replace htmlarea with XINHA. Thanks to abdussamad!

This commit is contained in:
Garvin Hicking
2008-09-09 07:52:18 +00:00
parent 862abd0a90
commit 94fd5e4e8c
903 changed files with 50035 additions and 10204 deletions
+40
View File
@@ -0,0 +1,40 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// Author: Udo Schmal, <schmal@schaffrath-neuemedien.de>
//
// (c) Udo Schmal & Schaffrath NeueMedien 2004
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Abs.": "Absatz",
"bspw.": "Beispielsweise",
"bzw.": "beziehungsweise",
"c/o": "care of / bei, zu Händen von",
"ca.": "circa",
"d.h.": "das heißt",
"d.J.": "des Jahres",
"Dr.": "Doktor",
"e.V.": "Eingetragener Verein",
"eG.": "Eingetragene Genossenschaft",
"ehem.": "ehemals",
"einschl.": "einschließlich",
"etc.": "et cetera / und so weiter",
"evtl.": "eventuell",
"ff.": "(fort) folgende",
"gem.": "gemäß",
"inkl.": "inklusive",
"max.": "maximal / maximum",
"min.": "mindestens / minimum / minimal",
"o.g.": "oben genannt",
"rd.": "rund",
"S.": "Seite",
"u.a.": "unter anderem",
"u.ä.": "und ähnlich",
"usw.": "und so weiter",
"vgl.": "vergleiche",
"z.B.": "zum Beispiel",
"z.T.": "zum Teil",
"z.Z.": "zur Zeit",
"zzgl.": "zuzüglich"
};
+16
View File
@@ -0,0 +1,16 @@
// I18N constants
// LANG: "en", ENCODING: UTF-8
// Author: Udo Schmal, <schmal@schaffrath-neuemedien.de>
//
// (c) Udo Schmal & Schaffrath NeueMedien 2004
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"ANSI": "American National Standards Institute",
"ASA": "American Standards Association",
"ISO": "International Organisation for Standardization",
"mime": "Multipurpose Internet Mail Extensions",
"UTF": "Unicode Transformation Format",
"W3C": "World Wide Web Consortium"
};
+11
View File
@@ -0,0 +1,11 @@
abbr, acronym, span.abbr {
width: 18px;
height: 18px;
background-image: url(img/ed_abbreviation.gif);
background-repeat: no-repeat;
background-position: left top;
white-space : nowrap;
cursor: help;
border-bottom: 1px dashed #000;
padding-left: 19px;
}
@@ -0,0 +1,65 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/Abbreviation/abbreviation.js */
function Abbreviation(_1){
this.editor=_1;
var _2=_1.config;
var _3=this;
_2.registerButton({id:"abbreviation",tooltip:this._lc("Abbreviation"),image:_1.imgURL("ed_abbreviation.gif","Abbreviation"),textMode:false,action:function(_4){
_3.buttonPress(_4);
}});
_2.addToolbarElement("abbreviation","inserthorizontalrule",1);
}
Abbreviation._pluginInfo={name:"Abbreviation",version:"1.0",developer:"Udo Schmal",developer_url:"",sponsor:"L.N.Schaffrath NeueMedien",sponsor_url:"http://www.schaffrath-neuemedien.de/",c_owner:"Udo Schmal & Schaffrath-NeueMedien",license:"htmlArea"};
Abbreviation.prototype._lc=function(_5){
return Xinha._lc(_5,"Abbreviation");
};
Abbreviation.prototype.onGenerate=function(){
this.editor.addEditorStylesheet(Xinha.getPluginDir("Abbreviation")+"/abbreviation.css");
};
Abbreviation.prototype.buttonPress=function(_6,_7,_8){
var _9=null;
var _a=_6.getSelectedHTML();
var _b=_6._getSelection();
var _c=_6._createRange(_b);
var _d=_6._activeElement(_b);
if(!(_d!=null&&_d.tagName.toLowerCase()=="abbr")){
_d=_6._getFirstAncestor(_b,"abbr");
}
if(_d!=null&&_d.tagName.toLowerCase()=="abbr"){
_9={title:_d.title,text:_d.innerHTML};
}else{
_9={title:"",text:_a};
}
_6._popupDialog("plugin://Abbreviation/abbreviation",function(_e){
if(_e){
var _f=_e["title"];
if(_f==""||_f==null){
if(_d){
var _10=_d.innerHTML;
_d.parentNode.removeChild(_d);
_6.insertHTML(_10);
}
return;
}
try{
var doc=_6._doc;
if(!_d){
_d=doc.createElement("abbr");
_d.title=_f;
_d.innerHTML=_a;
if(Xinha.is_ie){
_c.pasteHTML(_d.outerHTML);
}else{
_6.insertNodeAtSelection(_d);
}
}else{
_d.title=_f;
}
}
catch(e){
}
}
},_9);
};
Binary file not shown.

After

Width:  |  Height:  |  Size: 134 B

+8
View File
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// Author: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
{
"Abbreviation": "Abkürzung",
"Expansion:": "Erklärung:",
"Delete": "Löschen"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Abbreviation": "Abréviation",
"Expansion:": "Explication",
"Delete": "Supprimer"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Abbreviation": "略語",
"Expansion:": "展開される語:",
"Delete": "削除"
};
+8
View File
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "nb", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
{
"Abbreviation": "Beskrive forkortelse",
"Expansion:": "Betydning:",
"Delete": "Fjerne"
};
+8
View File
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Author: Maarten Molenschot, maarten@nrgmm.nl
{
"Abbreviation": "Afkorting",
"Expansion:": "Uitbreiding:",
"Delete": "Verwijderen"
};
@@ -0,0 +1,22 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Abbreviation": "Abreviação",
"Cancel": "Cancelar",
"Delete": "Apagar",
"Expansion:": "Expandir:",
"OK": "OK"
}
+92
View File
@@ -0,0 +1,92 @@
<html>
<head>
<title>Abbreviation</title>
<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
<script type="text/javascript" src="../../../popups/popup.js"></script>
<script type="text/javascript">
var Abbreviation = window.opener.Abbreviation; // load the Abbreviation plugin and lang file ;-)
function fillSelect(text) {
var abbr = window.location.href;
abbr = abbr.replace(/popups\/abbreviation.html/g, "abbr\/" + window.opener._editor_lang + ".js");
var abbrData = Xinha._geturlcontent(abbr);
if (abbrData) {
eval('abbrObj = ' + abbrData);
if (abbrObj != "") {
dest = document.getElementById("select");
for (var i in abbrObj) {
same = (i==text);
dest.options[dest.options.length] = new Option(i + "=" + abbrObj[i], abbrObj[i], false, same);
if (same)
document.getElementById("title").value = abbrObj[i];
}
}
}
}
function Init() {
__dlg_translate("Abbreviation");
__dlg_init(null,{width: 260, height: 160});
var param = window.dialogArguments;
var text = null;
if (param) {
text = param["text"];
document.getElementById("title").value = param["title"];
}
fillSelect(text);
document.getElementById("title").focus();
};
function onOK() {
var param = new Object();
param["title"] = document.getElementById("title").value;
__dlg_close(param);
return false;
}
function onDelete() {
// pass data back to the calling window
var param = new Object();
param["title"] = "";
__dlg_close(param);
return false;
};
function onCancel() {
__dlg_close(null);
return false;
};
</script>
</head>
<body class="dialog" onload="Init()">
<div class="title">Abbreviation</div>
<form name="form" action="">
<table border="0" style="width: 100%;">
<tr>
<td class="lable">Expansion:</td>
<td>
<select id="select" name="select"
onChange="document.form.title.value=document.form.select.options[document.form.select.selectedIndex].value"
style="position:absolute; top:35px; left:100px; width:118px; clip:rect(0 120 22 100)">
<option value=""></option>
</select>
<input type="text" id="title" name="title"
onChange="document.form.select.selectedIndex=-1"
style="position:absolute; top:35px; left:100px; width:100px; border-right:0">
<!--<input type="text" id="title" name="title" value="" size="30">-->
</td>
</tr>
</table>
<div id="buttons">
<button type="submit" name="ok" onclick="return onOK();">OK</button>
<button type="button" name="delete" onclick="return onDelete();">Delete</button>
<button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
</div>
</form>
</body>
</html>
@@ -0,0 +1,31 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/BackgroundImage/background-image.js */
function BackgroundImage(_1){
this.editor=_1;
var _2=_1.config;
var _3=this;
_2.registerButton({id:"bgImage",tooltip:this._lc("Set page background image"),image:_1.imgURL("ed_bgimage.gif","BackgroundImage"),textMode:false,action:function(_4){
_3.buttonPress(_4);
}});
_2.addToolbarElement("bgImage","inserthorizontalrule",1);
}
BackgroundImage._pluginInfo={name:"BackgroundImage",version:"1.0",developer:"Udo Schmal",developer_url:"http://www.schaffrath-neuemedien.de/",c_owner:"Udo Schmal & Schaffrath NeueMedien",sponsor:"L.N.Schaffrath NeueMedien",sponsor_url:"http://www.schaffrath-neuemedien.de.de/",license:"htmlArea"};
BackgroundImage.prototype._lc=function(_5){
return Xinha._lc(_5,"BackgroundImage");
};
BackgroundImage.prototype.buttonPress=function(_6){
_6._popupDialog("plugin://BackgroundImage/bgimage",function(_7){
if(_7){
if(Xinha.is_ie){
_6.focusEditor();
}
if(_7=="*"){
_6._doc.body.background="";
}else{
_6._doc.body.background=_7;
}
}
},null);
};
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 B

@@ -0,0 +1,9 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// Author: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
{
"Set page background image": "Seiten-Hintergrundbild setzen",
"Set Page Background Image": "Seiten-Hintergrundbild setzen",
"Remove Current Background": "Aktuellen Hintergrund entfernen",
"Cancel": "Abbrechen"
};
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Set page background image": "Définir l'image de fond",
"Set Page Background Image": "Définir l'Image de Fond",
"Remove Current Background": "Supprimer le fond actuel",
"Cancel": "Annuler"
};
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Set page background image": "ページの背景画像を設定",
"Set Page Background Image": "ページの背景画像を設定",
"Remove Current Background": "現在の背景画像を除去",
"Cancel": "中止"
};
@@ -0,0 +1,9 @@
// I18N constants
// LANG: "nb", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
{
"Set page background image": "Velg bakgrunnsbilde på siden",
"Set Page Background Image": "Velg bakgrunnsbilde på Siden",
"Remove Current Background": "Fjern gjeldende bakgrunn",
"Cancel": "Avbryt"
};
@@ -0,0 +1,9 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Author: Maarten Molenschot, maarten@nrgmm.nl
{
"Set page background image": "Pagina achtergrond afbeelding instellen",
"Set Page Background Image": "Pagina Achtergrond Afbeelding Instellen",
"Remove Current Background": "Huidige Achtergrond Afbeelding Verwijderen",
"Cancel": "Annuleren"
};
@@ -0,0 +1,21 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Cancel": "Cancelar",
"Remove Current Background": "Remover fundo atual",
"Set Page Background Image": "Definir Imagem de Fundo",
"Set page background image": "Definir imagem de fundo"
}
+49
View File
@@ -0,0 +1,49 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Set Page Background Image</title>
<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
<script type="text/javascript" src="../../../popups/popup.js"></script>
<script language='JavaScript' type='text/javascript'>
window.resizeTo(350, 195);
function Init() {
__dlg_translate("BackgroundImage");
__dlg_init();
}
function onCancel() {
__dlg_close(null);
return false;
}
function insertbg(image) {
__dlg_close(window.opener.Xinha.getPluginDir('BackgroundImage') + "/backgrounds/" + image);
return false;
}
function onDelete() {
__dlg_close("*");
return false;
}
</script>
</head>
<body class="dialog" onload="Init()">
<form action="" method="get">
<div class="title">Set Page Background Image</div>
<table style="text-align: center;" border="0" cellspacing="0" cellpadding="6">
<tr style="text-align: center; vertical-align: top;">
<td><img onclick="insertbg('blufur.jpg')" border="1" src="../backgrounds/thumbnails/blufur.jpg" width="50" height="50"></td>
<td><img onclick="insertbg('palecnvs.jpg')" border="1" src="../backgrounds/thumbnails/palecnvs.jpg" width="50" height="50"></td>
<td><img onclick="insertbg('ppplcnvs.jpg')" border="1" src="../backgrounds/thumbnails/ppplcnvs.jpg" width="50" height="50"></td>
<td><img onclick="insertbg('ylwsand.jpg')" border="1" src="../backgrounds/thumbnails/ylwsand.jpg" width="50" height="50"></td>
</tr>
</table>
<div class="space"></div>
<div id="buttons">
<button type="button" name="delete" onclick="return onDelete()" style="width:auto">Remove Current Background</button>
<button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
</div>
</form>
</body>
</html>
+75 -114
View File
@@ -1,116 +1,77 @@
// Simple CSS (className) plugin for the editor
// Sponsored by http://www.miro.com.au
// 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: css.js,v 1.2 2005/01/11 15:00:54 garvinhicking Exp $
function CSS(editor, params) {
this.editor = editor;
var cfg = editor.config;
var toolbar = cfg.toolbar;
var self = this;
var i18n = CSS.I18N;
var plugin_config = params[0];
var combos = plugin_config.combos;
var first = true;
for (var i = combos.length; --i >= 0;) {
var combo = combos[i];
var id = "CSS-class" + i;
var css_class = {
id : id,
options : combo.options,
action : function(editor) { self.onSelect(editor, this, combo.context, combo.updatecontextclass); },
refresh : function(editor) { self.updateValue(editor, this); },
context : combo.context
};
cfg.registerDropdown(css_class);
// prepend to the toolbar
toolbar[1].splice(0, 0, first ? "separator" : "space");
toolbar[1].splice(0, 0, id);
if (combo.label)
toolbar[1].splice(0, 0, "T[" + combo.label + "]");
first = false;
}
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/CSS/css.js */
Xinha.Config.prototype.cssPluginConfig={combos:[{label:"Syntax",options:{"None":"","Code":"code","String":"string","Comment":"comment","Variable name":"variable-name","Type":"type","Reference":"reference","Preprocessor":"preprocessor","Keyword":"keyword","Function name":"function-name","Html tag":"html-tag","Html italic":"html-helper-italic","Warning":"warning","Html bold":"html-helper-bold"},context:"pre"},{label:"Info",options:{"None":"","Quote":"quote","Highlight":"highlight","Deprecated":"deprecated"}}]};
function CSS(_1,_2){
this.editor=_1;
var _3=_1.config;
var _4=this;
var _5;
if(_2&&_2.length){
_5=_2[0];
}else{
_5=_1.config.cssPluginConfig;
}
var _6=_5.combos;
for(var i=0;i<_6.length;i++){
var _8=_6[i];
var id="CSS-class"+i;
var _a={id:id,options:_8.options,action:function(_b){
_4.onSelect(_b,this,_8.context,_8.updatecontextclass);
},refresh:function(_c){
_4.updateValue(_c,this);
},context:_8.context};
_3.registerDropdown(_a);
_3.addToolbarElement(["T["+_8.label+"]",id,"separator"],"formatblock",-1);
}
}
CSS._pluginInfo={name:"CSS",version:"1.0",developer:"Mihai Bazon",developer_url:"http://dynarch.com/mishoo/",c_owner:"Mihai Bazon",sponsor:"Miro International",sponsor_url:"http://www.miro.com.au",license:"htmlArea"};
CSS.prototype.onSelect=function(_d,_e,_f,_10){
var _11=_d._toolbarObjects[_e.id];
var _12=_11.element.selectedIndex;
var _13=_11.element.value;
var _14=_d.getParentElement();
var _15=true;
var _16=(_14&&_14.tagName.toLowerCase()=="span");
var _17=(_f&&_10&&_14&&_14.tagName.toLowerCase()==_f);
if(_17){
_14.className=_13;
_d.updateToolbar();
return;
}
if(_16&&_12==0&&!/\S/.test(_14.style.cssText)){
while(_14.firstChild){
_14.parentNode.insertBefore(_14.firstChild,_14);
}
_14.parentNode.removeChild(_14);
_d.updateToolbar();
return;
}
if(_16){
if(_14.childNodes.length==1){
_14.className=_13;
_15=false;
_d.updateToolbar();
}
}
if(_15){
_d.surroundHTML("<span class='"+_13+"'>","</span>");
}
};
CSS.prototype.updateValue=function(_18,obj){
var _1a=_18._toolbarObjects[obj.id].element;
var _1b=_18.getParentElement();
if(typeof _1b.className!="undefined"&&/\S/.test(_1b.className)){
var _1c=_1a.options;
var _1d=_1b.className;
for(var i=_1c.length;--i>=0;){
var _1f=_1c[i];
if(_1d==_1f.value){
_1a.selectedIndex=i;
return;
}
}
}
_1a.selectedIndex=0;
};
CSS._pluginInfo = {
name : "CSS",
version : "1.0",
developer : "Mihai Bazon",
developer_url : "http://dynarch.com/mishoo/",
c_owner : "Mihai Bazon",
sponsor : "Miro International",
sponsor_url : "http://www.miro.com.au",
license : "htmlArea"
};
CSS.prototype.onSelect = function(editor, obj, context, updatecontextclass) {
var tbobj = editor._toolbarObjects[obj.id];
var index = tbobj.element.selectedIndex;
var className = tbobj.element.value;
// retrieve parent element of the selection
var parent = editor.getParentElement();
var surround = true;
var is_span = (parent && parent.tagName.toLowerCase() == "span");
var update_parent = (context && updatecontextclass && parent && parent.tagName.toLowerCase() == context);
if (update_parent) {
parent.className = className;
editor.updateToolbar();
return;
}
if (is_span && index == 0 && !/\S/.test(parent.style.cssText)) {
while (parent.firstChild) {
parent.parentNode.insertBefore(parent.firstChild, parent);
}
parent.parentNode.removeChild(parent);
editor.updateToolbar();
return;
}
if (is_span) {
// maybe we could simply change the class of the parent node?
if (parent.childNodes.length == 1) {
parent.className = className;
surround = false;
// in this case we should handle the toolbar updation
// ourselves.
editor.updateToolbar();
}
}
// Other possibilities could be checked but require a lot of code. We
// can't afford to do that now.
if (surround) {
// shit happens ;-) most of the time. this method works, but
// it's dangerous when selection spans multiple block-level
// elements.
editor.surroundHTML("<span class='" + className + "'>", "</span>");
}
};
CSS.prototype.updateValue = function(editor, obj) {
var select = editor._toolbarObjects[obj.id].element;
var parent = editor.getParentElement();
if (typeof parent.className != "undefined" && /\S/.test(parent.className)) {
var options = select.options;
var value = parent.className;
for (var i = options.length; --i >= 0;) {
var option = options[i];
if (value == option.value) {
select.selectedIndex = i;
return;
}
}
}
select.selectedIndex = 0;
};
@@ -0,0 +1,109 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/CharCounter/char-counter.js */
function CharCounter(_1){
this.editor=_1;
this._Chars=0;
this._Words=0;
this._HTML=0;
this.onKeyPress=this.__onKeyPress;
}
Xinha.Config.prototype.CharCounter={"showChar":true,"showWord":true,"showHtml":true,"separator":" | ","maxHTML":-1};
CharCounter._pluginInfo={name:"CharCounter",version:"1.31",developer:"Udo Schmal",developer_url:"http://www.schaffrath-neuemedien.de",sponsor:"L.N.Schaffrath NeueMedien",sponsor_url:"http://www.schaffrath-neuemedien.de",c_owner:"Udo Schmal & L.N.Schaffrath NeueMedien",license:"htmlArea"};
CharCounter.prototype._lc=function(_2){
return Xinha._lc(_2,"CharCounter");
};
CharCounter.prototype.onGenerateOnce=function(){
var _3=this;
if(this.charCount==null){
var _4=document.createElement("span");
_4.style.padding="2px 5px";
if(Xinha.is_ie){
_4.style.styleFloat="right";
}else{
_4.style.cssFloat="right";
}
var _5=document.createElement("div");
_5.style.height=_5.style.width=_5.style.lineHeight=_5.style.fontSize="1px";
_5.style.clear="both";
if(Xinha.is_ie){
this.editor._statusBarTree.style.styleFloat="left";
}else{
this.editor._statusBarTree.style.cssFloat="left";
}
this.editor._statusBar.appendChild(_4);
this.editor._statusBar.appendChild(_5);
this.charCount=_4;
}
};
CharCounter.prototype.__onKeyPress=function(ev){
if((ev.keyCode!=8)&&(ev.keyCode!=46)){
if(this.editor.config.CharCounter.maxHTML!=-1){
var _7=this.editor.getHTML();
if(_7.length>=this.editor.config.CharCounter.maxHTML){
Xinha._stopEvent(ev);
return true;
}
}
}
};
CharCounter.prototype._updateCharCount=function(){
var _8=this.editor;
var _9=_8.config;
var _a=_8.getHTML();
var _b=new Array();
if(_9.CharCounter.showHtml){
_b[_b.length]=this._lc("HTML")+": "+_a.length;
}
this._HTML=_a.length;
if(_9.CharCounter.showWord||_9.CharCounter.showChar){
_a=_a.replace(/<\/?\s*!--[^-->]*-->/gi,"");
_a=_a.replace(/<(.+?)>/g,"");
_a=_a.replace(/&nbsp;/gi," ");
_a=_a.replace(/([\n\r\t])/g," ");
_a=_a.replace(/( +)/g," ");
_a=_a.replace(/&(.*);/g," ");
_a=_a.replace(/^\s*|\s*$/g,"");
}
if(_9.CharCounter.showWord){
this._Words=0;
for(var x=0;x<_a.length;x++){
if(_a.charAt(x)==" "){
this._Words++;
}
}
if(this._Words>=1){
this._Words++;
}
_b[_b.length]=this._lc("Words")+": "+this._Words;
}
if(_9.CharCounter.showChar){
_b[_b.length]=this._lc("Chars")+": "+_a.length;
this._Chars=_a.length;
}
this.charCount.innerHTML=_b.join(_9.CharCounter.separator);
};
CharCounter.prototype.onUpdateToolbar=function(){
this.charCount.innerHTML=this._lc("... in progress");
if(this._timeoutID){
window.clearTimeout(this._timeoutID);
}
var e=this;
this._timeoutID=window.setTimeout(function(){
e._updateCharCount();
},1000);
};
CharCounter.prototype.onMode=function(_e){
switch(_e){
case "textmode":
this.charCount.style.display="none";
break;
case "wysiwyg":
this.charCount.style.display="";
break;
default:
alert("Mode <"+_e+"> not defined!");
return false;
}
};
+8
View File
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// Author: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
{
"Chars": "Zeichen",
"Words": "Worte",
"... in progress": "... in Bearbeitung"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Chars": "Caractères",
"Words": "Mots"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Chars": "文字数",
"Words": "単語数",
"... in progress": "... 処理中"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "nb", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
{
"Chars": "Tegn"
};
+8
View File
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Author: Maarten Molenschot, maarten@nrgmm.nl
{
"Chars": "Tekens",
"Words": "Woorden",
"... in progress": "... wordt verwerkt"
};
@@ -0,0 +1,21 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"... in progress": "... em processo",
"Chars": "Caracteres",
"HTML": "HTML",
"Words": "Palavras"
}
+41
View File
@@ -0,0 +1,41 @@
.CharacterMap { }
.CharacterMap a.entity {
font-size:12px;
width:18px;
display:block;
float:left;
padding:2px;
text-decoration:none;
color:#000;
text-align:center;
}
.CharacterMap a.light {
background-color:#ffffff;
}
.CharacterMap a.dark {
background-color:#f7f8fd;
}
.CharacterMap a.entity:hover {
background-color:#ffd760;
color:#000;
}
.popup td.character {
font-family:Verdana,Arial,Helvetica,sans-serif;
font-size:14px;
font-weight:bold;
text-align:center;
background:#fff;
padding:4px;
}
.popup td.character-hilite {
background:#ffd760;
}
.popup form {
text-align:center;
}
.popup table {
cursor:pointer;
background-color:#ADAD9C;
border:1px inset;
}
@@ -0,0 +1,71 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/CharacterMap/character-map.js */
Xinha.loadStyle("CharacterMap.css","CharacterMap");
function CharacterMap(_1){
this.editor=_1;
var _2=_1.config;
var _3=this;
_2.registerButton({id:"insertcharacter",tooltip:Xinha._lc("Insert special character","CharacterMap"),image:_1.imgURL("ed_charmap.gif","CharacterMap"),textMode:false,action:function(_4){
_3.buttonPress(_4);
}});
_2.addToolbarElement("insertcharacter","createlink",-1);
if(_2.CharacterMap.mode=="panel"){
_1._CharacterMap=_1.addPanel("right");
Xinha._addClass(_1._CharacterMap,"CharacterMap");
_1.notifyOn("modechange",function(e,_6){
if(_6.mode=="text"){
_1.hidePanel(_1._CharacterMap);
}
});
var _7=["&Yuml;","&scaron;","&#064;","&quot;","&iexcl;","&cent;","&pound;","&curren;","&yen;","&brvbar;","&sect;","&uml;","&copy;","&ordf;","&laquo;","&not;","&macr;","&deg;","&plusmn;","&sup2;","&sup3;","&acute;","&micro;","&para;","&middot;","&cedil;","&sup1;","&ordm;","&raquo;","&frac14;","&frac12;","&frac34;","&iquest;","&times;","&Oslash;","&divide;","&oslash;","&fnof;","&circ;","&tilde;","&ndash;","&mdash;","&lsquo;","&rsquo;","&sbquo;","&ldquo;","&rdquo;","&bdquo;","&dagger;","&Dagger;","&bull;","&hellip;","&permil;","&lsaquo;","&rsaquo;","&euro;","&trade;","&Agrave;","&Aacute;","&Acirc;","&Atilde;","&Auml;","&Aring;","&AElig;","&Ccedil;","&Egrave;","&Eacute;","&Ecirc;","&Euml;","&Igrave;","&Iacute;","&Icirc;","&Iuml;","&ETH;","&Ntilde;","&Ograve;","&Oacute;","&Ocirc;","&Otilde;","&Ouml;","&reg;","&times;","&Ugrave;","&Uacute;","&Ucirc;","&Uuml;","&Yacute;","&THORN;","&szlig;","&agrave;","&aacute;","&acirc;","&atilde;","&auml;","&aring;","&aelig;","&ccedil;","&egrave;","&eacute;","&ecirc;","&euml;","&igrave;","&iacute;","&icirc;","&iuml;","&eth;","&ntilde;","&ograve;","&oacute;","&ocirc;","&otilde;","&ouml;","&divide;","&oslash;","&ugrave;","&uacute;","&ucirc;","&uuml;","&yacute;","&thorn;","&yuml;","&OElig;","&oelig;","&Scaron;"];
for(var i=0;i<_7.length;i++){
this.addEntity(_7[i],i);
}
_1.hidePanel(_1._CharacterMap);
}
}
Xinha.Config.prototype.CharacterMap={"mode":"popup"};
CharacterMap._pluginInfo={name:"CharacterMap",version:"2.0",developer:"Laurent Vilday",developer_url:"http://www.mokhet.com/",c_owner:"Xinha community",sponsor:"",sponsor_url:"",license:"Creative Commons Attribution-ShareAlike License"};
CharacterMap._isActive=false;
CharacterMap.prototype.buttonPress=function(_9){
var _a=_9.config;
if(_a.CharacterMap.mode=="panel"){
if(this._isActive){
this._isActive=false;
_9.hidePanel(_9._CharacterMap);
}else{
this._isActive=true;
_9.showPanel(_9._CharacterMap);
}
}else{
_9._popupDialog("plugin://CharacterMap/select_character",function(_b){
if(!_b){
return false;
}
if(Xinha.is_ie){
_9.focusEditor();
}
_9.insertHTML(_b);
},null);
}
};
CharacterMap.prototype.addEntity=function(_c,_d){
var _e=this.editor;
var _f=this;
var a=document.createElement("a");
Xinha._addClass(a,"entity");
a.innerHTML=_c;
a.href="javascript:void(0)";
Xinha._addClass(a,(_d%2)?"light":"dark");
a.onclick=function(){
if(Xinha.is_ie){
_e.focusEditor();
}
_e.insertHTML(_c);
return false;
};
_e._CharacterMap.appendChild(a);
a=null;
};
Binary file not shown.

After

Width:  |  Height:  |  Size: 134 B

+11
View File
@@ -0,0 +1,11 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// Sponsored by http://www.systemconcept.de
// Author: Holger Hees, <hhees@systemconcept.de>
// (c) systemconcept.de 2004
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Insert special character": "Sonderzeichen einfügen",
"Cancel": "Abbrechen"
}
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Insert special character": "Insérer un caractère spécial",
"Cancel": "Annuler"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "it", ENCODING: UTF-8
{
"Insert special character": "Inserisca il carattere speciale",
"Cancel": "Annullamento"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Insert special character": "特殊文字を挿入",
"Cancel": "中止"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "nb", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
{
"Insert special character": "Sett inn tegn",
"Cancel": "Avbryt"
};
+11
View File
@@ -0,0 +1,11 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Sponsored by http://www.systemconcept.de
// Author: Holger Hees, <hhees@systemconcept.de>
// (c) systemconcept.de 2004
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Insert special character": "Speciaal character invoegen",
"Cancel": "Annuleer"
};
@@ -0,0 +1,19 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Cancel": "Cancelar",
"Insert special character": "Inserir caracter especial"
}
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "ru", ENCODING: UTF-8
// Author: Andrei Blagorazumov, a@fnr.ru
{
"Insert special character": "Вставить специальный символ",
"Cancel": "Отменить"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "sv" (Swedish), ENCODING: UTF-8
// translated: Erik Dalén <dalen@jpl.se>
{
"Insert special character": "Infoga tecken",
"Cancel": "Avbryt"
};
+184
View File
@@ -0,0 +1,184 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html>
<head>
<title>Insert special character</title>
<link rel="stylesheet" type="text/css" href="../CharacterMap.css" />
<script type="text/javascript" src="../../../popups/popup.js"></script>
<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
<script type="text/javascript">
window.resizeTo(480, 300);
// HTMLSource based on HTMLArea XTD 1.5 modified by Holger Hees
// Original Author - Bernhard Pfeifer novocaine@gmx.net
HTMLArea = window.opener.HTMLArea;
function Init() // run on page load
{
__dlg_translate('CharacterMap');
__dlg_init();
var character = ''; // set default input to empty
View( null, character );
document.getElementById("cancel").focus();
}
var oldView = null;
function View( td, character ) // preview character
{
if (oldView)
HTMLArea._removeClass(oldView, 'character-hilite');
if (td) {
oldView = td;
HTMLArea._addClass(oldView, 'character-hilite');
}
}
function Set( string ) // return character
{
var character = string;
__dlg_close( character );
}
function onCancel() // cancel selection
{
__dlg_close( null );
return false;
}
</script>
</head>
<body class="dialog popup" onload="Init();">
<table border="0" cellspacing="1" cellpadding="0" width="100%">
<tr>
<td class="character" onmouseover="View(this,'&amp;Yuml;')" onclick="Set('&Yuml;')">&Yuml;</td>
<td class="character" onmouseover="View(this,'&amp;scaron;')" onclick="Set('&scaron;')">&scaron;</td>
<td class="character" onmouseover="View(this,'&amp;#064;')" onclick="Set('&#064;')">@</td>
<td class="character" onmouseover="View(this,'&amp;quot;')" onclick="Set('&quot;')">&quot;</td>
<td class="character" onmouseover="View(this,'&amp;iexcl;')" onclick="Set('&iexcl;')">&iexcl;</td>
<td class="character" onmouseover="View(this,'&amp;cent;')" onclick="Set('&cent;')">&cent;</td>
<td class="character" onmouseover="View(this,'&amp;pound;')" onclick="Set('&pound;')">&pound;</td>
<td class="character" onmouseover="View(this,'&amp;curren;')" onclick="Set('&curren;')">&curren;</td>
<td class="character" onmouseover="View(this,'&amp;yen;')" onclick="Set('&yen;')">&yen;</td>
<td class="character" onmouseover="View(this,'&amp;brvbar;')" onclick="Set('&brvbar;')">&brvbar;</td>
<td class="character" onmouseover="View(this,'&amp;sect;')" onclick="Set('&sect;')">&sect;</td>
<td class="character" onmouseover="View(this,'&amp;uml;')" onclick="Set('&uml;')">&uml;</td>
<td class="character" onmouseover="View(this,'&amp;copy;')" onclick="Set('&copy;')">&copy;</td>
<td class="character" onmouseover="View(this,'&amp;ordf;')" onclick="Set('&ordf;')">&ordf;</td>
<td class="character" onmouseover="View(this,'&amp;laquo;')" onclick="Set('&laquo;')">&laquo;</td>
<td class="character" onmouseover="View(this,'&amp;not;')" onclick="Set('&not;')">&not;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;macr;')" onclick="Set('&macr;')">&macr;</td>
<td class="character" onmouseover="View(this,'&amp;deg;')" onclick="Set('&deg;')">&deg;</td>
<td class="character" onmouseover="View(this,'&amp;plusmn;')" onclick="Set('&plusmn;')">&plusmn;</td>
<td class="character" onmouseover="View(this,'&amp;sup2;')" onclick="Set('&sup2;')">&sup2;</td>
<td class="character" onmouseover="View(this,'&amp;sup3;')" onclick="Set('&sup3;')">&sup3;</td>
<td class="character" onmouseover="View(this,'&amp;acute;')" onclick="Set('&acute;')">&acute;</td>
<td class="character" onmouseover="View(this,'&amp;micro;')" onclick="Set('&micro;')">&micro;</td>
<td class="character" onmouseover="View(this,'&amp;para;')" onclick="Set('&para;')">&para;</td>
<td class="character" onmouseover="View(this,'&amp;middot;')" onclick="Set('&middot;')">&middot;</td>
<td class="character" onmouseover="View(this,'&amp;cedil;')" onclick="Set('&cedil;')">&cedil;</td>
<td class="character" onmouseover="View(this,'&amp;sup1;')" onclick="Set('&sup1;')">&sup1;</td>
<td class="character" onmouseover="View(this,'&amp;ordm;')" onclick="Set('&ordm;')">&ordm;</td>
<td class="character" onmouseover="View(this,'&amp;raquo;')" onclick="Set('&raquo;')">&raquo;</td>
<td class="character" onmouseover="View(this,'&amp;frac14;')" onclick="Set('&frac14;')">&frac14;</td>
<td class="character" onmouseover="View(this,'&amp;frac12;')" onclick="Set('&frac12;')">&frac12;</td>
<td class="character" onmouseover="View(this,'&amp;frac34;')" onclick="Set('&frac34;')">&frac34;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;iquest;')" onclick="Set('&iquest;')">&iquest;</td>
<td class="character" onmouseover="View(this,'&amp;times;')" onclick="Set('&times;')">&times;</td>
<td class="character" onmouseover="View(this,'&amp;Oslash;')" onclick="Set('&Oslash;')">&Oslash;</td>
<td class="character" onmouseover="View(this,'&amp;divide;')" onclick="Set('&divide;')">&divide;</td>
<td class="character" onmouseover="View(this,'&amp;oslash;')" onclick="Set('&oslash;')">&oslash;</td>
<td class="character" onmouseover="View(this,'&amp;fnof;')" onclick="Set('&fnof;')">&fnof;</td>
<td class="character" onmouseover="View(this,'&amp;circ;')" onclick="Set('&circ;')">&circ;</td>
<td class="character" onmouseover="View(this,'&amp;tilde;')" onclick="Set('&tilde;')">&tilde;</td>
<td class="character" onmouseover="View(this,'&amp;ndash;')" onclick="Set('&ndash;')">&ndash;</td>
<td class="character" onmouseover="View(this,'&amp;mdash;')" onclick="Set('&mdash;')">&mdash;</td>
<td class="character" onmouseover="View(this,'&amp;lsquo;')" onclick="Set('&lsquo;')">&lsquo;</td>
<td class="character" onmouseover="View(this,'&amp;rsquo;')" onclick="Set('&rsquo;')">&rsquo;</td>
<td class="character" onmouseover="View(this,'&amp;sbquo;')" onclick="Set('&sbquo;')">&sbquo;</td>
<td class="character" onmouseover="View(this,'&amp;ldquo;')" onclick="Set('&ldquo;')">&ldquo;</td>
<td class="character" onmouseover="View(this,'&amp;rdquo;')" onclick="Set('&rdquo;')">&rdquo;</td>
<td class="character" onmouseover="View(this,'&amp;bdquo;')" onclick="Set('&bdquo;')">&bdquo;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;dagger;')" onclick="Set('&dagger;')">&dagger;</td>
<td class="character" onmouseover="View(this,'&amp;Dagger;')" onclick="Set('&Dagger;')">&Dagger;</td>
<td class="character" onmouseover="View(this,'&amp;bull;')" onclick="Set('&bull;')">&bull;</td>
<td class="character" onmouseover="View(this,'&amp;hellip;')" onclick="Set('&hellip;')">&hellip;</td>
<td class="character" onmouseover="View(this,'&amp;permil;')" onclick="Set('&permil;')">&permil;</td>
<td class="character" onmouseover="View(this,'&amp;lsaquo;')" onclick="Set('&lsaquo;')">&lsaquo;</td>
<td class="character" onmouseover="View(this,'&amp;rsaquo;')" onclick="Set('&rsaquo;')">&rsaquo;</td>
<td class="character" onmouseover="View(this,'&amp;euro;')" onclick="Set('&euro;')">&euro;</td>
<td class="character" onmouseover="View(this,'&amp;trade;')" onclick="Set('&trade;')">&trade;</td>
<td class="character" onmouseover="View(this,'&amp;Agrave;')" onclick="Set('&Agrave;')">&Agrave;</td>
<td class="character" onmouseover="View(this,'&amp;Aacute;')" onclick="Set('&Aacute;')">&Aacute;</td>
<td class="character" onmouseover="View(this,'&amp;Acirc;')" onclick="Set('&Acirc;')">&Acirc;</td>
<td class="character" onmouseover="View(this,'&amp;Atilde;')" onclick="Set('&Atilde;')">&Atilde;</td>
<td class="character" onmouseover="View(this,'&amp;Auml;')" onclick="Set('&Auml;')">&Auml;</td>
<td class="character" onmouseover="View(this,'&amp;Aring;')" onclick="Set('&Aring;')">&Aring;</td>
<td class="character" onmouseover="View(this,'&amp;AElig;')" onclick="Set('&AElig;')">&AElig;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;Ccedil;')" onclick="Set('&Ccedil;')">&Ccedil;</td>
<td class="character" onmouseover="View(this,'&amp;Egrave;')" onclick="Set('&Egrave;')">&Egrave;</td>
<td class="character" onmouseover="View(this,'&amp;Eacute;')" onclick="Set('&Eacute;')">&Eacute;</td>
<td class="character" onmouseover="View(this,'&amp;Ecirc;')" onclick="Set('&Ecirc;')">&Ecirc;</td>
<td class="character" onmouseover="View(this,'&amp;Euml;')" onclick="Set('&Euml;')">&Euml;</td>
<td class="character" onmouseover="View(this,'&amp;Igrave;')" onclick="Set('&Igrave;')">&Igrave;</td>
<td class="character" onmouseover="View(this,'&amp;Iacute;')" onclick="Set('&Iacute;')">&Iacute;</td>
<td class="character" onmouseover="View(this,'&amp;Icirc;')" onclick="Set('&Icirc;')">&Icirc;</td>
<td class="character" onmouseover="View(this,'&amp;Iuml;')" onclick="Set('&Iuml;')">&Iuml;</td>
<td class="character" onmouseover="View(this,'&amp;ETH;')" onclick="Set('&ETH;')">&ETH;</td>
<td class="character" onmouseover="View(this,'&amp;Ntilde;')" onclick="Set('&Ntilde;')">&Ntilde;</td>
<td class="character" onmouseover="View(this,'&amp;Ograve;')" onclick="Set('&Ograve;')">&Ograve;</td>
<td class="character" onmouseover="View(this,'&amp;Oacute;')" onclick="Set('&Oacute;')">&Oacute;</td>
<td class="character" onmouseover="View(this,'&amp;Ocirc;')" onclick="Set('&Ocirc;')">&Ocirc;</td>
<td class="character" onmouseover="View(this,'&amp;Otilde;')" onclick="Set('&Otilde;')">&Otilde;</td>
<td class="character" onmouseover="View(this,'&amp;Ouml;')" onclick="Set('&Ouml;')">&Ouml;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;reg;')" onclick="Set('&reg;')">&reg;</td>
<td class="character" onmouseover="View(this,'&amp;times;')" onclick="Set('&times;')">&times;</td>
<td class="character" onmouseover="View(this,'&amp;Ugrave;')" onclick="Set('&Ugrave;')">&Ugrave;</td>
<td class="character" onmouseover="View(this,'&amp;Uacute;')" onclick="Set('&Uacute;')">&Uacute;</td>
<td class="character" onmouseover="View(this,'&amp;Ucirc;')" onclick="Set('&Ucirc;')">&Ucirc;</td>
<td class="character" onmouseover="View(this,'&amp;Uuml;')" onclick="Set('&Uuml;')">&Uuml;</td>
<td class="character" onmouseover="View(this,'&amp;Yacute;')" onclick="Set('&Yacute;')">&Yacute;</td>
<td class="character" onmouseover="View(this,'&amp;THORN;')" onclick="Set('&THORN;')">&THORN;</td>
<td class="character" onmouseover="View(this,'&amp;szlig;')" onclick="Set('&szlig;')">&szlig;</td>
<td class="character" onmouseover="View(this,'&amp;agrave;')" onclick="Set('&agrave;')">&agrave;</td>
<td class="character" onmouseover="View(this,'&amp;aacute;')" onclick="Set('&aacute;')">&aacute;</td>
<td class="character" onmouseover="View(this,'&amp;acirc;')" onclick="Set('&acirc;')">&acirc;</td>
<td class="character" onmouseover="View(this,'&amp;atilde;')" onclick="Set('&atilde;')">&atilde;</td>
<td class="character" onmouseover="View(this,'&amp;auml;')" onclick="Set('&auml;')">&auml;</td>
<td class="character" onmouseover="View(this,'&amp;aring;')" onclick="Set('&aring;')">&aring;</td>
<td class="character" onmouseover="View(this,'&amp;aelig;')" onclick="Set('&aelig;')">&aelig;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;ccedil;')" onclick="Set('&ccedil;')">&ccedil;</td>
<td class="character" onmouseover="View(this,'&amp;egrave;')" onclick="Set('&egrave;')">&egrave;</td>
<td class="character" onmouseover="View(this,'&amp;eacute;')" onclick="Set('&eacute;')">&eacute;</td>
<td class="character" onmouseover="View(this,'&amp;ecirc;')" onclick="Set('&ecirc;')">&ecirc;</td>
<td class="character" onmouseover="View(this,'&amp;euml;')" onclick="Set('&euml;')">&euml;</td>
<td class="character" onmouseover="View(this,'&amp;igrave;')" onclick="Set('&igrave;')">&igrave;</td>
<td class="character" onmouseover="View(this,'&amp;iacute;')" onclick="Set('&iacute;')">&iacute;</td>
<td class="character" onmouseover="View(this,'&amp;icirc;')" onclick="Set('&icirc;')">&icirc;</td>
<td class="character" onmouseover="View(this,'&amp;iuml;')" onclick="Set('&iuml;')">&iuml;</td>
<td class="character" onmouseover="View(this,'&amp;eth;')" onclick="Set('&eth;')">&eth;</td>
<td class="character" onmouseover="View(this,'&amp;ntilde;')" onclick="Set('&ntilde;')">&ntilde;</td>
<td class="character" onmouseover="View(this,'&amp;ograve;')" onclick="Set('&ograve;')">&ograve;</td>
<td class="character" onmouseover="View(this,'&amp;oacute;')" onclick="Set('&oacute;')">&oacute;</td>
<td class="character" onmouseover="View(this,'&amp;ocirc;')" onclick="Set('&ocirc;')">&ocirc;</td>
<td class="character" onmouseover="View(this,'&amp;otilde;')" onclick="Set('&otilde;')">&otilde;</td>
<td class="character" onmouseover="View(this,'&amp;ouml;')" onclick="Set('&ouml;')">&ouml;</td>
</tr><tr>
<td class="character" onmouseover="View(this,'&amp;divide;')" onclick="Set('&divide;')">&divide;</td>
<td class="character" onmouseover="View(this,'&amp;oslash;')" onclick="Set('&oslash;')">&oslash;</td>
<td class="character" onmouseover="View(this,'&amp;ugrave;')" onclick="Set('&ugrave;')">&ugrave;</td>
<td class="character" onmouseover="View(this,'&amp;uacute;')" onclick="Set('&uacute;')">&uacute;</td>
<td class="character" onmouseover="View(this,'&amp;ucirc;')" onclick="Set('&ucirc;')">&ucirc;</td>
<td class="character" onmouseover="View(this,'&amp;uuml;')" onclick="Set('&uuml;')">&uuml;</td>
<td class="character" onmouseover="View(this,'&amp;yacute;')" onclick="Set('&yacute;')">&yacute;</td>
<td class="character" onmouseover="View(this,'&amp;thorn;')" onclick="Set('&thorn;')">&thorn;</td>
<td class="character" onmouseover="View(this,'&amp;yuml;')" onclick="Set('&yuml;')">&yuml;</td>
<td class="character" onmouseover="View(this,'&amp;OElig;')" onclick="Set('&OElig;')">&OElig;</td>
<td class="character" onmouseover="View(this,'&amp;oelig;')" onclick="Set('&oelig;')">&oelig;</td>
<td class="character" onmouseover="View(this,'&amp;Scaron;')" onclick="Set('&Scaron;')">&Scaron;</td>
<td class="character" colspan="4">&nbsp;</td>
</tr>
</table><br>
<form action="#"><button type="button" id="cancel" name="cancel" onclick="return onCancel();">Cancel</button></form>
</body>
</html>
@@ -0,0 +1,36 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/ClientsideSpellcheck/clientside-spellcheck.js */
function ClientsideSpellcheck(_1){
this.editor=_1;
var _2=_1.config;
var bl=ClientsideSpellcheck.btnList;
var _4=this;
var id="clientsidespellcheck";
_2.registerButton(id,this._lc("Spell Check using ieSpell"),_1.imgURL("clientside-spellcheck.gif","ClientsideSpellcheck"),false,function(_6,id){
_4.buttonPress(_6,id);
});
if(Xinha.is_ie){
_2.addToolbarElement("clientsidespellcheck","print",1);
}
}
ClientsideSpellcheck._pluginInfo={name:"ClientsideSpellcheck",version:"1.0",developer:"Michael Harris",developer_url:"http://www.jonesinternational.edu",c_owner:"Red Egg Software",sponsor:"Jones International University",sponsor_url:"http://www.jonesinternational.edu",license:"htmlArea"};
ClientsideSpellcheck.prototype._lc=function(_8){
return Xinha._lc(_8,"ClientsideSpellcheck");
};
ClientsideSpellcheck.prototype.buttonPress=function(_9){
try{
var _a=new ActiveXObject("ieSpell.ieSpellExtension");
_a.CheckAllLinkedDocuments(document);
}
catch(exception){
if(exception.number==-2146827859){
if(confirm(this.lc("ieSpell not detected. Click Ok to go to download page."))){
window.open("http://www.iespell.com/download.php","DownLoad");
}
}else{
alert(this.lc("ieSpell can only be used in Internet Explorer"));
}
}
};
Binary file not shown.

After

Width:  |  Height:  |  Size: 97 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 B

@@ -0,0 +1,8 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// translated: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
{
"Spell Check using ieSpell": "Englische Rechtschreibkontrolle mit ieSpell",
"ieSpell can only be used in Internet Explorer": "ieSpell kann nur mit dem Internet Explorer benutzt werden",
"ieSpell not detected. Click Ok to go to download page.": "ieSpell wurde nicht gefunden. Drücken sie Ok um ieSpeck herunter zu laden."
};
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Spell Check using ieSpell": "スペルチェックに ieSpell を使う",
"ieSpell can only be used in Internet Explorer": "ieSpell は Internet Explorer でのみ使用できます",
"ieSpell not detected. Click Ok to go to download page.": "ieSpell が検知されませんでした。OK をクリックしてダウンロードページを開いてください。"
};
@@ -0,0 +1,3 @@
// Dummy file
{};
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Author: Maarten Molenschot, maarten@nrgmm.nl
{
"Spell Check using ieSpell": "Engelse spellingscontrole met ieSpell",
"ieSpell can only be used in Internet Explorer": "ieSpell kan alleen worden gebruikt in Internet Explorer",
"ieSpell not detected. Click Ok to go to download page.": "ieSpell werd niet gevonden. Klik op Ok om ieSpell te downloaden"
};
@@ -0,0 +1,18 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Spell Check using ieSpell": "Verificação Ortográfica utilizando ieSpell"
}
+388 -443
View File
@@ -1,445 +1,390 @@
// Context Menu 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: context-menu.js,v 1.2 2005/01/11 15:00:55 garvinhicking Exp $
HTMLArea.loadStyle("menu.css", "ContextMenu");
function ContextMenu(editor) {
this.editor = editor;
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/ContextMenu/context-menu.js */
Xinha.loadStyle("menu.css","ContextMenu");
function ContextMenu(_1){
this.editor=_1;
}
ContextMenu._pluginInfo={name:"ContextMenu",version:"1.0",developer:"Mihai Bazon",developer_url:"http://dynarch.com/mishoo/",c_owner:"dynarch.com",sponsor:"American Bible Society",sponsor_url:"http://www.americanbible.org",license:"htmlArea"};
Xinha.Config.prototype.ContextMenu={disableMozillaSpellCheck:false};
ContextMenu.prototype.onGenerate=function(){
var _2=this;
var _3=this.editordoc=this.editor._iframe.contentWindow.document;
Xinha._addEvents(_3,["contextmenu"],function(_4){
return _2.popupMenu(Xinha.is_ie?_2.editor._iframe.contentWindow.event:_4);
});
this.currentMenu=null;
if(this.editor.config.ContextMenu.disableMozillaSpellCheck){
this.editordoc.body.spellcheck=false;
}
};
ContextMenu.prototype.getContextMenu=function(_5){
var _6=this;
var _7=this.editor;
var _8=_7.config;
var _9=[];
var _a=this.editor.plugins.TableOperations;
if(_a){
_a=_a.instance;
}
var _b=_7.hasSelectedText();
if(!Xinha.is_gecko){
if(_b){
_9.push([Xinha._lc("Cut","ContextMenu"),function(){
_7.execCommand("cut");
},null,_8.btnList["cut"][1]],[Xinha._lc("Copy","ContextMenu"),function(){
_7.execCommand("copy");
},null,_8.btnList["copy"][1]]);
_9.push([Xinha._lc("Paste","ContextMenu"),function(){
_7.execCommand("paste");
},null,_8.btnList["paste"][1]]);
}
}
var _c=_5;
var _d=[];
var _e=null;
var _f=null;
var tr=null;
var td=null;
var img=null;
function tableOperation(_13){
_a.buttonPress(_7,_13);
}
function insertPara(_14){
var el=_c;
var par=el.parentNode;
var p=_7._doc.createElement("p");
p.appendChild(_7._doc.createElement("br"));
par.insertBefore(p,_14?el.nextSibling:el);
var sel=_7._getSelection();
var _19=_7._createRange(sel);
if(!Xinha.is_ie){
sel.removeAllRanges();
_19.selectNodeContents(p);
_19.collapse(true);
sel.addRange(_19);
}else{
_19.moveToElementText(p);
_19.collapse(true);
_19.select();
}
}
for(;_5;_5=_5.parentNode){
var tag=_5.tagName;
if(!tag){
continue;
}
tag=tag.toLowerCase();
switch(tag){
case "img":
img=_5;
_d.push(null,[Xinha._lc("_Image Properties...","ContextMenu"),function(){
_7._insertImage(img);
},Xinha._lc("Show the image properties dialog","ContextMenu"),_8.btnList["insertimage"][1]]);
break;
case "a":
_e=_5;
_d.push(null,[Xinha._lc("_Modify Link...","ContextMenu"),function(){
_7.config.btnList["createlink"][3](_7);
},Xinha._lc("Current URL is","ContextMenu")+": "+_e.href,_8.btnList["createlink"][1]],[Xinha._lc("Chec_k Link...","ContextMenu"),function(){
window.open(_e.href);
},Xinha._lc("Opens this link in a new window","ContextMenu")],[Xinha._lc("_Remove Link...","ContextMenu"),function(){
if(confirm(Xinha._lc("Please confirm that you want to unlink this element.","ContextMenu")+"\n"+Xinha._lc("Link points to:","ContextMenu")+" "+_e.href)){
while(_e.firstChild){
_e.parentNode.insertBefore(_e.firstChild,_e);
}
_e.parentNode.removeChild(_e);
}
},Xinha._lc("Unlink the current element","ContextMenu")]);
break;
case "td":
td=_5;
if(!_a){
break;
}
_d.push(null,[Xinha._lc("C_ell Properties...","ContextMenu"),function(){
tableOperation("TO-cell-prop");
},Xinha._lc("Show the Table Cell Properties dialog","ContextMenu"),_8.btnList["TO-cell-prop"][1]],[Xinha._lc("Insert Cell After","ContextMenu"),function(){
tableOperation("TO-cell-insert-after");
},Xinha._lc("Insert Cell After","ContextMenu"),_8.btnList["TO-cell-insert-after"][1]],[Xinha._lc("Insert Cell Before","ContextMenu"),function(){
tableOperation("TO-cell-insert-before");
},Xinha._lc("Insert Cell After","ContextMenu"),_8.btnList["TO-cell-insert-before"][1]],[Xinha._lc("Delete Cell","ContextMenu"),function(){
tableOperation("TO-cell-delete");
},Xinha._lc("Delete Cell","ContextMenu"),_8.btnList["TO-cell-delete"][1]],[Xinha._lc("Merge Cells","ContextMenu"),function(){
tableOperation("TO-cell-merge");
},Xinha._lc("Merge Cells","ContextMenu"),_8.btnList["TO-cell-merge"][1]]);
break;
case "tr":
tr=_5;
if(!_a){
break;
}
_d.push(null,[Xinha._lc("Ro_w Properties...","ContextMenu"),function(){
tableOperation("TO-row-prop");
},Xinha._lc("Show the Table Row Properties dialog","ContextMenu"),_8.btnList["TO-row-prop"][1]],[Xinha._lc("I_nsert Row Before","ContextMenu"),function(){
tableOperation("TO-row-insert-above");
},Xinha._lc("Insert a new row before the current one","ContextMenu"),_8.btnList["TO-row-insert-above"][1]],[Xinha._lc("In_sert Row After","ContextMenu"),function(){
tableOperation("TO-row-insert-under");
},Xinha._lc("Insert a new row after the current one","ContextMenu"),_8.btnList["TO-row-insert-under"][1]],[Xinha._lc("_Delete Row","ContextMenu"),function(){
tableOperation("TO-row-delete");
},Xinha._lc("Delete the current row","ContextMenu"),_8.btnList["TO-row-delete"][1]]);
break;
case "table":
_f=_5;
if(!_a){
break;
}
_d.push(null,[Xinha._lc("_Table Properties...","ContextMenu"),function(){
tableOperation("TO-table-prop");
},Xinha._lc("Show the Table Properties dialog","ContextMenu"),_8.btnList["TO-table-prop"][1]],[Xinha._lc("Insert _Column Before","ContextMenu"),function(){
tableOperation("TO-col-insert-before");
},Xinha._lc("Insert a new column before the current one","ContextMenu"),_8.btnList["TO-col-insert-before"][1]],[Xinha._lc("Insert C_olumn After","ContextMenu"),function(){
tableOperation("TO-col-insert-after");
},Xinha._lc("Insert a new column after the current one","ContextMenu"),_8.btnList["TO-col-insert-after"][1]],[Xinha._lc("De_lete Column","ContextMenu"),function(){
tableOperation("TO-col-delete");
},Xinha._lc("Delete the current column","ContextMenu"),_8.btnList["TO-col-delete"][1]]);
break;
case "body":
_d.push(null,[Xinha._lc("Justify Left","ContextMenu"),function(){
_7.execCommand("justifyleft");
},null,_8.btnList["justifyleft"][1]],[Xinha._lc("Justify Center","ContextMenu"),function(){
_7.execCommand("justifycenter");
},null,_8.btnList["justifycenter"][1]],[Xinha._lc("Justify Right","ContextMenu"),function(){
_7.execCommand("justifyright");
},null,_8.btnList["justifyright"][1]],[Xinha._lc("Justify Full","ContextMenu"),function(){
_7.execCommand("justifyfull");
},null,_8.btnList["justifyfull"][1]]);
break;
}
}
if(_b&&!_e){
_9.push(null,[Xinha._lc("Make lin_k...","ContextMenu"),function(){
_7.config.btnList["createlink"][3](_7);
},Xinha._lc("Create a link","ContextMenu"),_8.btnList["createlink"][1]]);
}
for(var i=0;i<_d.length;++i){
_9.push(_d[i]);
}
if(!/html|body/i.test(_c.tagName)){
_9.push(null,[Xinha._lc({string:"Remove the $elem Element...",replace:{elem:"&lt;"+_c.tagName+"&gt;"}},"ContextMenu"),function(){
if(confirm(Xinha._lc("Please confirm that you want to remove this element:","ContextMenu")+" "+_c.tagName)){
var el=_c;
var p=el.parentNode;
p.removeChild(el);
if(Xinha.is_gecko){
if(p.tagName.toLowerCase()=="td"&&!p.hasChildNodes()){
p.appendChild(_7._doc.createElement("br"));
}
_7.forceRedraw();
_7.focusEditor();
_7.updateToolbar();
if(_f){
var _1e=_f.style.borderCollapse;
_f.style.borderCollapse="collapse";
_f.style.borderCollapse="separate";
_f.style.borderCollapse=_1e;
}
}
}
},Xinha._lc("Remove this node from the document","ContextMenu")],[Xinha._lc("Insert paragraph before","ContextMenu"),function(){
insertPara(false);
},Xinha._lc("Insert a paragraph before the current node","ContextMenu")],[Xinha._lc("Insert paragraph after","ContextMenu"),function(){
insertPara(true);
},Xinha._lc("Insert a paragraph after the current node","ContextMenu")]);
}
if(!_9[0]){
_9.shift();
}
return _9;
};
ContextMenu.prototype.popupMenu=function(ev){
var _20=this;
if(this.currentMenu){
this.closeMenu();
}
function getPos(el){
var r={x:el.offsetLeft,y:el.offsetTop};
if(el.offsetParent){
var tmp=getPos(el.offsetParent);
r.x+=tmp.x;
r.y+=tmp.y;
}
return r;
}
function documentClick(ev){
ev||(ev=window.event);
if(!_20.currentMenu){
alert(Xinha._lc("How did you get here? (Please report!)","ContextMenu"));
return false;
}
var el=Xinha.is_ie?ev.srcElement:ev.target;
for(;el!=null&&el!=_20.currentMenu;el=el.parentNode){
}
if(el==null){
_20.closeMenu();
}
}
var _26=[];
function keyPress(ev){
ev||(ev=window.event);
Xinha._stopEvent(ev);
if(ev.keyCode==27){
_20.closeMenu();
return false;
}
var key=String.fromCharCode(Xinha.is_ie?ev.keyCode:ev.charCode).toLowerCase();
for(var i=_26.length;--i>=0;){
var k=_26[i];
if(k[0].toLowerCase()==key){
k[1].__msh.activate();
}
}
}
_20.closeMenu=function(){
_20.currentMenu.parentNode.removeChild(_20.currentMenu);
_20.currentMenu=null;
Xinha._removeEvent(document,"mousedown",documentClick);
Xinha._removeEvent(_20.editordoc,"mousedown",documentClick);
if(_26.length>0){
Xinha._removeEvent(_20.editordoc,"keypress",keyPress);
}
if(Xinha.is_ie){
_20.iePopup.hide();
}
};
var _2b=Xinha.is_ie?ev.srcElement:ev.target;
var _2c=getPos(_20.editor._htmlArea);
var x=ev.clientX+_2c.x;
var y=ev.clientY+_2c.y;
var div;
var doc;
if(!Xinha.is_ie){
doc=document;
}else{
var _31=this.iePopup=window.createPopup();
doc=_31.document;
doc.open();
doc.write("<html><head><style type='text/css'>@import url("+Xinha.getPluginDir("ContextMenu")+"/menu.css); html, body { padding: 0px; margin: 0px; overflow: hidden; border: 0px; }</style></head><body unselectable='yes'></body></html>");
doc.close();
}
div=doc.createElement("div");
if(Xinha.is_ie){
div.unselectable="on";
}
div.oncontextmenu=function(){
return false;
};
div.className="htmlarea-context-menu";
if(!Xinha.is_ie){
div.style.left=div.style.top="0px";
}
doc.body.appendChild(div);
var _32=doc.createElement("table");
div.appendChild(_32);
_32.cellSpacing=0;
_32.cellPadding=0;
var _33=doc.createElement("tbody");
_32.appendChild(_33);
var _34=this.getContextMenu(_2b);
for(var i=0;i<_34.length;++i){
var _36=_34[i];
var _37=doc.createElement("tr");
_33.appendChild(_37);
if(Xinha.is_ie){
_37.unselectable="on";
}else{
_37.onmousedown=function(ev){
Xinha._stopEvent(ev);
return false;
};
}
if(!_36){
_37.className="separator";
var td=doc.createElement("td");
td.className="icon";
var _3a=">";
if(Xinha.is_ie){
td.unselectable="on";
_3a=" unselectable='on' style='height=1px'>&nbsp;";
}
td.innerHTML="<div"+_3a+"</div>";
var td1=td.cloneNode(true);
td1.className="label";
_37.appendChild(td);
_37.appendChild(td1);
}else{
var _3c=_36[0];
_37.className="item";
_37.__msh={item:_37,label:_3c,action:_36[1],tooltip:_36[2]||null,icon:_36[3]||null,activate:function(){
_20.closeMenu();
_20.editor.focusEditor();
this.action();
}};
_3c=_3c.replace(/_([a-zA-Z0-9])/,"<u>$1</u>");
if(_3c!=_36[0]){
_26.push([RegExp.$1,_37]);
}
_3c=_3c.replace(/__/,"_");
var td1=doc.createElement("td");
if(Xinha.is_ie){
td1.unselectable="on";
}
_37.appendChild(td1);
td1.className="icon";
if(_37.__msh.icon){
var t=Xinha.makeBtnImg(_37.__msh.icon,doc);
td1.appendChild(t);
}
var td2=doc.createElement("td");
if(Xinha.is_ie){
td2.unselectable="on";
}
_37.appendChild(td2);
td2.className="label";
td2.innerHTML=_3c;
_37.onmouseover=function(){
this.className+=" hover";
_20.editor._statusBarTree.innerHTML=this.__msh.tooltip||"&nbsp;";
};
_37.onmouseout=function(){
this.className="item";
};
_37.oncontextmenu=function(ev){
this.__msh.activate();
if(!Xinha.is_ie){
Xinha._stopEvent(ev);
}
return false;
};
_37.onmouseup=function(ev){
var _41=(new Date()).getTime();
if(_41-_20.timeStamp>500){
this.__msh.activate();
}
if(!Xinha.is_ie){
Xinha._stopEvent(ev);
}
return false;
};
}
}
if(!Xinha.is_ie){
div.style.left=x+"px";
div.style.top=y+"px";
}else{
this.iePopup.show(ev.screenX,ev.screenY,300,50);
var w=div.offsetWidth;
var h=div.offsetHeight;
this.iePopup.show(ev.screenX,ev.screenY,w,h);
}
this.currentMenu=div;
this.timeStamp=(new Date()).getTime();
Xinha._addEvent(document,"mousedown",documentClick);
Xinha._addEvent(this.editordoc,"mousedown",documentClick);
if(_26.length>0){
Xinha._addEvent(this.editordoc,"keypress",keyPress);
}
Xinha._stopEvent(ev);
return false;
};
ContextMenu._pluginInfo = {
name : "ContextMenu",
version : "1.0",
developer : "Mihai Bazon",
developer_url : "http://dynarch.com/mishoo/",
c_owner : "dynarch.com",
sponsor : "American Bible Society",
sponsor_url : "http://www.americanbible.org",
license : "htmlArea"
};
ContextMenu.prototype.onGenerate = function() {
var self = this;
var doc = this.editordoc = this.editor._iframe.contentWindow.document;
HTMLArea._addEvents(doc, ["contextmenu"],
function (event) {
return self.popupMenu(HTMLArea.is_ie ? self.editor._iframe.contentWindow.event : event);
});
this.currentMenu = null;
};
ContextMenu.prototype.getContextMenu = function(target) {
var self = this;
var editor = this.editor;
var config = editor.config;
var menu = [];
var tbo = this.editor.plugins.TableOperations;
if (tbo) tbo = tbo.instance;
var i18n = ContextMenu.I18N;
var selection = editor.hasSelectedText();
if (selection)
menu.push([ i18n["Cut"], function() { editor.execCommand("cut"); }, null, config.btnList["cut"][1] ],
[ i18n["Copy"], function() { editor.execCommand("copy"); }, null, config.btnList["copy"][1] ]);
menu.push([ i18n["Paste"], function() { editor.execCommand("paste"); }, null, config.btnList["paste"][1] ]);
var currentTarget = target;
var elmenus = [];
var link = null;
var table = null;
var tr = null;
var td = null;
var img = null;
function tableOperation(opcode) {
tbo.buttonPress(editor, opcode);
};
function insertPara(after) {
var el = currentTarget;
var par = el.parentNode;
var p = editor._doc.createElement("p");
p.appendChild(editor._doc.createElement("br"));
par.insertBefore(p, after ? el.nextSibling : el);
var sel = editor._getSelection();
var range = editor._createRange(sel);
if (!HTMLArea.is_ie) {
sel.removeAllRanges();
range.selectNodeContents(p);
range.collapse(true);
sel.addRange(range);
} else {
range.moveToElementText(p);
range.collapse(true);
range.select();
}
};
for (; target; target = target.parentNode) {
var tag = target.tagName;
if (!tag)
continue;
tag = tag.toLowerCase();
switch (tag) {
case "img":
img = target;
elmenus.push(null,
[ i18n["Image Properties"],
function() {
editor._insertImage(img);
},
i18n["Show the image properties dialog"],
config.btnList["insertimage"][1] ]
);
break;
case "a":
link = target;
elmenus.push(null,
[ i18n["Modify Link"],
function() { editor.execCommand("createlink", true); },
i18n["Current URL is"] + ': ' + link.href,
config.btnList["createlink"][1] ],
[ i18n["Check Link"],
function() { window.open(link.href); },
i18n["Opens this link in a new window"] ],
[ i18n["Remove Link"],
function() {
if (confirm(i18n["Please confirm that you want to unlink this element."] + "\n" +
i18n["Link points to:"] + " " + link.href)) {
while (link.firstChild)
link.parentNode.insertBefore(link.firstChild, link);
link.parentNode.removeChild(link);
}
},
i18n["Unlink the current element"] ]
);
break;
case "td":
td = target;
if (!tbo) break;
elmenus.push(null,
[ i18n["Cell Properties"],
function() { tableOperation("TO-cell-prop"); },
i18n["Show the Table Cell Properties dialog"],
config.btnList["TO-cell-prop"][1] ]
);
break;
case "tr":
tr = target;
if (!tbo) break;
elmenus.push(null,
[ i18n["Row Properties"],
function() { tableOperation("TO-row-prop"); },
i18n["Show the Table Row Properties dialog"],
config.btnList["TO-row-prop"][1] ],
[ i18n["Insert Row Before"],
function() { tableOperation("TO-row-insert-above"); },
i18n["Insert a new row before the current one"],
config.btnList["TO-row-insert-above"][1] ],
[ i18n["Insert Row After"],
function() { tableOperation("TO-row-insert-under"); },
i18n["Insert a new row after the current one"],
config.btnList["TO-row-insert-under"][1] ],
[ i18n["Delete Row"],
function() { tableOperation("TO-row-delete"); },
i18n["Delete the current row"],
config.btnList["TO-row-delete"][1] ]
);
break;
case "table":
table = target;
if (!tbo) break;
elmenus.push(null,
[ i18n["Table Properties"],
function() { tableOperation("TO-table-prop"); },
i18n["Show the Table Properties dialog"],
config.btnList["TO-table-prop"][1] ],
[ i18n["Insert Column Before"],
function() { tableOperation("TO-col-insert-before"); },
i18n["Insert a new column before the current one"],
config.btnList["TO-col-insert-before"][1] ],
[ i18n["Insert Column After"],
function() { tableOperation("TO-col-insert-after"); },
i18n["Insert a new column after the current one"],
config.btnList["TO-col-insert-after"][1] ],
[ i18n["Delete Column"],
function() { tableOperation("TO-col-delete"); },
i18n["Delete the current column"],
config.btnList["TO-col-delete"][1] ]
);
break;
case "body":
elmenus.push(null,
[ i18n["Justify Left"],
function() { editor.execCommand("justifyleft"); }, null,
config.btnList["justifyleft"][1] ],
[ i18n["Justify Center"],
function() { editor.execCommand("justifycenter"); }, null,
config.btnList["justifycenter"][1] ],
[ i18n["Justify Right"],
function() { editor.execCommand("justifyright"); }, null,
config.btnList["justifyright"][1] ],
[ i18n["Justify Full"],
function() { editor.execCommand("justifyfull"); }, null,
config.btnList["justifyfull"][1] ]
);
break;
}
}
if (selection && !link)
menu.push(null, [ i18n["Make link"],
function() { editor.execCommand("createlink", true); },
i18n["Create a link"],
config.btnList["createlink"][1] ]);
for (var i = 0; i < elmenus.length; ++i)
menu.push(elmenus[i]);
if (!/html|body/i.test(currentTarget.tagName))
menu.push(null,
[ i18n["Remove the"] + " &lt;" + currentTarget.tagName + "&gt; " + i18n["Element"],
function() {
if (confirm(i18n["Please confirm that you want to remove this element:"] + " " +
currentTarget.tagName)) {
var el = currentTarget;
var p = el.parentNode;
p.removeChild(el);
if (HTMLArea.is_gecko) {
if (p.tagName.toLowerCase() == "td" && !p.hasChildNodes())
p.appendChild(editor._doc.createElement("br"));
editor.forceRedraw();
editor.focusEditor();
editor.updateToolbar();
if (table) {
var save_collapse = table.style.borderCollapse;
table.style.borderCollapse = "collapse";
table.style.borderCollapse = "separate";
table.style.borderCollapse = save_collapse;
}
}
}
},
i18n["Remove this node from the document"] ],
[ i18n["Insert paragraph before"],
function() { insertPara(false); },
i18n["Insert a paragraph before the current node"] ],
[ i18n["Insert paragraph after"],
function() { insertPara(true); },
i18n["Insert a paragraph after the current node"] ]
);
return menu;
};
ContextMenu.prototype.popupMenu = function(ev) {
var self = this;
var i18n = ContextMenu.I18N;
if (this.currentMenu)
this.currentMenu.parentNode.removeChild(this.currentMenu);
function getPos(el) {
var r = { x: el.offsetLeft, y: el.offsetTop };
if (el.offsetParent) {
var tmp = getPos(el.offsetParent);
r.x += tmp.x;
r.y += tmp.y;
}
return r;
};
function documentClick(ev) {
ev || (ev = window.event);
if (!self.currentMenu) {
alert(i18n["How did you get here? (Please report!)"]);
return false;
}
var el = HTMLArea.is_ie ? ev.srcElement : ev.target;
for (; el != null && el != self.currentMenu; el = el.parentNode);
if (el == null)
self.closeMenu();
//HTMLArea._stopEvent(ev);
//return false;
};
var keys = [];
function keyPress(ev) {
ev || (ev = window.event);
HTMLArea._stopEvent(ev);
if (ev.keyCode == 27) {
self.closeMenu();
return false;
}
var key = String.fromCharCode(HTMLArea.is_ie ? ev.keyCode : ev.charCode).toLowerCase();
for (var i = keys.length; --i >= 0;) {
var k = keys[i];
if (k[0].toLowerCase() == key)
k[1].__msh.activate();
}
};
self.closeMenu = function() {
self.currentMenu.parentNode.removeChild(self.currentMenu);
self.currentMenu = null;
HTMLArea._removeEvent(document, "mousedown", documentClick);
HTMLArea._removeEvent(self.editordoc, "mousedown", documentClick);
if (keys.length > 0)
HTMLArea._removeEvent(self.editordoc, "keypress", keyPress);
if (HTMLArea.is_ie)
self.iePopup.hide();
};
var target = HTMLArea.is_ie ? ev.srcElement : ev.target;
var ifpos = getPos(self.editor._iframe);
var x = ev.clientX + ifpos.x;
var y = ev.clientY + ifpos.y;
var div;
var doc;
if (!HTMLArea.is_ie) {
doc = document;
} else {
// IE stinks
var popup = this.iePopup = window.createPopup();
doc = popup.document;
doc.open();
doc.write("<html><head><style type='text/css'>@import url(" + _editor_url + "plugins/ContextMenu/menu.css); html, body { padding: 0px; margin: 0px; overflow: hidden; border: 0px; }</style></head><body unselectable='yes'></body></html>");
doc.close();
}
div = doc.createElement("div");
if (HTMLArea.is_ie)
div.unselectable = "on";
div.oncontextmenu = function() { return false; };
div.className = "htmlarea-context-menu";
if (!HTMLArea.is_ie)
div.style.left = div.style.top = "0px";
doc.body.appendChild(div);
var table = doc.createElement("table");
div.appendChild(table);
table.cellSpacing = 0;
table.cellPadding = 0;
var parent = doc.createElement("tbody");
table.appendChild(parent);
var options = this.getContextMenu(target);
for (var i = 0; i < options.length; ++i) {
var option = options[i];
var item = doc.createElement("tr");
parent.appendChild(item);
if (HTMLArea.is_ie)
item.unselectable = "on";
else item.onmousedown = function(ev) {
HTMLArea._stopEvent(ev);
return false;
};
if (!option) {
item.className = "separator";
var td = doc.createElement("td");
td.className = "icon";
var IE_IS_A_FUCKING_SHIT = '>';
if (HTMLArea.is_ie) {
td.unselectable = "on";
IE_IS_A_FUCKING_SHIT = " unselectable='on' style='height=1px'>&nbsp;";
}
td.innerHTML = "<div" + IE_IS_A_FUCKING_SHIT + "</div>";
var td1 = td.cloneNode(true);
td1.className = "label";
item.appendChild(td);
item.appendChild(td1);
} else {
var label = option[0];
item.className = "item";
item.__msh = {
item: item,
label: label,
action: option[1],
tooltip: option[2] || null,
icon: option[3] || null,
activate: function() {
self.closeMenu();
self.editor.focusEditor();
this.action();
}
};
label = label.replace(/_([a-zA-Z0-9])/, "<u>$1</u>");
if (label != option[0])
keys.push([ RegExp.$1, item ]);
label = label.replace(/__/, "_");
var td1 = doc.createElement("td");
if (HTMLArea.is_ie)
td1.unselectable = "on";
item.appendChild(td1);
td1.className = "icon";
if (item.__msh.icon)
td1.innerHTML = "<img align='middle' src='" + item.__msh.icon + "' />";
var td2 = doc.createElement("td");
if (HTMLArea.is_ie)
td2.unselectable = "on";
item.appendChild(td2);
td2.className = "label";
td2.innerHTML = label;
item.onmouseover = function() {
this.className += " hover";
self.editor._statusBarTree.innerHTML = this.__msh.tooltip || '&nbsp;';
};
item.onmouseout = function() { this.className = "item"; };
item.oncontextmenu = function(ev) {
this.__msh.activate();
if (!HTMLArea.is_ie)
HTMLArea._stopEvent(ev);
return false;
};
item.onmouseup = function(ev) {
var timeStamp = (new Date()).getTime();
if (timeStamp - self.timeStamp > 500)
this.__msh.activate();
if (!HTMLArea.is_ie)
HTMLArea._stopEvent(ev);
return false;
};
//if (typeof option[2] == "string")
//item.title = option[2];
}
}
if (!HTMLArea.is_ie) {
var dx = x + div.offsetWidth - window.innerWidth + 4;
var dy = y + div.offsetHeight - window.innerHeight + 4;
if (dx > 0) x -= dx;
if (dy > 0) y -= dy;
div.style.left = x + "px";
div.style.top = y + "px";
} else {
// determine the size (did I mention that IE stinks?)
var foobar = document.createElement("div");
foobar.className = "htmlarea-context-menu";
foobar.innerHTML = div.innerHTML;
document.body.appendChild(foobar);
var w = foobar.offsetWidth;
var h = foobar.offsetHeight;
document.body.removeChild(foobar);
this.iePopup.show(ev.screenX, ev.screenY, w, h);
}
this.currentMenu = div;
this.timeStamp = (new Date()).getTime();
HTMLArea._addEvent(document, "mousedown", documentClick);
HTMLArea._addEvent(this.editordoc, "mousedown", documentClick);
if (keys.length > 0)
HTMLArea._addEvent(this.editordoc, "keypress", keyPress);
HTMLArea._stopEvent(ev);
return false;
};
+49 -58
View File
@@ -1,59 +1,50 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8 | ISO-8859-1
// translated: <]{MJ}[> i@student.ethz.ch
ContextMenu.I18N = {
// Items that appear in menu. Please note that an underscore (_)
// character in the translation (right column) will cause the following
// letter to become underlined and be shortcut for that menu option.
"Cut" : "Ausschneiden",
"Copy" : "Kopieren",
"Paste" : "Einfügen",
"Image Properties" : "_Bild Einstellungen...",
"Modify Link" : "_Link ändern...",
"Check Link" : "Link testen...",
"Remove Link" : "Link entfernen...",
"Cell Properties" : "Z_ellen Einstellungen...",
"Row Properties" : "Ze_ilen Einstellungen...",
"Insert Row Before" : "Zeile einfügen v_or Position",
"Insert Row After" : "Zeile einfügen n_ach Position",
"Delete Row" : "Zeile löschen",
"Table Properties" : "_Tabellen Einstellungen...",
"Insert Column Before" : "Spalte einfügen vo_r Position",
"Insert Column After" : "Spalte einfügen na_ch Position",
"Delete Column" : "Spalte löschen",
"Justify Left" : "Links ausrichten",
"Justify Center" : "Zentriert",
"Justify Right" : "Rechts ausrichten",
"Justify Full" : "Blocksatz",
"Make link" : "Lin_k erstellen...",
"Remove the" : "",
"Element" : "Element entfernen...",
// Other labels (tooltips and alert/confirm box messages)
"Please confirm that you want to remove this element:" : "Wollen sie dieses Element wirklich entfernen ?",
"Remove this node from the document" : "Dieses Element aus dem Dokument entfernen",
"How did you get here? (Please report!)" : "How did you get here? (Please report!)",
"Show the image properties dialog" : "Fenster für die Bild-Einstellungen anzeigen",
"Modify URL" : "URL ändern",
"Current URL is" : "Aktuelle URL ist",
"Opens this link in a new window" : "Diesen Link in neuem Fenster öffnen",
"Please confirm that you want to unlink this element." : "Wollen sie diesen Link wirklich entfernen ?",
"Link points to:" : "Link zeigt auf:",
"Unlink the current element" : "Link auf Element entfernen",
"Show the Table Cell Properties dialog" : "Zellen-Einstellungen anzeigen",
"Show the Table Row Properties dialog" : "Zeilen-Einstellungen anzeigen",
"Insert a new row before the current one" : "Zeile einfügen vor der aktuellen Position",
"Insert a new row after the current one" : "Zeile einfügen nach der aktuellen Position",
"Delete the current row" : "Zeile löschen",
"Show the Table Properties dialog" : "Show the Table Properties dialog",
"Insert a new column before the current one" : "Spalte einfügen vor der aktuellen Position",
"Insert a new column after the current one" : "Spalte einfügen nach der aktuellen Position",
"Delete the current column" : "Spalte löschen",
"Create a link" : "Link erstellen"
// I18N constants
// LANG: "de", ENCODING: UTF-8
// translated: Raimund Meyer xinha@ray-of-light.org
{
"Cut": "Ausschneiden",
"Copy": "Kopieren",
"Paste": "Einfügen",
"_Image Properties...": "Eigenschaften",
"Show the image properties dialog": "Fenster für die Bildoptionen anzeigen",
"_Modify Link...": "Link ändern",
"Current URL is": "Aktuelle URL ist",
"Chec_k Link...": "Link testen",
"Opens this link in a new window": "Diesen Link in neuem Fenster öffnen",
"_Remove Link...": "Link entfernen",
"Please confirm that you want to unlink this element.": "Wollen sie diesen Link wirklich entfernen?",
"Link points to:": "Link zeigt auf:",
"Unlink the current element": "Link auf Element entfernen",
"C_ell Properties...": "Zellenoptionen",
"Show the Table Cell Properties dialog": "Zellenoptionen anzeigen",
"Ro_w Properties...": "Zeilenoptionen",
"Show the Table Row Properties dialog": "Zeilenoptionen anzeigen",
"I_nsert Row Before": "Zeile einfügen vor Position",
"Insert a new row before the current one": "Zeile einfügen vor der aktuellen Position",
"In_sert Row After": "Zeile einügen nach Position",
"Insert a new row after the current one": "Zeile einfügen nach der aktuellen Position",
"_Delete Row": "Zeile löschen",
"Delete the current row": "Zeile löschen",
"_Table Properties...": "Tabellenoptionen",
"Show the Table Properties dialog": "Tabellenoptionen anzeigen",
"Insert _Column Before": "Spalte einfügen vor Position",
"Insert a new column before the current one": "Spalte einfügen vor der aktuellen Position",
"Insert C_olumn After": "Spalte einfügen nach Position",
"Insert a new column after the current one": "Spalte einfügen nach der aktuellen Position",
"De_lete Column": "Spalte löschen",
"Delete the current column": "Spalte löschen",
"Justify Left": "Linksbündig",
"Justify Center": "Zentriert",
"Justify Right": "Rechtsbündig",
"Justify Full": "Blocksatz",
"Make lin_k...": "Link erstellen",
"Create a link": "Link erstellen",
"Remove the $elem Element...": "Element $elem entfernen...",
"Please confirm that you want to remove this element:": "Wollen sie dieses Element wirklich entfernen?",
"Remove this node from the document": "Dieses Element aus dem Dokument entfernen",
"Insert paragraph before": "Absatz einfügen vor Position",
"Insert a paragraph before the current node": "Absatz einfügen vor der aktuellen Position",
"Insert paragraph after": "Absatz einfügen hinter Position",
"Insert a paragraph after the current node": "Absatz einfügen hinter der aktuellen Position",
"How did you get here? (Please report!)": "Wie sind Sie denn hier hin gekommen? (Please report!)"
};
+44 -54
View File
@@ -1,57 +1,47 @@
// I18N constants
// LANG: "el", ENCODING: UTF-8 | ISO-8859-7
// LANG: "el", ENCODING: UTF-8
// Author: Dimitris Glezos, dimitris@glezos.com
ContextMenu.I18N = {
// Items that appear in menu. Please note that an underscore (_)
// character in the translation (right column) will cause the following
// letter to become underlined and be shortcut for that menu option.
"Cut" : "Αποκοπή",
"Copy" : "Αντιγραφή",
"Paste" : "Επικόλληση",
"Image Properties" : "Ιδιότητες Εικόνας...",
"Modify Link" : "Τροποποίηση συνδέσμου...",
"Check Link" : "Έλεγχος συνδέσμων...",
"Remove Link" : "Διαγραφή συνδέσμου...",
"Cell Properties" : "Ιδιότητες κελιού...",
"Row Properties" : "Ιδιότητες γραμμής...",
"Insert Row Before" : "Εισαγωγή γραμμής πριν",
"Insert Row After" : "Εισαγωγή γραμμής μετά",
"Delete Row" : "Διαγραφή γραμμής",
"Table Properties" : "Ιδιότητες πίνακα...",
"Insert Column Before" : "Εισαγωγή στήλης πριν",
"Insert Column After" : "Εισαγωγή στήλης μετά",
"Delete Column" : "Διαγραφή στήλης",
"Justify Left" : "Στοίχηση Αριστερά",
"Justify Center" : "Στοίχηση Κέντρο",
"Justify Right" : "Στοίχηση Δεξιά",
"Justify Full" : "Πλήρης Στοίχηση",
"Make link" : "Δημιουργία συνδέσμου...",
"Remove the" : "Αφαίρεση",
"Element" : "στοιχείου...",
// Other labels (tooltips and alert/confirm box messages)
"Please confirm that you want to remove this element:" : "Είστε βέβαιος πως θέλετε να αφαιρέσετε το στοιχείο ",
"Remove this node from the document" : "Αφαίρεση αυτού του κόμβου από το έγγραφο",
"How did you get here? (Please report!)" : "Πώς ήρθατε μέχρι εδώ; (Παρακαλούμε αναφέρετε το!)",
"Show the image properties dialog" : "Εμφάνιση διαλόγου με τις Ιδιότητες εικόνας",
"Modify URL" : "Τροποποίηση URL",
"Current URL is" : "Το τρέχων URL είναι",
"Opens this link in a new window" : "Ανοίγει αυτό τον σύνδεσμο σε ένα νέο παράθυρο",
"Please confirm that you want to unlink this element." : "Είστε βέβαιος πως θέλετε να αφαιρέσετε τον σύνδεσμο από αυτό το στοιχείο:",
"Link points to:" : "Ο σύνδεμος οδηγεί εδώ:",
"Unlink the current element" : "Αφαίρεση συνδέσμου από το παρών στοιχείο",
"Show the Table Cell Properties dialog" : "Εμφάνιση διαλόγου με τις Ιδιότητες κελιού Πίνακα",
"Show the Table Row Properties dialog" : "Εμφάνιση διαλόγου με τις Ιδιότητες γραμμής Πίνακα",
"Insert a new row before the current one" : "Εισαγωγή μιας νέας γραμμής πριν την επιλεγμένη",
"Insert a new row after the current one" : "Εισαγωγή μιας νέας γραμμής μετά την επιλεγμένη",
"Delete the current row" : "Διαγραφή επιλεγμένης γραμμής",
"Show the Table Properties dialog" : "Εμφάνιση διαλόγου με τις Ιδιότητες Πίνακα",
"Insert a new column before the current one" : "Εισαγωγή νέας στήλης πριν την επιλεγμένη",
"Insert a new column after the current one" : "Εισαγωγή νέας στήλης μετά την επιλεγμένη",
"Delete the current column" : "Διαγραφή επιλεγμένης στήλης",
"Create a link" : "Δημιουργία συνδέσμου"
{
"Cut": "ΑποκοπΞ",
"Copy": "ΑντιγραφΞ",
"Paste": "Ξ•Ο€ΞΉΞΊΟŒΞ»Ξ»Ξ·ΟƒΞ·",
"_Image Properties...": "Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ Ξ•ΞΉΞΊΟŒΞ½Ξ±Ο‚...",
"_Modify Link...": ροποποίηση συνδέσμου...",
"Chec_k Link...": "ΞˆΞ»Ξ΅Ξ³Ο‡ΞΏΟ‚ συνδέσμων...",
"_Remove Link...": "ΔιαγραφΠσυνδέσμου...",
"C_ell Properties...": "Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ κΡλιού...",
"Ro_w Properties...": "Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ γραμμΞΟ‚...",
"I_nsert Row Before": "ΕισαγωγΠγραμμΞΟ‚ πριν",
"In_sert Row After": "ΕισαγωγΠγραμμΞΟ‚ μΡτά",
"_Delete Row": "ΔιαγραφΠγραμμΞΟ‚",
"_Table Properties...": "Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ πίνακα...",
"Insert _Column Before": "ΕισαγωγΠστΞλης πριν",
"Insert C_olumn After": "ΕισαγωγΠστΞλης μΡτά",
"De_lete Column": "ΔιαγραφΠστΞλης",
"Justify Left": "Στοίχηση ΑριστΡρά",
"Justify Center": "Στοίχηση ΞšΞ­Ξ½Ο„ΟΞΏ",
"Justify Right": "Στοίχηση ΔΡξιά",
"Justify Full": "Ξ Ξ»Ξρης Στοίχηση",
"Make lin_k...": "Δημιουργία συνδέσμου...",
"Remove the $elem Element...": "ΑφαίρΡση $elem στοιχΡίου...",
"Please confirm that you want to remove this element:": "ΕίστΡ Ξ²Ξ­Ξ²Ξ±ΞΉΞΏΟ‚ πως θέλΡτΡ Ξ½Ξ± αφαιρέσΡτΡ το στοιχΡίο ",
"Remove this node from the document": "ΑφαίρΡση αυτού του ΞΊΟŒΞΌΞ²ΞΏΟ… Ξ±Ο€ΟŒ το έγγραφο",
"How did you get here? (Please report!)": "Ξ ΟŽΟ‚ ΞρθατΡ μέχρι Ρδώ; (ΠαρακαλούμΡ αναφέρΡτΡ το!)",
"Show the image properties dialog": "Εμφάνιση Ξ΄ΞΉΞ±Ξ»ΟŒΞ³ΞΏΟ… ΞΌΞ΅ τις Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ Ξ΅ΞΉΞΊΟŒΞ½Ξ±Ο‚",
"Modify URL": ροποποίηση URL",
"Current URL is": ΞΏ τρέχων URL Ρίναι",
"Opens this link in a new window": "ΑνοίγΡι Ξ±Ο…Ο„ΟŒ τον σύνδΡσμο σΡ Ξ­Ξ½Ξ± Ξ½Ξ­ΞΏ παράθυρο",
"Please confirm that you want to unlink this element.": "ΕίστΡ Ξ²Ξ­Ξ²Ξ±ΞΉΞΏΟ‚ πως θέλΡτΡ Ξ½Ξ± αφαιρέσΡτΡ τον σύνδΡσμο Ξ±Ο€ΟŒ Ξ±Ο…Ο„ΟŒ το στοιχΡίο:",
"Link points to:": "Ο σύνδΡμος οδηγΡί Ρδώ:",
"Unlink the current element": "ΑφαίρΡση συνδέσμου Ξ±Ο€ΟŒ το Ο€Ξ±ΟΟŽΞ½ στοιχΡίο",
"Show the Table Cell Properties dialog": "Εμφάνιση Ξ΄ΞΉΞ±Ξ»ΟŒΞ³ΞΏΟ… ΞΌΞ΅ τις Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ κΡλιού Ξ Ξ―Ξ½Ξ±ΞΊΞ±",
"Show the Table Row Properties dialog": "Εμφάνιση Ξ΄ΞΉΞ±Ξ»ΟŒΞ³ΞΏΟ… ΞΌΞ΅ τις Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ γραμμΞΟ‚ Ξ Ξ―Ξ½Ξ±ΞΊΞ±",
"Insert a new row before the current one": "ΕισαγωγΠμιας Ξ½Ξ­Ξ±Ο‚ γραμμΞΟ‚ πριν την ΡπιλΡγμένη",
"Insert a new row after the current one": "ΕισαγωγΠμιας Ξ½Ξ­Ξ±Ο‚ γραμμΞΟ‚ μΡτά την ΡπιλΡγμένη",
"Delete the current row": "ΔιαγραφΠΡπιλΡγμένης γραμμΞΟ‚",
"Show the Table Properties dialog": "Εμφάνιση Ξ΄ΞΉΞ±Ξ»ΟŒΞ³ΞΏΟ… ΞΌΞ΅ τις Ξ™Ξ΄ΞΉΟŒΟ„Ξ·Ο„Ξ΅Ο‚ Ξ Ξ―Ξ½Ξ±ΞΊΞ±",
"Insert a new column before the current one": "ΕισαγωγΠνέας στΞλης πριν την ΡπιλΡγμένη",
"Insert a new column after the current one": "ΕισαγωγΠνέας στΞλης μΡτά την ΡπιλΡγμένη",
"Delete the current column": "ΔιαγραφΠΡπιλΡγμένης στΞλης",
"Create a link": "Δημιουργία συνδέσμου"
};
+50
View File
@@ -0,0 +1,50 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Cut": "Couper",
"Copy": "Copier",
"Paste": "Coller",
"_Image Properties...": "_Propriétés de l'image...",
"_Modify Link...": "_Modifier le lien...",
"Chec_k Link...": "_Vérifier le lien...",
"_Remove Link...": "_Supprimer le lien...",
"C_ell Properties...": "P_ropriétés de la cellule...",
"Ro_w Properties...": "Pr_opriétés de la rangée...",
"I_nsert Row Before": "Insérer une rangée a_vant",
"In_sert Row After": "Insér_er une rangée après",
"_Delete Row": "Suppr_imer une rangée",
"_Table Properties...": "Proprié_tés de la table...",
"Insert _Column Before": "I_nsérer une colonne avant",
"Insert C_olumn After": "Insérer une colonne après",
"De_lete Column": "_Supprimer la colonne",
"Justify Left": "Aligner à gauche",
"Justify Center": "Aligner au centre",
"Justify Right": "Aligner à droite",
"Justify Full": "Justifier",
"Make lin_k...": "Convertir en lien...",
"Remove the $elem Element...": "Supprimer Élément $elem...",
"Insert paragraph before": "Insérer un paragraphe avant",
"Insert paragraph after": "Insérer un paragraphe après",
"Please confirm that you want to remove this element:": "Confirmer la suppression de cet élément:",
"Remove this node from the document": "Supprimer ce noeud du document",
"How did you get here? (Please report!)": "Comment êtes-vous arrivé ici ? (Reportez le bug SVP !)",
"Show the image properties dialog": "Afficher le dialogue des propriétés d'image",
"Modify URL": "Modifier l'URL",
"Current URL is": "L'URL courante est",
"Opens this link in a new window": "Ouvrir ce lien dans une nouvelle fenêtre",
"Please confirm that you want to unlink this element.": "Voulez-vous vraiment enlever le lien présent sur cet élément.",
"Link points to:": "Le lien pointe sur:",
"Unlink the current element": "Enlever le lien sur cet élément",
"Show the Table Cell Properties dialog": "Afficher la boite de propriété des cellules",
"Show the Table Row Properties dialog": "Afficher la boite de propriété des rangées",
"Insert a new row before the current one": "Insérer une nouvelle rangée avant celle-ci",
"Insert a new row after the current one": "Insérer une nouvelle rangée après celle-ci",
"Delete the current row": "Supprimer la rangée courante",
"Show the Table Properties dialog": "Afficher la boite de propriété de tableau",
"Insert a new column before the current one": "Insérer une nouvelle rangée avant celle-ci",
"Insert a new column after the current one": "Insérer une nouvelle colonne après celle-ci",
"Delete the current column": "Supprimer cette colonne",
"Create a link": "Créer un lien",
"Insert a paragraph before the current node": "Insérer un paragraphe avant le noeud courant",
"Insert a paragraph after the current node": "Insérer un paragraphe après le noeud courant"
};
+47
View File
@@ -0,0 +1,47 @@
// I18N constants
// LANG: "he", ENCODING: UTF-8
// Author: Liron Newman, http://www.eesh.net, <plastish at ultinet dot org>
{
"Cut": "גזור",
"Copy": "העתק",
"Paste": "הדבק",
"_Image Properties...": "_מאפייני תמונה...",
"_Modify Link...": "_שנה קישור...",
"Chec_k Link...": "בדו_ק קישור...",
"_Remove Link...": "_הסר קישור...",
"C_ell Properties...": "מאפייני ת_א...",
"Ro_w Properties...": "מאפייני _טור...",
"I_nsert Row Before": "ה_כנס שורה לפני",
"In_sert Row After": "הכנ_ס שורה אחרי",
"_Delete Row": "_מחק שורה",
"_Table Properties...": "מאפייני ט_בלה...",
"Insert _Column Before": "הכנס _טור לפני",
"Insert C_olumn After": "הכנס ט_ור אחרי",
"De_lete Column": "מח_ק טור",
"Justify Left": "ישור לשמאל",
"Justify Center": "ישור למרכז",
"Justify Right": "ישור לימין",
"Justify Full": "ישור לשורה מלאה",
"Make lin_k...": "צור קי_שור...",
"Remove the $elem Element...": "הסר את אלמנט ה- $elem...",
"Please confirm that you want to remove this element:": "אנא אשר שברצונך להסיר את האלמנט הזה:",
"Remove this node from the document": "הסרה של node זה מהמסמך",
"How did you get here? (Please report!)": "איך הגעת הנה? (אנא דווח!)",
"Show the image properties dialog": "מציג את חלון הדו-שיח של מאפייני תמונה",
"Modify URL": "שינוי URL",
"Current URL is": "URL נוכחי הוא",
"Opens this link in a new window": "פתיחת קישור זה בחלון חדש",
"Please confirm that you want to unlink this element.": "אנא אשר שאתה רוצה לנתק את אלמנט זה.",
"Link points to:": "הקישור מצביע אל:",
"Unlink the current element": "ניתוק את האלמנט הנוכחי",
"Show the Table Cell Properties dialog": "מציג את חלון הדו-שיח של מאפייני תא בטבלה",
"Show the Table Row Properties dialog": "מציג את חלון הדו-שיח של מאפייני שורה בטבלה",
"Insert a new row before the current one": "הוספת שורה חדשה לפני הנוכחית",
"Insert a new row after the current one": "הוספת שורה חדשה אחרי הנוכחית",
"Delete the current row": "מחיקת את השורה הנוכחית",
"Show the Table Properties dialog": "מציג את חלון הדו-שיח של מאפייני טבלה",
"Insert a new column before the current one": "הוספת טור חדש לפני הנוכחי",
"Insert a new column after the current one": "הוספת טור חדש אחרי הנוכחי",
"Delete the current column": "מחיקת את הטור הנוכחי",
"Create a link": "יצירת קישור"
};
+53
View File
@@ -0,0 +1,53 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Cut": "切り取り",
"Copy": "コピー",
"Paste": "貼り付け",
"_Image Properties...": "画像のプロパティ(_I)...",
"Show the image properties dialog": "この画像のプロパティダイアログを表示します",
"_Modify Link...": "リンクの修正(_M)...",
"Current URL is": "現在のURL",
"Chec_k Link...": "リンクを確認(_K)...",
"Opens this link in a new window": "このリンクを新しいウィンドウで開きます",
"_Remove Link...": "リンクの削除(_R)",
"Please confirm that you want to unlink this element.": "この要素のリンクを削除します。よろしいですか。",
"Link points to:": "リンク先:",
"Unlink the current element": "この要素のリンクを解除",
"C_ell Properties...": "セルのプロパティ(_E)...",
"Ro_w Properties...": "行のプロパティ(_W)...",
"Show the Table Row Properties dialog": "テーブル行のプロパティダイアログを表示します",
"I_nsert Row Before": "上に行を挿入(_N)",
"Insert a new row before the current one": "選択中の行の上に一行挿入します",
"In_sert Row After": "下に行を挿入(_S)",
"Insert a new row after the current one": "選択中の行の下に一行挿入します",
"_Delete Row": "行の削除(_D)",
"Delete the current row": "選択中の行を削除します",
"_Table Properties...": "テーブルのプロパティ(_T)...",
"Show the Table Properties dialog": "テーブルのプロパティダイアログを表示します",
"Insert _Column Before": "左に列を挿入(_C)",
"Insert a new column before the current one": "選択中の列の左に一列挿入します",
"Insert C_olumn After": "右に列を挿入(_O)",
"Insert a new column after the current one": "選択中の列の右に一列挿入します",
"De_lete Column": "列の削除(_L)",
"Delete the current column": "選択中の列を削除します",
"Justify Left": "左寄せ",
"Justify Center": "中央寄せ",
"Justify Right": "右寄せ",
"Justify Full": "均等割付",
"Make lin_k...": "リンクの作成(_K)...",
"Create a link": "新たなリンクを作成します",
"Remove the $elem Element...": "$elem 要素を削除 ...",
"Please confirm that you want to remove this element:": "この要素を削除します。よろしいですか。:",
"Remove this node from the document": "ドキュメントからこのノードを削除します",
"Insert paragraph before": "前に段落を挿入",
"Insert a paragraph before the current node": "選択中のノードの手前に段落を挿入します",
"Insert paragraph after": "後に段落を挿入",
"Insert a paragraph after the current node": "選択中のノードの後に段落を挿入します",
"How did you get here? (Please report!)": "どうやってここに来ましたか?(どうか報告を!)",
"Show the Table Cell Properties dialog": "テーブルセルのプロパティダイアログを表示します",
"Insert Cell Before": "前にセルを挿入",
"Insert Cell After": "後にセルを挿入",
"Delete Cell": "セルの削除",
"Merge Cells": "セルの結合"
};
+53
View File
@@ -0,0 +1,53 @@
// I18N constants
// LANG: "no", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
// Used key commands
// C,D,e, ,I, ,k,k,l,M, ,n,o,R, ,s,T, ,w : English
// H B j R m F v : Norwegian
{
"Cut": "Klipp ut",
"Copy": "Kopier",
"Paste": "Lim inn",
"_Image Properties...": "_Bildeegenskaper...",
"Show the image properties dialog": "Vis bildeegenskaper",
"_Modify Link...": "_Rediger Link...",
"Current URL is": "Gjeldende URL er",
"Chec_k Link...": "Sje_kk Link...",
"Opens this link in a new window": "Åpner denne link i nytt vindu",
"_Remove Link...": "_Fjerne Link...",
"Please confirm that you want to unlink this element.": "Vennligst bekreft at du ønsker å fjerne link på elementet",
"Link points to:": "Link peker til:",
"Unlink the current element": "Fjerne link på gjeldende element",
"C_ell Properties...": "C_elleegenskaper...",
"Show the Table Cell Properties dialog": "Vis egenskaper for celle",
"Ro_w Properties...": "Rad Egenskaper... (_w)",
"Show the Table Row Properties dialog": "Vis egenskaper for rad",
"I_nsert Row Before": "Sett I_nn rad før",
"Insert a new row before the current one": "Sett inn ny rad før gjeldende",
"In_sert Row After": "_Sett inn rad etter",
"Insert a new row after the current one": "Sett inn ny rad etter gjeldende",
"_Delete Row": "Slett rad (_d)",
"Delete the current row": "Slett gjeldende rad",
"_Table Properties...": "_Tabellegenskaper...",
"Show the Table Properties dialog": "Vis egenskaper for tabellen",
"Insert _Column Before": "Sett inn kolonne etter (_c)",
"Insert a new column before the current one": "Sett inn kolonne før gjeldende",
"Insert C_olumn After": "Sett inn k_olonne etter",
"Insert a new column after the current one": "Sett inn kolonne etter gjeldende",
"De_lete Column": "S_lett kolonne",
"Delete the current column": "Slett gjeldende kolonne",
"Justify Left": "_Venstrejuster",
"Justify Center": "_Midtjuster",
"Justify Right": "_Høyrejuster",
"Justify Full": "Blokk_juster",
"Make lin_k...": "Lag len_ke...",
"Create a link": "Lag ny link",
"Remove the $elem Element...": "Fjerne $elem elementet...",
"Please confirm that you want to remove this element:": "Vennligst bekreft at du ønsker å fjerne elementet:",
"Remove this node from the document": "Fjerne denne node fra dokumentet",
"Insert paragraph before": "Sett inn paragraf før",
"Insert a paragraph before the current node": "Sett inn paragraf før gjeldende node",
"Insert paragraph after": "Sett inn paragraf etter",
"Insert a paragraph after the current node": "Sett inn paragraf etter gjeldende node",
"How did you get here? (Please report!)": "Hva skjedde? (Vennligst beskriv)"
};
+44 -63
View File
@@ -1,66 +1,47 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8 | ISO-8859-1
// LANG: "nl", ENCODING: UTF-8
// 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.)
ContextMenu.I18N = {
// Items that appear in menu. Please note that an underscore (_)
// character in the translation (right column) will cause the following
// letter to become underlined and be shortcut for that menu option.
"Cut" : "Knippen",
"Copy" : "Kopiëren",
"Paste" : "Plakken",
"Image Properties" : "Eigenschappen afbeelding...",
"Modify Link" : "Hyperlin_k aanpassen...",
"Check Link" : "Controleer hyperlin_k...",
"Remove Link" : "Ve_rwijder hyperlink...",
"Cell Properties" : "C_eleigenschappen...",
"Row Properties" : "Rijeigenscha_ppen...",
"Insert Row Before" : "Rij invoegen boven",
"Insert Row After" : "Rij invoegen onder",
"Delete Row" : "Rij _verwijderen",
"Table Properties" : "_Tabeleigenschappen...",
"Insert Column Before" : "Kolom invoegen voor",
"Insert Column After" : "Kolom invoegen na",
"Delete Column" : "Kolom verwijderen",
"Justify Left" : "Links uitlijnen",
"Justify Center" : "Centreren",
"Justify Right" : "Rechts uitlijnen",
"Justify Full" : "Uitvullen",
"Make link" : "Maak hyperlin_k...",
"Remove the" : "Verwijder het",
"Element" : "element...",
// Other labels (tooltips and alert/confirm box messages)
"Please confirm that you want to remove this element:" : "Is het werkelijk de bedoeling dit element te verwijderen:",
"Remove this node from the document" : "Verwijder dit punt van het document",
"How did you get here? (Please report!)" : "Hoe kwam je hier? (A.U.B. doorgeven!)",
"Show the image properties dialog" : "Laat het afbeeldingseigenschappen dialog zien",
"Modify URL" : "Aanpassen URL",
"Current URL is" : "Huidig URL is",
"Opens this link in a new window" : "Opend deze hyperlink in een nieuw venster",
"Please confirm that you want to unlink this element." : "Is het werkelijk de bedoeling dit element te unlinken.",
"Link points to:" : "Hyperlink verwijst naar:",
"Unlink the current element" : "Unlink het huidige element",
"Show the Table Cell Properties dialog" : "Laat de tabel celeigenschappen dialog zien",
"Show the Table Row Properties dialog" : "Laat de tabel rijeigenschappen dialog zien",
"Insert a new row before the current one" : "Voeg een nieuwe rij in boven de huidige",
"Insert a new row after the current one" : "Voeg een nieuwe rij in onder de huidige",
"Delete the current row" : "Verwijder de huidige rij",
"Show the Table Properties dialog" : "Laat de tabel eigenschappen dialog zien",
"Insert a new column before the current one" : "Voeg een nieuwe kolom in voor de huidige",
"Insert a new column after the current one" : "Voeg een nieuwe kolom in na de huidige",
"Delete the current column" : "Verwijder de huidige kolom",
"Create a link" : "Maak een hyperlink"
{
"Cut": "Knippen",
"Copy": "Kopiëren",
"Paste": "Plakken",
"_Image Properties...": "Eigenschappen afbeelding...",
"_Modify Link...": "Hyperlin_k aanpassen...",
"Chec_k Link...": "Controleer hyperlin_k...",
"_Remove Link...": "Ve_rwijder hyperlink...",
"C_ell Properties...": "C_eleigenschappen...",
"Ro_w Properties...": "Rijeigenscha_ppen...",
"I_nsert Row Before": "Rij invoegen boven",
"In_sert Row After": "Rij invoegen onder",
"_Delete Row": "Rij _verwijderen",
"_Table Properties...": "_Tabeleigenschappen...",
"Insert _Column Before": "Kolom invoegen voor",
"Insert C_olumn After": "Kolom invoegen na",
"De_lete Column": "Kolom verwijderen",
"Justify Left": "Links uitlijnen",
"Justify Center": "Centreren",
"Justify Right": "Rechts uitlijnen",
"Justify Full": "Uitvullen",
"Make lin_k...": "Maak hyperlin_k...",
"Remove the $elem Element...": "Verwijder het $elem element...",
"Please confirm that you want to remove this element:": "Is het werkelijk de bedoeling dit element te verwijderen:",
"Remove this node from the document": "Verwijder dit punt van het document",
"How did you get here? (Please report!)": "Hoe kwam je hier? (A.U.B. doorgeven!)",
"Show the image properties dialog": "Laat het afbeeldingseigenschappen dialog zien",
"Modify URL": "Aanpassen URL",
"Current URL is": "Huidig URL is",
"Opens this link in a new window": "Opend deze hyperlink in een nieuw venster",
"Please confirm that you want to unlink this element.": "Is het werkelijk de bedoeling dit element te unlinken.",
"Link points to:": "Hyperlink verwijst naar:",
"Unlink the current element": "Unlink het huidige element",
"Show the Table Cell Properties dialog": "Laat de tabel celeigenschappen dialog zien",
"Show the Table Row Properties dialog": "Laat de tabel rijeigenschappen dialog zien",
"Insert a new row before the current one": "Voeg een nieuwe rij in boven de huidige",
"Insert a new row after the current one": "Voeg een nieuwe rij in onder de huidige",
"Delete the current row": "Verwijder de huidige rij",
"Show the Table Properties dialog": "Laat de tabel eigenschappen dialog zien",
"Insert a new column before the current one": "Voeg een nieuwe kolom in voor de huidige",
"Insert a new column after the current one": "Voeg een nieuwe kolom in na de huidige",
"Delete the current column": "Verwijder de huidige kolom",
"Create a link": "Maak een hyperlink"
};
+50
View File
@@ -0,0 +1,50 @@
// I18N constants
// LANG: "pl", ENCODING: UTF-8
// translated: Krzysztof Kotowicz, http://www.eskot.krakow.pl/portfolio/, koto@webworkers.pl
{
"Cut": "Wytnij",
"Copy": "Kopiuj",
"Paste": "Wklej",
"_Image Properties...": "Właściwości obrazka",
"Show the image properties dialog": "Pokaż okienko właściwości obrazka",
"_Modify Link...": "Zmień odnośnik",
"Current URL is": "Bieżący URL odnośnika",
"Chec_k Link...": "Sprawdź odnośnik",
"Opens this link in a new window": "Otwiera ten odnośnik w nowym oknie",
"_Remove Link...": "Usuń odnośnik",
"Please confirm that you want to unlink this element.": "Na pewno chcesz usunąć odnośnik?",
"Link points to:": "Odnośnik wskazuje na:",
"Unlink the current element": "Usuń odnośnik z zaznaczonego elementu",
"C_ell Properties...": "Właściwości komórki",
"Show the Table Cell Properties dialog": "Pokaż okno właściwości komórki",
"Ro_w Properties...": "Właściwości wiersza",
"Show the Table Row Properties dialog": "Pokaż okno właściwości wiersza",
"I_nsert Row Before": "Wstaw wiersz przed",
"Insert a new row before the current one": "Wstaw nowy wiersz przed bieżącym",
"In_sert Row After": "Wstaw wiersz po",
"Insert a new row after the current one": "Wstaw nowy wiersz po bieżącym",
"_Delete Row": "Usuń wiersz",
"Delete the current row": "Usuń bieżący wiersz",
"_Table Properties...": "Właściwości tabeli",
"Show the Table Properties dialog": "Pokaż okienko właściwości tabeli",
"Insert _Column Before": "Wstaw kolumnę przed",
"Insert a new column before the current one": "Wstaw nową kolumnę przed bieżącą",
"Insert C_olumn After": "Wstaw kolumnę po",
"Insert a new column after the current one": "Wstaw nową kolumnę po bieżącej",
"De_lete Column": "Usuń kolumnę",
"Delete the current column": "Usuwa bieżącą kolumnę",
"Justify Left": "Wyrównaj do lewej",
"Justify Center": "Wycentruj",
"Justify Right": "Wyrównaj do prawej",
"Justify Full": "Wyjustuj",
"Make lin_k...": "Utwórz odnośnik",
"Create a link": "Utwórz odnośnik",
"Remove the $elem Element...": "Usuń $elem...",
"Please confirm that you want to remove this element:": "Na pewno chcesz usunąć ten element?",
"Remove this node from the document": "Usuń ten element z dokumentu",
"Insert paragraph before": "Wstaw akapit przed",
"Insert a paragraph before the current node": "Wstaw akapit przed bieżącym elementem",
"Insert paragraph after": "Wstaw akapit po",
"Insert a paragraph after the current node": "Wstaw akapit po bieżącym elemencie",
"How did you get here? (Please report!)": "Jak tu trafiłeś (Proszę, podaj okoliczności!)"
}
+62 -58
View File
@@ -1,61 +1,65 @@
// I18N constants
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8 | ISO-8859-1
// Author: Agner Olson,(agner@agner.net)- http://agner.net
// LANG: "pt_br", ENCODING: UTF-8
// Brazilian Portuguese Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// Site: www.mpg.com.br
// Please don´t remove this information - Por favor, não remova esta informação
// If you modify this source, please insert a comment with your name and e-mail
// Se modificar esta fonte, insira um comentário com seu nome e e-mail
ContextMenu.I18N = {
// Items that appear in menu. Please note that an underscore (_)
// character in the translation (right column) will cause the following
// letter to become underlined and be shortcut for that menu option.
"Cut" : "Cortar",
"Copy" : "Copiar",
"Paste" : "Colar",
"Image Properties" : "_Propriedade da Imagem",
"Modify Link" : "_Modificar Link",
"Check Link" : "Chec_ar Link",
"Remove Link" : "_Remover Link",
"Cell Properties" : "Propriedades da C_élula.",
"Row Properties" : "Propriedades da Linha",
"Insert Row Before" : "I_nserir linha Antes",
"Insert Row After" : "I_nserir linha Depois",
"Delete Row" : "_Apagar Linha",
"Table Properties" : "Propertidades da _Tabela",
"Insert Column Before" : "Inserir _Coluna Antes",
"Insert Column After" : "Inserir C_oluna Depois",
"Delete Column" : "Apagar Coluna",
"Justify Left" : "Justificar Esquerda",
"Justify Center" : "Justificar Centro",
"Justify Right" : "Justificar Direita",
"Justify Full" : "Justificar Total",
"Make link" : "Fazer lin_k...",
"Remove the" : "Remover o",
"Element" : "Elemento...",
"Insert paragraph before" : "Inserir parágrafo antes",
"Insert paragraph after" : "Inserir parágrafo depois",
// Other labels (tooltips and alert/confirm box messages)
"Please confirm that you want to remove this element:" : "Por-favor confirme se você quer remover este elemento:",
"Remove this node from the document" : "Remover este nó do documento",
"How did you get here? (Please report!)" : "Como você começou aqui? (Por-favor reporte!)",
"Show the image properties dialog" : "Mostrar as propriedades da imagem",
"Modify URL" : "Modificar URL",
"Current URL is" : "A URL corrente é",
"Opens this link in a new window" : "Abrir este link em uma nova janela",
"Please confirm that you want to unlink this element." : "Por-favor confirme se você quer retirar o link deste elemento.",
"Link points to:" : "Link aponta para:",
"Unlink the current element" : "Retirar o link deste elemento",
"Show the Table Cell Properties dialog" : "Mostrar a propriedade da Célula",
"Show the Table Row Properties dialog" : "Mostrar a propriedade da Linha",
"Insert a new row before the current one" : "Inserir uma nova linha antes da corrente",
"Insert a new row after the current one" : "Inserir uma nova linha depois da corrente",
"Delete the current row" : "Apagar linha corrente",
"Show the Table Properties dialog" : "Mostrar Propriedades da Tabela",
"Insert a new column before the current one" : "Inserir uma nova coluna antes da corrente",
"Insert a new column after the current one" : "Inserir uma nova coluna depois da corrente",
"Delete the current column" : "Apagar coluna corrente",
"Create a link" : "Criar um link",
"Insert a paragraph before the current node" : "Inserir um parágrafo antes do corrente nó",
"Insert a paragraph after the current node" : "Inserir um parágrafo depois do corrente nó"
// Last revision: September 2007
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Cut": "Recortar",
"Copy": "Copiar",
"Paste": "Colar",
"_Image Properties...": "Propriedades da imagem...",
"Show the image properties dialog": "Mostrar a caixa de diálogo das Propriedades da imagem",
"_Modify Link...": "Modificar link",
"Current URL is": "A URL corrente é",
"Chec_k Link...": "Verificar Link...",
"Opens this link in a new window": "Abrir este link em uma nova janela",
"_Remove Link...": "Remover Link",
"Please confirm that you want to unlink this element.": "Por favor, confirme que deseja retirar o link do elemento.",
"Link points to:": "Link para:",
"Unlink the current element": "Remover link do elemento atual",
"C_ell Properties...": "Propriedades da célula",
"Show the Table Cell Properties dialog": "Mostrar caixa de diálogo de Propriedades da Célula",
"Ro_w Properties...": "Propriedades da Linha",
"Show the Table Row Properties dialog": "Mostrar caixa de diálogo de Propriedades da Linha",
"I_nsert Row Before": "Inserir linha antes deste ponto",
"Insert a new row before the current one": "Inserir uma nova linha antes desta",
"In_sert Row After": "Inserir linha depois deste ponto",
"Insert a new row after the current one": "Inserir uma linha após esta",
"_Delete Row": "Apagar linha",
"Delete the current row": "Apagar a linha atual",
"_Table Properties...": "Propriedades da Tabela",
"Show the Table Properties dialog": "Mostrar caixa de diálogo de Propriedades da Tabela",
"Insert _Column Before": "Inserir coluna antes deste ponto",
"Insert a new column before the current one": "Inserir uma nova coluna antes desta",
"Insert C_olumn After": "Inserir coluna após este ponto",
"Insert a new column after the current one": "Inserir uma nova coluna após esta",
"De_lete Column": "Apagar Coluna",
"Delete the current column": "Apagar a coluna atual",
"Justify Left": "Justificar à esquerda",
"Justify Center": "Justificar centralizado",
"Justify Right": "Justificar à direita",
"Justify Full": "Justificação completa",
"Make lin_k...": "Criar link...",
"Create a link": "Criar um novo link",
"Remove the $elem Element...": "Remover o elemento $elem...",
"Please confirm that you want to remove this element:": "Por favor, confirme que deseja remover este elemento:",
"Remove this node from the document": "Remover este nó do documento",
"Insert paragraph before": "Inserir um parágrafo antes",
"Insert a paragraph before the current node": "Inserir um parágrafo antes do nó atual",
"Insert paragraph after": "Inserir um parágrafo após",
"Insert a paragraph after the current node": "Inserir um parágrafo após o nó atual",
"How did you get here? (Please report!)": "Como você começou aqui? (Por favor, informe!)",
"Show the Table Cell Properties dialog": "Mostrar Propriedades da Tabelas",
"Insert Cell Before": "Inserir Célula Antes",
"Insert Cell After": "Inserir Célula Depois",
"Delete Cell": "Apagar Célula",
"Merge Cells": "Mesclar Células"
};
+54
View File
@@ -0,0 +1,54 @@
// I18N constants
// LANG: "sv", ENCODING: UTF-8
// Swedish version for rev. 477 (Mar 2006) by Thomas Loo <tloo@saltstorm.net>
// TODO: Proper keybindings
// C,D,e, ,I, ,k,k,l,M, ,n,o,R, ,s,T, ,w : English
// H B j R m F v : Swedish
{
"Cut": "Klipp ut",
"Copy": "Kopiera",
"Paste": "Klistra in",
"_Image Properties...": "_Bildegenskaper...",
"Show the image properties dialog": "Visa bildegenskaper",
"_Modify Link...": "_Redigera Länk...",
"Current URL is": "Aktuellt URL är",
"Chec_k Link...": "Kontrollera länk...",
"Opens this link in a new window": "Öppna länk i nytt fönster",
"_Remove Link...": "_Ta bort länk...",
"Please confirm that you want to unlink this element.": "Bekräfta borttagning av länk",
"Link points to:": "Länken pekar mot:",
"Unlink the current element": "Ta bort länk kopplad till elementet",
"C_ell Properties...": "C_ellegenskaper...",
"Show the Table Cell Properties dialog": "Visa egenskaper for cellen",
"Ro_w Properties...": "Radegenskaper... (_w)",
"Show the Table Row Properties dialog": "Visa egenskaper för rad",
"I_nsert Row Before": "I_nfoga rad före",
"Insert a new row before the current one": "Infoga ny rad före aktuell",
"In_sert Row After": "Infoga rad efter aktuell rad",
"Insert a new row after the current one": "Infoga ny rad efter aktuell",
"_Delete Row": "Radera rad (_d)",
"Delete the current row": "T bort aktuell rad",
"_Table Properties...": "_Tabellegenskaper...",
"Show the Table Properties dialog": "Visa tabellegenskaper",
"Insert _Column Before": "Infoga kolumn efter (_c)",
"Insert a new column before the current one": "Infoga kolumn före aktuell",
"Insert C_olumn After": "Infoga k_olumn efter",
"Insert a new column after the current one": "Infoga kolumn efter aktuell",
"De_lete Column": "_Radera kolumn",
"Delete the current column": "Radera aktuell kolumn",
"Justify Left": "_Vänsterjustera",
"Justify Center": "_Centerjustera",
"Justify Right": "_Högerjustera",
"Justify Full": "Block_justera",
"Make lin_k...": "Skapa län_k...",
"Create a link": "SKapa ny länk",
"Remove the $elem Element...": "Radera elementet $elem...",
"Please confirm that you want to remove this element:": "Bekräfta borttagning av element:",
"Remove this node from the document": "Radera nod från dokumentet",
"Insert paragraph before": "Infoga paragraf före",
"Insert a paragraph before the current node": "Infoga paragraf före aktuell nod",
"Insert paragraph after": "Infoga paragraf efter",
"Insert a paragraph after the current node": "Infoga paragraf efter aktuell nod",
"How did you get here? (Please report!)": "Hur hamnade du här? (Beskriv förloppet)"
};
+4 -2
View File
@@ -18,12 +18,14 @@ div.htmlarea-context-menu table {
}
div.htmlarea-context-menu tr.item td.icon img {
width: 18px;
height: 18px;
/* taken care of by xinha.makeBtnImg() */
/* width: 18px; */
/* height: 18px; */
}
div.htmlarea-context-menu tr.item td.icon {
padding: 0px 3px;
width: 18px;
height: 18px;
background-color: #cdf;
}
+21
View File
@@ -0,0 +1,21 @@
dl { border: 1px dotted #800000; }
dt {
width: 18px;
height: 18px;
background-image: url(img/ed_dt.gif);
background-repeat: no-repeat;
background-position: left top;
padding-left: 19px;
display: block;
color: #800000;
}
dd {
width: 18px;
height: 18px;
background-image: url(img/ed_dd.gif);
background-repeat: no-repeat;
background-position: left top;
padding-left: 19px;
display: block;
color: #800000;
}
@@ -0,0 +1,74 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/DefinitionList/definition-list.js */
function DefinitionList(_1){
this.editor=_1;
var _2=_1.config;
var bl=DefinitionList.btnList;
var _4=this;
var _5=["linebreak"];
for(var i=0;i<bl.length;++i){
var _7=bl[i];
if(!_7){
_5.push("separator");
}else{
var id=_7[0];
_2.registerButton(id,this._lc(_7[1]),_1.imgURL("ed_"+_7[0]+".gif","DefinitionList"),false,function(_9,id){
_4.buttonPress(_9,id);
});
_5.push(id);
}
}
_2.toolbar.push(_5);
}
DefinitionList._pluginInfo={name:"DefinitionList",version:"1.0",developer:"Udo Schmal",developer_url:"",c_owner:"Udo Schmal",license:"htmlArea"};
DefinitionList.btnList=[["dl","definition list"],["dt","definition term"],["dd","definition description"]];
DefinitionList.prototype._lc=function(_b){
return Xinha._lc(_b,"DefinitionList");
};
DefinitionList.prototype.onGenerate=function(){
this.editor.addEditorStylesheet(Xinha.getPluginDir("DefinitionList")+"/definition-list.css");
};
DefinitionList.prototype.buttonPress=function(_c,_d){
if(_d=="dl"){
var pe=_c.getParentElement();
while(pe.parentNode.tagName.toLowerCase()!="body"){
pe=pe.parentNode;
}
var dx=_c._doc.createElement(_d);
dx.innerHTML="&nbsp;";
if(pe.parentNode.lastChild==pe){
pe.parentNode.appendChild(dx);
}else{
pe.parentNode.insertBefore(dx,pe.nextSibling);
}
}else{
if((_d=="dt")||(_d=="dd")){
var pe=_c.getParentElement();
while(pe&&(pe.nodeType==1)&&(pe.tagName.toLowerCase()!="body")){
if(pe.tagName.toLowerCase()=="dl"){
var dx=_c._doc.createElement(_d);
dx.innerHTML="&nbsp;";
pe.appendChild(dx);
break;
}else{
if((pe.tagName.toLowerCase()=="dt")||(pe.tagName.toLowerCase()=="dd")){
var dx=_c._doc.createElement(_d);
dx.innerHTML="&nbsp;";
if(pe.parentNode.lastChild==pe){
pe.parentNode.appendChild(dx);
}else{
pe.parentNode.insertBefore(dx,pe.nextSibling);
}
break;
}
}
pe=pe.parentNode;
}
if(pe.tagName.toLowerCase()=="body"){
alert("You can insert a definition term or description only in a definition list!");
}
}
}
};
Binary file not shown.

After

Width:  |  Height:  |  Size: 138 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 B

@@ -0,0 +1,7 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"definition list": "定義リスト",
"definition term": "定義語",
"definition description": "定義の説明"
}
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Author: Maarten Molenschot, maarten@nrgmm.nl
{
"definition list": "definitie lijst",
"definition term": "definitie term",
"definition description": "definitie omschrijving
}
@@ -0,0 +1,20 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"definition list": "Lista de definição",
"definition term": "Termo de definição",
"definition description": "Descrição de definição"
}
@@ -0,0 +1,30 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/DoubleClick/double-click.js */
DoubleClick._pluginInfo={name:"DoubleClick",version:"1.0",developer:"Marijn Kampf",developer_url:"http://www.marijn.org",c_owner:"Marijn Kampf",sponsor:"smiling-faces.com",sponsor_url:"http://www.smiling-faces.com",license:"htmlArea"};
function DoubleClick(_1){
this.editor=_1;
this.editor.dblClickList={a:[function(e){
e.config.btnList["createlink"][3](e);
}],img:[function(e){
e.execCommand("insertimage");
}],td:[function(e){
e.execCommand("inserttable");
}]};
}
DoubleClick.prototype.onGenerate=function(){
var _5=this;
var _6=this.editordoc=this.editor._iframe.contentWindow.document;
Xinha._addEvents(_6,["dblclick"],function(_7){
return _5.onDoubleClick(Xinha.is_ie?_5.editor._iframe.contentWindow.event:_7);
});
this.currentClick=null;
};
DoubleClick.prototype.onDoubleClick=function(ev){
var _9=Xinha.is_ie?ev.srcElement:ev.target;
var _a=_9.tagName.toLowerCase();
if(this.editor.dblClickList[_a]!=undefined){
this.editor.dblClickList[_a][0](this.editor,_9);
}
};
+202
View File
@@ -0,0 +1,202 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/DynamicCSS/dynamiccss.js */
function DynamicCSS(_1,_2){
this.editor=_1;
var _3=_1.config;
var _4=this;
var _5=null;
var _6=null;
var _7={id:"DynamicCSS-class",tooltip:this._lc("Choose stylesheet"),options:{"":""},action:function(_8){
_4.onSelect(_8,this);
},refresh:function(_9){
_4.updateValue(_9,this);
}};
_3.registerDropdown(_7);
_3.addToolbarElement(["T[CSS]","DynamicCSS-class","separator"],"formatblock",-1);
}
DynamicCSS.parseStyleSheet=function(_a){
iframe=_a._iframe.contentWindow.document;
cssArray=DynamicCSS.cssArray;
if(!cssArray){
cssArray=new Array();
}
for(i=0;i<iframe.styleSheets.length;i++){
if(iframe.styleSheets[i].title=="XinhaInternalCSS"){
continue;
}
if(Xinha.is_gecko){
try{
cssArray=DynamicCSS.applyCSSRule(iframe.styleSheets[i].cssRules,cssArray);
}
catch(e){
}
}else{
try{
if(iframe.styleSheets[i].rules){
cssArray=DynamicCSS.applyCSSRule(iframe.styleSheets[i].rules,cssArray);
}
if(iframe.styleSheets[i].imports){
for(j=0;j<iframe.styleSheets[i].imports.length;j++){
cssArray=DynamicCSS.applyCSSRule(iframe.styleSheets[i].imports[j].rules,cssArray);
}
}
}
catch(e){
}
}
}
DynamicCSS.cssArray=cssArray;
};
DynamicCSS.applyCSSRule=function(_b,_c){
for(rule in _b){
if(typeof _b[rule]=="function"){
continue;
}
if(_b[rule].selectorText){
if(_b[rule].selectorText.search(/:+/)==-1){
cssElements=_b[rule].selectorText.split(",");
for(k=0;k<cssElements.length;k++){
cssElement=cssElements[k].split(".");
tagName=cssElement[0].toLowerCase().trim();
className=cssElement[1];
if(!tagName){
tagName="all";
}
if(!_c[tagName]){
_c[tagName]=new Array();
}
if(className){
if(tagName=="all"){
cssName=className;
}else{
cssName="<"+className+">";
}
}else{
className="none";
if(tagName=="all"){
cssName=Xinha._lc("Default","DynamicCSS");
}else{
cssName="<"+Xinha._lc("Default","DynamicCSS")+">";
}
}
_c[tagName][className]=cssName;
DynamicCSS.cssLength++;
}
}
}else{
if(_b[rule].styleSheet){
_c=DynamicCSS.applyCSSRule(_b[rule].styleSheet.cssRules,_c);
}
}
}
return _c;
};
DynamicCSS._pluginInfo={name:"DynamicCSS",version:"1.5.2",developer:"Holger Hees",developer_url:"http://www.systemconcept.de/",c_owner:"Holger Hees",sponsor:"System Concept GmbH",sponsor_url:"http://www.systemconcept.de/",license:"htmlArea"};
DynamicCSS.prototype._lc=function(_d){
return Xinha._lc(_d,"DynamicCSS");
};
DynamicCSS.prototype.onSelect=function(_e,_f){
var _10=_e._toolbarObjects[_f.id];
var _11=_10.element.selectedIndex;
var _12=_10.element.value;
var _13=_e.getParentElement();
if(_12!="none"){
_13.className=_12;
DynamicCSS.lastClass=_12;
}else{
if(Xinha.is_gecko){
_13.removeAttribute("class");
}else{
_13.removeAttribute("className");
}
}
_e.updateToolbar();
};
DynamicCSS.prototype.reparseTimer=function(_14,obj,_16){
if(DynamicCSS.parseCount<9){
setTimeout(function(){
DynamicCSS.cssLength=0;
DynamicCSS.parseStyleSheet(_14);
if(DynamicCSS.cssOldLength!=DynamicCSS.cssLength){
DynamicCSS.cssOldLength=DynamicCSS.cssLength;
DynamicCSS.lastClass=null;
_16.updateValue(_14,obj);
}
_16.reparseTimer(_14,obj,_16);
},DynamicCSS.parseCount*1000);
DynamicCSS.parseCount=DynamicCSS.parseCount*2;
}
};
DynamicCSS.prototype.updateValue=function(_17,obj){
cssArray=DynamicCSS.cssArray;
if(!cssArray){
DynamicCSS.cssLength=0;
DynamicCSS.parseStyleSheet(_17);
cssArray=DynamicCSS.cssArray;
DynamicCSS.cssOldLength=DynamicCSS.cssLength;
DynamicCSS.parseCount=1;
this.reparseTimer(_17,obj,this);
}
var _19=_17.getParentElement();
var _1a=_19.tagName.toLowerCase();
var _1b=_19.className;
if(this.lastTag!=_1a||this.lastClass!=_1b){
this.lastTag=_1a;
this.lastClass=_1b;
var _1c=_17._toolbarObjects[obj.id].element;
while(_1c.length>0){
_1c.options[_1c.length-1]=null;
}
_1c.options[0]=new Option(this._lc("Default"),"none");
if(cssArray){
if(_1a!="body"||_17.config.fullPage){
if(cssArray[_1a]){
for(cssClass in cssArray[_1a]){
if(typeof cssArray[_1a][cssClass]!="string"){
continue;
}
if(cssClass=="none"){
_1c.options[0]=new Option(cssArray[_1a][cssClass],cssClass);
}else{
_1c.options[_1c.length]=new Option(cssArray[_1a][cssClass],cssClass);
}
}
}
if(cssArray["all"]){
for(cssClass in cssArray["all"]){
if(typeof cssArray["all"][cssClass]!="string"){
continue;
}
_1c.options[_1c.length]=new Option(cssArray["all"][cssClass],cssClass);
}
}
}else{
if(cssArray[_1a]&&cssArray[_1a]["none"]){
_1c.options[0]=new Option(cssArray[_1a]["none"],"none");
}
}
}
_1c.selectedIndex=0;
if(typeof _1b!="undefined"&&/\S/.test(_1b)){
var _1d=_1c.options;
for(var i=_1d.length;--i>=0;){
var _1f=_1d[i];
if(_1b==_1f.value){
_1c.selectedIndex=i;
break;
}
}
if(_1c.selectedIndex==0){
_1c.options[_1c.length]=new Option(this._lc("Undefined"),_1b);
_1c.selectedIndex=_1c.length-1;
}
}
if(_1c.length>1){
_1c.disabled=false;
}else{
_1c.disabled=true;
}
}
};
+12
View File
@@ -0,0 +1,12 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// Sponsored by http://www.systemconcept.de
// Author: Holger Hees, <hhees@systemconcept.de>
// (c) systemconcept.de 2004
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Default": "Standard",
"Undefined": "Nicht definiert",
"Choose stylesheet": "Wählen Sie einen StyleSheet aus"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Default": "Défaut",
"Undefined": "Non défini",
"Choose stylesheet": "Choisir feuille de style"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Default": "なし",
"Undefined": "未定義",
"Choose stylesheet": "スタイルシートの選択"
};
+8
View File
@@ -0,0 +1,8 @@
// I18N constants
// LANG: "nb", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
{
"Default": "Standard",
"Undefined": "Udefinert",
"Choose stylesheet": "Velg stilsett"
};
+12
View File
@@ -0,0 +1,12 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Sponsored by http://www.systemconcept.de
// Author: Holger Hees, <hhees@systemconcept.de>
// (c) systemconcept.de 2004
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Default": "Default",
"Undefined": "Ungedefinieerd",
"Choose stylesheet": "Kies stylesheet"
};
+21
View File
@@ -0,0 +1,21 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Choose stylesheet": "Escolher estilo",
"Default": "Padrão",
"Undefined": "Indefinido"
}
+26
View File
@@ -0,0 +1,26 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/EditTag/edit-tag.js */
function EditTag(_1){
this.editor=_1;
var _2=_1.config;
var _3=this;
_2.registerButton({id:"edittag",tooltip:this._lc("Edit HTML for selected text"),image:_1.imgURL("ed_edit_tag.gif","EditTag"),textMode:false,action:function(_4){
_3.buttonPress(_4);
}});
_2.addToolbarElement("edittag","htmlmode",1);
}
EditTag._pluginInfo={name:"EditTag",version:"1.0",developer:"Pegoraro Marco",developer_url:"http://www.sin-italia.com/",c_owner:"Marco Pegoraro",sponsor:"Sin Italia",sponsor_url:"http://www.sin-italia.com/",license:"htmlArea"};
EditTag.prototype._lc=function(_5){
return Xinha._lc(_5,"EditTag");
};
EditTag.prototype.buttonPress=function(_6){
outparam={content:_6.getSelectedHTML()};
_6._popupDialog("plugin://EditTag/edit_tag",function(_7){
if(!_7){
return false;
}
_6.insertHTML(_7);
},outparam);
};
Binary file not shown.

After

Width:  |  Height:  |  Size: 293 B

+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "de", ENCODING: UTF-8
// translated: Udo Schmal (gocher), http://www.schaffrath-neuemedien.de/, udo.schmal@t-online.de
{
"Edit HTML for selected text": "HTML im ausgewählten Bereich bearbeiten",
"Tag Editor": "HTML tag Editor"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "fr", ENCODING: UTF-8
{
"Edit HTML for selected text": "Editer le code HTML du texte sélectionné",
"Tag Editor": "Editeur de tag HTML"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "ja", ENCODING: UTF-8
{
"Edit HTML for selected text": "選択中テキストのHTMLを編集します",
"Tag Editor": "タグエディタ"
};
+6
View File
@@ -0,0 +1,6 @@
// I18N constants
// LANG: "nb", ENCODING: UTF-8
// translated: Kim Steinhaug, http://www.steinhaug.com/, kim@steinhaug.com
{
"Edit HTML for selected text": "Rediger HTML for den valgte teksten"
};
+7
View File
@@ -0,0 +1,7 @@
// I18N constants
// LANG: "nl", ENCODING: UTF-8
// Author: Maarten Molenschot, maarten@nrgmm.nl
{
"Edit HTML for selected text": "HTML bewerken voor geselecteerde tekst",
"Tag Editor": "HTML tag Editor"
};
+22
View File
@@ -0,0 +1,22 @@
// I18N constants
// LANG: "pt_br", ENCODING: UTF-8
// Portuguese Brazilian Translation
// Author: Marcio Barbosa, <marcio@mpg.com.br>
// MSN: tomarshall@msn.com - ICQ: 69419933
// Site: http://www.mpg.com.br
// Last revision: 05 september 2007
// Please don´t remove this information
// If you modify any source, please insert a comment with your name and e-mail
// Distributed under the same terms as HTMLArea itself.
// This notice MUST stay intact for use (see license.txt).
{
"Cancel": "Cancelar",
"Edit HTML for selected text": "Editar HTML para texto selecionado",
"Edit Tag By Peg": "Editar Tag por Peg",
"OK": "OK",
"Tag Editor": "Editor de Tag"
}
+38
View File
@@ -0,0 +1,38 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Edit Tag By Peg</title>
<link rel="stylesheet" type="text/css" href="../../../popups/popup.css" />
<script type="text/javascript" src="../../../popups/popup.js"></script>
<script language="javascript">
window.resizeTo(600, 450);
function Init() {
__dlg_translate("EditTag");
__dlg_init();
var param = window.dialogArguments;
document.getElementById("TAG").value = param["content"];
document.getElementById("TAG").focus();
}
function onCancel() {
__dlg_close( null );
return false;
}
function onOK() {
var ret = document.getElementById("TAG").value;
__dlg_close( ret );
}
</script>
</head>
<body class="dialog" onLoad="Init();">
<div class="title">Tag Editor</div>
<textarea name="TAG" id="TAG" cols=22 rows=5 style="width: 100%; height: 315px; margin-top: 8px; margin-bottom: 4px; font-family: monospace; font-size: 11px;"></textarea>
<div id="buttons">
<button type="submit" name="ok" onclick="return onOK();">OK</button>
<button type="button" name="cancel" onclick="return onCancel();">Cancel</button>
</div>
</body>
</html>
File diff suppressed because one or more lines are too long
+146
View File
@@ -0,0 +1,146 @@
/* This compressed file is part of Xinha. For uncompressed sources, forum, and bug reports, go to xinha.org */
/* This file is part of version 0.95 released Mon, 12 May 2008 17:33:15 +0200 */
/* The URL of the most recent version of this file is http://svn.xinha.webfactional.com/trunk/plugins/Equation/equation.js */
function Equation(_1){
this.editor=_1;
var _2=_1.config;
var _3=this;
_2.registerButton({id:"equation",tooltip:this._lc("Formula Editor"),image:_1.imgURL("equation.gif","Equation"),textMode:false,action:function(_4,id){
_3.buttonPress(_4,id);
}});
_2.addToolbarElement("equation","inserthorizontalrule",-1);
mathcolor=_2.Equation.mathcolor;
mathfontfamily=_2.Equation.mathfontfamily;
this.enabled=!Xinha.is_ie;
if(this.enabled){
this.onBeforeSubmit=this.onBeforeUnload=function(){
_3.unParse();
};
}
if(typeof AMprocessNode!="function"){
Xinha._loadback(Xinha.getPluginDir("Equation")+"/ASCIIMathML.js",function(){
translate();
});
}
}
Xinha.Config.prototype.Equation={"mathcolor":"black","mathfontfamily":"serif"};
Equation._pluginInfo={name:"ASCIIMathML Formula Editor",version:"2.3 (2008-01-26)",developer:"Raimund Meyer",developer_url:"http://xinha.raimundmeyer.de",c_owner:"",sponsor:"",sponsor_url:"",license:"GNU/LGPL"};
Equation.prototype._lc=function(_6){
return Xinha._lc(_6,"Equation");
};
Equation.prototype.onGenerate=function(){
this.parse();
};
Equation.prototype.onKeyPress=function(ev){
if(this.enabled){
e=this.editor;
var _8=e._getFirstAncestor(e.getSelection(),["span"]);
if(_8&&_8.className=="AM"){
if(ev.keyCode==8||ev.keyCode==46||ev.charCode){
Xinha._stopEvent(ev);
return true;
}
}
}
return false;
};
Equation.prototype.onBeforeMode=function(_9){
if(this.enabled&&_9=="textmode"){
this.unParse();
}
};
Equation.prototype.onMode=function(_a){
if(this.enabled&&_a=="wysiwyg"){
this.parse();
}
};
Equation.prototype.parse=function(){
if(this.enabled){
var _b=this.editor._doc;
var _c=_b.getElementsByTagName("span");
for(var i=0;i<_c.length;i++){
var _e=_c[i];
if(_e.className!="AM"){
continue;
}
if(_e.innerHTML.indexOf(this.editor.cc)!=-1){
_e.innerHTML=_e.innerHTML.replace(this.editor.cc,"");
_e.parentNode.insertBefore(_b.createTextNode(this.editor.cc),_e);
}
_e.title=_e.innerHTML;
var _f=_e.cloneNode(true);
try{
document.adoptNode(_f);
}
catch(e){
}
AMprocessNode(_f,false);
try{
_b.adoptNode(_f);
}
catch(e){
}
_e.parentNode.replaceChild(_f,_e);
_f.parentNode.insertBefore(_b.createTextNode(String.fromCharCode(32)),_f);
_f.parentNode.insertBefore(_b.createTextNode(String.fromCharCode(32)),_f.nextSibling);
}
}
};
Equation.prototype.unParse=function(){
var doc=this.editor._doc;
var _11=doc.getElementsByTagName("span");
for(var i=0;i<_11.length;i++){
var _13=_11[i];
if(_13.className.indexOf("AM")==-1||_13.getElementsByTagName("math").length==0){
continue;
}
var _14=_13.getAttribute("title");
_13.innerHTML=_14;
_13.setAttribute("title",null);
}
};
Equation.prototype.buttonPress=function(){
var _15=this;
var _16=this.editor;
var _17={};
_17["editor"]=_16;
var _18=_16._getFirstAncestor(_16.getSelection(),["span"]);
if(_18){
_17["editedNode"]=_18;
}
Dialog(Xinha.getPluginDir("Equation")+"/popups/dialog.html",function(_19){
_15.insert(_19);
},_17);
};
Equation.prototype.insert=function(_1a){
if(typeof _1a["formula"]!="undefined"){
var _1b=(_1a["formula"]!="")?_1a["formula"].replace(/^`?(.*)`?$/m,"`$1`"):"";
if(_1a["editedNode"]&&(_1a["editedNode"].tagName.toLowerCase()=="span")){
var _1c=_1a["editedNode"];
if(_1b!=""){
_1c.innerHTML=_1b;
if(this.enabled){
_1c.title=_1b;
}
}else{
_1c.parentNode.removeChild(_1c);
}
}else{
if(!_1a["editedNode"]&&_1b!=""){
if(this.enabled){
var _1c=document.createElement("span");
_1c.className="AM";
this.editor.insertNodeAtSelection(_1c);
_1c.innerHTML=_1b;
_1c.title=_1b;
}else{
this.editor.insertHTML("<span class=\"AM\">"+_1b+"</span>");
}
}
}
if(this.enabled){
this.parse();
}
}
};
+45
View File
@@ -0,0 +1,45 @@
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>AsciiMathML Example</title>
<script type="text/javascript">
var mathcolor = "black";
</script>
<script type="text/javascript" src="ASCIIMathML.js"></script>
<style type="text/css">
body { font-family: sans-serif }
pre {border: dotted grey thin; background-color:LightYellow; }
</style>
</head>
<body >
<h1>AsciiMathML Example</h1>
<p>This shows how to set up your page to display MathML using AsciiMathML</p>
<p>Add this to the head section of your document:</p>
<pre>
&lt;!-- This block is optional configuration --&gt;
&lt;script type="text/javascript"&gt;
var mathcolor = "black"; // You may change the color of the formulae (default: red)
var showasciiformulaonhover = false; // helps students learn ASCIIMath, set to false if you like (default:true)
var mathfontfamily = "Arial"; //and the font (default: serif, which is good I think)
&lt;/script&gt;
&lt;!-- THIS LOADS THE ACTUAL SCRIPT, PLEASE ADJUST THE URL --&lt;
&lt;script type="text/javascript" src="/xinha/plugins/Equation/ASCIIMathML.js"&gt;&lt;/script&gt;
</pre>
<p><span class="AM">`int_a^bf(x)dx`</span></p>
<p><span class="AM">`[[a,b],[c,d]]`</span><br /></p>
<p>
ASCIIMathML by <a href="http://www.chapman.edu/~jipsen" onclick="window.open(this.href,'_blank');return false;">Peter Jipsen</a>,
<a href="http://www.chapman.edu" onclick="window.open(this.href,'_blank');return false;">Chapman University</a><br />
For more information on AsciiMathML visit this page: <a href="http://www1.chapman.edu/~jipsen/mathml/asciimath.html" onclick="window.open(this.href,'_blank','');return false;">http://www1.chapman.edu/~jipsen/mathml/asciimath.html</a>
</p>
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 72 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 B

Some files were not shown because too many files have changed in this diff Show More