###############################################################################
# Copyright (c) 2005, 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 API and implementation
###############################################################################
AdvancedGraphics=Advanced Graphics
SWTGraphics=SWT Graphics
Warning=Warning
LibNotFound=Advanced graphics library not found. Some examples will not display.
Settings=Settings
Play=Play
Pause=Pause
Background=Background
DoubleBuffer=Double Buffer
White=White
Black=Black
Red=Red
Green=Green
Blue=Blue
Cyan=Cyan
Yellow=Yellow	
CustomColor=Custom Color
CustomPattern=Custom Pattern
Pattern1=Pink Losange
Pattern2=Purple Checkers
Pattern3=Blue Pentagon
Animation=Animation
StarPolygon=Star Polygon
Line=Line
BlackHole=Black Hole
FillRule=Fill Rule:
Polygons=Polygons
Introduction=Introduction
SWT=SWT
Bounce=Bounce
Font=Font
Misc=Misc
Countdown=Countdown
LineWidth=Line Width
Antialiasing=Antialiasing
LineCap=Line Cap
Spiral=Spiral
Petals=Petals
Gradient=Gradient
GradImage=Gradient Image
SwapColors=Swap Colors
Curves=Curves
Cubic=Cubic
Quadratic=Quadratic
Lines=Lines
Flat=Flat
Square=Square
Round=Round
LineStyles=Line Styles
GradientDlgMsg=Please select two colors:
GradientDlgButton1=Color 1
GradientDlgButton2=Color 2
GradientTabItem1=Color 1
GradientTabItem2=Color 2
Alpha=Alpha
CustomFont=Custom Font
Regular=Regular
Italic=Italic
Bold=Bold
BoldItalic=Bold Italic
FontFace=Face
FontStyle=Style
FontSize=Size
Color=Color
Clipping=Clipping
PathClipping=Path Clipping
Circles=Circles
Rectangle=Rectangle
Oval=Oval
Word=Word
Star=Star
Triangles=Triangles
Default=Default
RegionClipping=Region Clipping
Region1=Region 1
Region2=Region 2
Add=Add
Sub=Subtract
Inter=Intersect
Interpolation=Interpolation
Image=Image
OriginalImg=Original Image
House=House
Question=Question
Task=Task
Cube=Cube
Ovals=Ovals
None=None
Low=Low
Default=Default
High=High
Transform=Transform
Cards=Cards
Solid=Solid
Dash=Dash
Dot=Dot
DashDot=Dash Dot
DashDotDot=Dash Dot Dot
LineJoin=Line Join
bevel=BEVEL
miter=MITER
round=ROUND
Ball=Ball
CustomAlpha=Custom Alpha
Maze=Maze
rgb=RGB
Graphics=Graphics
Flip=Flip
Rotate=Rotate
xscale=X-Scale
yscale=Y-Scale
Invert=Invert
Path=Path
PathOper=Path Operations
DrawPath=Draw Path
FillPath=Fill Path
ClosePath=Close Path
FillColor=Fill Color
Text=Text
Shapes=Shapes
Next=Next
Back=Back
AnimPathClipping=Animated Path Clipping
##### ------------------ Tab Descriptions ------------------ #####
AlphaDescription=This tab demonstrates alpha blending. It draws various shapes and images as alpha values change.
BallDescription=This tab uses alpha blending to simulate \"ghosting\" of a ball in movement.
BlackHoleDescription=This is a miscellaneous demonstration that makes use of the fillOval() operation to simulate a black hole.
CardsDescription=This tab demonstrates various transformations, such as scaling, rotation, and translation.
CountdownDescription=This miscellaneous tab presents a count down from 5 to 1, then displays SWT.
CurvesSWTDescription=This tab presents cubic and quadratic curves that can be drawn.  As a demonstration, cubic and quadratic curves are used to spell out \"SWT\".  The user may reposition the cubic and quadratic handles.
CurvesDescription=This tab presents cubic and quadratic curves that can be drawn.  The user may reposition the cubic and quadratic handles
CustomAlphaDescription=This tab demonstrates the use of alpha blending.  It allows a user to specify a custom alpha value.
CustomFontDescription=This tab demonstrates various text fonts.  It allows the user to specify font parameters such as face, style and size.
FontBounceDescription=This tab is an animated graphic. It presents the word SWT in different fonts as it bounces around the screen.
GradientImageDescription=This tab is an animated graphic. It presents the word SWT in different fonts as it bounces around the screen.
AntialiasingGraphicsDesc=This tab demonstrates antialiasing for graphics. Antialiasing is used for smoothing jagged edges in graphics. This tab allows the user to see the effects of different antialiasing values.
FlipDescription=This tab demonstrates how an image can be flipped in various fashions.
TransformImgDescription=This tab demonstrates transformations, such as scaling, rotation, and invert.  It allows the user to specify values for scaling and rotation.
ImageInterpolationDesc=This tab shows the effects of applying various interpolation algorithms to images that have been stretched or shrunk.
IntroductionDescription=This is the introduction tab.  This demonstration makes use of a path clipping.
LineCapDescription=This tab demonstrates various line caps applicable to a line.
LineJoinDescription=This tab demonstrates various line joins. It allows a user to choose from bevel, miter and round.
LineStylesDescription=This tab demonstrates line styles applicable to a line.  It shows the use of the setLineStyle() method.
LineDescription=This tab draws two lines.
MazeDescription=This is a miscellaneous demonstration.  Three objects move through the maze, each following a different path.  Only one of the three follows the correct path.
AnimPathClippingDesc=This tab demonstrates the use of path clipping.  A clipping is the area onto which a drawing is made visible.  The default clipping is the entire canvas (all the space in the right panel).  However, one can set the clipping to be something different.  In this tab, the clipping is the set of triangles, rectangles and the circle.  When the blue rectangle is drawn, only the portions of the blue rectangle appearing in the clipping are visible.
PathClippingDesc=This tab demonstrates the use of path clipping.  A clipping is the area onto which a drawing is made visible.  The default clipping is the entire canvas (all the space in the right panel).  However, one can set the clipping to be something different.
PathOperDescription=This tab demonstrates the use of paths. It allows the user to see the differences between filling, drawing and closing paths.
rgbDescription=Miscellaneous tab that demonstrates emerging colors from layering other colors.
RegionClippingDescription=This tab demonstrates how to apply a region clipping and the effects of applying one.  It also demonstrates the operations that can be applied between two regions.
ShapesDescription=This tab draws 3D shapes (in 2D) using various line styles.
SpiralDescription=Miscellaneous tab that presents a spiral consisting of the number of petals specified.
StarPolygonDescription=This tab draws a polygon and shows the effects of setting different fill rules: SWT.FILL_WINDING or SWT.FILL_EVEN_ODD
AntialiasingTextDesc=This tab demonstrates antialiasing for text. Antialiasing is used for smoothing jagged edges in graphics. This tab allows the user to see the effects of different antialiasing values.
