gecko-dev/editor/ui/composer/content/TextEditorAppShell.xul

345 строки
20 KiB
Plaintext
Исходник Обычный вид История

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://navigator/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://editor/skin/" type="text/css"?>
<!DOCTYPE window SYSTEM "chrome://editor/locale/EditorAppShell.dtd">
<window id="main-window" xmlns:html="http://www.w3.org/TR/REC-html40"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
1999-08-03 02:29:19 +04:00
onunload="EditorShutdown()" title="&textEditorWindow.title;" align="vertical"
width="640" height="480">
<html:script language="JavaScript" src="chrome://editor/content/EditorCommands.js">
</html:script>
<keyset id="defaultKeySet">
<key id="acmdkey" disabled="false" shift="false" command="true" alt="false" key="a" onkeypress="EditorSelectAll()" />
<key id="bcmdkey" disabled="false" shift="false" command="true" alt="false" key="b" onkeypress="EditorApplyStyle('b')"/>
<key id="ccmdkey" disabled="false" shift="false" command="true" alt="false" key="c" onkeypress="EditorCopy()" />
<key id="fcmdkey" disabled="false" shift="false" command="true" alt="false" key="f" onkeypress="EditorFind()" />
<key id="gcmdkey" disabled="false" shift="false" command="true" alt="false" key="g" onkeypress="EditorFindNext()" />
<key id="icmdkey" disabled="false" shift="false" command="true" alt="false" key="i" onkeypress="EditorApplyStyle('i')"/>
<key id="kcmdkey" disabled="false" shift="false" command="true" alt="false" key="k" onkeypress="CheckSpelling()" />
<key id="ncmdkey" disabled="false" shift="false" command="true" alt="false" key="n" onkeypress="EditorNew()" />
<key id="ocmdkey" disabled="false" shift="false" command="true" alt="false" key="o" onkeypress="EditorOpen()" />
<key id="pcmdkey" disabled="false" shift="false" command="true" alt="false" key="p" onkeypress="EditorPrint()" />
<key id="qcmdkey" disabled="false" shift="false" command="true" alt="false" key="q" onkeypress="EditorExit()" />
<key id="ucmdkey" disabled="false" shift="false" command="true" alt="false" key="u" onkeypress="EditorApplyStyle('u')"/>
<key id="vcmdkey" disabled="false" shift="false" command="true" alt="false" key="v" onkeypress="EditorPaste()" />
<key id="wcmdkey" disabled="false" shift="false" command="true" alt="false" key="w" onkeypress="EditorClose()" />
<key id="xcmdkey" disabled="false" shift="false" command="true" alt="false" key="x" onkeypress="EditorCut()" />
<key id="ycmdkey" disabled="false" shift="false" command="true" alt="false" key="y" onkeypress="EditorRedo()" />
<key id="zcmdkey" disabled="false" shift="false" command="true" alt="false" key="z" onkeypress="EditorUndo()" />
<!-- how to handle return, enter, tab, function keys, arrow keys, others? -->
</keyset>
<broadcaster id="args" value="chrome://editor/content/EditorInitPagePlain.html"/>
<broadcaster id="canPrint"/>
<!-- Interim hack to transition from nsIXULWindowCallbacks/ShowWindowWithArgs -->
<broadcaster id="dialog.start" ready="false"/>
<observes element="dialog.start" attribute="ready" onchange="EditorStartup('text')"/>
1999-08-03 02:29:19 +04:00
<broadcaster id="Editor:Document:Dirty" dirty="false"/>
<broadcaster id="Editor:Style:IsBold" bold="false"/>
1999-08-03 02:29:19 +04:00
<broadcaster id="Editor:Style:IsItalic" italic="false"/>
<broadcaster id="Editor:Style:IsUnderline" underline="false"/>
<broadcaster id="Editor:Paragraph:Format" format=""/>
<broadcaster id="Editor:Font:Face" font=""/>
<broadcaster id="Editor:Font:Size" size=""/>
1999-08-03 02:29:19 +04:00
<toolbox id="EditorToolbars">
<menubar>
<menu value="&fileMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&newCmd.label;" onaction="EditorNew()"/>
<menuitem value="&openCmd.label;" onaction="EditorOpen()"/>
<menuitem value="&closeCmd.label;" onaction="EditorClose()"/>
<menuseparator />
<menuitem value="&saveCmd.label;" onaction="EditorSave()"/>
<menuitem value="&saveAsCmd.label;" onaction="EditorSaveAs()"/>
<menuseparator />
<menuitem value="&printSetupCmd.label;" onaction=""/>
<menuitem value="&printPreviewCmd.label;" onaction="EditorPrintPreview()"/>
<menuitem value="&printCmd.label;" onaction="EditorPrint()"/>
<menuseparator />
<menuitem value="&quitCmd.label;" onaction="EditorExit()"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&editMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&undoCmd.label;" onaction="EditorUndo()"/>
<menuitem value="&redoCmd.label;" onaction="EditorRedo()"/>
<menuseparator />
<menuitem value="&cutCmd.label;" onaction="EditorCut()"/>
<menuitem value="&copyCmd.label;" onaction="EditorCopy()"/>
<menuitem value="&pasteCmd.label;" onaction="EditorPaste()"/>
<menuitem value="&pasteAsQuotationCmd.label;" onaction="EditorPasteAsQuotation()"/>
<menuitem value="&clearCmd.label;" onaction=""/>
<menuseparator />
<menuitem value="&selectAllCmd.label;" onaction="EditorSelectAll()"/>
<menuseparator />
<menuitem value="&findCmd.label;" onaction="EditorFind()"/>
<menuitem value="&findAgainCmd.label;" onaction="EditorFindNext()"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&viewMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&hideCompositionToolbarCmd.label;" onaction=""/>
<menuitem value="&hideFormattingToolbarCmd.label;" onaction="" />
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&insertMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&insertLinkCmd.label;" onaction="EditorInsertLink()"/>
<menuitem value="&insertTargetCmd.label;" onaction=""/>
<menuitem value="&insertImageCmd.label;" onaction="EditorInsertImage()"/>
<menuitem value="&insertHLineCmd.label;" onaction="EditorInsertHLine()"/>
<menuitem value="&insertTableCmd.label;" onaction="EditorInsertTable()"/>
<menuitem value="&insertHTMLSourceCmd.label;" onaction="EditorInsertHTML()"/>
<menuseparator />
<menuitem value="&insertLineBreakCmd.label;" onaction=""/>
<menuitem value="&insertBreakBelowImagesCmd.label;" onaction=""/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
1999-08-03 02:29:19 +04:00
<menu value="&formatMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menu value="&fontfaceMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&defaultVariableWidthCmd.label;" onaction="EditorSetFontFace('')"/>
<menuitem value="&defaultFixedWidthCmd.label;" onaction="EditorSetFontFace('tt')"/>
<menuseparator/>
<menuitem value="&arialHelveticaFont.label;" onaction="EditorSetFontFace('Arial, Helvetica, sans-serif')"/>
<menuitem value="&timesFont.label;" onaction="EditorSetFontFace('Times New Roman, Times, serif')"/>
<menuitem value="&courierFont.label;" onaction="EditorSetFontFace('Courier New, Courier, mono')"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&fontsizeMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&sizeMinusTwoCmd.label;" onaction="EditorSetFontSize('-2')"/>
<menuitem value="&sizeMinusOneCmd.label;" onaction="EditorSetFontSize('-1')"/>
<menuitem value="&sizeNormalCmd.label;" onaction="EditorSetFontSize('0')"/>
<menuitem value="&sizePlusOneCmd.label;" onaction="EditorSetFontSize('+1')"/>
<menuitem value="&sizePlusTwoCmd.label;" onaction="EditorSetFontSize('+2')"/>
<menuitem value="&sizePlusThreeCmd.label;" onaction="EditorSetFontSize('+3')"/>
<menuitem value="&sizePlusFourCmd.label;" onaction="EditorSetFontSize('+4')"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&fontStyleMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&styleBoldCmd.label;" onaction="EditorApplyStyle('b')"/>
<menuitem value="&styleItalicCmd.label;" onaction="EditorApplyStyle('i')"/>
<menuitem value="&styleUnderlineCmd.label;" onaction="EditorApplyStyle('u')"/>
<menuitem value="&styleStrikeThruCmd.label;" onaction="EditorApplyStyle('strike')"/>
<menuitem value="&styleSuperscriptCmd.label;" onaction="EditorApplyStyle('sup')"/>
<menuitem value="&styleSubscriptCmd.label;" onaction="EditorApplyStyle('sub')"/>
<menuitem value="&styleBlinkCmd.label;" onaction="EditorApplyStyle('blink')"/>
<menuitem value="&styleNonbreakingCmd.label;" onaction="EditorApplyStyle('nobr')"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menuitem value="&fontColorMenu.label;" onaction=""/>
<menuitem value="&removeAllStylesCmd.label;" onaction="EditorRemoveStyle('all')"/>
<menuseparator />
<menu value="&paragraphHeadingMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&paragraphNormalCmd.label;" onaction="EditorSetParagraphFormat('normal')"/>
<menuitem value="&headingOneCmd.label;" onaction="EditorSetParagraphFormat('h1')"/>
<menuitem value="&headingTwoCmd.label;" onaction="EditorSetParagraphFormat('h2')"/>
<menuitem value="&headingThreeCmd.label;" onaction="EditorSetParagraphFormat('h3')"/>
<menuitem value="&headingFourCmd.label;" onaction="EditorSetParagraphFormat('h4')"/>
<menuitem value="&headingFiveCmd.label;" onaction="EditorSetParagraphFormat('h5')"/>
<menuitem value="&headingSixCmd.label;" onaction="EditorSetParagraphFormat('h6')"/>
<menuitem value="&paragraphAddressCmd.label;" onaction="EditorSetParagraphFormat('address')"/>
<menuitem value="&paragraphPreformatCmd.label;" onaction="EditorSetParagraphFormat('pre')"/>
<menuitem value="&paragraphListCmd.label;" onaction="EditorSetParagraphFormat('li')"/>
<menuitem value="&paragraphDfnTermCmd.label;" onaction="EditorSetParagraphFormat('dt')"/>
<menuitem value="&paragraphDfnDescCmd.label;" onaction="EditorSetParagraphFormat('dd')"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
1999-08-03 02:29:19 +04:00
</menupopup>
</menu>
<menu value="&toolsMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&newBrowserCmd.label;" onaction="EditorNewBrowser()"/>
<menuitem value="&newPlaintextEditorCmd.label;" onaction="EditorNewPlaintext()"/>
<menuseparator />
<menuitem value="&checkSpellingCmd.label;" onaction="CheckSpelling()"/>
<menuitem value="&setFocusCmd.label;" onaction="window.focus()"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&debugMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&outputTextCmd.label;" onaction="EditorGetText()"/>
<menuitem value="&outputHTMLCmd.label;" onaction="EditorGetHTML()"/>
<menuseparator />
<menuitem value="&insertTextCmd.label;" onaction="EditorInsertText('All good things come to those who wait. ')"/>
<menuseparator />
<menuitem value="&testSelectionCmd.label;" onaction="EditorTestSelection()"/>
<menuitem value="&testDocumentCmd.label;" onaction="EditorTestDocument()"/>
<menuitem value="&runUnitTestsCmd.label;" onaction="EditorUnitTests()"/>
1999-07-31 11:26:19 +04:00
</menupopup>
</menu>
<menu value="&helpMenu.label;">
1999-07-31 11:26:19 +04:00
<menupopup>
<menuitem value="&aboutCmd.label;" onaction=""/>
</menupopup>
</menu>
<spring flex="100%"/>
</menubar>
1999-08-03 02:29:19 +04:00
<toolbar id="EditToolbar">
<titledbutton id="ParagraphPopup" value="&paragraphToolbarMenu.label;" class="popup" align="left" popup="ParagraphMenu" popupanchor="bottomleft"/>
<titledbutton id="FontFacePopup" value="&fontToolbarMenu.label;" class="popup" align="left" popup="FontFaceMenu" popupanchor="bottomleft"/>
<titledbutton id="FontSizePopup" value="&sizeToolbarMenu.label;" class="popup" align="left" popup="FontSizeMenu" popupanchor="bottomleft"/>
<titledbutton id="TextColorPopup" src="chrome://editor/skin/images/ED_TextColor.gif" class="popup" popup="TextColorMenu" popupanchor="bottomleft"/>
<titledbutton id="BackColorPopup" src="chrome://editor/skin/images/ED_BackColor.gif" class="popup" popup="BackColorMenu" popupanchor="bottomleft"/>
1999-08-03 02:29:19 +04:00
<titledbutton id="boldButton" value="&formatToolbar.boldChar;" onclick="EditorApplyStyle('b')">
<observes element="Editor:Style:IsBold" attribute="bold" onchange="onBoldChange()"/>
</titledbutton>
1999-08-03 02:29:19 +04:00
<titledbutton id="italicButton" value="&formatToolbar.italicChar;" onclick="EditorApplyStyle('i')"/>
<titledbutton id="underlineButton" value="&formatToolbar.underlineChar;" onclick="EditorApplyStyle('u')"/>
<titledbutton src="&bulletListIcon.url;" onclick="EditorInsertList('ul')"/>
<titledbutton src="&numberListIcon.url;" onclick="EditorInsertList('ol')"/>
<titledbutton src="&outdentIcon.url;" onclick="EditorIndent('outdent')"/>
<titledbutton src="&indentIcon.url;" onclick="EditorIndent('indent')"/>
<titledbutton src="&alignpopupIcon.url;" class="popup" popup="AlignmentWindow" popupanchor="bottomleft"/>
<titledbutton src="&linkIcon.url;" value="&linkToolbarCmd.label;" onclick="EditorInsertLink()"/>
<titledbutton src="&imageIcon.url;" value="&imageToolbarCmd.label;" onclick="EditorInsertImage()"/>
<titledbutton src="&spellingIcon.url;" value="&spellToolbarCmd.label;" onclick="CheckSpelling()"/>
1999-08-03 02:29:19 +04:00
<spring flex="100%"/>
</toolbar>
</toolbox>
<html:iframe type="content-primary" id="content-frame" src="about:blank" flex="100%"/>
<!-- Ripped off from navigator.xul; this should be a XUL fragment! -->
1999-08-03 02:29:19 +04:00
<box align="horizontal" id="EditorStatusBar">
<titledbutton value="&tempNotification.label;" onclick="doTests()"/>
1999-08-03 02:29:19 +04:00
<box id="EditorProgressBox" align="vertical" flex="100%">
<spring flex="100%"/>
<progressmeter mode="normal" value="0">
</progressmeter>
<spring flex="100%"/>
</box>
1999-08-03 02:29:19 +04:00
<titledbutton id="statusText" align="right" flex="100%" value="&tempDoneLoading.label;" style="font-family:sans-serif;font-size:2.5mm">
</titledbutton>
</box>
<!-- Popup Menus and Windows - Not displayed in primary chrome -->
<popup id="ParagraphMenu">
<menu>
<menuitem value="&paragraphNormalCmd.label;" onaction="EditorSetParagraphFormat('normal')"/>
<menuitem value="&headingOneCmd.label;" onaction="EditorSetParagraphFormat('h1')"/>
<menuitem value="&headingTwoCmd.label;" onaction="EditorSetParagraphFormat('h2')"/>
<menuitem value="&headingThreeCmd.label;" onaction="EditorSetParagraphFormat('h3')"/>
<menuitem value="&headingFourCmd.label;" onaction="EditorSetParagraphFormat('h4')"/>
<menuitem value="&headingFiveCmd.label;" onaction="EditorSetParagraphFormat('h5')"/>
<menuitem value="&headingSixCmd.label;" onaction="EditorSetParagraphFormat('h6')"/>
<menuitem value="&paragraphAddressCmd.label;" onaction="EditorSetParagraphFormat('address')"/>
<menuitem value="&paragraphPreformatCmd.label;" onaction="EditorSetParagraphFormat('pre')"/>
<menuitem value="&paragraphListCmd.label;" onaction="EditorSetParagraphFormat('li')"/>
<menuitem value="&paragraphDfnTermCmd.label;" onaction="EditorSetParagraphFormat('dt')"/>
<menuitem value="&paragraphDfnDescCmd.label;" onaction="EditorSetParagraphFormat('dd')"/>
</menu>
</popup>
<popup id="FontFaceMenu">
<menu>
<menuitem value="&defaultVariableWidthCmd.label;" onaction="EditorSetFontFace('')"/>
<menuitem value="&defaultFixedWidthCmd.label;" onaction="EditorSetFontFace('tt')"/>
<menuseparator/>
<menuitem value="&arialHelveticaFont.label;" onaction="EditorSetFontFace('Arial, Helvetica, sans-serif')"/>
<menuitem value="&timesFont.label;" onaction="EditorSetFontFace('Times New Roman, Times, serif')"/>
<menuitem value="&courierFont.label;" onaction="EditorSetFontFace('Courier New, Courier, mono')"/>
</menu>
</popup>
<popup id="FontSizeMenu">
<menu>
<menuitem value="&sizeMinusTwoCmd.label;" onaction="EditorSetFontSize('-2')"/>
<menuitem value="&sizeMinusOneCmd.label;" onaction="EditorSetFontSize('-1')"/>
<menuitem value="&sizeNormalCmd.label;" onaction="EditorSetFontSize('0')"/>
<menuitem value="&sizePlusOneCmd.label;" onaction="EditorSetFontSize('+1')"/>
<menuitem value="&sizePlusTwoCmd.label;" onaction="EditorSetFontSize('+2')"/>
<menuitem value="&sizePlusThreeCmd.label;" onaction="EditorSetFontSize('+3')"/>
<menuitem value="&sizePlusFourCmd.label;" onaction="EditorSetFontSize('+4')"/>
</menu>
</popup>
<popup id="BackColorMenu">
<menu>
<menuitem value="&colorBlackCmd.label;" onaction="EditorSetBackgroundColor('black')"/>
<menuitem value="&colorGrayCmd.label;" onaction="EditorSetBackgroundColor('gray')"/>
<menuitem value="&colorSilverCmd.label;" onaction="EditorSetBackgroundColor('silver')"/>
<menuitem value="&colorWhiteCmd.label;" onaction="EditorSetBackgroundColor('white')"/>
<menuitem value="&colorRedCmd.label;" onaction="EditorSetBackgroundColor('red')"/>
<menuitem value="&colorBlueCmd.label;" onaction="EditorSetBackgroundColor('blue')"/>
<menuitem value="&colorGreenCmd.label;" onaction="EditorSetBackgroundColor('green')"/>
<menuitem value="&colorCyanCmd.label;" onaction="EditorSetBackgroundColor('cyan')"/>
<menuitem value="&colorYellowCmd.label;" onaction="EditorSetBackgroundColor('yellow')"/>
<menuitem value="&colorMagentaCmd.label;" onaction="EditorSetBackgroundColor('magenta')"/>
</menu>
</popup>
<popup id="TextColorMenu">
1999-08-03 02:29:19 +04:00
<menu class="popup">
<menuitem value="&colorBlackCmd.label;" onaction="EditorSetFontColor('black')"/>
<menuitem value="&colorGrayCmd.label;" onaction="EditorSetFontColor('gray')"/>
<menuitem value="&colorSilverCmd.label;" onaction="EditorSetFontColor('silver')"/>
<menuitem value="&colorWhiteCmd.label;" onaction="EditorSetFontColor('white')"/>
<menuitem value="&colorRedCmd.label;" onaction="EditorSetFontColor('red')"/>
<menuitem value="&colorBlueCmd.label;" onaction="EditorSetFontColor('blue')"/>
<menuitem value="&colorGreenCmd.label;" onaction="EditorSetFontColor('green')"/>
<menuitem value="&colorCyanCmd.label;" onaction="EditorSetFontColor('cyan')"/>
<menuitem value="&colorYellowCmd.label;" onaction="EditorSetFontColor('yellow')"/>
<menuitem value="&colorMagentaCmd.label;" onaction="EditorSetFontColor('magenta')"/>
</menu>
</popup>
<popup id="AlignmentWindow" oncreate="OnCreateAlignmentPopup()">
<window class="popup" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" align="vertical" flex="100%"
width="70" height="110">
<html:div flex="100%">
<html:button class="PopupButton" onclick="window.close();">
<html:img align="middle" src="chrome://editor/skin/images/ED_Left.gif"/>
<html:span>&alignLeft.label;</html:span>
</html:button>
<html:button class="PopupButton" onclick="window.close();">
<html:img align="middle" src="chrome://editor/skin/images/ED_Center.gif"/>
<html:span>&alignCenter.label;</html:span>
</html:button>
<html:button class="PopupButton" onclick="window.close();">
<html:img align="middle" src="chrome://editor/skin/images/ED_Right.gif"/>
<html:span>&alignRight.label;</html:span>
</html:button>
<html:button class="PopupButton" onclick="window.close();">
<html:img align="middle" src="chrome://editor/skin/images/ED_Justify.gif"/>
<html:span>&alignJustify.label;</html:span>
</html:button>
</html:div>
<!-- Trying to use autosizing and boxes
<titledbutton class="PopupButton" value="&alignLeft.label;" style="min-width: 40px" onclick="opener.EditorAlign('left'); window.close();"/>
<titledbutton class="PopupButton" value="&alignCenter.label;" style="min-width: 40px" onclick="opener.EditorAlign('center'); window.close();"/>
<titledbutton class="PopupButton" value="&alignRight.label;" style="min-width: 40px" onclick="opener.EditorAlign('right'); window.close();"/>
-->
</window>
</popup>
<popup id="FontFaceWindow">
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" width="40" height="40">
<titledbutton value="&defaultVariableWidthCmd.label;" onclick="opener.EditorSetFontFace(''); window.close();"/>
<titledbutton value="&defaultFixedWidthCmd.label;" onclick="opener.EditorSetFontFace('tt'); window.close();"/>
<titledbutton value="&arialHelveticaFont.label;" onclick="opener.EditorSetFontFace('Arial, Helvetica, sans-serif'); window.close();"/>
<titledbutton value="&timesFont.label;" onclick="opener.EditorSetFontFace('Times New Roman, Times, serif'); window.close();"/>
<titledbutton value="&courierFont.label;" onclick="opener.EditorSetFontFace('Courier New, Courier, mono'); window.close();"/>
</window>
</popup>
</window>