###############################################################################
# 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
GraphicsExample=Graphics Example
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. Resize the shell, and the image will scale with it.
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.
