###############################################################################
# Copyright (c) 2000, 2004 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
###############################################################################
providerName = Eclipse.org
plugin.SWTBrowserExample.name = SWT Browser Example Plugin
category.SWTExamples.name = SWT Examples
view.BrowserExample.name = Web Browser

launchcategory.SWTViewExamples.name = Workbench Views
launchcategory.SWTViewExamples.description = \
	A collection of Standard Widget Toolkit examples that run as Views inside the Workbench.  \
	These examples will create a new View in the current Perspective.

launchitem.BrowserExample.name = Web Browser
launchitem.BrowserExample.description = \
	This example demonstrates how to integrate a Web Browser with the SWT Browser widget.\n\n\
	It consists of a composite containing a Browser widget to render HTML. \
	Additional widgets allow the user to perform typical browser actions (for example, navigate to a particular URL, go back, forward, refresh and stop).

