Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
GI.Gsk.Enums
Description
Synopsis
- data BlendMode
- = BlendModeDefault
- | BlendModeMultiply
- | BlendModeScreen
- | BlendModeOverlay
- | BlendModeDarken
- | BlendModeLighten
- | BlendModeColorDodge
- | BlendModeColorBurn
- | BlendModeHardLight
- | BlendModeSoftLight
- | BlendModeDifference
- | BlendModeExclusion
- | BlendModeColor
- | BlendModeHue
- | BlendModeSaturation
- | BlendModeLuminosity
- | AnotherBlendMode Int
- data Corner
- data FillRule
- data GLUniformType
- data LineCap
- data LineJoin
- data MaskMode
- data PathDirection
- data PathOperation
- data RenderNodeType
- = RenderNodeTypeNotARenderNode
- | RenderNodeTypeContainerNode
- | RenderNodeTypeCairoNode
- | RenderNodeTypeColorNode
- | RenderNodeTypeLinearGradientNode
- | RenderNodeTypeRepeatingLinearGradientNode
- | RenderNodeTypeRadialGradientNode
- | RenderNodeTypeRepeatingRadialGradientNode
- | RenderNodeTypeConicGradientNode
- | RenderNodeTypeBorderNode
- | RenderNodeTypeTextureNode
- | RenderNodeTypeInsetShadowNode
- | RenderNodeTypeOutsetShadowNode
- | RenderNodeTypeTransformNode
- | RenderNodeTypeOpacityNode
- | RenderNodeTypeColorMatrixNode
- | RenderNodeTypeRepeatNode
- | RenderNodeTypeClipNode
- | RenderNodeTypeRoundedClipNode
- | RenderNodeTypeShadowNode
- | RenderNodeTypeBlendNode
- | RenderNodeTypeCrossFadeNode
- | RenderNodeTypeTextNode
- | RenderNodeTypeBlurNode
- | RenderNodeTypeDebugNode
- | RenderNodeTypeGlShaderNode
- | RenderNodeTypeTextureScaleNode
- | RenderNodeTypeMaskNode
- | RenderNodeTypeFillNode
- | RenderNodeTypeStrokeNode
- | RenderNodeTypeSubsurfaceNode
- | AnotherRenderNodeType Int
- data ScalingFilter
- data SerializationError
- catchSerializationError :: IO a -> (SerializationError -> GErrorMessage -> IO a) -> IO a
- handleSerializationError :: (SerializationError -> GErrorMessage -> IO a) -> IO a -> IO a
- data TransformCategory
Enumerations
BlendMode
The blend modes available for render nodes.
The implementation of each blend mode is deferred to the rendering pipeline.
See <https://www.w3.org/TR/compositing-1/blending
> for more information
on blending and blend modes.
Constructors
BlendModeDefault | The default blend mode, which specifies no blending |
BlendModeMultiply | The source color is multiplied by the destination and replaces the destination |
BlendModeScreen | Multiplies the complements of the destination and source color values, then complements the result. |
BlendModeOverlay | Multiplies or screens the colors, depending on the destination color value. This is the inverse of hard-list |
BlendModeDarken | Selects the darker of the destination and source colors |
BlendModeLighten | Selects the lighter of the destination and source colors |
BlendModeColorDodge | Brightens the destination color to reflect the source color |
BlendModeColorBurn | Darkens the destination color to reflect the source color |
BlendModeHardLight | Multiplies or screens the colors, depending on the source color value |
BlendModeSoftLight | Darkens or lightens the colors, depending on the source color value |
BlendModeDifference | Subtracts the darker of the two constituent colors from the lighter color |
BlendModeExclusion | Produces an effect similar to that of the difference mode but lower in contrast |
BlendModeColor | Creates a color with the hue and saturation of the source color and the luminosity of the destination color |
BlendModeHue | Creates a color with the hue of the source color and the saturation and luminosity of the destination color |
BlendModeSaturation | Creates a color with the saturation of the source color and the hue and luminosity of the destination color |
BlendModeLuminosity | Creates a color with the luminosity of the source color and the hue and saturation of the destination color |
AnotherBlendMode Int | Catch-all for unknown values |
Instances
Enum BlendMode Source # | |
Show BlendMode Source # | |
Eq BlendMode Source # | |
Ord BlendMode Source # | |
Defined in GI.Gsk.Enums | |
BoxedEnum BlendMode Source # | |
Defined in GI.Gsk.Enums | |
TypedObject BlendMode Source # | |
Defined in GI.Gsk.Enums | |
HasParentTypes BlendMode Source # | |
Defined in GI.Gsk.Enums | |
type ParentTypes BlendMode Source # | |
Defined in GI.Gsk.Enums type ParentTypes BlendMode = '[] :: [Type] |
Corner
The corner indices used by GskRoundedRect
.
Constructors
CornerTopLeft | The top left corner |
CornerTopRight | The top right corner |
CornerBottomRight | The bottom right corner |
CornerBottomLeft | The bottom left corner |
AnotherCorner Int | Catch-all for unknown values |
Instances
Enum Corner Source # | |
Show Corner Source # | |
Eq Corner Source # | |
Ord Corner Source # | |
BoxedEnum Corner Source # | |
Defined in GI.Gsk.Enums | |
TypedObject Corner Source # | |
Defined in GI.Gsk.Enums | |
HasParentTypes Corner Source # | |
Defined in GI.Gsk.Enums | |
type ParentTypes Corner Source # | |
Defined in GI.Gsk.Enums type ParentTypes Corner = '[] :: [Type] |
FillRule
Specifies how paths are filled.
Whether or not a point is included in the fill is determined by taking a ray from that point to infinity and looking at intersections with the path. The ray can be in any direction, as long as it doesn't pass through the end point of a segment or have a tricky intersection such as intersecting tangent to the path.
(Note that filling is not actually implemented in this way. This is just a description of the rule that is applied.)
New entries may be added in future versions.
Since: 4.14
Constructors
FillRuleWinding | If the path crosses the ray from left-to-right, counts +1. If the path crosses the ray from right to left, counts -1. (Left and right are determined from the perspective of looking along the ray from the starting point.) If the total count is non-zero, the point will be filled. |
FillRuleEvenOdd | Counts the total number of intersections, without regard to the orientation of the contour. If the total number of intersections is odd, the point will be filled. |
AnotherFillRule Int | Catch-all for unknown values |
Instances
Enum FillRule Source # | |
Defined in GI.Gsk.Enums | |
Show FillRule Source # | |
Eq FillRule Source # | |
Ord FillRule Source # | |
BoxedEnum FillRule Source # | |
Defined in GI.Gsk.Enums | |
TypedObject FillRule Source # | |
Defined in GI.Gsk.Enums | |
HasParentTypes FillRule Source # | |
Defined in GI.Gsk.Enums | |
type ParentTypes FillRule Source # | |
Defined in GI.Gsk.Enums type ParentTypes FillRule = '[] :: [Type] |
GLUniformType
data GLUniformType Source #
Deprecated: (Since version 4.16)
Defines the types of the uniforms that GskGLShaders
declare.
It defines both what the type is called in the GLSL shader code, and what the corresponding C type is on the Gtk side.
Constructors
GLUniformTypeNone | No type, used for uninitialized or unspecified values. |
GLUniformTypeFloat | A float uniform |
GLUniformTypeInt | A GLSL int / gint32 uniform |
GLUniformTypeUint | A GLSL uint / guint32 uniform |
GLUniformTypeBool | A GLSL bool / gboolean uniform |
GLUniformTypeVec2 | A GLSL vec2 / graphene_vec2_t uniform |
GLUniformTypeVec3 | A GLSL vec3 / graphene_vec3_t uniform |
GLUniformTypeVec4 | A GLSL vec4 / graphene_vec4_t uniform |
AnotherGLUniformType Int | Catch-all for unknown values |
Instances
LineCap
Specifies how to render the start and end points of contours or dashes when stroking.
The default line cap style is GSK_LINE_CAP_BUTT
.
New entries may be added in future versions.
<figure> <picture> <source srcset="caps-dark.png" media="(prefers-color-scheme: dark)"> <img alt="Line Cap Styles" src="caps-light.png"> </picture> <figcaption>GSK_LINE_CAP_BUTT, GSK_LINE_CAP_ROUND, GSK_LINE_CAP_SQUARE</figcaption> </figure>
Since: 4.14
Constructors
LineCapButt | Start and stop the line exactly at the start and end point |
LineCapRound | Use a round ending, the center of the circle is the start or end point |
LineCapSquare | use squared ending, the center of the square is the start or end point |
AnotherLineCap Int | Catch-all for unknown values |
Instances
Enum LineCap Source # | |
Defined in GI.Gsk.Enums | |
Show LineCap Source # | |
Eq LineCap Source # | |
Ord LineCap Source # | |
BoxedEnum LineCap Source # | |
Defined in GI.Gsk.Enums | |
TypedObject LineCap Source # | |
Defined in GI.Gsk.Enums | |
HasParentTypes LineCap Source # | |
Defined in GI.Gsk.Enums | |
type ParentTypes LineCap Source # | |
Defined in GI.Gsk.Enums type ParentTypes LineCap = '[] :: [Type] |
LineJoin
Specifies how to render the junction of two lines when stroking.
The default line join style is GSK_LINE_JOIN_MITER
.
New entries may be added in future versions.
<figure> <picture> <source srcset="join-dark.png" media="(prefers-color-scheme: dark)"> <img alt="Line Join Styles" src="join-light.png"> </picture> <figcaption>GSK_LINE_JOINT_MITER, GSK_LINE_JOINT_ROUND, GSK_LINE_JOIN_BEVEL</figcaption> </figure>
Since: 4.14
Constructors
LineJoinMiter | Use a sharp angled corner |
LineJoinRound | Use a round join, the center of the circle is the join point |
LineJoinBevel | use a cut-off join, the join is cut off at half the line width from the joint point |
AnotherLineJoin Int | Catch-all for unknown values |
Instances
Enum LineJoin Source # | |
Defined in GI.Gsk.Enums | |
Show LineJoin Source # | |
Eq LineJoin Source # | |
Ord LineJoin Source # | |
BoxedEnum LineJoin Source # | |
Defined in GI.Gsk.Enums | |
TypedObject LineJoin Source # | |
Defined in GI.Gsk.Enums | |
HasParentTypes LineJoin Source # | |
Defined in GI.Gsk.Enums | |
type ParentTypes LineJoin Source # | |
Defined in GI.Gsk.Enums type ParentTypes LineJoin = '[] :: [Type] |
MaskMode
The mask modes available for mask nodes.
Since: 4.10
Constructors
MaskModeAlpha | Use the alpha channel of the mask |
MaskModeInvertedAlpha | Use the inverted alpha channel of the mask |
MaskModeLuminance | Use the luminance of the mask, multiplied by mask alpha |
MaskModeInvertedLuminance | Use the inverted luminance of the mask, multiplied by mask alpha |
AnotherMaskMode Int | Catch-all for unknown values |
Instances
Enum MaskMode Source # | |
Defined in GI.Gsk.Enums | |
Show MaskMode Source # | |
Eq MaskMode Source # | |
Ord MaskMode Source # | |
BoxedEnum MaskMode Source # | |
Defined in GI.Gsk.Enums | |
TypedObject MaskMode Source # | |
Defined in GI.Gsk.Enums | |
HasParentTypes MaskMode Source # | |
Defined in GI.Gsk.Enums | |
type ParentTypes MaskMode Source # | |
Defined in GI.Gsk.Enums type ParentTypes MaskMode = '[] :: [Type] |
PathDirection
data PathDirection Source #
Used to pick one of the four tangents at a given point on the path.
Note that the directions for gSKPATHFROMSTART
/gSKPATHTOEND
and
gSKPATHTOSTART
/gSKPATHFROMEND
will coincide for smooth points.
Only sharp turns will exhibit four different directions.
<picture> <source srcset="directions-dark.png" media="(prefers-color-scheme: dark)"> <img alt="Path Tangents" src="directions-light.png"> </picture>
Since: 4.14
Constructors
PathDirectionFromStart | The tangent in path direction of the incoming side of the path |
PathDirectionToStart | The tangent against path direction of the incoming side of the path |
PathDirectionToEnd | The tangent in path direction of the outgoing side of the path |
PathDirectionFromEnd | The tangent against path direction of the outgoing side of the path |
AnotherPathDirection Int | Catch-all for unknown values |
Instances
PathOperation
data PathOperation Source #
Describes the segments of a GskPath
.
More values may be added in the future.
Since: 4.14
Constructors
PathOperationMove | A move-to operation, with 1 point describing the target point. |
PathOperationClose | A close operation ending the current contour with a line back to the starting point. Two points describe the start and end of the line. |
PathOperationLine | A line-to operation, with 2 points describing the start and end point of a straight line. |
PathOperationQuad | A curve-to operation describing a quadratic Bézier curve with 3 points describing the start point, the control point and the end point of the curve. |
PathOperationCubic | A curve-to operation describing a cubic Bézier curve with 4 points describing the start point, the two control points and the end point of the curve. |
PathOperationConic | A rational quadratic Bézier curve with 3 points describing the start point, control point and end point of the curve. A weight for the curve will be passed, too. |
AnotherPathOperation Int | Catch-all for unknown values |
Instances
RenderNodeType
data RenderNodeType Source #
The type of a node determines what the node is rendering.
Constructors
RenderNodeTypeNotARenderNode | Error type. No node will ever have this type. |
RenderNodeTypeContainerNode | A node containing a stack of children |
RenderNodeTypeCairoNode | A node drawing a |
RenderNodeTypeColorNode | A node drawing a single color rectangle |
RenderNodeTypeLinearGradientNode | A node drawing a linear gradient |
RenderNodeTypeRepeatingLinearGradientNode | A node drawing a repeating linear gradient |
RenderNodeTypeRadialGradientNode | A node drawing a radial gradient |
RenderNodeTypeRepeatingRadialGradientNode | A node drawing a repeating radial gradient |
RenderNodeTypeConicGradientNode | A node drawing a conic gradient |
RenderNodeTypeBorderNode | A node stroking a border around an area |
RenderNodeTypeTextureNode | A node drawing a |
RenderNodeTypeInsetShadowNode | A node drawing an inset shadow |
RenderNodeTypeOutsetShadowNode | A node drawing an outset shadow |
RenderNodeTypeTransformNode | A node that renders its child after applying a matrix transform |
RenderNodeTypeOpacityNode | A node that changes the opacity of its child |
RenderNodeTypeColorMatrixNode | A node that applies a color matrix to every pixel |
RenderNodeTypeRepeatNode | A node that repeats the child's contents |
RenderNodeTypeClipNode | A node that clips its child to a rectangular area |
RenderNodeTypeRoundedClipNode | A node that clips its child to a rounded rectangle |
RenderNodeTypeShadowNode | A node that draws a shadow below its child |
RenderNodeTypeBlendNode | A node that blends two children together |
RenderNodeTypeCrossFadeNode | A node that cross-fades between two children |
RenderNodeTypeTextNode | A node containing a glyph string |
RenderNodeTypeBlurNode | A node that applies a blur |
RenderNodeTypeDebugNode | Debug information that does not affect the rendering |
RenderNodeTypeGlShaderNode | A node that uses OpenGL fragment shaders to render |
RenderNodeTypeTextureScaleNode | A node drawing a Since: 4.10 |
RenderNodeTypeMaskNode | A node that masks one child with another. Since: 4.10 |
RenderNodeTypeFillNode | A node that fills a path. Since: 4.14 |
RenderNodeTypeStrokeNode | A node that strokes a path. Since: 4.14 |
RenderNodeTypeSubsurfaceNode | A node that possibly redirects part of the scene graph to a subsurface. Since: 4.14 |
AnotherRenderNodeType Int | Catch-all for unknown values |
Instances
ScalingFilter
data ScalingFilter Source #
The filters used when scaling texture data.
The actual implementation of each filter is deferred to the rendering pipeline.
Constructors
ScalingFilterLinear | linear interpolation filter |
ScalingFilterNearest | nearest neighbor interpolation filter |
ScalingFilterTrilinear | linear interpolation along each axis, plus mipmap generation, with linear interpolation along the mipmap levels |
AnotherScalingFilter Int | Catch-all for unknown values |
Instances
SerializationError
data SerializationError Source #
Errors that can happen during (de)serialization.
Constructors
SerializationErrorUnsupportedFormat | The format can not be identified |
SerializationErrorUnsupportedVersion | The version of the data is not understood |
SerializationErrorInvalidData | The given data may not exist in a proper serialization |
AnotherSerializationError Int | Catch-all for unknown values |
Instances
catchSerializationError :: IO a -> (SerializationError -> GErrorMessage -> IO a) -> IO a Source #
Catch exceptions of type SerializationError
. This is a specialized version of catchGErrorJustDomain
.
handleSerializationError :: (SerializationError -> GErrorMessage -> IO a) -> IO a -> IO a Source #
Handle exceptions of type SerializationError
. This is a specialized version of handleGErrorJustDomain
.
TransformCategory
data TransformCategory Source #
The categories of matrices relevant for GSK and GTK.
Note that any category includes matrices of all later categories.
So if you want to for example check if a matrix is a 2D matrix,
category >= GSK_TRANSFORM_CATEGORY_2D
is the way to do this.
Also keep in mind that rounding errors may cause matrices to not
conform to their categories. Otherwise, matrix operations done via
multiplication will not worsen categories. So for the matrix
multiplication C = A * B
, category(C) = MIN (category(A), category(B))
.
Constructors
TransformCategoryUnknown | The category of the matrix has not been determined. |
TransformCategoryAny | Analyzing the matrix concluded that it does not fit in any other category. |
TransformCategory3d | The matrix is a 3D matrix. This means that the w column (the last column) has the values (0, 0, 0, 1). |
TransformCategory2d | The matrix is a 2D matrix. This is equivalent
to |
TransformCategory2dAffine | The matrix is a combination of 2D scale and 2D translation operations. In particular, this means that any rectangle can be transformed exactly using this matrix. |
TransformCategory2dTranslate | The matrix is a 2D translation. |
TransformCategoryIdentity | The matrix is the identity matrix. |
AnotherTransformCategory Int | Catch-all for unknown values |