###############################################################################
# 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
Scale=Scale
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.
ScaleDescription=This tab demonstrates how an image can be scaled.
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.
