###############################################################################
# Copyright (c) 2009, 2012 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 API and implementation
###############################################################################
scripteditor.window.title=EASEL

scripteditor.action.open=&Open
scripteditor.action.clear=New
scripteditor.action.save=&Save
scripteditor.action.save.as=Save as...
scripteditor.action.movieopen=Open &Movie
scripteditor.action.reload=Reload(F5)
scripteditor.action.csv.import=AUDIO Import CSV
scripteditor.action.csv.export=AUDIO Export CSV
scripteditor.action.script.import=script import
scripteditor.action.scriptcsv.import=script CSV import
scripteditor.action.scriptcsv.export=script CSV export
scripteditor.action.caption.import=caption import
scripteditor.action.captionsrt.import=caption SRT import
scripteditor.action.caption.export=caption export

scripteditor.action.play=Play
scripteditor.action.pause=Pause
scripteditor.action.play_pause=Play/Pause
scripteditor.action.rewind=&Rewind
scripteditor.action.analyze=Search Movies

scripteditor.action.ttspanel=&TTS Tuning Panel

scripteditor.popup.captureaudio=Audio Capture
scripteditor.popup.captureaudio.capture=Capture audio mode
scripteditor.popup.captureaudio.script.enable=Enable play description
scripteditor.popup.captureaudio.clear=Clear captured data

scripteditor.menu.file=File(&F)
scripteditor.menu.multimedia=Multimedia(&m)
scripteditor.menu.multimedia.capturemode=Capture mode
scripteditor.menu.favorite=Favorite(&a)
scripteditor.menu.window=Window(&d)
scripteditor.menu.window.tool=Tool(&T)
scripteditor.menu.help=Help(&H)

scripteditor.view.timeline=Time Line
scripteditor.view.editpanel=Edit Panel
scripteditor.view.scriptlist=Script List

scripteditor.tabitem.editpanel=Edit Panel
scripteditor.tabitem.selwavfile=Select WAV file
scripteditor.tabitem.selwavfile.descstandby=Select description item.
scripteditor.tabitem.selwavfile.wavstandby=Drag and drop WAV file here.
scripteditor.tabitem.selwavfile.wavformerr=No WAV format or crush data.
scripteditor.tabitem.selwavfile.cannotcontrol=Can not control this tab during multiple items selection mode.

scripteditor.preference.capture.name=Capture audio setting
scripteditor.preference.csvrule.name=CSV data import setting

About.Text=Eclipse ACTF Script Editor Lite (EASEL)\nVersion: 0.1.0\n\nCopyright Eclipse contributors and others 2009, 2012.  All rights reserved.\nVisit http://www.eclipse.org/actf/\n\nThis product includes software developed by the\nApache Software Foundation http://www.apache.org/

browser.ie.title=Web Browser (ACTF)
