docs/reference/gsk/0000775000175000017500000000000013226206762014366 5ustar mclasenmclasendocs/reference/gsk/gsk4.interfaces0000664000175000017500000000000013224000676017263 0ustar mclasenmclasendocs/reference/gsk/gsk4-decl-list.txt0000664000175000017500000001542413224000676017655 0ustar mclasenmclasen
gsk
gskbroadwayrendererprivate GSK_BROADWAY_RENDERER GSK_BROADWAY_RENDERER_CLASS GSK_BROADWAY_RENDERER_GET_CLASS GSK_IS_BROADWAY_RENDERER GSK_TYPE_BROADWAY_RENDERER GskBroadwayRenderer GskBroadwayRendererClass gsk_broadway_renderer_get_type
gskenums GskRenderNodeType GskScalingFilter GskBlendMode GskCorner GskSerializationError
gskenumtypes GSK_TYPE_RENDER_NODE_TYPE GSK_TYPE_SCALING_FILTER GSK_TYPE_BLEND_MODE GSK_TYPE_CORNER GSK_TYPE_SERIALIZATION_ERROR
gskglglyphcacheprivate gsk_gl_glyph_cache_init gsk_gl_glyph_cache_free gsk_gl_glyph_cache_begin_frame gsk_gl_glyph_cache_get_glyph_image gsk_gl_glyph_cache_lookup
gskglimageprivate gsk_gl_image_create gsk_gl_image_destroy gsk_gl_image_write_to_png gsk_gl_image_upload_regions
gskglrenderopsprivate GL_N_VERTICES GL_N_PROGRAMS ops_set_program ops_set_clip ops_set_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_color ops_draw ops_offset ops_add
gskrenderer gsk_renderer_new_for_window gsk_renderer_get_window gsk_renderer_get_display gsk_renderer_realize gsk_renderer_unrealize gsk_renderer_render_texture gsk_renderer_begin_draw_frame gsk_renderer_render gsk_renderer_end_draw_frame GSK_IS_RENDERER GSK_RENDERER GSK_TYPE_RENDERER GskRendererClass gsk_renderer_get_type
gskrendernode GSK_SERIALIZATION_ERROR GskColorStop GskShadow gsk_serialization_error_quark gsk_render_node_ref gsk_render_node_unref gsk_render_node_get_node_type gsk_render_node_set_name gsk_render_node_get_name gsk_render_node_get_bounds gsk_render_node_draw gsk_render_node_serialize gsk_render_node_write_to_file gsk_render_node_deserialize 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_peek_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_get_num_glyphs gsk_text_node_peek_glyphs gsk_text_node_peek_color gsk_text_node_get_x gsk_text_node_get_y gsk_blur_node_new gsk_blur_node_get_child gsk_blur_node_get_radius GSK_IS_RENDER_NODE GSK_TYPE_RENDER_NODE GskRenderNode gsk_render_node_get_type
gskresources
gskroundedrect 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
gsktypes GdkTexture GskRenderer
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
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
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
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
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
docs/reference/gsk/version.xml0000664000175000017500000000000713223475033016566 0ustar mclasenmclasen3.93.0 docs/reference/gsk/gsk4-sections.txt0000664000175000017500000000674313226206761017635 0ustar mclasenmclasen
GskRenderer gsk_renderer_new_for_window gsk_renderer_get_window gsk_renderer_get_display gsk_renderer_realize gsk_renderer_unrealize gsk_renderer_begin_draw_frame gsk_renderer_end_draw_frame gsk_renderer_render gsk_renderer_render_texture GSK_IS_RENDERER GSK_RENDERER GSK_TYPE_RENDERER GskRenderer GskRendererClass gsk_renderer_get_type GSK_TYPE_SCALING_FILTER
GskRenderNode gsk_render_node_ref gsk_render_node_unref GskRenderNodeType gsk_render_node_get_node_type gsk_render_node_draw GskSerializationError gsk_render_node_serialize gsk_render_node_deserialize gsk_render_node_write_to_file GskScalingFilter gsk_render_node_set_name gsk_render_node_get_name gsk_render_node_get_bounds 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_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_peek_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 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_get_x gsk_text_node_get_y gsk_blur_node_new gsk_blur_node_get_child gsk_blur_node_get_radius GSK_IS_RENDER_NODE GSK_RENDER_NODE GSK_TYPE_RENDER_NODE GSK_VALUE_HOLDS_RENDER_NODE GskRenderNode GskRenderNodeClass gsk_render_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
docs/reference/gsk/gsk4-undeclared.txt0000664000175000017500000000000013224000677020064 0ustar mclasenmclasendocs/reference/gsk/html.stamp0000664000175000017500000000001113226206764016372 0ustar mclasenmclasentimestampdocs/reference/gsk/gsk4.hierarchy0000664000175000017500000000020113224000676017121 0ustar mclasenmclasenGObject GskRenderer GdkDisplay GdkWindow GdkDrawingContext GInterface GTypePlugin GBoxed GValueArray GskRenderNode docs/reference/gsk/gsk4.args0000664000175000017500000000117113224000676016106 0ustar mclasenmclasen GskRenderer::display GdkDisplay* rwX Display The GdkDisplay object used by the renderer. GskRenderer::drawing-context GdkDrawingContext* r Drawing Context The drawing context used by the renderer. GskRenderer::window GdkWindow* r Window The window associated to the renderer. docs/reference/gsk/gsk4-docs.xml0000664000175000017500000000200213226206761016677 0ustar mclasenmclasen ]> 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 Reference Index of all symbols docs/reference/gsk/gsk4-decl.txt.bak0000664000175000017500000010571713224000676017445 0ustar mclasenmclasen GSK_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_type GType void GskBroadwayRenderer GskBroadwayRendererClass GskRenderNodeType 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 } 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; 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_type GType void gsk_renderer_new_for_window GskRenderer * GdkWindow *window gsk_renderer_get_window GdkWindow * GskRenderer *renderer gsk_renderer_get_display GdkDisplay * GskRenderer *renderer gsk_renderer_realize gboolean GskRenderer *renderer, GdkWindow *window, GError **error gsk_renderer_unrealize void GskRenderer *renderer gsk_renderer_render_texture GdkTexture * GskRenderer *renderer, GskRenderNode *root, const graphene_rect_t *viewport gsk_renderer_begin_draw_frame GdkDrawingContext * GskRenderer *renderer, const cairo_region_t *region gsk_renderer_render void GskRenderer *renderer, GskRenderNode *root, GdkDrawingContext *context gsk_renderer_end_draw_frame void GskRenderer *renderer, GdkDrawingContext *context GskRendererClass GSK_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 { double offset; GdkRGBA color; }; GskShadow struct _GskShadow { GdkRGBA color; float dx; float dy; float radius; }; gsk_render_node_get_type GType void gsk_serialization_error_quark GQuark void gsk_render_node_ref GskRenderNode * GskRenderNode *node gsk_render_node_unref void GskRenderNode *node gsk_render_node_get_node_type GskRenderNodeType GskRenderNode *node gsk_render_node_set_name void GskRenderNode *node, const char *name gsk_render_node_get_name const char * GskRenderNode *node gsk_render_node_get_bounds void GskRenderNode *node, graphene_rect_t *bounds gsk_render_node_draw void GskRenderNode *node, cairo_t *cr gsk_render_node_serialize GBytes * GskRenderNode *node gsk_render_node_write_to_file gboolean GskRenderNode *node, const char *filename, GError **error gsk_render_node_deserialize GskRenderNode * GBytes *bytes, GError **error gsk_color_node_new GskRenderNode * const GdkRGBA *rgba, const graphene_rect_t *bounds gsk_color_node_peek_color const GdkRGBA * GskRenderNode *node gsk_texture_node_new GskRenderNode * GdkTexture *texture, const graphene_rect_t *bounds gsk_texture_node_get_texture GdkTexture * GskRenderNode *node gsk_linear_gradient_node_new GskRenderNode * 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_start const graphene_point_t * GskRenderNode *node gsk_linear_gradient_node_peek_end const graphene_point_t * GskRenderNode *node gsk_linear_gradient_node_get_n_color_stops gsize GskRenderNode *node gsk_linear_gradient_node_peek_color_stops const GskColorStop * GskRenderNode *node gsk_repeating_linear_gradient_node_new GskRenderNode * 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_new GskRenderNode * const GskRoundedRect *outline, const float border_width[4], const GdkRGBA border_color[4] gsk_border_node_peek_outline const GskRoundedRect * GskRenderNode *node gsk_border_node_peek_widths const float * GskRenderNode *node gsk_border_node_peek_colors const GdkRGBA * GskRenderNode *node gsk_inset_shadow_node_new GskRenderNode * const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius gsk_inset_shadow_node_peek_outline const GskRoundedRect * GskRenderNode *node gsk_inset_shadow_node_peek_color const GdkRGBA * GskRenderNode *node gsk_inset_shadow_node_get_dx float GskRenderNode *node gsk_inset_shadow_node_get_dy float GskRenderNode *node gsk_inset_shadow_node_get_spread float GskRenderNode *node gsk_inset_shadow_node_get_blur_radius float GskRenderNode *node gsk_outset_shadow_node_new GskRenderNode * const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius gsk_outset_shadow_node_peek_outline const GskRoundedRect * GskRenderNode *node gsk_outset_shadow_node_peek_color const GdkRGBA * GskRenderNode *node gsk_outset_shadow_node_get_dx float GskRenderNode *node gsk_outset_shadow_node_get_dy float GskRenderNode *node gsk_outset_shadow_node_get_spread float GskRenderNode *node gsk_outset_shadow_node_get_blur_radius float GskRenderNode *node gsk_cairo_node_new GskRenderNode * const graphene_rect_t *bounds gsk_cairo_node_get_draw_context cairo_t * GskRenderNode *node, GskRenderer *renderer gsk_cairo_node_peek_surface const cairo_surface_t * GskRenderNode *node gsk_container_node_new GskRenderNode * GskRenderNode **children, guint n_children gsk_container_node_get_n_children guint GskRenderNode *node gsk_container_node_get_child GskRenderNode * GskRenderNode *node, guint idx gsk_transform_node_new GskRenderNode * GskRenderNode *child, const graphene_matrix_t *transform gsk_transform_node_get_child GskRenderNode * GskRenderNode *node gsk_transform_node_peek_transform const graphene_matrix_t * GskRenderNode *node gsk_opacity_node_new GskRenderNode * GskRenderNode *child, double opacity gsk_opacity_node_get_child GskRenderNode * GskRenderNode *node gsk_opacity_node_get_opacity double GskRenderNode *node gsk_color_matrix_node_new GskRenderNode * GskRenderNode *child, const graphene_matrix_t *color_matrix, const graphene_vec4_t *color_offset gsk_color_matrix_node_get_child GskRenderNode * GskRenderNode *node gsk_color_matrix_node_peek_color_matrix const graphene_matrix_t * GskRenderNode *node gsk_color_matrix_node_peek_color_offset const graphene_vec4_t * GskRenderNode *node gsk_repeat_node_new GskRenderNode * const graphene_rect_t *bounds, GskRenderNode *child, const graphene_rect_t *child_bounds gsk_repeat_node_get_child GskRenderNode * GskRenderNode *node gsk_repeat_node_peek_child_bounds const graphene_rect_t * GskRenderNode *node gsk_clip_node_new GskRenderNode * GskRenderNode *child, const graphene_rect_t *clip gsk_clip_node_get_child GskRenderNode * GskRenderNode *node gsk_clip_node_peek_clip const graphene_rect_t * GskRenderNode *node gsk_rounded_clip_node_new GskRenderNode * GskRenderNode *child, const GskRoundedRect *clip gsk_rounded_clip_node_get_child GskRenderNode * GskRenderNode *node gsk_rounded_clip_node_peek_clip const GskRoundedRect * GskRenderNode *node gsk_shadow_node_new GskRenderNode * GskRenderNode *child, const GskShadow *shadows, gsize n_shadows gsk_shadow_node_get_child GskRenderNode * GskRenderNode *node gsk_shadow_node_peek_shadow const GskShadow * GskRenderNode *node, gsize i gsk_shadow_node_get_n_shadows gsize GskRenderNode *node gsk_blend_node_new GskRenderNode * GskRenderNode *bottom, GskRenderNode *top, GskBlendMode blend_mode gsk_blend_node_get_bottom_child GskRenderNode * GskRenderNode *node gsk_blend_node_get_top_child GskRenderNode * GskRenderNode *node gsk_blend_node_get_blend_mode GskBlendMode GskRenderNode *node gsk_cross_fade_node_new GskRenderNode * GskRenderNode *start, GskRenderNode *end, double progress gsk_cross_fade_node_get_start_child GskRenderNode * GskRenderNode *node gsk_cross_fade_node_get_end_child GskRenderNode * GskRenderNode *node gsk_cross_fade_node_get_progress double GskRenderNode *node gsk_text_node_new GskRenderNode * PangoFont *font, PangoGlyphString *glyphs, const GdkRGBA *color, double x, double y gsk_text_node_peek_font const PangoFont * GskRenderNode *node gsk_text_node_get_num_glyphs guint GskRenderNode *node gsk_text_node_peek_glyphs const PangoGlyphInfo * GskRenderNode *node gsk_text_node_peek_color const GdkRGBA * GskRenderNode *node gsk_text_node_get_x float GskRenderNode *node gsk_text_node_get_y float GskRenderNode *node gsk_blur_node_new GskRenderNode * GskRenderNode *child, double radius gsk_blur_node_get_child GskRenderNode * GskRenderNode *node gsk_blur_node_get_radius double GskRenderNode *node GskRenderNode GSK_ROUNDED_RECT_INIT #define GSK_ROUNDED_RECT_INIT(_x,_y,_w,_h) (GskRoundedRect) { .rect = GRAPHENE_RECT_INIT(_x,_y,_w,_h) } GskRoundedRect struct _GskRoundedRect { graphene_rect_t bounds; graphene_size_t corner[4]; }; gsk_rounded_rect_init GskRoundedRect * 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_copy GskRoundedRect * GskRoundedRect *self, const GskRoundedRect *src gsk_rounded_rect_init_from_rect GskRoundedRect * GskRoundedRect *self, const graphene_rect_t *bounds, float radius gsk_rounded_rect_normalize GskRoundedRect * GskRoundedRect *self gsk_rounded_rect_offset GskRoundedRect * GskRoundedRect *self, float dx, float dy gsk_rounded_rect_shrink GskRoundedRect * GskRoundedRect *self, float top, float right, float bottom, float left gsk_rounded_rect_is_rectilinear gboolean const GskRoundedRect *self gsk_rounded_rect_contains_point gboolean const GskRoundedRect *self, const graphene_point_t *point gsk_rounded_rect_contains_rect gboolean const GskRoundedRect *self, const graphene_rect_t *rect gsk_rounded_rect_intersects_rect gboolean const GskRoundedRect *self, const graphene_rect_t *rect GdkTexture GskRenderer 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_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_blend_mode_pipeline_count_vertex_data gsize GskVulkanBlendModePipeline *pipeline gsk_vulkan_blend_mode_pipeline_collect_vertex_data void 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_draw gsize GskVulkanBlendModePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanBlendModePipeline GskVulkanBlendModePipelineLayout GSK_TYPE_VULKAN_BLUR_PIPELINE #define GSK_TYPE_VULKAN_BLUR_PIPELINE (gsk_vulkan_blur_pipeline_get_type ()) gsk_vulkan_blur_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_blur_pipeline_count_vertex_data gsize GskVulkanBlurPipeline *pipeline gsk_vulkan_blur_pipeline_collect_vertex_data void GskVulkanBlurPipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect, double radius gsk_vulkan_blur_pipeline_draw gsize GskVulkanBlurPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanBlurPipeline GskVulkanBlurPipelineLayout GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE #define GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE (gsk_vulkan_color_text_pipeline_get_type ()) gsk_vulkan_color_text_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_color_text_pipeline_count_vertex_data gsize GskVulkanColorTextPipeline *pipeline, int num_instances gsk_vulkan_color_text_pipeline_collect_vertex_data void GskVulkanColorTextPipeline *pipeline, guchar *data, GskVulkanRenderer *renderer, const graphene_rect_t *rect, PangoFont *font, guint total_glyphs, const PangoGlyphInfo *glyphs, float x, float y, guint start_glyph, guint num_glyphs, float scale gsk_vulkan_color_text_pipeline_draw gsize GskVulkanColorTextPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanColorTextPipeline GskVulkanColorTextPipelineLayout GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE #define GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE (gsk_vulkan_cross_fade_pipeline_get_type ()) gsk_vulkan_cross_fade_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_cross_fade_pipeline_count_vertex_data gsize GskVulkanCrossFadePipeline *pipeline gsk_vulkan_cross_fade_pipeline_collect_vertex_data void 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_draw gsize GskVulkanCrossFadePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanCrossFadePipeline GskVulkanCrossFadePipelineLayout GSK_TYPE_VULKAN_GLYPH_CACHE #define GSK_TYPE_VULKAN_GLYPH_CACHE (gsk_vulkan_glyph_cache_get_type ()) gsk_vulkan_glyph_cache_new GskVulkanGlyphCache * GdkVulkanContext *vulkan gsk_vulkan_glyph_cache_get_glyph_image GskVulkanImage * GskVulkanGlyphCache *cache, GskVulkanUploader *uploader, guint index gsk_vulkan_glyph_cache_lookup GskVulkanCachedGlyph * GskVulkanGlyphCache *cache, gboolean create, PangoFont *font, PangoGlyph glyph, float scale gsk_vulkan_glyph_cache_begin_frame void GskVulkanGlyphCache *cache GskVulkanGlyphCache GSK_TYPE_VULKAN_TEXT_PIPELINE #define GSK_TYPE_VULKAN_TEXT_PIPELINE (gsk_vulkan_text_pipeline_get_type ()) gsk_vulkan_text_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_text_pipeline_count_vertex_data gsize GskVulkanTextPipeline *pipeline, int num_instances gsk_vulkan_text_pipeline_collect_vertex_data void GskVulkanTextPipeline *pipeline, guchar *data, GskVulkanRenderer *renderer, const graphene_rect_t *rect, PangoFont *font, guint total_glyphs, const PangoGlyphInfo *glyphs, const GdkRGBA *color, float x, float y, guint start_glyph, guint num_glyphs, float scale gsk_vulkan_text_pipeline_draw gsize GskVulkanTextPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanTextPipeline GskVulkanTextPipelineLayout GSK_TYPE_VULKAN_TEXTURE_PIPELINE #define GSK_TYPE_VULKAN_TEXTURE_PIPELINE (gsk_vulkan_texture_pipeline_get_type ()) gsk_vulkan_texture_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_texture_pipeline_count_vertex_data gsize GskVulkanTexturePipeline *pipeline gsk_vulkan_texture_pipeline_collect_vertex_data void GskVulkanTexturePipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect gsk_vulkan_texture_pipeline_draw gsize GskVulkanTexturePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanTexturePipeline GskVulkanTexturePipelineLayout gsk_gl_glyph_cache_init void GskGLGlyphCache *self, GskGLDriver *gl_driver gsk_gl_glyph_cache_free void GskGLGlyphCache *self gsk_gl_glyph_cache_begin_frame void GskGLGlyphCache *self gsk_gl_glyph_cache_get_glyph_image GskGLImage * GskGLGlyphCache *self, const GskGLCachedGlyph *glyph gsk_gl_glyph_cache_lookup const GskGLCachedGlyph * GskGLGlyphCache *self, gboolean create, PangoFont *font, PangoGlyph glyph, float scale gsk_gl_image_create void GskGLImage *self, GskGLDriver *gl_driver, int width, int height gsk_gl_image_destroy void GskGLImage *self, GskGLDriver *gl_driver gsk_gl_image_write_to_png void const GskGLImage *self, GskGLDriver *gl_driver, const char *filename gsk_gl_image_upload_regions void GskGLImage *self, GskGLDriver *gl_driver, guint n_regions, const GskImageRegion *regions GL_N_VERTICES #define GL_N_VERTICES 6 GL_N_PROGRAMS #define GL_N_PROGRAMS 12 ops_set_program void RenderOpBuilder *builder, const Program *program ops_set_clip GskRoundedRect RenderOpBuilder *builder, const GskRoundedRect *clip ops_set_modelview graphene_matrix_t RenderOpBuilder *builder, const graphene_matrix_t *modelview ops_set_projection graphene_matrix_t RenderOpBuilder *builder, const graphene_matrix_t *projection ops_set_viewport graphene_rect_t RenderOpBuilder *builder, const graphene_rect_t *viewport ops_set_texture void RenderOpBuilder *builder, int texture_id ops_set_render_target int RenderOpBuilder *builder, int render_target_id ops_set_opacity float RenderOpBuilder *builder, float opacity ops_set_color void RenderOpBuilder *builder, const GdkRGBA *color ops_set_color_matrix void RenderOpBuilder *builder, const graphene_matrix_t *matrix, const graphene_vec4_t *offset ops_set_border void RenderOpBuilder *builder, const float *widths ops_set_border_color void RenderOpBuilder *builder, const GdkRGBA *color ops_draw void RenderOpBuilder *builder, const GskQuadVertex vertex_data[GL_N_VERTICES] ops_offset void RenderOpBuilder *builder, float x, float y ops_add void RenderOpBuilder *builder, const RenderOp *op GSK_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 ()) docs/reference/gsk/html/0000775000175000017500000000000013226206764015334 5ustar mclasenmclasendocs/reference/gsk/html/right-insensitive.png0000644000175000017500000000056513226206764021521 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIME ^IDAT8͒J` /S_$AqrW(>m"]\(49.Nd39{eM#MSIιEiHz|3{̲l3,KkV'@EEQlwyiq]Kh4:mĦ,;ts\aR5/7'Wps׭I,K1=0j0Wg> PU𻤝0 ]?qCҫιg~kA_IENDB`docs/reference/gsk/html/up-insensitive.png0000644000175000017500000000056613226206764021031 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIMEwIIDAT8?/Qϙ?[u$VHTDۈBM+!}ǭs; lYkwr 5U= /" "uU=ɲlArDzp5I4^E+P3Ɯq_p ̥iUYp=#IENDB`docs/reference/gsk/html/GskRenderNode.html0000664000175000017500000042473313226206764020731 0ustar mclasenmclasen GskRenderNode: GSK 4 Reference Manual

GskRenderNode

GskRenderNode — Simple scene graph element

Functions

GskRenderNode * gsk_render_node_ref ()
void gsk_render_node_unref ()
GskRenderNodeType gsk_render_node_get_node_type ()
void gsk_render_node_draw ()
GBytes * gsk_render_node_serialize ()
GskRenderNode * gsk_render_node_deserialize ()
gboolean gsk_render_node_write_to_file ()
void gsk_render_node_set_name ()
const char * gsk_render_node_get_name ()
void gsk_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 ()
gsize gsk_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 ()
float gsk_inset_shadow_node_get_dx ()
float gsk_inset_shadow_node_get_dy ()
float gsk_inset_shadow_node_get_spread ()
float gsk_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 ()
float gsk_outset_shadow_node_get_dx ()
float gsk_outset_shadow_node_get_dy ()
float gsk_outset_shadow_node_get_spread ()
float gsk_outset_shadow_node_get_blur_radius ()
GskRenderNode * gsk_cairo_node_new ()
cairo_t * gsk_cairo_node_get_draw_context ()
GskRenderNode * gsk_container_node_new ()
guint gsk_container_node_get_n_children ()
GskRenderNode * gsk_container_node_get_child ()
GskRenderNode * gsk_transform_node_new ()
GskRenderNode * gsk_transform_node_get_child ()
const graphene_matrix_t * gsk_transform_node_peek_transform ()
GskRenderNode * gsk_opacity_node_new ()
GskRenderNode * gsk_opacity_node_get_child ()
double gsk_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 ()
gsize gsk_shadow_node_get_n_shadows ()
GskRenderNode * gsk_blend_node_new ()
GskRenderNode * gsk_blend_node_get_bottom_child ()
GskRenderNode * gsk_blend_node_get_top_child ()
GskBlendMode gsk_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 ()
double gsk_cross_fade_node_get_progress ()
GskRenderNode * gsk_text_node_new ()
const PangoFont * gsk_text_node_peek_font ()
const PangoGlyphInfo * gsk_text_node_peek_glyphs ()
const GdkRGBA * gsk_text_node_peek_color ()
float gsk_text_node_get_x ()
float gsk_text_node_get_y ()
GskRenderNode * gsk_blur_node_new ()
GskRenderNode * gsk_blur_node_get_child ()
double gsk_blur_node_get_radius ()

Types and Values

Object Hierarchy

    GBoxed
    ╰── GskRenderNode

Description

GskRenderNode 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.

Functions

gsk_render_node_ref ()

GskRenderNode *
gsk_render_node_ref (GskRenderNode *node);

Acquires a reference on the given GskRenderNode.

Parameters

node

a GskRenderNode

 

Returns

the GskRenderNode with an additional reference.

[transfer none]

Since: 3.90


gsk_render_node_unref ()

void
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.

Parameters

node

a GskRenderNode

 

Since: 3.90


gsk_render_node_get_node_type ()

GskRenderNodeType
gsk_render_node_get_node_type (GskRenderNode *node);

Returns the type of the node .

Parameters

node

a GskRenderNode

 

Returns

the type of the GskRenderNode

Since: 3.90


gsk_render_node_draw ()

void
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 GdkWindow's rendering buffer.

For advanced nodes that cannot be supported using Cairo, in particular for nodes doing 3D operations, this function may fail.

Parameters

node

a GskRenderNode

 

cr

cairo context to draw to

 

gsk_render_node_serialize ()

GBytes *
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.

Parameters

node

a GskRenderNode

 

Returns

a GBytes representing the node.


gsk_render_node_deserialize ()

GskRenderNode *
gsk_render_node_deserialize (GBytes *bytes,
                             GError **error);

Loads data previously created via gsk_render_node_serialize(). For a discussion of the supported format, see that function.

Parameters

bytes

the bytes containing the data

 

error

location to store error or NULL.

[allow-none]

Returns

a new GskRenderNode or NULL on error.

[nullable][transfer full]


gsk_render_node_write_to_file ()

gboolean
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.

Parameters

node

a GskRenderNode

 

filename

the file to save it to.

 

error

Return location for a potential error

 

Returns

TRUE if saving was successful


gsk_render_node_set_name ()

void
gsk_render_node_set_name (GskRenderNode *node,
                          const char *name);

Sets the name of the node.

A name is generally useful for debugging purposes.

Parameters

node

a GskRenderNode

 

name

a name for the node.

[nullable]

Since: 3.90


gsk_render_node_get_name ()

const char *
gsk_render_node_get_name (GskRenderNode *node);

Retrieves the name previously set via gsk_render_node_set_name(). If no name has been set, NULL is returned.

Parameters

node

a GskRenderNode

 

Returns

The name previously set via gsk_render_node_set_name() or NULL.

[nullable]

Since: 3.90


gsk_render_node_get_bounds ()

void
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.

Parameters

node

a GskRenderNode

 

bounds

return location for the boundaries.

[out caller-allocates]

Since: 3.90


gsk_color_node_new ()

GskRenderNode *
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 .

Parameters

rgba

a GdkRGBA specifying a color

 

bounds

the rectangle to render the color into

 

Returns

A new GskRenderNode

Since: 3.90


gsk_color_node_peek_color ()

const GdkRGBA *
gsk_color_node_peek_color (GskRenderNode *node);

gsk_texture_node_new ()

GskRenderNode *
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 .

Parameters

texture

the GdkTexture

 

bounds

the rectangle to render the texture into

 

Returns

A new GskRenderNode

Since: 3.90


gsk_texture_node_get_texture ()

GdkTexture *
gsk_texture_node_get_texture (GskRenderNode *node);

Parameters

node

a GskRenderNode

 

Returns

the GdkTexture.

[transfer none]

Since: 3.94


gsk_linear_gradient_node_new ()

GskRenderNode *
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 .

Parameters

bounds

the rectangle to render the linear gradient into

 

start

the point at which the linear gradient will begin

 

end

the point at which the linear gradient will finish

 

color_stops

a pointer to an array of GskColorStop defining the gradient.

[array length=n_color_stops]

n_color_stops

the number of elements in color_stops

 

Returns

A new GskRenderNode

Since: 3.90


gsk_linear_gradient_node_peek_start ()

const graphene_point_t *
gsk_linear_gradient_node_peek_start (GskRenderNode *node);

gsk_linear_gradient_node_peek_end ()

const graphene_point_t *
gsk_linear_gradient_node_peek_end (GskRenderNode *node);

gsk_linear_gradient_node_get_n_color_stops ()

gsize
gsk_linear_gradient_node_get_n_color_stops
                               (GskRenderNode *node);

gsk_linear_gradient_node_peek_color_stops ()

const GskColorStop *
gsk_linear_gradient_node_peek_color_stops
                               (GskRenderNode *node);

gsk_repeating_linear_gradient_node_new ()

GskRenderNode *
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 .

Parameters

bounds

the rectangle to render the linear gradient into

 

start

the point at which the linear gradient will begin

 

end

the point at which the linear gradient will finish

 

color_stops

a pointer to an array of GskColorStop defining the gradient.

[array length=n_color_stops]

n_color_stops

the number of elements in color_stops

 

Returns

A new GskRenderNode

Since: 3.90


gsk_border_node_new ()

GskRenderNode *
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.

Parameters

outline

a GskRoundedRect describing the outline of the border

 

border_width

the stroke width of the border on the top, right, bottom and left side respectively.

 

border_color

the color used on the top, right, bottom and left side.

 

Returns

A new GskRenderNode

Since: 3.90


gsk_border_node_peek_outline ()

const GskRoundedRect *
gsk_border_node_peek_outline (GskRenderNode *node);

gsk_border_node_peek_widths ()

const float *
gsk_border_node_peek_widths (GskRenderNode *node);

gsk_border_node_peek_colors ()

const GdkRGBA *
gsk_border_node_peek_colors (GskRenderNode *node);

gsk_inset_shadow_node_new ()

GskRenderNode *
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 .

Parameters

outline

outline of the region containing the shadow

 

color

color of the shadow

 

dx

horizontal offset of shadow

 

dy

vertical offset of shadow

 

spread

how far the shadow spreads towards the inside

 

blur_radius

how much blur to apply to the shadow

 

Returns

A new GskRenderNode

Since: 3.90


gsk_inset_shadow_node_peek_outline ()

const GskRoundedRect *
gsk_inset_shadow_node_peek_outline (GskRenderNode *node);

gsk_inset_shadow_node_peek_color ()

const GdkRGBA *
gsk_inset_shadow_node_peek_color (GskRenderNode *node);

gsk_inset_shadow_node_get_dx ()

float
gsk_inset_shadow_node_get_dx (GskRenderNode *node);

gsk_inset_shadow_node_get_dy ()

float
gsk_inset_shadow_node_get_dy (GskRenderNode *node);

gsk_inset_shadow_node_get_spread ()

float
gsk_inset_shadow_node_get_spread (GskRenderNode *node);

gsk_inset_shadow_node_get_blur_radius ()

float
gsk_inset_shadow_node_get_blur_radius (GskRenderNode *node);

gsk_outset_shadow_node_new ()

GskRenderNode *
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 .

Parameters

outline

outline of the region surrounded by shadow

 

color

color of the shadow

 

dx

horizontal offset of shadow

 

dy

vertical offset of shadow

 

spread

how far the shadow spreads towards the inside

 

blur_radius

how much blur to apply to the shadow

 

Returns

A new GskRenderNode

Since: 3.90


gsk_outset_shadow_node_peek_outline ()

const GskRoundedRect *
gsk_outset_shadow_node_peek_outline (GskRenderNode *node);

gsk_outset_shadow_node_peek_color ()

const GdkRGBA *
gsk_outset_shadow_node_peek_color (GskRenderNode *node);

gsk_outset_shadow_node_get_dx ()

float
gsk_outset_shadow_node_get_dx (GskRenderNode *node);

gsk_outset_shadow_node_get_dy ()

float
gsk_outset_shadow_node_get_dy (GskRenderNode *node);

gsk_outset_shadow_node_get_spread ()

float
gsk_outset_shadow_node_get_spread (GskRenderNode *node);

gsk_outset_shadow_node_get_blur_radius ()

float
gsk_outset_shadow_node_get_blur_radius
                               (GskRenderNode *node);

gsk_cairo_node_new ()

GskRenderNode *
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()

Parameters

bounds

the rectangle to render to

 

Returns

A new GskRenderNode

Since: 3.90


gsk_cairo_node_get_draw_context ()

cairo_t *
gsk_cairo_node_get_draw_context (GskRenderNode *node,
                                 GskRenderer *renderer);

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 .

Parameters

node

a cairo GskRenderNode

 

renderer

Renderer to optimize for or NULL for any.

[nullable]

Returns

a Cairo context used for drawing; use cairo_destroy() when done drawing.

[transfer full]

Since: 3.90


gsk_container_node_new ()

GskRenderNode *
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.

Parameters

children

The children of the node.

[array length=n_children][transfer none]

n_children

Number of children in the children array

 

Returns

the new GskRenderNode.

[transfer full]

Since: 3.90


gsk_container_node_get_n_children ()

guint
gsk_container_node_get_n_children (GskRenderNode *node);

Retrieves the number of direct children of node .

Parameters

node

a container GskRenderNode

 

Returns

the number of children of the GskRenderNode

Since: 3.90


gsk_container_node_get_child ()

GskRenderNode *
gsk_container_node_get_child (GskRenderNode *node,
                              guint idx);

Gets one of the children of container .

Parameters

node

a container GskRenderNode

 

idx

the position of the child to get

 

Returns

the idx 'th child of container

Since: 3.90


gsk_transform_node_new ()

GskRenderNode *
gsk_transform_node_new (GskRenderNode *child,
                        const graphene_matrix_t *transform);

Creates a GskRenderNode that will transform the given child with the given transform .

Parameters

child

The node to transform

 

transform

The transform to apply

 

Returns

A new GskRenderNode

Since: 3.90


gsk_transform_node_get_child ()

GskRenderNode *
gsk_transform_node_get_child (GskRenderNode *node);

Gets the child node that is getting transformed by the given node .

Parameters

node

a transform GskRenderNode

 

Returns

The child that is getting transformed.

[transfer none]


gsk_transform_node_peek_transform ()

const graphene_matrix_t *
gsk_transform_node_peek_transform (GskRenderNode *node);

gsk_opacity_node_new ()

GskRenderNode *
gsk_opacity_node_new (GskRenderNode *child,
                      double opacity);

Creates a GskRenderNode that will drawn the child with reduced opacity .

Parameters

child

The node to draw

 

opacity

The opacity to apply

 

Returns

A new GskRenderNode

Since: 3.90


gsk_opacity_node_get_child ()

GskRenderNode *
gsk_opacity_node_get_child (GskRenderNode *node);

Gets the child node that is getting opacityed by the given node .

Parameters

node

a opacity GskRenderNode

 

Returns

The child that is getting opacityed.

[transfer none]


gsk_opacity_node_get_opacity ()

double
gsk_opacity_node_get_opacity (GskRenderNode *node);

gsk_color_matrix_node_new ()

GskRenderNode *
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 operation pixel = color_matrix * pixel + color_offset for every pixel.

Parameters

child

The node to draw

 

color_matrix

The matrix to apply

 

color_offset

Values to add to the color

 

Returns

A new GskRenderNode

Since: 3.90


gsk_color_matrix_node_get_child ()

GskRenderNode *
gsk_color_matrix_node_get_child (GskRenderNode *node);

Gets the child node that is getting its colors modified by the given node .

Parameters

node

a color matrix GskRenderNode

 

Returns

The child that is getting its colors modified.

[transfer none]


gsk_color_matrix_node_peek_color_matrix ()

const graphene_matrix_t *
gsk_color_matrix_node_peek_color_matrix
                               (GskRenderNode *node);

gsk_color_matrix_node_peek_color_offset ()

const graphene_vec4_t *
gsk_color_matrix_node_peek_color_offset
                               (GskRenderNode *node);

gsk_repeat_node_new ()

GskRenderNode *
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 .

Parameters

bounds

The bounds of the area to be painted

 

child

The child to repeat

 

child_bounds

The area of the child to repeat or NULL to use the child's bounds.

[allow-none]

Returns

A new GskRenderNode

Since: 3.90


gsk_repeat_node_get_child ()

GskRenderNode *
gsk_repeat_node_get_child (GskRenderNode *node);

gsk_repeat_node_peek_child_bounds ()

const graphene_rect_t *
gsk_repeat_node_peek_child_bounds (GskRenderNode *node);

gsk_clip_node_new ()

GskRenderNode *
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 .

Parameters

child

The node to draw

 

clip

The clip to apply

 

Returns

A new GskRenderNode

Since: 3.90


gsk_clip_node_get_child ()

GskRenderNode *
gsk_clip_node_get_child (GskRenderNode *node);

Gets the child node that is getting clipped by the given node .

Parameters

node

a clip GskRenderNode

 

Returns

The child that is getting clipped.

[transfer none]


gsk_clip_node_peek_clip ()

const graphene_rect_t *
gsk_clip_node_peek_clip (GskRenderNode *node);

gsk_rounded_clip_node_new ()

GskRenderNode *
gsk_rounded_clip_node_new (GskRenderNode *child,
                           const GskRoundedRect *clip);

Creates a GskRenderNode that will clip the child to the area given by clip .

Parameters

child

The node to draw

 

clip

The clip to apply

 

Returns

A new GskRenderNode

Since: 3.90


gsk_rounded_clip_node_get_child ()

GskRenderNode *
gsk_rounded_clip_node_get_child (GskRenderNode *node);

Gets the child node that is getting clipped by the given node .

Parameters

node

a clip GskRenderNode

 

Returns

The child that is getting clipped.

[transfer none]


gsk_rounded_clip_node_peek_clip ()

const GskRoundedRect *
gsk_rounded_clip_node_peek_clip (GskRenderNode *node);

gsk_shadow_node_new ()

GskRenderNode *
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.

Parameters

child

The node to draw

 

shadows

The shadows to apply.

[array length=n_shadows]

n_shadows

number of entries in the shadows array

 

Returns

A new GskRenderNode

Since: 3.90


gsk_shadow_node_peek_shadow ()

const GskShadow *
gsk_shadow_node_peek_shadow (GskRenderNode *node,
                             gsize i);

gsk_shadow_node_get_n_shadows ()

gsize
gsk_shadow_node_get_n_shadows (GskRenderNode *node);

gsk_blend_node_new ()

GskRenderNode *
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.

Parameters

bottom

The bottom node to be drawn

 

top

The node to be blended onto the bottom node

 

blend_mode

The blend mode to use

 

Returns

A new GskRenderNode

Since: 3.90


gsk_blend_node_get_bottom_child ()

GskRenderNode *
gsk_blend_node_get_bottom_child (GskRenderNode *node);

gsk_blend_node_get_top_child ()

GskRenderNode *
gsk_blend_node_get_top_child (GskRenderNode *node);

gsk_blend_node_get_blend_mode ()

GskBlendMode
gsk_blend_node_get_blend_mode (GskRenderNode *node);

gsk_cross_fade_node_new ()

GskRenderNode *
gsk_cross_fade_node_new (GskRenderNode *start,
                         GskRenderNode *end,
                         double progress);

Creates a GskRenderNode that will do a cross-fade between start and end .

Parameters

start

The start node to be drawn

 

end

The node to be cross_fadeed onto the start node

 

progress

How far the fade has progressed from start to end. The value will be clamped to the range [0 ... 1]

 

Returns

A new GskRenderNode

Since: 3.90


gsk_cross_fade_node_get_start_child ()

GskRenderNode *
gsk_cross_fade_node_get_start_child (GskRenderNode *node);

gsk_cross_fade_node_get_end_child ()

GskRenderNode *
gsk_cross_fade_node_get_end_child (GskRenderNode *node);

gsk_cross_fade_node_get_progress ()

double
gsk_cross_fade_node_get_progress (GskRenderNode *node);

gsk_text_node_new ()

GskRenderNode *
gsk_text_node_new (PangoFont *font,
                   PangoGlyphString *glyphs,
                   const GdkRGBA *color,
                   double x,
                   double y);

Creates a render node that renders the given glyphs, Note that color may not be used if the font contains color glyphs.

Parameters

font

the PangoFont containing the glyphs

 

glyphs

the PangoGlyphString to render

 

color

the foreground color to render with

 

x

the x coordinate at which to put the baseline

 

y

the y coordinate at wihch to put the baseline

 

Returns

a new text node, or NULL

Since: 3.92


gsk_text_node_peek_font ()

const PangoFont *
gsk_text_node_peek_font (GskRenderNode *node);

gsk_text_node_peek_glyphs ()

const PangoGlyphInfo *
gsk_text_node_peek_glyphs (GskRenderNode *node);

gsk_text_node_peek_color ()

const GdkRGBA *
gsk_text_node_peek_color (GskRenderNode *node);

gsk_text_node_get_x ()

float
gsk_text_node_get_x (GskRenderNode *node);

gsk_text_node_get_y ()

float
gsk_text_node_get_y (GskRenderNode *node);

gsk_blur_node_new ()

GskRenderNode *
gsk_blur_node_new (GskRenderNode *child,
                   double radius);

Creates a render node that blurs the child.

Parameters

child

the child node to blur

 

radius

the blur radius

 

Since: 3.92


gsk_blur_node_get_child ()

GskRenderNode *
gsk_blur_node_get_child (GskRenderNode *node);

gsk_blur_node_get_radius ()

double
gsk_blur_node_get_radius (GskRenderNode *node);

Types and Values

enum GskRenderNodeType

The type of a node determines what the node is rendering.

Members

GSK_NOT_A_RENDER_NODE

Error type. No node will ever have this type.

 

GSK_CONTAINER_NODE

A node containing a stack of children

 

GSK_CAIRO_NODE

A node drawing a cairo_surface_t

 

GSK_COLOR_NODE

A node drawing a single color rectangle

 

GSK_LINEAR_GRADIENT_NODE

A node drawing a linear gradient

 

GSK_REPEATING_LINEAR_GRADIENT_NODE

A node drawing a repeating linear gradient

 

GSK_BORDER_NODE

A node stroking a border around an area

 

GSK_TEXTURE_NODE

A node drawing a GdkTexture

 

GSK_INSET_SHADOW_NODE

A node drawing an inset shadow

 

GSK_OUTSET_SHADOW_NODE

A node drawing an outset shadow

 

GSK_TRANSFORM_NODE

A node that renders its child after applying a matrix transform

 

GSK_OPACITY_NODE

A node that changes the opacity of its child

 

GSK_COLOR_MATRIX_NODE

A node that applies a color matrix to every pixel

 

GSK_REPEAT_NODE

A node that repeats the child's contents

 

GSK_CLIP_NODE

A node that clips its child to a rectangular area

 

GSK_ROUNDED_CLIP_NODE

A node that clips its child to a rounded rectangle

 

GSK_SHADOW_NODE

A node that draws a shadow below its child

 

GSK_BLEND_NODE

A node that blends two children together

 

GSK_CROSS_FADE_NODE

A node that cross-fades between two children

 

GSK_TEXT_NODE

A node containing a glyph string

 

GSK_BLUR_NODE

A node that applies a blur

 

Since: 3.90


enum GskSerializationError

Errors that can happen during (de)serialization.

Members

GSK_SERIALIZATION_UNSUPPORTED_FORMAT

The format can not be identified

 

GSK_SERIALIZATION_UNSUPPORTED_VERSION

The version of the data is not understood

 

GSK_SERIALIZATION_INVALID_DATA

The given data may not exist in a proper serialization

 

enum GskScalingFilter

The filters used when scaling texture data.

The actual implementation of each filter is deferred to the rendering pipeline.

Members

GSK_SCALING_FILTER_LINEAR

linear interpolation filter

 

GSK_SCALING_FILTER_NEAREST

nearest neighbor interpolation filter

 

GSK_SCALING_FILTER_TRILINEAR

linear interpolation along each axis, plus mipmap generation, with linear interpolation along the mipmap levels

 

Since: 3.90


struct GskShadow

struct GskShadow {
  GdkRGBA color;
  float dx;
  float dy;
  float radius;
};

enum GskBlendMode

The blend modes available for render nodes.

The implementation of each blend mode is deferred to the rendering pipeline.

Members

GSK_BLEND_MODE_DEFAULT

The default blend mode, which specifies no blending

 

GSK_BLEND_MODE_MULTIPLY

The source color is multiplied by the destination and replaces the destination

 

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

...

 

Since: 3.90

docs/reference/gsk/html/index.html0000664000175000017500000000333113226206764017331 0ustar mclasenmclasen GSK 4 Reference Manual: GSK 4 Reference Manual

This document is for the GSK 4 library, version 3.93.0 The latest versions can be found online at https://developer.gnome.org/gsk4/.


I. API Reference
GskRenderer — Renders a scene
GskRenderNode — Simple scene graph element
Index of all symbols
docs/reference/gsk/html/right.png0000644000175000017500000000040513226206764017154 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIME!GIDAT8үa?MIdEr,-hAIl ry}sX6 !9#D r$-Br$G"$;WZ&!cq \`軀O=QoufIENDB`docs/reference/gsk/html/api-index-full.html0000664000175000017500000007031213226206764021043 0ustar mclasenmclasen Index of all symbols: GSK 4 Reference Manual

Index of all symbols

B

GskBlendMode, enum in GskRenderNode
gsk_blend_node_get_blend_mode, function in GskRenderNode
gsk_blend_node_get_bottom_child, function in GskRenderNode
gsk_blend_node_get_top_child, function in GskRenderNode
gsk_blend_node_new, function in GskRenderNode
gsk_blur_node_get_child, function in GskRenderNode
gsk_blur_node_get_radius, function in GskRenderNode
gsk_blur_node_new, function in GskRenderNode
gsk_border_node_new, function in GskRenderNode
gsk_border_node_peek_colors, function in GskRenderNode
gsk_border_node_peek_outline, function in GskRenderNode
gsk_border_node_peek_widths, function in GskRenderNode

C

gsk_cairo_node_get_draw_context, function in GskRenderNode
gsk_cairo_node_new, function in GskRenderNode
gsk_clip_node_get_child, function in GskRenderNode
gsk_clip_node_new, function in GskRenderNode
gsk_clip_node_peek_clip, function in GskRenderNode
gsk_color_matrix_node_get_child, function in GskRenderNode
gsk_color_matrix_node_new, function in GskRenderNode
gsk_color_matrix_node_peek_color_matrix, function in GskRenderNode
gsk_color_matrix_node_peek_color_offset, function in GskRenderNode
gsk_color_node_new, function in GskRenderNode
gsk_color_node_peek_color, function in GskRenderNode
gsk_container_node_get_child, function in GskRenderNode
gsk_container_node_get_n_children, function in GskRenderNode
gsk_container_node_new, function in GskRenderNode
GskCorner, enum in GskRoundedRect
gsk_cross_fade_node_get_end_child, function in GskRenderNode
gsk_cross_fade_node_get_progress, function in GskRenderNode
gsk_cross_fade_node_get_start_child, function in GskRenderNode
gsk_cross_fade_node_new, function in GskRenderNode

I

gsk_inset_shadow_node_get_blur_radius, function in GskRenderNode
gsk_inset_shadow_node_get_dx, function in GskRenderNode
gsk_inset_shadow_node_get_dy, function in GskRenderNode
gsk_inset_shadow_node_get_spread, function in GskRenderNode
gsk_inset_shadow_node_new, function in GskRenderNode
gsk_inset_shadow_node_peek_color, function in GskRenderNode
gsk_inset_shadow_node_peek_outline, function in GskRenderNode

L

gsk_linear_gradient_node_get_n_color_stops, function in GskRenderNode
gsk_linear_gradient_node_new, function in GskRenderNode
gsk_linear_gradient_node_peek_color_stops, function in GskRenderNode
gsk_linear_gradient_node_peek_end, function in GskRenderNode
gsk_linear_gradient_node_peek_start, function in GskRenderNode

O

gsk_opacity_node_get_child, function in GskRenderNode
gsk_opacity_node_get_opacity, function in GskRenderNode
gsk_opacity_node_new, function in GskRenderNode
gsk_outset_shadow_node_get_blur_radius, function in GskRenderNode
gsk_outset_shadow_node_get_dx, function in GskRenderNode
gsk_outset_shadow_node_get_dy, function in GskRenderNode
gsk_outset_shadow_node_get_spread, function in GskRenderNode
gsk_outset_shadow_node_new, function in GskRenderNode
gsk_outset_shadow_node_peek_color, function in GskRenderNode
gsk_outset_shadow_node_peek_outline, function in GskRenderNode

R

GskRenderer:display, object property in GskRenderer
GskRenderer:drawing-context, object property in GskRenderer
GskRenderer:window, object property in GskRenderer
gsk_renderer_begin_draw_frame, function in GskRenderer
gsk_renderer_end_draw_frame, function in GskRenderer
gsk_renderer_get_display, function in GskRenderer
gsk_renderer_get_window, function in GskRenderer
gsk_renderer_new_for_window, function in GskRenderer
gsk_renderer_realize, function in GskRenderer
gsk_renderer_render, function in GskRenderer
gsk_renderer_render_texture, function in GskRenderer
gsk_renderer_unrealize, function in GskRenderer
GskRenderNodeType, enum in GskRenderNode
gsk_render_node_deserialize, function in GskRenderNode
gsk_render_node_draw, function in GskRenderNode
gsk_render_node_get_bounds, function in GskRenderNode
gsk_render_node_get_name, function in GskRenderNode
gsk_render_node_get_node_type, function in GskRenderNode
gsk_render_node_ref, function in GskRenderNode
gsk_render_node_serialize, function in GskRenderNode
gsk_render_node_set_name, function in GskRenderNode
gsk_render_node_unref, function in GskRenderNode
gsk_render_node_write_to_file, function in GskRenderNode
gsk_repeating_linear_gradient_node_new, function in GskRenderNode
gsk_repeat_node_get_child, function in GskRenderNode
gsk_repeat_node_new, function in GskRenderNode
gsk_repeat_node_peek_child_bounds, function in GskRenderNode
GskRoundedRect, struct in GskRoundedRect
gsk_rounded_clip_node_get_child, function in GskRenderNode
gsk_rounded_clip_node_new, function in GskRenderNode
gsk_rounded_clip_node_peek_clip, function in GskRenderNode
gsk_rounded_rect_contains_point, function in GskRoundedRect
gsk_rounded_rect_contains_rect, function in GskRoundedRect
GSK_ROUNDED_RECT_INIT, macro in GskRoundedRect
gsk_rounded_rect_init, function in GskRoundedRect
gsk_rounded_rect_init_copy, function in GskRoundedRect
gsk_rounded_rect_init_from_rect, function in GskRoundedRect
gsk_rounded_rect_intersects_rect, function in GskRoundedRect
gsk_rounded_rect_is_rectilinear, function in GskRoundedRect
gsk_rounded_rect_normalize, function in GskRoundedRect
gsk_rounded_rect_offset, function in GskRoundedRect
gsk_rounded_rect_shrink, function in GskRoundedRect

S

GskScalingFilter, enum in GskRenderNode
GskSerializationError, enum in GskRenderNode
GskShadow, struct in GskRenderNode
gsk_shadow_node_get_n_shadows, function in GskRenderNode
gsk_shadow_node_new, function in GskRenderNode
gsk_shadow_node_peek_shadow, function in GskRenderNode

T

gsk_texture_node_get_texture, function in GskRenderNode
gsk_texture_node_new, function in GskRenderNode
gsk_text_node_get_x, function in GskRenderNode
gsk_text_node_get_y, function in GskRenderNode
gsk_text_node_new, function in GskRenderNode
gsk_text_node_peek_color, function in GskRenderNode
gsk_text_node_peek_font, function in GskRenderNode
gsk_text_node_peek_glyphs, function in GskRenderNode
gsk_transform_node_get_child, function in GskRenderNode
gsk_transform_node_new, function in GskRenderNode
gsk_transform_node_peek_transform, function in GskRenderNode
docs/reference/gsk/html/GskRenderer.html0000664000175000017500000007106213226206764020443 0ustar mclasenmclasen GskRenderer: GSK 4 Reference Manual

GskRenderer

GskRenderer — Renders a scene

Properties

GdkDisplay * display Read / Write / Construct Only
GdkDrawingContext * drawing-context Read
GdkWindow * window Read

Object Hierarchy

    GObject
    ╰── GskRenderer

Description

GskRenderer is a class that renders a scene graph defined via a tree of GskRenderNode instances.

Typically you will use a GskRenderer instance with a GdkDrawingContext associated to a GdkWindow, and call gsk_renderer_render() with the drawing context and the scene to be rendered.

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.

Functions

gsk_renderer_new_for_window ()

GskRenderer *
gsk_renderer_new_for_window (GdkWindow *window);

Creates an appropriate GskRenderer instance for the given window .

The renderer will be realized when it is returned.

Parameters

window

a GdkWindow

 

Since: 3.90


gsk_renderer_get_window ()

GdkWindow *
gsk_renderer_get_window (GskRenderer *renderer);

Retrieves the GdkWindow set using gsk_renderer_realize(). If the renderer has not been realized yet, NULL will be returned.

Parameters

renderer

a GskRenderer

 

Since: 3.90


gsk_renderer_get_display ()

GdkDisplay *
gsk_renderer_get_display (GskRenderer *renderer);

Retrieves the GdkDisplay used when creating the GskRenderer.

Parameters

renderer

a GskRenderer

 

Returns

a GdkDisplay.

[transfer none]

Since: 3.90


gsk_renderer_realize ()

gboolean
gsk_renderer_realize (GskRenderer *renderer,
                      GdkWindow *window,
                      GError **error);

Creates the resources needed by the renderer to render the scene graph.

Parameters

renderer

a GskRenderer

 

window

the GdkWindow renderer will be used on

 

error

return location for an error

 

Since: 3.90


gsk_renderer_unrealize ()

void
gsk_renderer_unrealize (GskRenderer *renderer);

Releases all the resources created by gsk_renderer_realize().

Parameters

renderer

a GskRenderer

 

Since: 3.90


gsk_renderer_begin_draw_frame ()

GdkDrawingContext *
gsk_renderer_begin_draw_frame (GskRenderer *renderer,
                               const cairo_region_t *region);

Indicates that you are beginning the process of redrawing region using renderer , and provides you with a GdkDrawingContext to use for this.

Parameters

renderer

a GskRenderer

 

region

the cairo_region_t that you wish to draw

 

Returns

a GdkDrawingContext context that should be used to draw the contents of the renderer . This context is owned by GDK.

[transfer none]

Since: 3.90


gsk_renderer_end_draw_frame ()

void
gsk_renderer_end_draw_frame (GskRenderer *renderer,
                             GdkDrawingContext *context);

Release the drawning context returned by gsk_renderer_begin_draw_frame().

Calls to gsk_renderer_begin_draw_frame() and gsk_renderer_end_draw_frame() must be paired.

Parameters

renderer

a GskRenderer

 

context

the drawing context returned by the matching call to gsk_renderer_begin_draw_frame()

 

Since: 3.90


gsk_renderer_render ()

void
gsk_renderer_render (GskRenderer *renderer,
                     GskRenderNode *root,
                     GdkDrawingContext *context);

Renders the scene graph, described by a tree of GskRenderNode instances, using the given GdkDrawingContext.

The renderer will acquire a reference on the GskRenderNode tree while the rendering is in progress.

Parameters

renderer

a GskRenderer

 

root

a GskRenderNode

 

context

The drawing context created via gsk_renderer_begin_draw_frame()

 

Since: 3.90


gsk_renderer_render_texture ()

GdkTexture *
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, and will make the tree immutable.

If you want to apply any transformations to root , you should put it into a transform node and pass that node instead.

Parameters

renderer

a realized GdkRenderer

 

root

a GskRenderNode

 

viewport

the section to draw or NULL to use root 's bounds.

[allow-none]

Returns

a GdkTexture with the rendered contents of root .

[transfer full]

Since: 3.90

Types and Values

Property Details

The “display” property

  “display”                  GdkDisplay *

The GdkDisplay used by the GskRenderer.

Flags: Read / Write / Construct Only

Since: 3.90


The “drawing-context” property

  “drawing-context”          GdkDrawingContext *

The drawing context used when rendering.

Flags: Read

Since: 3.90


The “window” property

  “window”                   GdkWindow *

The window associated to the renderer.

Flags: Read

docs/reference/gsk/html/style.css0000644000175000017500000002115413226206764017207 0ustar mclasenmclasenbody { font-family: cantarell, sans-serif; } .synopsis, .classsynopsis { /* tango:aluminium 1/2 */ background: #eeeeec; background: rgba(238, 238, 236, 0.5); border: solid 1px rgb(238, 238, 236); padding: 0.5em; } .programlisting { /* tango:sky blue 0/1 */ /* fallback for no rgba support */ background: #e6f3ff; border: solid 1px #729fcf; background: rgba(114, 159, 207, 0.1); border: solid 1px rgba(114, 159, 207, 0.2); padding: 0.5em; } .variablelist { padding: 4px; margin-left: 3em; } .variablelist td:first-child { vertical-align: top; } div.gallery-float { float: left; padding: 10px; } div.gallery-float img { border-style: none; } div.gallery-spacer { clear: both; } a, a:visited { text-decoration: none; /* tango:sky blue 2 */ color: #3465a4; } a:hover { text-decoration: underline; /* tango:sky blue 1 */ color: #729fcf; } div.informaltable table { border-collapse: separate; border-spacing: 1em 0.3em; border: none; } div.informaltable table td, div.informaltable table th { vertical-align: top; } .function_type, .variable_type, .property_type, .signal_type, .parameter_name, .struct_member_name, .union_member_name, .define_keyword, .datatype_keyword, .typedef_keyword { text-align: right; } /* dim non-primary columns */ .c_punctuation, .function_type, .variable_type, .property_type, .signal_type, .define_keyword, .datatype_keyword, .typedef_keyword, .property_flags, .signal_flags, .parameter_annotations, .enum_member_annotations, .struct_member_annotations, .union_member_annotations { color: #888a85; } .function_type a, .function_type a:visited, .function_type a:hover, .property_type a, .property_type a:visited, .property_type a:hover, .signal_type a, .signal_type a:visited, .signal_type a:hover, .signal_flags a, .signal_flags a:visited, .signal_flags a:hover { color: #729fcf; } td p { margin: 0.25em; } div.table table { border-collapse: collapse; border-spacing: 0px; /* tango:aluminium 3 */ border: solid 1px #babdb6; } div.table table td, div.table table th { /* tango:aluminium 3 */ border: solid 1px #babdb6; padding: 3px; vertical-align: top; } div.table table th { /* tango:aluminium 2 */ background-color: #d3d7cf; } h4 { color: #555753; margin-top: 1em; margin-bottom: 1em; } hr { /* tango:aluminium 1 */ color: #d3d7cf; background: #d3d7cf; border: none 0px; height: 1px; clear: both; margin: 2.0em 0em 2.0em 0em; } dl.toc dt { padding-bottom: 0.25em; } dl.toc > dt { padding-top: 0.25em; padding-bottom: 0.25em; font-weight: bold; } dl.toc > dl { padding-bottom: 0.5em; } .parameter { font-style: normal; } .footer { padding-top: 3.5em; /* tango:aluminium 3 */ color: #babdb6; text-align: center; font-size: 80%; } .informalfigure, .figure { margin: 1em; } .informalexample, .example { margin-top: 1em; margin-bottom: 1em; } .warning { /* tango:orange 0/1 */ background: #ffeed9; background: rgba(252, 175, 62, 0.1); border-color: #ffb04f; border-color: rgba(252, 175, 62, 0.2); } .note { /* tango:chameleon 0/0.5 */ background: #d8ffb2; background: rgba(138, 226, 52, 0.1); border-color: #abf562; border-color: rgba(138, 226, 52, 0.2); } div.blockquote { border-color: #eeeeec; } .note, .warning, div.blockquote { padding: 0.5em; border-width: 1px; border-style: solid; margin: 2em; } .note p, .warning p { margin: 0; } div.warning h3.title, div.note h3.title { display: none; } p + div.section { margin-top: 1em; } div.refnamediv, div.refsynopsisdiv, div.refsect1, div.refsect2, div.toc, div.section { margin-bottom: 1em; } /* blob links */ h2 .extralinks, h3 .extralinks { float: right; /* tango:aluminium 3 */ color: #babdb6; font-size: 80%; font-weight: normal; } .lineart { color: #d3d7cf; font-weight: normal; } .annotation { /* tango:aluminium 5 */ color: #555753; font-weight: normal; } .structfield { font-style: normal; font-weight: normal; } acronym,abbr { border-bottom: 1px dotted gray; } /* code listings */ .listing_code .programlisting .normal, .listing_code .programlisting .normal a, .listing_code .programlisting .number, .listing_code .programlisting .cbracket, .listing_code .programlisting .symbol { color: #555753; } .listing_code .programlisting .comment, .listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ .listing_code .programlisting .function, .listing_code .programlisting .function a, .listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ .listing_code .programlisting .string { color: #ad7fa8; } /* tango: plum */ .listing_code .programlisting .keyword, .listing_code .programlisting .usertype, .listing_code .programlisting .type, .listing_code .programlisting .type a { color: #4e9a06; } /* tango: chameleon 3 */ .listing_frame { /* tango:sky blue 1 */ border: solid 1px #729fcf; border: solid 1px rgba(114, 159, 207, 0.2); padding: 0px; } .listing_lines, .listing_code { margin-top: 0px; margin-bottom: 0px; padding: 0.5em; } .listing_lines { /* tango:sky blue 0.5 */ background: #a6c5e3; background: rgba(114, 159, 207, 0.2); /* tango:aluminium 6 */ color: #2e3436; } .listing_code { /* tango:sky blue 0 */ background: #e6f3ff; background: rgba(114, 159, 207, 0.1); } .listing_code .programlisting { /* override from previous */ border: none 0px; padding: 0px; background: none; } .listing_lines pre, .listing_code pre { margin: 0px; } @media screen { /* these have a as a first child, but since there are no parent selectors * we can't use that. */ a.footnote { position: relative; top: 0em ! important; } /* this is needed so that the local anchors are displayed below the naviagtion */ div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] { display: inline-block; position: relative; top:-5em; } /* this seems to be a bug in the xsl style sheets when generating indexes */ div.index div.index { top: 0em; } /* make space for the fixed navigation bar and add space at the bottom so that * link targets appear somewhat close to top */ body { padding-top: 2.5em; padding-bottom: 500px; max-width: 60em; } p { max-width: 60em; } /* style and size the navigation bar */ table.navigation#top { position: fixed; background: #e2e2e2; border-bottom: solid 1px #babdb6; border-spacing: 5px; margin-top: 0; margin-bottom: 0; top: 0; left: 0; z-index: 10; } table.navigation#top td { padding-left: 6px; padding-right: 6px; } .navigation a, .navigation a:visited { /* tango:sky blue 3 */ color: #204a87; } .navigation a:hover { /* tango:sky blue 2 */ color: #3465a4; } td.shortcuts { /* tango:sky blue 2 */ color: #3465a4; font-size: 80%; white-space: nowrap; } td.shortcuts .dim { color: #babdb6; } .navigation .title { font-size: 80%; max-width: none; margin: 0px; font-weight: normal; } } @media screen and (min-width: 60em) { /* screen larger than 60em */ body { margin: auto; } } @media screen and (max-width: 60em) { /* screen less than 60em */ #nav_hierarchy { display: none; } #nav_interfaces { display: none; } #nav_prerequisites { display: none; } #nav_derived_interfaces { display: none; } #nav_implementations { display: none; } #nav_child_properties { display: none; } #nav_style_properties { display: none; } #nav_index { display: none; } #nav_glossary { display: none; } .gallery_image { display: none; } .property_flags { display: none; } .signal_flags { display: none; } .parameter_annotations { display: none; } .enum_member_annotations { display: none; } .struct_member_annotations { display: none; } .union_member_annotations { display: none; } /* now that a column is hidden, optimize space */ col.parameters_name { width: auto; } col.parameters_description { width: auto; } col.struct_members_name { width: auto; } col.struct_members_description { width: auto; } col.enum_members_name { width: auto; } col.enum_members_description { width: auto; } col.union_members_name { width: auto; } col.union_members_description { width: auto; } .listing_lines { display: none; } } @media print { table.navigation { visibility: collapse; display: none; } div.titlepage table.navigation { visibility: visible; display: table; background: #e2e2e2; border: solid 1px #babdb6; margin-top: 0; margin-bottom: 0; top: 0; left: 0; height: 3em; } } docs/reference/gsk/html/reference.html0000664000175000017500000000365013226206764020164 0ustar mclasenmclasen API Reference: GSK 4 Reference Manual

API Reference


Table of Contents

GskRenderer — Renders a scene
GskRenderNode — Simple scene graph element
docs/reference/gsk/html/up.png0000644000175000017500000000040413226206764016462 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIME IDAT81 @D{xa;$]r =JR1, Sd-}0̟oL:m-QO[ k TzMޠL,:ךu!tK; Pp Ot@l/̵*l}IENDB`docs/reference/gsk/html/gsk4.devhelp20000664000175000017500000004326113226206764017645 0ustar mclasenmclasen docs/reference/gsk/html/home.png0000644000175000017500000000040013226206764016762 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIME &IDAT8ҽ Aߞf`n v`6`/`Yܡ`f&k$,} 0b+ԸaQW~b O e{y N[L}.piBzmm o.I]7^[;%:VIENDB`docs/reference/gsk/html/left.png0000644000175000017500000000040613226206764016772 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIME,`m;IDAT8үa?DAPY\$[p+IIMlf('}Mpy{_ޥ}^q xZ <=Yj) <04\~+Pl#",Qϑp Iǐlsw>[/]_i03IENDB`docs/reference/gsk/gsk4.prerequisites0000664000175000017500000000000013224000676020044 0ustar mclasenmclasendocs/reference/gsk/gsk4-overrides.txt0000664000175000017500000000000013224000676017757 0ustar mclasenmclasendocs/reference/gsk/gsk4-unused.txt0000664000175000017500000000501313224000677017272 0ustar mclasenmclasenGL_N_PROGRAMS GL_N_VERTICES 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 GSK_TYPE_CORNER GSK_TYPE_RENDER_NODE_TYPE GSK_TYPE_VULKAN_BLEND_MODE_PIPELINE GSK_TYPE_VULKAN_BLUR_PIPELINE GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE GSK_TYPE_VULKAN_GLYPH_CACHE GSK_TYPE_VULKAN_TEXTURE_PIPELINE GSK_TYPE_VULKAN_TEXT_PIPELINE GdkTexture GskBroadwayRenderer GskBroadwayRendererClass GskColorStop GskVulkanBlendModePipeline GskVulkanBlendModePipelineLayout GskVulkanBlurPipeline GskVulkanBlurPipelineLayout GskVulkanColorTextPipeline GskVulkanColorTextPipelineLayout GskVulkanCrossFadePipeline GskVulkanCrossFadePipelineLayout GskVulkanGlyphCache GskVulkanTextPipeline GskVulkanTextPipelineLayout GskVulkanTexturePipeline GskVulkanTexturePipelineLayout gsk_broadway_renderer_get_type gsk_cairo_node_peek_surface gsk_gl_glyph_cache_begin_frame gsk_gl_glyph_cache_free gsk_gl_glyph_cache_get_glyph_image gsk_gl_glyph_cache_init gsk_gl_glyph_cache_lookup gsk_gl_image_create gsk_gl_image_destroy gsk_gl_image_upload_regions gsk_gl_image_write_to_png gsk_shadow_node_get_child gsk_text_node_get_num_glyphs 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_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_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_glyph_cache_begin_frame gsk_vulkan_glyph_cache_get_glyph_image gsk_vulkan_glyph_cache_lookup gsk_vulkan_glyph_cache_new 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 ops_add ops_draw ops_offset ops_set_border ops_set_border_color ops_set_clip ops_set_color ops_set_color_matrix ops_set_modelview ops_set_opacity ops_set_program ops_set_projection ops_set_render_target ops_set_texture ops_set_viewport docs/reference/gsk/gsk4-decl.txt0000664000175000017500000010571713226206761016716 0ustar mclasenmclasen GSK_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_type GType void GskBroadwayRenderer GskBroadwayRendererClass GskRenderNodeType 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 } 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; 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_type GType void gsk_renderer_new_for_window GskRenderer * GdkWindow *window gsk_renderer_get_window GdkWindow * GskRenderer *renderer gsk_renderer_get_display GdkDisplay * GskRenderer *renderer gsk_renderer_realize gboolean GskRenderer *renderer, GdkWindow *window, GError **error gsk_renderer_unrealize void GskRenderer *renderer gsk_renderer_render_texture GdkTexture * GskRenderer *renderer, GskRenderNode *root, const graphene_rect_t *viewport gsk_renderer_begin_draw_frame GdkDrawingContext * GskRenderer *renderer, const cairo_region_t *region gsk_renderer_render void GskRenderer *renderer, GskRenderNode *root, GdkDrawingContext *context gsk_renderer_end_draw_frame void GskRenderer *renderer, GdkDrawingContext *context GskRendererClass GSK_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 { double offset; GdkRGBA color; }; GskShadow struct _GskShadow { GdkRGBA color; float dx; float dy; float radius; }; gsk_render_node_get_type GType void gsk_serialization_error_quark GQuark void gsk_render_node_ref GskRenderNode * GskRenderNode *node gsk_render_node_unref void GskRenderNode *node gsk_render_node_get_node_type GskRenderNodeType GskRenderNode *node gsk_render_node_set_name void GskRenderNode *node, const char *name gsk_render_node_get_name const char * GskRenderNode *node gsk_render_node_get_bounds void GskRenderNode *node, graphene_rect_t *bounds gsk_render_node_draw void GskRenderNode *node, cairo_t *cr gsk_render_node_serialize GBytes * GskRenderNode *node gsk_render_node_write_to_file gboolean GskRenderNode *node, const char *filename, GError **error gsk_render_node_deserialize GskRenderNode * GBytes *bytes, GError **error gsk_color_node_new GskRenderNode * const GdkRGBA *rgba, const graphene_rect_t *bounds gsk_color_node_peek_color const GdkRGBA * GskRenderNode *node gsk_texture_node_new GskRenderNode * GdkTexture *texture, const graphene_rect_t *bounds gsk_texture_node_get_texture GdkTexture * GskRenderNode *node gsk_linear_gradient_node_new GskRenderNode * 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_start const graphene_point_t * GskRenderNode *node gsk_linear_gradient_node_peek_end const graphene_point_t * GskRenderNode *node gsk_linear_gradient_node_get_n_color_stops gsize GskRenderNode *node gsk_linear_gradient_node_peek_color_stops const GskColorStop * GskRenderNode *node gsk_repeating_linear_gradient_node_new GskRenderNode * 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_new GskRenderNode * const GskRoundedRect *outline, const float border_width[4], const GdkRGBA border_color[4] gsk_border_node_peek_outline const GskRoundedRect * GskRenderNode *node gsk_border_node_peek_widths const float * GskRenderNode *node gsk_border_node_peek_colors const GdkRGBA * GskRenderNode *node gsk_inset_shadow_node_new GskRenderNode * const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius gsk_inset_shadow_node_peek_outline const GskRoundedRect * GskRenderNode *node gsk_inset_shadow_node_peek_color const GdkRGBA * GskRenderNode *node gsk_inset_shadow_node_get_dx float GskRenderNode *node gsk_inset_shadow_node_get_dy float GskRenderNode *node gsk_inset_shadow_node_get_spread float GskRenderNode *node gsk_inset_shadow_node_get_blur_radius float GskRenderNode *node gsk_outset_shadow_node_new GskRenderNode * const GskRoundedRect *outline, const GdkRGBA *color, float dx, float dy, float spread, float blur_radius gsk_outset_shadow_node_peek_outline const GskRoundedRect * GskRenderNode *node gsk_outset_shadow_node_peek_color const GdkRGBA * GskRenderNode *node gsk_outset_shadow_node_get_dx float GskRenderNode *node gsk_outset_shadow_node_get_dy float GskRenderNode *node gsk_outset_shadow_node_get_spread float GskRenderNode *node gsk_outset_shadow_node_get_blur_radius float GskRenderNode *node gsk_cairo_node_new GskRenderNode * const graphene_rect_t *bounds gsk_cairo_node_get_draw_context cairo_t * GskRenderNode *node, GskRenderer *renderer gsk_cairo_node_peek_surface const cairo_surface_t * GskRenderNode *node gsk_container_node_new GskRenderNode * GskRenderNode **children, guint n_children gsk_container_node_get_n_children guint GskRenderNode *node gsk_container_node_get_child GskRenderNode * GskRenderNode *node, guint idx gsk_transform_node_new GskRenderNode * GskRenderNode *child, const graphene_matrix_t *transform gsk_transform_node_get_child GskRenderNode * GskRenderNode *node gsk_transform_node_peek_transform const graphene_matrix_t * GskRenderNode *node gsk_opacity_node_new GskRenderNode * GskRenderNode *child, double opacity gsk_opacity_node_get_child GskRenderNode * GskRenderNode *node gsk_opacity_node_get_opacity double GskRenderNode *node gsk_color_matrix_node_new GskRenderNode * GskRenderNode *child, const graphene_matrix_t *color_matrix, const graphene_vec4_t *color_offset gsk_color_matrix_node_get_child GskRenderNode * GskRenderNode *node gsk_color_matrix_node_peek_color_matrix const graphene_matrix_t * GskRenderNode *node gsk_color_matrix_node_peek_color_offset const graphene_vec4_t * GskRenderNode *node gsk_repeat_node_new GskRenderNode * const graphene_rect_t *bounds, GskRenderNode *child, const graphene_rect_t *child_bounds gsk_repeat_node_get_child GskRenderNode * GskRenderNode *node gsk_repeat_node_peek_child_bounds const graphene_rect_t * GskRenderNode *node gsk_clip_node_new GskRenderNode * GskRenderNode *child, const graphene_rect_t *clip gsk_clip_node_get_child GskRenderNode * GskRenderNode *node gsk_clip_node_peek_clip const graphene_rect_t * GskRenderNode *node gsk_rounded_clip_node_new GskRenderNode * GskRenderNode *child, const GskRoundedRect *clip gsk_rounded_clip_node_get_child GskRenderNode * GskRenderNode *node gsk_rounded_clip_node_peek_clip const GskRoundedRect * GskRenderNode *node gsk_shadow_node_new GskRenderNode * GskRenderNode *child, const GskShadow *shadows, gsize n_shadows gsk_shadow_node_get_child GskRenderNode * GskRenderNode *node gsk_shadow_node_peek_shadow const GskShadow * GskRenderNode *node, gsize i gsk_shadow_node_get_n_shadows gsize GskRenderNode *node gsk_blend_node_new GskRenderNode * GskRenderNode *bottom, GskRenderNode *top, GskBlendMode blend_mode gsk_blend_node_get_bottom_child GskRenderNode * GskRenderNode *node gsk_blend_node_get_top_child GskRenderNode * GskRenderNode *node gsk_blend_node_get_blend_mode GskBlendMode GskRenderNode *node gsk_cross_fade_node_new GskRenderNode * GskRenderNode *start, GskRenderNode *end, double progress gsk_cross_fade_node_get_start_child GskRenderNode * GskRenderNode *node gsk_cross_fade_node_get_end_child GskRenderNode * GskRenderNode *node gsk_cross_fade_node_get_progress double GskRenderNode *node gsk_text_node_new GskRenderNode * PangoFont *font, PangoGlyphString *glyphs, const GdkRGBA *color, double x, double y gsk_text_node_peek_font const PangoFont * GskRenderNode *node gsk_text_node_get_num_glyphs guint GskRenderNode *node gsk_text_node_peek_glyphs const PangoGlyphInfo * GskRenderNode *node gsk_text_node_peek_color const GdkRGBA * GskRenderNode *node gsk_text_node_get_x float GskRenderNode *node gsk_text_node_get_y float GskRenderNode *node gsk_blur_node_new GskRenderNode * GskRenderNode *child, double radius gsk_blur_node_get_child GskRenderNode * GskRenderNode *node gsk_blur_node_get_radius double GskRenderNode *node GskRenderNode GSK_ROUNDED_RECT_INIT #define GSK_ROUNDED_RECT_INIT(_x,_y,_w,_h) (GskRoundedRect) { .rect = GRAPHENE_RECT_INIT(_x,_y,_w,_h) } GskRoundedRect struct _GskRoundedRect { graphene_rect_t bounds; graphene_size_t corner[4]; }; gsk_rounded_rect_init GskRoundedRect * 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_copy GskRoundedRect * GskRoundedRect *self, const GskRoundedRect *src gsk_rounded_rect_init_from_rect GskRoundedRect * GskRoundedRect *self, const graphene_rect_t *bounds, float radius gsk_rounded_rect_normalize GskRoundedRect * GskRoundedRect *self gsk_rounded_rect_offset GskRoundedRect * GskRoundedRect *self, float dx, float dy gsk_rounded_rect_shrink GskRoundedRect * GskRoundedRect *self, float top, float right, float bottom, float left gsk_rounded_rect_is_rectilinear gboolean const GskRoundedRect *self gsk_rounded_rect_contains_point gboolean const GskRoundedRect *self, const graphene_point_t *point gsk_rounded_rect_contains_rect gboolean const GskRoundedRect *self, const graphene_rect_t *rect gsk_rounded_rect_intersects_rect gboolean const GskRoundedRect *self, const graphene_rect_t *rect GdkTexture GskRenderer gsk_gl_glyph_cache_init void GskGLGlyphCache *self, GskGLDriver *gl_driver gsk_gl_glyph_cache_free void GskGLGlyphCache *self gsk_gl_glyph_cache_begin_frame void GskGLGlyphCache *self gsk_gl_glyph_cache_get_glyph_image GskGLImage * GskGLGlyphCache *self, const GskGLCachedGlyph *glyph gsk_gl_glyph_cache_lookup const GskGLCachedGlyph * GskGLGlyphCache *self, gboolean create, PangoFont *font, PangoGlyph glyph, float scale gsk_gl_image_create void GskGLImage *self, GskGLDriver *gl_driver, int width, int height gsk_gl_image_destroy void GskGLImage *self, GskGLDriver *gl_driver gsk_gl_image_write_to_png void const GskGLImage *self, GskGLDriver *gl_driver, const char *filename gsk_gl_image_upload_regions void GskGLImage *self, GskGLDriver *gl_driver, guint n_regions, const GskImageRegion *regions GL_N_VERTICES #define GL_N_VERTICES 6 GL_N_PROGRAMS #define GL_N_PROGRAMS 12 ops_set_program void RenderOpBuilder *builder, const Program *program ops_set_clip GskRoundedRect RenderOpBuilder *builder, const GskRoundedRect *clip ops_set_modelview graphene_matrix_t RenderOpBuilder *builder, const graphene_matrix_t *modelview ops_set_projection graphene_matrix_t RenderOpBuilder *builder, const graphene_matrix_t *projection ops_set_viewport graphene_rect_t RenderOpBuilder *builder, const graphene_rect_t *viewport ops_set_texture void RenderOpBuilder *builder, int texture_id ops_set_render_target int RenderOpBuilder *builder, int render_target_id ops_set_opacity float RenderOpBuilder *builder, float opacity ops_set_color void RenderOpBuilder *builder, const GdkRGBA *color ops_set_color_matrix void RenderOpBuilder *builder, const graphene_matrix_t *matrix, const graphene_vec4_t *offset ops_set_border void RenderOpBuilder *builder, const float *widths ops_set_border_color void RenderOpBuilder *builder, const GdkRGBA *color ops_draw void RenderOpBuilder *builder, const GskQuadVertex vertex_data[GL_N_VERTICES] ops_offset void RenderOpBuilder *builder, float x, float y ops_add void RenderOpBuilder *builder, const RenderOp *op 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_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_blend_mode_pipeline_count_vertex_data gsize GskVulkanBlendModePipeline *pipeline gsk_vulkan_blend_mode_pipeline_collect_vertex_data void 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_draw gsize GskVulkanBlendModePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanBlendModePipeline GskVulkanBlendModePipelineLayout GSK_TYPE_VULKAN_BLUR_PIPELINE #define GSK_TYPE_VULKAN_BLUR_PIPELINE (gsk_vulkan_blur_pipeline_get_type ()) gsk_vulkan_blur_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_blur_pipeline_count_vertex_data gsize GskVulkanBlurPipeline *pipeline gsk_vulkan_blur_pipeline_collect_vertex_data void GskVulkanBlurPipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect, double radius gsk_vulkan_blur_pipeline_draw gsize GskVulkanBlurPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanBlurPipeline GskVulkanBlurPipelineLayout GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE #define GSK_TYPE_VULKAN_COLOR_TEXT_PIPELINE (gsk_vulkan_color_text_pipeline_get_type ()) gsk_vulkan_color_text_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_color_text_pipeline_count_vertex_data gsize GskVulkanColorTextPipeline *pipeline, int num_instances gsk_vulkan_color_text_pipeline_collect_vertex_data void GskVulkanColorTextPipeline *pipeline, guchar *data, GskVulkanRenderer *renderer, const graphene_rect_t *rect, PangoFont *font, guint total_glyphs, const PangoGlyphInfo *glyphs, float x, float y, guint start_glyph, guint num_glyphs, float scale gsk_vulkan_color_text_pipeline_draw gsize GskVulkanColorTextPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanColorTextPipeline GskVulkanColorTextPipelineLayout GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE #define GSK_TYPE_VULKAN_CROSS_FADE_PIPELINE (gsk_vulkan_cross_fade_pipeline_get_type ()) gsk_vulkan_cross_fade_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_cross_fade_pipeline_count_vertex_data gsize GskVulkanCrossFadePipeline *pipeline gsk_vulkan_cross_fade_pipeline_collect_vertex_data void 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_draw gsize GskVulkanCrossFadePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanCrossFadePipeline GskVulkanCrossFadePipelineLayout GSK_TYPE_VULKAN_GLYPH_CACHE #define GSK_TYPE_VULKAN_GLYPH_CACHE (gsk_vulkan_glyph_cache_get_type ()) gsk_vulkan_glyph_cache_new GskVulkanGlyphCache * GdkVulkanContext *vulkan gsk_vulkan_glyph_cache_get_glyph_image GskVulkanImage * GskVulkanGlyphCache *cache, GskVulkanUploader *uploader, guint index gsk_vulkan_glyph_cache_lookup GskVulkanCachedGlyph * GskVulkanGlyphCache *cache, gboolean create, PangoFont *font, PangoGlyph glyph, float scale gsk_vulkan_glyph_cache_begin_frame void GskVulkanGlyphCache *cache GskVulkanGlyphCache GSK_TYPE_VULKAN_TEXT_PIPELINE #define GSK_TYPE_VULKAN_TEXT_PIPELINE (gsk_vulkan_text_pipeline_get_type ()) gsk_vulkan_text_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_text_pipeline_count_vertex_data gsize GskVulkanTextPipeline *pipeline, int num_instances gsk_vulkan_text_pipeline_collect_vertex_data void GskVulkanTextPipeline *pipeline, guchar *data, GskVulkanRenderer *renderer, const graphene_rect_t *rect, PangoFont *font, guint total_glyphs, const PangoGlyphInfo *glyphs, const GdkRGBA *color, float x, float y, guint start_glyph, guint num_glyphs, float scale gsk_vulkan_text_pipeline_draw gsize GskVulkanTextPipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanTextPipeline GskVulkanTextPipelineLayout GSK_TYPE_VULKAN_TEXTURE_PIPELINE #define GSK_TYPE_VULKAN_TEXTURE_PIPELINE (gsk_vulkan_texture_pipeline_get_type ()) gsk_vulkan_texture_pipeline_new GskVulkanPipeline * GdkVulkanContext *context, VkPipelineLayout layout, const char *shader_name, VkRenderPass render_pass gsk_vulkan_texture_pipeline_count_vertex_data gsize GskVulkanTexturePipeline *pipeline gsk_vulkan_texture_pipeline_collect_vertex_data void GskVulkanTexturePipeline *pipeline, guchar *data, const graphene_rect_t *rect, const graphene_rect_t *tex_rect gsk_vulkan_texture_pipeline_draw gsize GskVulkanTexturePipeline *pipeline, VkCommandBuffer command_buffer, gsize offset, gsize n_commands GskVulkanTexturePipeline GskVulkanTexturePipelineLayout GSK_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 ()) docs/reference/gsk/gsk4-undocumented.txt0000664000175000017500000000411713224000677020465 0ustar mclasenmclasen0% symbol docs coverage. 74 symbols documented. 44 symbols incomplete. 45 not documented. GskShadow () gsk_blend_node_get_blend_mode () gsk_blend_node_get_bottom_child () gsk_blend_node_get_top_child () gsk_blur_node_get_child () gsk_blur_node_get_radius () gsk_border_node_peek_colors () gsk_border_node_peek_outline () gsk_border_node_peek_widths () gsk_clip_node_peek_clip () gsk_color_matrix_node_peek_color_matrix () gsk_color_matrix_node_peek_color_offset () gsk_color_node_peek_color () gsk_cross_fade_node_get_end_child () gsk_cross_fade_node_get_progress () gsk_cross_fade_node_get_start_child () gsk_inset_shadow_node_get_blur_radius () gsk_inset_shadow_node_get_dx () gsk_inset_shadow_node_get_dy () gsk_inset_shadow_node_get_spread () gsk_inset_shadow_node_peek_color () gsk_inset_shadow_node_peek_outline () gsk_linear_gradient_node_get_n_color_stops () gsk_linear_gradient_node_peek_color_stops () gsk_linear_gradient_node_peek_end () gsk_linear_gradient_node_peek_start () gsk_opacity_node_get_opacity () gsk_outset_shadow_node_get_blur_radius () gsk_outset_shadow_node_get_dx () gsk_outset_shadow_node_get_dy () gsk_outset_shadow_node_get_spread () gsk_outset_shadow_node_peek_color () gsk_outset_shadow_node_peek_outline () gsk_repeat_node_get_child () gsk_repeat_node_peek_child_bounds () gsk_rounded_clip_node_peek_clip () gsk_shadow_node_get_n_shadows () gsk_shadow_node_peek_shadow () gsk_text_node_get_x () gsk_text_node_get_y () gsk_text_node_peek_color () gsk_text_node_peek_font () gsk_text_node_peek_glyphs () gsk_texture_node_get_texture gsk_transform_node_peek_transform () docs/reference/gsk/sgml.stamp0000664000175000017500000000001113224000677016361 0ustar mclasenmclasentimestampdocs/reference/gsk/xml/0000775000175000017500000000000013226206762015166 5ustar mclasenmclasendocs/reference/gsk/xml/api-index-deprecated.xml0000664000175000017500000000052613224000677021662 0ustar mclasenmclasen ]> docs/reference/gsk/xml/api-index-full.xml0000664000175000017500000006301513224000677020526 0ustar mclasenmclasen ]> B GskBlendMode, enum in GskRenderNode gsk_blend_node_get_blend_mode, function in GskRenderNode gsk_blend_node_get_bottom_child, function in GskRenderNode gsk_blend_node_get_top_child, function in GskRenderNode gsk_blend_node_new, function in GskRenderNode gsk_blur_node_get_child, function in GskRenderNode gsk_blur_node_get_radius, function in GskRenderNode gsk_blur_node_new, function in GskRenderNode gsk_border_node_new, function in GskRenderNode gsk_border_node_peek_colors, function in GskRenderNode gsk_border_node_peek_outline, function in GskRenderNode gsk_border_node_peek_widths, function in GskRenderNode C gsk_cairo_node_get_draw_context, function in GskRenderNode gsk_cairo_node_new, function in GskRenderNode gsk_clip_node_get_child, function in GskRenderNode gsk_clip_node_new, function in GskRenderNode gsk_clip_node_peek_clip, function in GskRenderNode gsk_color_matrix_node_get_child, function in GskRenderNode gsk_color_matrix_node_new, function in GskRenderNode gsk_color_matrix_node_peek_color_matrix, function in GskRenderNode gsk_color_matrix_node_peek_color_offset, function in GskRenderNode gsk_color_node_new, function in GskRenderNode gsk_color_node_peek_color, function in GskRenderNode gsk_container_node_get_child, function in GskRenderNode gsk_container_node_get_n_children, function in GskRenderNode gsk_container_node_new, function in GskRenderNode GskCorner, enum in GskRoundedRect gsk_cross_fade_node_get_end_child, function in GskRenderNode gsk_cross_fade_node_get_progress, function in GskRenderNode gsk_cross_fade_node_get_start_child, function in GskRenderNode gsk_cross_fade_node_new, function in GskRenderNode I gsk_inset_shadow_node_get_blur_radius, function in GskRenderNode gsk_inset_shadow_node_get_dx, function in GskRenderNode gsk_inset_shadow_node_get_dy, function in GskRenderNode gsk_inset_shadow_node_get_spread, function in GskRenderNode gsk_inset_shadow_node_new, function in GskRenderNode gsk_inset_shadow_node_peek_color, function in GskRenderNode gsk_inset_shadow_node_peek_outline, function in GskRenderNode L gsk_linear_gradient_node_get_n_color_stops, function in GskRenderNode gsk_linear_gradient_node_new, function in GskRenderNode gsk_linear_gradient_node_peek_color_stops, function in GskRenderNode gsk_linear_gradient_node_peek_end, function in GskRenderNode gsk_linear_gradient_node_peek_start, function in GskRenderNode O gsk_opacity_node_get_child, function in GskRenderNode gsk_opacity_node_get_opacity, function in GskRenderNode gsk_opacity_node_new, function in GskRenderNode gsk_outset_shadow_node_get_blur_radius, function in GskRenderNode gsk_outset_shadow_node_get_dx, function in GskRenderNode gsk_outset_shadow_node_get_dy, function in GskRenderNode gsk_outset_shadow_node_get_spread, function in GskRenderNode gsk_outset_shadow_node_new, function in GskRenderNode gsk_outset_shadow_node_peek_color, function in GskRenderNode gsk_outset_shadow_node_peek_outline, function in GskRenderNode R GskRenderer:display, object property in GskRenderer GskRenderer:drawing-context, object property in GskRenderer GskRenderer:window, object property in GskRenderer gsk_renderer_begin_draw_frame, function in GskRenderer gsk_renderer_end_draw_frame, function in GskRenderer gsk_renderer_get_display, function in GskRenderer gsk_renderer_get_window, function in GskRenderer gsk_renderer_new_for_window, function in GskRenderer gsk_renderer_realize, function in GskRenderer gsk_renderer_render, function in GskRenderer gsk_renderer_render_texture, function in GskRenderer gsk_renderer_unrealize, function in GskRenderer GskRenderNodeType, enum in GskRenderNode gsk_render_node_deserialize, function in GskRenderNode gsk_render_node_draw, function in GskRenderNode gsk_render_node_get_bounds, function in GskRenderNode gsk_render_node_get_name, function in GskRenderNode gsk_render_node_get_node_type, function in GskRenderNode gsk_render_node_ref, function in GskRenderNode gsk_render_node_serialize, function in GskRenderNode gsk_render_node_set_name, function in GskRenderNode gsk_render_node_unref, function in GskRenderNode gsk_render_node_write_to_file, function in GskRenderNode gsk_repeating_linear_gradient_node_new, function in GskRenderNode gsk_repeat_node_get_child, function in GskRenderNode gsk_repeat_node_new, function in GskRenderNode gsk_repeat_node_peek_child_bounds, function in GskRenderNode GskRoundedRect, struct in GskRoundedRect gsk_rounded_clip_node_get_child, function in GskRenderNode gsk_rounded_clip_node_new, function in GskRenderNode gsk_rounded_clip_node_peek_clip, function in GskRenderNode gsk_rounded_rect_contains_point, function in GskRoundedRect gsk_rounded_rect_contains_rect, function in GskRoundedRect GSK_ROUNDED_RECT_INIT, macro in GskRoundedRect gsk_rounded_rect_init, function in GskRoundedRect gsk_rounded_rect_init_copy, function in GskRoundedRect gsk_rounded_rect_init_from_rect, function in GskRoundedRect gsk_rounded_rect_intersects_rect, function in GskRoundedRect gsk_rounded_rect_is_rectilinear, function in GskRoundedRect gsk_rounded_rect_normalize, function in GskRoundedRect gsk_rounded_rect_offset, function in GskRoundedRect gsk_rounded_rect_shrink, function in GskRoundedRect S GskScalingFilter, enum in GskRenderNode GskSerializationError, enum in GskRenderNode GskShadow, struct in GskRenderNode gsk_shadow_node_get_n_shadows, function in GskRenderNode gsk_shadow_node_new, function in GskRenderNode gsk_shadow_node_peek_shadow, function in GskRenderNode T gsk_texture_node_get_texture, function in GskRenderNode gsk_texture_node_new, function in GskRenderNode gsk_text_node_get_x, function in GskRenderNode gsk_text_node_get_y, function in GskRenderNode gsk_text_node_new, function in GskRenderNode gsk_text_node_peek_color, function in GskRenderNode gsk_text_node_peek_font, function in GskRenderNode gsk_text_node_peek_glyphs, function in GskRenderNode gsk_transform_node_get_child, function in GskRenderNode gsk_transform_node_new, function in GskRenderNode gsk_transform_node_peek_transform, function in GskRenderNode docs/reference/gsk/xml/GskRenderer.xml0000664000175000017500000006260613224000677020130 0ustar mclasenmclasen ]> GskRenderer 3 GSK4 Library GskRenderer Renders a scene Functions GskRenderer * gsk_renderer_new_for_window () GdkWindow * gsk_renderer_get_window () GdkDisplay * gsk_renderer_get_display () gboolean gsk_renderer_realize () void gsk_renderer_unrealize () GdkDrawingContext * gsk_renderer_begin_draw_frame () void gsk_renderer_end_draw_frame () void gsk_renderer_render () GdkTexture * gsk_renderer_render_texture () Properties GdkDisplay *displayRead / Write / Construct Only GdkDrawingContext *drawing-contextRead GdkWindow *windowRead Object Hierarchy GObject ╰── GskRenderer Description GskRenderer is a class that renders a scene graph defined via a tree of GskRenderNode instances. Typically you will use a GskRenderer instance with a GdkDrawingContext associated to a GdkWindow, and call gsk_renderer_render() with the drawing context and the scene to be rendered. 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. Functions gsk_renderer_new_for_window () gsk_renderer_new_for_window GskRenderer * gsk_renderer_new_for_window (GdkWindow *window); Creates an appropriate GskRenderer instance for the given window . The renderer will be realized when it is returned. Parameters window a GdkWindow Returns a GskRenderer. [transfer full][nullable] Since: 3.90 gsk_renderer_get_window () gsk_renderer_get_window GdkWindow * gsk_renderer_get_window (GskRenderer *renderer); Retrieves the GdkWindow set using gsk_renderer_realize(). If the renderer has not been realized yet, NULL will be returned. Parameters renderer a GskRenderer Returns a GdkWindow. [transfer none][nullable] Since: 3.90 gsk_renderer_get_display () gsk_renderer_get_display GdkDisplay * gsk_renderer_get_display (GskRenderer *renderer); Retrieves the GdkDisplay used when creating the GskRenderer. Parameters renderer a GskRenderer Returns a GdkDisplay. [transfer none] Since: 3.90 gsk_renderer_realize () gsk_renderer_realize gboolean gsk_renderer_realize (GskRenderer *renderer, GdkWindow *window, GError **error); Creates the resources needed by the renderer to render the scene graph. Parameters renderer a GskRenderer window the GdkWindow renderer will be used on error return location for an error Since: 3.90 gsk_renderer_unrealize () gsk_renderer_unrealize void gsk_renderer_unrealize (GskRenderer *renderer); Releases all the resources created by gsk_renderer_realize(). Parameters renderer a GskRenderer Since: 3.90 gsk_renderer_begin_draw_frame () gsk_renderer_begin_draw_frame GdkDrawingContext * gsk_renderer_begin_draw_frame (GskRenderer *renderer, const cairo_region_t *region); Indicates that you are beginning the process of redrawing region using renderer , and provides you with a GdkDrawingContext to use for this. Parameters renderer a GskRenderer region the cairo_region_t that you wish to draw Returns a GdkDrawingContext context that should be used to draw the contents of the renderer . This context is owned by GDK. [transfer none] Since: 3.90 gsk_renderer_end_draw_frame () gsk_renderer_end_draw_frame void gsk_renderer_end_draw_frame (GskRenderer *renderer, GdkDrawingContext *context); Release the drawning context returned by gsk_renderer_begin_draw_frame(). Calls to gsk_renderer_begin_draw_frame() and gsk_renderer_end_draw_frame() must be paired. Parameters renderer a GskRenderer context the drawing context returned by the matching call to gsk_renderer_begin_draw_frame() Since: 3.90 gsk_renderer_render () gsk_renderer_render void gsk_renderer_render (GskRenderer *renderer, GskRenderNode *root, GdkDrawingContext *context); Renders the scene graph, described by a tree of GskRenderNode instances, using the given GdkDrawingContext. The renderer will acquire a reference on the GskRenderNode tree while the rendering is in progress. Parameters renderer a GskRenderer root a GskRenderNode context The drawing context created via gsk_renderer_begin_draw_frame() Since: 3.90 gsk_renderer_render_texture () gsk_renderer_render_texture GdkTexture * 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, and will make the tree immutable. If you want to apply any transformations to root , you should put it into a transform node and pass that node instead. Parameters renderer a realized GdkRenderer root a GskRenderNode viewport the section to draw or NULL to use root 's bounds. [allow-none] Returns a GdkTexture with the rendered contents of root . [transfer full] Since: 3.90 Types and Values Property Details The <literal>“display”</literal> property GskRenderer:display “display” GdkDisplay * The GdkDisplay used by the GskRenderer. Flags: Read / Write / Construct Only Since: 3.90 The <literal>“drawing-context”</literal> property GskRenderer:drawing-context “drawing-context” GdkDrawingContext * The drawing context used when rendering. Flags: Read Since: 3.90 The <literal>“window”</literal> property GskRenderer:window “window” GdkWindow * The window associated to the renderer.Flags: Read docs/reference/gsk/xml/GskRenderNode.xml0000664000175000017500000042444313224000677020410 0ustar mclasenmclasen ]> GskRenderNode 3 GSK4 Library GskRenderNode Simple scene graph element Functions GskRenderNode * gsk_render_node_ref () void gsk_render_node_unref () GskRenderNodeType gsk_render_node_get_node_type () void gsk_render_node_draw () GBytes * gsk_render_node_serialize () GskRenderNode * gsk_render_node_deserialize () gboolean gsk_render_node_write_to_file () void gsk_render_node_set_name () const char * gsk_render_node_get_name () void gsk_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 () gsize gsk_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 () float gsk_inset_shadow_node_get_dx () float gsk_inset_shadow_node_get_dy () float gsk_inset_shadow_node_get_spread () float gsk_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 () float gsk_outset_shadow_node_get_dx () float gsk_outset_shadow_node_get_dy () float gsk_outset_shadow_node_get_spread () float gsk_outset_shadow_node_get_blur_radius () GskRenderNode * gsk_cairo_node_new () cairo_t * gsk_cairo_node_get_draw_context () GskRenderNode * gsk_container_node_new () guint gsk_container_node_get_n_children () GskRenderNode * gsk_container_node_get_child () GskRenderNode * gsk_transform_node_new () GskRenderNode * gsk_transform_node_get_child () const graphene_matrix_t * gsk_transform_node_peek_transform () GskRenderNode * gsk_opacity_node_new () GskRenderNode * gsk_opacity_node_get_child () double gsk_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 () gsize gsk_shadow_node_get_n_shadows () GskRenderNode * gsk_blend_node_new () GskRenderNode * gsk_blend_node_get_bottom_child () GskRenderNode * gsk_blend_node_get_top_child () GskBlendMode gsk_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 () double gsk_cross_fade_node_get_progress () GskRenderNode * gsk_text_node_new () const PangoFont * gsk_text_node_peek_font () const PangoGlyphInfo * gsk_text_node_peek_glyphs () const GdkRGBA * gsk_text_node_peek_color () float gsk_text_node_get_x () float gsk_text_node_get_y () GskRenderNode * gsk_blur_node_new () GskRenderNode * gsk_blur_node_get_child () double gsk_blur_node_get_radius () Types and Values enumGskRenderNodeType enumGskSerializationError enumGskScalingFilter structGskShadow enumGskBlendMode Object Hierarchy GBoxed ╰── GskRenderNode Description GskRenderNode 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. Functions gsk_render_node_ref () gsk_render_node_ref GskRenderNode * gsk_render_node_ref (GskRenderNode *node); Acquires a reference on the given GskRenderNode. Parameters node a GskRenderNode Returns the GskRenderNode with an additional reference. [transfer none] Since: 3.90 gsk_render_node_unref () gsk_render_node_unref void 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. Parameters node a GskRenderNode Since: 3.90 gsk_render_node_get_node_type () gsk_render_node_get_node_type GskRenderNodeType gsk_render_node_get_node_type (GskRenderNode *node); Returns the type of the node . Parameters node a GskRenderNode Returns the type of the GskRenderNode Since: 3.90 gsk_render_node_draw () gsk_render_node_draw void 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 GdkWindow's rendering buffer. For advanced nodes that cannot be supported using Cairo, in particular for nodes doing 3D operations, this function may fail. Parameters node a GskRenderNode cr cairo context to draw to gsk_render_node_serialize () gsk_render_node_serialize GBytes * 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. Parameters node a GskRenderNode Returns a GBytes representing the node. gsk_render_node_deserialize () gsk_render_node_deserialize GskRenderNode * gsk_render_node_deserialize (GBytes *bytes, GError **error); Loads data previously created via gsk_render_node_serialize(). For a discussion of the supported format, see that function. Parameters bytes the bytes containing the data error location to store error or NULL. [allow-none] Returns a new GskRenderNode or NULL on error. [nullable][transfer full] gsk_render_node_write_to_file () gsk_render_node_write_to_file gboolean 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. Parameters node a GskRenderNode filename the file to save it to. error Return location for a potential error Returns TRUE if saving was successful gsk_render_node_set_name () gsk_render_node_set_name void gsk_render_node_set_name (GskRenderNode *node, const char *name); Sets the name of the node. A name is generally useful for debugging purposes. Parameters node a GskRenderNode name a name for the node. [nullable] Since: 3.90 gsk_render_node_get_name () gsk_render_node_get_name const char * gsk_render_node_get_name (GskRenderNode *node); Retrieves the name previously set via gsk_render_node_set_name(). If no name has been set, NULL is returned. Parameters node a GskRenderNode Returns The name previously set via gsk_render_node_set_name() or NULL. [nullable] Since: 3.90 gsk_render_node_get_bounds () gsk_render_node_get_bounds void 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. Parameters node a GskRenderNode bounds return location for the boundaries. [out caller-allocates] Since: 3.90 gsk_color_node_new () gsk_color_node_new GskRenderNode * 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 . Parameters rgba a GdkRGBA specifying a color bounds the rectangle to render the color into Returns A new GskRenderNode Since: 3.90 gsk_color_node_peek_color () gsk_color_node_peek_color const GdkRGBA * gsk_color_node_peek_color (GskRenderNode *node); gsk_texture_node_new () gsk_texture_node_new GskRenderNode * 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 . Parameters texture the GdkTexture bounds the rectangle to render the texture into Returns A new GskRenderNode Since: 3.90 gsk_texture_node_get_texture () gsk_texture_node_get_texture GdkTexture * gsk_texture_node_get_texture (GskRenderNode *node); Parameters node a GskRenderNode Returns the GdkTexture. [transfer none] Since: 3.94 gsk_linear_gradient_node_new () gsk_linear_gradient_node_new GskRenderNode * 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 . Parameters bounds the rectangle to render the linear gradient into start the point at which the linear gradient will begin end the point at which the linear gradient will finish color_stops a pointer to an array of GskColorStop defining the gradient. [array length=n_color_stops] n_color_stops the number of elements in color_stops Returns A new GskRenderNode Since: 3.90 gsk_linear_gradient_node_peek_start () gsk_linear_gradient_node_peek_start const graphene_point_t * gsk_linear_gradient_node_peek_start (GskRenderNode *node); gsk_linear_gradient_node_peek_end () gsk_linear_gradient_node_peek_end const graphene_point_t * gsk_linear_gradient_node_peek_end (GskRenderNode *node); gsk_linear_gradient_node_get_n_color_stops () gsk_linear_gradient_node_get_n_color_stops gsize gsk_linear_gradient_node_get_n_color_stops (GskRenderNode *node); gsk_linear_gradient_node_peek_color_stops () gsk_linear_gradient_node_peek_color_stops const GskColorStop * gsk_linear_gradient_node_peek_color_stops (GskRenderNode *node); gsk_repeating_linear_gradient_node_new () gsk_repeating_linear_gradient_node_new GskRenderNode * 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 . Parameters bounds the rectangle to render the linear gradient into start the point at which the linear gradient will begin end the point at which the linear gradient will finish color_stops a pointer to an array of GskColorStop defining the gradient. [array length=n_color_stops] n_color_stops the number of elements in color_stops Returns A new GskRenderNode Since: 3.90 gsk_border_node_new () gsk_border_node_new GskRenderNode * 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. Parameters outline a GskRoundedRect describing the outline of the border border_width the stroke width of the border on the top, right, bottom and left side respectively. border_color the color used on the top, right, bottom and left side. Returns A new GskRenderNode Since: 3.90 gsk_border_node_peek_outline () gsk_border_node_peek_outline const GskRoundedRect * gsk_border_node_peek_outline (GskRenderNode *node); gsk_border_node_peek_widths () gsk_border_node_peek_widths const float * gsk_border_node_peek_widths (GskRenderNode *node); gsk_border_node_peek_colors () gsk_border_node_peek_colors const GdkRGBA * gsk_border_node_peek_colors (GskRenderNode *node); gsk_inset_shadow_node_new () gsk_inset_shadow_node_new GskRenderNode * 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 . Parameters outline outline of the region containing the shadow color color of the shadow dx horizontal offset of shadow dy vertical offset of shadow spread how far the shadow spreads towards the inside blur_radius how much blur to apply to the shadow Returns A new GskRenderNode Since: 3.90 gsk_inset_shadow_node_peek_outline () gsk_inset_shadow_node_peek_outline const GskRoundedRect * gsk_inset_shadow_node_peek_outline (GskRenderNode *node); gsk_inset_shadow_node_peek_color () gsk_inset_shadow_node_peek_color const GdkRGBA * gsk_inset_shadow_node_peek_color (GskRenderNode *node); gsk_inset_shadow_node_get_dx () gsk_inset_shadow_node_get_dx float gsk_inset_shadow_node_get_dx (GskRenderNode *node); gsk_inset_shadow_node_get_dy () gsk_inset_shadow_node_get_dy float gsk_inset_shadow_node_get_dy (GskRenderNode *node); gsk_inset_shadow_node_get_spread () gsk_inset_shadow_node_get_spread float gsk_inset_shadow_node_get_spread (GskRenderNode *node); gsk_inset_shadow_node_get_blur_radius () gsk_inset_shadow_node_get_blur_radius float gsk_inset_shadow_node_get_blur_radius (GskRenderNode *node); gsk_outset_shadow_node_new () gsk_outset_shadow_node_new GskRenderNode * 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 . Parameters outline outline of the region surrounded by shadow color color of the shadow dx horizontal offset of shadow dy vertical offset of shadow spread how far the shadow spreads towards the inside blur_radius how much blur to apply to the shadow Returns A new GskRenderNode Since: 3.90 gsk_outset_shadow_node_peek_outline () gsk_outset_shadow_node_peek_outline const GskRoundedRect * gsk_outset_shadow_node_peek_outline (GskRenderNode *node); gsk_outset_shadow_node_peek_color () gsk_outset_shadow_node_peek_color const GdkRGBA * gsk_outset_shadow_node_peek_color (GskRenderNode *node); gsk_outset_shadow_node_get_dx () gsk_outset_shadow_node_get_dx float gsk_outset_shadow_node_get_dx (GskRenderNode *node); gsk_outset_shadow_node_get_dy () gsk_outset_shadow_node_get_dy float gsk_outset_shadow_node_get_dy (GskRenderNode *node); gsk_outset_shadow_node_get_spread () gsk_outset_shadow_node_get_spread float gsk_outset_shadow_node_get_spread (GskRenderNode *node); gsk_outset_shadow_node_get_blur_radius () gsk_outset_shadow_node_get_blur_radius float gsk_outset_shadow_node_get_blur_radius (GskRenderNode *node); gsk_cairo_node_new () gsk_cairo_node_new GskRenderNode * 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() Parameters bounds the rectangle to render to Returns A new GskRenderNode Since: 3.90 gsk_cairo_node_get_draw_context () gsk_cairo_node_get_draw_context cairo_t * gsk_cairo_node_get_draw_context (GskRenderNode *node, GskRenderer *renderer); 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 . Parameters node a cairo GskRenderNode renderer Renderer to optimize for or NULL for any. [nullable] Returns a Cairo context used for drawing; use cairo_destroy() when done drawing. [transfer full] Since: 3.90 gsk_container_node_new () gsk_container_node_new GskRenderNode * 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. Parameters children The children of the node. [array length=n_children][transfer none] n_children Number of children in the children array Returns the new GskRenderNode. [transfer full] Since: 3.90 gsk_container_node_get_n_children () gsk_container_node_get_n_children guint gsk_container_node_get_n_children (GskRenderNode *node); Retrieves the number of direct children of node . Parameters node a container GskRenderNode Returns the number of children of the GskRenderNode Since: 3.90 gsk_container_node_get_child () gsk_container_node_get_child GskRenderNode * gsk_container_node_get_child (GskRenderNode *node, guint idx); Gets one of the children of container . Parameters node a container GskRenderNode idx the position of the child to get Returns the idx 'th child of container Since: 3.90 gsk_transform_node_new () gsk_transform_node_new GskRenderNode * gsk_transform_node_new (GskRenderNode *child, const graphene_matrix_t *transform); Creates a GskRenderNode that will transform the given child with the given transform . Parameters child The node to transform transform The transform to apply Returns A new GskRenderNode Since: 3.90 gsk_transform_node_get_child () gsk_transform_node_get_child GskRenderNode * gsk_transform_node_get_child (GskRenderNode *node); Gets the child node that is getting transformed by the given node . Parameters node a transform GskRenderNode Returns The child that is getting transformed. [transfer none] gsk_transform_node_peek_transform () gsk_transform_node_peek_transform const graphene_matrix_t * gsk_transform_node_peek_transform (GskRenderNode *node); gsk_opacity_node_new () gsk_opacity_node_new GskRenderNode * gsk_opacity_node_new (GskRenderNode *child, double opacity); Creates a GskRenderNode that will drawn the child with reduced opacity . Parameters child The node to draw opacity The opacity to apply Returns A new GskRenderNode Since: 3.90 gsk_opacity_node_get_child () gsk_opacity_node_get_child GskRenderNode * gsk_opacity_node_get_child (GskRenderNode *node); Gets the child node that is getting opacityed by the given node . Parameters node a opacity GskRenderNode Returns The child that is getting opacityed. [transfer none] gsk_opacity_node_get_opacity () gsk_opacity_node_get_opacity double gsk_opacity_node_get_opacity (GskRenderNode *node); gsk_color_matrix_node_new () gsk_color_matrix_node_new GskRenderNode * 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 operation pixel = color_matrix * pixel + color_offset for every pixel. Parameters child The node to draw color_matrix The matrix to apply color_offset Values to add to the color Returns A new GskRenderNode Since: 3.90 gsk_color_matrix_node_get_child () gsk_color_matrix_node_get_child GskRenderNode * gsk_color_matrix_node_get_child (GskRenderNode *node); Gets the child node that is getting its colors modified by the given node . Parameters node a color matrix GskRenderNode Returns The child that is getting its colors modified. [transfer none] gsk_color_matrix_node_peek_color_matrix () gsk_color_matrix_node_peek_color_matrix const graphene_matrix_t * gsk_color_matrix_node_peek_color_matrix (GskRenderNode *node); gsk_color_matrix_node_peek_color_offset () gsk_color_matrix_node_peek_color_offset const graphene_vec4_t * gsk_color_matrix_node_peek_color_offset (GskRenderNode *node); gsk_repeat_node_new () gsk_repeat_node_new GskRenderNode * 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 . Parameters bounds The bounds of the area to be painted child The child to repeat child_bounds The area of the child to repeat or NULL to use the child's bounds. [allow-none] Returns A new GskRenderNode Since: 3.90 gsk_repeat_node_get_child () gsk_repeat_node_get_child GskRenderNode * gsk_repeat_node_get_child (GskRenderNode *node); gsk_repeat_node_peek_child_bounds () gsk_repeat_node_peek_child_bounds const graphene_rect_t * gsk_repeat_node_peek_child_bounds (GskRenderNode *node); gsk_clip_node_new () gsk_clip_node_new GskRenderNode * 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 . Parameters child The node to draw clip The clip to apply Returns A new GskRenderNode Since: 3.90 gsk_clip_node_get_child () gsk_clip_node_get_child GskRenderNode * gsk_clip_node_get_child (GskRenderNode *node); Gets the child node that is getting clipped by the given node . Parameters node a clip GskRenderNode Returns The child that is getting clipped. [transfer none] gsk_clip_node_peek_clip () gsk_clip_node_peek_clip const graphene_rect_t * gsk_clip_node_peek_clip (GskRenderNode *node); gsk_rounded_clip_node_new () gsk_rounded_clip_node_new GskRenderNode * gsk_rounded_clip_node_new (GskRenderNode *child, const GskRoundedRect *clip); Creates a GskRenderNode that will clip the child to the area given by clip . Parameters child The node to draw clip The clip to apply Returns A new GskRenderNode Since: 3.90 gsk_rounded_clip_node_get_child () gsk_rounded_clip_node_get_child GskRenderNode * gsk_rounded_clip_node_get_child (GskRenderNode *node); Gets the child node that is getting clipped by the given node . Parameters node a clip GskRenderNode Returns The child that is getting clipped. [transfer none] gsk_rounded_clip_node_peek_clip () gsk_rounded_clip_node_peek_clip const GskRoundedRect * gsk_rounded_clip_node_peek_clip (GskRenderNode *node); gsk_shadow_node_new () gsk_shadow_node_new GskRenderNode * 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. Parameters child The node to draw shadows The shadows to apply. [array length=n_shadows] n_shadows number of entries in the shadows array Returns A new GskRenderNode Since: 3.90 gsk_shadow_node_peek_shadow () gsk_shadow_node_peek_shadow const GskShadow * gsk_shadow_node_peek_shadow (GskRenderNode *node, gsize i); gsk_shadow_node_get_n_shadows () gsk_shadow_node_get_n_shadows gsize gsk_shadow_node_get_n_shadows (GskRenderNode *node); gsk_blend_node_new () gsk_blend_node_new GskRenderNode * 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. Parameters bottom The bottom node to be drawn top The node to be blended onto the bottom node blend_mode The blend mode to use Returns A new GskRenderNode Since: 3.90 gsk_blend_node_get_bottom_child () gsk_blend_node_get_bottom_child GskRenderNode * gsk_blend_node_get_bottom_child (GskRenderNode *node); gsk_blend_node_get_top_child () gsk_blend_node_get_top_child GskRenderNode * gsk_blend_node_get_top_child (GskRenderNode *node); gsk_blend_node_get_blend_mode () gsk_blend_node_get_blend_mode GskBlendMode gsk_blend_node_get_blend_mode (GskRenderNode *node); gsk_cross_fade_node_new () gsk_cross_fade_node_new GskRenderNode * gsk_cross_fade_node_new (GskRenderNode *start, GskRenderNode *end, double progress); Creates a GskRenderNode that will do a cross-fade between start and end . Parameters start The start node to be drawn end The node to be cross_fadeed onto the start node progress How far the fade has progressed from start to end. The value will be clamped to the range [0 ... 1] Returns A new GskRenderNode Since: 3.90 gsk_cross_fade_node_get_start_child () gsk_cross_fade_node_get_start_child GskRenderNode * gsk_cross_fade_node_get_start_child (GskRenderNode *node); gsk_cross_fade_node_get_end_child () gsk_cross_fade_node_get_end_child GskRenderNode * gsk_cross_fade_node_get_end_child (GskRenderNode *node); gsk_cross_fade_node_get_progress () gsk_cross_fade_node_get_progress double gsk_cross_fade_node_get_progress (GskRenderNode *node); gsk_text_node_new () gsk_text_node_new GskRenderNode * gsk_text_node_new (PangoFont *font, PangoGlyphString *glyphs, const GdkRGBA *color, double x, double y); Creates a render node that renders the given glyphs, Note that color may not be used if the font contains color glyphs. Parameters font the PangoFont containing the glyphs glyphs the PangoGlyphString to render color the foreground color to render with x the x coordinate at which to put the baseline y the y coordinate at wihch to put the baseline Returns a new text node, or NULL Since: 3.92 gsk_text_node_peek_font () gsk_text_node_peek_font const PangoFont * gsk_text_node_peek_font (GskRenderNode *node); gsk_text_node_peek_glyphs () gsk_text_node_peek_glyphs const PangoGlyphInfo * gsk_text_node_peek_glyphs (GskRenderNode *node); gsk_text_node_peek_color () gsk_text_node_peek_color const GdkRGBA * gsk_text_node_peek_color (GskRenderNode *node); gsk_text_node_get_x () gsk_text_node_get_x float gsk_text_node_get_x (GskRenderNode *node); gsk_text_node_get_y () gsk_text_node_get_y float gsk_text_node_get_y (GskRenderNode *node); gsk_blur_node_new () gsk_blur_node_new GskRenderNode * gsk_blur_node_new (GskRenderNode *child, double radius); Creates a render node that blurs the child. Parameters child the child node to blur radius the blur radius Since: 3.92 gsk_blur_node_get_child () gsk_blur_node_get_child GskRenderNode * gsk_blur_node_get_child (GskRenderNode *node); gsk_blur_node_get_radius () gsk_blur_node_get_radius double gsk_blur_node_get_radius (GskRenderNode *node); Types and Values enum GskRenderNodeType GskRenderNodeType The type of a node determines what the node is rendering. Members GSK_NOT_A_RENDER_NODE Error type. No node will ever have this type. GSK_CONTAINER_NODE A node containing a stack of children GSK_CAIRO_NODE A node drawing a cairo_surface_t GSK_COLOR_NODE A node drawing a single color rectangle GSK_LINEAR_GRADIENT_NODE A node drawing a linear gradient GSK_REPEATING_LINEAR_GRADIENT_NODE A node drawing a repeating linear gradient GSK_BORDER_NODE A node stroking a border around an area GSK_TEXTURE_NODE A node drawing a GdkTexture GSK_INSET_SHADOW_NODE A node drawing an inset shadow GSK_OUTSET_SHADOW_NODE A node drawing an outset shadow GSK_TRANSFORM_NODE A node that renders its child after applying a matrix transform GSK_OPACITY_NODE A node that changes the opacity of its child GSK_COLOR_MATRIX_NODE A node that applies a color matrix to every pixel GSK_REPEAT_NODE A node that repeats the child's contents GSK_CLIP_NODE A node that clips its child to a rectangular area GSK_ROUNDED_CLIP_NODE A node that clips its child to a rounded rectangle GSK_SHADOW_NODE A node that draws a shadow below its child GSK_BLEND_NODE A node that blends two children together GSK_CROSS_FADE_NODE A node that cross-fades between two children GSK_TEXT_NODE A node containing a glyph string GSK_BLUR_NODE A node that applies a blur Since: 3.90 enum GskSerializationError GskSerializationError Errors that can happen during (de)serialization. Members GSK_SERIALIZATION_UNSUPPORTED_FORMAT The format can not be identified GSK_SERIALIZATION_UNSUPPORTED_VERSION The version of the data is not understood GSK_SERIALIZATION_INVALID_DATA The given data may not exist in a proper serialization enum GskScalingFilter GskScalingFilter The filters used when scaling texture data. The actual implementation of each filter is deferred to the rendering pipeline. Members GSK_SCALING_FILTER_LINEAR linear interpolation filter GSK_SCALING_FILTER_NEAREST nearest neighbor interpolation filter GSK_SCALING_FILTER_TRILINEAR linear interpolation along each axis, plus mipmap generation, with linear interpolation along the mipmap levels Since: 3.90 struct GskShadow GskShadow struct GskShadow { GdkRGBA color; float dx; float dy; float radius; }; enum GskBlendMode GskBlendMode The blend modes available for render nodes. The implementation of each blend mode is deferred to the rendering pipeline. Members GSK_BLEND_MODE_DEFAULT The default blend mode, which specifies no blending GSK_BLEND_MODE_MULTIPLY The source color is multiplied by the destination and replaces the destination 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 ... Since: 3.90 docs/reference/gsk/xml/object_index.sgml0000664000175000017500000000133513224000676020503 0ustar mclasenmclasen ]> GBoxed GObject GskRenderNode GskRenderer docs/reference/gsk/xml/api-index-3.92.xml0000664000175000017500000000145613224000677020160 0ustar mclasenmclasen ]> B gsk_blur_node_new, function in GskRenderNode T gsk_text_node_new, function in GskRenderNode docs/reference/gsk/xml/api-index-3.94.xml0000664000175000017500000000114013224000677020150 0ustar mclasenmclasen ]> T gsk_texture_node_get_texture, function in GskRenderNode docs/reference/gsk/xml/gsk4-doc.top0000664000175000017500000000000013224000677017306 0ustar mclasenmclasendocs/reference/gsk/xml/annotation-glossary.xml0000664000175000017500000000355113224000677021722 0ustar mclasenmclasen ]> Annotation Glossary A allow-none NULL is OK, both for passing and for returning. array Parameter points to an array of items. N nullable NULL may be passed as the value in, out, in-out; or as a return value. O out caller-allocates Out parameter, where caller must allocate storage. T transfer full Free data after the code is done. transfer none Don't free data after the code is done. docs/reference/gsk/xml/api-index-3.90.xml0000664000175000017500000002521313224000677020153 0ustar mclasenmclasen ]> B GskBlendMode, enum in GskRenderNode gsk_blend_node_new, function in GskRenderNode gsk_border_node_new, function in GskRenderNode C gsk_cairo_node_get_draw_context, function in GskRenderNode gsk_cairo_node_new, function in GskRenderNode gsk_clip_node_new, function in GskRenderNode gsk_color_matrix_node_new, function in GskRenderNode gsk_color_node_new, function in GskRenderNode gsk_container_node_get_child, function in GskRenderNode gsk_container_node_get_n_children, function in GskRenderNode gsk_container_node_new, function in GskRenderNode gsk_cross_fade_node_new, function in GskRenderNode I gsk_inset_shadow_node_new, function in GskRenderNode L gsk_linear_gradient_node_new, function in GskRenderNode O gsk_opacity_node_new, function in GskRenderNode gsk_outset_shadow_node_new, function in GskRenderNode R GskRenderer:display, object property in GskRenderer GskRenderer:drawing-context, object property in GskRenderer gsk_renderer_begin_draw_frame, function in GskRenderer gsk_renderer_end_draw_frame, function in GskRenderer gsk_renderer_get_display, function in GskRenderer gsk_renderer_get_window, function in GskRenderer gsk_renderer_new_for_window, function in GskRenderer gsk_renderer_realize, function in GskRenderer gsk_renderer_render, function in GskRenderer gsk_renderer_render_texture, function in GskRenderer gsk_renderer_unrealize, function in GskRenderer GskRenderNodeType, enum in GskRenderNode gsk_render_node_get_bounds, function in GskRenderNode gsk_render_node_get_name, function in GskRenderNode gsk_render_node_get_node_type, function in GskRenderNode gsk_render_node_ref, function in GskRenderNode gsk_render_node_set_name, function in GskRenderNode gsk_render_node_unref, function in GskRenderNode gsk_repeating_linear_gradient_node_new, function in GskRenderNode gsk_repeat_node_new, function in GskRenderNode GskRoundedRect, struct in GskRoundedRect gsk_rounded_clip_node_new, function in GskRenderNode GSK_ROUNDED_RECT_INIT, macro in GskRoundedRect gsk_rounded_rect_init, function in GskRoundedRect gsk_rounded_rect_init_copy, function in GskRoundedRect gsk_rounded_rect_normalize, function in GskRoundedRect gsk_rounded_rect_offset, function in GskRoundedRect S GskScalingFilter, enum in GskRenderNode gsk_shadow_node_new, function in GskRenderNode T gsk_texture_node_new, function in GskRenderNode gsk_transform_node_new, function in GskRenderNode docs/reference/gsk/xml/tree_index.sgml0000664000175000017500000000114013224000676020166 0ustar mclasenmclasen ]> GObject ╰── GskRenderer GBoxed ╰── GskRenderNode docs/reference/gsk/xml/GskRoundedRect.xml0000664000175000017500000010140413224000677020566 0ustar mclasenmclasen ]> GskRoundedRect 3 GSK4 Library GskRoundedRect A rounded rectangle Functions #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 () gboolean gsk_rounded_rect_is_rectilinear () gboolean gsk_rounded_rect_contains_point () gboolean gsk_rounded_rect_contains_rect () gboolean gsk_rounded_rect_intersects_rect () Types and Values enumGskCorner structGskRoundedRect Description GskRoundedRect 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. Functions GSK_ROUNDED_RECT_INIT() GSK_ROUNDED_RECT_INIT #define GSK_ROUNDED_RECT_INIT(_x,_y,_w,_h) (GskRoundedRect) { .rect = GRAPHENE_RECT_INIT(_x,_y,_w,_h) } Initializes a GskRoundedRect when declaring it. Parameters _x the X coordinate of the origin _y the Y coordinate of the origin _w the width _h the height Since: 3.90 gsk_rounded_rect_init () gsk_rounded_rect_init GskRoundedRect * 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. Parameters self The GskRoundedRect to initialize bounds a graphene_rect_t describing the bounds top_left the rounding radius of the top left corner top_right the rounding radius of the top right corner bottom_right the rounding radius of the bottom right corner bottom_left the rounding radius of the bottom left corner Returns the initialized rectangle. [transfer none] Since: 3.90 gsk_rounded_rect_init_copy () gsk_rounded_rect_init_copy GskRoundedRect * 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. Parameters self a GskRoundedRect src a GskRoundedRect Returns the initialized rectangle. [transfer none] Since: 3.90 gsk_rounded_rect_init_from_rect () gsk_rounded_rect_init_from_rect GskRoundedRect * 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 . Parameters self a GskRoundedRect bounds a graphene_rect_t radius the border radius Returns the initialized rectangle. [transfer none] gsk_rounded_rect_normalize () gsk_rounded_rect_normalize GskRoundedRect * gsk_rounded_rect_normalize (GskRoundedRect *self); Normalizes the passed rectangle. this function will ensure that the bounds of the rectanlge are normalized and ensure that the corner values are positive and the corners do not overlap. Parameters self a GskRoundedRect Returns the normalized rectangle. [transfer none] Since: 3.90 gsk_rounded_rect_offset () gsk_rounded_rect_offset GskRoundedRect * 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. Parameters self a GskRoundedRect dx the horizontal offset dy the vertical offset Returns the offset rectangle. [transfer none] Since: 3.90 gsk_rounded_rect_shrink () gsk_rounded_rect_shrink GskRoundedRect * 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 . Parameters self The GskRoundedRect to shrink or grow top How far to move the top side downwards right How far to move the right side to the left bottom How far to move the bottom side upwards left How far to move the left side to the right Returns the resized GskRoundedRect. [transfer none] gsk_rounded_rect_is_rectilinear () gsk_rounded_rect_is_rectilinear gboolean 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. Parameters self the GskRoundedRect to check Returns TRUE if the rectangle is rectilinear gsk_rounded_rect_contains_point () gsk_rounded_rect_contains_point gboolean 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. Parameters self a GskRoundedRect point the point to check Returns TRUE if the point is inside the rounded rectangle gsk_rounded_rect_contains_rect () gsk_rounded_rect_contains_rect gboolean 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. Parameters self a GskRoundedRect rect the rectangle to check Returns TRUE if the rect is fully contained inside the rounded rectangle gsk_rounded_rect_intersects_rect () gsk_rounded_rect_intersects_rect gboolean 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. Parameters self a GskRoundedRect rect the rectangle to check Returns TRUE if the rect intersects with the rounded rectangle Types and Values enum GskCorner GskCorner The corner indices used by GskRoundedRect. Members GSK_CORNER_TOP_LEFT The top left corner GSK_CORNER_TOP_RIGHT The top right corner GSK_CORNER_BOTTOM_RIGHT The bottom right corner GSK_CORNER_BOTTOM_LEFT The bottom left corner struct GskRoundedRect GskRoundedRect struct GskRoundedRect { graphene_rect_t bounds; graphene_size_t corner[4]; }; A rectanglular region with rounded corners. Application code should normalize rectangles using gsk_rounded_rect_normalize(); this function will ensure that the bounds of the rectanlge 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. Members graphene_rect_t bounds; the bounds of the rectangle graphene_size_t corner[4]; the size of the 4 rounded corners Since: 3.90 docs/reference/gsk/xml/gsk4-doc.bottom0000664000175000017500000000021413224000677020017 0ustar mclasenmclasen docs/reference/gsk/gsk4.signals0000664000175000017500000000000013224000676016600 0ustar mclasenmclasen