#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

################################################################################
# BEGIN NO TRANSLATION
###############################################################################
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
fontNameAction_CSS_Default=arial, helvetica, sans-serif
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
fontNameAction_CSS_Default_Mozilla=arial,helvetica,sans-serif
################################################################################
# END NO TRANSLATION
################################################################################



# Font Style Names
fontStyle_normal=Normal
fontStyle_sectionHeading=Section Heading
fontStyle_subsectionHeading=Subsection Heading
fontStyle_subSubsectionHeading=Sub Subsection Heading
fontStyle_quote=Quote
fontStyle_codeSample=Code Sample

# HTML Block Tags
blockTag_paragraph=Paragraph
blockTag_heading1=Heading 1
blockTag_heading2=Heading 2
blockTag_heading3=Heading 3
blockTag_heading4=Heading 4
blockTag_heading5=Heading 5
blockTag_heading6=Heading 6
blockTag_address=Address
blockTag_preformattedText=Preformatted Text

# HTML Font Names
fontName_default=Default
fontName_arial=Arial
fontName_courierNew=Courier New
fontName_timesNewRoman=Times New Roman
fontName_verdana=Verdana

# Rich Text Editor Tool Buttons
addHorizontalBarAction_toolTipText=Add Horizontal Bar
addImageAction_toolTipText=Add Image
addLineAction_toolTipText=Add Line
addLinkAction_toolTipText=Add Link
addOrderedListAction_toolTipText=Add Ordered List
addTableAction_toolTipText=Add Table
addUnorderedListAction_toolTipText=Add Unordered List
boldAction_toolTipText=Bold
clearContentAction_toolTipText=Clear Content
copyAction_toolTipText=Copy
cutAction_toolTipText=Cut
findReplaceAction_toolTipText=Find/Replace
indentAction_toolTipText=Indent
italicAction_toolTipText=Italic
justifyCenterAction_toolTipText=Justify Center
justifyFullAction_toolTipText=Justify Full
justifyLeftAction_toolTipText=Justify Left
justifyRightAction_toolTipText=Justify Right
outdentAction_toolTipText=Outdent
pasteAction_toolTipText=Paste
pastePlainTextAction_toolTipText=Paste as plain text
subscriptAction_toolTipText=Subscript
superscriptAction_toolTipText=Superscript
underlineAction_toolTipText=Underline
tidy_clean_text=Default Clean
tidy_cleaner_text=Clean MS HTML
tidy_cleanest_text=Clean Word 2000 HTML
tidy_clean_toolTipText=Clean with JTidy using default options
tidy_cleaner_toolTipText=Clean HTML of MS HTML
tidy_cleanest_toolTipText=Clean Word 2000 HTML


# Rich Text Editor Comboboxes
fontStyleAction_toolTipText=Set Font Style
blockTagAction_toolTipText=Set Block Tag
fontNameAction_toolTipText=Set Font
fontNameAction_DefaultFontName=Default font
fontSizeAction_toolTipText=Set Font Size

# Rich Text Editor Context Menu Items
cutAction_text=&Cut
copyAction_text=C&opy
pasteAction_text=&Paste
pastePlainTextAction_text=Paste &as plain text

# Rich Text Editor Tabs
richTextTab_text=Rich Text
richTextTab_toolTipText=Edit content in rich text
htmlTab_text=HTML
htmlTab_toolTipText=Edit content in HTML

# Add Dialogs
addImageDialog_title=Add Image
addLinkDialog_title=Add Link
addTableDialog_title=Add Table
findReplaceDialog_title=Find/Replace
urlLabel_text=URL:
summaryLabel_text=Summary:
captionLabel_text=Caption:
rowsLabel_text=Rows:
columnsLabel_text=Columns:
widthLabel_text=Width:
tableStyleLabel_text=Style:
tableHeaderNone_text=Table with no headers
tableHeaderCols_text=Table with column headers
tableHeaderRows_text=Table with row headers
tableHeaderBoth_text=Table with column and row headers
browseButton_text=Browse...

# Clear Editor Content Dialog
clearContentDialog_title=Clear Editor Content Confirmation
clearContentDialog_text=Do you really want to clear the content of this rich text editor?

# Find/Replace Dialog
findLabel_text=Find:
replaceLabel_text=Replace with:
optionsGroup_text=Options
caseSensitiveCheckbox_text=Case sensitive
wholeWordCheckbox_text=Whole word
directionGroup_text=Direction
forwardRadioButton_text=Forward
backwardRadioButton_text=Backward
findButton_text=Find
replaceButton_text=Replace
replaceFindButton_text=Replace/Find
replaceallButton_text=Replace All
# taken from org.eclipse.ui.workbench.texteditor
FindReplace_Status_noMatch_label=String Not Found

# Preference Page
maxCharsPerLineLabel_text=Maximum characters per line:
indentHTMLCheckbox_text=Indent HTML tags
indentSizeLabel_text=Indent Size:
urlDisplayNameLabel_text=URL Display Name:


