build/docs/reference/gsk/ 0000775 0001750 0001750 00000000000 13724235172 015465 5 ustar mclasen mclasen build/docs/reference/gsk/version.xml 0000664 0001750 0001750 00000000007 13724233556 017675 0 ustar mclasen mclasen 3.99.1
build/docs/reference/gsk/gsk4-docs.xml 0000664 0001750 0001750 00000002261 13724235171 020005 0 ustar mclasen mclasen
]>
GSK 4 Reference Manual
This document is for the GSK 4 library, version &version;
The latest versions can be found online at
https://developer.gnome.org/gsk4/.
API ReferenceIndex of all symbols
build/docs/reference/gsk/gsk4-sections.txt 0000664 0001750 0001750 00000013571 13724235171 020731 0 ustar mclasen mclasen GskRenderer
GskRenderer
gsk_renderer_get_surface
gsk_renderer_realize
gsk_renderer_unrealize
gsk_renderer_is_realized
gsk_renderer_render
gsk_renderer_render_texture
gsk_renderer_new_for_surface
gsk_gl_renderer_new
gsk_cairo_renderer_new
gsk_vulkan_renderer_new
gsk_broadway_renderer_new
GSK_IS_RENDERER
GSK_RENDERER
GSK_TYPE_RENDERER
GskRendererClass
gsk_renderer_get_type
GSK_TYPE_SCALING_FILTER
GskRenderNode
GskRenderNode
GskBlendNode
GskBlurNode
GskBorderNode
GskCairoNode
GskClipNode
GskColorMatrixNode
GskColorNode
GskContainerNode
GskCrossFadeNode
GskDebugNode
GskInsetShadowNode
GskLinearGradientNode
GskOpacityNode
GskOutsetShadowNode
GskRepeatingLinearGradientNode
GskRepeatNode
GskRoundedClipNode
GskShadowNode
GskTextNode
GskTextureNode
GskTransformNode
gsk_render_node_ref
gsk_render_node_unref
GskRenderNodeType
gsk_render_node_get_node_type
gsk_render_node_draw
GskSerializationError
GskParseErrorFunc
gsk_render_node_serialize
gsk_render_node_deserialize
gsk_render_node_write_to_file
GskScalingFilter
gsk_render_node_get_bounds
gsk_color_node_new
gsk_color_node_peek_color
gsk_texture_node_new
gsk_texture_node_get_texture
GskColorStop
gsk_linear_gradient_node_new
gsk_linear_gradient_node_peek_start
gsk_linear_gradient_node_peek_end
gsk_linear_gradient_node_get_n_color_stops
gsk_linear_gradient_node_peek_color_stops
gsk_repeating_linear_gradient_node_new
gsk_border_node_new
gsk_border_node_peek_outline
gsk_border_node_peek_widths
gsk_border_node_peek_colors
gsk_inset_shadow_node_new
gsk_inset_shadow_node_peek_outline
gsk_inset_shadow_node_peek_color
gsk_inset_shadow_node_get_dx
gsk_inset_shadow_node_get_dy
gsk_inset_shadow_node_get_spread
gsk_inset_shadow_node_get_blur_radius
gsk_outset_shadow_node_new
gsk_outset_shadow_node_peek_outline
gsk_outset_shadow_node_peek_color
gsk_outset_shadow_node_get_dx
gsk_outset_shadow_node_get_dy
gsk_outset_shadow_node_get_spread
gsk_outset_shadow_node_get_blur_radius
gsk_cairo_node_new
gsk_cairo_node_get_draw_context
gsk_cairo_node_peek_surface
gsk_container_node_new
gsk_container_node_get_n_children
gsk_container_node_get_child
gsk_transform_node_new
gsk_transform_node_get_child
gsk_transform_node_get_transform
gsk_opacity_node_new
gsk_opacity_node_get_child
gsk_opacity_node_get_opacity
gsk_color_matrix_node_new
gsk_color_matrix_node_get_child
gsk_color_matrix_node_peek_color_matrix
gsk_color_matrix_node_peek_color_offset
gsk_repeat_node_new
gsk_repeat_node_get_child
gsk_repeat_node_peek_child_bounds
gsk_clip_node_new
gsk_clip_node_get_child
gsk_clip_node_peek_clip
gsk_rounded_clip_node_new
gsk_rounded_clip_node_get_child
gsk_rounded_clip_node_peek_clip
GskShadow
gsk_shadow_node_new
gsk_shadow_node_peek_shadow
gsk_shadow_node_get_n_shadows
gsk_shadow_node_get_child
GskBlendMode
gsk_blend_node_new
gsk_blend_node_get_bottom_child
gsk_blend_node_get_top_child
gsk_blend_node_get_blend_mode
gsk_cross_fade_node_new
gsk_cross_fade_node_get_start_child
gsk_cross_fade_node_get_end_child
gsk_cross_fade_node_get_progress
gsk_text_node_new
gsk_text_node_peek_font
gsk_text_node_peek_glyphs
gsk_text_node_peek_color
gsk_text_node_has_color_glyphs
gsk_text_node_get_num_glyphs
gsk_text_node_get_offset
gsk_blur_node_new
gsk_blur_node_get_child
gsk_blur_node_get_radius
gsk_debug_node_new
gsk_debug_node_get_child
gsk_debug_node_get_message
GSK_IS_RENDER_NODE
GSK_RENDER_NODE
GSK_TYPE_RENDER_NODE
GSK_TYPE_BLEND_NODE
GSK_TYPE_BLUR_NODE
GSK_TYPE_BORDER_NODE
GSK_TYPE_CAIRO_NODE
GSK_TYPE_CLIP_NODE
GSK_TYPE_COLOR_MATRIX_NODE
GSK_TYPE_COLOR_NODE
GSK_TYPE_CONTAINER_NODE
GSK_TYPE_CROSS_FADE_NODE
GSK_TYPE_DEBUG_NODE
GSK_TYPE_INSET_SHADOW_NODE
GSK_TYPE_LINEAR_GRADIENT_NODE
GSK_TYPE_OPACITY_NODE
GSK_TYPE_OUTSET_SHADOW_NODE
GSK_TYPE_REPEATING_LINEAR_GRADIENT_NODE
GSK_TYPE_REPEAT_NODE
GSK_TYPE_ROUNDED_CLIP_NODE
GSK_TYPE_SHADOW_NODE
GSK_TYPE_TEXT_NODE
GSK_TYPE_TEXTURE_NODE
GSK_TYPE_TRANSFORM_NODE
GskRenderNodeClass
gsk_blend_node_get_type
gsk_blur_node_get_type
gsk_border_node_get_type
gsk_broadway_renderer_get_type
gsk_cairo_node_get_type
gsk_cairo_renderer_get_type
gsk_clip_node_get_type
gsk_color_matrix_node_get_type
gsk_color_node_get_type
gsk_container_node_get_type
gsk_cross_fade_node_get_type
gsk_debug_node_get_type
gsk_inset_shadow_node_get_type
gsk_linear_gradient_node_get_type
gsk_opacity_node_get_type
gsk_outset_shadow_node_get_type
gsk_render_node_get_type
gsk_repeating_linear_gradient_node_get_type
gsk_repeat_node_get_type
gsk_rounded_clip_node_get_type
gsk_shadow_node_get_type
gsk_text_node_get_type
gsk_texture_node_get_type
gsk_transform_node_get_type
GSK_TYPE_BLEND_MODE
gsk_serialization_error_quark
GSK_SERIALIZATION_ERROR
GSK_TYPE_SERIALIZATION_ERROR
GskRoundedRect
GskCorner
GskRoundedRect
GSK_ROUNDED_RECT_INIT
gsk_rounded_rect_init
gsk_rounded_rect_init_copy
gsk_rounded_rect_init_from_rect
gsk_rounded_rect_normalize
gsk_rounded_rect_offset
gsk_rounded_rect_shrink
gsk_rounded_rect_is_rectilinear
gsk_rounded_rect_contains_point
gsk_rounded_rect_contains_rect
gsk_rounded_rect_intersects_rect
GskTransform
GskTransform
gsk_transform_ref
gsk_transform_unref
GskTransformCategory
gsk_transform_get_category
gsk_transform_print
gsk_transform_to_string
gsk_transform_parse
gsk_transform_to_matrix
gsk_transform_to_2d
gsk_transform_to_affine
gsk_transform_to_translate
gsk_transform_transform
gsk_transform_invert
gsk_transform_matrix
gsk_transform_translate
gsk_transform_translate_3d
gsk_transform_rotate
gsk_transform_rotate_3d
gsk_transform_scale
gsk_transform_scale_3d
gsk_transform_perspective
gsk_transform_equal
gsk_transform_transform_bounds
gsk_transform_transform_point
GSK_TYPE_TRANSFORM
GSK_TYPE_TRANSFORM_CATEGORY
gsk_transform_get_type
gsk_transform_new
build/docs/reference/gsk/gsk4-decl-list.txt 0000664 0001750 0001750 00000044735 13724234624 020772 0 ustar mclasen mclasen glutilsprivate
SANITY_CHECKS
rounded_rect_top_left
rounded_rect_top_right
rounded_rect_bottom_right
rounded_rect_bottom_left
rounded_rect_corner0
rounded_rect_corner1
rounded_rect_corner2
rounded_rect_corner3
rounded_rect_corner
graphene_size_non_zero
rounded_rect_has_corner
rect_contains_point
NINE_SLICE_SIZE
nine_slice_rounded_rect
nine_slice_grow
nine_slice_to_texture_coords
gskgsk-autocleanupgskbroadwayrendererGskBroadwayRenderer
gsk_broadway_renderer_new
GSK_BROADWAY_RENDERER
GSK_BROADWAY_RENDERER_CLASS
GSK_BROADWAY_RENDERER_GET_CLASS
GSK_IS_BROADWAY_RENDERER
GSK_IS_BROADWAY_RENDERER_CLASS
GSK_TYPE_BROADWAY_RENDERER
GskBroadwayRenderer
GskBroadwayRendererClass
gsk_broadway_renderer_get_type
gskcairorendererGskCairoRenderer
gsk_cairo_renderer_new
GSK_CAIRO_RENDERER
GSK_CAIRO_RENDERER_CLASS
GSK_CAIRO_RENDERER_GET_CLASS
GSK_IS_CAIRO_RENDERER
GSK_IS_CAIRO_RENDERER_CLASS
GSK_TYPE_CAIRO_RENDERER
GskCairoRenderer
GskCairoRendererClass
gsk_cairo_renderer_get_type
gskdiffprivate
GskDiffResult
GskKeepFunc
GskDeleteFunc
GskInsertFunc
gsk_diff_settings_new
gsk_diff_settings_free
gsk_diff_settings_set_allow_abort
gsk_diff
GskDiffSettings
gskenums
GskRenderNodeType
GskScalingFilter
GskBlendMode
GskCorner
GskSerializationError
GskTransformCategory
gskenumtypes
GSK_TYPE_RENDER_NODE_TYPE
GSK_TYPE_SCALING_FILTER
GSK_TYPE_BLEND_MODE
GSK_TYPE_CORNER
GSK_TYPE_SERIALIZATION_ERROR
GSK_TYPE_TRANSFORM_CATEGORY
gskgldriverprivate
GSK_TYPE_GL_DRIVER
GskQuadVertex
TextureSlice
gsk_gl_driver_new
gsk_gl_driver_get_gl_context
gsk_gl_driver_get_max_texture_size
gsk_gl_driver_begin_frame
gsk_gl_driver_end_frame
gsk_gl_driver_in_frame
gsk_gl_driver_get_texture_for_texture
gsk_gl_driver_get_texture_for_pointer
gsk_gl_driver_set_texture_for_pointer
gsk_gl_driver_create_texture
gsk_gl_driver_create_render_target
gsk_gl_driver_mark_texture_permanent
gsk_gl_driver_bind_source_texture
gsk_gl_driver_init_texture_empty
gsk_gl_driver_init_texture_with_surface
gsk_gl_driver_destroy_texture
gsk_gl_driver_collect_textures
gsk_gl_driver_slice_texture
GskGLDriver
gskglglyphcacheprivate
CacheKeyData
GlyphCacheKey
PHASE
glyph_cache_key_set_glyph_and_shift
GskGLCachedGlyph
gsk_gl_glyph_cache_new
gsk_gl_glyph_cache_ref
gsk_gl_glyph_cache_unref
gsk_gl_glyph_cache_begin_frame
gsk_gl_glyph_cache_lookup_or_add
gskgliconcacheprivate
gsk_gl_icon_cache_new
gsk_gl_icon_cache_ref
gsk_gl_icon_cache_unref
gsk_gl_icon_cache_begin_frame
gsk_gl_icon_cache_lookup_or_add
gskglimageprivate
gsk_gl_image_create
gsk_gl_image_destroy
gsk_gl_image_write_to_png
gsk_gl_image_upload_region
gskglnodesampleprivate
N_NODE_TYPES
node_sample_init
node_sample_reset
node_sample_add
node_sample_print
gskglprofilerprivate
GSK_TYPE_GL_PROFILER
gsk_gl_profiler_new
gsk_gl_profiler_begin_gpu_region
gsk_gl_profiler_end_gpu_region
GskGLProfiler
gskglrendererGskGLRenderer
gsk_gl_renderer_new
GSK_GL_RENDERER
GSK_GL_RENDERER_CLASS
GSK_GL_RENDERER_GET_CLASS
GSK_IS_GL_RENDERER
GSK_IS_GL_RENDERER_CLASS
GSK_TYPE_GL_RENDERER
GskGLRenderer
GskGLRendererClass
gsk_gl_renderer_get_type
gskglrenderopsprivate
GL_N_VERTICES
GL_N_PROGRAMS
MAX_GRADIENT_STOPS
Program
GskGLRendererPrograms
ops_dump_framebuffer
ops_init
ops_free
ops_reset
ops_push_debug_group
ops_pop_debug_group
ops_finish
ops_push_modelview
ops_set_modelview
ops_pop_modelview
ops_get_scale
ops_set_program
ops_push_clip
ops_pop_clip
ops_has_clip
ops_transform_bounds_modelview
ops_set_projection
ops_set_viewport
ops_set_texture
ops_set_render_target
ops_set_opacity
ops_set_color
ops_set_color_matrix
ops_set_border
ops_set_border_width
ops_set_border_color
ops_set_inset_shadow
ops_set_unblurred_outset_shadow
ops_set_linear_gradient
ops_draw
ops_offset
ops_begin
ops_get_buffer
gskglshaderbuilderprivate
gsk_gl_shader_builder_init
gsk_gl_shader_builder_finish
gsk_gl_shader_builder_set_glsl_version
gsk_gl_shader_builder_create_program
gskglshadowcacheprivate
gsk_gl_shadow_cache_init
gsk_gl_shadow_cache_free
gsk_gl_shadow_cache_begin_frame
gsk_gl_shadow_cache_get_texture_id
gsk_gl_shadow_cache_commit
gskgltextureatlasprivate
GskGLTextureAtlas
GskGLTextureAtlases
gsk_gl_texture_atlases_new
gsk_gl_texture_atlases_ref
gsk_gl_texture_atlases_unref
gsk_gl_texture_atlases_begin_frame
gsk_gl_texture_atlases_pack
gsk_gl_texture_atlas_init
gsk_gl_texture_atlas_free
gsk_gl_texture_atlas_realize
gsk_gl_texture_atlas_mark_unused
gsk_gl_texture_atlas_mark_used
gsk_gl_texture_atlas_pack
gsk_gl_texture_atlas_get_unused_ratio
gskrendererGskRenderer
gsk_renderer_new_for_surface
gsk_renderer_get_surface
gsk_renderer_realize
gsk_renderer_unrealize
gsk_renderer_is_realized
gsk_renderer_render_texture
gsk_renderer_render
GSK_IS_RENDERER
GSK_RENDERER
GSK_TYPE_RENDERER
GskRendererClass
gsk_renderer_get_type
gskrendernode
GSK_SERIALIZATION_ERROR
GskColorStop
GskShadow
GskParseErrorFunc
gsk_serialization_error_quark
gsk_render_node_ref
gsk_render_node_unref
gsk_render_node_get_node_type
gsk_render_node_get_bounds
gsk_render_node_draw
gsk_render_node_serialize
gsk_render_node_write_to_file
gsk_render_node_deserialize
gsk_debug_node_new
gsk_debug_node_get_child
gsk_debug_node_get_message
gsk_color_node_new
gsk_color_node_peek_color
gsk_texture_node_new
gsk_texture_node_get_texture
gsk_linear_gradient_node_new
gsk_linear_gradient_node_peek_start
gsk_linear_gradient_node_peek_end
gsk_linear_gradient_node_get_n_color_stops
gsk_linear_gradient_node_peek_color_stops
gsk_repeating_linear_gradient_node_new
gsk_border_node_new
gsk_border_node_peek_outline
gsk_border_node_peek_widths
gsk_border_node_peek_colors
gsk_inset_shadow_node_new
gsk_inset_shadow_node_peek_outline
gsk_inset_shadow_node_peek_color
gsk_inset_shadow_node_get_dx
gsk_inset_shadow_node_get_dy
gsk_inset_shadow_node_get_spread
gsk_inset_shadow_node_get_blur_radius
gsk_outset_shadow_node_new
gsk_outset_shadow_node_peek_outline
gsk_outset_shadow_node_peek_color
gsk_outset_shadow_node_get_dx
gsk_outset_shadow_node_get_dy
gsk_outset_shadow_node_get_spread
gsk_outset_shadow_node_get_blur_radius
gsk_cairo_node_new
gsk_cairo_node_get_draw_context
gsk_cairo_node_peek_surface
gsk_container_node_new
gsk_container_node_get_n_children
gsk_container_node_get_child
gsk_transform_node_new
gsk_transform_node_get_child
gsk_transform_node_get_transform
gsk_opacity_node_new
gsk_opacity_node_get_child
gsk_opacity_node_get_opacity
gsk_color_matrix_node_new
gsk_color_matrix_node_get_child
gsk_color_matrix_node_peek_color_matrix
gsk_color_matrix_node_peek_color_offset
gsk_repeat_node_new
gsk_repeat_node_get_child
gsk_repeat_node_peek_child_bounds
gsk_clip_node_new
gsk_clip_node_get_child
gsk_clip_node_peek_clip
gsk_rounded_clip_node_new
gsk_rounded_clip_node_get_child
gsk_rounded_clip_node_peek_clip
gsk_shadow_node_new
gsk_shadow_node_get_child
gsk_shadow_node_peek_shadow
gsk_shadow_node_get_n_shadows
gsk_blend_node_new
gsk_blend_node_get_bottom_child
gsk_blend_node_get_top_child
gsk_blend_node_get_blend_mode
gsk_cross_fade_node_new
gsk_cross_fade_node_get_start_child
gsk_cross_fade_node_get_end_child
gsk_cross_fade_node_get_progress
gsk_text_node_new
gsk_text_node_peek_font
gsk_text_node_has_color_glyphs
gsk_text_node_get_num_glyphs
gsk_text_node_peek_glyphs
gsk_text_node_peek_color
gsk_text_node_get_offset
gsk_blur_node_new
gsk_blur_node_get_child
gsk_blur_node_get_radius
GskRepeatingLinearGradientNode
GskRoundedClipNode
GSK_IS_RENDER_NODE
GSK_TYPE_BLEND_NODE
GSK_TYPE_BLUR_NODE
GSK_TYPE_BORDER_NODE
GSK_TYPE_CAIRO_NODE
GSK_TYPE_CLIP_NODE
GSK_TYPE_COLOR_MATRIX_NODE
GSK_TYPE_COLOR_NODE
GSK_TYPE_CONTAINER_NODE
GSK_TYPE_CROSS_FADE_NODE
GSK_TYPE_DEBUG_NODE
GSK_TYPE_INSET_SHADOW_NODE
GSK_TYPE_LINEAR_GRADIENT_NODE
GSK_TYPE_OPACITY_NODE
GSK_TYPE_OUTSET_SHADOW_NODE
GSK_TYPE_RENDER_NODE
GSK_TYPE_REPEATING_LINEAR_GRADIENT_NODE
GSK_TYPE_REPEAT_NODE
GSK_TYPE_ROUNDED_CLIP_NODE
GSK_TYPE_SHADOW_NODE
GSK_TYPE_TEXTURE_NODE
GSK_TYPE_TEXT_NODE
GSK_TYPE_TRANSFORM_NODE
GskBlendNode
GskBlurNode
GskBorderNode
GskCairoNode
GskClipNode
GskColorMatrixNode
GskColorNode
GskContainerNode
GskCrossFadeNode
GskDebugNode
GskInsetShadowNode
GskLinearGradientNode
GskOpacityNode
GskOutsetShadowNode
GskRenderNode
GskRepeatNode
GskShadowNode
GskTextNode
GskTextureNode
GskTransformNode
gsk_blend_node_get_type
gsk_blur_node_get_type
gsk_border_node_get_type
gsk_cairo_node_get_type
gsk_clip_node_get_type
gsk_color_matrix_node_get_type
gsk_color_node_get_type
gsk_container_node_get_type
gsk_cross_fade_node_get_type
gsk_debug_node_get_type
gsk_inset_shadow_node_get_type
gsk_linear_gradient_node_get_type
gsk_opacity_node_get_type
gsk_outset_shadow_node_get_type
gsk_render_node_get_type
gsk_repeat_node_get_type
gsk_shadow_node_get_type
gsk_text_node_get_type
gsk_texture_node_get_type
gsk_transform_node_get_type
gskresourcesgskroundedrect
GSK_ROUNDED_RECT_INIT
GskRoundedRect
gsk_rounded_rect_init
gsk_rounded_rect_init_copy
gsk_rounded_rect_init_from_rect
gsk_rounded_rect_normalize
gsk_rounded_rect_offset
gsk_rounded_rect_shrink
gsk_rounded_rect_is_rectilinear
gsk_rounded_rect_contains_point
gsk_rounded_rect_contains_rect
gsk_rounded_rect_intersects_rect
gsktransform
gsk_transform_ref
gsk_transform_unref
gsk_transform_print
gsk_transform_to_string
gsk_transform_parse
gsk_transform_to_matrix
gsk_transform_to_2d
gsk_transform_to_affine
gsk_transform_to_translate
gsk_transform_get_category
gsk_transform_equal
gsk_transform_new
gsk_transform_transform
gsk_transform_invert
gsk_transform_matrix
gsk_transform_translate
gsk_transform_translate_3d
gsk_transform_rotate
gsk_transform_rotate_3d
gsk_transform_scale
gsk_transform_scale_3d
gsk_transform_perspective
gsk_transform_transform_bounds
gsk_transform_transform_point
GSK_TYPE_TRANSFORM
gsk_transform_get_type
gsktypes
GskRenderer
GskTransform
gskvulkanblendmodepipelineprivate
GSK_TYPE_VULKAN_BLEND_MODE_PIPELINE
gsk_vulkan_blend_mode_pipeline_new
gsk_vulkan_blend_mode_pipeline_count_vertex_data
gsk_vulkan_blend_mode_pipeline_collect_vertex_data
gsk_vulkan_blend_mode_pipeline_draw
GskVulkanBlendModePipeline
GskVulkanBlendModePipelineLayout
gskvulkanblurpipelineprivate
GSK_TYPE_VULKAN_BLUR_PIPELINE
gsk_vulkan_blur_pipeline_new
gsk_vulkan_blur_pipeline_count_vertex_data
gsk_vulkan_blur_pipeline_collect_vertex_data
gsk_vulkan_blur_pipeline_draw
GskVulkanBlurPipeline
GskVulkanBlurPipelineLayout
gskvulkanborderpipelineprivate
GSK_TYPE_VULKAN_BORDER_PIPELINE
gsk_vulkan_border_pipeline_new
gsk_vulkan_border_pipeline_count_vertex_data
gsk_vulkan_border_pipeline_collect_vertex_data
gsk_vulkan_border_pipeline_draw
GskVulkanBorderPipeline
GskVulkanBorderPipelineLayout
gskvulkanboxshadowpipelineprivate
GSK_TYPE_VULKAN_BOX_SHADOW_PIPELINE
gsk_vulkan_box_shadow_pipeline_new
gsk_vulkan_box_shadow_pipeline_count_vertex_data
gsk_vulkan_box_shadow_pipeline_collect_vertex_data
gsk_vulkan_box_shadow_pipeline_draw
GskVulkanBoxShadowPipeline
GskVulkanBoxShadowPipelineLayout
gskvulkanbufferprivate
gsk_vulkan_buffer_new
gsk_vulkan_buffer_new_staging
gsk_vulkan_buffer_new_download
gsk_vulkan_buffer_free
gsk_vulkan_buffer_get_buffer
gsk_vulkan_buffer_map
gsk_vulkan_buffer_unmap
GskVulkanBuffer
gskvulkanclipprivate
GskVulkanClipComplexity
GskVulkanClip
gsk_vulkan_clip_init_empty
gsk_vulkan_clip_intersect_rect
gsk_vulkan_clip_intersect_rounded_rect
gsk_vulkan_clip_transform
gsk_vulkan_clip_contains_rect
gskvulkancolorpipelineprivate
GSK_TYPE_VULKAN_COLOR_PIPELINE
gsk_vulkan_color_pipeline_new
gsk_vulkan_color_pipeline_count_vertex_data
gsk_vulkan_color_pipeline_collect_vertex_data
gsk_vulkan_color_pipeline_draw
GskVulkanColorPipeline
GskVulkanColorPipelineLayout
gskvulkancolortextpipelineprivate
GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE
gsk_vulkan_color_text_pipeline_new
gsk_vulkan_color_text_pipeline_count_vertex_data
gsk_vulkan_color_text_pipeline_collect_vertex_data
gsk_vulkan_color_text_pipeline_draw
GskVulkanColorTextPipeline
GskVulkanColorTextPipelineLayout
gskvulkancommandpoolprivate
gsk_vulkan_command_pool_new
gsk_vulkan_command_pool_free
gsk_vulkan_command_pool_reset
gsk_vulkan_command_pool_get_buffer
gsk_vulkan_command_pool_submit_buffer
GskVulkanCommandPool
gskvulkancrossfadepipelineprivate
GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE
gsk_vulkan_cross_fade_pipeline_new
gsk_vulkan_cross_fade_pipeline_count_vertex_data
gsk_vulkan_cross_fade_pipeline_collect_vertex_data
gsk_vulkan_cross_fade_pipeline_draw
GskVulkanCrossFadePipeline
GskVulkanCrossFadePipelineLayout
gskvulkaneffectpipelineprivate
GSK_TYPE_VULKAN_EFFECT_PIPELINE
gsk_vulkan_effect_pipeline_new
gsk_vulkan_effect_pipeline_count_vertex_data
gsk_vulkan_effect_pipeline_collect_vertex_data
gsk_vulkan_effect_pipeline_draw
GskVulkanEffectPipeline
GskVulkanEffectPipelineLayout
gskvulkanglyphcacheprivate
GSK_TYPE_VULKAN_GLYPH_CACHE
gsk_vulkan_glyph_cache_new
gsk_vulkan_glyph_cache_get_glyph_image
gsk_vulkan_glyph_cache_lookup
gsk_vulkan_glyph_cache_begin_frame
GskVulkanGlyphCache
gskvulkanimageprivate
GSK_TYPE_VULKAN_IMAGE
gsk_vulkan_uploader_new
gsk_vulkan_uploader_free
gsk_vulkan_uploader_reset
gsk_vulkan_uploader_upload
gsk_vulkan_image_new_for_swapchain
gsk_vulkan_image_new_from_data
GskImageRegion
gsk_vulkan_image_upload_regions
gsk_vulkan_image_new_for_framebuffer
gsk_vulkan_image_new_for_atlas
gsk_vulkan_image_new_for_texture
gsk_vulkan_image_download
gsk_vulkan_image_get_width
gsk_vulkan_image_get_height
gsk_vulkan_image_get_image
gsk_vulkan_image_get_image_view
GskVulkanImage
GskVulkanUploader
gskvulkanlineargradientpipelineprivate
GSK_VULKAN_LINEAR_GRADIENT_PIPELINE_MAX_COLOR_STOPS
GSK_TYPE_VULKAN_LINEAR_GRADIENT_PIPELINE
gsk_vulkan_linear_gradient_pipeline_new
gsk_vulkan_linear_gradient_pipeline_count_vertex_data
gsk_vulkan_linear_gradient_pipeline_collect_vertex_data
gsk_vulkan_linear_gradient_pipeline_draw
GskVulkanLinearGradientPipeline
GskVulkanLinearGradientPipelineLayout
gskvulkanmemoryprivate
gsk_vulkan_memory_new
gsk_vulkan_memory_free
gsk_vulkan_memory_get_device_memory
gsk_vulkan_memory_map
gsk_vulkan_memory_unmap
GskVulkanMemory
gskvulkanpipelineprivateGskVulkanPipeline
GSK_TYPE_VULKAN_PIPELINE
GskVulkanPipelineClass
gsk_vulkan_handle_result
GSK_VK_CHECK
gsk_vulkan_pipeline_new
gsk_vulkan_pipeline_new_full
gsk_vulkan_pipeline_get_pipeline
gsk_vulkan_pipeline_get_pipeline_layout
GskVulkanPipeline
gskvulkanpushconstantsprivate
GskVulkanPushConstants
gsk_vulkan_push_constants_get_ranges
gsk_vulkan_push_constants_get_range_count
gsk_vulkan_push_constants_init
gsk_vulkan_push_constants_init_copy
gsk_vulkan_push_constants_transform
gsk_vulkan_push_constants_intersect_rect
gsk_vulkan_push_constants_intersect_rounded
gsk_vulkan_push_constants_push
gskvulkanrendererGskVulkanRenderer
gsk_vulkan_renderer_new
GSK_IS_VULKAN_RENDERER
GSK_IS_VULKAN_RENDERER_CLASS
GSK_TYPE_VULKAN_RENDERER
GSK_VULKAN_RENDERER
GSK_VULKAN_RENDERER_CLASS
GSK_VULKAN_RENDERER_GET_CLASS
GskVulkanRenderer
GskVulkanRendererClass
gsk_vulkan_renderer_get_type
gskvulkanrendererprivate
gsk_vulkan_renderer_ref_texture_image
gsk_vulkan_renderer_cache_glyph
gsk_vulkan_renderer_ref_glyph_image
gsk_vulkan_renderer_get_cached_glyph
gskvulkanrenderpassprivate
gsk_vulkan_render_pass_new
gsk_vulkan_render_pass_free
gsk_vulkan_render_pass_add
gsk_vulkan_render_pass_upload
gsk_vulkan_render_pass_reserve_descriptor_sets
gsk_vulkan_render_pass_draw
gsk_vulkan_render_pass_get_wait_semaphores
gsk_vulkan_render_pass_get_signal_semaphores
gskvulkanrenderprivate
GskVulkanPipelineType
gsk_vulkan_render_new
gsk_vulkan_render_free
gsk_vulkan_render_is_busy
gsk_vulkan_render_reset
gsk_vulkan_render_get_renderer
gsk_vulkan_render_add_cleanup_image
gsk_vulkan_render_add_node
gsk_vulkan_render_add_render_pass
gsk_vulkan_render_upload
gsk_vulkan_render_get_pipeline
gsk_vulkan_render_get_descriptor_set
gsk_vulkan_render_reserve_descriptor_set
gsk_vulkan_render_draw
gsk_vulkan_render_submit
gsk_vulkan_render_download_target
gsk_vulkan_render_get_framebuffer
gskvulkanshaderprivate
GskVulkanShaderType
GST_VULKAN_SHADER_STAGE_CREATE_INFO
gsk_vulkan_shader_new_from_resource
gsk_vulkan_shader_free
gsk_vulkan_shader_get_module
GskVulkanShader
gsk_vulkan_shader_get_type
gskvulkantextpipelineprivate
GSK_TYPE_VULKAN_TEXT_PIPELINE
gsk_vulkan_text_pipeline_new
gsk_vulkan_text_pipeline_count_vertex_data
gsk_vulkan_text_pipeline_collect_vertex_data
gsk_vulkan_text_pipeline_draw
GskVulkanTextPipeline
GskVulkanTextPipelineLayout
gskvulkantexturepipelineprivate
GSK_TYPE_VULKAN_TEXTURE_PIPELINE
gsk_vulkan_texture_pipeline_new
gsk_vulkan_texture_pipeline_count_vertex_data
gsk_vulkan_texture_pipeline_collect_vertex_data
gsk_vulkan_texture_pipeline_draw
GskVulkanTexturePipeline
GskVulkanTexturePipelineLayout
opbuffer
OpKind
OpShadow
op_buffer_init
op_buffer_destroy
op_buffer_clear
op_buffer_add
op_buffer_iter_init
op_buffer_iter_next
op_buffer_pop_tail
op_buffer_peek_tail
op_buffer_peek_tail_checked
op_buffer_n_ops
Program
stb_rect_pack
STB_RECT_PACK_VERSION
STBRP_DEF
stbrp_context
stbrp_node
stbrp_rect
stbrp_coord
build/docs/reference/gsk/gsk4-decl.txt 0000664 0001750 0001750 00000277160 13724234624 020021 0 ustar mclasen mclasen GSK_TYPE_CAIRO_RENDERER
#define GSK_TYPE_CAIRO_RENDERER (gsk_cairo_renderer_get_type ())
GSK_CAIRO_RENDERER
#define GSK_CAIRO_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GSK_TYPE_CAIRO_RENDERER, GskCairoRenderer))
GSK_IS_CAIRO_RENDERER
#define GSK_IS_CAIRO_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GSK_TYPE_CAIRO_RENDERER))
GSK_CAIRO_RENDERER_CLASS
#define GSK_CAIRO_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GSK_TYPE_CAIRO_RENDERER, GskCairoRendererClass))
GSK_IS_CAIRO_RENDERER_CLASS
#define GSK_IS_CAIRO_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GSK_TYPE_CAIRO_RENDERER))
GSK_CAIRO_RENDERER_GET_CLASS
#define GSK_CAIRO_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GSK_TYPE_CAIRO_RENDERER, GskCairoRendererClass))
gsk_cairo_renderer_get_typeGType
void
gsk_cairo_renderer_newGskRenderer *
void
GskCairoRendererGskCairoRendererClassGskDiffResult
typedef enum {
GSK_DIFF_OK = 0,
GSK_DIFF_ABORTED,
} GskDiffResult;
GskKeepFuncvoid
gconstpointer elem1, gconstpointer elem2, gpointer data
GskDeleteFuncvoid
gconstpointer elem, gsize idx, gpointer data
GskInsertFuncvoid
gconstpointer elem, gsize idx, gpointer data
gsk_diff_settings_newGskDiffSettings *
GCompareDataFunc compare_func, GskKeepFunc keep_func, GskDeleteFunc delete_func, GskInsertFunc insert_func
gsk_diff_settings_freevoid
GskDiffSettings *settings
gsk_diff_settings_set_allow_abortvoid
GskDiffSettings *settings, gboolean allow_abort
gsk_diffGskDiffResult
gconstpointer *elem1, gsize n1, gconstpointer *elem2, gsize n2, const GskDiffSettings *settings, gpointer data
GskDiffSettingsGskRenderNodeType
typedef enum {
GSK_NOT_A_RENDER_NODE = 0,
GSK_CONTAINER_NODE,
GSK_CAIRO_NODE,
GSK_COLOR_NODE,
GSK_LINEAR_GRADIENT_NODE,
GSK_REPEATING_LINEAR_GRADIENT_NODE,
GSK_BORDER_NODE,
GSK_TEXTURE_NODE,
GSK_INSET_SHADOW_NODE,
GSK_OUTSET_SHADOW_NODE,
GSK_TRANSFORM_NODE,
GSK_OPACITY_NODE,
GSK_COLOR_MATRIX_NODE,
GSK_REPEAT_NODE,
GSK_CLIP_NODE,
GSK_ROUNDED_CLIP_NODE,
GSK_SHADOW_NODE,
GSK_BLEND_NODE,
GSK_CROSS_FADE_NODE,
GSK_TEXT_NODE,
GSK_BLUR_NODE,
GSK_DEBUG_NODE
} GskRenderNodeType;
GskScalingFilter
typedef enum {
GSK_SCALING_FILTER_LINEAR,
GSK_SCALING_FILTER_NEAREST,
GSK_SCALING_FILTER_TRILINEAR
} GskScalingFilter;
GskBlendMode
typedef enum {
GSK_BLEND_MODE_DEFAULT = 0,
GSK_BLEND_MODE_MULTIPLY,
GSK_BLEND_MODE_SCREEN,
GSK_BLEND_MODE_OVERLAY,
GSK_BLEND_MODE_DARKEN,
GSK_BLEND_MODE_LIGHTEN,
GSK_BLEND_MODE_COLOR_DODGE,
GSK_BLEND_MODE_COLOR_BURN,
GSK_BLEND_MODE_HARD_LIGHT,
GSK_BLEND_MODE_SOFT_LIGHT,
GSK_BLEND_MODE_DIFFERENCE,
GSK_BLEND_MODE_EXCLUSION,
GSK_BLEND_MODE_COLOR,
GSK_BLEND_MODE_HUE,
GSK_BLEND_MODE_SATURATION,
GSK_BLEND_MODE_LUMINOSITY
} GskBlendMode;
GskCorner
typedef enum {
GSK_CORNER_TOP_LEFT,
GSK_CORNER_TOP_RIGHT,
GSK_CORNER_BOTTOM_RIGHT,
GSK_CORNER_BOTTOM_LEFT
} GskCorner;
GskSerializationError
typedef enum {
GSK_SERIALIZATION_UNSUPPORTED_FORMAT,
GSK_SERIALIZATION_UNSUPPORTED_VERSION,
GSK_SERIALIZATION_INVALID_DATA
} GskSerializationError;
GskTransformCategory
typedef enum
{
GSK_TRANSFORM_CATEGORY_UNKNOWN,
GSK_TRANSFORM_CATEGORY_ANY,
GSK_TRANSFORM_CATEGORY_3D,
GSK_TRANSFORM_CATEGORY_2D,
GSK_TRANSFORM_CATEGORY_2D_AFFINE,
GSK_TRANSFORM_CATEGORY_2D_TRANSLATE,
GSK_TRANSFORM_CATEGORY_IDENTITY
} GskTransformCategory;
GSK_TYPE_RENDERER
#define GSK_TYPE_RENDERER (gsk_renderer_get_type ())
GSK_RENDERER
#define GSK_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GSK_TYPE_RENDERER, GskRenderer))
GSK_IS_RENDERER
#define GSK_IS_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GSK_TYPE_RENDERER))
gsk_renderer_get_typeGType
void
gsk_renderer_new_for_surfaceGskRenderer *
GdkSurface *surface
gsk_renderer_get_surfaceGdkSurface *
GskRenderer *renderer
gsk_renderer_realizegboolean
GskRenderer *renderer, GdkSurface *surface, GError **error
gsk_renderer_unrealizevoid
GskRenderer *renderer
gsk_renderer_is_realizedgboolean
GskRenderer *renderer
gsk_renderer_render_textureGdkTexture *
GskRenderer *renderer, GskRenderNode *root, const graphene_rect_t *viewport
gsk_renderer_rendervoid
GskRenderer *renderer, GskRenderNode *root, const cairo_region_t *region
GskRendererClassGSK_TYPE_RENDER_NODE
#define GSK_TYPE_RENDER_NODE (gsk_render_node_get_type ())
GSK_IS_RENDER_NODE
#define GSK_IS_RENDER_NODE(obj) ((obj) != NULL)
GSK_SERIALIZATION_ERROR
#define GSK_SERIALIZATION_ERROR (gsk_serialization_error_quark ())
GskColorStop
struct _GskColorStop
{
float offset;
GdkRGBA color;
};
GskShadow
struct _GskShadow
{
GdkRGBA color;
float dx;
float dy;
float radius;
};
GskParseErrorFuncvoid
const GtkCssSection *section, const GError *error, gpointer user_data
gsk_render_node_get_typeGType
void
gsk_serialization_error_quarkGQuark
void
gsk_render_node_refGskRenderNode *
GskRenderNode *node
gsk_render_node_unrefvoid
GskRenderNode *node
gsk_render_node_get_node_typeGskRenderNodeType
GskRenderNode *node
gsk_render_node_get_boundsvoid
GskRenderNode *node, graphene_rect_t *bounds
gsk_render_node_drawvoid
GskRenderNode *node, cairo_t *cr
gsk_render_node_serializeGBytes *
GskRenderNode *node
gsk_render_node_write_to_filegboolean
GskRenderNode *node, const char *filename, GError **error
gsk_render_node_deserializeGskRenderNode *
GBytes *bytes, GskParseErrorFunc error_func, gpointer user_data
GSK_TYPE_DEBUG_NODE
#define GSK_TYPE_DEBUG_NODE (gsk_debug_node_get_type())
GSK_TYPE_COLOR_NODE
#define GSK_TYPE_COLOR_NODE (gsk_color_node_get_type())
GSK_TYPE_TEXTURE_NODE
#define GSK_TYPE_TEXTURE_NODE (gsk_texture_node_get_type())
GSK_TYPE_LINEAR_GRADIENT_NODE
#define GSK_TYPE_LINEAR_GRADIENT_NODE (gsk_linear_gradient_node_get_type())
GSK_TYPE_REPEATING_LINEAR_GRADIENT_NODE
#define GSK_TYPE_REPEATING_LINEAR_GRADIENT_NODE (gsk_repeating_linear_gradient_node_get_type())
GSK_TYPE_BORDER_NODE
#define GSK_TYPE_BORDER_NODE (gsk_border_node_get_type())
GSK_TYPE_INSET_SHADOW_NODE
#define GSK_TYPE_INSET_SHADOW_NODE (gsk_inset_shadow_node_get_type())
GSK_TYPE_OUTSET_SHADOW_NODE
#define GSK_TYPE_OUTSET_SHADOW_NODE (gsk_outset_shadow_node_get_type())
GSK_TYPE_CAIRO_NODE
#define GSK_TYPE_CAIRO_NODE (gsk_cairo_node_get_type())
GSK_TYPE_CONTAINER_NODE
#define GSK_TYPE_CONTAINER_NODE (gsk_container_node_get_type())
GSK_TYPE_TRANSFORM_NODE
#define GSK_TYPE_TRANSFORM_NODE (gsk_transform_node_get_type())
GSK_TYPE_OPACITY_NODE
#define GSK_TYPE_OPACITY_NODE (gsk_opacity_node_get_type())
GSK_TYPE_COLOR_MATRIX_NODE
#define GSK_TYPE_COLOR_MATRIX_NODE (gsk_color_matrix_node_get_type())
GSK_TYPE_REPEAT_NODE
#define GSK_TYPE_REPEAT_NODE (gsk_repeat_node_get_type())
GSK_TYPE_CLIP_NODE
#define GSK_TYPE_CLIP_NODE (gsk_clip_node_get_type())
GSK_TYPE_ROUNDED_CLIP_NODE
#define GSK_TYPE_ROUNDED_CLIP_NODE (gsk_rounded_clip_node_get_type())
GSK_TYPE_SHADOW_NODE
#define GSK_TYPE_SHADOW_NODE (gsk_shadow_node_get_type())
GSK_TYPE_BLEND_NODE
#define GSK_TYPE_BLEND_NODE (gsk_blend_node_get_type())
GSK_TYPE_CROSS_FADE_NODE
#define GSK_TYPE_CROSS_FADE_NODE (gsk_cross_fade_node_get_type())
GSK_TYPE_TEXT_NODE
#define GSK_TYPE_TEXT_NODE (gsk_text_node_get_type())
GSK_TYPE_BLUR_NODE
#define GSK_TYPE_BLUR_NODE (gsk_blur_node_get_type())
gsk_debug_node_get_typeGType
void
gsk_debug_node_newGskRenderNode *
GskRenderNode *child, char *message
gsk_debug_node_get_childGskRenderNode *
GskRenderNode *node
gsk_debug_node_get_messageconst char *
GskRenderNode *node
gsk_color_node_get_typeGType
void
gsk_color_node_newGskRenderNode *
const GdkRGBA *rgba, const graphene_rect_t *bounds
gsk_color_node_peek_colorconst GdkRGBA *
GskRenderNode *node
gsk_texture_node_get_typeGType
void
gsk_texture_node_newGskRenderNode *
GdkTexture *texture, const graphene_rect_t *bounds
gsk_texture_node_get_textureGdkTexture *
GskRenderNode *node
gsk_linear_gradient_node_get_typeGType
void
gsk_linear_gradient_node_newGskRenderNode *
const graphene_rect_t *bounds, const graphene_point_t *start, const graphene_point_t *end, const GskColorStop *color_stops, gsize n_color_stops
gsk_linear_gradient_node_peek_startconst graphene_point_t *
GskRenderNode *node
gsk_linear_gradient_node_peek_endconst graphene_point_t *
GskRenderNode *node
gsk_linear_gradient_node_get_n_color_stopsgsize
GskRenderNode *node
gsk_linear_gradient_node_peek_color_stopsconst GskColorStop *
GskRenderNode *node, gsize *n_stops
gsk_repeating_linear_gradient_node_get_typeGType
void
gsk_repeating_linear_gradient_node_newGskRenderNode *
const graphene_rect_t *bounds, const graphene_point_t *start, const graphene_point_t *end, const GskColorStop *color_stops, gsize n_color_stops
gsk_border_node_get_typeGType
void
gsk_border_node_newGskRenderNode *
const GskRoundedRect *outline, const float border_width[4], const GdkRGBA border_color[4]
gsk_border_node_peek_outlineconst GskRoundedRect *
GskRenderNode *node
gsk_border_node_peek_widthsconst float *
GskRenderNode *node
gsk_border_node_peek_colorsconst GdkRGBA *
GskRenderNode *node
gsk_inset_shadow_node_get_typeGType
void
gsk_inset_shadow_node_newGskRenderNode *
const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius
gsk_inset_shadow_node_peek_outlineconst GskRoundedRect *
GskRenderNode *node
gsk_inset_shadow_node_peek_colorconst GdkRGBA *
GskRenderNode *node
gsk_inset_shadow_node_get_dxfloat
GskRenderNode *node
gsk_inset_shadow_node_get_dyfloat
GskRenderNode *node
gsk_inset_shadow_node_get_spreadfloat
GskRenderNode *node
gsk_inset_shadow_node_get_blur_radiusfloat
GskRenderNode *node
gsk_outset_shadow_node_get_typeGType
void
gsk_outset_shadow_node_newGskRenderNode *
const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius
gsk_outset_shadow_node_peek_outlineconst GskRoundedRect *
GskRenderNode *node
gsk_outset_shadow_node_peek_colorconst GdkRGBA *
GskRenderNode *node
gsk_outset_shadow_node_get_dxfloat
GskRenderNode *node
gsk_outset_shadow_node_get_dyfloat
GskRenderNode *node
gsk_outset_shadow_node_get_spreadfloat
GskRenderNode *node
gsk_outset_shadow_node_get_blur_radiusfloat
GskRenderNode *node
gsk_cairo_node_get_typeGType
void
gsk_cairo_node_newGskRenderNode *
const graphene_rect_t *bounds
gsk_cairo_node_get_draw_contextcairo_t *
GskRenderNode *node
gsk_cairo_node_peek_surfacecairo_surface_t *
GskRenderNode *node
gsk_container_node_get_typeGType
void
gsk_container_node_newGskRenderNode *
GskRenderNode **children, guint n_children
gsk_container_node_get_n_childrenguint
GskRenderNode *node
gsk_container_node_get_childGskRenderNode *
GskRenderNode *node, guint idx
gsk_transform_node_get_typeGType
void
gsk_transform_node_newGskRenderNode *
GskRenderNode *child, GskTransform *transform
gsk_transform_node_get_childGskRenderNode *
GskRenderNode *node
gsk_transform_node_get_transformGskTransform *
GskRenderNode *node
gsk_opacity_node_get_typeGType
void
gsk_opacity_node_newGskRenderNode *
GskRenderNode *child, float opacity
gsk_opacity_node_get_childGskRenderNode *
GskRenderNode *node
gsk_opacity_node_get_opacityfloat
GskRenderNode *node
gsk_color_matrix_node_get_typeGType
void
gsk_color_matrix_node_newGskRenderNode *
GskRenderNode *child, const graphene_matrix_t *color_matrix, const graphene_vec4_t *color_offset
gsk_color_matrix_node_get_childGskRenderNode *
GskRenderNode *node
gsk_color_matrix_node_peek_color_matrixconst graphene_matrix_t *
GskRenderNode *node
gsk_color_matrix_node_peek_color_offsetconst graphene_vec4_t *
GskRenderNode *node
gsk_repeat_node_get_typeGType
void
gsk_repeat_node_newGskRenderNode *
const graphene_rect_t *bounds, GskRenderNode *child, const graphene_rect_t *child_bounds
gsk_repeat_node_get_childGskRenderNode *
GskRenderNode *node
gsk_repeat_node_peek_child_boundsconst graphene_rect_t *
GskRenderNode *node
gsk_clip_node_get_typeGType
void
gsk_clip_node_newGskRenderNode *
GskRenderNode *child, const graphene_rect_t *clip
gsk_clip_node_get_childGskRenderNode *
GskRenderNode *node
gsk_clip_node_peek_clipconst graphene_rect_t *
GskRenderNode *node
gsk_rounded_clip_node_get_typeGType
void
gsk_rounded_clip_node_newGskRenderNode *
GskRenderNode *child, const GskRoundedRect *clip
gsk_rounded_clip_node_get_childGskRenderNode *
GskRenderNode *node
gsk_rounded_clip_node_peek_clipconst GskRoundedRect *
GskRenderNode *node
gsk_shadow_node_get_typeGType
void
gsk_shadow_node_newGskRenderNode *
GskRenderNode *child, const GskShadow *shadows, gsize n_shadows
gsk_shadow_node_get_childGskRenderNode *
GskRenderNode *node
gsk_shadow_node_peek_shadowconst GskShadow *
GskRenderNode *node, gsize i
gsk_shadow_node_get_n_shadowsgsize
GskRenderNode *node
gsk_blend_node_get_typeGType
void
gsk_blend_node_newGskRenderNode *
GskRenderNode *bottom, GskRenderNode *top, GskBlendMode blend_mode
gsk_blend_node_get_bottom_childGskRenderNode *
GskRenderNode *node
gsk_blend_node_get_top_childGskRenderNode *
GskRenderNode *node
gsk_blend_node_get_blend_modeGskBlendMode
GskRenderNode *node
gsk_cross_fade_node_get_typeGType
void
gsk_cross_fade_node_newGskRenderNode *
GskRenderNode *start, GskRenderNode *end, float progress
gsk_cross_fade_node_get_start_childGskRenderNode *
GskRenderNode *node
gsk_cross_fade_node_get_end_childGskRenderNode *
GskRenderNode *node
gsk_cross_fade_node_get_progressfloat
GskRenderNode *node
gsk_text_node_get_typeGType
void
gsk_text_node_newGskRenderNode *
PangoFont *font, PangoGlyphString *glyphs, const GdkRGBA *color, const graphene_point_t *offset
gsk_text_node_peek_fontPangoFont *
GskRenderNode *node
gsk_text_node_has_color_glyphsgboolean
GskRenderNode *node
gsk_text_node_get_num_glyphsguint
GskRenderNode *node
gsk_text_node_peek_glyphsconst PangoGlyphInfo *
GskRenderNode *node, guint *n_glyphs
gsk_text_node_peek_colorconst GdkRGBA *
GskRenderNode *node
gsk_text_node_get_offsetconst graphene_point_t *
GskRenderNode *node
gsk_blur_node_get_typeGType
void
gsk_blur_node_newGskRenderNode *
GskRenderNode *child, float radius
gsk_blur_node_get_childGskRenderNode *
GskRenderNode *node
gsk_blur_node_get_radiusfloat
GskRenderNode *node
GskBlendNodeGskBlurNodeGskBorderNodeGskCairoNodeGskClipNodeGskColorMatrixNodeGskColorNodeGskContainerNodeGskCrossFadeNodeGskDebugNodeGskInsetShadowNodeGskLinearGradientNodeGskOpacityNodeGskOutsetShadowNodeGskRenderNodeGskRepeatNodeGskRepeatingLinearGradientNodeGskRoundedClipNodeGskShadowNodeGskTextNodeGskTextureNodeGskTransformNodeGSK_ROUNDED_RECT_INIT
#define GSK_ROUNDED_RECT_INIT(_x,_y,_w,_h) (GskRoundedRect) { .bounds = GRAPHENE_RECT_INIT(_x,_y,_w,_h), \
.corner = { \
GRAPHENE_SIZE_INIT(0, 0),\
GRAPHENE_SIZE_INIT(0, 0),\
GRAPHENE_SIZE_INIT(0, 0),\
GRAPHENE_SIZE_INIT(0, 0),\
}}
GskRoundedRect
struct _GskRoundedRect
{
graphene_rect_t bounds;
graphene_size_t corner[4];
};
gsk_rounded_rect_initGskRoundedRect *
GskRoundedRect *self, const graphene_rect_t *bounds, const graphene_size_t *top_left, const graphene_size_t *top_right, const graphene_size_t *bottom_right, const graphene_size_t *bottom_left
gsk_rounded_rect_init_copyGskRoundedRect *
GskRoundedRect *self, const GskRoundedRect *src
gsk_rounded_rect_init_from_rectGskRoundedRect *
GskRoundedRect *self, const graphene_rect_t *bounds, float radius
gsk_rounded_rect_normalizeGskRoundedRect *
GskRoundedRect *self
gsk_rounded_rect_offsetGskRoundedRect *
GskRoundedRect *self, float dx, float dy
gsk_rounded_rect_shrinkGskRoundedRect *
GskRoundedRect *self, float top, float right, float bottom, float left
gsk_rounded_rect_is_rectilineargboolean
const GskRoundedRect *self
gsk_rounded_rect_contains_pointgboolean
const GskRoundedRect *self, const graphene_point_t *point
gsk_rounded_rect_contains_rectgboolean
const GskRoundedRect *self, const graphene_rect_t *rect
gsk_rounded_rect_intersects_rectgboolean
const GskRoundedRect *self, const graphene_rect_t *rect
GSK_TYPE_TRANSFORM
#define GSK_TYPE_TRANSFORM (gsk_transform_get_type ())
gsk_transform_get_typeGType
void
gsk_transform_refGskTransform *
GskTransform *self
gsk_transform_unrefvoid
GskTransform *self
gsk_transform_printvoid
GskTransform *self, GString *string
gsk_transform_to_stringchar *
GskTransform *self
gsk_transform_parsegboolean
const char *string, GskTransform **out_transform
gsk_transform_to_matrixvoid
GskTransform *self, graphene_matrix_t *out_matrix
gsk_transform_to_2dvoid
GskTransform *self, float *out_xx, float *out_yx, float *out_xy, float *out_yy, float *out_dx, float *out_dy
gsk_transform_to_affinevoid
GskTransform *self, float *out_scale_x, float *out_scale_y, float *out_dx, float *out_dy
gsk_transform_to_translatevoid
GskTransform *self, float *out_dx, float *out_dy
gsk_transform_get_categoryGskTransformCategory
GskTransform *self
gsk_transform_equalgboolean
GskTransform *first, GskTransform *second
gsk_transform_newGskTransform *
void
gsk_transform_transformGskTransform *
GskTransform *next, GskTransform *other
gsk_transform_invertGskTransform *
GskTransform *self
gsk_transform_matrixGskTransform *
GskTransform *next, const graphene_matrix_t *matrix
gsk_transform_translateGskTransform *
GskTransform *next, const graphene_point_t *point
gsk_transform_translate_3dGskTransform *
GskTransform *next, const graphene_point3d_t *point
gsk_transform_rotateGskTransform *
GskTransform *next, float angle
gsk_transform_rotate_3dGskTransform *
GskTransform *next, float angle, const graphene_vec3_t *axis
gsk_transform_scaleGskTransform *
GskTransform *next, float factor_x, float factor_y
gsk_transform_scale_3dGskTransform *
GskTransform *next, float factor_x, float factor_y, float factor_z
gsk_transform_perspectiveGskTransform *
GskTransform *next, float depth
gsk_transform_transform_boundsvoid
GskTransform *self, const graphene_rect_t *rect, graphene_rect_t *out_rect
gsk_transform_transform_pointvoid
GskTransform *self, const graphene_point_t *point, graphene_point_t *out_point
GskRendererGskTransformGSK_TYPE_BROADWAY_RENDERER
#define GSK_TYPE_BROADWAY_RENDERER (gsk_broadway_renderer_get_type ())
GSK_BROADWAY_RENDERER
#define GSK_BROADWAY_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GSK_TYPE_BROADWAY_RENDERER, GskBroadwayRenderer))
GSK_IS_BROADWAY_RENDERER
#define GSK_IS_BROADWAY_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GSK_TYPE_BROADWAY_RENDERER))
GSK_BROADWAY_RENDERER_CLASS
#define GSK_BROADWAY_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GSK_TYPE_BROADWAY_RENDERER, GskBroadwayRendererClass))
GSK_IS_BROADWAY_RENDERER_CLASS
#define GSK_IS_BROADWAY_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GSK_TYPE_BROADWAY_RENDERER))
GSK_BROADWAY_RENDERER_GET_CLASS
#define GSK_BROADWAY_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GSK_TYPE_BROADWAY_RENDERER, GskBroadwayRendererClass))
gsk_broadway_renderer_get_typeGType
void
gsk_broadway_renderer_newGskRenderer *
void
GskBroadwayRendererGskBroadwayRendererClassSANITY_CHECKS
#define SANITY_CHECKS 0
rounded_rect_top_left
#define rounded_rect_top_left(r) (GRAPHENE_RECT_INIT(r->bounds.origin.x, \
r->bounds.origin.y, \
r->corner[0].width, r->corner[0].height))
rounded_rect_top_right
#define rounded_rect_top_right(r) (GRAPHENE_RECT_INIT(r->bounds.origin.x + r->bounds.size.width - r->corner[1].width, \
r->bounds.origin.y, \
r->corner[1].width, r->corner[1].height))
rounded_rect_bottom_right
#define rounded_rect_bottom_right(r) (GRAPHENE_RECT_INIT(r->bounds.origin.x + r->bounds.size.width - r->corner[2].width, \
r->bounds.origin.y + r->bounds.size.height - r->corner[2].height, \
r->corner[2].width, r->corner[2].height))
rounded_rect_bottom_left
#define rounded_rect_bottom_left(r) (GRAPHENE_RECT_INIT(r->bounds.origin.x, \
r->bounds.origin.y + r->bounds.size.height - r->corner[2].height, \
r->corner[3].width, r->corner[3].height))
rounded_rect_corner0
#define rounded_rect_corner0(r) rounded_rect_top_left(r)
rounded_rect_corner1
#define rounded_rect_corner1(r) rounded_rect_top_right(r)
rounded_rect_corner2
#define rounded_rect_corner2(r) rounded_rect_bottom_right(r)
rounded_rect_corner3
#define rounded_rect_corner3(r) rounded_rect_bottom_left(r)
rounded_rect_corner
#define rounded_rect_corner(r, i) (rounded_rect_corner ##i(r))
graphene_size_non_zero
#define graphene_size_non_zero(s) (s->width > 0 && s->height > 0)
rounded_rect_has_corner
#define rounded_rect_has_corner(r, i) (r->corner[i].width > 0 && r->corner[i].height > 0)
rect_contains_point
#define rect_contains_point(r, _x, _y) (_x >= (r)->origin.x && _x <= (r)->origin.x + (r)->size.width && \
_y >= (r)->origin.y && _y <= (r)->origin.y + (r)->size.height)
NINE_SLICE_SIZE
#define NINE_SLICE_SIZE 9 /* Hah. */
nine_slice_rounded_rectvoid
const GskRoundedRect *rect, cairo_rectangle_int_t *out_rects
nine_slice_growvoid
cairo_rectangle_int_t *slices, const int amount
nine_slice_to_texture_coordsvoid
const cairo_rectangle_int_t *slices, const int texture_width, const int texture_height, TextureRegion *out_regions
GSK_TYPE_GL_DRIVER
#define GSK_TYPE_GL_DRIVER (gsk_gl_driver_get_type ())
GskQuadVertex
typedef struct {
float position[2];
float uv[2];
} GskQuadVertex;
TextureSlice
typedef struct {
cairo_rectangle_int_t rect;
guint texture_id;
} TextureSlice;
gsk_gl_driver_newGskGLDriver *
GdkGLContext *context
gsk_gl_driver_get_gl_contextGdkGLContext *
GskGLDriver *driver
gsk_gl_driver_get_max_texture_sizeint
GskGLDriver *driver
gsk_gl_driver_begin_framevoid
GskGLDriver *driver
gsk_gl_driver_end_framevoid
GskGLDriver *driver
gsk_gl_driver_in_framegboolean
GskGLDriver *driver
gsk_gl_driver_get_texture_for_textureint
GskGLDriver *driver, GdkTexture *texture, int min_filter, int mag_filter
gsk_gl_driver_get_texture_for_pointerint
GskGLDriver *driver, gpointer pointer
gsk_gl_driver_set_texture_for_pointervoid
GskGLDriver *driver, gpointer pointer, int texture_id
gsk_gl_driver_create_textureint
GskGLDriver *driver, float width, float height
gsk_gl_driver_create_render_targetvoid
GskGLDriver *driver, int width, int height, int *out_texture_id, int *out_render_target_id
gsk_gl_driver_mark_texture_permanentvoid
GskGLDriver *self, int texture_id
gsk_gl_driver_bind_source_texturevoid
GskGLDriver *driver, int texture_id
gsk_gl_driver_init_texture_emptyvoid
GskGLDriver *driver, int texture_id, int min_filter, int max_filter
gsk_gl_driver_init_texture_with_surfacevoid
GskGLDriver *driver, int texture_id, cairo_surface_t *surface, int min_filter, int mag_filter
gsk_gl_driver_destroy_texturevoid
GskGLDriver *driver, int texture_id
gsk_gl_driver_collect_texturesint
GskGLDriver *driver
gsk_gl_driver_slice_texturevoid
GskGLDriver *self, GdkTexture *texture, TextureSlice **out_slices, guint *out_n_slices
GskGLDriverCacheKeyData
struct _CacheKeyData
{
PangoFont *font;
PangoGlyph glyph;
guint xshift : 3;
guint yshift : 3;
guint scale : 26; /* times 1024 */
};
GlyphCacheKey
struct _GlyphCacheKey
{
CacheKeyData data;
guint hash;
};
PHASE
#define PHASE(x) ((int)(floor (4 * (x + 0.125)) - 4 * floor (x + 0.125)))
glyph_cache_key_set_glyph_and_shiftvoid
GlyphCacheKey *key, PangoGlyph glyph, float x, float y
GskGLCachedGlyph
struct _GskGLCachedGlyph
{
GskGLTextureAtlas *atlas;
guint texture_id;
float tx;
float ty;
float tw;
float th;
int draw_x;
int draw_y;
int draw_width;
int draw_height;
guint accessed : 1; /* accessed since last check */
guint used : 1; /* accounted as used in the atlas */
};
gsk_gl_glyph_cache_newGskGLGlyphCache *
GdkDisplay *display, GskGLTextureAtlases *atlases
gsk_gl_glyph_cache_refGskGLGlyphCache *
GskGLGlyphCache *self
gsk_gl_glyph_cache_unrefvoid
GskGLGlyphCache *self
gsk_gl_glyph_cache_begin_framevoid
GskGLGlyphCache *self, GskGLDriver *driver, GPtrArray *removed_atlases
gsk_gl_glyph_cache_lookup_or_addvoid
GskGLGlyphCache *self, GlyphCacheKey *lookup, GskGLDriver *driver, const GskGLCachedGlyph **cached_glyph_out
CacheKeyDataGlyphCacheKeygsk_gl_icon_cache_newGskGLIconCache *
GdkDisplay *display, GskGLTextureAtlases *atlases
gsk_gl_icon_cache_refGskGLIconCache *
GskGLIconCache *self
gsk_gl_icon_cache_unrefvoid
GskGLIconCache *self
gsk_gl_icon_cache_begin_framevoid
GskGLIconCache *self, GPtrArray *removed_atlases
gsk_gl_icon_cache_lookup_or_addvoid
GskGLIconCache *self, GdkTexture *texture, const IconData **out_icon_data
gsk_gl_image_createvoid
GskGLImage *self, GskGLDriver *gl_driver, int width, int height, int min_filter, int mag_filter
gsk_gl_image_destroyvoid
GskGLImage *self, GskGLDriver *gl_driver
gsk_gl_image_write_to_pngvoid
const GskGLImage *self, GskGLDriver *gl_driver, const char *filename
gsk_gl_image_upload_regionvoid
GskGLImage *self, GskGLDriver *gl_driver, const GskImageRegion *region
N_NODE_TYPES
#define N_NODE_TYPES (GSK_DEBUG_NODE + 1)
node_sample_initvoid
NodeSample *self
node_sample_resetvoid
NodeSample *self
node_sample_addvoid
NodeSample *self, GskRenderNode *node
node_sample_printvoid
const NodeSample *self, const char *prefix
GSK_TYPE_GL_PROFILER
#define GSK_TYPE_GL_PROFILER (gsk_gl_profiler_get_type ())
gsk_gl_profiler_newGskGLProfiler *
GdkGLContext *context
gsk_gl_profiler_begin_gpu_regionvoid
GskGLProfiler *profiler
gsk_gl_profiler_end_gpu_regionguint64
GskGLProfiler *profiler
GskGLProfilerGSK_TYPE_GL_RENDERER
#define GSK_TYPE_GL_RENDERER (gsk_gl_renderer_get_type ())
GSK_GL_RENDERER
#define GSK_GL_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GSK_TYPE_GL_RENDERER, GskGLRenderer))
GSK_IS_GL_RENDERER
#define GSK_IS_GL_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GSK_TYPE_GL_RENDERER))
GSK_GL_RENDERER_CLASS
#define GSK_GL_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GSK_TYPE_GL_RENDERER, GskGLRendererClass))
GSK_IS_GL_RENDERER_CLASS
#define GSK_IS_GL_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GSK_TYPE_GL_RENDERER))
GSK_GL_RENDERER_GET_CLASS
#define GSK_GL_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GSK_TYPE_GL_RENDERER, GskGLRendererClass))
gsk_gl_renderer_get_typeGType
void
gsk_gl_renderer_newGskRenderer *
void
GskGLRendererGskGLRendererClassGL_N_VERTICES
#define GL_N_VERTICES 6
GL_N_PROGRAMS
#define GL_N_PROGRAMS 13
MAX_GRADIENT_STOPS
#define MAX_GRADIENT_STOPS 8
Program
struct _Program
{
int index; /* Into the renderer's program array */
int id;
/* Common locations (gl_common)*/
int source_location;
int position_location;
int uv_location;
int alpha_location;
int viewport_location;
int projection_location;
int modelview_location;
int clip_rect_location;
union {
struct {
int color_location;
} color;
struct {
int color_location;
} coloring;
struct {
int color_matrix_location;
int color_offset_location;
} color_matrix;
struct {
int num_color_stops_location;
int color_stops_location;
int start_point_location;
int end_point_location;
} linear_gradient;
struct {
int blur_radius_location;
int blur_size_location;
int blur_dir_location;
} blur;
struct {
int color_location;
int spread_location;
int offset_location;
int outline_rect_location;
} inset_shadow;
struct {
int color_location;
int outline_rect_location;
} outset_shadow;
struct {
int outline_rect_location;
int color_location;
int spread_location;
int offset_location;
} unblurred_outset_shadow;
struct {
int color_location;
int widths_location;
int outline_rect_location;
} border;
struct {
int source2_location;
int progress_location;
} cross_fade;
struct {
int source2_location;
int mode_location;
} blend;
struct {
int child_bounds_location;
int texture_rect_location;
} repeat;
};
};
GskGLRendererPrograms
typedef struct {
int ref_count;
union {
Program programs[GL_N_PROGRAMS];
struct {
Program blend_program;
Program blit_program;
Program blur_program;
Program border_program;
Program color_matrix_program;
Program color_program;
Program coloring_program;
Program cross_fade_program;
Program inset_shadow_program;
Program linear_gradient_program;
Program outset_shadow_program;
Program repeat_program;
Program unblurred_outset_shadow_program;
};
};
ProgramState state[GL_N_PROGRAMS];
} GskGLRendererPrograms;
ops_dump_framebuffervoid
RenderOpBuilder *builder, const char *filename, int width, int height
ops_initvoid
RenderOpBuilder *builder
ops_freevoid
RenderOpBuilder *builder
ops_resetvoid
RenderOpBuilder *builder
ops_push_debug_groupvoid
RenderOpBuilder *builder, const char *text
ops_pop_debug_groupvoid
RenderOpBuilder *builder
ops_finishvoid
RenderOpBuilder *builder
ops_push_modelviewvoid
RenderOpBuilder *builder, GskTransform *transform
ops_set_modelviewvoid
RenderOpBuilder *builder, GskTransform *transform
ops_pop_modelviewvoid
RenderOpBuilder *builder
ops_get_scalefloat
const RenderOpBuilder *builder
ops_set_programvoid
RenderOpBuilder *builder, const Program *program
ops_push_clipvoid
RenderOpBuilder *builder, const GskRoundedRect *clip
ops_pop_clipvoid
RenderOpBuilder *builder
ops_has_clipgboolean
RenderOpBuilder *builder
ops_transform_bounds_modelviewvoid
const RenderOpBuilder *builder, const graphene_rect_t *src, graphene_rect_t *dst
ops_set_projectiongraphene_matrix_t
RenderOpBuilder *builder, const graphene_matrix_t *projection
ops_set_viewportgraphene_rect_t
RenderOpBuilder *builder, const graphene_rect_t *viewport
ops_set_texturevoid
RenderOpBuilder *builder, int texture_id
ops_set_render_targetint
RenderOpBuilder *builder, int render_target_id
ops_set_opacityfloat
RenderOpBuilder *builder, float opacity
ops_set_colorvoid
RenderOpBuilder *builder, const GdkRGBA *color
ops_set_color_matrixvoid
RenderOpBuilder *builder, const graphene_matrix_t *matrix, const graphene_vec4_t *offset
ops_set_bordervoid
RenderOpBuilder *builder, const GskRoundedRect *outline
ops_set_border_widthvoid
RenderOpBuilder *builder, const float *widths
ops_set_border_colorvoid
RenderOpBuilder *builder, const GdkRGBA *color
ops_set_inset_shadowvoid
RenderOpBuilder *self, const GskRoundedRect outline, float spread, const GdkRGBA *color, float dx, float dy
ops_set_unblurred_outset_shadowvoid
RenderOpBuilder *self, const GskRoundedRect outline, float spread, const GdkRGBA *color, float dx, float dy
ops_set_linear_gradientvoid
RenderOpBuilder *self, guint n_color_stops, const GskColorStop *color_stops, float start_x, float start_y, float end_x, float end_y
ops_drawGskQuadVertex *
RenderOpBuilder *builder, const GskQuadVertex vertex_data[GL_N_VERTICES]
ops_offsetvoid
RenderOpBuilder *builder, float x, float y
ops_begingpointer
RenderOpBuilder *builder, OpKind kind
ops_get_bufferOpBuffer *
RenderOpBuilder *builder
gsk_gl_shader_builder_initvoid
GskGLShaderBuilder *self, const char *common_preamble_resource_path, const char *vs_preamble_resource_path, const char *fs_preamble_resource_path
gsk_gl_shader_builder_finishvoid
GskGLShaderBuilder *self
gsk_gl_shader_builder_set_glsl_versionvoid
GskGLShaderBuilder *self, int version
gsk_gl_shader_builder_create_programint
GskGLShaderBuilder *self, const char *resource_path, GError **error
gsk_gl_shadow_cache_initvoid
GskGLShadowCache *self
gsk_gl_shadow_cache_freevoid
GskGLShadowCache *self, GskGLDriver *gl_driver
gsk_gl_shadow_cache_begin_framevoid
GskGLShadowCache *self, GskGLDriver *gl_driver
gsk_gl_shadow_cache_get_texture_idint
GskGLShadowCache *self, GskGLDriver *gl_driver, const GskRoundedRect *shadow_rect, float blur_radius
gsk_gl_shadow_cache_commitvoid
GskGLShadowCache *self, const GskRoundedRect *shadow_rect, float blur_radius, int texture_id
GskGLTextureAtlas
struct _GskGLTextureAtlas
{
struct stbrp_context context;
struct stbrp_node *nodes;
int width;
int height;
guint texture_id;
int unused_pixels; /* Pixels of rects that have been used at some point,
But are now unused. */
void *user_data;
};
GskGLTextureAtlases
struct _GskGLTextureAtlases
{
int ref_count;
GPtrArray *atlases;
};
gsk_gl_texture_atlases_newGskGLTextureAtlases *
void
gsk_gl_texture_atlases_refGskGLTextureAtlases *
GskGLTextureAtlases *atlases
gsk_gl_texture_atlases_unrefvoid
GskGLTextureAtlases *atlases
gsk_gl_texture_atlases_begin_framevoid
GskGLTextureAtlases *atlases, GPtrArray *removed
gsk_gl_texture_atlases_packgboolean
GskGLTextureAtlases *atlases, int width, int height, GskGLTextureAtlas **atlas_out, int *out_x, int *out_y
gsk_gl_texture_atlas_initvoid
GskGLTextureAtlas *self, int width, int height
gsk_gl_texture_atlas_freevoid
GskGLTextureAtlas *self
gsk_gl_texture_atlas_realizevoid
GskGLTextureAtlas *self
gsk_gl_texture_atlas_mark_unusedvoid
GskGLTextureAtlas *self, int width, int height
gsk_gl_texture_atlas_mark_usedvoid
GskGLTextureAtlas *self, int width, int height
gsk_gl_texture_atlas_packgboolean
GskGLTextureAtlas *self, int width, int height, int *out_x, int *out_y
gsk_gl_texture_atlas_get_unused_ratiodouble
const GskGLTextureAtlas *self
GskGLTextureAtlasGskGLTextureAtlasesOpKind
typedef enum
{
OP_NONE = 0,
OP_CHANGE_OPACITY = 1,
OP_CHANGE_COLOR = 2,
OP_CHANGE_PROJECTION = 3,
OP_CHANGE_MODELVIEW = 4,
OP_CHANGE_PROGRAM = 5,
OP_CHANGE_RENDER_TARGET = 6,
OP_CHANGE_CLIP = 7,
OP_CHANGE_VIEWPORT = 8,
OP_CHANGE_SOURCE_TEXTURE = 9,
OP_CHANGE_REPEAT = 10,
OP_CHANGE_LINEAR_GRADIENT = 11,
OP_CHANGE_COLOR_MATRIX = 12,
OP_CHANGE_BLUR = 13,
OP_CHANGE_INSET_SHADOW = 14,
OP_CHANGE_OUTSET_SHADOW = 15,
OP_CHANGE_BORDER = 16,
OP_CHANGE_BORDER_COLOR = 17,
OP_CHANGE_BORDER_WIDTH = 18,
OP_CHANGE_CROSS_FADE = 19,
OP_CHANGE_UNBLURRED_OUTSET_SHADOW = 20,
OP_CLEAR = 21,
OP_DRAW = 22,
OP_DUMP_FRAMEBUFFER = 23,
OP_PUSH_DEBUG_GROUP = 24,
OP_POP_DEBUG_GROUP = 25,
OP_CHANGE_BLEND = 26,
OP_LAST
} OpKind;
OpShadow
typedef struct { int value; guint send: 1; } IntUniformValue;
typedef struct { float value; guint send: 1; } FloatUniformValue;
typedef struct { float value[2]; guint send: 1; } Float2UniformValue;
typedef struct { GskRoundedRect value; guint send: 1; guint send_corners: 1; } RRUniformValue;
typedef struct { const GdkRGBA *value; guint send: 1; } RGBAUniformValue;
typedef struct { const graphene_vec4_t *value; guint send: 1; } Vec4UniformValue;
typedef struct { const GskColorStop *value; guint send: 1; } ColorStopUniformValue;
/* OpNode are allocated within OpBuffer.pos, but we keep
* a secondary index into the locations of that buffer
* from OpBuffer.index. This allows peeking at the kind
* and quickly replacing existing entries when necessary.
*/
typedef struct
{
RRUniformValue outline;
FloatUniformValue spread;
Float2UniformValue offset;
RGBAUniformValue color;
} OpShadow;
op_buffer_initvoid
OpBuffer *buffer
op_buffer_destroyvoid
OpBuffer *buffer
op_buffer_clearvoid
OpBuffer *buffer
op_buffer_addgpointer
OpBuffer *buffer, OpKind kind
op_buffer_iter_initvoid
OpBufferIter *iter, OpBuffer *buffer
op_buffer_iter_nextgpointer
OpBufferIter *iter, OpKind *kind
op_buffer_pop_tailvoid
OpBuffer *buffer
op_buffer_peek_tailgpointer
OpBuffer *buffer, OpKind *kind
op_buffer_peek_tail_checkedgpointer
OpBuffer *buffer, OpKind kind
op_buffer_n_opsguint
OpBuffer *buffer
ProgramSTB_RECT_PACK_VERSION
#define STB_RECT_PACK_VERSION 1
STBRP_DEF
#define STBRP_DEF static
stbrp_context
typedef struct stbrp_context stbrp_context;
stbrp_node
typedef struct stbrp_node stbrp_node;
stbrp_rect
typedef struct stbrp_rect stbrp_rect;
stbrp_coord
typedef int stbrp_coord;
GSK_TYPE_VULKAN_BLEND_MODE_PIPELINE
#define GSK_TYPE_VULKAN_BLEND_MODE_PIPELINE (gsk_vulkan_blend_mode_pipeline_get_type ())
gsk_vulkan_blend_mode_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_blend_mode_pipeline_count_vertex_datagsize
GskVulkanBlendModePipeline *pipeline
gsk_vulkan_blend_mode_pipeline_collect_vertex_datavoid
GskVulkanBlendModePipeline *pipeline, guchar *data, const graphene_rect_t *bounds, const graphene_rect_t *start_bounds, const graphene_rect_t *end_bounds, GskBlendMode blend_mode
gsk_vulkan_blend_mode_pipeline_drawgsize
GskVulkanBlendModePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanBlendModePipelineGskVulkanBlendModePipelineLayoutGSK_TYPE_VULKAN_BLUR_PIPELINE
#define GSK_TYPE_VULKAN_BLUR_PIPELINE (gsk_vulkan_blur_pipeline_get_type ())
gsk_vulkan_blur_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_blur_pipeline_count_vertex_datagsize
GskVulkanBlurPipeline *pipeline
gsk_vulkan_blur_pipeline_collect_vertex_datavoid
GskVulkanBlurPipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect, double radius
gsk_vulkan_blur_pipeline_drawgsize
GskVulkanBlurPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanBlurPipelineGskVulkanBlurPipelineLayoutGSK_TYPE_VULKAN_BORDER_PIPELINE
#define GSK_TYPE_VULKAN_BORDER_PIPELINE (gsk_vulkan_border_pipeline_get_type ())
gsk_vulkan_border_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_border_pipeline_count_vertex_datagsize
GskVulkanBorderPipeline *pipeline
gsk_vulkan_border_pipeline_collect_vertex_datavoid
GskVulkanBorderPipeline *pipeline, guchar *data, const GskRoundedRect *rect, const float widths[4], const GdkRGBA colors[4]
gsk_vulkan_border_pipeline_drawgsize
GskVulkanBorderPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanBorderPipelineGskVulkanBorderPipelineLayoutGSK_TYPE_VULKAN_BOX_SHADOW_PIPELINE
#define GSK_TYPE_VULKAN_BOX_SHADOW_PIPELINE (gsk_vulkan_box_shadow_pipeline_get_type ())
gsk_vulkan_box_shadow_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_box_shadow_pipeline_count_vertex_datagsize
GskVulkanBoxShadowPipeline *pipeline
gsk_vulkan_box_shadow_pipeline_collect_vertex_datavoid
GskVulkanBoxShadowPipeline *pipeline, guchar *data, const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius
gsk_vulkan_box_shadow_pipeline_drawgsize
GskVulkanBoxShadowPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanBoxShadowPipelineGskVulkanBoxShadowPipelineLayoutgsk_vulkan_buffer_newGskVulkanBuffer *
GdkVulkanContext *context, gsize size
gsk_vulkan_buffer_new_stagingGskVulkanBuffer *
GdkVulkanContext *context, gsize size
gsk_vulkan_buffer_new_downloadGskVulkanBuffer *
GdkVulkanContext *context, gsize size
gsk_vulkan_buffer_freevoid
GskVulkanBuffer *buffer
gsk_vulkan_buffer_get_bufferVkBuffer
GskVulkanBuffer *self
gsk_vulkan_buffer_mapguchar *
GskVulkanBuffer *self
gsk_vulkan_buffer_unmapvoid
GskVulkanBuffer *self
GskVulkanBufferGskVulkanClipComplexity
typedef enum {
/* The whole area is clipped, no drawing is necessary.
* This can't be handled by return values because for return
* values we return if clips could even be computed.
*/
GSK_VULKAN_CLIP_ALL_CLIPPED,
/* No clipping is necessary, but the clip rect is set
* to the actual bounds of the underlying framebuffer
*/
GSK_VULKAN_CLIP_NONE,
/* The clip is a rectangular area */
GSK_VULKAN_CLIP_RECT,
/* The clip is a rounded rectangle, and for every corner
* corner.width == corner.height is true
*/
GSK_VULKAN_CLIP_ROUNDED_CIRCULAR,
/* The clip is a rounded rectangle */
GSK_VULKAN_CLIP_ROUNDED
} GskVulkanClipComplexity;
GskVulkanClip
struct _GskVulkanClip
{
GskVulkanClipComplexity type;
GskRoundedRect rect;
};
gsk_vulkan_clip_init_emptyvoid
GskVulkanClip *clip, const graphene_rect_t *rect
gsk_vulkan_clip_intersect_rectgboolean
GskVulkanClip *dest, const GskVulkanClip *src, const graphene_rect_t *rect
gsk_vulkan_clip_intersect_rounded_rectgboolean
GskVulkanClip *dest, const GskVulkanClip *src, const GskRoundedRect *rounded
gsk_vulkan_clip_transformgboolean
GskVulkanClip *dest, const GskVulkanClip *src, const graphene_matrix_t*transform, const graphene_rect_t *viewport
gsk_vulkan_clip_contains_rectgboolean
const GskVulkanClip *self, const graphene_rect_t *rect
GSK_TYPE_VULKAN_COLOR_PIPELINE
#define GSK_TYPE_VULKAN_COLOR_PIPELINE (gsk_vulkan_color_pipeline_get_type ())
gsk_vulkan_color_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_color_pipeline_count_vertex_datagsize
GskVulkanColorPipeline *pipeline
gsk_vulkan_color_pipeline_collect_vertex_datavoid
GskVulkanColorPipeline *pipeline, guchar *data, const graphene_rect_t *rect, const GdkRGBA *color
gsk_vulkan_color_pipeline_drawgsize
GskVulkanColorPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanColorPipelineGskVulkanColorPipelineLayoutGSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE
#define GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE (gsk_vulkan_color_text_pipeline_get_type ())
gsk_vulkan_color_text_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_color_text_pipeline_count_vertex_datagsize
GskVulkanColorTextPipeline *pipeline, int num_instances
gsk_vulkan_color_text_pipeline_collect_vertex_datavoid
GskVulkanColorTextPipeline *pipeline, guchar *data, GskVulkanRenderer *renderer, const graphene_rect_t *rect, PangoFont *font, guint total_glyphs, const PangoGlyphInfo *glyphs, const graphene_point_t *offset, guint start_glyph, guint num_glyphs, float scale
gsk_vulkan_color_text_pipeline_drawgsize
GskVulkanColorTextPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanColorTextPipelineGskVulkanColorTextPipelineLayoutgsk_vulkan_command_pool_newGskVulkanCommandPool *
GdkVulkanContext *context
gsk_vulkan_command_pool_freevoid
GskVulkanCommandPool *self
gsk_vulkan_command_pool_resetvoid
GskVulkanCommandPool *self
gsk_vulkan_command_pool_get_bufferVkCommandBuffer
GskVulkanCommandPool *self
gsk_vulkan_command_pool_submit_buffervoid
GskVulkanCommandPool *self, VkCommandBuffer buffer, gsize wait_semaphore_count, VkSemaphore *wait_semaphores, gsize signal_semaphores_count, VkSemaphore *signal_semaphores, VkFence fence
GskVulkanCommandPoolGSK_TYPE_VULKAN_CROSS_FADE_PIPELINE
#define GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE (gsk_vulkan_cross_fade_pipeline_get_type ())
gsk_vulkan_cross_fade_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_cross_fade_pipeline_count_vertex_datagsize
GskVulkanCrossFadePipeline *pipeline
gsk_vulkan_cross_fade_pipeline_collect_vertex_datavoid
GskVulkanCrossFadePipeline *pipeline, guchar *data, const graphene_rect_t *bounds, const graphene_rect_t *start_bounds, const graphene_rect_t *end_bounds, double progress
gsk_vulkan_cross_fade_pipeline_drawgsize
GskVulkanCrossFadePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanCrossFadePipelineGskVulkanCrossFadePipelineLayoutGSK_TYPE_VULKAN_EFFECT_PIPELINE
#define GSK_TYPE_VULKAN_EFFECT_PIPELINE (gsk_vulkan_effect_pipeline_get_type ())
gsk_vulkan_effect_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_effect_pipeline_count_vertex_datagsize
GskVulkanEffectPipeline *pipeline
gsk_vulkan_effect_pipeline_collect_vertex_datavoid
GskVulkanEffectPipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect, const graphene_matrix_t *color_matrix, const graphene_vec4_t *color_offset
gsk_vulkan_effect_pipeline_drawgsize
GskVulkanEffectPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanEffectPipelineGskVulkanEffectPipelineLayoutGSK_TYPE_VULKAN_GLYPH_CACHE
#define GSK_TYPE_VULKAN_GLYPH_CACHE (gsk_vulkan_glyph_cache_get_type ())
gsk_vulkan_glyph_cache_newGskVulkanGlyphCache *
GskRenderer *renderer, GdkVulkanContext *vulkan
gsk_vulkan_glyph_cache_get_glyph_imageGskVulkanImage *
GskVulkanGlyphCache *cache, GskVulkanUploader *uploader, guint index
gsk_vulkan_glyph_cache_lookupGskVulkanCachedGlyph *
GskVulkanGlyphCache *cache, gboolean create, PangoFont *font, PangoGlyph glyph, int x, int y, float scale
gsk_vulkan_glyph_cache_begin_framevoid
GskVulkanGlyphCache *cache
GskVulkanGlyphCacheGSK_TYPE_VULKAN_IMAGE
#define GSK_TYPE_VULKAN_IMAGE (gsk_vulkan_image_get_type ())
gsk_vulkan_uploader_newGskVulkanUploader *
GdkVulkanContext *context, GskVulkanCommandPool *command_pool
gsk_vulkan_uploader_freevoid
GskVulkanUploader *self
gsk_vulkan_uploader_resetvoid
GskVulkanUploader *self
gsk_vulkan_uploader_uploadvoid
GskVulkanUploader *self
gsk_vulkan_image_new_for_swapchainGskVulkanImage *
GdkVulkanContext *context, VkImage image, VkFormat format, gsize width, gsize height
gsk_vulkan_image_new_from_dataGskVulkanImage *
GskVulkanUploader *uploader, guchar *data, gsize width, gsize height, gsize stride
GskImageRegion
typedef struct {
guchar *data;
gsize width;
gsize height;
gsize stride;
gsize x;
gsize y;
} GskImageRegion;
gsk_vulkan_image_upload_regionsvoid
GskVulkanImage *image, GskVulkanUploader *uploader, guint num_regions, GskImageRegion *regions
gsk_vulkan_image_new_for_framebufferGskVulkanImage *
GdkVulkanContext *context, gsize width, gsize height
gsk_vulkan_image_new_for_atlasGskVulkanImage *
GdkVulkanContext *context, gsize width, gsize height
gsk_vulkan_image_new_for_textureGskVulkanImage *
GdkVulkanContext *context, gsize width, gsize height
gsk_vulkan_image_downloadGdkTexture *
GskVulkanImage *self, GskVulkanUploader *uploader
gsk_vulkan_image_get_widthgsize
GskVulkanImage *self
gsk_vulkan_image_get_heightgsize
GskVulkanImage *self
gsk_vulkan_image_get_imageVkImage
GskVulkanImage *self
gsk_vulkan_image_get_image_viewVkImageView
GskVulkanImage *self
GskVulkanImageGskVulkanUploaderGSK_VULKAN_LINEAR_GRADIENT_PIPELINE_MAX_COLOR_STOPS
#define GSK_VULKAN_LINEAR_GRADIENT_PIPELINE_MAX_COLOR_STOPS 8
GSK_TYPE_VULKAN_LINEAR_GRADIENT_PIPELINE
#define GSK_TYPE_VULKAN_LINEAR_GRADIENT_PIPELINE (gsk_vulkan_linear_gradient_pipeline_get_type ())
gsk_vulkan_linear_gradient_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_linear_gradient_pipeline_count_vertex_datagsize
GskVulkanLinearGradientPipeline*pipeline
gsk_vulkan_linear_gradient_pipeline_collect_vertex_datavoid
GskVulkanLinearGradientPipeline*pipeline, guchar *data, const graphene_rect_t *rect, const graphene_point_t *start, const graphene_point_t *end, gboolean repeating, gsize n_stops, const GskColorStop *stops
gsk_vulkan_linear_gradient_pipeline_drawgsize
GskVulkanLinearGradientPipeline*pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanLinearGradientPipelineGskVulkanLinearGradientPipelineLayoutgsk_vulkan_memory_newGskVulkanMemory *
GdkVulkanContext *context, uint32_t allowed_types, VkMemoryPropertyFlags properties, gsize size
gsk_vulkan_memory_freevoid
GskVulkanMemory *memory
gsk_vulkan_memory_get_device_memoryVkDeviceMemory
GskVulkanMemory *self
gsk_vulkan_memory_mapguchar *
GskVulkanMemory *self
gsk_vulkan_memory_unmapvoid
GskVulkanMemory *self
GskVulkanMemoryGSK_TYPE_VULKAN_PIPELINE
#define GSK_TYPE_VULKAN_PIPELINE (gsk_vulkan_pipeline_get_type ())
GskVulkanPipelineClass
struct _GskVulkanPipelineClass
{
GObjectClass parent_class;
const VkPipelineVertexInputStateCreateInfo *
(* get_input_state_create_info) (GskVulkanPipeline *self);
};
gsk_vulkan_handle_resultVkResult
VkResult res, const char *called_function
GSK_VK_CHECK
#define GSK_VK_CHECK(func, ...) gsk_vulkan_handle_result (func (__VA_ARGS__), G_STRINGIFY (func))
gsk_vulkan_pipeline_newGskVulkanPipeline *
GType pipeline_type, GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_pipeline_new_fullGskVulkanPipeline *
GType pipeline_type, GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass, VkBlendFactor srcBlendFactor, VkBlendFactor dstBlendFactor
gsk_vulkan_pipeline_get_pipelineVkPipeline
GskVulkanPipeline *self
gsk_vulkan_pipeline_get_pipeline_layoutVkPipelineLayout
GskVulkanPipeline *self
GskVulkanPipelineGskVulkanPushConstants
struct _GskVulkanPushConstants
{
graphene_matrix_t mvp;
GskVulkanClip clip;
};
gsk_vulkan_push_constants_get_rangesconst VkPushConstantRange *
void
gsk_vulkan_push_constants_get_range_countuint32_t
void
gsk_vulkan_push_constants_initvoid
GskVulkanPushConstants *constants, const graphene_matrix_t *mvp, const graphene_rect_t *viewport
gsk_vulkan_push_constants_init_copyvoid
GskVulkanPushConstants *self, const GskVulkanPushConstants *src
gsk_vulkan_push_constants_transformgboolean
GskVulkanPushConstants *self, const GskVulkanPushConstants *src, const graphene_matrix_t *transform, const graphene_rect_t *viewport
gsk_vulkan_push_constants_intersect_rectgboolean
GskVulkanPushConstants *self, const GskVulkanPushConstants *src, const graphene_rect_t *rect
gsk_vulkan_push_constants_intersect_roundedgboolean
GskVulkanPushConstants *self, const GskVulkanPushConstants *src, const GskRoundedRect *rect
gsk_vulkan_push_constants_pushvoid
const GskVulkanPushConstants *self, VkCommandBuffer command_buffer, VkPipelineLayout pipeline_layout
GSK_TYPE_VULKAN_RENDERER
#define GSK_TYPE_VULKAN_RENDERER (gsk_vulkan_renderer_get_type ())
GSK_VULKAN_RENDERER
#define GSK_VULKAN_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GSK_TYPE_VULKAN_RENDERER, GskVulkanRenderer))
GSK_IS_VULKAN_RENDERER
#define GSK_IS_VULKAN_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GSK_TYPE_VULKAN_RENDERER))
GSK_VULKAN_RENDERER_CLASS
#define GSK_VULKAN_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GSK_TYPE_VULKAN_RENDERER, GskVulkanRendererClass))
GSK_IS_VULKAN_RENDERER_CLASS
#define GSK_IS_VULKAN_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GSK_TYPE_VULKAN_RENDERER))
GSK_VULKAN_RENDERER_GET_CLASS
#define GSK_VULKAN_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GSK_TYPE_VULKAN_RENDERER, GskVulkanRendererClass))
gsk_vulkan_renderer_get_typeGType
void
gsk_vulkan_renderer_newGskRenderer *
void
GskVulkanRendererGskVulkanRendererClassgsk_vulkan_renderer_ref_texture_imageGskVulkanImage *
GskVulkanRenderer *self, GdkTexture *texture, GskVulkanUploader *uploader
gsk_vulkan_renderer_cache_glyphguint
GskVulkanRenderer *renderer, PangoFont *font, PangoGlyph glyph, int x, int y, float scale
gsk_vulkan_renderer_ref_glyph_imageGskVulkanImage *
GskVulkanRenderer *self, GskVulkanUploader *uploader, guint index
gsk_vulkan_renderer_get_cached_glyphGskVulkanCachedGlyph *
GskVulkanRenderer *self, PangoFont *font, PangoGlyph glyph, int x, int y, float scale
gsk_vulkan_render_pass_newGskVulkanRenderPass *
GdkVulkanContext *context, GskVulkanImage *target, int scale_factor, graphene_matrix_t *mv, graphene_rect_t *viewport, cairo_region_t *clip, VkSemaphore signal_semaphore
gsk_vulkan_render_pass_freevoid
GskVulkanRenderPass *self
gsk_vulkan_render_pass_addvoid
GskVulkanRenderPass *self, GskVulkanRender *render, GskRenderNode *node
gsk_vulkan_render_pass_uploadvoid
GskVulkanRenderPass *self, GskVulkanRender *render, GskVulkanUploader *uploader
gsk_vulkan_render_pass_reserve_descriptor_setsvoid
GskVulkanRenderPass *self, GskVulkanRender *render
gsk_vulkan_render_pass_drawvoid
GskVulkanRenderPass *self, GskVulkanRender *render, guint layout_count, VkPipelineLayout *pipeline_layout, VkCommandBuffer command_buffer
gsk_vulkan_render_pass_get_wait_semaphoresgsize
GskVulkanRenderPass *self, VkSemaphore **semaphores
gsk_vulkan_render_pass_get_signal_semaphoresgsize
GskVulkanRenderPass *self, VkSemaphore **semaphores
GskVulkanPipelineType
typedef enum {
GSK_VULKAN_PIPELINE_TEXTURE,
GSK_VULKAN_PIPELINE_TEXTURE_CLIP,
GSK_VULKAN_PIPELINE_TEXTURE_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_COLOR,
GSK_VULKAN_PIPELINE_COLOR_CLIP,
GSK_VULKAN_PIPELINE_COLOR_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_LINEAR_GRADIENT,
GSK_VULKAN_PIPELINE_LINEAR_GRADIENT_CLIP,
GSK_VULKAN_PIPELINE_LINEAR_GRADIENT_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_COLOR_MATRIX,
GSK_VULKAN_PIPELINE_COLOR_MATRIX_CLIP,
GSK_VULKAN_PIPELINE_COLOR_MATRIX_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_BORDER,
GSK_VULKAN_PIPELINE_BORDER_CLIP,
GSK_VULKAN_PIPELINE_BORDER_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_INSET_SHADOW,
GSK_VULKAN_PIPELINE_INSET_SHADOW_CLIP,
GSK_VULKAN_PIPELINE_INSET_SHADOW_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_OUTSET_SHADOW,
GSK_VULKAN_PIPELINE_OUTSET_SHADOW_CLIP,
GSK_VULKAN_PIPELINE_OUTSET_SHADOW_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_BLUR,
GSK_VULKAN_PIPELINE_BLUR_CLIP,
GSK_VULKAN_PIPELINE_BLUR_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_TEXT,
GSK_VULKAN_PIPELINE_TEXT_CLIP,
GSK_VULKAN_PIPELINE_TEXT_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_COLOR_TEXT,
GSK_VULKAN_PIPELINE_COLOR_TEXT_CLIP,
GSK_VULKAN_PIPELINE_COLOR_TEXT_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_CROSS_FADE,
GSK_VULKAN_PIPELINE_CROSS_FADE_CLIP,
GSK_VULKAN_PIPELINE_CROSS_FADE_CLIP_ROUNDED,
GSK_VULKAN_PIPELINE_BLEND_MODE,
GSK_VULKAN_PIPELINE_BLEND_MODE_CLIP,
GSK_VULKAN_PIPELINE_BLEND_MODE_CLIP_ROUNDED,
/* add more */
GSK_VULKAN_N_PIPELINES
} GskVulkanPipelineType;
gsk_vulkan_render_newGskVulkanRender *
GskRenderer *renderer, GdkVulkanContext *context
gsk_vulkan_render_freevoid
GskVulkanRender *self
gsk_vulkan_render_is_busygboolean
GskVulkanRender *self
gsk_vulkan_render_resetvoid
GskVulkanRender *self, GskVulkanImage *target, const graphene_rect_t *rect, const cairo_region_t *clip
gsk_vulkan_render_get_rendererGskRenderer *
GskVulkanRender *self
gsk_vulkan_render_add_cleanup_imagevoid
GskVulkanRender *self, GskVulkanImage *image
gsk_vulkan_render_add_nodevoid
GskVulkanRender *self, GskRenderNode *node
gsk_vulkan_render_add_render_passvoid
GskVulkanRender *self, GskVulkanRenderPass *pass
gsk_vulkan_render_uploadvoid
GskVulkanRender *self
gsk_vulkan_render_get_pipelineGskVulkanPipeline *
GskVulkanRender *self, GskVulkanPipelineType pipeline_type
gsk_vulkan_render_get_descriptor_setVkDescriptorSet
GskVulkanRender *self, gsize id
gsk_vulkan_render_reserve_descriptor_setgsize
GskVulkanRender *self, GskVulkanImage *source, gboolean repeat
gsk_vulkan_render_drawvoid
GskVulkanRender *self
gsk_vulkan_render_submitvoid
GskVulkanRender *self
gsk_vulkan_render_download_targetGdkTexture *
GskVulkanRender *self
gsk_vulkan_render_get_framebufferVkFramebuffer
GskVulkanRender *self, GskVulkanImage *image
GskVulkanShaderType
typedef enum {
GSK_VULKAN_SHADER_VERTEX,
GSK_VULKAN_SHADER_FRAGMENT
} GskVulkanShaderType;
GST_VULKAN_SHADER_STAGE_CREATE_INFO
#define GST_VULKAN_SHADER_STAGE_CREATE_INFO(shader) \
(VkPipelineShaderStageCreateInfo) { \
.sType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO, \
.stage = gsk_vulkan_shader_get_type (shader) == GSK_VULKAN_SHADER_VERTEX ? VK_SHADER_STAGE_VERTEX_BIT : VK_SHADER_STAGE_FRAGMENT_BIT, \
.module = gsk_vulkan_shader_get_module (shader), \
.pName = "main", \
}
gsk_vulkan_shader_new_from_resourceGskVulkanShader *
GdkVulkanContext *context, GskVulkanShaderType type, const char *resource_name, GError **error
gsk_vulkan_shader_freevoid
GskVulkanShader *shader
gsk_vulkan_shader_get_typeGskVulkanShaderType
GskVulkanShader *shader
gsk_vulkan_shader_get_moduleVkShaderModule
GskVulkanShader *shader
GskVulkanShaderGSK_TYPE_VULKAN_TEXT_PIPELINE
#define GSK_TYPE_VULKAN_TEXT_PIPELINE (gsk_vulkan_text_pipeline_get_type ())
gsk_vulkan_text_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_text_pipeline_count_vertex_datagsize
GskVulkanTextPipeline *pipeline, int num_instances
gsk_vulkan_text_pipeline_collect_vertex_datavoid
GskVulkanTextPipeline *pipeline, guchar *data, GskVulkanRenderer *renderer, const graphene_rect_t *rect, PangoFont *font, guint total_glyphs, const PangoGlyphInfo *glyphs, const GdkRGBA *color, const graphene_point_t *offset, guint start_glyph, guint num_glyphs, float scale
gsk_vulkan_text_pipeline_drawgsize
GskVulkanTextPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanTextPipelineGskVulkanTextPipelineLayoutGSK_TYPE_VULKAN_TEXTURE_PIPELINE
#define GSK_TYPE_VULKAN_TEXTURE_PIPELINE (gsk_vulkan_texture_pipeline_get_type ())
gsk_vulkan_texture_pipeline_newGskVulkanPipeline *
GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass
gsk_vulkan_texture_pipeline_count_vertex_datagsize
GskVulkanTexturePipeline *pipeline
gsk_vulkan_texture_pipeline_collect_vertex_datavoid
GskVulkanTexturePipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect
gsk_vulkan_texture_pipeline_drawgsize
GskVulkanTexturePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands
GskVulkanTexturePipelineGskVulkanTexturePipelineLayoutGSK_TYPE_RENDER_NODE_TYPE
#define GSK_TYPE_RENDER_NODE_TYPE (gsk_render_node_type_get_type ())
GSK_TYPE_SCALING_FILTER
#define GSK_TYPE_SCALING_FILTER (gsk_scaling_filter_get_type ())
GSK_TYPE_BLEND_MODE
#define GSK_TYPE_BLEND_MODE (gsk_blend_mode_get_type ())
GSK_TYPE_CORNER
#define GSK_TYPE_CORNER (gsk_corner_get_type ())
GSK_TYPE_SERIALIZATION_ERROR
#define GSK_TYPE_SERIALIZATION_ERROR (gsk_serialization_error_get_type ())
GSK_TYPE_TRANSFORM_CATEGORY
#define GSK_TYPE_TRANSFORM_CATEGORY (gsk_transform_category_get_type ())
build/docs/reference/gsk/gsk4-overrides.txt 0000664 0001750 0001750 00000000000 13724234624 021065 0 ustar mclasen mclasen build/docs/reference/gsk/gsk4.signals 0000664 0001750 0001750 00000000000 13724234624 017706 0 ustar mclasen mclasen build/docs/reference/gsk/gsk4.hierarchy 0000664 0001750 0001750 00000000112 13724234624 020230 0 ustar mclasen mclasen GObject
GskRenderer
GdkSurface
GInterface
GTypePlugin
GskRenderNode
build/docs/reference/gsk/gsk4.interfaces 0000664 0001750 0001750 00000000000 13724234624 020371 0 ustar mclasen mclasen build/docs/reference/gsk/gsk4.prerequisites 0000664 0001750 0001750 00000000000 13724234624 021152 0 ustar mclasen mclasen build/docs/reference/gsk/gsk4.args 0000664 0001750 0001750 00000000641 13724234624 017215 0 ustar mclasen mclasen GskRenderer::realizedgbooleanrRealizedThe renderer has been associated with a surface.FALSEGskRenderer::surfaceGdkSurface*rSurfaceThe surface associated to the renderer.
build/docs/reference/gsk/gsk4.actions 0000664 0001750 0001750 00000000000 13724234624 017706 0 ustar mclasen mclasen build/docs/reference/gsk/xml/ 0000775 0001750 0001750 00000000000 13724235172 016265 5 ustar mclasen mclasen build/docs/reference/gsk/xml/GskRenderer.xml 0000664 0001750 0001750 00000060147 13724234625 021234 0 ustar mclasen mclasen
]>
GskRenderer3GSK4 LibraryGskRendererRenders a sceneFunctionsGdkSurface *
gsk_renderer_get_surface ()gbooleangsk_renderer_realize ()voidgsk_renderer_unrealize ()gbooleangsk_renderer_is_realized ()voidgsk_renderer_render ()GdkTexture *
gsk_renderer_render_texture ()GskRenderer *
gsk_renderer_new_for_surface ()GskRenderer *
gsk_gl_renderer_new ()GskRenderer *
gsk_cairo_renderer_new ()GskRenderer *
gsk_vulkan_renderer_new ()GskRenderer *
gsk_broadway_renderer_new ()PropertiesgbooleanrealizedReadGdkSurface *surfaceReadTypes and ValuesGskRendererObject Hierarchy GObject
╰── GskRenderer
DescriptionGskRenderer is a class that renders a scene graph defined via a
tree of GskRenderNode instances.Typically you will use a GskRenderer instance to repeatedly call
gsk_renderer_render() to update the contents of its associated GdkSurface.It is necessary to realize a GskRenderer instance using gsk_renderer_realize()
before calling gsk_renderer_render(), in order to create the appropriate
windowing system resources needed to render the scene.Functionsgsk_renderer_get_surface ()gsk_renderer_get_surfaceGdkSurface *
gsk_renderer_get_surface (GskRenderer *renderer);Retrieves the GdkSurface set using gsk_renderer_realize(). If the renderer
has not been realized yet, NULL will be returned.Parametersrenderera GskRendererReturnsa GdkSurface. [transfer none][nullable]gsk_renderer_realize ()gsk_renderer_realizegboolean
gsk_renderer_realize (GskRenderer *renderer,
GdkSurface *surface,
GError **error);Creates the resources needed by the renderer
to render the scene
graph.Parametersrenderera GskRenderersurfacethe GdkSurface renderer will be used onerrorreturn location for an errorgsk_renderer_unrealize ()gsk_renderer_unrealizevoid
gsk_renderer_unrealize (GskRenderer *renderer);Releases all the resources created by gsk_renderer_realize().Parametersrenderera GskRenderergsk_renderer_is_realized ()gsk_renderer_is_realizedgboolean
gsk_renderer_is_realized (GskRenderer *renderer);Checks whether the renderer
is realized or not.Parametersrenderera GskRendererReturnsTRUE if the GskRenderer was realized, and FALSE otherwisegsk_renderer_render ()gsk_renderer_rendervoid
gsk_renderer_render (GskRenderer *renderer,
GskRenderNode *root,
const cairo_region_t *region);Renders the scene graph, described by a tree of GskRenderNode instances,
ensuring that the given region
gets redrawn.Renderers must ensure that changes of the contents given by the root
node as well as the area given by region
are redrawn. They are however
free to not redraw any pixel outside of region
if they can guarantee that
it didn't change.The renderer
will acquire a reference on the GskRenderNode tree while
the rendering is in progress.Parametersrenderera GskRendererroota GskRenderNoderegionthe cairo_region_t that must be redrawn or NULL
for the whole window. [nullable]gsk_renderer_render_texture ()gsk_renderer_render_textureGdkTexture *
gsk_renderer_render_texture (GskRenderer *renderer,
GskRenderNode *root,
const graphene_rect_t *viewport);Renders the scene graph, described by a tree of GskRenderNode instances,
to a GdkTexture.The renderer
will acquire a reference on the GskRenderNode tree while
the rendering is in progress.If you want to apply any transformations to root
, you should put it into a
transform node and pass that node instead.Parametersrenderera realized GskRendererroota GskRenderNodeviewportthe section to draw or NULL to use root
's bounds. [allow-none]Returnsa GdkTexture with the rendered contents of root
. [transfer full]gsk_renderer_new_for_surface ()gsk_renderer_new_for_surfaceGskRenderer *
gsk_renderer_new_for_surface (GdkSurface *surface);Creates an appropriate GskRenderer instance for the given surface
.The renderer will be realized when it is returned.Parameterssurfacea GdkSurfaceReturnsa GskRenderer. [transfer full][nullable]gsk_gl_renderer_new ()gsk_gl_renderer_newGskRenderer *
gsk_gl_renderer_new (void);Creates a new GskRenderer using OpenGL. This is the default renderer
used by GTK.Returns a new GL renderergsk_cairo_renderer_new ()gsk_cairo_renderer_newGskRenderer *
gsk_cairo_renderer_new (void);Creates a new Cairo renderer.The Cairo renderer is the fallback renderer drawing in ways similar
to how GTK 3 drew its content. Its primary use is as comparison tool.The Cairo renderer is incomplete. It cannot render 3D transformed
content and will instead render an error marker. Its usage should be
avoided.Returns a new Cairo renderer.gsk_vulkan_renderer_new ()gsk_vulkan_renderer_newGskRenderer *
gsk_vulkan_renderer_new (void);Creates a new Vulkan renderer.The Vulkan renderer is a renderer that uses the Vulkan library for
rendering.This function is only available when GTK was compiled with Vulkan
support.Returns a new Vulkan renderergsk_broadway_renderer_new ()gsk_broadway_renderer_newGskRenderer *
gsk_broadway_renderer_new (void);Creates a new Broadway renderer.The Broadway renderer is the default renderer for the broadway backend.
It will only work with broadway surfaces, otherwise it will fail the
call to gsk_renderer_realize().This function is only available when GTK was compiled with Broadway
support.Returns a new Broadway renderer.Types and ValuesGskRendererGskRenderertypedef struct _GskRenderer GskRenderer;Property DetailsThe “realized” propertyGskRenderer:realized “realized” gbooleanThe renderer has been associated with a surface.Owner: GskRendererFlags: ReadDefault value: FALSEThe “surface” propertyGskRenderer:surface “surface” GdkSurface *The surface associated to the renderer.Owner: GskRendererFlags: Read
build/docs/reference/gsk/xml/GskRenderNode.xml 0000664 0001750 0001750 00000623524 13724234625 021517 0 ustar mclasen mclasen
]>
GskRenderNode3GSK4 LibraryGskRenderNodeSimple scene graph elementFunctionsGskRenderNode *
gsk_render_node_ref ()voidgsk_render_node_unref ()GskRenderNodeTypegsk_render_node_get_node_type ()voidgsk_render_node_draw ()void(*GskParseErrorFunc)()GBytes *
gsk_render_node_serialize ()GskRenderNode *
gsk_render_node_deserialize ()gbooleangsk_render_node_write_to_file ()voidgsk_render_node_get_bounds ()GskRenderNode *
gsk_color_node_new ()const GdkRGBA *
gsk_color_node_peek_color ()GskRenderNode *
gsk_texture_node_new ()GdkTexture *
gsk_texture_node_get_texture ()GskRenderNode *
gsk_linear_gradient_node_new ()const graphene_point_t *
gsk_linear_gradient_node_peek_start ()const graphene_point_t *
gsk_linear_gradient_node_peek_end ()gsizegsk_linear_gradient_node_get_n_color_stops ()const GskColorStop *
gsk_linear_gradient_node_peek_color_stops ()GskRenderNode *
gsk_repeating_linear_gradient_node_new ()GskRenderNode *
gsk_border_node_new ()const GskRoundedRect *
gsk_border_node_peek_outline ()const float *
gsk_border_node_peek_widths ()const GdkRGBA *
gsk_border_node_peek_colors ()GskRenderNode *
gsk_inset_shadow_node_new ()const GskRoundedRect *
gsk_inset_shadow_node_peek_outline ()const GdkRGBA *
gsk_inset_shadow_node_peek_color ()floatgsk_inset_shadow_node_get_dx ()floatgsk_inset_shadow_node_get_dy ()floatgsk_inset_shadow_node_get_spread ()floatgsk_inset_shadow_node_get_blur_radius ()GskRenderNode *
gsk_outset_shadow_node_new ()const GskRoundedRect *
gsk_outset_shadow_node_peek_outline ()const GdkRGBA *
gsk_outset_shadow_node_peek_color ()floatgsk_outset_shadow_node_get_dx ()floatgsk_outset_shadow_node_get_dy ()floatgsk_outset_shadow_node_get_spread ()floatgsk_outset_shadow_node_get_blur_radius ()GskRenderNode *
gsk_cairo_node_new ()cairo_t *
gsk_cairo_node_get_draw_context ()cairo_surface_t *
gsk_cairo_node_peek_surface ()GskRenderNode *
gsk_container_node_new ()guintgsk_container_node_get_n_children ()GskRenderNode *
gsk_container_node_get_child ()GskRenderNode *
gsk_transform_node_new ()GskRenderNode *
gsk_transform_node_get_child ()GskTransform *
gsk_transform_node_get_transform ()GskRenderNode *
gsk_opacity_node_new ()GskRenderNode *
gsk_opacity_node_get_child ()floatgsk_opacity_node_get_opacity ()GskRenderNode *
gsk_color_matrix_node_new ()GskRenderNode *
gsk_color_matrix_node_get_child ()const graphene_matrix_t *
gsk_color_matrix_node_peek_color_matrix ()const graphene_vec4_t *
gsk_color_matrix_node_peek_color_offset ()GskRenderNode *
gsk_repeat_node_new ()GskRenderNode *
gsk_repeat_node_get_child ()const graphene_rect_t *
gsk_repeat_node_peek_child_bounds ()GskRenderNode *
gsk_clip_node_new ()GskRenderNode *
gsk_clip_node_get_child ()const graphene_rect_t *
gsk_clip_node_peek_clip ()GskRenderNode *
gsk_rounded_clip_node_new ()GskRenderNode *
gsk_rounded_clip_node_get_child ()const GskRoundedRect *
gsk_rounded_clip_node_peek_clip ()GskRenderNode *
gsk_shadow_node_new ()const GskShadow *
gsk_shadow_node_peek_shadow ()gsizegsk_shadow_node_get_n_shadows ()GskRenderNode *
gsk_shadow_node_get_child ()GskRenderNode *
gsk_blend_node_new ()GskRenderNode *
gsk_blend_node_get_bottom_child ()GskRenderNode *
gsk_blend_node_get_top_child ()GskBlendModegsk_blend_node_get_blend_mode ()GskRenderNode *
gsk_cross_fade_node_new ()GskRenderNode *
gsk_cross_fade_node_get_start_child ()GskRenderNode *
gsk_cross_fade_node_get_end_child ()floatgsk_cross_fade_node_get_progress ()GskRenderNode *
gsk_text_node_new ()PangoFont *
gsk_text_node_peek_font ()const PangoGlyphInfo *
gsk_text_node_peek_glyphs ()const GdkRGBA *
gsk_text_node_peek_color ()gbooleangsk_text_node_has_color_glyphs ()guintgsk_text_node_get_num_glyphs ()const graphene_point_t *
gsk_text_node_get_offset ()GskRenderNode *
gsk_blur_node_new ()GskRenderNode *
gsk_blur_node_get_child ()floatgsk_blur_node_get_radius ()GskRenderNode *
gsk_debug_node_new ()GskRenderNode *
gsk_debug_node_get_child ()const char *
gsk_debug_node_get_message ()Types and ValuesGskRenderNodeGskBlendNodeGskBlurNodeGskBorderNodeGskCairoNodeGskClipNodeGskColorMatrixNodeGskColorNodeGskContainerNodeGskCrossFadeNodeGskDebugNodeGskInsetShadowNodeGskLinearGradientNodeGskOpacityNodeGskOutsetShadowNodeGskRepeatingLinearGradientNodeGskRepeatNodeGskRoundedClipNodeGskShadowNodeGskTextNodeGskTextureNodeGskTransformNodeenumGskRenderNodeTypeenumGskSerializationErrorenumGskScalingFilterstructGskColorStopstructGskShadowenumGskBlendModeObject Hierarchy GskRenderNode
DescriptionGskRenderNode is the basic block in a scene graph to be
rendered using GskRenderer.Each node has a parent, except the top-level node; each node may have
children nodes.Each node has an associated drawing surface, which has the size of
the rectangle set using gsk_render_node_set_bounds().Render nodes are meant to be transient; once they have been associated
to a GskRenderer it's safe to release any reference you have on them.
All GskRenderNodes are immutable, you can only specify their properties
during construction.Functionsgsk_render_node_ref ()gsk_render_node_refGskRenderNode *
gsk_render_node_ref (GskRenderNode *node);Acquires a reference on the given GskRenderNode.Parametersnodea GskRenderNodeReturnsthe GskRenderNode with an additional reference. [transfer full]gsk_render_node_unref ()gsk_render_node_unrefvoid
gsk_render_node_unref (GskRenderNode *node);Releases a reference on the given GskRenderNode.If the reference was the last, the resources associated to the node
are
freed.Parametersnodea GskRenderNode. [transfer full]gsk_render_node_get_node_type ()gsk_render_node_get_node_typeGskRenderNodeType
gsk_render_node_get_node_type (GskRenderNode *node);Returns the type of the node
.Parametersnodea GskRenderNodeReturns the type of the GskRenderNodegsk_render_node_draw ()gsk_render_node_drawvoid
gsk_render_node_draw (GskRenderNode *node,
cairo_t *cr);Draw the contents of node
to the given cairo context.Typically, you'll use this function to implement fallback rendering
of GskRenderNodes on an intermediate Cairo context, instead of using
the drawing context associated to a GdkSurface's rendering buffer.For advanced nodes that cannot be supported using Cairo, in particular
for nodes doing 3D operations, this function may fail.Parametersnodea GskRenderNodecrcairo context to draw toGskParseErrorFunc ()GskParseErrorFuncvoid(*GskParseErrorFunc) (const GtkCssSection *section,
const GError *error,
gpointer user_data);The type of callback that is called when a parse error occurs
during deserialization of node data.Parameterssectionthe GtkCssSection where the error occurrederrorthe erroruser_datauser datagsk_render_node_serialize ()gsk_render_node_serializeGBytes *
gsk_render_node_serialize (GskRenderNode *node);Serializes the node
for later deserialization via
gsk_render_node_deserialize(). No guarantees are made about the format
used other than that the same version of GTK+ will be able to deserialize
the result of a call to gsk_render_node_serialize() and
gsk_render_node_deserialize() will correctly reject files it cannot open
that were created with previous versions of GTK+.The intended use of this functions is testing, benchmarking and debugging.
The format is not meant as a permanent storage format.Parametersnodea GskRenderNodeReturns a GBytes representing the node.gsk_render_node_deserialize ()gsk_render_node_deserializeGskRenderNode *
gsk_render_node_deserialize (GBytes *bytes,
GskParseErrorFunc error_func,
gpointer user_data);Loads data previously created via gsk_render_node_serialize(). For a
discussion of the supported format, see that function.Parametersbytesthe bytes containing the dataerror_funcCallback on parsing errors or NULL. [nullable][scope call]user_datauser_data for error_func
. [closure error_func]Returnsa new GskRenderNode or NULL on
error. [nullable][transfer full]gsk_render_node_write_to_file ()gsk_render_node_write_to_filegboolean
gsk_render_node_write_to_file (GskRenderNode *node,
const char *filename,
GError **error);This function is equivalent to calling gsk_render_node_serialize()
followed by g_file_set_contents(). See those two functions for details
on the arguments.It is mostly intended for use inside a debugger to quickly dump a render
node to a file for later inspection.Parametersnodea GskRenderNodefilenamethe file to save it to.errorReturn location for a potential errorReturnsTRUE if saving was successfulgsk_render_node_get_bounds ()gsk_render_node_get_boundsvoid
gsk_render_node_get_bounds (GskRenderNode *node,
graphene_rect_t *bounds);Retrieves the boundaries of the node
. The node will not draw outside
of its boundaries.Parametersnodea GskRenderNodeboundsreturn location for the boundaries. [out caller-allocates]gsk_color_node_new ()gsk_color_node_newGskRenderNode *
gsk_color_node_new (const GdkRGBA *rgba,
const graphene_rect_t *bounds);Creates a GskRenderNode that will render the color specified by rgba
into
the area given by bounds
.Parametersrgbaa GdkRGBA specifying a colorboundsthe rectangle to render the color intoReturnsA new GskRenderNode. [transfer full][type GskColorNode]gsk_color_node_peek_color ()gsk_color_node_peek_colorconst GdkRGBA *
gsk_color_node_peek_color (GskRenderNode *node);Retrieves the color of the given node
.Parametersnodea GskColorNode. [type GskColorNode]Returnsthe color of the node. [transfer none]gsk_texture_node_new ()gsk_texture_node_newGskRenderNode *
gsk_texture_node_new (GdkTexture *texture,
const graphene_rect_t *bounds);Creates a GskRenderNode that will render the given
texture
into the area given by bounds
.Parameterstexturethe GdkTextureboundsthe rectangle to render the texture intoReturnsA new GskRenderNode. [transfer full][type GskTextureNode]gsk_texture_node_get_texture ()gsk_texture_node_get_textureGdkTexture *
gsk_texture_node_get_texture (GskRenderNode *node);Retrieves the GdkTexture used when creating this GskRenderNode.Parametersnodea GskRenderNode of type GSK_TEXTURE_NODE. [type GskTextureNode]Returnsthe GdkTexture. [transfer none]gsk_linear_gradient_node_new ()gsk_linear_gradient_node_newGskRenderNode *
gsk_linear_gradient_node_new (const graphene_rect_t *bounds,
const graphene_point_t *start,
const graphene_point_t *end,
const GskColorStop *color_stops,
gsize n_color_stops);Creates a GskRenderNode that will create a linear gradient from the given
points and color stops, and render that into the area given by bounds
.Parametersboundsthe rectangle to render the linear gradient intostartthe point at which the linear gradient will beginendthe point at which the linear gradient will finishcolor_stopsa pointer to an array of GskColorStop defining the gradient. [array length=n_color_stops]n_color_stopsthe number of elements in color_stopsReturnsA new GskRenderNode. [transfer full][type GskLinearGradientNode]gsk_linear_gradient_node_peek_start ()gsk_linear_gradient_node_peek_startconst graphene_point_t *
gsk_linear_gradient_node_peek_start (GskRenderNode *node);Retrieves the initial point of the linear gradient.Parametersnodea GskRenderNode for a linear gradient. [type GskLinearGradientNode]Returnsthe initial point. [transfer none]gsk_linear_gradient_node_peek_end ()gsk_linear_gradient_node_peek_endconst graphene_point_t *
gsk_linear_gradient_node_peek_end (GskRenderNode *node);Retrieves the final point of the linear gradient.Parametersnodea GskRenderNode for a linear gradient. [type GskLinearGradientNode]Returnsthe final point. [transfer none]gsk_linear_gradient_node_get_n_color_stops ()gsk_linear_gradient_node_get_n_color_stopsgsize
gsk_linear_gradient_node_get_n_color_stops
(GskRenderNode *node);Retrieves the number of color stops in the gradient.Parametersnodea GskRenderNode for a linear gradient. [type GskLinearGradientNode]Returns the number of color stopsgsk_linear_gradient_node_peek_color_stops ()gsk_linear_gradient_node_peek_color_stopsconst GskColorStop *
gsk_linear_gradient_node_peek_color_stops
(GskRenderNode *node,
gsize *n_stops);Retrieves the color stops in the gradient.Parametersnodea GskRenderNode for a linear gradient. [type GskLinearGradientNode]n_stopsthe number of color stops in the returned array. [out][optional]Returnsthe color stops in the gradient. [array length=n_stops]gsk_repeating_linear_gradient_node_new ()gsk_repeating_linear_gradient_node_newGskRenderNode *
gsk_repeating_linear_gradient_node_new
(const graphene_rect_t *bounds,
const graphene_point_t *start,
const graphene_point_t *end,
const GskColorStop *color_stops,
gsize n_color_stops);Creates a GskRenderNode that will create a repeating linear gradient
from the given points and color stops, and render that into the area
given by bounds
.Parametersboundsthe rectangle to render the linear gradient intostartthe point at which the linear gradient will beginendthe point at which the linear gradient will finishcolor_stopsa pointer to an array of GskColorStop defining the gradient. [array length=n_color_stops]n_color_stopsthe number of elements in color_stopsReturnsA new GskRenderNode. [transfer full][type GskRepeatingLinearGradientNode]gsk_border_node_new ()gsk_border_node_newGskRenderNode *
gsk_border_node_new (const GskRoundedRect *outline,
const float border_width[4],
const GdkRGBA border_color[4]);Creates a GskRenderNode that will stroke a border rectangle inside the
given outline
. The 4 sides of the border can have different widths and
colors.Parametersoutlinea GskRoundedRect describing the outline of the borderborder_widththe stroke width of the border on
the top, right, bottom and left side respectively. [array fixed-size=4]border_colorthe color used on the top, right,
bottom and left side. [array fixed-size=4]ReturnsA new GskRenderNode. [transfer full][type GskBorderNode]gsk_border_node_peek_outline ()gsk_border_node_peek_outlineconst GskRoundedRect *
gsk_border_node_peek_outline (GskRenderNode *node);Retrieves the outline of the border.Parametersnodea GskRenderNode for a border. [type GskBorderNode]Returns the outline of the bordergsk_border_node_peek_widths ()gsk_border_node_peek_widthsconst float *
gsk_border_node_peek_widths (GskRenderNode *node);Retrieves the stroke widths of the border.Parametersnodea GskRenderNode for a border. [type GskBorderNode]Returnsan array of 4 floats for the top,
right, bottom and left stroke width of the border. [transfer none]gsk_border_node_peek_colors ()gsk_border_node_peek_colorsconst GdkRGBA *
gsk_border_node_peek_colors (GskRenderNode *node);Retrieves the colors of the border.Parametersnodea GskRenderNode for a border. [type GskBorderNode]Returnsan array of 4 GdkRGBA structs
for the top, right, bottom and left color of the border. [transfer none]gsk_inset_shadow_node_new ()gsk_inset_shadow_node_newGskRenderNode *
gsk_inset_shadow_node_new (const GskRoundedRect *outline,
const GdkRGBA *color,
float dx,
float dy,
float spread,
float blur_radius);Creates a GskRenderNode that will render an inset shadow
into the box given by outline
.Parametersoutlineoutline of the region containing the shadowcolorcolor of the shadowdxhorizontal offset of shadowdyvertical offset of shadowspreadhow far the shadow spreads towards the insideblur_radiushow much blur to apply to the shadowReturnsA new GskRenderNode. [transfer full][type GskInsetShadowNode]gsk_inset_shadow_node_peek_outline ()gsk_inset_shadow_node_peek_outlineconst GskRoundedRect *
gsk_inset_shadow_node_peek_outline (GskRenderNode *node);Retrieves the outline rectangle of the inset shadow.Parametersnodea GskRenderNode for an inset shadow. [type GskInsetShadowNode]Returnsa rounded rectangle. [transfer none]gsk_inset_shadow_node_peek_color ()gsk_inset_shadow_node_peek_colorconst GdkRGBA *
gsk_inset_shadow_node_peek_color (GskRenderNode *node);Retrieves the color of the inset shadow.Parametersnodea GskRenderNode for an inset shadow. [type GskInsetShadowNode]Returnsthe color of the shadow. [transfer none]gsk_inset_shadow_node_get_dx ()gsk_inset_shadow_node_get_dxfloat
gsk_inset_shadow_node_get_dx (GskRenderNode *node);Retrieves the horizontal offset of the inset shadow.Parametersnodea GskRenderNode for an inset shadow. [type GskInsetShadowNode]Returns an offset, in pixelsgsk_inset_shadow_node_get_dy ()gsk_inset_shadow_node_get_dyfloat
gsk_inset_shadow_node_get_dy (GskRenderNode *node);Retrieves the vertical offset of the inset shadow.Parametersnodea GskRenderNode for an inset shadow. [type GskInsetShadowNode]Returns an offset, in pixelsgsk_inset_shadow_node_get_spread ()gsk_inset_shadow_node_get_spreadfloat
gsk_inset_shadow_node_get_spread (GskRenderNode *node);Retrieves how much the shadow spreads inwards.Parametersnodea GskRenderNode for an inset shadow. [type GskInsetShadowNode]Returns the size of the shadow, in pixelsgsk_inset_shadow_node_get_blur_radius ()gsk_inset_shadow_node_get_blur_radiusfloat
gsk_inset_shadow_node_get_blur_radius (GskRenderNode *node);Retrieves the blur radius to apply to the shadow.Parametersnodea GskRenderNode for an inset shadow. [type GskInsetShadowNode]Returns the blur radius, in pixelsgsk_outset_shadow_node_new ()gsk_outset_shadow_node_newGskRenderNode *
gsk_outset_shadow_node_new (const GskRoundedRect *outline,
const GdkRGBA *color,
float dx,
float dy,
float spread,
float blur_radius);Creates a GskRenderNode that will render an outset shadow
around the box given by outline
.Parametersoutlineoutline of the region surrounded by shadowcolorcolor of the shadowdxhorizontal offset of shadowdyvertical offset of shadowspreadhow far the shadow spreads towards the insideblur_radiushow much blur to apply to the shadowReturnsA new GskRenderNode. [transfer full][type GskOutsetShadowNode]gsk_outset_shadow_node_peek_outline ()gsk_outset_shadow_node_peek_outlineconst GskRoundedRect *
gsk_outset_shadow_node_peek_outline (GskRenderNode *node);Retrieves the outline rectangle of the outset shadow.Parametersnodea GskRenderNode for an outset shadow. [type GskOutsetShadowNode]Returnsa rounded rectangle. [transfer none]gsk_outset_shadow_node_peek_color ()gsk_outset_shadow_node_peek_colorconst GdkRGBA *
gsk_outset_shadow_node_peek_color (GskRenderNode *node);Retrieves the color of the outset shadow.Parametersnodea GskRenderNode for an outset shadow. [type GskOutsetShadowNode]Returnsa color. [transfer none]gsk_outset_shadow_node_get_dx ()gsk_outset_shadow_node_get_dxfloat
gsk_outset_shadow_node_get_dx (GskRenderNode *node);Retrieves the horizontal offset of the outset shadow.Parametersnodea GskRenderNode for an outset shadow. [type GskOutsetShadowNode]Returns an offset, in pixelsgsk_outset_shadow_node_get_dy ()gsk_outset_shadow_node_get_dyfloat
gsk_outset_shadow_node_get_dy (GskRenderNode *node);Retrieves the vertical offset of the outset shadow.Parametersnodea GskRenderNode for an outset shadow. [type GskOutsetShadowNode]Returns an offset, in pixelsgsk_outset_shadow_node_get_spread ()gsk_outset_shadow_node_get_spreadfloat
gsk_outset_shadow_node_get_spread (GskRenderNode *node);Retrieves how much the shadow spreads outwards.Parametersnodea GskRenderNode for an outset shadow. [type GskOutsetShadowNode]Returns the size of the shadow, in pixelsgsk_outset_shadow_node_get_blur_radius ()gsk_outset_shadow_node_get_blur_radiusfloat
gsk_outset_shadow_node_get_blur_radius
(GskRenderNode *node);Retrieves the blur radius of the shadow.Parametersnodea GskRenderNode for an outset shadow. [type GskOutsetShadowNode]Returns the blur radius, in pixelsgsk_cairo_node_new ()gsk_cairo_node_newGskRenderNode *
gsk_cairo_node_new (const graphene_rect_t *bounds);Creates a GskRenderNode that will render a cairo surface
into the area given by bounds
. You can draw to the cairo
surface using gsk_cairo_node_get_draw_context()Parametersboundsthe rectangle to render toReturnsA new GskRenderNode. [transfer full][type GskCairoNode]gsk_cairo_node_get_draw_context ()gsk_cairo_node_get_draw_contextcairo_t *
gsk_cairo_node_get_draw_context (GskRenderNode *node);Creates a Cairo context for drawing using the surface associated
to the render node.If no surface exists yet, a surface will be created optimized for
rendering to renderer
.Parametersnodea GskRenderNode for a Cairo surface. [type GskCairoNode]Returnsa Cairo context used for drawing; use
cairo_destroy() when done drawing. [transfer full]gsk_cairo_node_peek_surface ()gsk_cairo_node_peek_surfacecairo_surface_t *
gsk_cairo_node_peek_surface (GskRenderNode *node);Retrieves the Cairo surface used by the render node.Parametersnodea GskRenderNode for a Cairo surface. [type GskCairoNode]Returnsa Cairo surface. [transfer none]gsk_container_node_new ()gsk_container_node_newGskRenderNode *
gsk_container_node_new (GskRenderNode **children,
guint n_children);Creates a new GskRenderNode instance for holding the given children
.
The new node will acquire a reference to each of the children.ParameterschildrenThe children of the node. [array length=n_children][transfer none]n_childrenNumber of children in the children
arrayReturnsthe new GskRenderNode. [transfer full][type GskContainerNode]gsk_container_node_get_n_children ()gsk_container_node_get_n_childrenguint
gsk_container_node_get_n_children (GskRenderNode *node);Retrieves the number of direct children of node
.Parametersnodea container GskRenderNode. [type GskContainerNode]Returns the number of children of the GskRenderNodegsk_container_node_get_child ()gsk_container_node_get_childGskRenderNode *
gsk_container_node_get_child (GskRenderNode *node,
guint idx);Gets one of the children of container
.Parametersnodea container GskRenderNode. [type GskContainerNode]idxthe position of the child to getReturnsthe idx
'th child of container
. [transfer none]gsk_transform_node_new ()gsk_transform_node_newGskRenderNode *
gsk_transform_node_new (GskRenderNode *child,
GskTransform *transform);Creates a GskRenderNode that will transform the given child
with the given transform
.ParameterschildThe node to transformtransformThe transform to apply. [transfer none]ReturnsA new GskRenderNode. [transfer full][type GskTransformNode]gsk_transform_node_get_child ()gsk_transform_node_get_childGskRenderNode *
gsk_transform_node_get_child (GskRenderNode *node);Gets the child node that is getting transformed by the given node
.Parametersnodea GskRenderNode for a transform. [type GskTransformNode]ReturnsThe child that is getting transformed. [transfer none]gsk_transform_node_get_transform ()gsk_transform_node_get_transformGskTransform *
gsk_transform_node_get_transform (GskRenderNode *node);Retrieves the GskTransform used by the node
.Parametersnodea GskRenderNode for a transform. [type GskTransformNode]Returnsa GskTransform. [transfer none]gsk_opacity_node_new ()gsk_opacity_node_newGskRenderNode *
gsk_opacity_node_new (GskRenderNode *child,
float opacity);Creates a GskRenderNode that will drawn the child
with reduced
opacity
.ParameterschildThe node to drawopacityThe opacity to applyReturnsA new GskRenderNode. [transfer full][type GskOpacityNode]gsk_opacity_node_get_child ()gsk_opacity_node_get_childGskRenderNode *
gsk_opacity_node_get_child (GskRenderNode *node);Gets the child node that is getting opacityed by the given node
.Parametersnodea GskRenderNode for an opacity. [type GskOpacityNode]ReturnsThe child that is getting opacityed. [transfer none]gsk_opacity_node_get_opacity ()gsk_opacity_node_get_opacityfloat
gsk_opacity_node_get_opacity (GskRenderNode *node);Gets the transparency factor for an opacity node.Parametersnodea GskRenderNode for an opacity. [type GskOpacityNode]Returns the opacity factorgsk_color_matrix_node_new ()gsk_color_matrix_node_newGskRenderNode *
gsk_color_matrix_node_new (GskRenderNode *child,
const graphene_matrix_t *color_matrix,
const graphene_vec4_t *color_offset);Creates a GskRenderNode that will drawn the child
with reduced
color_matrix
.In particular, the node will transform the operationfor every pixel.ParameterschildThe node to drawcolor_matrixThe matrix to applycolor_offsetValues to add to the colorReturnsA new GskRenderNode. [transfer full][type GskColorMatrixNode]gsk_color_matrix_node_get_child ()gsk_color_matrix_node_get_childGskRenderNode *
gsk_color_matrix_node_get_child (GskRenderNode *node);Gets the child node that is getting its colors modified by the given node
.Parametersnodea color matrix GskRenderNode. [type GskColorMatrixNode]ReturnsThe child that is getting its colors modified. [transfer none]gsk_color_matrix_node_peek_color_matrix ()gsk_color_matrix_node_peek_color_matrixconst graphene_matrix_t *
gsk_color_matrix_node_peek_color_matrix
(GskRenderNode *node);Retrieves the color matrix used by the node
.Parametersnodea color matrix GskRenderNode. [type GskColorMatrixNode]Returns a 4x4 color matrixgsk_color_matrix_node_peek_color_offset ()gsk_color_matrix_node_peek_color_offsetconst graphene_vec4_t *
gsk_color_matrix_node_peek_color_offset
(GskRenderNode *node);Retrieves the color offset used by the node
.Parametersnodea color matrix GskRenderNode. [type GskColorMatrixNode]Returns a color vectorgsk_repeat_node_new ()gsk_repeat_node_newGskRenderNode *
gsk_repeat_node_new (const graphene_rect_t *bounds,
GskRenderNode *child,
const graphene_rect_t *child_bounds);Creates a GskRenderNode that will repeat the drawing of child
across
the given bounds
.ParametersboundsThe bounds of the area to be paintedchildThe child to repeatchild_boundsThe area of the child to repeat or NULL to
use the child's bounds. [allow-none]ReturnsA new GskRenderNode. [transfer full][type GskRepeatNode]gsk_repeat_node_get_child ()gsk_repeat_node_get_childGskRenderNode *
gsk_repeat_node_get_child (GskRenderNode *node);Retrieves the child of node
.Parametersnodea repeat GskRenderNode. [type GskRepeatNode]Returnsa GskRenderNode. [transfer none]gsk_repeat_node_peek_child_bounds ()gsk_repeat_node_peek_child_boundsconst graphene_rect_t *
gsk_repeat_node_peek_child_bounds (GskRenderNode *node);Retrieves the bounding rectangle of the child of node
.Parametersnodea repeat GskRenderNode. [type GskRepeatNode]Returnsa bounding rectangle. [transfer none]gsk_clip_node_new ()gsk_clip_node_newGskRenderNode *
gsk_clip_node_new (GskRenderNode *child,
const graphene_rect_t *clip);Creates a GskRenderNode that will clip the child
to the area
given by clip
.ParameterschildThe node to drawclipThe clip to applyReturnsA new GskRenderNode. [transfer full][type GskClipNode]gsk_clip_node_get_child ()gsk_clip_node_get_childGskRenderNode *
gsk_clip_node_get_child (GskRenderNode *node);Gets the child node that is getting clipped by the given node
.Parametersnodea clip GskRenderNode
. [type GskClipNode]ReturnsThe child that is getting clipped. [transfer none]gsk_clip_node_peek_clip ()gsk_clip_node_peek_clipconst graphene_rect_t *
gsk_clip_node_peek_clip (GskRenderNode *node);Retrieves the clip rectangle for node
.Parametersnodea GskClipNode. [type GskClipNode]Returns a clip rectanglegsk_rounded_clip_node_new ()gsk_rounded_clip_node_newGskRenderNode *
gsk_rounded_clip_node_new (GskRenderNode *child,
const GskRoundedRect *clip);Creates a GskRenderNode that will clip the child
to the area
given by clip
.ParameterschildThe node to drawclipThe clip to applyReturnsA new GskRenderNode. [transfer none][type GskRoundedClipNode]gsk_rounded_clip_node_get_child ()gsk_rounded_clip_node_get_childGskRenderNode *
gsk_rounded_clip_node_get_child (GskRenderNode *node);Gets the child node that is getting clipped by the given node
.Parametersnodea rounded clip GskRenderNode. [type GskRoundedClipNode]ReturnsThe child that is getting clipped. [transfer none]gsk_rounded_clip_node_peek_clip ()gsk_rounded_clip_node_peek_clipconst GskRoundedRect *
gsk_rounded_clip_node_peek_clip (GskRenderNode *node);Retrievs the rounded rectangle used to clip the contents of the node
.Parametersnodea rounded clip GskRenderNode. [type GskRoundedClipNode]Returnsa rounded rectangle. [transfer none]gsk_shadow_node_new ()gsk_shadow_node_newGskRenderNode *
gsk_shadow_node_new (GskRenderNode *child,
const GskShadow *shadows,
gsize n_shadows);Creates a GskRenderNode that will draw a child
with the given
shadows
below it.ParameterschildThe node to drawshadowsThe shadows to apply. [array length=n_shadows]n_shadowsnumber of entries in the shadows
arrayReturnsA new GskRenderNode. [transfer full][type GskShadowNode]gsk_shadow_node_peek_shadow ()gsk_shadow_node_peek_shadowconst GskShadow *
gsk_shadow_node_peek_shadow (GskRenderNode *node,
gsize i);Retrieves the shadow data at the given index i
.Parametersnodea shadow GskRenderNode. [type GskShadowNode]ithe given indexReturnsthe shadow data. [transfer none]gsk_shadow_node_get_n_shadows ()gsk_shadow_node_get_n_shadowsgsize
gsk_shadow_node_get_n_shadows (GskRenderNode *node);Retrieves the number of shadows in the node
.Parametersnodea shadow GskRenderNode. [type GskShadowNode]Returns the number of shadows.gsk_shadow_node_get_child ()gsk_shadow_node_get_childGskRenderNode *
gsk_shadow_node_get_child (GskRenderNode *node);Retrieves the child GskRenderNode of the shadow node
.Parametersnodea shadow GskRenderNode. [type GskShadowNode]Returnsthe child render node. [transfer none]gsk_blend_node_new ()gsk_blend_node_newGskRenderNode *
gsk_blend_node_new (GskRenderNode *bottom,
GskRenderNode *top,
GskBlendMode blend_mode);Creates a GskRenderNode that will use blend_mode
to blend the top
node onto the bottom
node.ParametersbottomThe bottom node to be drawntopThe node to be blended onto the bottom
nodeblend_modeThe blend mode to useReturnsA new GskRenderNode. [transfer full][type GskBlendNode]gsk_blend_node_get_bottom_child ()gsk_blend_node_get_bottom_childGskRenderNode *
gsk_blend_node_get_bottom_child (GskRenderNode *node);Retrieves the bottom GskRenderNode child of the node
.Parametersnodea blending GskRenderNode. [type GskBlendNode]Returnsthe bottom child node. [transfer none]gsk_blend_node_get_top_child ()gsk_blend_node_get_top_childGskRenderNode *
gsk_blend_node_get_top_child (GskRenderNode *node);Retrieves the top GskRenderNode child of the node
.Parametersnodea blending GskRenderNode. [type GskBlendNode]Returnsthe top child node. [transfer none]gsk_blend_node_get_blend_mode ()gsk_blend_node_get_blend_modeGskBlendMode
gsk_blend_node_get_blend_mode (GskRenderNode *node);Retrieves the blend mode used by node
.Parametersnodea blending GskRenderNode. [type GskBlendNode]Returns the blend modegsk_cross_fade_node_new ()gsk_cross_fade_node_newGskRenderNode *
gsk_cross_fade_node_new (GskRenderNode *start,
GskRenderNode *end,
float progress);Creates a GskRenderNode that will do a cross-fade between start
and end
.ParametersstartThe start node to be drawnendThe node to be cross_fadeed onto the start
nodeprogressHow far the fade has progressed from start to end. The value will
be clamped to the range [0 ... 1]ReturnsA new GskRenderNode. [transfer full][type GskCrossFadeNode]gsk_cross_fade_node_get_start_child ()gsk_cross_fade_node_get_start_childGskRenderNode *
gsk_cross_fade_node_get_start_child (GskRenderNode *node);Retrieves the child GskRenderNode at the beginning of the cross-fade.Parametersnodea cross-fading GskRenderNode. [type GskCrossFadeNode]Returnsa GskRenderNode. [transfer none]gsk_cross_fade_node_get_end_child ()gsk_cross_fade_node_get_end_childGskRenderNode *
gsk_cross_fade_node_get_end_child (GskRenderNode *node);Retrieves the child GskRenderNode at the end of the cross-fade.Parametersnodea cross-fading GskRenderNode. [type GskCrossFadeNode]Returnsa GskRenderNode. [transfer none]gsk_cross_fade_node_get_progress ()gsk_cross_fade_node_get_progressfloat
gsk_cross_fade_node_get_progress (GskRenderNode *node);Retrieves the progress value of the cross fade.Parametersnodea cross-fading GskRenderNode. [type GskCrossFadeNode]Returns the progress value, between 0 and 1gsk_text_node_new ()gsk_text_node_newGskRenderNode *
gsk_text_node_new (PangoFont *font,
PangoGlyphString *glyphs,
const GdkRGBA *color,
const graphene_point_t *offset);Creates a render node that renders the given glyphs,
Note that color
may not be used if the font contains
color glyphs.Parametersfontthe PangoFont containing the glyphsglyphsthe PangoGlyphString to rendercolorthe foreground color to render withoffsetoffset of the baselineReturnsa new GskRenderNode. [nullable][transfer full][type GskTextNode]gsk_text_node_peek_font ()gsk_text_node_peek_fontPangoFont *
gsk_text_node_peek_font (GskRenderNode *node);Returns the font used by the text node
.ParametersnodeThe GskRenderNode. [type GskTextNode]Returnsthe font. [transfer none]gsk_text_node_peek_glyphs ()gsk_text_node_peek_glyphsconst PangoGlyphInfo *
gsk_text_node_peek_glyphs (GskRenderNode *node,
guint *n_glyphs);Retrieves the glyph information in the node
.Parametersnodea text GskRenderNode. [type GskTextNode]n_glyphsthe number of glyphs returned. [out][optional]Returnsthe glyph information. [transfer none][array length=n_glyphs]gsk_text_node_peek_color ()gsk_text_node_peek_colorconst GdkRGBA *
gsk_text_node_peek_color (GskRenderNode *node);Retrieves the color used by the text node
.Parametersnodea text GskRenderNode. [type GskTextNode]Returnsthe text color. [transfer none]gsk_text_node_has_color_glyphs ()gsk_text_node_has_color_glyphsgboolean
gsk_text_node_has_color_glyphs (GskRenderNode *node);Checks whether the text node
has color glyphs.Parametersnodea text GskRenderNode. [type GskTextNode]ReturnsTRUE if the text node has color glyphsgsk_text_node_get_num_glyphs ()gsk_text_node_get_num_glyphsguint
gsk_text_node_get_num_glyphs (GskRenderNode *node);Retrieves the number of glyphs in the text node.Parametersnodea text GskRenderNode. [type GskTextNode]Returns the number of glyphsgsk_text_node_get_offset ()gsk_text_node_get_offsetconst graphene_point_t *
gsk_text_node_get_offset (GskRenderNode *node);Retrieves the offset applied to the text.Parametersnodea text GskRenderNode. [type GskTextNode]Returnsa point with the horizontal and vertical offsets. [transfer none]gsk_blur_node_new ()gsk_blur_node_newGskRenderNode *
gsk_blur_node_new (GskRenderNode *child,
float radius);Creates a render node that blurs the child.Parameterschildthe child node to blurradiusthe blur radiusReturnsa new GskRenderNode. [transfer full][type GskBlurNode]gsk_blur_node_get_child ()gsk_blur_node_get_childGskRenderNode *
gsk_blur_node_get_child (GskRenderNode *node);Retrieves the child GskRenderNode of the blur node
.Parametersnodea blur GskRenderNode. [type GskBlurNode]Returnsthe blurred child node. [transfer none]gsk_blur_node_get_radius ()gsk_blur_node_get_radiusfloat
gsk_blur_node_get_radius (GskRenderNode *node);Retrieves the blur radius of the node
.Parametersnodea blur GskRenderNode. [type GskBlurNode]Returns the blur radiusgsk_debug_node_new ()gsk_debug_node_newGskRenderNode *
gsk_debug_node_new (GskRenderNode *child,
char *message);Creates a GskRenderNode that will add debug information about
the given child
.Adding this node has no visual effect.ParameterschildThe child to add debug info formessageThe debug message. [transfer full]ReturnsA new GskRenderNode. [transfer full][type GskDebugNode]gsk_debug_node_get_child ()gsk_debug_node_get_childGskRenderNode *
gsk_debug_node_get_child (GskRenderNode *node);Gets the child node that is getting drawn by the given node
.Parametersnodea debug GskRenderNode. [type GskDebugNode]Returnsthe child GskRenderNode. [transfer none]gsk_debug_node_get_message ()gsk_debug_node_get_messageconst char *
gsk_debug_node_get_message (GskRenderNode *node);Gets the debug message that was set on this nodeParametersnodea debug GskRenderNode. [type GskDebugNode]ReturnsThe debug message. [transfer none]Types and ValuesGskRenderNodeGskRenderNodetypedef struct _GskRenderNode GskRenderNode;A node in the render tree.GskBlendNodeGskBlendNodetypedef struct _GskBlendNode GskBlendNode;GskBlurNodeGskBlurNodetypedef struct _GskBlurNode GskBlurNode;GskBorderNodeGskBorderNodetypedef struct _GskBorderNode GskBorderNode;GskCairoNodeGskCairoNodetypedef struct _GskCairoNode GskCairoNode;GskClipNodeGskClipNodetypedef struct _GskClipNode GskClipNode;GskColorMatrixNodeGskColorMatrixNodetypedef struct _GskColorMatrixNode GskColorMatrixNode;GskColorNodeGskColorNodetypedef struct _GskColorNode GskColorNode;GskContainerNodeGskContainerNodetypedef struct _GskContainerNode GskContainerNode;GskCrossFadeNodeGskCrossFadeNodetypedef struct _GskCrossFadeNode GskCrossFadeNode;GskDebugNodeGskDebugNodetypedef struct _GskDebugNode GskDebugNode;GskInsetShadowNodeGskInsetShadowNodetypedef struct _GskInsetShadowNode GskInsetShadowNode;GskLinearGradientNodeGskLinearGradientNodetypedef struct _GskLinearGradientNode GskLinearGradientNode;GskOpacityNodeGskOpacityNodetypedef struct _GskOpacityNode GskOpacityNode;GskOutsetShadowNodeGskOutsetShadowNodetypedef struct _GskOutsetShadowNode GskOutsetShadowNode;GskRepeatingLinearGradientNodeGskRepeatingLinearGradientNodetypedef struct _GskRepeatingLinearGradientNode GskRepeatingLinearGradientNode;GskRepeatNodeGskRepeatNodetypedef struct _GskRepeatNode GskRepeatNode;GskRoundedClipNodeGskRoundedClipNodetypedef struct _GskRoundedClipNode GskRoundedClipNode;GskShadowNodeGskShadowNodetypedef struct _GskShadowNode GskShadowNode;GskTextNodeGskTextNodetypedef struct _GskTextNode GskTextNode;GskTextureNodeGskTextureNodetypedef struct _GskTextureNode GskTextureNode;GskTransformNodeGskTransformNodetypedef struct _GskTransformNode GskTransformNode;enum GskRenderNodeTypeGskRenderNodeTypeThe type of a node determines what the node is rendering.MembersGSK_NOT_A_RENDER_NODEError type. No node will ever have this type.GSK_CONTAINER_NODEA node containing a stack of childrenGSK_CAIRO_NODEA node drawing a cairo_surface_tGSK_COLOR_NODEA node drawing a single color rectangleGSK_LINEAR_GRADIENT_NODEA node drawing a linear gradientGSK_REPEATING_LINEAR_GRADIENT_NODEA node drawing a repeating linear gradientGSK_BORDER_NODEA node stroking a border around an areaGSK_TEXTURE_NODEA node drawing a GdkTextureGSK_INSET_SHADOW_NODEA node drawing an inset shadowGSK_OUTSET_SHADOW_NODEA node drawing an outset shadowGSK_TRANSFORM_NODEA node that renders its child after applying a matrix transformGSK_OPACITY_NODEA node that changes the opacity of its childGSK_COLOR_MATRIX_NODEA node that applies a color matrix to every pixelGSK_REPEAT_NODEA node that repeats the child's contentsGSK_CLIP_NODEA node that clips its child to a rectangular areaGSK_ROUNDED_CLIP_NODEA node that clips its child to a rounded rectangleGSK_SHADOW_NODEA node that draws a shadow below its childGSK_BLEND_NODEA node that blends two children togetherGSK_CROSS_FADE_NODEA node that cross-fades between two childrenGSK_TEXT_NODEA node containing a glyph stringGSK_BLUR_NODEA node that applies a blurGSK_DEBUG_NODEDebug information that does not affect the renderingenum GskSerializationErrorGskSerializationErrorErrors that can happen during (de)serialization.MembersGSK_SERIALIZATION_UNSUPPORTED_FORMATThe format can not be
identifiedGSK_SERIALIZATION_UNSUPPORTED_VERSIONThe version of the data
is not understoodGSK_SERIALIZATION_INVALID_DATAThe given data may not exist in
a proper serializationenum GskScalingFilterGskScalingFilterThe filters used when scaling texture data.The actual implementation of each filter is deferred to the
rendering pipeline.MembersGSK_SCALING_FILTER_LINEARlinear interpolation filterGSK_SCALING_FILTER_NEARESTnearest neighbor interpolation filterGSK_SCALING_FILTER_TRILINEARlinear interpolation along each axis,
plus mipmap generation, with linear interpolation along the mipmap
levelsstruct GskColorStopGskColorStopstruct GskColorStop {
float offset;
GdkRGBA color;
};
struct GskShadowGskShadowstruct GskShadow {
GdkRGBA color;
float dx;
float dy;
float radius;
};
enum GskBlendModeGskBlendModeThe 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.MembersGSK_BLEND_MODE_DEFAULTThe default blend mode, which specifies no blendingGSK_BLEND_MODE_MULTIPLYThe source color is multiplied by the destination
and replaces the destinationGSK_BLEND_MODE_SCREENMultiplies the complements of the destination and source
color values, then complements the result.GSK_BLEND_MODE_OVERLAYMultiplies or screens the colors, depending on the
destination color value. This is the inverse of hard-listGSK_BLEND_MODE_DARKENSelects the darker of the destination and source colorsGSK_BLEND_MODE_LIGHTENSelects the lighter of the destination and source colorsGSK_BLEND_MODE_COLOR_DODGEBrightens the destination color to reflect the source colorGSK_BLEND_MODE_COLOR_BURNDarkens the destination color to reflect the source colorGSK_BLEND_MODE_HARD_LIGHTMultiplies or screens the colors, depending on the source color valueGSK_BLEND_MODE_SOFT_LIGHTDarkens or lightens the colors, depending on the source color valueGSK_BLEND_MODE_DIFFERENCESubtracts the darker of the two constituent colors from the lighter colorGSK_BLEND_MODE_EXCLUSIONProduces an effect similar to that of the difference mode but lower in contrastGSK_BLEND_MODE_COLORCreates a color with the hue and saturation of the source color and the luminosity of the destination colorGSK_BLEND_MODE_HUECreates a color with the hue of the source color and the saturation and luminosity of the destination colorGSK_BLEND_MODE_SATURATIONCreates a color with the saturation of the source color and the hue and luminosity of the destination colorGSK_BLEND_MODE_LUMINOSITYCreates a color with the luminosity of the source color and the hue and saturation of the destination color
build/docs/reference/gsk/xml/GskRoundedRect.xml 0000664 0001750 0001750 00000100143 13724234625 021673 0 ustar mclasen mclasen
]>
GskRoundedRect3GSK4 LibraryGskRoundedRectA rounded rectangleFunctions#defineGSK_ROUNDED_RECT_INIT()GskRoundedRect *
gsk_rounded_rect_init ()GskRoundedRect *
gsk_rounded_rect_init_copy ()GskRoundedRect *
gsk_rounded_rect_init_from_rect ()GskRoundedRect *
gsk_rounded_rect_normalize ()GskRoundedRect *
gsk_rounded_rect_offset ()GskRoundedRect *
gsk_rounded_rect_shrink ()gbooleangsk_rounded_rect_is_rectilinear ()gbooleangsk_rounded_rect_contains_point ()gbooleangsk_rounded_rect_contains_rect ()gbooleangsk_rounded_rect_intersects_rect ()Types and ValuesenumGskCornerstructGskRoundedRectDescriptionGskRoundedRect defines a rectangle with rounded corners, as is commonly
used in drawing.Operations on a GskRoundedRect will normalize the rectangle, to
ensure that the bounds are normalized and that the corner sizes don't exceed
the size of the rectangle. The algorithm used for normalizing corner sizes
is described in the CSS specification.FunctionsGSK_ROUNDED_RECT_INIT()GSK_ROUNDED_RECT_INIT#define GSK_ROUNDED_RECT_INIT(_x,_y,_w,_h)Initializes a GskRoundedRect when declaring it.
All corner sizes will be initialized to 0.Parameters_xthe X coordinate of the origin_ythe Y coordinate of the origin_wthe width_hthe heightgsk_rounded_rect_init ()gsk_rounded_rect_initGskRoundedRect *
gsk_rounded_rect_init (GskRoundedRect *self,
const graphene_rect_t *bounds,
const graphene_size_t *top_left,
const graphene_size_t *top_right,
const graphene_size_t *bottom_right,
const graphene_size_t *bottom_left);Initializes the given GskRoundedRect with the given values.This function will implicitly normalize the GskRoundedRect
before returning.ParametersselfThe GskRoundedRect to initializeboundsa graphene_rect_t describing the boundstop_leftthe rounding radius of the top left cornertop_rightthe rounding radius of the top right cornerbottom_rightthe rounding radius of the bottom right cornerbottom_leftthe rounding radius of the bottom left cornerReturnsthe initialized rectangle. [transfer none]gsk_rounded_rect_init_copy ()gsk_rounded_rect_init_copyGskRoundedRect *
gsk_rounded_rect_init_copy (GskRoundedRect *self,
const GskRoundedRect *src);Initializes self
using the given src
rectangle.This function will not normalize the GskRoundedRect, so
make sure the source is normalized.Parametersselfa GskRoundedRectsrca GskRoundedRectReturnsthe initialized rectangle. [transfer none]gsk_rounded_rect_init_from_rect ()gsk_rounded_rect_init_from_rectGskRoundedRect *
gsk_rounded_rect_init_from_rect (GskRoundedRect *self,
const graphene_rect_t *bounds,
float radius);Initializes self
to the given bounds
and sets the radius of all
four corners to radius
.Parametersselfa GskRoundedRectboundsa graphene_rect_tradiusthe border radiusReturnsthe initialized rectangle. [transfer none]gsk_rounded_rect_normalize ()gsk_rounded_rect_normalizeGskRoundedRect *
gsk_rounded_rect_normalize (GskRoundedRect *self);Normalizes the passed rectangle.this function will ensure that the bounds of the rectangle are normalized
and ensure that the corner values are positive and the corners do not overlap.Parametersselfa GskRoundedRectReturnsthe normalized rectangle. [transfer none]gsk_rounded_rect_offset ()gsk_rounded_rect_offsetGskRoundedRect *
gsk_rounded_rect_offset (GskRoundedRect *self,
float dx,
float dy);Offsets the bound's origin by dx
and dy
.The size and corners of the rectangle are unchanged.Parametersselfa GskRoundedRectdxthe horizontal offsetdythe vertical offsetReturnsthe offset rectangle. [transfer none]gsk_rounded_rect_shrink ()gsk_rounded_rect_shrinkGskRoundedRect *
gsk_rounded_rect_shrink (GskRoundedRect *self,
float top,
float right,
float bottom,
float left);Shrinks (or grows) the given rectangle by moving the 4 sides
according to the offsets given. The corner radii will be changed
in a way that tries to keep the center of the corner circle intact.
This emulates CSS behavior.This function also works for growing rectangles if you pass
negative values for the top
, right
, bottom
or left
.ParametersselfThe GskRoundedRect to shrink or growtopHow far to move the top side downwardsrightHow far to move the right side to the leftbottomHow far to move the bottom side upwardsleftHow far to move the left side to the rightReturnsthe resized GskRoundedRect. [transfer none]gsk_rounded_rect_is_rectilinear ()gsk_rounded_rect_is_rectilineargboolean
gsk_rounded_rect_is_rectilinear (const GskRoundedRect *self);Checks if all corners of self
are right angles and the
rectangle covers all of its bounds.This information can be used to decide if gsk_clip_node_new()
or gsk_rounded_clip_node_new() should be called.Parametersselfthe GskRoundedRect to checkReturnsTRUE if the rectangle is rectilineargsk_rounded_rect_contains_point ()gsk_rounded_rect_contains_pointgboolean
gsk_rounded_rect_contains_point (const GskRoundedRect *self,
const graphene_point_t *point);Checks if the given point
is inside the rounded rectangle. This function
returns FALSE if the point is in the rounded corner areas.Parametersselfa GskRoundedRectpointthe point to checkReturnsTRUE if the point
is inside the rounded rectanglegsk_rounded_rect_contains_rect ()gsk_rounded_rect_contains_rectgboolean
gsk_rounded_rect_contains_rect (const GskRoundedRect *self,
const graphene_rect_t *rect);Checks if the given rect
is contained inside the rounded rectangle.
This function returns FALSE if rect
extends into one of the rounded
corner areas.Parametersselfa GskRoundedRectrectthe rectangle to checkReturnsTRUE if the rect
is fully contained inside the rounded rectanglegsk_rounded_rect_intersects_rect ()gsk_rounded_rect_intersects_rectgboolean
gsk_rounded_rect_intersects_rect (const GskRoundedRect *self,
const graphene_rect_t *rect);Checks if part of the given rect
is contained inside the rounded rectangle.
This function returns FALSE if rect
only extends into one of the rounded
corner areas but not into the rounded rectangle itself.Parametersselfa GskRoundedRectrectthe rectangle to checkReturnsTRUE if the rect
intersects with the rounded rectangleTypes and Valuesenum GskCornerGskCornerThe corner indices used by GskRoundedRect.MembersGSK_CORNER_TOP_LEFTThe top left cornerGSK_CORNER_TOP_RIGHTThe top right cornerGSK_CORNER_BOTTOM_RIGHTThe bottom right cornerGSK_CORNER_BOTTOM_LEFTThe bottom left cornerstruct GskRoundedRectGskRoundedRectstruct GskRoundedRect {
graphene_rect_t bounds;
graphene_size_t corner[4];
};
A rectangular region with rounded corners.Application code should normalize rectangles using gsk_rounded_rect_normalize();
this function will ensure that the bounds of the rectangle are normalized
and ensure that the corner values are positive and the corners do not overlap.
All functions taking a GskRoundedRect as an argument will internally operate on
a normalized copy; all functions returning a GskRoundedRect will always return
a normalized one.Membersgraphene_rect_tbounds;the bounds of the rectanglegraphene_size_tcorner[4];the size of the 4 rounded corners
build/docs/reference/gsk/xml/GskTransform.xml 0000664 0001750 0001750 00000162432 13724234625 021441 0 ustar mclasen mclasen
]>
GskTransform3GSK4 LibraryGskTransformA description for transform operationsFunctionsGskTransform *
gsk_transform_ref ()voidgsk_transform_unref ()GskTransformCategorygsk_transform_get_category ()voidgsk_transform_print ()char *
gsk_transform_to_string ()gbooleangsk_transform_parse ()voidgsk_transform_to_matrix ()voidgsk_transform_to_2d ()voidgsk_transform_to_affine ()voidgsk_transform_to_translate ()GskTransform *
gsk_transform_transform ()GskTransform *
gsk_transform_invert ()GskTransform *
gsk_transform_matrix ()GskTransform *
gsk_transform_translate ()GskTransform *
gsk_transform_translate_3d ()GskTransform *
gsk_transform_rotate ()GskTransform *
gsk_transform_rotate_3d ()GskTransform *
gsk_transform_scale ()GskTransform *
gsk_transform_scale_3d ()GskTransform *
gsk_transform_perspective ()gbooleangsk_transform_equal ()voidgsk_transform_transform_bounds ()voidgsk_transform_transform_point ()Types and ValuesGskTransformenumGskTransformCategoryDescriptionGskTransform is an object to describe transform matrices. Unlike
graphene_matrix_t, GskTransform retains the steps in how a transform was
constructed, and allows inspecting them. It is modeled after the way
CSS describes transforms.GskTransform objects are immutable and cannot be changed after creation.
This means code can safely expose them as properties of objects without
having to worry about others changing them.Functionsgsk_transform_ref ()gsk_transform_refGskTransform *
gsk_transform_ref (GskTransform *self);Acquires a reference on the given GskTransform.Parametersselfa GskTransform. [allow-none]Returnsthe GskTransform with an additional reference. [transfer none]gsk_transform_unref ()gsk_transform_unrefvoid
gsk_transform_unref (GskTransform *self);Releases a reference on the given GskTransform.If the reference was the last, the resources associated to the self
are
freed.Parametersselfa GskTransform. [allow-none]gsk_transform_get_category ()gsk_transform_get_categoryGskTransformCategory
gsk_transform_get_category (GskTransform *self);Returns the category this transform belongs to.ParametersselfA GskTransform. [allow-none]Returns The category of the transformgsk_transform_print ()gsk_transform_printvoid
gsk_transform_print (GskTransform *self,
GString *string);Converts self
into a human-readable string representation suitable
for printing that can later be parsed with gsk_transform_parse().Parametersselfa GskTransform. [allow-none]stringThe string to print intogsk_transform_to_string ()gsk_transform_to_stringchar *
gsk_transform_to_string (GskTransform *self);Converts a matrix into a string that is suitable for
printing and can later be parsed with gsk_transform_parse().This is a wrapper around gsk_transform_print(), see that function
for details.Parametersselfa GskTransform. [allow-none]Returns A new string for selfgsk_transform_parse ()gsk_transform_parsegboolean
gsk_transform_parse (const char *string,
GskTransform **out_transform);Parses the given string
into a transform and puts it in
out_transform
. Strings printed via gsk_transform_to_string()
can be read in again successfully using this function.If string
does not describe a valid transform, FALSE is
returned and NULL is put in out_transform
.Parametersstringthe string to parseout_transformThe location to put the transform in. [out]ReturnsTRUE if string
described a valid transform.gsk_transform_to_matrix ()gsk_transform_to_matrixvoid
gsk_transform_to_matrix (GskTransform *self,
graphene_matrix_t *out_matrix);Computes the actual value of self
and stores it in out_matrix
.
The previous value of out_matrix
will be ignored.Parametersselfa GskTransform. [allow-none]out_matrixThe matrix to set. [out caller-allocates]gsk_transform_to_2d ()gsk_transform_to_2dvoid
gsk_transform_to_2d (GskTransform *self,
float *out_xx,
float *out_yx,
float *out_xy,
float *out_yy,
float *out_dx,
float *out_dy);Converts a GskTransform to a 2D transformation
matrix.
self
must be a 2D transformation. If you are not
sure, use gsk_transform_get_category() >=
GSK_TRANSFORM_CATEGORY_2D to check.The returned values have the following layout:This function can be used to convert between a GskTransform
and a matrix type from other 2D drawing libraries, in particular
Cairo.Parametersselfa 2D GskTransformout_xxreturn location for the xx member. [out]out_yxreturn location for the yx member. [out]out_xyreturn location for the xy member. [out]out_yyreturn location for the yy member. [out]out_dxreturn location for the x0 member. [out]out_dyreturn location for the y0 member. [out]gsk_transform_to_affine ()gsk_transform_to_affinevoid
gsk_transform_to_affine (GskTransform *self,
float *out_scale_x,
float *out_scale_y,
float *out_dx,
float *out_dy);Converts a GskTransform to 2D affine transformation
factors.
self
must be a 2D transformation. If you are not
sure, use gsk_transform_get_category() >=
GSK_TRANSFORM_CATEGORY_2D_AFFINE to check.Parametersselfa GskTransformout_scale_xreturn location for the scale
factor in the x direction. [out]out_scale_yreturn location for the scale
factor in the y direction. [out]out_dxreturn location for the translation
in the x direction. [out]out_dyreturn location for the translation
in the y direction. [out]gsk_transform_to_translate ()gsk_transform_to_translatevoid
gsk_transform_to_translate (GskTransform *self,
float *out_dx,
float *out_dy);Converts a GskTransform to a translation operation.
self
must be a 2D transformation. If you are not
sure, use gsk_transform_get_category() >=
GSK_TRANSFORM_CATEGORY_2D_TRANSLATE to check.Parametersselfa GskTransformout_dxreturn location for the translation
in the x direction. [out]out_dyreturn location for the translation
in the y direction. [out]gsk_transform_transform ()gsk_transform_transformGskTransform *
gsk_transform_transform (GskTransform *next,
GskTransform *other);Applies all the operations from other
to next
.ParametersnextTransform to apply other
to. [allow-none][transfer full]otherTransform to apply. [allow-none]Returns The new transformgsk_transform_invert ()gsk_transform_invertGskTransform *
gsk_transform_invert (GskTransform *self);Inverts the given transform.If self
is not invertible, NULL is returned.
Note that inverting NULL also returns NULL, which is
the correct inverse of NULL. If you need to differentiate
between those cases, you should check self
is not NULL
before calling this function.ParametersselfTransform to invert. [allow-none][transfer full]Returns The inverted transform or NULL if the transform
cannot be inverted.gsk_transform_matrix ()gsk_transform_matrixGskTransform *
gsk_transform_matrix (GskTransform *next,
const graphene_matrix_t *matrix);Multiplies next
with the given matrix
.Parametersnextthe next transform. [allow-none][transfer full]matrixthe matrix to multiply next
withReturns The new transformgsk_transform_translate ()gsk_transform_translateGskTransform *
gsk_transform_translate (GskTransform *next,
const graphene_point_t *point);Translates next
in 2dimensional space by point
.Parametersnextthe next transform. [allow-none][transfer full]pointthe point to translate the transform byReturns The new transformgsk_transform_translate_3d ()gsk_transform_translate_3dGskTransform *
gsk_transform_translate_3d (GskTransform *next,
const graphene_point3d_t *point);Translates next
by point
.Parametersnextthe next transform. [allow-none][transfer full]pointthe point to translate the transform byReturns The new transformgsk_transform_rotate ()gsk_transform_rotateGskTransform *
gsk_transform_rotate (GskTransform *next,
float angle);Rotates nextangle
degrees in 2D - or in 3Dspeak, around the z axis.Parametersnextthe next transform. [allow-none][transfer full]anglethe rotation angle, in degrees (clockwise)Returns The new transformgsk_transform_rotate_3d ()gsk_transform_rotate_3dGskTransform *
gsk_transform_rotate_3d (GskTransform *next,
float angle,
const graphene_vec3_t *axis);Rotates nextangle
degrees around axis
.For a rotation in 2D space, use gsk_transform_rotate().Parametersnextthe next transform. [allow-none][transfer full]anglethe rotation angle, in degrees (clockwise)axisThe rotation axisReturns The new transformgsk_transform_scale ()gsk_transform_scaleGskTransform *
gsk_transform_scale (GskTransform *next,
float factor_x,
float factor_y);Scales next
in 2-dimensional space by the given factors.
Use gsk_transform_scale_3d() to scale in all 3 dimensions.Parametersnextthe next transform. [allow-none][transfer full]factor_xscaling factor on the X axisfactor_yscaling factor on the Y axisReturns The new transformgsk_transform_scale_3d ()gsk_transform_scale_3dGskTransform *
gsk_transform_scale_3d (GskTransform *next,
float factor_x,
float factor_y,
float factor_z);Scales next
by the given factors.Parametersnextthe next transform. [allow-none][transfer full]factor_xscaling factor on the X axisfactor_yscaling factor on the Y axisfactor_zscaling factor on the Z axisReturns The new transformgsk_transform_perspective ()gsk_transform_perspectiveGskTransform *
gsk_transform_perspective (GskTransform *next,
float depth);Applies a perspective projection transform. This transform
scales points in X and Y based on their Z value, scaling
points with positive Z values away from the origin, and
those with negative Z values towards the origin. Points
on the z=0 plane are unchanged.Parametersnextthe next transform. [allow-none][transfer full]depthdistance of the z=0 plane. Lower values give a more
flattened pyramid and therefore a more pronounced
perspective effect.Returns The new transformgsk_transform_equal ()gsk_transform_equalgboolean
gsk_transform_equal (GskTransform *first,
GskTransform *second);Checks two transforms for equality.Parametersfirstthe first transformsecondthe second transformReturnsTRUE if the two transforms perform the same operation.gsk_transform_transform_bounds ()gsk_transform_transform_boundsvoid
gsk_transform_transform_bounds (GskTransform *self,
const graphene_rect_t *rect,
graphene_rect_t *out_rect);Transforms a graphene_rect_t using the given transform self
.
The result is the bounding box containing the coplanar quad.Parametersselfa GskTransformrecta graphene_rect_tout_rectreturn location for the bounds
of the transformed rectangle. [out caller-allocates]gsk_transform_transform_point ()gsk_transform_transform_pointvoid
gsk_transform_transform_point (GskTransform *self,
const graphene_point_t *point,
graphene_point_t *out_point);Transforms a graphene_point_t using the given transform self
.Parametersselfa GskTransformpointa graphene_point_tout_pointreturn location for
the transformed point. [out caller-allocates]Types and ValuesGskTransformGskTransformtypedef struct _GskTransform GskTransform;The GskTransform structure contains only private data.enum GskTransformCategoryGskTransformCategoryThe 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
mutliplication will not worsen categories. So for the matrix
multiplication C = A * B, category(C) = MIN (category(A), category(B)).MembersGSK_TRANSFORM_CATEGORY_UNKNOWNThe category of the matrix has not been
determined.GSK_TRANSFORM_CATEGORY_ANYAnalyzing the matrix concluded that it does
not fit in any other category.GSK_TRANSFORM_CATEGORY_3DThe matrix is a 3D matrix. This means that
the w column (the last column) has the values (0, 0, 0, 1).GSK_TRANSFORM_CATEGORY_2DThe matrix is a 2D matrix. This is equivalent
to graphene_matrix_is_2d() returning TRUE. In particular, this
means that Cairo can deal with the matrix.GSK_TRANSFORM_CATEGORY_2D_AFFINEThe 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.GSK_TRANSFORM_CATEGORY_2D_TRANSLATEThe matrix is a 2D translation.GSK_TRANSFORM_CATEGORY_IDENTITYThe matrix is the identity matrix.
build/docs/reference/gsk/xml/gsk4-doc.top 0000664 0001750 0001750 00000000000 13724234625 020414 0 ustar mclasen mclasen build/docs/reference/gsk/xml/gsk4-doc.bottom 0000664 0001750 0001750 00000000272 13724234625 021131 0 ustar mclasen mclasen
build/docs/reference/gsk/xml/tree_index.sgml 0000664 0001750 0001750 00000001001 13724234625 021271 0 ustar mclasen mclasen
]>
GObject
╰── GskRenderer
GskRenderNode
build/docs/reference/gsk/xml/object_index.sgml 0000664 0001750 0001750 00000001234 13724234625 021610 0 ustar mclasen mclasen
]>
GObjectGskRenderNodeGskRenderer
build/docs/reference/gsk/xml/api-index-full.xml 0000664 0001750 0001750 00000111412 13724234625 021627 0 ustar mclasen mclasen
]>
BGskBlendMode, enum in GskRenderNodeGskBlendNode, struct in GskRenderNodegsk_blend_node_get_blend_mode, function in GskRenderNodegsk_blend_node_get_bottom_child, function in GskRenderNodegsk_blend_node_get_top_child, function in GskRenderNodegsk_blend_node_new, function in GskRenderNodeGskBlurNode, struct in GskRenderNodegsk_blur_node_get_child, function in GskRenderNodegsk_blur_node_get_radius, function in GskRenderNodegsk_blur_node_new, function in GskRenderNodeGskBorderNode, struct in GskRenderNodegsk_border_node_new, function in GskRenderNodegsk_border_node_peek_colors, function in GskRenderNodegsk_border_node_peek_outline, function in GskRenderNodegsk_border_node_peek_widths, function in GskRenderNodegsk_broadway_renderer_new, function in GskRendererCGskCairoNode, struct in GskRenderNodegsk_cairo_node_get_draw_context, function in GskRenderNodegsk_cairo_node_new, function in GskRenderNodegsk_cairo_node_peek_surface, function in GskRenderNodegsk_cairo_renderer_new, function in GskRendererGskClipNode, struct in GskRenderNodegsk_clip_node_get_child, function in GskRenderNodegsk_clip_node_new, function in GskRenderNodegsk_clip_node_peek_clip, function in GskRenderNodeGskColorMatrixNode, struct in GskRenderNodeGskColorNode, struct in GskRenderNodeGskColorStop, struct in GskRenderNodegsk_color_matrix_node_get_child, function in GskRenderNodegsk_color_matrix_node_new, function in GskRenderNodegsk_color_matrix_node_peek_color_matrix, function in GskRenderNodegsk_color_matrix_node_peek_color_offset, function in GskRenderNodegsk_color_node_new, function in GskRenderNodegsk_color_node_peek_color, function in GskRenderNodeGskContainerNode, struct in GskRenderNodegsk_container_node_get_child, function in GskRenderNodegsk_container_node_get_n_children, function in GskRenderNodegsk_container_node_new, function in GskRenderNodeGskCorner, enum in GskRoundedRectGskCrossFadeNode, struct in GskRenderNodegsk_cross_fade_node_get_end_child, function in GskRenderNodegsk_cross_fade_node_get_progress, function in GskRenderNodegsk_cross_fade_node_get_start_child, function in GskRenderNodegsk_cross_fade_node_new, function in GskRenderNodeDGskDebugNode, struct in GskRenderNodegsk_debug_node_get_child, function in GskRenderNodegsk_debug_node_get_message, function in GskRenderNodegsk_debug_node_new, function in GskRenderNodeGgsk_gl_renderer_new, function in GskRendererIGskInsetShadowNode, struct in GskRenderNodegsk_inset_shadow_node_get_blur_radius, function in GskRenderNodegsk_inset_shadow_node_get_dx, function in GskRenderNodegsk_inset_shadow_node_get_dy, function in GskRenderNodegsk_inset_shadow_node_get_spread, function in GskRenderNodegsk_inset_shadow_node_new, function in GskRenderNodegsk_inset_shadow_node_peek_color, function in GskRenderNodegsk_inset_shadow_node_peek_outline, function in GskRenderNodeLGskLinearGradientNode, struct in GskRenderNodegsk_linear_gradient_node_get_n_color_stops, function in GskRenderNodegsk_linear_gradient_node_new, function in GskRenderNodegsk_linear_gradient_node_peek_color_stops, function in GskRenderNodegsk_linear_gradient_node_peek_end, function in GskRenderNodegsk_linear_gradient_node_peek_start, function in GskRenderNodeOGskOpacityNode, struct in GskRenderNodegsk_opacity_node_get_child, function in GskRenderNodegsk_opacity_node_get_opacity, function in GskRenderNodegsk_opacity_node_new, function in GskRenderNodeGskOutsetShadowNode, struct in GskRenderNodegsk_outset_shadow_node_get_blur_radius, function in GskRenderNodegsk_outset_shadow_node_get_dx, function in GskRenderNodegsk_outset_shadow_node_get_dy, function in GskRenderNodegsk_outset_shadow_node_get_spread, function in GskRenderNodegsk_outset_shadow_node_new, function in GskRenderNodegsk_outset_shadow_node_peek_color, function in GskRenderNodegsk_outset_shadow_node_peek_outline, function in GskRenderNodePGskParseErrorFunc, user_function in GskRenderNodeRGskRenderer, struct in GskRendererGskRenderer:realized, object property in GskRendererGskRenderer:surface, object property in GskRenderergsk_renderer_get_surface, function in GskRenderergsk_renderer_is_realized, function in GskRenderergsk_renderer_new_for_surface, function in GskRenderergsk_renderer_realize, function in GskRenderergsk_renderer_render, function in GskRenderergsk_renderer_render_texture, function in GskRenderergsk_renderer_unrealize, function in GskRendererGskRenderNode, struct in GskRenderNodeGskRenderNodeType, enum in GskRenderNodegsk_render_node_deserialize, function in GskRenderNodegsk_render_node_draw, function in GskRenderNodegsk_render_node_get_bounds, function in GskRenderNodegsk_render_node_get_node_type, function in GskRenderNodegsk_render_node_ref, function in GskRenderNodegsk_render_node_serialize, function in GskRenderNodegsk_render_node_unref, function in GskRenderNodegsk_render_node_write_to_file, function in GskRenderNodeGskRepeatingLinearGradientNode, struct in GskRenderNodegsk_repeating_linear_gradient_node_new, function in GskRenderNodeGskRepeatNode, struct in GskRenderNodegsk_repeat_node_get_child, function in GskRenderNodegsk_repeat_node_new, function in GskRenderNodegsk_repeat_node_peek_child_bounds, function in GskRenderNodeGskRoundedClipNode, struct in GskRenderNodeGskRoundedRect, struct in GskRoundedRectgsk_rounded_clip_node_get_child, function in GskRenderNodegsk_rounded_clip_node_new, function in GskRenderNodegsk_rounded_clip_node_peek_clip, function in GskRenderNodegsk_rounded_rect_contains_point, function in GskRoundedRectgsk_rounded_rect_contains_rect, function in GskRoundedRectGSK_ROUNDED_RECT_INIT, macro in GskRoundedRectgsk_rounded_rect_init, function in GskRoundedRectgsk_rounded_rect_init_copy, function in GskRoundedRectgsk_rounded_rect_init_from_rect, function in GskRoundedRectgsk_rounded_rect_intersects_rect, function in GskRoundedRectgsk_rounded_rect_is_rectilinear, function in GskRoundedRectgsk_rounded_rect_normalize, function in GskRoundedRectgsk_rounded_rect_offset, function in GskRoundedRectgsk_rounded_rect_shrink, function in GskRoundedRectSGskScalingFilter, enum in GskRenderNodeGskSerializationError, enum in GskRenderNodeGskShadow, struct in GskRenderNodeGskShadowNode, struct in GskRenderNodegsk_shadow_node_get_child, function in GskRenderNodegsk_shadow_node_get_n_shadows, function in GskRenderNodegsk_shadow_node_new, function in GskRenderNodegsk_shadow_node_peek_shadow, function in GskRenderNodeTGskTextNode, struct in GskRenderNodeGskTextureNode, struct in GskRenderNodegsk_texture_node_get_texture, function in GskRenderNodegsk_texture_node_new, function in GskRenderNodegsk_text_node_get_num_glyphs, function in GskRenderNodegsk_text_node_get_offset, function in GskRenderNodegsk_text_node_has_color_glyphs, function in GskRenderNodegsk_text_node_new, function in GskRenderNodegsk_text_node_peek_color, function in GskRenderNodegsk_text_node_peek_font, function in GskRenderNodegsk_text_node_peek_glyphs, function in GskRenderNodeGskTransform, struct in GskTransformGskTransformCategory, enum in GskTransformGskTransformNode, struct in GskRenderNodegsk_transform_equal, function in GskTransformgsk_transform_get_category, function in GskTransformgsk_transform_invert, function in GskTransformgsk_transform_matrix, function in GskTransformgsk_transform_node_get_child, function in GskRenderNodegsk_transform_node_get_transform, function in GskRenderNodegsk_transform_node_new, function in GskRenderNodegsk_transform_parse, function in GskTransformgsk_transform_perspective, function in GskTransformgsk_transform_print, function in GskTransformgsk_transform_ref, function in GskTransformgsk_transform_rotate, function in GskTransformgsk_transform_rotate_3d, function in GskTransformgsk_transform_scale, function in GskTransformgsk_transform_scale_3d, function in GskTransformgsk_transform_to_2d, function in GskTransformgsk_transform_to_affine, function in GskTransformgsk_transform_to_matrix, function in GskTransformgsk_transform_to_string, function in GskTransformgsk_transform_to_translate, function in GskTransformgsk_transform_transform, function in GskTransformgsk_transform_transform_bounds, function in GskTransformgsk_transform_transform_point, function in GskTransformgsk_transform_translate, function in GskTransformgsk_transform_translate_3d, function in GskTransformgsk_transform_unref, function in GskTransformVgsk_vulkan_renderer_new, function in GskRenderer
build/docs/reference/gsk/xml/api-index-deprecated.xml 0000664 0001750 0001750 00000000526 13724234625 022770 0 ustar mclasen mclasen
]>
build/docs/reference/gsk/xml/annotation-glossary.xml 0000664 0001750 0001750 00000006105 13724234625 023026 0 ustar mclasen mclasen
]>
Annotation GlossaryAallow-noneNULL is OK, both for passing and for returning.arrayParameter points to an array of items.CclosureThis parameter is a 'user_data', for callbacks; many bindings can pass NULL here.NnullableNULL may be passed as the value in, out, in-out; or as a return value.OoptionalNULL may be passed instead of a pointer to a location.outParameter for returning results. Default is transfer full.out caller-allocatesOut parameter, where caller must allocate storage.Sscope callThe callback is valid only during the call to the method.Ttransfer fullFree data after the code is done.transfer noneDon't free data after the code is done.typeOverride the parsed C type with given type.
build/docs/reference/gsk/gsk4-undocumented.txt 0000664 0001750 0001750 00000000751 13724234625 021573 0 ustar mclasen mclasen 86% symbol docs coverage.
152 symbols documented.
2 symbols incomplete.
24 not documented.
GskBlendNode
GskBlurNode
GskBorderNode
GskCairoNode
GskClipNode
GskColorMatrixNode
GskColorNode
GskColorStop ()
GskContainerNode
GskCrossFadeNode
GskDebugNode
GskInsetShadowNode
GskLinearGradientNode
GskOpacityNode
GskOutsetShadowNode
GskRenderer
GskRepeatNode
GskRepeatingLinearGradientNode
GskRoundedClipNode
GskShadow ()
GskShadowNode
GskTextNode
GskTextureNode
GskTransformNode
build/docs/reference/gsk/gsk4-undeclared.txt 0000664 0001750 0001750 00000000000 13724234625 021172 0 ustar mclasen mclasen build/docs/reference/gsk/gsk4-unused.txt 0000664 0001750 0001750 00000023614 13724234625 020407 0 ustar mclasen mclasen CacheKeyData
GL_N_PROGRAMS
GL_N_VERTICES
GSK_BROADWAY_RENDERER
GSK_BROADWAY_RENDERER_CLASS
GSK_BROADWAY_RENDERER_GET_CLASS
GSK_CAIRO_RENDERER
GSK_CAIRO_RENDERER_CLASS
GSK_CAIRO_RENDERER_GET_CLASS
GSK_GL_RENDERER
GSK_GL_RENDERER_CLASS
GSK_GL_RENDERER_GET_CLASS
GSK_IS_BROADWAY_RENDERER
GSK_IS_BROADWAY_RENDERER_CLASS
GSK_IS_CAIRO_RENDERER
GSK_IS_CAIRO_RENDERER_CLASS
GSK_IS_GL_RENDERER
GSK_IS_GL_RENDERER_CLASS
GSK_IS_VULKAN_RENDERER
GSK_IS_VULKAN_RENDERER_CLASS
GSK_TYPE_BROADWAY_RENDERER
GSK_TYPE_CAIRO_RENDERER
GSK_TYPE_CORNER
GSK_TYPE_GL_DRIVER
GSK_TYPE_GL_PROFILER
GSK_TYPE_GL_RENDERER
GSK_TYPE_RENDER_NODE_TYPE
GSK_TYPE_VULKAN_BLEND_MODE_PIPELINE
GSK_TYPE_VULKAN_BLUR_PIPELINE
GSK_TYPE_VULKAN_BORDER_PIPELINE
GSK_TYPE_VULKAN_BOX_SHADOW_PIPELINE
GSK_TYPE_VULKAN_COLOR_PIPELINE
GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE
GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE
GSK_TYPE_VULKAN_EFFECT_PIPELINE
GSK_TYPE_VULKAN_GLYPH_CACHE
GSK_TYPE_VULKAN_IMAGE
GSK_TYPE_VULKAN_LINEAR_GRADIENT_PIPELINE
GSK_TYPE_VULKAN_PIPELINE
GSK_TYPE_VULKAN_RENDERER
GSK_TYPE_VULKAN_TEXTURE_PIPELINE
GSK_TYPE_VULKAN_TEXT_PIPELINE
GSK_VK_CHECK
GSK_VULKAN_LINEAR_GRADIENT_PIPELINE_MAX_COLOR_STOPS
GSK_VULKAN_RENDERER
GSK_VULKAN_RENDERER_CLASS
GSK_VULKAN_RENDERER_GET_CLASS
GST_VULKAN_SHADER_STAGE_CREATE_INFO
GlyphCacheKey
GskBroadwayRenderer
GskBroadwayRendererClass
GskCairoRenderer
GskCairoRendererClass
GskDeleteFunc
GskDiffResult
GskDiffSettings
GskGLCachedGlyph
GskGLDriver
GskGLProfiler
GskGLRenderer
GskGLRendererClass
GskGLRendererPrograms
GskGLTextureAtlas
GskGLTextureAtlases
GskImageRegion
GskInsertFunc
GskKeepFunc
GskQuadVertex
GskVulkanBlendModePipeline
GskVulkanBlendModePipelineLayout
GskVulkanBlurPipeline
GskVulkanBlurPipelineLayout
GskVulkanBorderPipeline
GskVulkanBorderPipelineLayout
GskVulkanBoxShadowPipeline
GskVulkanBoxShadowPipelineLayout
GskVulkanBuffer
GskVulkanClip
GskVulkanClipComplexity
GskVulkanColorPipeline
GskVulkanColorPipelineLayout
GskVulkanColorTextPipeline
GskVulkanColorTextPipelineLayout
GskVulkanCommandPool
GskVulkanCrossFadePipeline
GskVulkanCrossFadePipelineLayout
GskVulkanEffectPipeline
GskVulkanEffectPipelineLayout
GskVulkanGlyphCache
GskVulkanImage
GskVulkanLinearGradientPipeline
GskVulkanLinearGradientPipelineLayout
GskVulkanMemory
GskVulkanPipeline
GskVulkanPipelineClass
GskVulkanPipelineType
GskVulkanPushConstants
GskVulkanRenderer
GskVulkanRendererClass
GskVulkanShader
GskVulkanShaderType
GskVulkanTextPipeline
GskVulkanTextPipelineLayout
GskVulkanTexturePipeline
GskVulkanTexturePipelineLayout
GskVulkanUploader
MAX_GRADIENT_STOPS
NINE_SLICE_SIZE
N_NODE_TYPES
OpKind
OpShadow
PHASE
Program
SANITY_CHECKS
STBRP_DEF
STB_RECT_PACK_VERSION
TextureSlice
glyph_cache_key_set_glyph_and_shift
graphene_size_non_zero
gsk_diff
gsk_diff_settings_free
gsk_diff_settings_new
gsk_diff_settings_set_allow_abort
gsk_gl_driver_begin_frame
gsk_gl_driver_bind_source_texture
gsk_gl_driver_collect_textures
gsk_gl_driver_create_render_target
gsk_gl_driver_create_texture
gsk_gl_driver_destroy_texture
gsk_gl_driver_end_frame
gsk_gl_driver_get_gl_context
gsk_gl_driver_get_max_texture_size
gsk_gl_driver_get_texture_for_pointer
gsk_gl_driver_get_texture_for_texture
gsk_gl_driver_in_frame
gsk_gl_driver_init_texture_empty
gsk_gl_driver_init_texture_with_surface
gsk_gl_driver_mark_texture_permanent
gsk_gl_driver_new
gsk_gl_driver_set_texture_for_pointer
gsk_gl_driver_slice_texture
gsk_gl_glyph_cache_begin_frame
gsk_gl_glyph_cache_lookup_or_add
gsk_gl_glyph_cache_new
gsk_gl_glyph_cache_ref
gsk_gl_glyph_cache_unref
gsk_gl_icon_cache_begin_frame
gsk_gl_icon_cache_lookup_or_add
gsk_gl_icon_cache_new
gsk_gl_icon_cache_ref
gsk_gl_icon_cache_unref
gsk_gl_image_create
gsk_gl_image_destroy
gsk_gl_image_upload_region
gsk_gl_image_write_to_png
gsk_gl_profiler_begin_gpu_region
gsk_gl_profiler_end_gpu_region
gsk_gl_profiler_new
gsk_gl_renderer_get_type
gsk_gl_shader_builder_create_program
gsk_gl_shader_builder_finish
gsk_gl_shader_builder_init
gsk_gl_shader_builder_set_glsl_version
gsk_gl_shadow_cache_begin_frame
gsk_gl_shadow_cache_commit
gsk_gl_shadow_cache_free
gsk_gl_shadow_cache_get_texture_id
gsk_gl_shadow_cache_init
gsk_gl_texture_atlas_free
gsk_gl_texture_atlas_get_unused_ratio
gsk_gl_texture_atlas_init
gsk_gl_texture_atlas_mark_unused
gsk_gl_texture_atlas_mark_used
gsk_gl_texture_atlas_pack
gsk_gl_texture_atlas_realize
gsk_gl_texture_atlases_begin_frame
gsk_gl_texture_atlases_new
gsk_gl_texture_atlases_pack
gsk_gl_texture_atlases_ref
gsk_gl_texture_atlases_unref
gsk_vulkan_blend_mode_pipeline_collect_vertex_data
gsk_vulkan_blend_mode_pipeline_count_vertex_data
gsk_vulkan_blend_mode_pipeline_draw
gsk_vulkan_blend_mode_pipeline_new
gsk_vulkan_blur_pipeline_collect_vertex_data
gsk_vulkan_blur_pipeline_count_vertex_data
gsk_vulkan_blur_pipeline_draw
gsk_vulkan_blur_pipeline_new
gsk_vulkan_border_pipeline_collect_vertex_data
gsk_vulkan_border_pipeline_count_vertex_data
gsk_vulkan_border_pipeline_draw
gsk_vulkan_border_pipeline_new
gsk_vulkan_box_shadow_pipeline_collect_vertex_data
gsk_vulkan_box_shadow_pipeline_count_vertex_data
gsk_vulkan_box_shadow_pipeline_draw
gsk_vulkan_box_shadow_pipeline_new
gsk_vulkan_buffer_free
gsk_vulkan_buffer_get_buffer
gsk_vulkan_buffer_map
gsk_vulkan_buffer_new
gsk_vulkan_buffer_new_download
gsk_vulkan_buffer_new_staging
gsk_vulkan_buffer_unmap
gsk_vulkan_clip_contains_rect
gsk_vulkan_clip_init_empty
gsk_vulkan_clip_intersect_rect
gsk_vulkan_clip_intersect_rounded_rect
gsk_vulkan_clip_transform
gsk_vulkan_color_pipeline_collect_vertex_data
gsk_vulkan_color_pipeline_count_vertex_data
gsk_vulkan_color_pipeline_draw
gsk_vulkan_color_pipeline_new
gsk_vulkan_color_text_pipeline_collect_vertex_data
gsk_vulkan_color_text_pipeline_count_vertex_data
gsk_vulkan_color_text_pipeline_draw
gsk_vulkan_color_text_pipeline_new
gsk_vulkan_command_pool_free
gsk_vulkan_command_pool_get_buffer
gsk_vulkan_command_pool_new
gsk_vulkan_command_pool_reset
gsk_vulkan_command_pool_submit_buffer
gsk_vulkan_cross_fade_pipeline_collect_vertex_data
gsk_vulkan_cross_fade_pipeline_count_vertex_data
gsk_vulkan_cross_fade_pipeline_draw
gsk_vulkan_cross_fade_pipeline_new
gsk_vulkan_effect_pipeline_collect_vertex_data
gsk_vulkan_effect_pipeline_count_vertex_data
gsk_vulkan_effect_pipeline_draw
gsk_vulkan_effect_pipeline_new
gsk_vulkan_glyph_cache_begin_frame
gsk_vulkan_glyph_cache_get_glyph_image
gsk_vulkan_glyph_cache_lookup
gsk_vulkan_glyph_cache_new
gsk_vulkan_handle_result
gsk_vulkan_image_download
gsk_vulkan_image_get_height
gsk_vulkan_image_get_image
gsk_vulkan_image_get_image_view
gsk_vulkan_image_get_width
gsk_vulkan_image_new_for_atlas
gsk_vulkan_image_new_for_framebuffer
gsk_vulkan_image_new_for_swapchain
gsk_vulkan_image_new_for_texture
gsk_vulkan_image_new_from_data
gsk_vulkan_image_upload_regions
gsk_vulkan_linear_gradient_pipeline_collect_vertex_data
gsk_vulkan_linear_gradient_pipeline_count_vertex_data
gsk_vulkan_linear_gradient_pipeline_draw
gsk_vulkan_linear_gradient_pipeline_new
gsk_vulkan_memory_free
gsk_vulkan_memory_get_device_memory
gsk_vulkan_memory_map
gsk_vulkan_memory_new
gsk_vulkan_memory_unmap
gsk_vulkan_pipeline_get_pipeline
gsk_vulkan_pipeline_get_pipeline_layout
gsk_vulkan_pipeline_new
gsk_vulkan_pipeline_new_full
gsk_vulkan_push_constants_get_range_count
gsk_vulkan_push_constants_get_ranges
gsk_vulkan_push_constants_init
gsk_vulkan_push_constants_init_copy
gsk_vulkan_push_constants_intersect_rect
gsk_vulkan_push_constants_intersect_rounded
gsk_vulkan_push_constants_push
gsk_vulkan_push_constants_transform
gsk_vulkan_render_add_cleanup_image
gsk_vulkan_render_add_node
gsk_vulkan_render_add_render_pass
gsk_vulkan_render_download_target
gsk_vulkan_render_draw
gsk_vulkan_render_free
gsk_vulkan_render_get_descriptor_set
gsk_vulkan_render_get_framebuffer
gsk_vulkan_render_get_pipeline
gsk_vulkan_render_get_renderer
gsk_vulkan_render_is_busy
gsk_vulkan_render_new
gsk_vulkan_render_pass_add
gsk_vulkan_render_pass_draw
gsk_vulkan_render_pass_free
gsk_vulkan_render_pass_get_signal_semaphores
gsk_vulkan_render_pass_get_wait_semaphores
gsk_vulkan_render_pass_new
gsk_vulkan_render_pass_reserve_descriptor_sets
gsk_vulkan_render_pass_upload
gsk_vulkan_render_reserve_descriptor_set
gsk_vulkan_render_reset
gsk_vulkan_render_submit
gsk_vulkan_render_upload
gsk_vulkan_renderer_cache_glyph
gsk_vulkan_renderer_get_cached_glyph
gsk_vulkan_renderer_get_type
gsk_vulkan_renderer_ref_glyph_image
gsk_vulkan_renderer_ref_texture_image
gsk_vulkan_shader_free
gsk_vulkan_shader_get_module
gsk_vulkan_shader_get_type
gsk_vulkan_shader_new_from_resource
gsk_vulkan_text_pipeline_collect_vertex_data
gsk_vulkan_text_pipeline_count_vertex_data
gsk_vulkan_text_pipeline_draw
gsk_vulkan_text_pipeline_new
gsk_vulkan_texture_pipeline_collect_vertex_data
gsk_vulkan_texture_pipeline_count_vertex_data
gsk_vulkan_texture_pipeline_draw
gsk_vulkan_texture_pipeline_new
gsk_vulkan_uploader_free
gsk_vulkan_uploader_new
gsk_vulkan_uploader_reset
gsk_vulkan_uploader_upload
nine_slice_grow
nine_slice_rounded_rect
nine_slice_to_texture_coords
node_sample_add
node_sample_init
node_sample_print
node_sample_reset
op_buffer_add
op_buffer_clear
op_buffer_destroy
op_buffer_init
op_buffer_iter_init
op_buffer_iter_next
op_buffer_n_ops
op_buffer_peek_tail
op_buffer_peek_tail_checked
op_buffer_pop_tail
ops_begin
ops_draw
ops_dump_framebuffer
ops_finish
ops_free
ops_get_buffer
ops_get_scale
ops_has_clip
ops_init
ops_offset
ops_pop_clip
ops_pop_debug_group
ops_pop_modelview
ops_push_clip
ops_push_debug_group
ops_push_modelview
ops_reset
ops_set_border
ops_set_border_color
ops_set_border_width
ops_set_color
ops_set_color_matrix
ops_set_inset_shadow
ops_set_linear_gradient
ops_set_modelview
ops_set_opacity
ops_set_program
ops_set_projection
ops_set_render_target
ops_set_texture
ops_set_unblurred_outset_shadow
ops_set_viewport
ops_transform_bounds_modelview
rect_contains_point
rounded_rect_bottom_left
rounded_rect_bottom_right
rounded_rect_corner
rounded_rect_corner0
rounded_rect_corner1
rounded_rect_corner2
rounded_rect_corner3
rounded_rect_has_corner
rounded_rect_top_left
rounded_rect_top_right
stbrp_context
stbrp_coord
stbrp_node
stbrp_rect
build/docs/reference/gsk/sgml.stamp 0000664 0001750 0001750 00000000011 13724234625 017467 0 ustar mclasen mclasen timestamp build/docs/reference/gsk/html.stamp 0000664 0001750 0001750 00000000011 13724235174 017471 0 ustar mclasen mclasen timestamp build/docs/reference/gsk/html/ 0000775 0001750 0001750 00000000000 13724235174 016433 5 ustar mclasen mclasen build/docs/reference/gsk/html/gsk4.devhelp2 0000664 0001750 0001750 00000064571 13724235174 020753 0 ustar mclasen mclasen
build/docs/reference/gsk/html/home.png 0000664 0001750 0001750 00000000400 13724235174 020063 0 ustar mclasen mclasen PNG
IHDR a bKGD pHYs
B(x tIME& IDAT8ҽ Aߞf`n
v`6`/`Yܡ`f&k$,}0b+ԸaQW~b
Oe{y
N[L}.piBzmmo.I]7^[;%:V IENDB` build/docs/reference/gsk/html/left-insensitive.png 0000664 0001750 0001750 00000000613 13724235174 022431 0 ustar mclasen mclasen PNG
IHDR a bKGD pHYs
B(x tIMEƫq IDAT8͒NQ@pds`*4@W@ A!Ԇ@6^ 5hxIHR`sQp̙339B|sKEQTK@i^~Wʆ`0TJ6TcYn6A
ƀ~߱>}ǭs;
lYkwr5U= /" "uU=ɲlArDzp5I4^E+P3Ɯq_p̥iUYp=# IENDB` build/docs/reference/gsk/html/left.png 0000664 0001750 0001750 00000000406 13724235174 020073 0 ustar mclasen mclasen PNG
IHDR a bKGD pHYs
B(x tIME,`m; IDAT8үa?DAPY\$[p+IIMlf('}Mpy{_ޥ}^q
xZ
<=Yj)
<04\~+Pl#" ,Qϑp
Iǐlsw>[/]_i03 IENDB` build/docs/reference/gsk/html/right-insensitive.png 0000664 0001750 0001750 00000000565 13724235174 022622 0 ustar mclasen mclasen PNG
IHDR a bKGD pHYs
B(x tIME^ IDAT8͒J`
/S_$AqrW(>m"]\(49.Nd39{eM#MSIιE iHz|3{̲l3,K kV'@EEQlwyi q]Kh4:mĦ,;ts\aR5/7'Wps I,K1=0j0Wg > PU0]?qCҫιg~ kA_ IENDB` build/docs/reference/gsk/html/right.png 0000664 0001750 0001750 00000000405 13724235174 020255 0 ustar mclasen mclasen PNG
IHDR a bKGD pHYs
B(x tIME!G IDAT8үa?MIdEr,-hAIlry}sX6
!9#D
r$-Br$G"$;WZ&!cq
\`軀O=Qouf IENDB` build/docs/reference/gsk/html/up-insensitive.png 0000664 0001750 0001750 00000000566 13724235174 022132 0 ustar mclasen mclasen PNG
IHDR a bKGD pHYs
B(x tIMEwI IDAT8?/Qϙ?[u$VHTD ۈBM+!