###############################################################################
# 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
xtranslate=X-Translate
ytranslate=Y-Translate
xscale=X-Scale
yscale=Y-Scale
Invert=Invert Matrix
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.
