You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
489 lines
17 KiB
489 lines
17 KiB
<?xml version="1.0" encoding="utf-8" ?>
|
|
<jsml xmlns="http://cutesoft.net/jsml"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://cutesoft.net/jsml ../core/jsml.xsd">
|
|
|
|
|
|
<panel jsml-class="menu_context_common" jsml-base="floatmenu">
|
|
<panel jsml-base="rtemenuitem" command="selectall" imagename="selectall" htmlcode="@SELECTALL" />
|
|
<panel jsml-base="rtemenuspliter" />
|
|
<panel jsml-base="rtemenuitem" command="undo" imagename="undo" htmlcode="@UNDO" />
|
|
<panel jsml-base="rtemenuitem" command="redo" imagename="redo" htmlcode="@REDO" />
|
|
<panel jsml-base="rtemenuspliter" />
|
|
<panel jsml-base="rtemenuitem" command="save" imagename="save" htmlcode="@SAVE" />
|
|
<panel jsml-base="rtemenuitem" command="new" imagename="newdoc" htmlcode="@NEW" />
|
|
<panel jsml-base="rtemenuitem" command="print" imagename="print" htmlcode="@PRINT" />
|
|
<panel jsml-base="rtemenuitem" command="ExecPlugin" arguments="spellcheck" imagename="spell" htmlcode="@SPELLCHECK" />
|
|
<panel jsml-base="rtemenuitem" command="Find" imagename="Find" htmlcode="@FINDANDREPLACE" />
|
|
<panel jsml-base="rtemenuitem" command="CleanCode" imagename="cleanup" htmlcode="@CLEANCODE" />
|
|
</panel>
|
|
|
|
<panel jsml-class="menu_context_format" jsml-base="floatmenu">
|
|
<panel dock="top" margin="0,0,0,25" overflow="visible">
|
|
<panel jsml-base="tbgroup_{skin}_{color}" dock="none">
|
|
<image jsml-base="image_{skin}_{color}" command="bold" imagename="bold" tooltip="@BOLD" />
|
|
<image jsml-base="image_{skin}_{color}" command="italic" imagename="italic" tooltip="@ITALIC" />
|
|
<image jsml-base="image_{skin}_{color}" command="underline" imagename="under" tooltip="@UNDERLINE" />
|
|
<image jsml-base="image_{skin}_{color}" command="linethrough" imagename="strike" tooltip="@LINETHROUGH" />
|
|
<image jsml-base="image_{skin}_{color}" command="overline" imagename="overline" tooltip="@OVERLINE" />
|
|
</panel>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@FONTNAME" arrow="true" xmlfile="setfontname.xml" />
|
|
<panel jsml-base="rtemenuitem" htmlcode="@FONTSIZE" arrow="true" xmlfile="setfontsize.xml" />
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@TEXTCOLOR" arrow="true" xmlfile="colorpicker.xml">
|
|
<method name="initoption" arguments="newoption">
|
|
newoption.setcolor=function(val){editor.ExecCommand("forecolor",val);}
|
|
</method>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" htmlcode="@BACKCOLOR" arrow="true" xmlfile="colorpicker.xml">
|
|
<method name="initoption" arguments="newoption">
|
|
newoption.setcolor=function(val){editor.ExecCommand("backcolor",val);}
|
|
</method>
|
|
</panel>
|
|
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
<panel jsml-base="rtemenuitem" command="removeformat" imagename="unformat" htmlcode="@REMOVEFORMAT" />
|
|
|
|
</panel>
|
|
|
|
|
|
<panel jsml-class="menu_context_justify" jsml-base="floatmenu">
|
|
<panel jsml-base="rtemenuitem" command="JustifyLeft" text="@JUSTIFYLEFT" imagename="left" />
|
|
<panel jsml-base="rtemenuitem" command="JustifyCenter" text="@JUSTIFYCENTER" imagename="center" />
|
|
<panel jsml-base="rtemenuitem" command="JustifyRight" text="@JUSTIFYRIGHT" imagename="right" />
|
|
<panel jsml-base="rtemenuitem" command="JustifyFull" text="@JUSTIFYFULL" imagename="justifyfull" />
|
|
<panel jsml-base="rtemenuitem" command="JustifyNone" text="@JUSTIFYNONE" imagename="justifynone" />
|
|
</panel>
|
|
|
|
|
|
<panel jsml-class="menu_context_paragraphs" jsml-base="floatmenu">
|
|
|
|
<panel dock="top" margin="0,0,0,25" overflow="visible">
|
|
<panel jsml-base="tbgroup_{skin}_{color}" dock="none">
|
|
<image jsml-base="image_{skin}_{color}" command="JustifyLeft" text="@JUSTIFYLEFT" imagename="left" />
|
|
<image jsml-base="image_{skin}_{color}" command="JustifyCenter" text="@JUSTIFYCENTER" imagename="center" />
|
|
<image jsml-base="image_{skin}_{color}" command="JustifyRight" text="@JUSTIFYRIGHT" imagename="right" />
|
|
<image jsml-base="image_{skin}_{color}" command="JustifyFull" text="@JUSTIFYFULL" imagename="justifyfull" />
|
|
<image jsml-base="image_{skin}_{color}" command="JustifyNone" text="@JUSTIFYNONE" imagename="justifynone" />
|
|
</panel>
|
|
</panel>
|
|
<!--
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_justify" htmlcode="@JUSTIFY" />
|
|
-->
|
|
|
|
<!--
|
|
<panel dock="top" margin="0,0,0,25" overflow="visible">
|
|
<panel jsml-base="tbgroup_{skin}_{color}" dock="none">
|
|
<image jsml-base="image_{skin}_{color}" command="Outdent" tooltip="@OUTDENT" />
|
|
<image jsml-base="image_{skin}_{color}" command="Indent" tooltip="@INDENT" />
|
|
<image jsml-base="image_{skin}_{color}" command="InsertBlockQuote" tooltip="@INSERTBLOCKQUOTE" imagename="blockquote" />
|
|
<image jsml-base="image_{skin}_{color}" command="Ltr" imagename="dir_ltr" />
|
|
<image jsml-base="image_{skin}_{color}" command="Rtl" imagename="dir_rtl" />
|
|
</panel>
|
|
</panel>
|
|
-->
|
|
|
|
<panel jsml-base="rtemenuitem" command="InsertBlockQuote" text="@INSERTBLOCKQUOTE" imagename="blockquote" />
|
|
<panel jsml-base="rtemenuitem" command="Outdent" text="@OUTDENT" />
|
|
<panel jsml-base="rtemenuitem" command="Indent" text="@INDENT" />
|
|
<panel jsml-base="rtemenuitem" command="LTR" text="@DIRECTION_LTR" imagename="dir_ltr" />
|
|
<panel jsml-base="rtemenuitem" command="RTL" text="@DIRECTION_RTL" imagename="dir_rtl" />
|
|
|
|
<!--
|
|
<panel jsml-base="rtemenuitem" htmlcode="@PARAGRAPHS" arrow="true" xmlfile="setparagraph.xml" />
|
|
-->
|
|
|
|
</panel>
|
|
|
|
|
|
<panel jsml-class="menu_context_table" jsml-base="floatmenu">
|
|
|
|
<panel jsml-base="rtemenuitem" command="mergecells" imagename="mrgcell" htmlcode="@MERGECELLS" />
|
|
<panel jsml-base="rtemenuitem" command="splitcells" imagename="spltcell" htmlcode="@SPLITCELLS" />
|
|
<panel jsml-base="rtemenuspliter" />
|
|
<panel jsml-base="rtemenuitem" command="deleterow" htmlcode="@DELETEROW" imagename="delrow" />
|
|
<panel jsml-base="rtemenuitem" command="deletecolumn" htmlcode="@DELETECOLUMN" imagename="delcol" />
|
|
<panel jsml-base="rtemenuitem" command="insertrowtop" htmlcode="@INSERTROWTOP" imagename="insrow_t" />
|
|
<panel jsml-base="rtemenuitem" command="insertrowbottom" htmlcode="@INSERTROWBOTTOM" imagename="insrow_b" />
|
|
<panel jsml-base="rtemenuspliter" />
|
|
<panel jsml-base="rtemenuitem" command="insertcolumnleft" htmlcode="@INSERTCOLUMNLEFT" imagename="inscol_l" />
|
|
<panel jsml-base="rtemenuitem" command="insertcolumnright" htmlcode="@INSERTCOLUMNRIGHT" imagename="inscol_r" />
|
|
|
|
</panel>
|
|
|
|
<!--
|
|
<panel jsml-class="menu_context_link" jsml-base="floatmenu">
|
|
<panel jsml-base="rtemenuitem" imagename="link" htmlcode="@EDIT| |@LINK">
|
|
<attach name="click">
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link)editor.ShowPropertiesDialog(link);
|
|
</attach>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" imagename="unlink" htmlcode="@REMOVE| |@LINK">
|
|
<attach name="click">
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link)link.RemoveNode(false);
|
|
</attach>
|
|
</panel>
|
|
</panel>
|
|
-->
|
|
|
|
<panel jsml-class="menu_context_taglist" jsml-base="floatmenu">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
for(;node&&node.GetNameLower()!="body";node=node.GetParent())
|
|
{
|
|
if(node.nodeType!=1)continue;
|
|
|
|
var item=self.createitem(node);
|
|
self.append_child(item);
|
|
}
|
|
]]>
|
|
</initialize>
|
|
<method name="createitem" arguments="node">
|
|
<![CDATA[
|
|
var item=jsml.class_create_instance("rtemenuitem");
|
|
item.set_arrow(true);
|
|
item.set_xmlfile("menu_tagitem.xml");
|
|
item._floatboxClass="floatmenu";
|
|
item.initoption=function(newoption)
|
|
{
|
|
newoption.node=node;
|
|
newoption.buttonClick=function()
|
|
{
|
|
item.invoke_event("click");
|
|
}
|
|
}
|
|
item.attach_event("click",function()
|
|
{
|
|
editor.ShowPropertiesDialog(node);
|
|
});
|
|
item.set_text(node.GetName());
|
|
return item;
|
|
]]>
|
|
</method>
|
|
</panel>
|
|
|
|
|
|
|
|
|
|
|
|
<panel jsml-class="menu_context_point" dock="fill" overflow="visible">
|
|
|
|
|
|
<panel jsml-base="rtemenuitem" command="selectall" imagename="selectall" htmlcode="@SELECTALL" />
|
|
|
|
<panel jsml-base="rtemenuitem" command="undo" imagename="undo" htmlcode="@UNDO" />
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<!--
|
|
<panel jsml-base="rtemenuitem" command="paste" imagename="paste" htmlcode="@PASTE" />
|
|
-->
|
|
<panel jsml-base="rtemenuitem" htmlcode="@PASTE" imagename="paste" arrow="true" xmlfile="editor_paste.xml">
|
|
<initialize>
|
|
if(editor.GetSelectionType()=="Control")self.set_visible(false);
|
|
</initialize>
|
|
<method name="initoption" arguments="newoption">
|
|
this._lastpastecmd="paste";
|
|
newoption.command="paste";
|
|
newoption.width=360;
|
|
newoption.height=240;
|
|
newoption.puretextmode=false;
|
|
newoption.callback=editor.delegate(editor._onpastedialogreturn);
|
|
</method>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_common" htmlcode="@COMMON" />
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_paragraphs" htmlcode="@PARAGRAPHS">
|
|
<initialize>
|
|
//if(editor.GetSelectionType()=="Control")self.set_visible(false);
|
|
//if(!editor.QueryStyle("paragraph"))self.set_visible(false);
|
|
</initialize>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_taglist" htmlcode="@TAGLIST">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
var count=0;
|
|
for(;node&&node.GetNameLower()!="body";node=node.GetParent())
|
|
{
|
|
if(node.nodeType==1)count++;
|
|
}
|
|
if(count==0)self.set_disabled(true);
|
|
]]>
|
|
</initialize>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_table" htmlcode="@TABLE" imagename="inserttable">
|
|
<initialize>
|
|
var table=editor.IsIncludedByTag("table");
|
|
if(table==null)return self.set_visible(false);
|
|
</initialize>
|
|
</panel>
|
|
|
|
<!--
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_link" htmlcode="@LINK" imagename="link">
|
|
<initialize>
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link==null)return self.set_visible(false);
|
|
</initialize>
|
|
<attach name="click">
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link)editor.ShowPropertiesDialog(link);
|
|
</attach>
|
|
</panel>
|
|
-->
|
|
|
|
<panel jsml-base="rtemenuitem" imagename="link" htmlcode="@EDIT| |@LINK">
|
|
<initialize>
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link==null)return self.set_visible(false);
|
|
</initialize>
|
|
<attach name="click">
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link)editor.ShowPropertiesDialog(link);
|
|
</attach>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" imagename="unlink" htmlcode="@REMOVE| |@LINK">
|
|
<initialize>
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link==null)return self.set_visible(false);
|
|
</initialize>
|
|
<attach name="click">
|
|
var link=editor.IsIncludedByTag("a");
|
|
if(link)link.RemoveNode(false);
|
|
</attach>
|
|
</panel>
|
|
|
|
</panel>
|
|
|
|
|
|
|
|
<panel jsml-class="menu_context_range" dock="fill" overflow="visible">
|
|
|
|
<panel jsml-base="rtemenuitem" command="mergecells" imagename="mrgcell" htmlcode="@MERGECELLS">
|
|
<initialize>
|
|
if(!editor.CanExecCommand("mergecells"))self.set_visible(false);
|
|
</initialize>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuitem" command="cut" imagename="cut" htmlcode="@CUT">
|
|
<initialize>
|
|
if(editor.CanExecCommand("mergecells"))self.set_visible(false);
|
|
</initialize>
|
|
<attach name="mousehover">self._ResetFCButton();</attach>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" command="copy" imagename="copy" htmlcode="@COPY">
|
|
<initialize>
|
|
if(editor.CanExecCommand("mergecells"))self.set_visible(false);
|
|
</initialize>
|
|
<attach name="mousehover">self._ResetFCButton();</attach>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuitem" command="delete" imagename="delete" htmlcode="@DELETE">
|
|
<initialize>
|
|
if(editor.CanExecCommand("mergecells"))self.set_visible(false);
|
|
</initialize>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel jsml-base="rtemenuitem" command="removeformat" imagename="unformat" htmlcode="@REMOVEFORMAT" />
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel dock="top" margin="0,0,0,25" overflow="visible">
|
|
<panel jsml-base="tbgroup_{skin}_{color}" dock="none">
|
|
<image jsml-base="image_{skin}_{color}" command="bold" imagename="bold" tooltip="@BOLD" />
|
|
<image jsml-base="image_{skin}_{color}" command="italic" imagename="italic" tooltip="@ITALIC" />
|
|
<image jsml-base="image_{skin}_{color}" command="underline" imagename="under" tooltip="@UNDERLINE" />
|
|
<image jsml-base="image_{skin}_{color}" command="linethrough" imagename="strike" tooltip="@LINETHROUGH" />
|
|
<image jsml-base="image_{skin}_{color}" command="overline" imagename="overline" tooltip="@OVERLINE" />
|
|
</panel>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@FONTNAME" arrow="true" xmlfile="setfontname.xml" />
|
|
<panel jsml-base="rtemenuitem" htmlcode="@FONTSIZE" arrow="true" xmlfile="setfontsize.xml" />
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@TEXTCOLOR" arrow="true" xmlfile="colorpicker.xml">
|
|
<method name="initoption" arguments="newoption">
|
|
newoption.setcolor=function(val){editor.ExecCommand("forecolor",val);}
|
|
</method>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" htmlcode="@BACKCOLOR" arrow="true" xmlfile="colorpicker.xml">
|
|
<method name="initoption" arguments="newoption">
|
|
newoption.setcolor=function(val){editor.ExecCommand("backcolor",val);}
|
|
</method>
|
|
</panel>
|
|
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_taglist" htmlcode="@TAGLIST">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
var count=0;
|
|
for(;node&&node.GetNameLower()!="body";node=node.GetParent())
|
|
{
|
|
if(node.nodeType==1)count++;
|
|
}
|
|
if(count==0)self.set_disabled(true);
|
|
]]>
|
|
</initialize>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_table" htmlcode="@TABLE">
|
|
<initialize>
|
|
var table=editor.IsIncludedByTag("table");
|
|
if(table==null)return self.set_visible(false);
|
|
</initialize>
|
|
</panel>
|
|
|
|
</panel>
|
|
|
|
|
|
|
|
<panel jsml-class="menu_context_control" dock="fill" overflow="visible">
|
|
|
|
<panel jsml-base="rtemenuitem" command="cut" imagename="cut" htmlcode="@CUT">
|
|
<attach name="mousehover">self._ResetFCButton();</attach>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" command="copy" imagename="copy" htmlcode="@COPY">
|
|
<attach name="mousehover">self._ResetFCButton();</attach>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuitem" command="delete" imagename="delete" htmlcode="@DELETE" />
|
|
|
|
<panel jsml-base="rtemenuspliter" />
|
|
|
|
<panel jsml-base="rtemenuopener" menuclass="menu_context_taglist" htmlcode="@TAGLIST">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
var count=0;
|
|
for(;node&&node.GetNameLower()!="body";node=node.GetParent())
|
|
{
|
|
if(node.nodeType==1)count++;
|
|
}
|
|
if(count==0)self.set_disabled(true);
|
|
]]>
|
|
</initialize>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@IMAGEEDITOR" imagename="imageeditor">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
if(!node||node.GetNameLower()!="img")self.set_visible(false);
|
|
self.set_disabled(true);
|
|
editor.FindStorage(["Gallery","Image"],node.GetAttribute("src"),function(storage,fileitem)
|
|
{
|
|
if(!storage)return;
|
|
self.imgnode=node;
|
|
self.storage=storage;
|
|
self.fileitem=fileitem;
|
|
self.set_disabled(false);
|
|
});
|
|
]]>
|
|
</initialize>
|
|
<attach name="click">
|
|
if(!self.storage)return;
|
|
editor.ShowImageEditor(self.imgnode,self.storage,self.fileitem);
|
|
</attach>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@INSERTIMAGEMAP" imagename="imagemap">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
if(!node||node.GetNameLower()!="img")self.set_visible(false);
|
|
self.imgnode=node;
|
|
]]>
|
|
</initialize>
|
|
<attach name="click">
|
|
editor.ExecInsertImageMap(null,self.imgnode);
|
|
</attach>
|
|
</panel>
|
|
|
|
<panel jsml-base="rtemenuitem" htmlcode="@STYLES" imagename="properties">
|
|
<initialize>
|
|
<![CDATA[
|
|
var node=editor.GetSelectionRoot();
|
|
if(!node||!node.IsControl())
|
|
{
|
|
self.set_visible(false);
|
|
return;
|
|
}
|
|
self.set_arrow(true);
|
|
self.set_xmlfile("menu_styles.xml");
|
|
self._floatboxClass="floatmenu";
|
|
self.initoption=function(newoption)
|
|
{
|
|
newoption.node=node;
|
|
newoption.buttonClick=function()
|
|
{
|
|
self.invoke_event("click");
|
|
}
|
|
}
|
|
]]>
|
|
</initialize>
|
|
<attach name="click">
|
|
editor.ShowPropertiesDialog(editor.GetSelectionRoot(),{styletab:"text"})
|
|
</attach>
|
|
</panel>
|
|
<panel jsml-base="rtemenuitem" htmlcode="@PROPERTIES" imagename="properties">
|
|
<initialize>
|
|
var node=editor.GetSelectionRoot();
|
|
if(!node||!node.IsControl())self.set_visible(false);
|
|
</initialize>
|
|
<attach name="click">
|
|
editor.ShowPropertiesDialog(editor.GetSelectionRoot())
|
|
</attach>
|
|
</panel>
|
|
|
|
</panel>
|
|
|
|
|
|
<panel dock="fill" overflow="visible">
|
|
<initialize>
|
|
<![CDATA[
|
|
var seltype=editor.GetSelectionType();
|
|
var menucls="menu_context_point";
|
|
if(seltype=="Range")
|
|
menucls="menu_context_range";
|
|
if(seltype=="Control")
|
|
menucls="menu_context_control";
|
|
self.append_child(jsml.class_create_instance(menucls));
|
|
]]>
|
|
</initialize>
|
|
</panel>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</jsml>
|