###############################################################################
# Copyright (c) 2009, 2010 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=ScriptEditor

scripteditor.action.open=&Open
scripteditor.action.close=Close
scripteditor.action.save=&Save
scripteditor.action.save.as=Save as...
scripteditor.action.movieopen=Open &Movie
scripteditor.action.reload=Reload(F5)
scripteditor.action.csv.import=Import CSV
scripteditor.action.csv.export=Export CSV

scripteditor.action.play=Play(PAUSE)
scripteditor.action.pause=Pause(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 ScriptEditor\nVersion: 0.0.1\n\nCopyright Eclipse contributors and others 2009, 2010.  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)
