nanovg-0.2.0.0: src/NanoVG/Internal/Style.chs
module NanoVG.Internal.Style where
import Foreign.C.Types
import Foreign.Marshal.Utils
import NanoVG.Internal.Context
import NanoVG.Internal.Color
import NanoVG.Internal.Paint
#include "nanovg.h"
#include "nanovg_wrapper.h"
{#pointer *NVGcontext as Context newtype nocode#}
{#pointer *NVGcolor as ColorPtr -> Color nocode#}
{#pointer *NVGpaint as PaintPtr -> Paint nocode#}
{#enum NVGlineCap as LineCap
{underscoreToCase} with prefix = "NVG_"
deriving (Show,Read,Eq,Ord)#}
-- | Sets current stroke style to a solid color.
{#fun unsafe nvgStrokeColor_ as strokeColor
{`Context',with*`Color'} -> `()'#}
-- | Sets current stroke style to a paint, which can be a one of the gradients or a pattern.
{#fun unsafe nvgStrokePaint_ as strokePaint
{`Context',with*`Paint'} -> `()'#}
-- | Sets current fill style to a solid color.
{#fun unsafe nvgFillColor_ as fillColor
{`Context',with*`Color'} -> `()'#}
-- | Sets current fill style to a paint, which can be a one of the gradients or a pattern.
{#fun unsafe nvgFillPaint_ as fillPaint
{`Context',with*`Paint'} -> `()'#}
-- | Sets the miter limit of the stroke style.
-- Miter limit controls when a sharp corner is beveled.
{#fun unsafe nvgMiterLimit as miterLimit
{`Context',`CFloat'} -> `()'#}
-- | Sets the stroke width of the stroke style.
{#fun unsafe nvgStrokeWidth as strokeWidth
{`Context',`CFloat'} -> `()'#}
-- | Sets how the end of the line (cap) is drawn,
-- Can be one of: 'Butt' (default), 'Round', 'Square'.
{#fun unsafe nvgLineCap as lineCap
{`Context',`LineCap'} -> `()'#}
-- | Sets how sharp path corners are drawn.
-- Can be one of 'Miter' (default), 'Round', 'Bevel.
{#fun unsafe nvgLineJoin as lineJoin
{`Context',`LineCap'} -> `()'#}
-- | Sets the transparency applied to all rendered shapes.
-- Already transparent paths will get proportionally more transparent as well.
{#fun unsafe nvgGlobalAlpha as globalAlpha
{`Context',`CFloat'} -> `()'#}