docs/reference/gdk/0000775000175000017500000000000014010071760014335 5ustar mclasenmclasendocs/reference/gdk/version.xml0000664000175000017500000000000614010071607016540 0ustar mclasenmclasen4.0.3 docs/reference/gdk/gdk4-docs.xml0000664000175000017500000000651214010071745016645 0ustar mclasenmclasen ]> GDK 4 Reference Manual This document is for the GDK 4 library, version &version;. The latest versions can be found online at https://developer.gnome.org/gdk4/. If you are looking for the older GDK 3 series of libraries, see https://developer.gnome.org/gdk3/. API Reference
GDK Platform Support Index of all symbols Index of deprecated symbols
docs/reference/gdk/gdk4-sections.txt0000664000175000017500000007213114010071745017563 0ustar mclasenmclasengdk/gdk.h
General general GDK_WINDOWING_X11 GDK_WINDOWING_WIN32 GDK_WINDOWING_MACOS GDK_WINDOWING_WAYLAND GDK_MAJOR_VERSION GDK_MICRO_VERSION GDK_MINOR_VERSION GDK_VERSION_4_0 GDK_VERSION_MIN_REQUIRED GDK_VERSION_MAX_ALLOWED GDK_DISABLE_DEPRECATION_WARNINGS GDK_TYPE_GRAB_STATUS GDK_TYPE_STATUS GdkStatus GDKVAR GDK_EXTERN_VAR _GDK_EXTERN GDK_DECLARE_INTERNAL_TYPE gdk_axis_use_get_type gdk_byte_order_get_type gdk_crossing_mode_get_type gdk_cursor_type_get_type gdk_drag_action_get_type gdk_drag_protocol_get_type gdk_event_mask_get_type gdk_event_type_get_type gdk_extension_mode_get_type gdk_filter_return_get_type gdk_grab_ownership_get_type gdk_grab_status_get_type gdk_gravity_get_type gdk_input_mode_get_type gdk_input_source_get_type gdk_modifier_intent_get_type gdk_modifier_type_get_type gdk_notify_type_get_type gdk_prop_mode_get_type gdk_scroll_direction_get_type gdk_setting_action_get_type gdk_status_get_type gdk_visibility_state_get_type gdk_surface_attributes_type_get_type gdk_surface_edge_get_type gdk_surface_hints_get_type gdk_surface_state_get_type gdk_surface_type_get_type gdk_surface_type_hint_get_type gdk_wm_decoration_get_type gdk_wm_function_get_type GDK_AVAILABLE_IN_4_0 GDK_AVAILABLE_IN_ALL GDK_UNAVAILABLE GDK_DEPRECATED GDK_DEPRECATED_FOR GDK_DEPRECATED_IN_4_0 GDK_DEPRECATED_IN_4_0_FOR GDK_VERSION_CUR_STABLE GDK_VERSION_PREV_STABLE
gdkdisplay GdkDisplay GdkDisplay gdk_display_open gdk_display_get_default gdk_display_get_name gdk_display_device_is_grabbed gdk_display_beep gdk_display_sync gdk_display_flush gdk_display_close gdk_display_is_closed gdk_display_is_rgba gdk_display_is_composited gdk_display_supports_input_shapes gdk_display_get_app_launch_context gdk_display_notify_startup_complete gdk_display_get_default_seat gdk_display_list_seats gdk_display_get_monitors gdk_display_get_monitor_at_surface gdk_display_get_clipboard gdk_display_get_primary_clipboard gdk_display_get_setting gdk_display_get_startup_notification_id gdk_display_put_event gdk_display_map_keyval gdk_display_map_keycode gdk_display_translate_key GDK_DISPLAY GDK_DISPLAY_OBJECT GDK_IS_DISPLAY GDK_TYPE_DISPLAY GDK_DISPLAY_CLASS GDK_IS_DISPLAY_CLASS GDK_DISPLAY_GET_CLASS gdk_display_get_type GdkDisplayClass
gdkdisplaymanager GdkDisplayManager GdkDisplayManager gdk_display_manager_get gdk_display_manager_get_default_display gdk_display_manager_set_default_display gdk_display_manager_list_displays gdk_display_manager_open_display gdk_set_allowed_backends GDK_DISPLAY_MANAGER GDK_DISPLAY_MANAGER_CLASS GDK_DISPLAY_MANAGER_GET_CLASS GDK_IS_DISPLAY_MANAGER_CLASS GDK_IS_DISPLAY_MANAGER GDK_TYPE_DISPLAY_MANAGER GdkDisplayManagerClass gdk_display_manager_get_type
Pixbufs pixbufs gdk_pixbuf_get_from_surface gdk_pixbuf_get_from_texture
RGBA Colors rgba_colors GdkRGBA gdk_rgba_copy gdk_rgba_free gdk_rgba_is_clear gdk_rgba_is_opaque gdk_rgba_parse gdk_rgba_equal gdk_rgba_hash gdk_rgba_to_string GDK_TYPE_RGBA gdk_rgba_get_type
GdkSurface gdksurface GdkSurface GdkGravity gdk_surface_new_toplevel gdk_surface_new_popup gdk_surface_destroy gdk_surface_is_destroyed gdk_surface_get_display gdk_surface_hide gdk_surface_get_mapped gdk_surface_translate_coordinates gdk_surface_beep gdk_surface_get_scale_factor gdk_surface_set_opaque_region gdk_surface_create_gl_context gdk_surface_create_vulkan_context gdk_surface_create_cairo_context gdk_surface_queue_render gdk_surface_get_frame_clock gdk_surface_request_layout gdk_surface_set_cursor gdk_surface_get_cursor gdk_surface_set_input_region gdk_surface_get_width gdk_surface_get_height gdk_surface_get_device_position GdkModifierType GDK_MODIFIER_MASK gdk_surface_get_device_cursor gdk_surface_set_device_cursor GDK_SURFACE GDK_SURFACE_GET_CLASS GDK_TYPE_SURFACE GDK_IS_SURFACE GDK_SURFACE_CLASS GDK_IS_SURFACE_CLASS GDK_TYPE_FILTER_RETURN GDK_TYPE_GRAVITY GDK_TYPE_MODIFIER_TYPE GDK_TYPE_SURFACE_ATTRIBUTES_TYPE GDK_TYPE_SURFACE_EDGE GDK_TYPE_SURFACE_HINTS GDK_TYPE_SURFACE_TYPE GDK_TYPE_SURFACE_TYPE_HINT GDK_TYPE_WM_DECORATION GDK_TYPE_WM_FUNCTION GDK_TYPE_TOPLEVEL_STATE gdk_surface_get_type gdk_surface_window_class_get_type GdkSurfaceClass GdkSurfaceImpl GdkSurfaceImplClass GdkSurfaceRedirect gdk_surface_impl_get_type gdk_fullscreen_mode_get_type
gdkcontentformats Content Formats gdk_intern_mime_type GdkContentFormats gdk_content_formats_new gdk_content_formats_new_for_gtype gdk_content_formats_ref gdk_content_formats_unref gdk_content_formats_print gdk_content_formats_to_string gdk_content_formats_get_gtypes gdk_content_formats_get_mime_types gdk_content_formats_union gdk_content_formats_match gdk_content_formats_match_gtype gdk_content_formats_match_mime_type gdk_content_formats_contain_gtype gdk_content_formats_contain_mime_type gdk_content_formats_union_serialize_gtypes gdk_content_formats_union_deserialize_gtypes gdk_content_formats_union_serialize_mime_types gdk_content_formats_union_deserialize_mime_types GdkContentFormatsBuilder gdk_content_formats_builder_new gdk_content_formats_builder_free_to_formats gdk_content_formats_builder_add_formats gdk_content_formats_builder_add_gtype gdk_content_formats_builder_add_mime_type gdk_content_formats_builder_ref gdk_content_formats_builder_unref gdk_content_formats_builder_to_formats GDK_TYPE_FILE_LIST gdk_file_list_get_type gdk_content_formats_get_type gdk_content_formats_builder_get_type
Pango Interaction pango_interaction gdk_pango_layout_get_clip_region gdk_pango_layout_line_get_clip_region
Cairo Interaction cairo_interaction gdk_surface_create_similar_surface gdk_cairo_set_source_rgba gdk_cairo_set_source_pixbuf gdk_cairo_rectangle gdk_cairo_region gdk_cairo_region_create_from_surface gdk_cairo_draw_from_gl
Rectangles and Regions regions GdkRectangle gdk_rectangle_intersect gdk_rectangle_union gdk_rectangle_equal gdk_rectangle_contains_point gdk_rectangle_get_type
Keyboard Handling keys gdk_keyval_name gdk_keyval_from_name gdk_keyval_convert_case gdk_keyval_to_upper gdk_keyval_to_lower gdk_keyval_is_upper gdk_keyval_is_lower gdk_keyval_to_unicode gdk_unicode_to_keyval
GdkDevice gdkdevice GdkDevice GdkInputSource GdkAxisUse GdkAxisFlags GdkDeviceTool GdkDeviceToolType gdk_device_get_name gdk_device_get_vendor_id gdk_device_get_product_id gdk_device_get_source gdk_device_get_display gdk_device_get_has_cursor gdk_device_get_seat gdk_device_get_num_touches gdk_device_get_device_tool gdk_device_get_caps_lock_state gdk_device_get_direction gdk_device_get_modifier_state gdk_device_get_num_lock_state gdk_device_get_scroll_lock_state gdk_device_has_bidi_layouts gdk_device_get_surface_at_position GdkTimeCoord gdk_device_tool_get_serial gdk_device_tool_get_tool_type gdk_device_tool_get_hardware_id gdk_device_tool_get_axes GDK_TYPE_AXIS_FLAGS GDK_TYPE_AXIS_USE GDK_TYPE_EXTENSION_MODE GDK_TYPE_INPUT_MODE GDK_TYPE_INPUT_SOURCE GDK_TYPE_DEVICE_TYPE GDK_TYPE_GRAB_OWNERSHIP GDK_DEVICE GDK_DEVICE_CLASS GDK_DEVICE_GET_CLASS GDK_IS_DEVICE GDK_IS_DEVICE_CLASS GDK_TYPE_DEVICE GDK_DEVICE_TOOL GDK_IS_DEVICE_TOOL GdkDeviceClass gdk_device_get_type gdk_device_type_get_type gdk_device_tool_get_type gdk_device_tool_new GDK_MAX_TIMECOORD_AXES
GdkDevicePad gdkdevicepad GdkDevicePad GdkDevicePadFeature gdk_device_pad_get_n_groups gdk_device_pad_get_group_n_modes gdk_device_pad_get_n_features gdk_device_pad_get_feature_group GDK_TYPE_DEVICE_PAD GDK_DEVICE_PAD GDK_IS_DEVICE_PAD GDK_DEVICE_PAD_GET_IFACE gdk_device_pad_get_type
GdkSeat gdkseat GdkSeat GdkSeatCapabilities gdk_seat_get_display gdk_seat_get_capabilities gdk_seat_get_pointer gdk_seat_get_keyboard gdk_seat_get_devices gdk_seat_get_tools GDK_SEAT GDK_IS_SEAT GDK_TYPE_SEAT GDK_TYPE_SEAT_CAPABILITIES gdk_seat_get_type gdk_seat_capabilities_get_type
Events events GdkEvent GdkEventType GdkKeymapKey GdkKeyMatch GdkTouchpadGesturePhase GdkScrollDirection GdkCrossingMode GdkNotifyType GDK_CURRENT_TIME GDK_PRIORITY_EVENTS GDK_PRIORITY_REDRAW GDK_EVENT_PROPAGATE GDK_EVENT_STOP GDK_BUTTON_PRIMARY GDK_BUTTON_MIDDLE GDK_BUTTON_SECONDARY gdk_event_ref gdk_event_unref gdk_event_get_event_type gdk_event_get_surface gdk_event_get_device gdk_event_get_device_tool gdk_event_get_time gdk_event_get_display gdk_event_get_seat GdkEventSequence gdk_event_get_event_sequence gdk_event_get_modifier_state gdk_event_get_position gdk_event_get_axes gdk_event_get_axis gdk_event_get_history gdk_event_get_pointer_emulated gdk_event_triggers_context_menu GdkButtonEvent gdk_button_event_get_button GdkScrollEvent gdk_scroll_event_get_direction gdk_scroll_event_get_deltas gdk_scroll_event_is_stop GdkMotionEvent GdkKeyEvent gdk_key_event_get_keyval gdk_key_event_get_keycode gdk_key_event_get_consumed_modifiers gdk_key_event_get_layout gdk_key_event_get_level gdk_key_event_is_modifier gdk_key_event_matches gdk_key_event_get_match GdkFocusEvent gdk_focus_event_get_in gdk_touch_event_get_emulating_pointer GdkCrossingEvent gdk_crossing_event_get_mode gdk_crossing_event_get_detail gdk_crossing_event_get_focus GdkGrabBrokenEvent gdk_grab_broken_event_get_grab_surface gdk_grab_broken_event_get_implicit GdkDeleteEvent GdkDNDEvent gdk_dnd_event_get_drop GdkTouchEvent GdkTouchpadEvent gdk_touchpad_event_get_gesture_phase gdk_touchpad_event_get_n_fingers gdk_touchpad_event_get_deltas gdk_touchpad_event_get_pinch_angle_delta gdk_touchpad_event_get_pinch_scale GdkPadEvent gdk_pad_event_get_axis_value gdk_pad_event_get_button gdk_pad_event_get_group_mode GdkProximityEvent gdk_events_get_angle gdk_events_get_center gdk_events_get_distance GDK_EVENT GDK_TYPE_EVENT GDK_TYPE_EVENT_MASK GDK_TYPE_EVENT_TYPE GDK_TYPE_CROSSING_MODE GDK_TYPE_SCROLL_DIRECTION GDK_TYPE_NOTIFY_TYPE GDK_IS_EVENT GDK_IS_EVENT_TYPE GDK_TYPE_BUTTON_EVENT GDK_TYPE_CROSSING_EVENT GDK_TYPE_DELETE_EVENT GDK_TYPE_DND_EVENT GDK_TYPE_FOCUS_EVENT GDK_TYPE_GRAB_BROKEN_EVENT GDK_TYPE_KEY_EVENT GDK_TYPE_MOTION_EVENT GDK_TYPE_PAD_EVENT GDK_TYPE_PROXIMITY_EVENT GDK_TYPE_SCROLL_EVENT GDK_TYPE_TOUCH_EVENT GDK_TYPE_TOUCHPAD_EVENT gdk_event_get_type gdk_event_sequence_get_type gdk_button_event_get_type gdk_crossing_event_get_type gdk_delete_event_get_type gdk_dnd_event_get_type gdk_focus_event_get_type gdk_grab_broken_event_get_type gdk_key_event_get_type gdk_motion_event_get_type gdk_pad_event_get_type gdk_proximity_event_get_type gdk_scroll_event_get_type gdk_touch_event_get_type gdk_touchpad_event_get_type
gdkpaintable GdkPaintable GdkPaintable GdkPaintableInterface GdkPaintableFlags gdk_paintable_get_current_image gdk_paintable_snapshot gdk_paintable_get_flags gdk_paintable_get_intrinsic_width gdk_paintable_get_intrinsic_height gdk_paintable_get_intrinsic_aspect_ratio gdk_paintable_compute_concrete_size gdk_paintable_invalidate_contents gdk_paintable_invalidate_size gdk_paintable_new_empty GdkSnapshot GDK_SNAPSHOT GDK_TYPE_PAINTABLE GDK_TYPE_SNAPSHOT GDK_IS_SNAPSHOT GdkSnapshotClass gdk_paintable_get_type gdk_snapshot_get_type
gdkpopuplayout GdkPopupLayout GdkPopupLayout GdkAnchorHints gdk_popup_layout_new gdk_popup_layout_ref gdk_popup_layout_unref gdk_popup_layout_copy gdk_popup_layout_equal gdk_popup_layout_set_anchor_rect gdk_popup_layout_get_anchor_rect gdk_popup_layout_set_rect_anchor gdk_popup_layout_get_rect_anchor gdk_popup_layout_set_surface_anchor gdk_popup_layout_get_surface_anchor gdk_popup_layout_set_anchor_hints gdk_popup_layout_get_anchor_hints gdk_popup_layout_set_offset gdk_popup_layout_get_offset GDK_TYPE_POPUP_LAYOUT gdk_popup_layout_get_type
gdkpopup GdkPopup GdkPopup gdk_popup_present gdk_popup_get_surface_anchor gdk_popup_get_rect_anchor gdk_popup_get_parent gdk_popup_get_position_x gdk_popup_get_position_y gdk_popup_get_autohide GDK_TYPE_POPUP
gdktoplevellayout GdkToplevelLayout GdkToplevelLayout gdk_toplevel_layout_new gdk_toplevel_layout_ref gdk_toplevel_layout_unref gdk_toplevel_layout_copy gdk_toplevel_layout_equal gdk_toplevel_layout_set_maximized gdk_toplevel_layout_get_maximized gdk_toplevel_layout_set_fullscreen gdk_toplevel_layout_get_fullscreen gdk_toplevel_layout_get_fullscreen_monitor gdk_toplevel_layout_set_resizable gdk_toplevel_layout_get_resizable GDK_TYPE_TOPLEVEL_LAYOUT gdk_toplevel_layout_get_type
gdktoplevelsize GdkToplevelSize GdkToplevelSize gdk_toplevel_size_get_bounds gdk_toplevel_size_set_size gdk_toplevel_size_set_min_size gdk_toplevel_size_set_shadow_width GDK_TYPE_TOPLEVEL_SIZE gdk_toplevel_size_get_type
gdktoplevel GdkToplevel GdkToplevel GdkToplevelState GdkFullscreenMode GdkSurfaceEdge gdk_toplevel_present gdk_toplevel_minimize gdk_toplevel_lower gdk_toplevel_focus gdk_toplevel_get_state gdk_toplevel_set_title gdk_toplevel_set_startup_id gdk_toplevel_set_transient_for gdk_toplevel_set_modal gdk_toplevel_set_icon_list gdk_toplevel_show_window_menu gdk_toplevel_set_decorated gdk_toplevel_set_deletable gdk_toplevel_supports_edge_constraints gdk_toplevel_inhibit_system_shortcuts gdk_toplevel_restore_system_shortcuts gdk_toplevel_begin_resize gdk_toplevel_begin_move GDK_TYPE_TOPLEVEL gdk_toplevel_get_type
Textures textures GdkTexture GdkMemoryTexture GdkGLTexture gdk_texture_new_for_pixbuf gdk_texture_new_from_resource gdk_texture_new_from_file gdk_texture_get_width gdk_texture_get_height gdk_texture_download gdk_texture_save_to_png GdkMemoryFormat GDK_MEMORY_DEFAULT gdk_memory_texture_new gdk_gl_texture_new gdk_gl_texture_release GdkTextureClass gdk_texture_get_type GDK_TYPE_TEXTURE GDK_IS_TEXTURE GDK_TEXTURE GdkGLTextureClass gdk_gl_texture_get_type GDK_TYPE_GL_TEXTURE GDK_IS_GL_TEXTURE GDK_GL_TEXTURE GdkMemoryTextureClass gdk_memory_texture_get_type GDK_TYPE_MEMORY_TEXTURE GDK_IS_MEMORY_TEXTURE GDK_MEMORY_TEXTURE
Cursors cursors GdkCursor gdk_cursor_new_from_texture gdk_cursor_new_from_name gdk_cursor_get_fallback gdk_cursor_get_name gdk_cursor_get_texture gdk_cursor_get_hotspot_x gdk_cursor_get_hotspot_y GDK_TYPE_CURSOR GDK_CURSOR GDK_IS_CURSOR gdk_cursor_get_type
Drag and Drop dnd GdkDrag GdkDrop GdkDragCancelReason gdk_drag_drop_done gdk_drag_begin GdkDragAction GDK_ACTION_ALL gdk_drag_get_display gdk_drag_get_content gdk_drag_get_actions gdk_drag_get_selected_action gdk_drag_get_formats gdk_drag_get_device gdk_drag_get_surface gdk_drag_get_drag_surface gdk_drag_set_hotspot gdk_drag_action_is_unique GdkDragSurface GdkDragSurfaceInterface gdk_drag_surface_present gdk_drop_get_display gdk_drop_get_device gdk_drop_get_surface gdk_drop_get_formats gdk_drop_get_actions gdk_drop_get_drag gdk_drop_status gdk_drop_finish gdk_drop_read_async gdk_drop_read_finish gdk_drop_read_value_async gdk_drop_read_value_finish GDK_DRAG GDK_TYPE_DRAG GDK_IS_DRAG GDK_DRAG_CLASS GDK_DRAG_GET_CLASS GDK_IS_DRAG_CLASS GDK_TYPE_DRAG_ACTION GDK_TYPE_DRAG_PROTOCOL GDK_TYPE_DROP GDK_DROP GDK_IS_DROP GDK_TYPE_DRAG_SURFACE GdkDragClass gdk_drag_get_type GdkDropClass gdk_drop_get_type
x_interaction GDK_SURFACE_XID GDK_DISPLAY_XDISPLAY GDK_POINTER_TO_XID GDK_XID_TO_POINTER gdk_x11_lookup_xdisplay gdk_x11_get_server_time gdk_x11_device_get_id gdk_x11_device_manager_lookup gdk_x11_display_open gdk_x11_display_set_program_class gdk_x11_display_get_user_time gdk_x11_display_broadcast_startup_message gdk_x11_display_get_startup_notification_id gdk_x11_display_set_startup_notification_id gdk_x11_display_get_xdisplay gdk_x11_display_get_xscreen gdk_x11_display_get_xrootwindow gdk_x11_display_get_xcursor gdk_x11_display_grab gdk_x11_display_ungrab gdk_x11_display_get_default_group gdk_x11_display_error_trap_push gdk_x11_display_error_trap_pop gdk_x11_display_error_trap_pop_ignored gdk_x11_display_set_cursor_theme gdk_x11_display_set_surface_scale gdk_x11_display_get_glx_version gdk_x11_display_get_primary_monitor gdk_x11_display_get_screen gdk_x11_monitor_get_output gdk_x11_monitor_get_workarea gdk_x11_screen_get_screen_number gdk_x11_screen_get_xscreen gdk_x11_screen_get_window_manager_name gdk_x11_screen_get_monitor_output gdk_x11_screen_supports_net_wm_hint gdk_x11_screen_get_number_of_desktops gdk_x11_screen_get_current_desktop gdk_x11_surface_lookup_for_display gdk_x11_surface_get_xid gdk_x11_surface_set_theme_variant gdk_x11_surface_set_user_time gdk_x11_surface_move_to_current_desktop gdk_x11_surface_move_to_desktop gdk_x11_surface_get_desktop gdk_x11_surface_set_utf8_property gdk_x11_surface_set_frame_sync_enabled gdk_x11_surface_set_group gdk_x11_surface_get_group gdk_x11_surface_set_skip_pager_hint gdk_x11_surface_set_skip_taskbar_hint gdk_x11_surface_set_urgency_hint gdk_x11_get_xatom_by_name_for_display gdk_x11_get_xatom_name_for_display gdk_x11_set_sm_client_id gdk_x11_display_text_property_to_text_list gdk_x11_free_text_list gdk_x11_display_string_to_compound_text gdk_x11_display_utf8_to_compound_text gdk_x11_free_compound_text GDK_TYPE_X11_APP_LAUNCH_CONTEXT GDK_X11_APP_LAUNCH_CONTEXT GDK_X11_APP_LAUNCH_CONTEXT_CLASS GDK_IS_X11_APP_LAUNCH_CONTEXT GDK_IS_X11_APP_LAUNCH_CONTEXT_CLASS GDK_X11_APP_LAUNCH_CONTEXT_GET_CLASS GDK_TYPE_X11_DEVICE_MANAGER_XI2 GDK_X11_DEVICE_MANAGER_XI2 GDK_X11_DEVICE_MANAGER_XI2_CLASS GDK_IS_X11_DEVICE_MANAGER_XI2 GDK_IS_X11_DEVICE_MANAGER_XI2_CLASS GDK_X11_DEVICE_MANAGER_XI2_GET_CLASS GDK_TYPE_X11_DEVICE_MANAGER_XI GDK_X11_DEVICE_MANAGER_XI GDK_X11_DEVICE_MANAGER_XI_CLASS GDK_IS_X11_DEVICE_MANAGER_XI GDK_IS_X11_DEVICE_MANAGER_XI_CLASS GDK_X11_DEVICE_MANAGER_XI_GET_CLASS GDK_TYPE_X11_DEVICE_XI2 GDK_X11_DEVICE_XI2 GDK_X11_DEVICE_XI2_CLASS GDK_IS_X11_DEVICE_XI2 GDK_IS_X11_DEVICE_XI2_CLASS GDK_X11_DEVICE_XI2_GET_CLASS GDK_TYPE_X11_DEVICE_XI GDK_X11_DEVICE_XI GDK_X11_DEVICE_XI_CLASS GDK_IS_X11_DEVICE_XI GDK_IS_X11_DEVICE_XI_CLASS GDK_X11_DEVICE_XI_GET_CLASS GDK_TYPE_X11_DISPLAY GDK_X11_DISPLAY GDK_X11_DISPLAY_CLASS GDK_IS_X11_DISPLAY GDK_IS_X11_DISPLAY_CLASS GDK_X11_DISPLAY_GET_CLASS GDK_TYPE_X11_DRAG_CONTEXT GDK_X11_DRAG_CONTEXT GDK_X11_DRAG_CONTEXT_CLASS GDK_IS_X11_DRAG_CONTEXT GDK_IS_X11_DRAG_CONTEXT_CLASS GDK_X11_DRAG_CONTEXT_GET_CLASS GDK_TYPE_X11_GL_CONTEXT GDK_X11_GL_CONTEXT GDK_X11_GL_CONTEXT_CLASS GDK_IS_X11_GL_CONTEXT GDK_IS_X11_GL_CONTEXT_CLASS GDK_TYPE_X11_DRAG GDK_X11_DRAG GDK_IS_X11_DRAG GDK_IS_X11_DRAG_CLASS GDK_TYPE_X11_MONITOR GDK_X11_MONITOR GDK_IS_X11_MONITOR GDK_TYPE_X11_SURFACE GDK_X11_SURFACE GDK_X11_SURFACE_CLASS GDK_IS_X11_SURFACE GDK_IS_X11_SURFACE_CLASS GDK_X11_SURFACE_GET_CLASS gdk_x11_app_launch_context_get_type gdk_x11_cursor_get_type gdk_x11_device_manager_xi2_get_type gdk_x11_device_manager_xi_get_type gdk_x11_device_xi2_get_type gdk_x11_device_xi_get_type gdk_x11_display_get_type gdk_x11_display_manager_get_type gdk_x11_drag_context_get_type gdk_x11_drag_get_type gdk_x11_gl_context_get_type gdk_x11_monitor_get_type gdk_x11_screen_get_type gdk_x11_surface_get_type gdk_surface_impl_x11_get_type
wayland_interaction gdk_wayland_display_get_wl_display gdk_wayland_display_get_wl_compositor gdk_wayland_display_query_registry gdk_wayland_display_set_cursor_theme gdk_wayland_display_get_startup_notification_id gdk_wayland_display_set_startup_notification_id gdk_wayland_seat_get_wl_seat gdk_wayland_device_get_wl_seat gdk_wayland_device_get_wl_pointer gdk_wayland_device_get_wl_keyboard gdk_wayland_device_get_node_path gdk_wayland_monitor_get_wl_output gdk_wayland_surface_get_wl_surface GdkWaylandToplevelExported gdk_wayland_toplevel_export_handle gdk_wayland_toplevel_unexport_handle gdk_wayland_toplevel_set_transient_for_exported gdk_wayland_toplevel_set_application_id GDK_TYPE_WAYLAND_DEVICE GDK_WAYLAND_DEVICE GDK_WAYLAND_DEVICE_CLASS GDK_WAYLAND_DEVICE_GET_CLASS GDK_IS_WAYLAND_DEVICE GDK_IS_WAYLAND_DEVICE_CLASS GDK_TYPE_WAYLAND_DISPLAY GDK_WAYLAND_DISPLAY GDK_WAYLAND_DISPLAY_CLASS GDK_WAYLAND_DISPLAY_GET_CLASS GDK_IS_WAYLAND_DISPLAY GDK_IS_WAYLAND_DISPLAY_CLASS GDK_TYPE_WAYLAND_DISPLAY_MANAGER GDK_WAYLAND_DISPLAY_MANAGER GDK_WAYLAND_DISPLAY_MANAGER_CLASS GDK_WAYLAND_DISPLAY_MANAGER_GET_CLASS GDK_IS_WAYLAND_DISPLAY_MANAGER GDK_IS_WAYLAND_DISPLAY_MANAGER_CLASS GDK_TYPE_WAYLAND_SURFACE GDK_WAYLAND_SURFACE GDK_WAYLAND_SURFACE_CLASS GDK_WAYLAND_SURFACE_GET_CLASS GDK_IS_WAYLAND_SURFACE GDK_IS_WAYLAND_SURFACE_CLASS gdk_wayland_device_get_type gdk_wayland_display_get_type gdk_wayland_display_manager_get_type gdk_wayland_gl_context_get_type gdk_wayland_monitor_get_type gdk_wayland_popup_get_type gdk_wayland_seat_get_type gdk_wayland_surface_get_type gdk_wayland_toplevel_get_type
Application launching gdkapplaunchcontext GdkAppLaunchContext gdk_app_launch_context_get_display gdk_app_launch_context_set_desktop gdk_app_launch_context_set_timestamp gdk_app_launch_context_set_icon gdk_app_launch_context_set_icon_name GDK_APP_LAUNCH_CONTEXT GDK_APP_LAUNCH_CONTEXT_CLASS GDK_APP_LAUNCH_CONTEXT_GET_CLASS GDK_IS_APP_LAUNCH_CONTEXT GDK_IS_APP_LAUNCH_CONTEXT_CLASS GDK_TYPE_APP_LAUNCH_CONTEXT GdkAppLaunchContextClass gdk_app_launch_context_get_type
GdkFrameClock gdkframeclock GdkFrameClock gdk_frame_clock_get_frame_time GdkFrameClockPhase gdk_frame_clock_request_phase gdk_frame_clock_begin_updating gdk_frame_clock_end_updating gdk_frame_clock_get_frame_counter gdk_frame_clock_get_history_start gdk_frame_clock_get_timings gdk_frame_clock_get_current_timings gdk_frame_clock_get_refresh_info gdk_frame_clock_get_fps GDK_FRAME_CLOCK GDK_FRAME_CLOCK_CLASS GDK_FRAME_CLOCK_GET_CLASS GDK_FRAME_CLOCK_IDLE GDK_FRAME_CLOCK_IDLE_CLASS GDK_FRAME_CLOCK_IDLE_GET_CLASS GDK_IS_FRAME_CLOCK GDK_IS_FRAME_CLOCK_CLASS GDK_IS_FRAME_CLOCK_IDLE GDK_IS_FRAME_CLOCK_IDLE_CLASS GdkFrameClockPrivate gdk_frame_clock_get_type gdk_frame_clock_idle_get_type
GdkFrameTimings gdkframetimings GdkFrameTimings gdk_frame_timings_ref gdk_frame_timings_unref gdk_frame_timings_get_frame_counter gdk_frame_timings_get_complete gdk_frame_timings_get_frame_time gdk_frame_timings_get_presentation_time gdk_frame_timings_get_refresh_interval gdk_frame_timings_get_predicted_presentation_time gdk_frame_timings_get_type
gdkdrawcontext GdkDrawContext gdk_draw_context_get_display gdk_draw_context_get_surface gdk_draw_context_begin_frame gdk_draw_context_end_frame gdk_draw_context_is_in_frame gdk_draw_context_get_frame_region GDK_DRAW_CONTEXT GDK_IS_DRAW_CONTEXT GDK_TYPE_DRAW_CONTEXT GDK_DRAW_CONTEXT_CLASS GDK_DRAW_CONTEXT_GET_CLASS GDK_IS_DRAW_CONTEXT_CLASS gdk_draw_context_get_type
gdkglcontext GdkGLContext gdk_gl_context_get_display gdk_gl_context_get_surface gdk_gl_context_get_shared_context gdk_gl_context_get_version gdk_gl_context_set_required_version gdk_gl_context_get_required_version gdk_gl_context_set_debug_enabled gdk_gl_context_get_debug_enabled gdk_gl_context_set_forward_compatible gdk_gl_context_get_forward_compatible gdk_gl_context_set_use_es gdk_gl_context_get_use_es gdk_gl_context_is_legacy GdkGLError gdk_gl_context_realize gdk_gl_context_make_current gdk_gl_context_get_current gdk_gl_context_clear_current GDK_GL_CONTEXT GDK_IS_GL_CONTEXT GDK_TYPE_GL_CONTEXT GDK_GL_CONTEXT_CLASS GDK_GL_CONTEXT_GET_CLASS GDK_IS_GL_CONTEXT_CLASS gdk_gl_context_get_type gdk_gl_error_quark GDK_GL_ERROR GDK_TYPE_GL_ERROR GDK_TYPE_GL_PROFILE
gdkmonitor GdkMonitor gdk_monitor_get_display gdk_monitor_get_geometry gdk_monitor_get_width_mm gdk_monitor_get_height_mm gdk_monitor_get_manufacturer gdk_monitor_get_model gdk_monitor_get_connector gdk_monitor_get_scale_factor gdk_monitor_get_refresh_rate GdkSubpixelLayout gdk_monitor_get_subpixel_layout gdk_monitor_is_valid gdk_monitor_get_type GdkMonitorClass GDK_TYPE_MONITOR GDK_MONITOR GDK_IS_MONITOR
gdkcairocontext GdkCairoContext gdk_cairo_context_cairo_create GDK_CAIRO_CONTEXT GDK_IS_CAIRO_CONTEXT GDK_TYPE_CAIRO_CONTEXT GDK_CAIRO_ERROR gdk_cairo_context_get_type
gdkvulkancontext GdkVulkanContext GdkVulkanError gdk_vulkan_context_get_device gdk_vulkan_context_get_draw_index gdk_vulkan_context_get_draw_semaphore gdk_vulkan_context_get_image gdk_vulkan_context_get_image_format gdk_vulkan_context_get_instance gdk_vulkan_context_get_n_images gdk_vulkan_context_get_physical_device gdk_vulkan_context_get_queue gdk_vulkan_context_get_queue_family_index GDK_VULKAN_CONTEXT GDK_IS_VULKAN_CONTEXT GDK_TYPE_VULKAN_CONTEXT GDK_RENDERING_VULKAN GDK_VULKAN_ERROR gdk_vulkan_context_get_type gdk_vulkan_error_quark gdk_vulkan_strerror
gdkclipboard GdkClipboard gdk_clipboard_get_display gdk_clipboard_get_formats gdk_clipboard_is_local gdk_clipboard_get_content gdk_clipboard_store_async gdk_clipboard_store_finish gdk_clipboard_read_async gdk_clipboard_read_finish gdk_clipboard_read_value_async gdk_clipboard_read_value_finish gdk_clipboard_read_texture_async gdk_clipboard_read_texture_finish gdk_clipboard_read_text_async gdk_clipboard_read_text_finish gdk_clipboard_set_content gdk_clipboard_set gdk_clipboard_set_valist gdk_clipboard_set_value gdk_clipboard_set_text gdk_clipboard_set_texture GDK_TYPE_CLIPBOARD GDK_CLIPBOARD GDK_IS_CLIPBOARD gdk_clipboard_get_type
gdkcontentprovider GdkContentProvider GdkContentProviderClass gdk_content_provider_new_for_value gdk_content_provider_new_typed gdk_content_provider_new_for_bytes gdk_content_provider_new_union gdk_content_provider_ref_formats gdk_content_provider_ref_storable_formats gdk_content_provider_content_changed gdk_content_provider_write_mime_type_async gdk_content_provider_write_mime_type_finish gdk_content_provider_get_value GDK_CONTENT_PROVIDER GDK_CONTENT_PROVIDER_CLASS GDK_CONTENT_PROVIDER_GET_CLASS GDK_IS_CONTENT_PROVIDER GDK_IS_CONTENT_PROVIDER_CLASS gdk_content_provider_get_type
gdkcontentserializer GdkContentSerializer GdkContentSerializeFunc gdk_content_serializer_get_mime_type gdk_content_serializer_get_gtype gdk_content_serializer_get_value gdk_content_serializer_get_output_stream gdk_content_serializer_get_priority gdk_content_serializer_get_cancellable gdk_content_serializer_get_user_data gdk_content_serializer_set_task_data gdk_content_serializer_get_task_data gdk_content_serializer_return_success gdk_content_serializer_return_error gdk_content_register_serializer gdk_content_serialize_async gdk_content_serialize_finish GDK_TYPE_CONTENT_SERIALIZER GDK_CONTENT_SERIALIZER GDK_IS_CONTENT_SERIALIZER gdk_content_serializer_get_type
gdkcontentdeserializer GdkContentDeserializer GdkContentDeserializeFunc gdk_content_deserializer_get_mime_type gdk_content_deserializer_get_gtype gdk_content_deserializer_get_value gdk_content_deserializer_get_input_stream gdk_content_deserializer_get_priority gdk_content_deserializer_get_cancellable gdk_content_deserializer_get_user_data gdk_content_deserializer_set_task_data gdk_content_deserializer_get_task_data gdk_content_deserializer_return_success gdk_content_deserializer_return_error gdk_content_register_deserializer gdk_content_deserialize_async gdk_content_deserialize_finish GDK_TYPE_CONTENT_DESERIALIZER GDK_CONTENT_DESERIALIZER GDK_IS_CONTENT_DESERIALIZER gdk_content_deserializer_get_type
docs/reference/gdk/gdk4-overrides.txt0000664000175000017500000000064514010071745017737 0ustar mclasenmclasen GDK_WINDOWING_X11 #define GDK_WINDOWING_X11 GDK_WINDOWING_WIN32 #define GDK_WINDOWING_WIN32 GDK_WINDOWING_MACOS #define GDK_WINDOWING_MACOS GDK_WINDOWING_WAYLAND #define GDK_WINDOWING_WAYLAND GDK_DISABLE_DEPRECATION_WARNINGS #define GDK_DISABLE_DEPRECATION_WARNINGS docs/reference/gdk/html/0000775000175000017500000000000014010071761015302 5ustar mclasenmclasendocs/reference/gdk/html/rotated-text.png0000664000175000017500000003613614010071745020447 0ustar mclasenmclasenPNG  IHDR'O pHYs  tIME 8#FH IDATxohSYw NBtBS*`?4Cq ڠ#h;*UЉCZ4Sˤ*42)LOBSȁ o~?4IMcS6M49kA _[@$z HA A'bQEo%>tdKQ} )X G< l9L˜DOyO;14-1(w/'?l/?XYV!EPD}Ŭ? VW~MJ~{(U#8JDAT`5 ,Ƌ0BYD8bF9$^wGa3_s /1=%ң;? Cmo~K}=9kcYgG̰/@dԷcQ(FB>b{Ø/ :ٖ z {r ,eXⶵǜs5mS0o7~?}3 ~"p//Pnxy:` GO ڭ0es { {,xfݟ KNþrŒވrSSV0xЋB!L ~Y*p;{Be"41wkg1%߽jrnéa8lLy3z ~U @>~{V7q[dl/G.,BKmɽC:#7X:qiˡ AJ:P~+0C6]@IdhwODzvbuZ`'$^Es..[o\ nwݶx@r ͋Elv" 93VSYR~ D~U={62ae!5ïnȅuk(al"b,Η:n֘##.z 0GsU~Y`7{xWqQ~詁ЪRwW*kl I4a#j;<8iDE~qe\F# I@jbtov=?c=: L Т )Pd!X"TYQVLv,dicsc%L%Q!=-HLGi iւZSG]\v@ANHʙN{4nQUm[(|r`hvݍ?ځ QJ|;yzmo~ V8gz^(wFt 2ydX8!TU x 6sQK,~u2أaJ\/a%0A&Ӆ8Bkօz.gQ uB^Pjc&1GU跁wg B6eY_]`:7ہ=&;#@__?ct.QeDy%'`k"^R\Έ8 ZtQVAP.Ke]: MQmtG1 >= 0̎9s@wo/t́CsJ^q?ƁV;kA.v#zȧ/%K*p > ENmřk0K֯LZ G?wRfk'yx+S " bsjc2mtfOd&ȿ-(yy]/ofnAsV=p4[ )xuw2eZʴ(15~ly`|t`E )wɣw*yuM];.QT tVBmKDOd_E*<g.8L|إS|L§\XWm2L &D'ޥ];?]}1L^"af8AfAZZ =fݭ?D6k0;~*0H2KDYEt+.P|:)c`}RFMqpVS1`M&' >a{:)?s1?~sa_?c|mwnal2:(wj6Aiw!> &>|oeE+2Jq5*32uccZn {F|9%3z 3"Ǘ8_B ?lO&]g2E9p[Wql `g<:Q1?puDq54kn\>{3 A"{.7sgj N^p^x_ r>t'!yDcV4 7^Huew8>XdN;1? 1d\mYgUQȧĜț;dFDFI^pM}Mĭvnj%]/׮kM> h6NPoZ|JѦ[Wr%e&&@/' w6vkKm[6ܷB48^01耓/>#5A ;1e*~Ê7 q]->N]ɲXM5F9!"2{-(Z(L]WKfNvQW>bD{7[ฑgQH^z#їٮ)Vau TdOs);w8h%"lYr%v)n e8z;m'T .$]{<~uI)Wr*,Ɓo;qqTW,V?_)@D߄yؓ_/ki&&Csa_"?!̌ÏD@ӡ9VGgmvsxt?Ypnϒ}w([Vf X\ b`0F.\:@qCf/Tsx~.+L~J~7\|3vئh]m=oumYe{񿷠aSeהp]}a hE@*iyv?W>{ |"m3rsN vsSYٸ%kN54,IKp ~i$ p{(v.r [}H,|V`;Ոػf1`}+Rc}m;v)Oe0`t\pqQ+ ?1 HD4+2tO 7|V ĺeYvp6^ܧLݙlqoXgofs@iz=*;na_g"*v۽FpUfi:]H|&T3f/i Ꮏ#Я{&wSM4xӍ+>9E&M}gyDϗoKI N3pܴ\+Z xcc/0+0 =}z|D5eMدZvn՚c<4]HD;}(f,bFT~c\9]WC{"4H+sO$2|Xe{nL3Q4z|.vs{iyo9ߑiϑ˚,@8D .y3isAL$D<9{m"*-r?&~ڝ~^)[S3]2$xbd[;ݲW뚆ӊcJ߽vYw;O=L: ҝ;Pw'e;(ZV5 hVVDi16H05B *"E2DA0bw1tUExz$b\S(>~ F\G^ss-ju.qDf8,-E*M@@1ZFc,Ԇ0V GpXj|}w60=/r@jR-v!lu>ǘx/Qn(c<՘58\D3 OlcCU4V0[1xPbq 9\8ߘ{n*U7*ע[. rgB@wMMpP9#;v9c{}s/P|} ހq/GzKwgͲ$`"V> ]=DeY1` k#YP|гqf_DH2z`)Q>jzjL;AL;>}5=aLv569@]|Xj2G`L-_3|/s˕f7?]~ƛeeZSZ|`#8-G-{~5^U_%k>>AT(Ci*ؔ}ć^ zD?#__pE])c>GUmtE϶Y`S h~q[k dŒ!vmj[[u =7MFn}%U"$#]ʎ,_~1ì7j!vwb*H <섓}u9)GZZ~?jl9ƛ1;0<҃[NƠ.!C[j~_pw3k3wn2 sj!v zyʠm]`b _̾}fwwQQ7!BdO5Zi{`5{l;*|EopB4d\YaF9vҕB|_p\6b!QI7{A{@Kd'|'ĮCagE6m#rI&lżx5إ %[V[V`quHAlQ+MQs~An ž~D l/DEGB8\EK jZ :w[ >Tn 7zg:#/ |-+-¯ r;]_~sD FMgfحG<.fOe5.7pJW)3Lu a$c6'x\ŮF&IEq|PyN XU\_nC+1ev&DAl+wRTIbhV(~ysTG[7N܂VUdG[3QN=c**PfO* spD^s̆WRA>N=lb\["zlSQV ]q-G x$6S&6ZUq s(s͙􎣹bJ" :h "bࢶg>_XrsGD2N[2F.A <&#^b +f ^J"ۣbrʺeN2Ad`majY]~^#8 ~W79|כE2FGDK==9 t @lmUи'ޓ1F2]K %D?\?m8dOr'9-NjLb{f: KyE?","@:C|x9"爼*<OQ]2C<s?P#}gk?%q >NϓZ .2+_ef/ m K)9* =N0yJԵNޘQs[t‰%D+춌|J%@-P(!\3Do9l@"Jg0 z $m)m"kPB'O3]>;i$zx.J`I j6ϧ_SD6\R^^<eO#bF֏"`0=kX ]4׳j v=ᗫcA c9%L358 8J' 1Ҕ>?〲|J0q!1W 4;lO^[ pcRGɀI|#[w7υu:'$f Jo{[ @ Q#~j?R-zax)C (POeig΃͇>\߾kϿ-l(XvHGuW@P8yh]~%]X.\"D>r!{G?Ev3Xf'0)lw!9`;=cIӾ&c7tNoB?IDATN@77 *^G:>yE<!R33*Bp>3G[~ox* +QTY!t)."ϧP``XL|2|c]'J%1s bVxFF􂵐O95Å'|!QUjXܿ|K*bmiB,A1a 1 3}$zAAx/;#o@[gڒ LsиO5~PL6%5*1T[X`V 1O!T[]ɐD9Y⋀ >V8ok!*(C_!`:=ՙt;< OzIE|cťn٧:ahq$*41~AE1a@;;{Lis pM+AznH-V b}V*o,V\U(VWNkXs#6;gA-}̾Gp0% pW ?L'XO JvV=c L? v- xΊۼT,ro=>{ hd<_OBX/k92`ؕb0ERa;&#ckp]a~ ~ q}^*FB$fB0]tb:^`ρT Dߗ~sDEX3Y )-p |LSC7m _v܏:!v9M;fO!B__< Jf+6JrCuM6.xNE<<F~_npMi_SI nXҥ"sPB9"δ_"ehi;`K0xw\Z~+^zcbאK*Y;r4h2t%`ѣ迟;_UP3j% ѐKbװfg {u>ot 9Ի^Z]Aܻ<> W tz1)NsTӃĴ>;O'ԤfуMcGT>YsYv:j?NAW'xsɐv!8bK#bo` V ~mM60AkXէ:?>ߐ%3.=?hpVQjt䦫ݐx?߇h+/x.r;1FWQ ~5ϻ:N"OWEQl]lv.$I,Ϸm3Yft=kL t2]]Yi;1g5tݕ dŅ+mO^DR]cϪۙoC""?O э6ڨQլdx}zN4Xjc0Ei=QKM.s"3lI9e=8bu}jLaV2A_?O{"aE?7񿺔MLȝh)(| Ȭ'v9UT#1rE\Nܿ']vqEeku KaO;U!}lWEl>.:w"0E~\>M^wUQaNaգ4qUT4Ϟyu}-OD5ؓDEHG:{8ԉ ]V+AL 6y/¯[KԷ4)\ռg-3؃PBҎMN>_Ru3b'Pg.\,k-Ɏہh5Y9|,?XT;BgDe)]K_U`u&1rYZ뇟( c]OvLAd%h)0x2@WG ~&MvQp |BgR\f/M` J_~?7\ǝ9~{kEKr-u5ٖ1X|+&1Ts$n[= O$0jՑpS%i˗5x|BPn~TTQӗ{$TrRmU2^*6i:/tCQ;X3 ,_dF1r=T>xLp m3hsN{yVgr,u IO9%DMyn.z0Ãqn=D:3w42;8TKl|GoqNS&;Y+'}/X]:/r`9eu f Z{l9]'UTFĆ#C &/L_P^iz9vq`48NsJ~ץ?G/!x-7ÈF̯~zEhIr9 Vʴ@W?cb=7EΫ>O |cйH%"di|V3,?wY;"(xjSg `= o9H~s V@ee |-aBJwލU02 HߕB.L`a;ı+Jy%tDiebǞӫ V,w< :AJ@jh1|vK#*΁~`_ׅj|ϓ ]K@Ag9pQ I/$u94Sbqi9"CAb?c R]d˜y*uItNK{/)7=gpfV4b`eD-] :6 Y:;At2 sGZ8f ߙ 0kr9BdmfXAn5*x\+ Bcp zbYFXQy}yf3Bqr 0'_)] ^JD5k\ցsxh:Gd \bۭ@ n1tfO〚uvϙ"~ѪDy f`W3 w|F LwZk+d}&8Xǰܲ___)Zy&EU72_βlB8SŹ1k$1 Wp1't˥ SCս@ޢwkrD0{3mWtv,F@[-)qn}'EƞFOW籵0ml%V8s >(Ty.uAd ,IyϞm{5|' >w޿ 2Psr޷/va>e; S lOY)$B;zf~8f߳_Þs?}B+ 6 p|쿜sq }~W'+eZo*~i 7^ r/r{a9c2 uԐ\</red;3wzN' g ˀ0{`蹺aLR~ai~VgeP`OFq꼶n#J.st8OoHF~d99{.2抲"bsMgN}v"wEv<>H GldOM^pkjm[8MYF}kk8ά|^T&YӤcN} `9c+J|e|ADF#23_Qa\\oę$zDߑoj0An3#!> oWr[DH%!Jt+1xSqF/3ߓo cFE{a/Jϛ^H do_sg pw2xcGԱw6)&^cu{hPo`D9 ^Xk-[+;G/5W^DF% rr\s,CC9{r΀,sٮg^N ߻Czv 1nJS[=Q4~Dtn}v>Mo} 7l.Hv=gp)0#Jt)v[VXD'xpR T^w$m'~FFBy8z2=we>FW8ܥ¶6cȼN+'U GOE oπFK "o%nENfb.a?rm|>8_1lml v"H?U2+2?7ޮ,Wr+泽ӈj(W4y!Aʍl0N5H_k,l~v}RLJʗ72mKjZ].;Sw9>Y RX=nyT]-9%x@4辥hlÛ#w!a8hf& C~sQ'*%6 g,ye wi,hgzQaU?sڮCY{dSHuP*8GsY$z"&18wA~,#:WzCj җհK [n` ()i/`KmcIĆ0|_$zb/jD(3v^,!֏ 77HPSA{bCdvɈ TP ȼ'XZ [.1[i7AyO =A$z HAuR~IENDB`docs/reference/gdk/html/default_cursor.png0000664000175000017500000000234414010071745021036 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXMHlequC/w5HF)hmZ\*ETJ7 4R[J$Ph(iLjWf=<-fZ׺sTExx7/? Wu]777w +"廆~m8""0@yyI wh1V*u]g~~ӉbI\ZZf=^)DX*TUUk]]]ui&TUebb:Ez6 a\.HNN~-u!2>>Nkk+V5wooofPUaHKKH5 ah\100@gg'鎍F \n璘ڗ@ !6appWVVNtww3<077' 1PpttEQ$55UZZZDUU 8~m?橩%C<::X4$̔cY^^^#n`~~G N666$11QPAJbwwwy-7Q.ٙlooK %tװ5_( 纚O</np8>%aMGI=t^=%OzQf^ `GIENDB`docs/reference/gdk/html/help_cursor.png0000664000175000017500000000301514010071745020336 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXOLTWtZ8J˟4)iAژ4I*BCM\6vх%. e]Pc1X@$RiB80޽] 2֙(%'/}<9ѕn˵̙3f$VU4#\M.ƍ{Җ<;!sss|BqYLfggիW˜Y^^./\ !{: ,#TJ72>>(((@(((nfggڷo߻|5kG"%%Ehccc&i=m\w^B~رN9|IJKKە̵@`H8,)_d977cܹs H)LMM! _UU&&& 1jMMM0\:-˸bM&BzarãxZ0&''nzz ݽ{wKjjj,fffn[焌)C5ׯ_v\B&''SRR777Ҳk0@ z,XxPmve l_!&(J oDP԰‘iG BlKw@1BN4Dbǎ&kwww`0D6 \y|0۷o"K! ?\D"L&:Ķm۞b+fzzʼn'jv,5y CCCׄf ؀r w)loZO'2"b9?y 2!L@$O!4L~8|,aVWWЋye=,~tOض {6@8fppy]Y5gΜ4֖e ӧO333ѣGU> t]/h^oFq@0t fggG!@uxk,rs1eSSdCCCa`YS]]Mss3ϟ?w &X]]-Z8"Ǐ'pU8q۶4MN< @H)m]\ⶕR L&*j%ɤ+++U_A{%J ,IGG`p[[[鑓 ~Xtwwt/ XLnކaBQkϞ=9rX,6nf:}׍igD"ʾťb@b@PKsI`q/rg\|Vls@׽H([[xIENDB`docs/reference/gdk/html/context_menu_cursor.png0000664000175000017500000000273014010071745022121 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATX_LSw-P耥lYئb"np9Sj`ܓ,!AaYCP$Ku={h/v*ڱMs{{"-t:LOOVUUHl p8I""n^EG)>",@ssA{ WI۶mkݻw˗ <#,֭[%33S% >隆#-kYa(eU/^lMNN^ ,%W^ږ9bNR\r]vi%===_/@{SERtuugr1/ 2Xy߯U\|Oxh[(8s ---YK.}< bOʳg~ <fߌyI?NYYYuggg-xdرcaÆ"ui3 j$&&b۹~:CCCڦM>;zdee@1(`&%99Y|O81 7~ `Da1׋HmmJnn^ XNlLb %;v0͛7W @\$m<`:tH 0N\)sNIKK)~x>>df`rr{bb4ەRao޼Y̍{7u]WՒ!˖-;wmmmm@KEDn :SN0Adrd߾}?~x߽{aHII0 D$ HvZ*>4 ]〔ywp$;wC- ?J šP^ PJ)ƍOW׺:BP zށP(t۷o`R$!hulRMM;%%%[|>tssccc{> >`xE*f~7PB_Z H$jJ395 @ERe<T%4IENDB`docs/reference/gdk/html/progress_cursor.png0000664000175000017500000000352714010071745021262 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P34IDATXoHTk?sfgqMx1M dPZv ,QAFu_A j)4R*6WnD--:0k9o_8v[ڛsfy\]]]`CCp?H<4rRDˎbǏ_D\zzzh4ÿRiٶm[ý{GyiL&&&if. Ե;uo rVǶm9p]v}WZZ*[-ZJX_[[$`2\+ /^,`P H*++%x<&"j||nooԳgwY""hƍǀ|ܘ… eɒ%'+W*yꕜݻqo߾}o | &i8N 4MeeeYMFF~x->Q]]{q҂l(YYYضiCOOO:FA]똦Ʌ 0M8uԷTrp`ea>0`CDze8w'N Xvo_@y;:J),D.b_ٳx<n76l,lۦݑ-~h^H FFF~X ߟ388l: Rb\.DceffT)'H$n `Y"0::Jee%?̙3hرB^xb FFF$W=,JwB*555e !O<)I}}ܼySLIffdggKww}֭fepAQJɽ{$M6I$TWW'a#GRJUTTX,4ѣGE)%=ADF|>.PHܹ#[[[erȪUnnn7P ݘJ)rO:::v)G\.$??_t:0 Ba D/_g`==i\z`cffpeYArssEuq\t:t+o D֭[WO=D"*//' Hd\xҥ}{4MSojjra ,  uVhnn~o߾^a7M͛7_+HnM}AAы/~eW4m~7lB|yA[$kCz,M}n&O9d!y4*99fHeb"0I9τ>2NKhL׵$+)9cSwKIENDB`docs/reference/gdk/html/wait_cursor.png0000664000175000017500000000373514010071745020363 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATX]hTgN2dL#f&I5!1PRV|5 ׇZ>XE[!Ɗ>[/՗R I/\}h|x3ddCfb4K/]8{k (> 1`x|(7A""iBD)keYz||ojηWsd2I?Y 4 㐪 Çx7oټy3;wbۄxՏ`OUUew׮]cbbq@QGǎ(ʒd2[ X+A @OirEz{{1MVx<F@UUCww7֫W>۸qW#"Wv.VYnݺ%?X,&iD"!GjN1M^/SϟkQW8w!sA._aձo>n7LE,vz(,,'O444rUUUW5),KEQu]xqGˎ_m&ׯ@ >$HiiKoooΚq PxWI}nX*P}}}ui4MH$"& ٺu*"IGT>nDtl-O777LFVVVDDdqqK )]9t@^UGkY,O @|D>j^6B n6w^ vkh[JiRG <2b{?ŁJ⊈x'[[[$K&~3o/ "ݡrTZuJ6\F1` ~zz۶n?ᖵ8sssMcbhhj4f؇NqooF@(^{:˩f|,brr2 }bh~RF@89$766nZ?ۿ_!~;& :(&&&nRj5y^(g NMMY_eY^Pe``t:}uǎdw8o\|TnT*=9Rafggɡ#<ւ/ BQGp2'L'"ρ'_f\TGm@xjImBOqWgK'ow;ؠR7brpg,|k3±K@w g F3 p`\,:] %8Yl4#h6mNQןuXV?ZGI[ \"qT p\%OORyD\ :3tL#L?QDwTSIENDB`docs/reference/gdk/html/text_cursor.png0000664000175000017500000000151414010071745020374 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3)IDATX햱kaw5H# -'i;)!C -BqqNt0C:n-^P1JMӪKp(x']{˲W4 0`m2h4moon$VeYI&XTU@u{ooﭮW ٬ 4Mpzn;;;eލjĜѨ0 zo۶2nnyxJ^tUl^R|,n 7V- ,1kR( \g _ښpr@LJR󜆖e]d2p"677EVhHir ~D"uUU{\y TUb(L&_"e>xgvςY b*Z@f6q_r (?J,IENDB`docs/reference/gdk/html/vertical_text_cursor.png0000664000175000017500000000146714010071745022274 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATX퓱KaDIIJjIXE&LCZHQL;?88EE*&%1`mMruжOrt>A@@@@@m/zRJu: & w]CJ)nhߝq/..R|)˙0=X[[[FoŢVRư״eY-;;;lmmD^5+:+=2 %@olp8-ťSeb&0놀}qEuuu%k@2|h4d^N"Rt6RʩK\euuUClBx<>deL@)Q 8*ǧt]96I.{~ p~~b0Z0au{ T*kRj|1$WVVee۶~| hn>"@h 4?I ,3IENDB`docs/reference/gdk/html/alias_cursor.png0000664000175000017500000000254714010071745020510 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3DIDATXMhTW/3of?Ih0MH"1"A.JKn,RwD B@]YEXli!bDI!bX8/S̼qjc?}{9 /8lvĶ9۶m۞d2 ˲\XX?rH0±bI5FQVn߾M0}H$rEȋ[\}Z5l6],s;&q  sN)4UVVSN<ƍ'5l'NK㈥ؾԆܡ_zM6Ms4xWPQQAqq1XEUUa099I  NP( $ 0 Ð0|>***%c">JKKdaVXE4ɓ'ڵ7ohlldttt5|+ ,ko;wp'Od۶[tl6[NWt`&mmm\tixQD5o +Ç߈b?'J677uƍ?O]u 6mRCCT>_ g8}l]f΋p8-0{zz6?4y!̙RU+"@+@{o۶mm[gϞUKKbrc+ljMP($@J&9&"x>rTp8{K@*J8H{=7.x6{u]9sFӹsNsz琸pFFF% ]rE,U fgffjjjk׮H$8~8dxE͛u]088b?OsZ7{n!W!/y`{O~.dF7IENDB`docs/reference/gdk/html/copy_cursor.png0000664000175000017500000000245514010071745020367 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsnn^tEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3 IDATXOhW?ov͘1&Ka\.bi.Cr"xۃЃPAK=饅EO-XZjR*` AR7Үۮozl5ٶ?7^gE>c/a>ða-..~z!Pe""NLLU&a݌h|֭/o.!O:$I={H>{JX]vΝ;ٳrtǜAjE (d``@_N>-lV٬?~\DD0@ucSSSё#G$"qG֢|>/tZl۶W;&I$.]zXwN`?zOW+[)al\K_Ӣ]߁ eP=w5;;ɓ'+9[i5ǣ6A1P,CkM&ZuNY%{a` RM6aY@Y1ՎT*eYoiyʶmQ|h48?+q>,a.[Һ7PR9@5 ܹ<{.IT38hRrwB,/^l(E.cxxzNXZBDj5ZzAk`YV#ׯ_BXy 6A1IoR$I]kImižJ'gffԩST*) Cp]mugh6E'~V_oQ , 4IENDB`docs/reference/gdk/html/no_drop_cursor.png0000664000175000017500000000253514010071745021054 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3:IDATXKhTWw1&m'PHf1T 5X$" +T(TkVBͮH*./C YP0dLJc`23w;u1;w~p{oV8[mY۶m^.sid2Ya%JSSSFkk+x;w ٷo_Ç;;;&yT.T*x aHb||q^/H뙝K.# Y:]r4IR׉'z+@0m(^y<2i-!`Obk.r9Od- |Ԥb(Izt$P(Hz={&|R+łХ7o6:td&P'ﵴ֭[,-׉DW3555oGLFjmm}i0 J`uuu&[(p @& <FǝN'39"|`0lzz:dX< aG\Jjy~,NKg3011ALF*++?&W .Y4:KZvO___޽7 8pd2Jԉ59x3d4WuRcμD ޹9i޽+755Q2|>_h%^T*~,N/ {nJ$R Ohڋ/PT&?>77',ڵ$BDVм^j-xggg%@ $A;v8-)xDCCþ`0Hx\F/lll/b GZmѕC)^---rB"9UX Qϫd`^\5?:!o !IENDB`docs/reference/gdk/html/not_allowed_cursor.png0000664000175000017500000000435014010071745021720 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsnn^tEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXkLT<1+Hk>((ךƔ6)QL5SVMLrkMMQZ. Sf0gPT@~idL9{  g"Inkk^嵂 īTQEӧ(;EQ^ZOp@hii[VA˗Bww7<f3V+V\5LnkkMBB_(AL l67Fn8q\UUEQ@OA .\<6|8**0OID됐(**n7#_EQ شiKbΜ9[ǂ@loob\;yxp9a?U+EK.Źs稣i >S͛wc jbÆ ĪU:֭[PRRwlG p8f͢SbHR#zYk}}>|eeeQDDfZ#fۛt: :KJJbcJAAHpLVXoo,{ܹCCCٳLFd2Qdd$EGGիsN@~MfdXd2QXXqJNN?-((v]`0^ٳgSyy9RDDEFFRLL xBill §˜kݽ{3 DӾ}s?޽{=U 򨺺F @;w.18cgddpMs:u-,ؾ}¡!ώ;Hѐ``:z(9^b?A X,d0(00m6<--EeeeDZv+z4 z ϟ>1ԇ@*GL2|ѢE488߿ vINRRRH$h4hɒ%9H5O {NCA)}JURRRƍfsXHHF$p8YWWk׮=| kX/c00Sj0^l>sb5ԹZz_@ߜF 3jɤP@O0)$OE__ N2IENDB`docs/reference/gdk/html/grab_cursor.png0000664000175000017500000000256014010071745020325 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3MIDATXkG?ZkJ.84Bk{Iȡ` 5>z!_kL8'_4 U~:זVV3=X^kI Ռw[n*|m4:p߾}̑Ѵ-T Bo#sb񏾾>'PUΟ?/4鐚O>|ee0sm!;;;= (X_89zB7vƍoϞ=/T*eY(n0?x`9I+*iZpf3@Hչl'@' \jm7nEBC[vT}!1%jߙr dC%iIENDB`docs/reference/gdk/html/grabbing_cursor.png0000664000175000017500000000230014010071745021155 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXK+W~ j+B, ֕ԕJu%)r՝tlT%VĶ4jF'Mft!`{{>\TOrMUUU1@KKp\oZE{{{B!+^KKK5###/TU= LHT(=>įۿ/taۛB 2ia{ws2 Ecc?*#S~0zۍ*="iX`0XHR~N2Z$p8JҵbIJ... eO6bp\\^^p8p477sxxXh$Yl0D$@ (DQ fCg)ijt\__tJ|$)VqL׎벝+UMMJn19Mpfff{zzZx<N瓟V:;;x<~}P._YYfhhh6U) ^ɟ===KWWWHYp-I҇_ttto߾ o(k ̯ZqWw \O_&ߕ@>+ʝ&IENDB`docs/reference/gdk/html/all_scroll_cursor.png0000664000175000017500000000336014010071745021537 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXolSUƟ2EMhU0mJ;`JA  n61F ӘFFdUʒm ۵(}P. Or{}~y} ХRH$> '(J=1х >@#"nnnF&" B=( ٝ%">x `D_X $zEQ8p633_t{gBO&; ڬg"/~;SG khFv~x߾}SksLD|BORG"LDvxx2ɨ$%%%ٳհ'Nt:ff $Ib۟x<. ǎilM7o;UxDb?޽{;Nv `j}ѣW^M6ڵvO%Od#x L&f?$h7 ֲ{{{/(766P9Nz6""niia:DħOnP;wd!yޟC܉܄`(Ng( ;;vh:R<i޼y_%-XLח޺uK?zӉl6!bi۶mp֭[iÆ ѥKNl2$1!!nB^:)//VDuuu~ʕ6UUŚ5kܷZ8sL'7BPG~ V+' Bo3.'-ZNeO:v}3`4`͛7StuuL&Cu\JN&`` #ٚU`,nڴ7nΞ=KUUU.pd2so\d2Gb|5Yf muA`0TSS(}oܲ*YtZ_>7XlMB6 XvlL&kܹMȆX(Fv߯zNEoooD_/^}ִ[V?~aO7);YXXg29f>22EӴB%+177Dѩׯ SixxMuLED$zj`_vuFFGG.^(e\E\"߿WUup,tݍ۷oxl,h$ۭiMMMGVNs,T1oرcGZiXԸ5BI244lhhjood)6Jeee,}1[,K $kcV&7MӒgB*xgZ:::^'0ꚛ@ 0-Kwww߷o_LɡClSSSN~~>%%%?~6X^$qmP 4ʢ'ϝ;K " UTT؞>}J<t^$!055il62ݫݸqӧbVM~~$IB$I撛Rϧ;&In1a_[n-99/_hzz:8::/..@:$IzȬp8Dww\KKW@L-hoo699nGii)gUs4nwzNB Օ0 9Nojjj>vSg@iUUU,r.g%5)) EQbe$hS!92==re4>vf.SUU>/rEQbG]ϟOI3 lFjkk0E_<bۉ'.B۰ؘQ(ViZDu k@˘/BH[(~4"{!<p$Ɗ֥^fHq 6222(J`pppxJ#`GG\&F*RgYUKGm%5?dfYzIENDB`docs/reference/gdk/html/row_resize_cursor.png0000664000175000017500000000260314010071745021600 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsnn^tEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3`IDATX͖]H[g9mY0cV"!*pl݊FpK/:vūy~ƛ(W ^ -!qgIV=rr~ɛ/ps$,k C*_P@|197niKĝi9,˴|9sN@TSSC<ǯ_>r9wsz#^O׮]$%rov; "Q1F߿c؉IT@k9vtTQQA1(Ree% r\޳HTPȖjRT$B<7c$"tb rf,˲S0ĭ[ nÇ뱱1tuu寵Z-ŞݼysnD(p#.V&I51"zzzچp8.\[[[3Ƹ $%FFFY]],@SS6 Ȭv!_Kլo_HRΪRu%ᬱ2E1 `.?bGHЕgAdYC y@>P_$77o\E3}P&~(HDJ$ E<Oe9V=;55e>c4*@e"(шJrs2tSZmpKdY>̡8{Us$|d"YCVhڂ( _ZZ]\ @{ bX(F&T<, % rItj~EJ$޽{%I1T[@M__g^w)---%Jݻw3l /xl6z=`Pioo/R*wy ۿ4 )&jt:o߾^T B4ir:GN_B`8v9?\9m mmm 22ڱ1io##Ȝ(@Ntv KCRIENDB`docs/reference/gdk/html/n_resize_cursor.png0000664000175000017500000000240714010071745021230 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXKcW?%ql!:,ZICV.Ee2.[EܸDBĮFO](iPM4?%{xLLR bp#ss=ʿ)zd*h4~:^ByC4-=s؋yt:4>zH4 ?@TX,r!xJix|h9_~l6l;jt]ۖbWs$rJ,KEQJޗTVVV$~*wFGGRBl[[ۃ{ ‚p\o("(Fd2xb3Du@255y7eqqQb}#tW pwM t]CPDzr_{6khmoo E.3؇nllH&gD"H$2`5 ߵGksFӘ5[ޛ HfV~$Dc̊UQf7D;[t&SIENDB`docs/reference/gdk/html/e_resize_cursor.png0000664000175000017500000000241114010071745021212 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXMHcg{c2Ut'"] A*.lB#(vntiWBZZĝ@t.qDIfD]11N7uqyrw{sO=@ sH}Qj4M3MDN^ӊ5wFi$KL<8[[[;= Á" =~ 8j""NShTv <1Z0tXVJpxx}`MYYY/q"h4ja_qJYi$Zyy+++?DݴOD  mll2UUU?E"[HK'BWJ]Z@4mtt>YJYYY?*JEDK$$>phÝ{{{"@KOOߺnmy388m' ^ VJdgg =>]ɀ."iQ!rss%C-vL EkkkR+Eh^CCC~ކ+urX\\Tw3f߿ ##һw\eF"CD\/1!VϾZzzz'FvޯE|Epx Gf_Gp8655e&#Ng;q};Ziii 3/:::>NEXY0!BsssfIIn.n[)jkkg^ oeAA'pkz/c{e )l6o566x17y( D)%ag8)/k@t>x<q."DΧ~ʀdc5b!p[/*1x>HUՠ.f3.YXSb@~ظx\c'V̘3A Oe#;lg-IENDB`docs/reference/gdk/html/s_resize_cursor.png0000664000175000017500000000227014010071745021233 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXAH#W3kbvŃK"R -`Ńk⡷Rz*V9-(j$!K#R`b'&jgf{=L"MBif&}y ץ;.ɘpC葖ESO󣣣;XLRJ`P=Qtڍb*h48iE_-p]l6e2T 0`#԰z!BFj܂z4TɕR⼷$]+nZ4.YI>)U%+I2a0|.|^GR3 H$i>O?;88{xFThii+H|CSSɅR lx<j~]!OFx~~|>)L,_lllLٶ-766a^Zufff" Qrt&5<MOO߳,UDO~c]Ƌs,'  ׆ཛ8׊}A{e巷/@\r)>ЇJ) ҄Y@hsss4Lʑ}hhx<scci8>g@4M !&ɯॠ*UP(L444|{岥iba\===a(z8;nYg{{{65\-6::R* R<+n۶)q^ċ'Ԃ\.[[[oaa|M٩ f%eX @xwpp5u7.۶m;?{*g4/ xit-x/^A"Do|O@&-5!:pkOfkaIENDB`docs/reference/gdk/html/w_resize_cursor.png0000664000175000017500000000251314010071745021237 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3(IDATXOH#w?37f b bi^LIB K=F*zaX { $m=؊U5&LLj֌k~G{y;_n%jkkk;@40cޱy #=s8񱱱'@0#LyP(d{^lII& %1ଫkraaAz@s`s?ohhD ghv zzzB,EIrL$:::RSSǀ;>==zttu]!D4 c,v7cq[d | K@H0Q/Bjܷ h\9S1; 7m-b,`W:ҋP IENDB`docs/reference/gdk/html/ne_resize_cursor.png0000664000175000017500000000261714010071745021400 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3lIDATXOLg? UV ڸŹuSZaC$8CNzXb1v s2 =4-)Y42l4ҷg޲X-¶yk?gSSg5 *(튢taSɃ-&ؕ+W,7o\/};&lÎ;a`# e|8p@X,k@ 1> xfK.ݽ&ׯmmmRJ(`㓺㚦d*ÇgXyal!@vxw]MBU… ce`k)rbb"ya59UUUip;|n!]ץaӦMOf4M Y$sΣSw^*l6OtMu&ɔ4e2>333U__='GI !VV (\? VBmmmEY&?X8sL2t !GU<^@w~), ҂׻f凜.۽,t:}}}0l.-{P(4 G]&:&%0ĿgY|Ν K$`0z(DU ؾ};CCC"FNgO<USccٱ\;ݻ]&7n[V|>H&1>0iڨn?599yܹs=uzNLooؼyF" 5@FGGoK)]鴈bX,MRb```8J^ g`l6[z|s֭=`giMKV/Z[[~xWWW(o뺾!&.^bw_96gggkllV T}Pm۶kjj x 6nG6VU,0XYvE#:KFżoEr&bā?;9$wDQ)F\O3ĸ_h7^;tIENDB`docs/reference/gdk/html/nw_resize_cursor.png0000664000175000017500000000301114010071745021407 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsBB" >tEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXH[W?/IƆVݨ)ڕV,MYamW[ZԚj1WViZlF-e(4:Z+6P*s b4X&ywXgVac_w>{=׿,)Ƴȱ^R1$Y?B B5C!ljj|a @9;Y}t:7z<}GZ<8 T^`p$4MNX]]ͣG @GDNzu-ID`3'"Qʷhkczzzf41+!!g222$IǒힺzD lll5rPzKͶ#!hb|^ @gffn0YW@FFLLL9sZ5$IB!~ܹsեO?~ >*+"$&*rQQr~ EiUIIIp(۶m+**j~܀D`9%''!V__!HhCDfFz{{†XbiݙNӚ8 ;`{ɩS$ټɓ'_) innNTTT|*lKKKH.~ҥKBQp8ooOhmm%(W\i p3kjj W(f{)fO|xtuuۊ`bjjꨮ볆aH]_s@9` B~Ehrr򋮮wRj~~;Q ضLD"úGZul:\v3 LTj  *@* ^ohbbbn !R‚qq(Ţak===V{df2t,//z*uuup8n?X۷n{ ɼfpiߺRyvB)iyښ K. *N:hii.l9{9ȈFO>lwLi#͛7|3::uUUU%p S$>kRʢ"fjyys{w={p:Vkt.%ZA!Ry$0; 7eq)F'ZA> AGGB}/RYYu- \rH) ˥.\sK555a$WA-###DEIW&O:rqK $v@x<ֶJr @i` xo%s ОJIENDB`docs/reference/gdk/html/se_resize_cursor.png0000664000175000017500000000247214010071745021404 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXMHcWsIZUt*K[ K-"JA7JJRn"HCB t.-D̦PVQ'?5$79ؑNԔ.=9]> e)OkKVR~Cahz+<[+(r"5Jɒ$I%ey&ax|  uPFQ! }l`~x<RMMMt:y<O>A>Y9jpT*@DD>uf9PWWwD~h4^$Itvv ;;;ʉ x&bJl63õ(>mR^x~xxrMpӳ2c.ffffٔ ~ @u:ݗgf`@ ^XXͶV}.E]؍́܉p"jvzzzm\}~ZhnniW!|>; oL&lmm ["3l82tj>P $08 ˘#=2tןa,ΝIENDB`docs/reference/gdk/html/ew_resize_cursor.png0000664000175000017500000000270714010071745021411 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATX]hSg'I&ڤ`NsSu(TGjSAhŀLbލ])l`))27ވ_AإR/*ӭK䜴9.AL?sq>}ִ[V?~aO7);YXXg29f>22EӴB%+177Dѩׯ SixxMuLED$zj`_vuFFGG.^(e\E\"߿WUup,tݍ۷oxl,h$ۭiMMMGVNs,T1oرcGZiXԸ5BI244lhhjood)6Jeee,}1[,K $kcV&7MӒgB*xgZ:::^'0ꚛ@ 0-Kwww߷o_LɡClSSSN~~>%%%?~6X^$qmP 4ʢ'ϝ;K " UTT؞>}J<t^$!055il62ݫݸqӧbVM~~$IB$I撛Rϧ;&In1a_[n-99/_hzz:8::/..@:$IzȬp8Dww\KKW@L-hoo699nGii)gUs4nwzNB Օ0 9Nojjj>vSg@iUUU,r.g%5)) EQbe$hS!92==re4>vf.SUU>/rEQbG]ϟOI3 lFjkk0E_<bۉ'.B۰ؘQ(ViZDu k@˘/BH[(~4"{!<p$Ɗ֥^fHq 6222(J`pppxJ#`GG\&F*RgYUKGm%5?dfYzIENDB`docs/reference/gdk/html/ns_resize_cursor.png0000664000175000017500000000260314010071745021411 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsnn^tEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3`IDATX͖]H[g9mY0cV"!*pl݊FpK/:vūy~ƛ(W ^ -!qgIV=rr~ɛ/ps$,k C*_P@|197niKĝi9,˴|9sN@TSSC<ǯ_>r9wsz#^O׮]$%rov; "Q1F߿c؉IT@k9vtTQQA1(Ree% r\޳HTPȖjRT$B<7c$"tb rf,˲S0ĭ[ nÇ뱱1tuu寵Z-ŞݼysnD(p#.V&I51"zzzچp8.\[[[3Ƹ $%FFFY]],@SS6 Ȭv!_Kլo_HRΪRu%ᬱ2E1 `.?bGHЕgAdYC y@>P_$77o\E3}P&~(HDJ$ E<Oe9V=;55e>c4*@e"(шJrs2tSZmpKdY>̡8{Us$|d"YCVhڂ( _ZZ]\ @{ bX(F&T<, % rItj~EJ$޽{%I1T[@M__g^w)---%Jݻw3l /xl6z=`Pioo/R*wy ۿ4 )&jt:o߾^T B4ir:GN_B`8v9?\9m mmm 22ڱ1io##Ȝ(@Ntv KCRIENDB`docs/reference/gdk/html/nesw_resize_cursor.png0000664000175000017500000000234014010071745021743 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXOLcUƿ'[%6TESi4X$,(H}i̐vH].XUM: ц, C$h$lHM6%mi)}^0q×ջ}{ι\V52t?!C)UQJZ/Id2=\亻}VlllRZu$D"'~ 7Y"n|>/\.eGG(־.M%eM:<X]]@pʲLǫ|_ @Uè\19N3B8Z eY~ _BU p)mmm]t:NR'!A3ׅBLMM\V7rREч1&&+At:eP%j:$I"d2$_x!N!2-1ooog~\^^i__W{{{avqqA~B˲,Zbj!$)x X,X,c^D%Fa>Rl"Y~ ^9Fѿjjj:'v}u{{{B.?t{{{f\.cu(O_ZokkU(9```l~nբi3̩ *JE 8{yssӉ={m3(? %%r]ɤn@xX<?hĪ%^GA600&ʝ('I=Iy>rZQ(a+ RA9@Z B }8NC3bEw[?loW>IENDB`docs/reference/gdk/html/nwse_resize_cursor.png0000664000175000017500000000230714010071745021746 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3IDATXMH#g3F]i4"5-JI{#=A 񢈷@S.{P˲֞HॗPUcFbktԴH|d=?y1,І,=V0 7F雪BUWWcE6|F.\]P;;;l6iI0 'XQĻ%ikkk&AHuc~~[SKpݤ(y>} k>ULjX:9ڦdɗO K)!zdO.5. ՗ KV5ϙ$I?pddrqqTUUoUxHE|9>dYf$Ž^i""I Jd]]]yvvnwDOOɲDQ\w(1f6! eP"`$].ףgT@(LaQ$͟ Gct:s IUUfMLLD"KE^ =)4~prr577@ 躞` ?LRD566- "􅅅sss1?x䕕@ngbQ___a%l.u/r0KnԔ1Ɩ+@1Uty {|=NEak p?y~P~}}TbP(T5::Umm`tӦM{)-q ;wnp|>6o޼3gP0=}tw~%I2LsUPPSЃqtJKK\3H(77$IbO%Ir%755񑑑 3@v;vrY^yf#4>% ;w>!"Z`bQ[[o୉$@hNv9'pB""jjjZ`0*$IPYY EQ +ےuɯE UVVݻ`0ȋw-q3<看P^^`0%N?JE]|cp솆9s~1  'ɀZ4 RvDjTWWa0 F#KjuT %Iz}EZo~kͯ7g'6 @EM[ד@͞=;it\Ezau8^f $vm&9ɓ$yyyB__ !}\v :cYg `M\i|chUeV(**Bnn>yk5 IݻwE"H5!@vvv*(ڵkԩS)5ݻw===LRZd q9zkbb!D1-ZDHRb7np@J 0.[wHm޼9߿(q_Vݻ79۶m/> &gf9d֭D,˽Dٱ6˲(-[$畖R0v`-bd|PѣGC?f!l̙tҥh81ƘBDMMMѢ7Q]]ˠ S,,++yvYyyN322jjj***&,AzbmH -* vtt< 4mڴ fggf6_7 *V{f}zÁ@ZX,d2(//hÆ tE Hkk!Aޜcǎ}t:݊$Ȳ=z_gV^mOԩS)AB#˄gddL)..֛f(x|QY XnݺE ǎ;CCCL4"btĮ& 3̵Z?y󦪺ZP(/j?7˶0H#|JArkz>D^u:޾}sL*N$"b!J3cc+@ |%%%d^L%QB#uww+W\pΕ7^~o&ƿ*O8|@HH0 1U^ vXRe9I2IENDB`docs/reference/gdk/html/zoom_out_cursor.png0000664000175000017500000000417214010071745021266 0ustar mclasenmclasenPNG  IHDR szzsBIT|d pHYsttfxtEXtSoftwarewww.inkscape.org<tEXtAuthorJakub Steiner/5tEXtDescriptionInverted variant of the DMZ cursor theme.hu[<3tEXtSourcehttp://jimmac.musichall.cz/themes.php?skin=7P3WIDATXWmLT~30CqeTTJĴ1 b5U5UP[k`pFRw1E TMHcZ>Cgޙs[\7铜s*jS&tkZ:uqy0QzYkdYf7oV @tM[F1f^RRB oٲEa>D0,SYYbcwtt8._ӧOz̙?]zo]]]/8n<ծ84::sN$Z[[ .N 񰾾W{Ur|;ֲ:t@UV/^@ 0ZWW`6狤2ݙH Ŝ Dt:f&PFF|>688طB\555*>222zL @֭[7׮]q?6<ϫ£G>$"Zf lbQKK|c6&sh"@EEEDDP4 8611DQ$tQ e˖YZ 2C(9r$IӧOh8?]r3'?DťKȳg `WhDQ`xxX0\&ь ddbqCCCF4e@`0^Wh4 fhllL  vm0FbM! x/_v:N,6[Ze/_TԺDDvZ""e`I@Q#*77?F$(h,|r䊢Hp8|} Ȳ%Q@ ?~)o%"`yIDhÆ 9Dtx_nNݻw iӦMìR 'Nq"%M{H"_?vj~bW4y@`Öy^fXT'p8dY!J"ʚ4*eY l޽]~~>` m@ gz{{^xFlɒ%tƍH(1ƘBD " wɓ'> wA\y ~?888r؊+qBT^^NT\\4h&9D#,DCɀ& F Ğ)VZ߿_ڶm( DQtOL&qDot0X`1<91u1Kj^۷os^Ov#>dřL.D%nүſ}xgCCC^L[Rnݺ59WZ[[v} @ =X{J^h%I N"BD%!zXC6WSQfIENDB`docs/reference/gdk/html/popup-anchors.png0000664000175000017500000004215214010071745020614 0ustar mclasenmclasenPNG  IHDR[1sBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org< IDATxy|L$M"!AV],j_jYJ-j.ZK˷._Rt4t-m!b"hLIܹ=s?sVdu""""bߔPH(QB)""""RDDDD D J)%""""R J(EDDD@lْ:h`0\^f4;瑽<EO""""rSB)""""RDDDD D J)%""""R J(EDDD@4˿uҡCg[ "rGQB)"*"CͶAa0ppp)ʲ_MWJ(EDD(#"0)'Y#""""w%""""R J(EDDD@PH(͒-:ɓJ)Y2xw~z~+`6bulb_bĒ+>bKvwSyɟ-RB)"˚ʅh>%re pмfrkbz_-fd{Cb=y#g-Iobcǵ,ؽv-],L kkF٫93rl2ң?=lT,V.:ȿҵX#ֳznw)/_qv . $ }&N`K]ˆr04v'噇s~xJrOS:RS{1詯:~/.ƻJ 'Gj;S~KKdQ |Ʌ{۰ZɲZɺ_h4p ;x#]Zio f,;ǃ*˜d(#n֮,hƑT9|f"O+O`:W#9i:f ލ+@ku$F}sєΩ|ɬ]!!x2O9v&-  ~ lkCdg|?Y' =a.Obtbn9n,O)|"L`#>>L&Kb(8~~SO]W&yTA< S֛YW&=#5W/FYdZȺd̎Ϛ2~&`h5W'ey_Lx[p*[ǹ[ 4oa(Z{egIXHM;v]>_8їxb{xumR wd&5pּ5wpms=!n9k_U0Y׬tߠWkV\o;IŘ!!q矘up,OpHpጡj|)Z덑 CN wd=χ_ڣxrM*k&T5L'n9bGqu+س*èVM|f1W^D|~]޴oё٭ kxXx`+"avj<-oB+V DI/69;T1JT/F|3P64Plvw=r#,ܷКnU1˵$^Yy{ #d/Ȱrb#t9#gx*kB$ۋ{e1?qֵ Wa6U?^ф2Wy&1߱g=P"7SY7 9j%QޠRDjݙ 9SW}}JňKVv1XJʜ4&ZjȬÊpոV8$ڀT9LFȴ?)퀺O7ug/NRW?ר.o_I1@&CNRDJ6o'8w뎙i 5L^t舫B熯45JňcZ;~Xfb0qqԳ(H7z.VDǠ: +$dݮjPQk*YIJIH eDղh] oXnͅJh\Sƞqg Jr[OgtE{J)ٌ&Z4-+1uP/NJ0R>кJ(*poT G8v WgOe&YZ>ԪȒ5ixOBpT>swJ!|LÕ/6 ӿc9b/9k}\3ϐd&S4|4OV%jqݖ̉|H]."t؍nxsd@e⯱|)8i 3X5^J)^m7:JW,!e^@r4*Hb7L~kI4-L1k>˫_dOEBZe>)~3:tuw7]'>~s?v.t9AK:ш`摽hw#{y^Uk ʆ$?ɤ%%ѨB|DPB)""nٳ ~%YV+q"=qka2ٶ !K:DIO_>"-=/䣎4OTC]..n g`P ;<>~s!~]D]"b^z ^' fX2H%%x:W a`P\MUFsZ fq8NnPs~[ Rb),jq Ӣb( !bb)fǢΝqܰ_/F|>\5pmװȥiSB)"oҮx {|"A8k]?ѣ,RH96^/\uRDrw ۤ2ڈhd2wF I L0y?\G77?OO {e-W'{ix{(wse=*1E/"rxU=Gÿe먤̼;Ɉjȹ *_ҥ&Mi=jִur۠EDH].'ѿF , ˖-eذ'y3o[GFVQZ5L_{dPHr;c߯$-+ ۷8:2gO*{y RXr%իWA ,Ã=w&:u@&w kSB)""6a0hK}ooMl&lC J)%""""R J(EDDzPa]'k&1Q4D'h=\u(vE H#KyJմ1wx8֡%"""9FPLx}-'o{'X?k4=[GEO3uM2\d w2.]^7/-(m;l/ɭڱs;ezsҥ,W(Q#/0*yʶiCa‡Ma{o2^>pFZ8-3pzveX8s3IڴR|&iJ+ x=gkQ"v~[O1z lLxxS??V{X(ujg` 3mg-`=ǎ0hCmw}+PbbWyIfy_NOt+;'w#"2;~HSNU6UZsTڃG.'5eȢFYXEk|h?1 cҊ3Q/dL]<|q6hҾ2Ox*|/.}+vs;~X1n%"""y0zF6>_!+ԥç$N|Pkљjf23{Rh9t'kb>n\hS9.""'CػW7PX/'gX`ٲ6ɟkڱ?WqDt4cWKxK]HqwBqFzꕫ'((^zy" Nr,%Z5zԬIYXkgHdɮ]D>ժEU=..^z<88Š玧r,%ݺ5a.]%+ odRDDhBԹZ5:Wd[ӘI(z)՟bWkؚx iB~`ˊ5(ʴ1k7=pIM$E;~~|p=w=Pʶ㘵ǟaDV܍6S2x85eL]7]8u 0Y1=cpi'27}2Ǝf S Ne_ 4BDM~'O#"7eD+% 񼦪X'05L`s3MJOD01a.Weg , B3a ejWRzmΖ:3d|l4u}8=V3[FČ/wbAR9w3w[JNi9OYM޵tw, fB]*9|Jtw 9 ,v8::b0E`L+ˮ^~s/7];e` eL^g1w<<0z FNa\,v|o|ұ֪ʖ trz;i #©I2צMU<)TGDxh0 ~?O\/&eB>Kr9\FRꈈ;'<;1cHZt;Y̞zZ:Ϭ8W!ZQ%w!) wXL]!׌9O,y,fe&֬`9|.;L˹مRF<»WvEHp^nPRD y]=!)OeSO3ӟͺ<Č;-znG8S QoQN]yrgPBfZ5w5khڴia#rJXR㒻}beKyH5mmPIH(QB)""""RDDDD D J)%""""R J(EDDD@PH8:۳paL!<Ӵ/)ٔP]r' ď[ء5qn~;Zw)EnJ]""rK;.yeі[ѥ0^ђr&LsFEFָ'~T+pZMv qiٓi 2O~hz",2=fd2l"M }O*|ǟ-ya«ngsfs|F.<@ݾ.'6pNzx~JOZTM>l s{RJJ(EDНwg$bZusn2aR37$",GTN;uG_םƻy[*;t?=Lg`lƄ7ch弇ezd#CY,}_&tؖH~ l<aOY3FI@ywl{^=7f`˾`F^ of$C+Yu̇vW g -7ҭ܍ɹi2ʴ1k7=pIM$E;~~|p]rR5uN>%aw:廆⦞oNzwNx/l'  Jb>L2o!"׋lY㒩o:OusH^!oYlw4gy}+yN4iTH :ܯ*6IS:kL̩2cN3+ n6hT(R #""R V5YMvgoU[S<оqvLM;1ذAUbJ(EDS Rټ;hc ^u;w3ko?UK'0r2(Euq'J)FH?߃Kx+kgK=o^DZGfP]!;ϺIĴ3d^YÀ[foIDX-{0')Vaw8wf&m߯;wTv8zZϼ؞ oJyV']>YY5w-fimĩjw<7sru.Sac"BCݖtbd)9TGDL`+>ߓKݿ^=ui(Ä`MO# F7|-IY% 'FBq>pt{gX;<7w` a|V%gR/fSݸX(i-5jKdd$߿M6ѫWŽJ+ihT7guDĖ f@}xļ2W2<\;>ÄQ5fLyѓ(\t!r$v[+Xb&ꅙ sq9WZ,&Ə>H!8:U;_|,#?w/ێ>"66}]YvAbcciРAw#%ru>rW*Ǜ:"R28RaS qi.>׭Nu}>L Y8UBeUK%tvS>8J!9`:a/lc728WrSW9{rхF7!yt"1"E+AAAݛECrr26l &&1O@] U]͍sP\igw-e[WO=Ե+9vP/r)ŎO͑Q:v6Vaזd-^]]+V*kk=sij6Kr0f2lX35)$,Vl$:FWNF<C )c􉮈[I':,%W3?eչ@hB(Ƽ nt]u싗STXRWI|̙8p=:'j :uwnyy.tuCH]-IʃPw2R @9c{b«_7e70'- >ېSƍ_U9^ÞH񲒉'e.d[ 9 O(~m8C03=mަ,W73Uz<@yorZ^lp#b,Sc2rA:o>u*dݢ8.m?/JJR+Y(tGp46fPJ[=Žtg?/9z6oZ}G9O)\Z+QגԷ@vy݈=&,Snջ1vj7^wWx{x-z1up;x=DtN{TC&MͰ#R\n>[qlٲŋۼd 5Wo_N9vܙF눈ؗ|ߔsӻwo/^۱[pm9tۖrW1_죎w ƍիWiZի6m*V3֔rWWcbb"r?N(7_pp?,z%h-*YhT7cuDDDjּk֬iӦ-+bIK>>^9BFF˖-'cT"y'44ٌѨK%%""""Y=DDDHJJu"rPHkDtas-""""RDDDD D J)%""""R J(EDDd?Ic[RDD([1MiϜT:b̑}$}ǟ?~BP\fOg15lMWC0E.o +!ύ$,SQD1fa sIұbĵCZ~ Kp9",{7igGΦcLiBGY+H),2mPf)K}r\Rv3Fg0{h=۷gҷH-kzqw̉:iiMNhc!&rg17*WZӒXd1R1,vq8=[#wc\§RDDT"19w2&h3e cZXuKx#٭WnmZ̨/߳<ƌߧ7sOg^ޑh87JO;0NOݰcnчVA.\٪3g7Mً3Z?: uJڑ_..~|p2,Ol7Ύi'6LuD$L!TtH#;^Kap YwlFOJ;#(}``j\[-:y@]e3vij`.SgxO5Ie3vl^u;w3ko?UK'0r2(EuqXHPt[vש/3u[~|pO'iMC_a|ף'ΆtRN&q$-+kbqlX?3Z, wp |oe0иahDPAٔpϰ4rkf&Ķz?-g&_ݱ7sxlޘ-rRVV0z5$QגԷd1_5HHrlr7"&~gC 2r>IMۿ!oϪ5R/ͧUzC Kȭ0zE‡Ps >\:εFk#^qݘ<-&S x 4=SxX :6F*{-fr "*jKݯ&X ΔיjA iP pyOK ٲGd N_-vp9ʷh͚54mڴ) |=W6PgL9}zGzgճӬ?i/xY;°'>ܿ^>]8͐[tJ/dLUc×WOOpoyF~v;Jޱť:r|Y,222Xl)O>9 GJIt41nz'\¬ڱ'd=>>Pf3F>xˎ[(HM f {Os}TaԐl<#sOTׅʗY8VK%OI؝N耼ɼޱW[%?Ϳ>=`t!(*QQ];f,VH^}dYoԅQO;;HFkKX\vzX-[xJ"-޴=sij6Kr0f2lX35)$}[˲y8_)Wc塅1DW-$h+w X9SV dP& }@}y,>7,*W=$;O/KP) G_ڍfC\< ݞ5"FC8p K^ziհ'e.d[ 9 O(~m8C03=w:zW}I*=ּ79r-S31|zS pŷ~º_udݢ8.m?E-U+MKdx;+?XS}:+'GùٿWz"؁AvZpݰcnчVA.\9U33nۛg#9;~u)#> {7zg4+iG~ỸUɔ< zO3+1TCi9kC\pQu#"">?.`ɘ'1{Fw?4%bvwo0pBKO&~yADЎtn1q 9րm+R42JĹ[a;;u9~K_ :]ȭS-vuz/{S *y|ݫqr:`'KwETb,'8>8ߤoo4\3*nUKINgwug<\bmcMu֩؎;YľmB VC``8* 3f­\$yd ;Xna.Ցۡ:Rv|:M(M!TtHy |Z/%05 d1 + IiwV/LEp62yGr_daoYԣ 0{|/3=|`M;EY0W.b+#NuhQ }<֦O;/.ǿ_ݚ`Ma'3XEZ78WNq h O_,֊bKd[ϖ`3oi nxy{MYw3+e/aXz\ܻkcY.T[Ac Ju֩ pӇɤR^o51eb6={׀t <%ʊO`u"AnB4oԙoV-\ܗc+̉@=)Lt}{ZSlX4c!IIDhoʚg*" V6K9å]$/C5_4nGءe-ZԼ<%Jx6%3;vӝWb:Ց"J;W^yv^xA*V'h0Ҵccʥf.oVq3OʄumLhB.`~Sp;' Kw'L`?,ㅟr+N|1'5 2T #lg]ޓ3V|Cy\<-m?s"59m+GjRjoD08R#IDATlcYUH0ԢQwqa;Rcje.F{j^LA=J'oᥗ\=PJ[!m2;4EHLd2f9Cxy2ϾT4ݳp5UǫnW:3)V]{C+=3PzԨ޵x${qQ#vFCG([rGpv+[iߴOz 伪?LoLSm퍨bFq"g(専 :ƸN;t wwK;ܣFdoDY onT0 QyGŶA@E~ #NF)E6hxxXJEj}}]˚QVK8x9VK Kyt]WCCCc[Ҿ0lrG'zcs5??fFRTlEA@c8c\\fIh3i +ؼn+II: 8BRQ^ &kmmMA:5zK'ӊfn7#`s%II yjS2M y %|a8+KE4ƨ^Zp_xkX! `!"$BB!@X! `!DMz]9Imn08A ;S:! `!ĩznZ%r&,8֩t߷YDZFaò;6f1dM,^bk4>kI8v1x'?yrb? ! `!ĩO&䣻}>.TOaIv+}yv->#GĘ#[zomcAyG\7e.lB a=MZHsA !NŸ;eY8W`3ZʂM CC>cGN_A{җӝ|H $ `!Dჹ|??=Mm&;DOJ"Vv#'|LzY_ԆRpݑhYGQO !x`f[*WՈ!̝C۷râXq~ʕ_sYn{O(0`ДI r~Ò:FXQJ0sӂHqH{ü˗1D3 adBPBS`mY8.z4 ;HMM tq --$f3*u6_oS! `!"$BB!@X! `!"$BB!@X! `!"$BB!@X! `!".K3Y2^p-[3 ѰӮP&^r M t h$NlysY?_=}㰕d7g ֟k3eȿЩh#Kijls.hV$ah12u~"ásɤ>\uy8 5cv!.Z4+B I7[2($j`DBN2@ys Att=fݵɶJK)CcUs4MC'!DM^\4>KXsaN;"0WEs Z>6쇶IR0CG%о9I4RBNb뵼p>BO^ɖO_畍td WyU/t%ۨ)t61c[ x6|mz] `!ԀES&UUm6|[m `!si\FP(>'i) q6/N'K'r(J5>WCO `!si8ip:l$Y8NO["{rUlM9+kV幮UB2 5`!րe֑Vlc#p {LXEw2wѷ(I ϛ'VȺu&껷ҫ\ްٯNfpaţ{_=`+2B4 QR6Eu%{"]w"Lf&@sK޼yEz߱^M@)JI8Fƙ~~jް1E/o>cFت\A"p\8*Txik^iޛC&4A}̿A~LaɌ^P8:O"%?΍Styb;?1yD8N6̓Nt6~>ΩhM`0^Pߔm\iӦ:뺎СC̘1JU3ɪ7Kp,m bgrgi3Zʂd[wa?Ä HJJl67pmr=`!:{JT_&FkܝGy3{s3(";b\z 2>9JK&\}h|'%Դ*V-JYY%%%75{_׼S-KBWpKy؇mQVLؖА>IJ%~RMEd习97Od){ύC;=+^s5Acʹ0|(be h$UjV>:GJ,DuUȜ \ƿps}Sp$ƶTQQ0y|1QY "e<oZ-+~H",ZEo***s zΝ :J%ĩ_ݻ7>M!&h!ξ}{8t FX~oh4Vܼӫ;9P-B!}ː!j=~LBfL̉\nPEU~9nBB4+.ҒFb !hv4M ݬ'k ~H X! `!N+yjU{|y4A !hvMMTi]bMZjB!DH ! ,٩|j󚓏XX!DS=uH !!,FwoT DAexJ?wDG$p0$!D Z7=A_#vքlЧ < >?RjVCvTRsȑπ%ۮ}H+1{n91G"ۙ0, "y~v >Jwpրirߏ ,7GD>z WݷwUBP7|ɩ9a)B/ xl_#r9t%o͏pRR1ޚJSNPfT./n |BYG#QSW#'2:Lj rhvW~ 炋RQC ߽Ɨnl=.N޿a20ejtAXBSRQ>Rz3>ZϽ;\ occ}7j8v|}h">RAw-eA;b ZmvkG}VV++gՉ,䇌2}&<+IT5Zʗ!<3烖BԃZ2wQh:shgȎ4Bwy~-O咉t2m:$cIIյo+>>J m1T(cs7CeTMAR<"δ6BP_ʣ>tnRtb!\.hm*"#US+7Od){ύC;=+^s5Acʹ0|(b+FN&_sԡN:_?ms'vowө[ !cms N"55_Jd[^PʵaߑBT"VY)mW=t#sR0s^}-==HmbGeԋcu)*+A޸g"UeoS*vol4JΉ99$fi\7{_#GBh`zh!$[5SU{`E=KUTTT|Mp8ܹC6P8ӽ{wf34k:w((*Z3M9twVݷ!,4>[<*)j3XX!DS{ 'O괪4_B `+xO thp 3 ;KXF*&&&Eݻwhra0xN\( s>khR\9Oqy$YСLJJJjT\4%B[_ ٌld2c2<7͕MU|lBQH !hvRRҿPwe|IBB!@h@nvGlO+"c7qnjk|Y"onoz3rNJ&Ru@|EXTRR\|Mp:6PPxu}N%dnnK2t'dz29f!Y/! ಲRJKKp]Mry/#X晦U{ojK рN(s7 DuK3e`-[3 ѰӮL} l;1 $ƆaRy[8_?lCV{vts6#{jy m~,C>Ӿg ;1HRA 멨' 0LM.Ou=6({'^^S-\1pymZ4s/͚ ݖ~wh% \yU}199'l<DߩFE\uwyN/5Kj׃-r&A &fEpؗ{b-sӫ6+BZ1SQP,V#㯃u\װŋOzڲ i?j"p$5`ui{(8j{kp7i!hx"*v*[3 3žC8 ~H8C|I/eľ6PDa\5ʠ咙NJ7@QEPv (ZӋӬuD0nzO`*c "|͙bo+=ؒ3),pgC1Idd$C(;˟GQLmՆkҪAwn]F@jB Rn+/eץ1>0O_5nJ 4ec1.Ko9V5NݷkjKJ'3/]J_s.YT&ݶi g灏8җnXEDz8km`ԡ(q$u8:P+G[54'P GJOGaH;ؔq) 5Kt#$s!Ӽ#ܺBTs:Tf:]8?/ FdB?Ώ? 'pq7.;oDSBIcM53.I?ssHhFCe+VNk{VH4V׉?%QgnQ%=ѳfa[~6BpnuZ-)S&*;p+BԂ+DDgqcTƍk ^nݺb40$w z^ؿs2@>޽7&L d 3w$E@JII!ɍGPшh`*U^}醊M'rÇ%&!ZX''o 8_>VƧjE-R8!sf2y7>oo'DSuCj*z)}o~}檫Y~4/v)L@U0Еz{;vc+DZy{⟘j^tDZF#oMRّq$)|0[q6ZjB4Sҳ.D#( g0Oo&欘 _ņo-[iE,`o.gKe ;$h\e<^}Tq5~Mt@. ~-| w3OhdӜi\M6D5&hņu ~f́. MwPYaڱrJV&ڇmΚ[Gzmo깘co>L~-,ѺRM *S'25p%7 U 0%bMqL{Q6/5 Rn20_#}=c6_"4nh,&zZޡ9yLhӖ7/Qk}bx&=e`1iDWt4,(^ĪpfO8Tߍ@L^:t?+o]9WĄU/g;2+Y6  &̛l}W1*X{y\l^g`oʟ#W,^>nx=\y25S=~c,_eJh~U14b/y!]ǭ+5;4)v&XfF|n\wՠzʧمЋ3xZڭi56K6g3 |l>>1_4|WCikOteҝ ;7tpR<¹Cbv;ێΈÐoIFSWNwn'J_鮶P]em-dE`= ucWCymx+X4nhlrʧxkc~Q?::*&1[GmO6r1mZ,)*MH`3%ڀk'X8+ӟ۷=~òS*u8b?z~eԹ8jXsEO/r6^ ^>xIEY_ .6_OL"6 P;_K V!,}ԫG2U[beH[˥35׼Mx(|HUG*9 熣_/ sG3{n>2h:~w)1b )n S#kdbݻxaBϾB#;Yr /:/P>Zx2u[;~7!#/ǖb7.C/mUb}O|_ﲻjTehM|JtL]_/y!.m-:: vU_l|t} :ZcIib䌁,|<Wm0{#utLAK܄`nŠdZ 冲sƔ"7[~*iϬNM?[UGA[zSˠZų.\]j| {ISщe)' ضa}zԯ  JK^%,e*D,'2w]d|S!2DRg>k _x>7Q.>'DIa i{ӖY~NsA@\ 6&eRc5/DSDZ@!돘e>Fn1 LI0a42àA9~;C Mq\^6fj8\Qk_͔i$sЋsDff)|> #=W^aV~E/{d"{}rֵ傇@S2NFщ13=RN+e,y{ h{"IyC$C$#3x| '~c7 n:]-qT<>r0gQ>,\ʶwN԰~ JSt|!^{5+/ =(h{`qiwMl(ر 7&zͧm'tkͧ{-74U{Lu5Cv2Jk~\an77v98Xx!Ob`셉=|%W$r֡:HAm?ȯ%B!ΘXuݷ,vΦ,+jB!1E.G3ޕ˅oKHcP3İ0Ma8pK΍6[Ţ+ C]!4e-.fK/quj*?MĿj\ԣ;3>R_M 8N'QyYD t~֮eZ4HJ.s+-o}FN=rƴ@iN/;;;EN*j`Pxl@U:+y|>{6LǏWL..wEOh-ݭɾ~k!j#mG7qoM\BÐUXHBx8lVc^ӿQ_ cڵ.hÆ tjEEa8irkQQ,|BBs8z 3D܏?6ڝh#KUO=B]UQEZ|nLtҽ;l̢'sυ<όX7mbj~[!: lz\SQOS򩃘Z*} ePmߎt?%o+DP?j(  B128n.c[o͌NLwf2ei?5hl4J ZnmA{ЭV~9Gjϖ,\:v,gNEhoE-+O>VOɌR:0C: k_o%DV LU`cj[=\A@hX +A&,D 9=XeO%77M8f3AAv 4ر\:iZǕ{RNX,-hNsԂ+̪_$h@ 9 ZQףGup\aٰXgl6ZjU {Vp;j}`fH\uN8AfA:w`e?[cw[DZhn&ց1p8/td}&0.|röI,8r, r())!""UU)))Aul6}xkn=Jxx86 yFP9P->*aé'V>ZeGWǝ& w0Us/͚sgR!Gj:NRkfTUk׮"< 89U^c2Db5apU|VՊ1k;VPw;s 7[*윃:QحAbƆWUҒ*ܚ[mu6:>`kY9N\:ЕÆew0m  bԛX6'|wh}4v&b[N*K~@h53ҺWl&;;lq\ xX4,Kŕk4Mf FX嗉3`Z+[,t;o}nuȑC(zu%!.m)I雔Hb(vىYJǨp~;PS[͂fƠ*MSɛf}M6۩Cޗ2ZV x'7Ϲۻ3;PsHA ??5yoؘq"7[n#l2&rEx#Z66<6ioݾ,s/vhZrTNDQ3hKq9ݱWnrZvLPT躧;[[G8n"lV!!5‚1L fsE faٰ=ENQP$< ߧhȩ[0\n ˍdd0tiTM1T.n Sy\UF!4/,u;3gz_U]BȒ7wX8-@0?$Al=e)ر]a߷[W+)nŸ;3 ;rSYa?׊>K%0P}$%;ס. f2 [N"¬ilS8L j&2K픔_h0`Pk`[n6RRf. Bu6FSmmϫg¸0ͳc zqFpyx2W}e<ܭ0΢)`_zٸ϶rAj:itU'C ,o]OQԊp8D,Jȴj1M8^X:4?"|MufN7AX,JͲJu V*bvAjVJFj:>mـɤVLtIB'k Qvi5?OC~!qw q}tR$WnBV0`5z^'Z;r"2 s.ĝ$'s~(gEҰAXYϩ޾[Ӊb`c4(qd1nTZQW@1P(#`yFѠb0̘LVKA1QQ rkXF\8iٵ F\ JnڮéaP*+伺ie0`JL7CGdt=)Zv#'|LzY_ԆRpi_CCրt3;pj h0r;0x~{eUPPq\-a io;e1&+&U=UU1m* jjŏ+@Q:M8\vF ۂ?XՂSB!$u\ǕoF axVn0e7飈5(Z Ac2A[YZHWԢ;0_ Lk ݩUɬZ1@Ct]jVe{}-fƳS6(襔 ٭ ``(*v=sWYG;_*L-8%9cWAŴ Ro\3fܲ؉7)͘]2rZ2! Ÿ5=4?Zw/FsP3UW jK:7[AQOwP_﩮yZ"E?ڵk6lFӒmQXO!"$BB!@X! `!"$BB!@X! `!"$BB!@X! `!"$BhQK3Y2^p-[3 ѰӮP&^r ꀭq^Y!D3bX;eYz$|9VIgoO|^_BM@!Dh!\KfYz,>SB*ϝ0.w԰U,c-'}Jx!Lf>sa֔]9lX(\î vX4&-'Jgn :`mןƶ/B!D#2{x#X\U}C~h5~W\`Q_"w!?HfY⒋ۏC<8.x6riG!DmZD $[(։ Α'pE$*Ԑ$مfh!hZD":`odPxIKXsaN;"0WEs Z>6쇶IR0CG%о9I!D]ZD $ϻ+^ W_.8řlu^٘MKp}{W}K^a@ _ⱍ}oBg3C;=+^s5Acʹ0|(bIB4 -$A MogYܵ6,yp1WI^j.!y53<_Dx&,^[V:;1f`P 2qt.w?u8 D͉}?:^&FU`g;#_Τw/ 8ݢ0*#T7]U%oBѢNELtޤYϺXEٗ$:9Dݜ&[L\c ƺ Ky: ch N,<|. 5wuL2@͔mY^d,\LO6ӽODL1KKiXz&-hq/_ϗJzLF1u^dI11F"K8'nklTZb4e_}}0Dž Yb]t;_*q*x旪$-g~ɫǒrܸUbr"` J,\]P&x!7ז85D5\CٞTcQDdGHnEiiy:ʭYn?\+äͅ+\<ݍU\\vkq}Ehnq+iF:XW^Cw~Kt >І7f=2ϗέ0ǒh~S}|v]68~l$r?("&O> xo75#/+]$m[|lWL1˷,n{~Rf1`0Xǥ9{J &p۸M?|[dl 337׸WhTDZ%EDBт~CwYbPsQ49yꔓ.jwg8\0Wc1l'E֙ac= 5)j+LUH7{X|Ondt:{>~5&Z\^,HX] 9ԋܹq5'Xox63Stwjfw.&2^;Y +ENr;)n:'{,zY&//;>Y;EgחڲI"^F$"ۜuSυfǢȎ0q_Nh0^/po9s0h>GO C2_ ?N|׿´$]P 2hnf_c4_<p3 Ĭ-"Ad{?dqq'_(Ei{w]*`"*B1,C(""WAKX)EU-XV XBE("Bs*EiϬ].xâgւN&߽SV,E%-XV$T"* IBE("BbQDZ3vGn"*T˳).ߥ6届EiJO}R$'GicMF. 3{}j2U'yT7(';%` pn2zNC"ox$aQ62c~_w|6F klZؤ\''ӕ X{R 5X56WX!OA{*uĢ^h*࠾΍/.1[90 m ڝf\dy%Όdq:L's ߰\LCYYJŒh'Q(cY~mͪKY^j!`:jg ?pnX$`oJrifWk=|S̟x`,ܽ.}5cq/񷘽)sxc2cU]m37~v9 &~اvZA=).mT۸ōK m;T00X/)uĉb8o4ư^9O.n !Kzy[wYM,7?ED±+xH{jDh>JU.˶I;˜֩}kMpr l4kl}T7I1_" "nzyoFNmL=;}Nf L\zIH<<dGT*D@UpcQDd[(nETKTqIu\,Йv٨%b\qUo>Mc7"IN8Ēq4t﹪9𱎃KNi>upݭ3c`#0{"";Q[[ݮ1լ_lgN}~Ȍq笱ўu6G0X}ƭolb8=Ǟ ;>ǢȶPHTԲZ,ģ),k0y8ׂvMnu<$`D8Rqkv ֚}t|A/m TՕ!b*Pz!S n"9.HEcKY{yY71{3ƀ9x >EA4r615uoCɦ]ʛ cm_8x$};;mKK4AXh,FtwXc u Cc6(t[ XuoNx ^rmq5'FS,scГb[xٝ5X=6kg"Y[*dlI&cK]wⵥI"X|Z#!w*( 1Q7qR1p "D#S+QGIF_Xa˵$;l!C*b:[l7Is͏EpT3I ,-1sz4cX/}=_}{ߞezIe%怍٩"tw},#q5ƸIr}}76(lmR nx2 %˓=DHGTG;k`n#}&#Nakbe'L2o+Ģ 8ȆSSSO!d'T}å*x\\ 6ﱸZ'giwkX 2Ļr2Í+.$H"ZÔt.o;,nDœndE дabtOWP(UO["Md\=$jT*}woXP :É&i%io@{1n%=kXp o,XVO Py1|{"CDG@9@;qyɲ5A[F(駟ڊ^:Pt$-$ WAmmmt::Hrwa2TU cߡvwׁ.5(ֆfkx;pw8=?N:T[kF!5GDffusmwK;c<=D#{Hx2]CDq݉B(ݥ &R﨩`ex 74 UUϫ!U= D xa@ 6!w]ZoM݃|o.ӻo'G ka BY|y'sOwag[v>@!lvv CM_>l|}|kj"s25M2_{󕾏CDH[[[PQN4" "]线2|JOP : K{MA"j m(?q 5?7W|G{}+"=ÐG~hq5pD!Ը'=|oǸoǽډ_ hÇi~9ڦ ?Mgx8l;ܥDO+ps XFR3OzTKht0q([40?mn^AɌ m.M= ]oo{"A>rp8m  `g B0d:Ag A = Dw,d2E AA!"D@AA"B$hV>=_/3*q{CktA hrzdh h0h!zv~>pw}y}˔w%(bbşW`w" \D@I |>SADk摔,[Ѭ{Xf%Ne0X'uGMerÍhh4)& &ʷWM%?F@2˹_d^U<3::Q8#rqV 㘑ڶ#4DZLjp!^Ö#-,m -[kfaQT7AQħ"n\ [_gmuu}(rtv*+$geye`@AGY oOֳY#=ޏ/h6ɩݜ ~BL|W&xn*巯}Ķؽs3k\.msZh7ٌwj[*tC:Vk$kf oxOywO3/4yFMaʂqa%Q@)dЏIE ( rƞ={o˞!rY2aIc==-ygy;'S`* D " BDB " BD !" D " %d-,a#" D " BD ![FWiQh"IV#%OX"tLm5ؼ>8W}- FDdв+(Qm3!bD@o.g4|?0NL5+/,gǸe zv׶夵 P.E7xJ:Obg=׬T6%Ko\ƵkXm?) 0eqT!6 ltcT!(1ZgٸVg {R2o{߽{eVRF٪'xZ |O);}IoWX~YIks׍tLcIyS5i9-{X~̲KRQ\=ֱ`O8>2fcհkr|Fwv.-{a4pxe/&WJMgNg-4IL|#_ WPh}J @i}a7p_z ނ/^l |E$HO`5\_Z<9",h]F a+ނkw~@sMz½ (^84Ez! ?O<Ձ=˅'5OX=6Ť?q>/K! }g-,yz;M9]_YV2k,xT>'nNrFyC;kV,&-_G0q'VV@<-ׂ5. ݎ}Ѭ,%vMeCu O/ .&؟3t5Mpqb ʷsd4aIpؔN[[,轝N+یSq9EAg1zh||K~΃ yw{_O/ 3{QF-;{R$B' :v+X}Ɀ)cɸpMYHyf6lX?}Y I;-]͊՛9pf,qcͻ8}|Onc$_4#`;DCˏp˝K@?Q[[#sRBSSN{ H0 lim:{L 5c=[#766RUUz{ww_>D(=q-ϴ7L#dQUɄdjj-kp\gmk($FMQ.c?_s_<3;\@J_?1~xLmv6c7ot zoih(Anm.]l*Fg-ӯ| n?JrO77aSz~}))ks ^eueL8ѯvNX83R";w/f\qb'5UVZ9A._^_2V9{,f,C|Z|M " }y7e~W4'5u<7.⫿Na0(HNb5S_:_;YAAj %WA;I7 RDZILLt] ܻ~Pд@a]A%:Vd@DqOWo:O< hM׃#" D Dw,0鮶ᯆr.4H!!"Ыtm ޜE=%.= " BD ""o ٫#ED $E!)" %Vy6-fC 6v{Lp7LFK'\bɟ8ۗ%mcU>Sl2?ZJ0A^wniwәHЬ,%vMeCu O;8ln`6F<0#1Z 5ױw-u?߸3jnPHD8h31;X2?c8OjDF\WoE]ߔ⑟LJyw\$GzvY+kKlKF1޸k'&*xҮw?<Ϯ:5;5ֱf^N4K%|Q!(uv:G}p[8>j6LߜJY\w\cu4˯3xL/~v:mTƖ4IzF٪'xrymnvR+s>We~cCn;IzU,κm^ӮcQ[`#j&Az#E:ѣ.b9$zGV4ұس9{"NGB&_z#7{Ӫ)ĎIi'غJbTr Yj]-7ͲK),naOJ貨vkv,`Ra\9|\Wk-IgXf>7&҂ xuo行 &OjމrdC ؔnfÆ<7Iu;,4լX'hƂH;N@1ۼӗ'6MbE1CT94μwܹj+2:'?_q̼PR`-_˩?RCTf⃿/&ODQn6VptTp{ؾm ᄎMpĊBP<53tͳke!:DC ?" =)&Njs\x.%*J]IU!n|7l [p9M}(rt먬<{`2~z˾7gxLT=Tz@14FLdK,߰óG31ND:;܃ ְ]+#Ə&7MI`b-Hc kWo }uT5:;?GqT6cvM`T~ְE 1P2w2iߺFulkKO`TvCƼb[׳Dke$`r5qd3貰/HB&QU.v89NoW? H, \S`FUܻ6:[ɛɽr}S`r/D1SxC<?|g3cSpdMiuiһ,sH--vgSl;k%e$A7 DCM~^:޼_-램-.ӗ\.طo8qb0,$f ZTUEQ^@{|cEQPUq8pJn[#cw%X3gꈉ ގ_~94C B s-54)" Hw !  B/"~A^σJ$"." HhN)B>.pED龉*-߼;]9Kc9}tMm3%_KZXC=f;ワ;CV@RSSm€b&!!!f ZjkkmЋ(7l&<-<}x]üsx]O+PX!MX dftd +`MW}5W{@Azła: IDATˉ{ Yo;]yc8{ώ@A n>h MX BDBNMXgBv^q8XX_r6N8qâgLQ9'a.}5YY؟._{}N@(__{|y߫g9ֈ%l'~BoQxp^sѝϽ_p. ݎ $y( >u~tDQSv\]ghNZgiVIӇpvkjKKrˡ{Rw:;\ʹYws&k 3zцVD-N@9!y OAnwr`ގ|i@{e8xA*~q(]k|{Hm/[Q:DJxt:ZQUx(焩Ct:WzNdҹ vDk]W8qo$]ϵ.i"hk{w-"L >L;Ms^E[?\1 [t׾ʴiӹ xǸ14Rj\6&9xV?OZKjMܹHpه`BkC ^zWb4m*ӧMaR~ (2Ӧ2}lzC,=7Asptג%##~c=ԩSym֠C$?=o殻ۿh;L;!-WTj2@nt9IQѫlsuϞj$&6XbLzHl<֤CQM7-縯 r\ҳn_ &336N=ؽ0gyI] 9;[xW>Gѓ4j YfƮJNNTf_YHQ gN`dSntt/:䘛9c;OPSw5'(۳Xr3:1t?lvCijjb޽,YrK.ѣQp#QB/'#xֿ̳k4@%``nBzrl?^{/(&2#8&rs^.%}Rž_Pi6ģ?UcY:səI816f,ٻsd.P`b$cpgTRS!gbHpd9Vun_İЛVy%3J",X`l߾}Akk+֭c̙r-<$% )E qJ`Yddĉ}nC`46>㢻),$fS4l'?g~YE%I3ydH@X?y {aѢEvm6<ȿc2y #MX Ƚ G.!8 ޳nt_%MCwCd„ \~]\Z[[ill~DqV^ .҄_Ч2S 9ȑ,'(Lz^#ug:b0D0'"?8k׮p,'== /0D@ \4iH((xRI)_rss׾hiiAqiaHb0T455aK""QbKu }A\\?0t:^}h4apALL O{^(t1î&N<ўG\y jwUu)S&sE1mT?1gE@Ǽy c =ٳijj&..6 8NGDC& LII 6md6g!A!_mƀDD{\6ڼ8EHs(pMl_㛢͜9[pCqxOGaug5@s`[Nk5+_ol= ϨwVNgslGh]z.[43pC!"_U]'|y z>~k~yGS ib!cpg%wl+ ۮ G`oȀ{WOjȺ7XzW^?\~}3\Í&&oO~560%ΫQ7>H7qivtiЀj%!!! 4D@#1G%Q u*_ѳM"~Yx%c5aK5?b"gl6Fpo4+RC"S t_ g ( :t)SDۜs }v界,^]h/ͧyn{36Ipt:Js?\&L #д I>~YSJUB@&{yuOx{ǩh8gyƜ٘1C\=P,w [زg aϸy&N}:kGYdsėdb[ɾF.㕂N|hp(1vt& Wrt3*iksb6% F7J0zMéi8:TU aJ{>9nWY|i&I1kr4TPVLN3(iI﹛mb:%[TUEAO:*>?D˙^NUJQ{beǛ?ֺLee`PUs2Y>{iVLR?8Vpz*DU#jkq 5k`m3Nd_ˣ!ӾnqKQGQZPDVǁCF^D3NO_O[IUPP42g3:EcKy-m99iT U_P^cgLNe5ӳdJX.3XUEUUEkjh(LY}9zz%ޒE1@4rϧ~ݎG8' cKm?[_ލȹjfgDUTTs62/S.F\? 3&ŒSJKIDF哘0; +m\?mc/tGxxu R=2RT́b"6Ŝ˔q޿R<,6FAtq#M;0/ è`*$׵mGtd]4())㽃Y+a\n"fڰ66&x@lG9~6Id}:JVSu R'ǍVz9" Bߣwq"iOcd:XZc5@%sXE{P@現s^8̘~Ư 3Ĥ38EI`cϖåQ̝hxH}wy sQ dNb>ثFⳊ7Gadq6ן&o\F@1e2n20"&J OcJ)=T]̱d.qTl>Ķ=~9g:9C$39L=X$p2J :u̐n߾)SEC~+FQ6 wC)/yrŠdC)OآExd޼yȆR?W@AC8VGt=WsN]>dO> {WU|-JC 4bK>w?;t*1?0-em|K\M^] 7<ouiS}Rox" BL81& ZvrcḾCl ]nC439ad21vNey#x#MX%VMz-h1`aȲrJnh1`aH}vl6ӦJ ""_fҥ ҉.lܸ1ڦ h"駟';;;ڦ hD@!J,]=Т_|/ڦ xD@ARWb…E۔0dطo?O>$ڦ "o4+iq{]Duj?}d@D6) Xֈ/n1'OEC0 qֳ{{{;ƞ·^̳zH񼫸 S[ 6?NUk >ED8rVK cڷę>kSW_YΪq(hxe9m;Ik]%nbt zvY+kKlKF1޸k'&ٱ^~SV`L˼oㆩ=e0z(GA[DY %| ~jJ cbY6-BރԤw^eǟmߴQ |%asc!jR/}?>Վ(|?ЯqY8 csiRb1>v5qL` &`ı$ꇼϏ=ZWKM?f%@a_OJX0\ic()vVG~} IDATQd/e+3l *C a&S4%^OUB2Q8#rqVvBdZp,A@D9dU, _kb XJrIPW|5j[3t95EA: &п13f"[>z5ecaHk{HKۛ5QReQЧ"G ;ɳG`mn~ɓ'PUUPUEQPXU=着CU@AQt:ݹ8tJ(Jw@abPt>Nў1Qp\}7˟p|e(Lla3..׍4%DB{uv<.n@1SxC<?|g3cSpddl 0 PLLYt'SRA]"WfGҩ((g1Y=% AcM%um2A`8GRhߐEO  D Y +-}W>q. L$ͨp-NTUŒ1%iG +.} icg2=cټ(g*ӌ٩*hUM$9l$R-<5;G9ЊZ7œMz\m:Nm®)(sB:i ^͍4qӛ0Y, 5\;48m0P6L'!Vvj'|6Ջл8]qċf03#6}xsXpaj~6|qˬt9?y{ sbNFOZL/b¹ ,0o|"* zKl7NmfsQcb (hɮcRG0.^L%FQpD1Xt8h9SJ FlTꩮmDML'#΀rRuCxxLzpZimnFènN=" ie1,ǁ}S^C۬vfHƈyd*G8v+yEENҡ*ÊL'I}+%Y):N5R4ΝjI 1)=;<҈y,&&vNcfL93<m'U5b9U5 ęI-Nz4'*fQVUphjqK".]SpZ;\ .vA0ppvF>شʺFT3fh8&a6@\6$uNh7^`hihcu6ԓEp\gitHJS %[J,<ΈIv'zTSI9uG\Ę5نCjI:9ZG%"€Q)++Xt -^A(1 N,hKcNltl wo2lg`$1k81-M4ZU[ƥ|c|2qTh=^ #ԒO YiӁ-S]Q`5+/:%.qU d+)7a]2:-]W&P,y-ИETA$dGA& @`p=>=.WW9xQ gK#KҡC 2ڃXICG<@WaСCnj塇5Gx;[ibVKbҔ:nQ=b D }gyNW3QruЉ5wt_X:vF,MAke_hWe,F?_E,%KzqA#P>tP) ~+Up|e??zp)u棜u 5yYUAw{&ʣ4/|xTo"w2p/y{k{mV%C>ص|ʓ ?:OvQ`mlʍ xzR~K [KbZx7 mO,KZދG9v VW15ʂP\z-wbT|9|T )+lQ%QH8c mukYUi'=C+"ur|uFF5J(In|([͂GT`1LSh䶠R'w 3u+颒B 0//z8+wHo!w<$s>*,?.IX.\sfu;9yv˂sҘވ CS$SeT8'ݜpM"hfnG!dak'JT@VrsN :hhDg/e(`$z1ѓ<`F!~1wۊEZgRVq?uo@ϪYJj$LƟ8^_{Àhؾ[:fv{͡d9faՊ(W8ٽ{Fp!odĠ{܁b s% D zm<1_l9Iܓb҇o: 6yWiàlva`!@Nѫk"J*G6U/g,rsǹSڻ:СCYIteS<R4$! sQeYċzqdZJ0  _(֩;c8S/VRG :6duֳe͞4hO^e4 H P;enڅ7i/,5o}=o/ӛsTd[>VFqFGF28m 1͓=|pfҐe3Thd |{8|j7$ j].Q0[8{v/ K~L4H_lk1ۋW(\ ht! 8+PoJp̋ƍ^$)6U€0OCv,q2&Gfc+ 'H}C ;'}C;~C` 5o%:t蘄(͗…fBx|M% R:tBi|$Բ5̳N :tБ ab'];,,:t1#CmSO9kZSx/S̪MCo:СNpz:Dri&ZwO+mB':t|t! ɷck5~-6{L݈C.|?Vʍ>D Dw 6j<+C$Í5zV ;'^|%Tm 92?; ]5ihJ4*8ow]]C݊==83C]{_3fVk˗b]&I^X@uȀD Y(D\Cz_|#M}ZL݊]|陝TdYwga'Ϸat_XQWBo!v}{WD%Ԛ#[\g ]㎆>ų<'xǨu[:zZrg}oN=̟lt:;N#4,X}Dz6;4My|qfX(}߿xޠ+Lgs}3QVȟS_xο ^}XJr履+7P+qO>C>:~Dd-H+GhE鱚v13$6z]U1$7PA'w4j8GiJ)u/ᘿ'~'6O~~{|R6G9y DǩkֳX\LGi~^Pij\z|~Vn{y#H;|#"ǀ)U Fq,Ĕq7177 Vd:,ۆtѐn#|?~k$"Wa"7O|N@oQpκq\K4^~|gv,q>y[9p*jemoEZ\Cv>Vp{wV*-cAm- Kױfkt_z6r=2/^ĩfR„ L^!)- 4lsmhj s7[p%w<J6<_ySGؿ/?+o^J >,# c; ܿcj@x*?;{D(`Htf;>ӈU,Wj)0#N?}۹ޝln,3M㥟?,+]W#e#U<͓=8>I2W卸;[p9@CӲls%R[tknGwRoumC>[Y@_+_͸ O,Wo=N_Ÿ~b! o-Y٣)ʴ ;oA 6URzVΛ2Jݦ tL.ˠPheӍ_Lhx]KJ1GG3rjZ{˨/tJY xw?ʗ.9BWnA)ġO!N :`hDg/e(`$z1ѓ<`F!~ΤʭP~|U:Y$4>gE^z%; )\S}k{t| $$B$!D#DѤk+ǚ5벊ww@>\m nFHl1AN믿zCNVBMuz -HW#2wo} _X:>"v5nޡ!܁h:uI*_f D:d ф Ǥ-PW}m_-uСN0QX3]4 DwTG#W񃹰U;>Ǝ%E\;w^7Aպ'xrKi̙`MKx[r|@RW-dŒ*⪟i& ]ed{_WFR' 畷/`Z0YTr5k~_Rr `\./*3Y"a*aњXH+.--v$" ]9ιNAIb Qo?z<#Fx~nP>|T(j$*LMrY!7gM PKHQgD r1ZKc;y.‡^Ϗ0m51vtOMo|3MkfwNbL_c~+1 ?F `2 TCؖ?ɣ;*1KBs3r7-G9IhwgDB b%ۈr8. ~F=ad[1yxр4:$j/d9eC;Y,˘M70hf;C8& Ǝ/~7mg'?I|+9ŷZpӗӗG?9 tƜzov$5%7[luވylT5»me8{Yf͚,qb̀jS"=sk@.sJQɈAU4 ^M!?2H&0I D5 ijl;RaIA )_@ D BIg}p8<ɡI{}{i?3g΍{޴ӟ2:tLĉhn?)O_&}⏏g&d۠# IDATﴅp^ L)'I)(E{k4]q-$O=Ѐ%9Ic@ %SG8x Ԯ`B,r޳GzkKg7TԨePaJ$N𨫪$H'$d)$ v BY{ Y?G9=`zxd Hn(B"!j<=յLF\TyyՔ'O# µ:ga$v;-gxQnl2G9YFV'I 9L͂(!p\=\Qo?b:J4KH<;K>v>|WΩTFWB@NCb 4SB Q ]S9$hA2OˀCL (53k#]~33x=m^XcS!?;ob5UFU5*AQ3zH<,@XkX+'nV\҈@$s>8Ċ#HaBlM-j1I%]g*(~A}Ģq1WJ̉3Uݺd7=bn'? !$d9*IW#^h/]W/ro [AŽK Nv>LϼXi*tjdBj.:Fcݾꤠytd4^h5y+czm6MH#;YWYUlɘ3W&$];H\Iw +<}8llBP^ڮq;t.Υe' !q6*Ij;%3$Wt^BOYRN˂ύ7şyj "[mātM|7& 8ߊA 0Ӈ_φ $~0R1#DSN s +c\p罬,yT~=pAV({CKs]} U@T7yKyytC1QXeBnөb⧒ x;([yNx^E%!!B`9ulU00z}n|af%kғnRKbQF/pcB4jJp,M[YJ^oq[<7 $T"#7oŇTEF&H⥔67`"fMt0&a(cr+艎D.g^2@- )8Gg FC7$]eK.8m s\@}K ypG|L4Yb,&q SQHNN$?&! )v.D?C [ݲ]֦R Scg㏂aÐdD XV1'1| PIoy؇7{<Za%ٰUrmr)2$2궏j? {K2Mn;!&G&9'L@Iɘ @jP2I\B#:JJzwbyj1!ѫ9/7/gǢÄ{Mqmt36fň>ALG&:f"e9MɅCt.tLrǠEF NL@SMI8 U\cox҇i;ө&̘$7u׈!&g`aU*A@x2;,[YMƪ}Dkl6346k ]=?đJV_*ه,g^sP6XXk9 ʆl:Gjf~cF!baFDDa'T6*WB Y [hӍSDtj,!;(+TǗGCB{NJ -Fa?c*/ᢪ@o5܅n&4#UU.3(t24~817REƑ-i˹wfxBQ"Z.q݃q'K>'Ξy" RhRD:]FKR9.-H%UX25JM*㬚G5:.WVNӌ"4~5jsJr .J y Sj7oBX"br$Iz7ȅl5^^O:&:HLRy2IL(Lq~RNʆHK \\Ց"t]:i$LdjHA#:xȔf&c6pS6`*Df5b.|Hf&K!ɝoj.l$}x3dXMzyBlB'I ڈu2 餑>{9#tqgKDpFP_#cm)WW&L'F 2I-szzH?Su7SV*qsmfUnJ{{MGrL: (tš>?.l*2IҦ 3Yڙ})#QEqm#0$kwGp WR6nCC3.ۜ":#O.N~P_ylVh kkUf. i?spp7\,}/+a;2VRWb۔)UR3 j aC95%fiI]=ݵL[=ΓMZC 2.VTc7&ʜ8ζIkᖗ~.x`u4ˁ4s1e%@HF(ʷm\+ɱcD^Q1EyrF8oxɃ:E3wj[t=7i&x'q7m'?#S+8VLJ&yvB?M9SL=Tӹs,!D.;9H(d;Јx|hFCt,xSRōp˄d'F1$ǞGyIŬ{+d4>L $!I6S_bm$~%H/}$ӵl8cQeSNXq=@v]BWŐW-}qacyN' (b@Aѯ YX>[SYA=-_Du)Ho~KxwQo X寰HC9DuAwT;ڤ1Eڸ@)!D9O8Z/I9>ۙ^>8`LX>6;4?mvsJ7C(B)Z8On*M^=؂'"Ew" 1J/gb,^7qs۸FFX8re5-w!>-'0yCE4.>7EbB6,D TB^/aŊS0ѨF[2 $YۑpqфA.+c 7 $o򆑊@~{0+$ ڰ_}o(!L_A ##M/pK_v$5HCu voLT- Gس痸U/~b'o|i5kT@k]D]hW"LI} TO뗟f+P%MxSݐ?\$!RZ$ؗ}O)@5f}^3 4zcgX :-f+[%B}9xp/U51m<"?~ogZ[8}alΞYJOvaYx/+FqB57flV58>g),weUƵ1|9# _aeK # H"lV_5.s\UvxwN7q_Ŏu3BB8tbOضPW,o:ТmK1Up> 'IQ?$cu*l?\xڱTVkrj j%Haq6.(!-:bW .Uj5=[lE֦I0^Kh1Ʉ"Ii#=;ȥHu.pre,OSnreʹ0@Z0kغǎӽxm[1-4K\ }6Ҩ0AjxCبn,Bz)B V"u3Rcղ.P׽N./(wCOT<@ *6 !qV\^JHaۓaXx=:0.-Jy4%V69-xZNp5%3FU JT 0N jTB`XB1Z+X;Gbzval ##'D_D &(*7Ee0{„}J+] ơ yWM\fPIl0|6#nV%>F|ATa@@8UT@UPiP0NR_a?Av:?!Z$@X0['')y~$Y@T0Hd)H4BՒ1UdUoS:t"Hq!Q#&I(ʼoo(ãel| a"A"ZB.lcH^ERI.<ĦM ԮSu Ob#;!yE DSriӎ$wYFS1@OTdEx4gx3 rrm$;IBkB%J )XʦC?-b  #&@ĞPױeC v%L=O&Ld*6Pv@gl,2p⻑ dcSIU_/5p fډwےE֦^z YPKflin.!)Y*ш&+I6J=N" dnBf ӣؼl?/i(KdHabi[֔*yɵ"s|RyiUm׆Sh"m<kZZ_&(^"%OqURaOŵhR@4֙ ĤK+>dXcH0 BL0^'쬠@9Psq!F)i{Φv3*yRjBDe`<`2{O@  &%5j8[M=keSFɠ ""TOnTcu#`8 Kp)͌G`SօHE8f{Fꊭ܊{T2ρ!QExGR#r b32%&Ljgݗh¤.mA|:Vؠ`Ǐe 068q $Y/$L%1OcH6ElivK$)9@D*a4jMTl Z'uXajDDmul]W/[,/70z{ p  ):]VkZKC1J "S̕]ǥc1*W|hZUykj| 8e3ND 7h,JZQLqu)}VJN .̢,v"?9(ZpQZZ/g,#;%fn &)u2"[pd .l 5# Ӌ6tcBGAgj5_XSIkn GQBјl{`XITA#e?͓=;6=8Xϱu9>L`/lx0S1(XK= 7g]TS8OG#UT,oDNl[O['sGjw6iʛ's$mZgω_CfJV<̂y.z ab˧xvFU+(_"l,A•<-ӇyIfQToOMPe;ݜ/X+t_#JL ۂ@ײjӼ Ld@Q*yKؾ>ɋߢů[) r-g9 B4R<l@lmI1SаR+K|jpyUXqDتXz .')Fl1[1KG8^vy8'$,;GH^ф͒iuaA4 `Ѻ DDDؙgٗhYDfK daraQ__/fZ4 K٪3SϧS9oUGˬ;jpo޳LJfxn"w1]6$?Ƿ@R-비߽Ј"K-J&$ wF{HrXR"L4]x:H>Ε@9ϦgLM]Јx1{$F3|YxsYXSśnc>KFc?[Myir%>H)}XY5ʩcv{5nC6tL#q61յt-wc昑+TJ$TU;N6A. {a"MVм8rk5\Q0{{&1UT+Lמ3 dB 4oŠjkaPI}u枢F" R N5oSU*8SLl7S77Q/3g+;= ڎTNu YcQ#t827c\gxN#y-~߁[~d%i%#|wLNs~}3ק|)AHb|u1YXLZ e.6͸ig*Y*_4]5ň.;Yxok.p囮nDԑ@\, L7qπLr! 2i1Xradb[a6ꉛE}fBYX*hrXk:f,ʥ< K>G> U,ٴ5Mwsu*nCS#!߹y\,%A>x:>bn o\lCh/dɫTPl.M{9rAol•UQMw|ˍtej}b~ZAFc~nJk0_mP@8>'H?ō.<-t#y+ټ|(|+/qw㍀X)]ʺ8+ ]띌@T̚*k|K݌[ 5"Osσ?lE,\FcED8ӣlܺgd,ް: u̓Uˆt u% D܏YJ/^Ȳyv$T ؊j-L@L'P[# jK,c+õ0=aQGy$n_&bqlF P }CͤdIF  M$` oǚGϚ7tS^t.bu.6UW wu:hClSt#wcԣ,w |OX+XI-MSt߸:B9,'\`-@k'ܳ !"6' i{R*OI N.0#=}xog)0׏^Va*bGe^X/r ;H32\{ 0FH\v5qq}qw{+(Q"f800 2ՅCBT=]oof ~,{ĭOXx?3~Wo&:If.WHn _}uOSZ>se3WnLiAD {We֋co% CcJ+}7ʘt{v_}YEaeQԥ/vp9S~ \ &n*R׼j8$OWP\,CWu>𛉷=!2]دn+fh<=tݬQGJtJGA4iuA&xNB ~9AǣDLxo#HH; f?,Rl=<|VTɿf772ESCSAx?Hs *23&kpx!1sGS=O(ךΝ[@g)_Xr yKS8|CFzRaX\C:f%s P][/vx%Rw6LE Atwc8 }S}\'{'|F ׏{'M25u5)cWQ_J^OKB`wخvK)k߰B6rlXӳd1JO1zɧqww_i,x'P=+4R'} }Ge*O1LY&٤Ro`^ZAOKKײ{tP:laBB)%6]AS眢[Y 3F̓$s RvT#UhetW&~'ˊB'/gzEճXPƈCJR(cDLϼ;˫|L5_kn Rm{7bB'5Y RF ;!l@U;آL a?ǒ0 1P=n{n# t4d F?G|Ox<\4djS sO7Xfk,Vs|S|V9hupАoA^BbWf6w{e1@e&/1W> b;l߃r<"TLX)݀v@aO:.LLgi#@JfF/}t -@Ŵ/V,?[_W/ƹDZ-Ϩ GwQ+i!#4$Q"0HPPi:Մ{VR ^xOoˤd_{iP0G/ZIGоdH650{˗rK]V#GD4#졀p\.Ow)|6֙j"Οؽȗaܣ`"F1Q%&W3DiTnvʞGj=ܓ~TpNXRv4Z0jc|tk7볯y WEo{W4V;G,uT%t9@K.MT Ȅ"Z= 8][/M'!mIWis;MgP29Ju3UH:TzOY²~3^<Ǭ4dHiӖY.,Q25$‰6CM0012e2%;yK}:KHo*-bC倖B &87; )l\ǃB}SD%Ib$Ox^)RZs˝_K\[a-k+dRK7i7Ԝz=4Wݫz&42"}v+RL[&ZNKd{vzDAinm0Ұ0Eݡm/ؼazP<9Xq,(K#mX9R=O]1 烎 '>Gw|hO $ 4f9/wzo 5Rۄ`d 㾫A' Gpwiyk3MEӍ" NK/8Q7&2YKCGxxU(⤸qIag)gY$n1'h`zM NC(5(G?0LOJ zޤ9{]&  q{Dz|\-߉?T=eXb[(wzt44l|K`̒ό&neBt&=qܸ's 6t5_ꪻol3s%p ?v_gh7ۏ.=_{oCGԭpj=~wtnlU[m烟`> 5߹1_.)~>bPG\G̥%"'Z>l@!g^SgMOŠ4k7,o1kF:~fgL$8cֳ;ό5(Cۡ°,,38zzUgz9]2Q>d7xy.]0QJh"@^)1aIPU>c }Q5h7E!\*kXxkӓr\Ot\yH0|yMACXCXz&9 wU> &0 Ҩۨ3̫7} +N0~N$~oѥ8xٵ>2lzb>OnV:{|ek'z0_` V,DS?wi<ޠaҤt7X&ҹ />_-xD{XT.B˲pɃwP5;<wW PKk[wG< #U|ͻ>|cCsTO]C]>8>% 8arX%7zK!- ri8Ol6,.ilS9hJ /Α <QJUdf ^Y۪v1xlݿN"We;xo\ҵC(uȢupgB%XLqǍZLxQ3+|-#/ F=>G kj".?oq3Sײ#Zc-޿V 4J e'~Ko~قn `!Ecn~v>:Gt4U2D p8~=gxJ>ŭxg%pEjE]D49Vԍ|(s9L]`_CFx.ZNjhnOyFiy++y Ryn,gbģ4fVq1 U?|5fp.mK.qh)ڕKLG۹s=P(=`\e*)L/2kB&jyb8zġ}Pa{mq&vuݺ /6$^I>~Lߧ={؍}Zz*CZ&F }@J ƈ62(R.Z(Kv>V}; Z6AīElsoxa~!DiZ+^qT BEf-#_~ԻKH_y<d8Rz4RA{U>ߡ`93 tPU^(LCGXut6E$ZC U۠޸eռ=E;(Aѕx(p:Ba\ 1VՋ [tqFhB4}CW}ߒD,qN˄%5 ұ= f7f́LgkDC0([?M~c^)4Br!y=ۻB) iϩ?[ppMe;~AwXA>yy.SwY[}ݛ<]1IDAT  p'XeoQӗ}aVE]K4M!LCP BW" LkaV]*O5yxMФD $' RQXRPPG Gj@* O!HI#G:`T⌘c(COɽ<qh2KNH,@< LXa?z  CqK1" 1͵W~5$2v0iKb7#MON(r54e+WIivJik6pf;B#=̵=?xC0zMX,CR)̕ח'lI # RDW%zۮrS6%BtM [ #cK0s햇9:Jʟ>3XB́ #bX0ݎ;hY.t[]<8L:~G&8]t] <H|燓E8IqY85鮇='i"B>m# 5Ldτ%#^[+{|#;*BǏp),MO7: uҖ=be&>.UOxAf!! q5$ipy9˧_qK^dB:\!gxڮG&kbjAL͏הB 9ӻ;|[T 1ZUz#Z\Oy&HhK45fRJ2^Bʑl쐞bHVn oILLџ^`a39rҳt$rIfZ$ge)<<繜 ےL!NhzUR^g`-Y$҃M -})ij+TDczjųttRU!Rv#REDhp(4ͦcw %W+8ee~#\ۑ`28{#\$T̄$)v?gW;vp(4SCҦ+پfy;m>~/|h(̤'_F,?,Iʻc^@ν\I+멾x:Xawi`Ez$Jj6Yiካ 1KJٶHBG=OdK6)m0Q(ʧ.[8-Ԡ¢#aq&,ƚqR i$o:$j߱31Nq 8 QΏKć躎R& P'4ƙǧиs FŸ*i"/ㄍ+PS;S 0</yσ$ggi×YG9s1nMefr%K2 HƘ`ro#8R UaX*8a$Œ8$q%Tמ/p~v3{^řx$#~>Јj-$ /E( ¢a|?pܹOCO=7wD]IbGϳ8;ZGSƽVzK^2R3 B7Ʃ(m h<7.M:W&BZoݙ@-eh7  Ɉ<]h}r)@1ᴱ~ƒ)s ן,[P̓OLqبG >v"8SJpNFN{>FP!=*B5;8VN0BԷa= 餦bkJGIA%r=v7XɠPQVFr3<7yHGJ@nG_jdJy HK)χZqS]$D6ԘB%K0Yw22^OE:7 xBk!Vt-QxZtx΁'xa4iNǑ2!"3:k{5:nCiFu/ )22[d.2^=ߍ.77i֛8-H X*(n// #*R)GVkw[XZ##Y Lh=7dY9b" l#v?[QO0>fg0tAHS*ll| 9tmA*B9Mj-]W\:]$R'دVLp;x phy4ץB2M`_%2>i |}5Ԛ`J[ CЬ02: W*I5ةWSyvL 鵨lWEfK>-) DHK{L.gT&`L>B֜c3N;A&t2"JZԔUgN_?`ϥ(#Ϧ]qyI͢4["|sQeVQW٫eVV+ +4ϼ^e߿O&GNfDQIHkѽ$Ti|JJ1Ȥ̖zj8! LS VUfFQk֩<߬edf~MpF&O9%Z$QC!)aRL¢4LU AxG5Ĝasȧ*"C\;pġ^X=_B-1.AH/ E1gE?7 v_/)a6NQJ ںuׁ ay (Ӡ{9tA3D? :=~l!n˔q@ ]L\$H A Y͗%H AD$H AS! $HTHH $8 A ND$H AS! $HTHH $8 A NIgBIENDB`docs/reference/gdk/html/GdkPopupLayout.html0000664000175000017500000011733314010071761021127 0ustar mclasenmclasen GdkPopupLayout: GDK 4 Reference Manual

GdkPopupLayout

GdkPopupLayout — Information for presenting popups

Types and Values

Object Hierarchy

    GBoxed
    ╰── GdkPopupLayout

Includes

#include <gdk/gdk.h>

Description

Popups are positioned relative to their parent surface. The GdkPopupLayout struct contains information that is necessary to do so.

The positioning requires a negotiation with the windowing system, since it depends on external constraints, such as the position of the parent surface, and the screen dimensions.

The basic ingredients are a rectangle on the parent surface, and the anchor on both that rectangle and the popup. The anchors specify a side or corner to place next to each other.

Popup anchors

For cases where placing the anchors next to each other would make the popup extend offscreen, the layout includes some hints for how to resolve this problem. The hints may suggest to flip the anchor position to the other side, or to 'slide' the popup along a side, or to resize it.

Flipping popups

Sliding popups

These hints may be combined.

Ultimatively, it is up to the windowing system to determine the position and size of the popup. You can learn about the result by calling gdk_popup_get_position_x(), gdk_popup_get_position_y(), gdk_popup_get_rect_anchor() and gdk_popup_get_surface_anchor() after the popup has been presented. This can be used to adjust the rendering. For example, GtkPopover changes its arrow position accordingly. But you have to be careful avoid changing the size of the popover, or it has to be presented again.

Functions

gdk_popup_layout_new ()

GdkPopupLayout *
gdk_popup_layout_new (const GdkRectangle *anchor_rect,
                      GdkGravity rect_anchor,
                      GdkGravity surface_anchor);

Create a popup layout description. Used together with gdk_popup_present() to describe how a popup surface should be placed and behave on-screen.

anchor_rect is relative to the top-left corner of the surface's parent. rect_anchor and surface_anchor determine anchor points on anchor_rect and surface to pin together.

The position of anchor_rect 's anchor point can optionally be offset using gdk_popup_layout_set_offset(), which is equivalent to offsetting the position of surface.

[constructor]

Parameters

anchor_rect

the anchor GdkRectangle to align surface with.

[not nullable]

rect_anchor

the point on anchor_rect to align with surface 's anchor point

 

surface_anchor

the point on surface to align with rect 's anchor point

 

Returns

newly created instance of GdkPopupLayout.

[transfer full]


gdk_popup_layout_ref ()

GdkPopupLayout *
gdk_popup_layout_ref (GdkPopupLayout *layout);

Increases the reference count of value .

Parameters

layout

a GdkPopupLayout

 

Returns

the same layout


gdk_popup_layout_unref ()

void
gdk_popup_layout_unref (GdkPopupLayout *layout);

Decreases the reference count of value .

Parameters

layout

a GdkPopupLayout

 

gdk_popup_layout_copy ()

GdkPopupLayout *
gdk_popup_layout_copy (GdkPopupLayout *layout);

Create a new GdkPopupLayout and copy the contents of layout into it.

Parameters

layout

a GdkPopupLayout

 

Returns

a copy of layout .

[transfer full]


gdk_popup_layout_equal ()

gboolean
gdk_popup_layout_equal (GdkPopupLayout *layout,
                        GdkPopupLayout *other);

Check whether layout and other has identical layout properties.

Parameters

layout

a GdkPopupLayout

 

other

another GdkPopupLayout

 

Returns

TRUE if layout and other have identical layout properties, otherwise FALSE.


gdk_popup_layout_set_anchor_rect ()

void
gdk_popup_layout_set_anchor_rect (GdkPopupLayout *layout,
                                  const GdkRectangle *anchor_rect);

Set the anchor rectangle.

Parameters

layout

a GdkPopupLayout

 

anchor_rect

the new anchor rectangle

 

gdk_popup_layout_get_anchor_rect ()

const GdkRectangle *
gdk_popup_layout_get_anchor_rect (GdkPopupLayout *layout);

Get the anchor rectangle.

Parameters

layout

a GdkPopupLayout

 

Returns

The anchor rectangle.


gdk_popup_layout_set_rect_anchor ()

void
gdk_popup_layout_set_rect_anchor (GdkPopupLayout *layout,
                                  GdkGravity anchor);

Set the anchor on the anchor rectangle.

Parameters

layout

a GdkPopupLayout

 

anchor

the new rect anchor

 

gdk_popup_layout_get_rect_anchor ()

GdkGravity
gdk_popup_layout_get_rect_anchor (GdkPopupLayout *layout);

Returns the anchor position on the anchor rectangle.

Parameters

layout

a GdkPopupLayout

 

Returns

the anchor on the anchor rectangle.


gdk_popup_layout_set_surface_anchor ()

void
gdk_popup_layout_set_surface_anchor (GdkPopupLayout *layout,
                                     GdkGravity anchor);

Set the anchor on the popup surface.

Parameters

layout

a GdkPopupLayout

 

anchor

the new popup surface anchor

 

gdk_popup_layout_get_surface_anchor ()

GdkGravity
gdk_popup_layout_get_surface_anchor (GdkPopupLayout *layout);

Returns the anchor position on the popup surface.

Parameters

layout

a GdkPopupLayout

 

Returns

the anchor on the popup surface.


gdk_popup_layout_set_anchor_hints ()

void
gdk_popup_layout_set_anchor_hints (GdkPopupLayout *layout,
                                   GdkAnchorHints anchor_hints);

Set new anchor hints.

The set anchor_hints determines how surface will be moved if the anchor points cause it to move off-screen. For example, GDK_ANCHOR_FLIP_X will replace GDK_GRAVITY_NORTH_WEST with GDK_GRAVITY_NORTH_EAST and vice versa if surface extends beyond the left or right edges of the monitor.

Parameters

layout

a GdkPopupLayout

 

anchor_hints

the new GdkAnchorHints

 

gdk_popup_layout_get_anchor_hints ()

GdkAnchorHints
gdk_popup_layout_get_anchor_hints (GdkPopupLayout *layout);

Get the GdkAnchorHints.

Parameters

layout

a GdkPopupLayout

 

Returns

the GdkAnchorHints.


gdk_popup_layout_set_offset ()

void
gdk_popup_layout_set_offset (GdkPopupLayout *layout,
                             int dx,
                             int dy);

Offset the position of the anchor rectangle with the given delta.

Parameters

layout

a GdkPopupLayout

 

dx

x delta to offset the anchor rectangle with

 

dy

y delta to offset the anchor rectangle with

 

gdk_popup_layout_get_offset ()

void
gdk_popup_layout_get_offset (GdkPopupLayout *layout,
                             int *dx,
                             int *dy);

Retrieves the offset for the anchor rectangle.

Parameters

layout

a GdkPopupLayout

 

dx

return location for the delta X coordinate.

[out]

dy

return location for the delta Y coordinate.

[out]

Types and Values

GdkPopupLayout

typedef struct _GdkPopupLayout GdkPopupLayout;

Struct containing information for gdk_popup_present()


enum GdkAnchorHints

Positioning hints for aligning a surface relative to a rectangle.

These hints determine how the surface should be positioned in the case that the surface would fall off-screen if placed in its ideal position.

For example, GDK_ANCHOR_FLIP_X will replace GDK_GRAVITY_NORTH_WEST with GDK_GRAVITY_NORTH_EAST and vice versa if the surface extends beyond the left or right edges of the monitor.

If GDK_ANCHOR_SLIDE_X is set, the surface can be shifted horizontally to fit on-screen. If GDK_ANCHOR_RESIZE_X is set, the surface can be shrunken horizontally to fit.

In general, when multiple flags are set, flipping should take precedence over sliding, which should take precedence over resizing.

Members

GDK_ANCHOR_FLIP_X

allow flipping anchors horizontally

 

GDK_ANCHOR_FLIP_Y

allow flipping anchors vertically

 

GDK_ANCHOR_SLIDE_X

allow sliding surface horizontally

 

GDK_ANCHOR_SLIDE_Y

allow sliding surface vertically

 

GDK_ANCHOR_RESIZE_X

allow resizing surface horizontally

 

GDK_ANCHOR_RESIZE_Y

allow resizing surface vertically

 

GDK_ANCHOR_FLIP

allow flipping anchors on both axes

 

GDK_ANCHOR_SLIDE

allow sliding surface on both axes

 

GDK_ANCHOR_RESIZE

allow resizing surface on both axes

 
docs/reference/gdk/html/GdkSurface.html0000664000175000017500000025127114010071761020216 0ustar mclasenmclasen Surfaces: GDK 4 Reference Manual

Surfaces

Surfaces — Onscreen display areas in the target window system

Properties

GdkCursor * cursor Read / Write
GdkDisplay * display Read / Write / Construct Only
GdkFrameClock * frame-clock Read / Write / Construct Only
int height Read
gboolean mapped Read
int scale-factor Read
int width Read

Signals

void enter-monitor Run First
gboolean event Run Last
void layout Run First
void leave-monitor Run First
gboolean render Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkSurface

Known Derived Interfaces

GdkSurface is required by GdkDragSurface, GdkPopup and GdkToplevel.

Includes

#include <gdk/gdk.h>

Description

A GdkSurface is a (usually) rectangular region on the screen. It’s a low-level object, used to implement high-level objects such as GtkWindow or GtkDialog in GTK.

The surfaces you see in practice are either GdkToplevel or GdkPopup, and those interfaces provide much of the required API to interact with these surfaces. Other, more specialized surface types exist, but you will rarely interact with them directly.

Functions

gdk_surface_new_toplevel ()

GdkSurface *
gdk_surface_new_toplevel (GdkDisplay *display);

Creates a new toplevel surface.

[constructor]

Parameters

display

the display to create the surface on

 

Returns

the new GdkSurface.

[transfer full]


gdk_surface_new_popup ()

GdkSurface *
gdk_surface_new_popup (GdkSurface *parent,
                       gboolean autohide);

Create a new popup surface.

The surface will be attached to parent and can be positioned relative to it using gdk_popup_present().

[constructor]

Parameters

parent

the parent surface to attach the surface to

 

autohide

whether to hide the surface on outside clicks

 

Returns

a new GdkSurface.

[transfer full]


gdk_surface_destroy ()

void
gdk_surface_destroy (GdkSurface *surface);

Destroys the window system resources associated with surface and decrements surface 's reference count. The window system resources for all children of surface are also destroyed, but the children’s reference counts are not decremented.

Note that a surface will not be destroyed automatically when its reference count reaches zero. You must call this function yourself before that happens.

Parameters

surface

a GdkSurface

 

gdk_surface_is_destroyed ()

gboolean
gdk_surface_is_destroyed (GdkSurface *surface);

Check to see if a surface is destroyed..

Parameters

surface

a GdkSurface

 

Returns

TRUE if the surface is destroyed


gdk_surface_get_display ()

GdkDisplay *
gdk_surface_get_display (GdkSurface *surface);

Gets the GdkDisplay associated with a GdkSurface.

Parameters

surface

a GdkSurface

 

Returns

the GdkDisplay associated with surface .

[transfer none]


gdk_surface_hide ()

void
gdk_surface_hide (GdkSurface *surface);

For toplevel surfaces, withdraws them, so they will no longer be known to the window manager; for all surfaces, unmaps them, so they won’t be displayed. Normally done automatically as part of gtk_widget_hide().

Parameters

surface

a GdkSurface

 

gdk_surface_get_mapped ()

gboolean
gdk_surface_get_mapped (GdkSurface *surface);

Checks whether the surface has been mapped (with gdk_toplevel_present() or gdk_popup_present()).

Parameters

surface

a GdkSurface

 

Returns

TRUE if the surface is mapped


gdk_surface_translate_coordinates ()

gboolean
gdk_surface_translate_coordinates (GdkSurface *from,
                                   GdkSurface *to,
                                   double *x,
                                   double *y);

Translates the given coordinates from being relative to the from surface to being relative to the to surface.

Note that this only works if to and from are popups or transient-for to the same toplevel (directly or indirectly).

Parameters

from

the origin surface

 

to

the target surface

 

x

coordinates to translate

 

y

coordinates to translate

 

Returns

TRUE if the coordinates were successfully translated


gdk_surface_beep ()

void
gdk_surface_beep (GdkSurface *surface);

Emits a short beep associated to surface in the appropriate display, if supported. Otherwise, emits a short beep on the display just as gdk_display_beep().

Parameters

surface

a toplevel GdkSurface

 

gdk_surface_get_scale_factor ()

int
gdk_surface_get_scale_factor (GdkSurface *surface);

Returns the internal scale factor that maps from surface coordinates to the actual device pixels. On traditional systems this is 1, but on very high density outputs this can be a higher value (often 2).

A higher value means that drawing is automatically scaled up to a higher resolution, so any code doing drawing will automatically look nicer. However, if you are supplying pixel-based data the scale value can be used to determine whether to use a pixel resource with higher resolution data.

The scale of a surface may change during runtime.

Parameters

surface

surface to get scale factor for

 

Returns

the scale factor


gdk_surface_set_opaque_region ()

void
gdk_surface_set_opaque_region (GdkSurface *surface,
                               cairo_region_t *region);

For optimisation purposes, compositing window managers may like to not draw obscured regions of surfaces, or turn off blending during for these regions. With RGB windows with no transparency, this is just the shape of the window, but with ARGB32 windows, the compositor does not know what regions of the window are transparent or not.

This function only works for toplevel surfaces.

GTK will update this property automatically if the surface background is opaque, as we know where the opaque regions are. If your surface background is not opaque, please update this property in your GtkWidgetClass.css_changed() handler.

Parameters

surface

a top-level or non-native GdkSurface

 

region

a region, or NULL.

[allow-none]

gdk_surface_create_gl_context ()

GdkGLContext *
gdk_surface_create_gl_context (GdkSurface *surface,
                               GError **error);

Creates a new GdkGLContext matching the framebuffer format to the visual of the GdkSurface. The context is disconnected from any particular surface or surface.

If the creation of the GdkGLContext failed, error will be set.

Before using the returned GdkGLContext, you will need to call gdk_gl_context_make_current() or gdk_gl_context_realize().

Parameters

surface

a GdkSurface

 

error

return location for an error

 

Returns

the newly created GdkGLContext, or NULL on error.

[transfer full]


gdk_surface_create_vulkan_context ()

GdkVulkanContext *
gdk_surface_create_vulkan_context (GdkSurface *surface,
                                   GError **error);

Creates a new GdkVulkanContext for rendering on surface .

If the creation of the GdkVulkanContext failed, error will be set.

Parameters

surface

a GdkSurface

 

error

return location for an error

 

Returns

the newly created GdkVulkanContext, or NULL on error.

[transfer full]


gdk_surface_create_cairo_context ()

GdkCairoContext *
gdk_surface_create_cairo_context (GdkSurface *surface);

Creates a new GdkCairoContext for rendering on surface .

Parameters

surface

a GdkSurface

 

Returns

the newly created GdkCairoContext.

[transfer full]


gdk_surface_queue_render ()

void
gdk_surface_queue_render (GdkSurface *surface);

Forces a “render” signal emission for surface to be scheduled.

This function is useful for implementations that track invalid regions on their own.

Parameters

surface

a GdkSurface

 

gdk_surface_get_frame_clock ()

GdkFrameClock *
gdk_surface_get_frame_clock (GdkSurface *surface);

Gets the frame clock for the surface. The frame clock for a surface never changes unless the surface is reparented to a new toplevel surface.

Parameters

surface

surface to get frame clock for

 

Returns

the frame clock.

[transfer none]


gdk_surface_request_layout ()

void
gdk_surface_request_layout (GdkSurface *surface);

Request a GDK_FRAME_CLOCK_PHASE_LAYOUT from the surface's frame clock. See gdk_frame_clock_request_phase().

Parameters

surface

a GdkSurface

 

gdk_surface_set_cursor ()

void
gdk_surface_set_cursor (GdkSurface *surface,
                        GdkCursor *cursor);

Sets the default mouse pointer for a GdkSurface.

Note that cursor must be for the same display as surface .

Use gdk_cursor_new_from_name() or gdk_cursor_new_from_texture() to create the cursor. To make the cursor invisible, use GDK_BLANK_CURSOR. Passing NULL for the cursor argument to gdk_surface_set_cursor() means that surface will use the cursor of its parent surface. Most surfaces should use this default.

Parameters

surface

a GdkSurface

 

cursor

a cursor.

[allow-none]

gdk_surface_get_cursor ()

GdkCursor *
gdk_surface_get_cursor (GdkSurface *surface);

Retrieves a GdkCursor pointer for the cursor currently set on the specified GdkSurface, or NULL. If the return value is NULL then there is no custom cursor set on the specified surface, and it is using the cursor for its parent surface.

Parameters

surface

a GdkSurface

 

Returns

a GdkCursor, or NULL. The returned object is owned by the GdkSurface and should not be unreferenced directly. Use gdk_surface_set_cursor() to unset the cursor of the surface.

[nullable][transfer none]


gdk_surface_set_input_region ()

void
gdk_surface_set_input_region (GdkSurface *surface,
                              cairo_region_t *region);

Apply the region to the surface for the purpose of event handling. Mouse events which happen while the pointer position corresponds to an unset bit in the mask will be passed on the surface below surface .

An input region is typically used with RGBA surfaces. The alpha channel of the surface defines which pixels are invisible and allows for nicely antialiased borders, and the input region controls where the surface is “clickable”.

Use gdk_display_supports_input_shapes() to find out if a particular backend supports input regions.

Parameters

surface

a GdkSurface

 

region

region of surface to be reactive

 

gdk_surface_get_width ()

int
gdk_surface_get_width (GdkSurface *surface);

Returns the width of the given surface .

Surface size is reported in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()).

Parameters

surface

a GdkSurface

 

Returns

The width of surface


gdk_surface_get_height ()

int
gdk_surface_get_height (GdkSurface *surface);

Returns the height of the given surface .

Surface size is reported in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()).

Parameters

surface

a GdkSurface

 

Returns

The height of surface


gdk_surface_get_device_position ()

gboolean
gdk_surface_get_device_position (GdkSurface *surface,
                                 GdkDevice *device,
                                 double *x,
                                 double *y,
                                 GdkModifierType *mask);

Obtains the current device position in doubles and modifier state. The position is given in coordinates relative to the upper left corner of surface .

Return: TRUE if the device is over the surface

Parameters

surface

a GdkSurface.

 

device

pointer GdkDevice to query to.

 

x

return location for the X coordinate of device , or NULL.

[out][allow-none]

y

return location for the Y coordinate of device , or NULL.

[out][allow-none]

mask

return location for the modifier mask, or NULL.

[out][allow-none]

gdk_surface_get_device_cursor ()

GdkCursor *
gdk_surface_get_device_cursor (GdkSurface *surface,
                               GdkDevice *device);

Retrieves a GdkCursor pointer for the device currently set on the specified GdkSurface, or NULL. If the return value is NULL then there is no custom cursor set on the specified surface, and it is using the cursor for its parent surface.

Parameters

surface

a GdkSurface.

 

device

a logical, pointer GdkDevice.

 

Returns

a GdkCursor, or NULL. The returned object is owned by the GdkSurface and should not be unreferenced directly. Use gdk_surface_set_cursor() to unset the cursor of the surface.

[nullable][transfer none]


gdk_surface_set_device_cursor ()

void
gdk_surface_set_device_cursor (GdkSurface *surface,
                               GdkDevice *device,
                               GdkCursor *cursor);

Sets a specific GdkCursor for a given device when it gets inside surface . Use gdk_cursor_new_from_name() or gdk_cursor_new_from_texture() to create the cursor. To make the cursor invisible, use GDK_BLANK_CURSOR. Passing NULL for the cursor argument to gdk_surface_set_cursor() means that surface will use the cursor of its parent surface. Most surfaces should use this default.

Parameters

surface

a GdkSurface

 

device

a logical, pointer GdkDevice

 

cursor

a GdkCursor

 

Types and Values

GdkSurface

typedef struct _GdkSurface GdkSurface;

The GdkSurface struct contains only private fields and should not be accessed directly.


enum GdkGravity

Defines the reference point of a surface and is used in GdkPopupLayout.

Members

GDK_GRAVITY_NORTH_WEST

the reference point is at the top left corner.

 

GDK_GRAVITY_NORTH

the reference point is in the middle of the top edge.

 

GDK_GRAVITY_NORTH_EAST

the reference point is at the top right corner.

 

GDK_GRAVITY_WEST

the reference point is at the middle of the left edge.

 

GDK_GRAVITY_CENTER

the reference point is at the center of the surface.

 

GDK_GRAVITY_EAST

the reference point is at the middle of the right edge.

 

GDK_GRAVITY_SOUTH_WEST

the reference point is at the lower left corner.

 

GDK_GRAVITY_SOUTH

the reference point is at the middle of the lower edge.

 

GDK_GRAVITY_SOUTH_EAST

the reference point is at the lower right corner.

 

GDK_GRAVITY_STATIC

the reference point is at the top left corner of the surface itself, ignoring window manager decorations.

 

enum GdkModifierType

A set of bit-flags to indicate the state of modifier keys and mouse buttons in various event types. Typical modifier keys are Shift, Control, Meta, Super, Hyper, Alt, Compose, Apple, CapsLock or ShiftLock.

Note that GDK may add internal values to events which include values outside of this enumeration. Your code should preserve and ignore them. You can use GDK_MODIFIER_MASK to remove all private values.

Members

GDK_SHIFT_MASK

the Shift key.

 

GDK_LOCK_MASK

a Lock key (depending on the modifier mapping of the X server this may either be CapsLock or ShiftLock).

 

GDK_CONTROL_MASK

the Control key.

 

GDK_ALT_MASK

the fourth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier, but normally it is the Alt key).

 

GDK_BUTTON1_MASK

the first mouse button.

 

GDK_BUTTON2_MASK

the second mouse button.

 

GDK_BUTTON3_MASK

the third mouse button.

 

GDK_BUTTON4_MASK

the fourth mouse button.

 

GDK_BUTTON5_MASK

the fifth mouse button.

 

GDK_SUPER_MASK

the Super modifier

 

GDK_HYPER_MASK

the Hyper modifier

 

GDK_META_MASK

the Meta modifier

 

GDK_MODIFIER_MASK

#define             GDK_MODIFIER_MASK

A mask covering all entries in GdkModifierType.

Property Details

The “cursor” property

  “cursor”                   GdkCursor *

The mouse pointer for a GdkSurface. See gdk_surface_set_cursor() and gdk_surface_get_cursor() for details.

Owner: GdkSurface

Flags: Read / Write


The “display” property

  “display”                  GdkDisplay *

The GdkDisplay connection of the surface. See gdk_surface_get_display() for details.

Owner: GdkSurface

Flags: Read / Write / Construct Only


The “frame-clock” property

  “frame-clock”              GdkFrameClock *

Frame Clock.

Owner: GdkSurface

Flags: Read / Write / Construct Only


The “height” property

  “height”                   int

Height.

Owner: GdkSurface

Flags: Read

Allowed values: >= 0

Default value: 0


The “mapped” property

  “mapped”                   gboolean

Mapped.

Owner: GdkSurface

Flags: Read

Default value: FALSE


The “scale-factor” property

  “scale-factor”             int

Scale factor.

Owner: GdkSurface

Flags: Read

Allowed values: >= 1

Default value: 1


The “width” property

  “width”                    int

Width.

Owner: GdkSurface

Flags: Read

Allowed values: >= 0

Default value: 0

Signal Details

The “enter-monitor” signal

void
user_function (GdkSurface *surface,
               GdkMonitor *monitor,
               gpointer    user_data)

Emitted when surface starts being present on the monitor.

Parameters

surface

the GdkSurface

 

monitor

the monitor

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “event” signal

gboolean
user_function (GdkSurface *surface,
               gpointer    event,
               gpointer    user_data)

Emitted when GDK receives an input event for surface .

Parameters

surface

the GdkSurface

 

event

an input event.

[type Gdk.Event]

user_data

user data set when the signal handler was connected.

 

Returns

TRUE to indicate that the event has been handled

Flags: Run Last


The “layout” signal

void
user_function (GdkSurface *surface,
               int         width,
               int         height,
               gpointer    user_data)

Emitted when the size of surface is changed, or when relayout should be performed.

Surface size is reported in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()).

Parameters

surface

the GdkSurface

 

width

the current width

 

height

the current height

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “leave-monitor” signal

void
user_function (GdkSurface *surface,
               GdkMonitor *monitor,
               gpointer    user_data)

Emitted when surface stops being present on the monitor.

Parameters

surface

the GdkSurface

 

monitor

the monitor

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “render” signal

gboolean
user_function (GdkSurface  *surface,
               CairoRegion *region,
               gpointer     user_data)

Emitted when part of the surface needs to be redrawn.

Parameters

surface

the GdkSurface

 

region

the region that needs to be redrawn

 

user_data

user data set when the signal handler was connected.

 

Returns

TRUE to indicate that the signal has been handled

Flags: Run Last

See Also

GdkToplevel, GdkPopup

docs/reference/gdk/html/GdkSeat.html0000664000175000017500000006736714010071761017535 0ustar mclasenmclasen GdkSeat: GDK 4 Reference Manual

GdkSeat

GdkSeat — Object representing a user seat

Properties

GdkDisplay * display Read / Write / Construct Only

Signals

void device-added Run Last
void device-removed Run Last
void tool-added Run Last
void tool-removed Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkSeat

Includes

#include <gdk/gdk.h>

Description

The GdkSeat object represents a collection of input devices that belong to a user.

Functions

gdk_seat_get_display ()

GdkDisplay *
gdk_seat_get_display (GdkSeat *seat);

Returns the GdkDisplay this seat belongs to.

Parameters

seat

a GdkSeat

 

Returns

a GdkDisplay. This object is owned by GTK and must not be freed.

[transfer none]


gdk_seat_get_capabilities ()

GdkSeatCapabilities
gdk_seat_get_capabilities (GdkSeat *seat);

Returns the capabilities this GdkSeat currently has.

Parameters

seat

a GdkSeat

 

Returns

the seat capabilities


gdk_seat_get_pointer ()

GdkDevice *
gdk_seat_get_pointer (GdkSeat *seat);

Returns the device that routes pointer events.

Parameters

seat

a GdkSeat

 

Returns

a GdkDevice with pointer capabilities. This object is owned by GTK and must not be freed.

[transfer none][nullable]


gdk_seat_get_keyboard ()

GdkDevice *
gdk_seat_get_keyboard (GdkSeat *seat);

Returns the device that routes keyboard events.

Parameters

seat

a GdkSeat

 

Returns

a GdkDevice with keyboard capabilities. This object is owned by GTK and must not be freed.

[transfer none][nullable]


gdk_seat_get_devices ()

GList *
gdk_seat_get_devices (GdkSeat *seat,
                      GdkSeatCapabilities capabilities);

Returns the devices that match the given capabilities.

Parameters

seat

a GdkSeat

 

capabilities

capabilities to get devices for

 

Returns

A list of GdkDevices. The list must be freed with g_list_free(), the elements are owned by GTK and must not be freed.

[transfer container][element-type GdkDevice]


gdk_seat_get_tools ()

GList *
gdk_seat_get_tools (GdkSeat *seat);

Returns all GdkDeviceTools that are known to the application.

Parameters

seat

A GdkSeat

 

Returns

A list of tools. Free with g_list_free().

[transfer container][element-type Gdk.DeviceTool]

Types and Values

GdkSeat

typedef struct _GdkSeat GdkSeat;

The GdkSeat struct contains only private fields and should not be accessed directly.


enum GdkSeatCapabilities

Flags describing the seat capabilities.

Members

GDK_SEAT_CAPABILITY_NONE

No input capabilities

 

GDK_SEAT_CAPABILITY_POINTER

The seat has a pointer (e.g. mouse)

 

GDK_SEAT_CAPABILITY_TOUCH

The seat has touchscreen(s) attached

 

GDK_SEAT_CAPABILITY_TABLET_STYLUS

The seat has drawing tablet(s) attached

 

GDK_SEAT_CAPABILITY_KEYBOARD

The seat has keyboard(s) attached

 

GDK_SEAT_CAPABILITY_TABLET_PAD

The seat has drawing tablet pad(s) attached

 

GDK_SEAT_CAPABILITY_ALL_POINTING

The union of all pointing capabilities

 

GDK_SEAT_CAPABILITY_ALL

The union of all capabilities

 

Property Details

The “display” property

  “display”                  GdkDisplay *

GdkDisplay of this seat.

Owner: GdkSeat

Flags: Read / Write / Construct Only

Signal Details

The “device-added” signal

void
user_function (GdkSeat   *seat,
               GdkDevice *device,
               gpointer   user_data)

The ::device-added signal is emitted when a new input device is related to this seat.

Parameters

seat

the object on which the signal is emitted

 

device

the newly added GdkDevice.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “device-removed” signal

void
user_function (GdkSeat   *seat,
               GdkDevice *device,
               gpointer   user_data)

The ::device-removed signal is emitted when an input device is removed (e.g. unplugged).

Parameters

seat

the object on which the signal is emitted

 

device

the just removed GdkDevice.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “tool-added” signal

void
user_function (GdkSeat       *seat,
               GdkDeviceTool *tool,
               gpointer       user_data)

The ::tool-added signal is emitted whenever a new tool is made known to the seat. The tool may later be assigned to a device (i.e. on proximity with a tablet). The device will emit the “tool-changed” signal accordingly.

A same tool may be used by several devices.

Parameters

seat

the object on which the signal is emitted

 

tool

the new GdkDeviceTool known to the seat

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “tool-removed” signal

void
user_function (GdkSeat       *seat,
               GdkDeviceTool *tool,
               gpointer       user_data)

This signal is emitted whenever a tool is no longer known to this seat .

Parameters

seat

the object on which the signal is emitted

 

tool

the just removed GdkDeviceTool

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

See Also

GdkDisplay, GdkDevice

docs/reference/gdk/html/ch02.html0000664000175000017500000000432414010071761016727 0ustar mclasenmclasen GDK Platform Support: GDK 4 Reference Manual

GDK Platform Support

Application launching — Startup notification for applications
X Window System Interaction — X backend-specific functions
Wayland Interaction — Wayland backend-specific functions
docs/reference/gdk/html/gdk4-Rectangles-and-Regions.html0000664000175000017500000004215014010071761023254 0ustar mclasenmclasen GdkRectangle: GDK 4 Reference Manual

GdkRectangle

GdkRectangle — Simple graphical data type

Functions

Types and Values

Object Hierarchy

    GBoxed
    ╰── GdkRectangle

Includes

#include <gdk/gdk.h>

Description

GDK provides a GdkRectangle data type for representing rectangles. Together with Cairo’s cairo_region_t data type, these are the central types for representing sets of pixels.

A GdkRectangle represents the position and size of a rectangle. The intersection of two rectangles can be computed with gdk_rectangle_intersect(). To find the union of two rectangles use gdk_rectangle_union().

cairo_region_t is usually used for managing clipping of graphical operations.

The graphene library has a number of other data types for regions and volumes in 2D and 3D.

Functions

gdk_rectangle_intersect ()

gboolean
gdk_rectangle_intersect (const GdkRectangle *src1,
                         const GdkRectangle *src2,
                         GdkRectangle *dest);

Calculates the intersection of two rectangles. It is allowed for dest to be the same as either src1 or src2 . If the rectangles do not intersect, dest ’s width and height is set to 0 and its x and y values are undefined. If you are only interested in whether the rectangles intersect, but not in the intersecting area itself, pass NULL for dest .

Parameters

src1

a GdkRectangle

 

src2

a GdkRectangle

 

dest

return location for the intersection of src1 and src2 , or NULL.

[out caller-allocates][allow-none]

Returns

TRUE if the rectangles intersect.


gdk_rectangle_union ()

void
gdk_rectangle_union (const GdkRectangle *src1,
                     const GdkRectangle *src2,
                     GdkRectangle *dest);

Calculates the union of two rectangles. The union of rectangles src1 and src2 is the smallest rectangle which includes both src1 and src2 within it. It is allowed for dest to be the same as either src1 or src2 .

Note that this function does not ignore 'empty' rectangles (ie. with zero width or height).

Parameters

src1

a GdkRectangle

 

src2

a GdkRectangle

 

dest

return location for the union of src1 and src2 .

[out]

gdk_rectangle_equal ()

gboolean
gdk_rectangle_equal (const GdkRectangle *rect1,
                     const GdkRectangle *rect2);

Checks if the two given rectangles are equal.

Parameters

rect1

a GdkRectangle

 

rect2

a GdkRectangle

 

Returns

TRUE if the rectangles are equal.


gdk_rectangle_contains_point ()

gboolean
gdk_rectangle_contains_point (const GdkRectangle *rect,
                              int x,
                              int y);

Returns TRUE if rect contains the point described by x and y .

Parameters

rect

a GdkRectangle

 

x

X coordinate

 

y

Y coordinate

 

Returns

TRUE if rect contains the point

Types and Values

GdkRectangle

typedef struct {
    int x, y;
    int width, height;
} GdkRectangle;

Defines the position and size of a rectangle. It is identical to cairo_rectangle_int_t.

Members

int x;

the x coordinate of the top left corner

 

int y;

the y coordinate of the top left corner

 

int width;

the width of the rectangle

 

int height;

the height of the rectangle

 
docs/reference/gdk/html/gdk4-RGBA-Colors.html0000664000175000017500000005161014010071761020774 0ustar mclasenmclasen GdkRGBA: GDK 4 Reference Manual

GdkRGBA

GdkRGBA — RGBA colors

Functions

GdkRGBA * gdk_rgba_copy ()
void gdk_rgba_free ()
gboolean gdk_rgba_is_clear ()
gboolean gdk_rgba_is_opaque ()
gboolean gdk_rgba_parse ()
gboolean gdk_rgba_equal ()
guint gdk_rgba_hash ()
char * gdk_rgba_to_string ()

Types and Values

  GdkRGBA

Object Hierarchy

    GBoxed
    ╰── GdkRGBA

Includes

#include <gdk/gdk.h>

Description

GdkRGBA is a convenient way to pass colors around. It’s based on cairo’s way to deal with colors and mirrors its behavior. All values are in the range from 0.0 to 1.0 inclusive. So the color (0.0, 0.0, 0.0, 0.0) represents transparent black and (1.0, 1.0, 1.0, 1.0) is opaque white. Other values will be clamped to this range when drawing.

Functions

gdk_rgba_copy ()

GdkRGBA *
gdk_rgba_copy (const GdkRGBA *rgba);

Makes a copy of a GdkRGBA.

The result must be freed through gdk_rgba_free().

Parameters

rgba

a GdkRGBA

 

Returns

A newly allocated GdkRGBA, with the same contents as rgba


gdk_rgba_free ()

void
gdk_rgba_free (GdkRGBA *rgba);

Frees a GdkRGBA created with gdk_rgba_copy()

Parameters

rgba

a GdkRGBA

 

gdk_rgba_is_clear ()

gboolean
gdk_rgba_is_clear (const GdkRGBA *rgba);

Checks if an rgba value is transparent. That is, drawing with the value would not produce any change.

Parameters

rgba

a GdkRGBA

 

Returns

TRUE if the rgba is clear


gdk_rgba_is_opaque ()

gboolean
gdk_rgba_is_opaque (const GdkRGBA *rgba);

Checks if an rgba value is opaque. That is, drawing with the value will not retain any results from previous contents.

Parameters

rgba

a GdkRGBA

 

Returns

TRUE if the rgba is opaque


gdk_rgba_parse ()

gboolean
gdk_rgba_parse (GdkRGBA *rgba,
                const char *spec);

Parses a textual representation of a color, filling in the red , green , blue and alpha fields of the rgba GdkRGBA.

The string can be either one of:

  • A standard name (Taken from the X11 rgb.txt file).

  • A hexadecimal value in the form “#rgb”, “#rrggbb”, “#rrrgggbbb” or ”#rrrrggggbbbb”

  • A hexadecimal value in the form “#rgba”, “#rrggbbaa”, or ”#rrrrggggbbbbaaaa”

  • A RGB color in the form “rgb(r,g,b)” (In this case the color will have full opacity)

  • A RGBA color in the form “rgba(r,g,b,a)”

Where “r”, “g”, “b” and “a” are respectively the red, green, blue and alpha color values. In the last two cases, “r”, “g”, and “b” are either integers in the range 0 to 255 or percentage values in the range 0% to 100%, and a is a floating point value in the range 0 to 1.

Parameters

rgba

the GdkRGBA to fill in

 

spec

the string specifying the color

 

Returns

TRUE if the parsing succeeded


gdk_rgba_equal ()

gboolean
gdk_rgba_equal (gconstpointer p1,
                gconstpointer p2);

Compares two RGBA colors.

Parameters

p1

a GdkRGBA pointer.

[type GdkRGBA]

p2

another GdkRGBA pointer.

[type GdkRGBA]

Returns

TRUE if the two colors compare equal


gdk_rgba_hash ()

guint
gdk_rgba_hash (gconstpointer p);

A hash function suitable for using for a hash table that stores GdkRGBAs.

Parameters

p

a GdkRGBA pointer.

[type GdkRGBA]

Returns

The hash value for p


gdk_rgba_to_string ()

char *
gdk_rgba_to_string (const GdkRGBA *rgba);

Returns a textual specification of rgba in the form rgb(r,g,b) or rgba(r,g,b,a), where “r”, “g”, “b” and “a” represent the red, green, blue and alpha values respectively. “r”, “g”, and “b” are represented as integers in the range 0 to 255, and “a” is represented as a floating point value in the range 0 to 1.

These string forms are string forms that are supported by the CSS3 colors module, and can be parsed by gdk_rgba_parse().

Note that this string representation may lose some precision, since “r”, “g” and “b” are represented as 8-bit integers. If this is a concern, you should use a different representation.

Parameters

rgba

a GdkRGBA

 

Returns

A newly allocated text string

Types and Values

GdkRGBA

typedef struct {
  float red;
  float green;
  float blue;
  float alpha;
} GdkRGBA;

A GdkRGBA is used to represent a (possibly translucent) color, in a way that is compatible with cairo’s notion of color.

Members

float red;

The intensity of the red channel from 0.0 to 1.0 inclusive

 

float green;

The intensity of the green channel from 0.0 to 1.0 inclusive

 

float blue;

The intensity of the blue channel from 0.0 to 1.0 inclusive

 

float alpha;

The opacity of the color from 0.0 for completely translucent to 1.0 for opaque

 
docs/reference/gdk/html/gdk4-Textures.html0000664000175000017500000011133714010071761020650 0ustar mclasenmclasen GdkTexture: GDK 4 Reference Manual

GdkTexture

GdkTexture — Pixel data

Properties

int height Read / Write / Construct Only
int width Read / Write / Construct Only

Object Hierarchy

    GObject
    ╰── GdkTexture
        ├── GdkGLTexture
        ╰── GdkMemoryTexture

Implemented Interfaces

GdkTexture implements GdkPaintable.

GdkMemoryTexture implements GdkPaintable.

GdkGLTexture implements GdkPaintable.

Includes

#include <gdk/gdk.h>

Description

GdkTexture is the basic element used to refer to pixel data. It is primarily mean for pixel data that will not change over multiple frames, and will be used for a long time.

There are various ways to create GdkTexture objects from a GdkPixbuf, or a Cairo surface, or other pixel data.

The ownership of the pixel data is transferred to the GdkTexture instance; you can only make a copy of it, via gdk_texture_download().

GdkTexture is an immutable object: That means you cannot change anything about it other than increasing the reference count via g_object_ref().

Functions

gdk_texture_new_for_pixbuf ()

GdkTexture *
gdk_texture_new_for_pixbuf (GdkPixbuf *pixbuf);

Creates a new texture object representing the GdkPixbuf.

Parameters

pixbuf

a GdkPixbuf

 

Returns

a new GdkTexture


gdk_texture_new_from_resource ()

GdkTexture *
gdk_texture_new_from_resource (const char *resource_path);

Creates a new texture by loading an image from a resource. The file format is detected automatically. The supported formats are PNG and JPEG, though more formats might be available.

It is a fatal error if resource_path does not specify a valid image resource and the program will abort if that happens. If you are unsure about the validity of a resource, use gdk_texture_new_from_file() to load it.

Parameters

resource_path

the path of the resource file

 

Returns

A newly-created texture


gdk_texture_new_from_file ()

GdkTexture *
gdk_texture_new_from_file (GFile *file,
                           GError **error);

Creates a new texture by loading an image from a file. The file format is detected automatically. The supported formats are PNG and JPEG, though more formats might be available.

If NULL is returned, then error will be set.

Parameters

file

GFile to load

 

error

Return location for an error

 

Returns

A newly-created GdkTexture or NULL if an error occurred.


gdk_texture_get_width ()

int
gdk_texture_get_width (GdkTexture *texture);

Returns the width of texture , in pixels.

Parameters

texture

a GdkTexture

 

Returns

the width of the GdkTexture


gdk_texture_get_height ()

int
gdk_texture_get_height (GdkTexture *texture);

Returns the height of the texture , in pixels.

Parameters

texture

a GdkTexture

 

Returns

the height of the GdkTexture


gdk_texture_download ()

void
gdk_texture_download (GdkTexture *texture,
                      guchar *data,
                      gsize stride);

Downloads the texture into local memory. This may be an expensive operation, as the actual texture data may reside on a GPU or on a remote display server.

The data format of the downloaded data is equivalent to CAIRO_FORMAT_ARGB32, so every downloaded pixel requires 4 bytes of memory.

Downloading a texture into a Cairo image surface:

1
2
3
4
5
6
7
surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32,
                                      gdk_texture_get_width (texture),
                                      gdk_texture_get_height (texture));
gdk_texture_download (texture,
                      cairo_image_surface_get_data (surface),
                      cairo_image_surface_get_stride (surface));
cairo_surface_mark_dirty (surface);

Parameters

texture

a GdkTexture

 

data

pointer to enough memory to be filled with the downloaded data of texture .

[array]

stride

rowstride in bytes

 

gdk_texture_save_to_png ()

gboolean
gdk_texture_save_to_png (GdkTexture *texture,
                         const char *filename);

Store the given texture to the filename as a PNG file.

This is a utility function intended for debugging and testing. If you want more control over formats, proper error handling or want to store to a GFile or other location, you might want to look into using the gdk-pixbuf library.

Parameters

texture

a GdkTexture

 

filename

the filename to store to

 

Returns

TRUE if saving succeeded, FALSE on failure.


gdk_memory_texture_new ()

GdkTexture *
gdk_memory_texture_new (int width,
                        int height,
                        GdkMemoryFormat format,
                        GBytes *bytes,
                        gsize stride);

Creates a new texture for a blob of image data. The GBytes must contain stride x height pixels in the given format.

Parameters

width

the width of the texture

 

height

the height of the texture

 

format

the format of the data

 

bytes

the GBytes containing the pixel data

 

stride

rowstride for the data

 

Returns

A newly-created GdkTexture


gdk_gl_texture_new ()

GdkTexture *
gdk_gl_texture_new (GdkGLContext *context,
                    guint id,
                    int width,
                    int height,
                    GDestroyNotify destroy,
                    gpointer data);

Creates a new texture for an existing GL texture.

Note that the GL texture must not be modified until destroy is called, which will happen when the GdkTexture object is finalized, or due to an explicit call of gdk_gl_texture_release().

Parameters

context

a GdkGLContext

 

id

the ID of a texture that was created with context

 

width

the nominal width of the texture

 

height

the nominal height of the texture

 

destroy

a destroy notify that will be called when the GL resources are released

 

data

data that gets passed to destroy

 

Returns

A newly-created GdkTexture.

[transfer full]


gdk_gl_texture_release ()

void
gdk_gl_texture_release (GdkGLTexture *self);

Releases the GL resources held by a GdkGLTexture that was created with gdk_gl_texture_new().

The texture contents are still available via the gdk_texture_download() function, after this function has been called.

Parameters

self

a GdkTexture wrapping a GL texture

 

Types and Values

GdkTexture

typedef struct _GdkTexture GdkTexture;

The GdkTexture structure contains only private data.


GdkMemoryTexture

typedef struct _GdkMemoryTexture GdkMemoryTexture;

A GdkTexture representing image data in memory.


GdkGLTexture

typedef struct _GdkGLTexture GdkGLTexture;

A GdkTexture representing a GL texture object.


enum GdkMemoryFormat

GdkMemoryFormat describes a format that bytes can have in memory.

It describes formats by listing the contents of the memory passed to it. So GDK_MEMORY_A8R8G8B8 will be 1 byte (8 bits) of alpha, followed by a byte each of red, green and blue. It is not endian-dependent, so CAIRO_FORMAT_ARGB32 is represented by different GdkMemoryFormats on architectures with different endiannesses.

Its naming is modelled after VkFormat (see https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.htmlVkFormat for details).

Members

GDK_MEMORY_B8G8R8A8_PREMULTIPLIED

4 bytes; for blue, green, red, alpha. The color values are premultiplied with the alpha value.

 

GDK_MEMORY_A8R8G8B8_PREMULTIPLIED

4 bytes; for alpha, red, green, blue. The color values are premultiplied with the alpha value.

 

GDK_MEMORY_R8G8B8A8_PREMULTIPLIED

4 bytes; for red, green, blue, alpha The color values are premultiplied with the alpha value.

 

GDK_MEMORY_B8G8R8A8

4 bytes; for blue, green, red, alpha.

 

GDK_MEMORY_A8R8G8B8

4 bytes; for alpha, red, green, blue.

 

GDK_MEMORY_R8G8B8A8

4 bytes; for red, green, blue, alpha.

 

GDK_MEMORY_A8B8G8R8

4 bytes; for alpha, blue, green, red.

 

GDK_MEMORY_R8G8B8

3 bytes; for red, green, blue. The data is opaque.

 

GDK_MEMORY_B8G8R8

3 bytes; for blue, green, red. The data is opaque.

 

GDK_MEMORY_N_FORMATS

The number of formats. This value will change as more formats get added, so do not rely on its concrete integer.

 

GDK_MEMORY_DEFAULT

#define GDK_MEMORY_DEFAULT GDK_MEMORY_B8G8R8A8_PREMULTIPLIED

This is the default memory format used by GTK and is the format provided by gdk_texture_download(). It is equal to CAIRO_FORMAT_ARGB32.

Be aware that unlike the GdkMemoryFormat values, this format is different for different endianness.

Property Details

The “height” property

  “height”                   int

The height of the texture, in pixels.

Owner: GdkTexture

Flags: Read / Write / Construct Only

Allowed values: >= 1

Default value: 1


The “width” property

  “width”                    int

The width of the texture, in pixels.

Owner: GdkTexture

Flags: Read / Write / Construct Only

Allowed values: >= 1

Default value: 1

docs/reference/gdk/html/GdkToplevel.html0000664000175000017500000017426214010071761020424 0ustar mclasenmclasen Toplevels: GDK 4 Reference Manual

Toplevels

Toplevels — Interface for toplevel surfaces

Properties

gboolean decorated Read / Write
gboolean deletable Read / Write
GdkFullscreenMode fullscreen-mode Read / Write
gpointer icon-list Read / Write
gboolean modal Read / Write
gboolean shortcuts-inhibited Read
char * startup-id Read / Write
GdkToplevelState state Read
char * title Read / Write
GdkSurface * transient-for Read / Write

Signals

void compute-size Run Last

Types and Values

Object Hierarchy

    GInterface
    ╰── GdkToplevel

Prerequisites

GdkToplevel requires GdkSurface.

Includes

#include <gdk/gdk.h>

Description

A GdkToplevel is a freestanding toplevel surface.

The GdkToplevel interface provides useful APIs for interacting with the windowing system, such as controlling maximization and size of the surface, setting icons and transient parents for dialogs.

Functions

gdk_toplevel_present ()

void
gdk_toplevel_present (GdkToplevel *toplevel,
                      GdkToplevelLayout *layout);

Present toplevel after having processed the GdkToplevelLayout rules. If the toplevel was previously not showing, it will be showed, otherwise it will change layout according to layout .

GDK may emit the 'compute-size' signal to let the user of this toplevel compute the preferred size of the toplevel surface. See “compute-size” for details.

Presenting is asynchronous and the specified layout parameters are not guaranteed to be respected.

Parameters

toplevel

the GdkToplevel to show

 

layout

the GdkToplevelLayout object used to layout

 

gdk_toplevel_minimize ()

gboolean
gdk_toplevel_minimize (GdkToplevel *toplevel);

Asks to minimize the toplevel .

The windowing system may choose to ignore the request.

Parameters

toplevel

a GdkToplevel

 

Returns

TRUE if the surface was minimized


gdk_toplevel_lower ()

gboolean
gdk_toplevel_lower (GdkToplevel *toplevel);

Asks to lower the toplevel below other windows.

The windowing system may choose to ignore the request.

Parameters

toplevel

a GdkToplevel

 

Returns

TRUE if the surface was lowered


gdk_toplevel_focus ()

void
gdk_toplevel_focus (GdkToplevel *toplevel,
                    guint32 timestamp);

Sets keyboard focus to surface .

In most cases, gtk_window_present_with_time() should be used on a GtkWindow, rather than calling this function.

Parameters

toplevel

a GdkToplevel

 

timestamp

timestamp of the event triggering the surface focus

 

gdk_toplevel_get_state ()

GdkToplevelState
gdk_toplevel_get_state (GdkToplevel *toplevel);

Gets the bitwise OR of the currently active surface state flags, from the GdkToplevelState enumeration.

Parameters

toplevel

a GdkToplevel

 

Returns

surface state bitfield


gdk_toplevel_set_title ()

void
gdk_toplevel_set_title (GdkToplevel *toplevel,
                        const char *title);

Sets the title of a toplevel surface, to be displayed in the titlebar, in lists of windows, etc.

Parameters

toplevel

a GdkToplevel

 

title

title of surface

 

gdk_toplevel_set_startup_id ()

void
gdk_toplevel_set_startup_id (GdkToplevel *toplevel,
                             const char *startup_id);

When using GTK, typically you should use gtk_window_set_startup_id() instead of this low-level function.

Parameters

toplevel

a GdkToplevel

 

startup_id

a string with startup-notification identifier

 

gdk_toplevel_set_transient_for ()

void
gdk_toplevel_set_transient_for (GdkToplevel *toplevel,
                                GdkSurface *parent);

Indicates to the window manager that surface is a transient dialog associated with the application surface parent . This allows the window manager to do things like center surface on parent and keep surface above parent .

See gtk_window_set_transient_for() if you’re using GtkWindow or GtkDialog.

Parameters

toplevel

a GdkToplevel

 

parent

another toplevel GdkSurface

 

gdk_toplevel_set_modal ()

void
gdk_toplevel_set_modal (GdkToplevel *toplevel,
                        gboolean modal);

The application can use this hint to tell the window manager that a certain surface has modal behaviour. The window manager can use this information to handle modal surfaces in a special way.

You should only use this on surfaces for which you have previously called gdk_toplevel_set_transient_for().

Parameters

toplevel

A toplevel surface

 

modal

TRUE if the surface is modal, FALSE otherwise.

 

gdk_toplevel_set_icon_list ()

void
gdk_toplevel_set_icon_list (GdkToplevel *toplevel,
                            GList *surfaces);

Sets a list of icons for the surface.

One of these will be used to represent the surface in iconic form. The icon may be shown in window lists or task bars. Which icon size is shown depends on the window manager. The window manager can scale the icon but setting several size icons can give better image quality.

Note that some platforms don't support surface icons.

Parameters

toplevel

a GdkToplevel

 

surfaces

A list of textures to use as icon, of different sizes.

[transfer none][element-type GdkTexture]

gdk_toplevel_show_window_menu ()

gboolean
gdk_toplevel_show_window_menu (GdkToplevel *toplevel,
                               GdkEvent *event);

Asks the windowing system to show the window menu.

The window menu is the menu shown when right-clicking the titlebar on traditional windows managed by the window manager. This is useful for windows using client-side decorations, activating it with a right-click on the window decorations.

Parameters

toplevel

a GdkToplevel

 

event

a GdkEvent to show the menu for

 

Returns

TRUE if the window menu was shown and FALSE otherwise.


gdk_toplevel_set_decorated ()

void
gdk_toplevel_set_decorated (GdkToplevel *toplevel,
                            gboolean decorated);

Setting decorated to FALSE hints the desktop environment that the surface has its own, client-side decorations and does not need to have window decorations added.

Parameters

toplevel

a GdkToplevel

 

decorated

TRUE to request decorations

 

gdk_toplevel_set_deletable ()

void
gdk_toplevel_set_deletable (GdkToplevel *toplevel,
                            gboolean deletable);

Setting deletable to TRUE hints the desktop environment that it should offer the user a way to close the surface.

Parameters

toplevel

a GdkToplevel

 

deletable

TRUE to request a delete button

 

gdk_toplevel_supports_edge_constraints ()

gboolean
gdk_toplevel_supports_edge_constraints
                               (GdkToplevel *toplevel);

Returns whether the desktop environment supports tiled window states.

Parameters

toplevel

a GdkToplevel

 

Returns

TRUE if the desktop environment supports tiled window states


gdk_toplevel_inhibit_system_shortcuts ()

void
gdk_toplevel_inhibit_system_shortcuts (GdkToplevel *toplevel,
                                       GdkEvent *event);

Requests that the toplevel inhibit the system shortcuts, asking the desktop environment/windowing system to let all keyboard events reach the surface, as long as it is focused, instead of triggering system actions.

If granted, the rerouting remains active until the default shortcuts processing is restored with gdk_toplevel_restore_system_shortcuts(), or the request is revoked by the desktop environment, windowing system or the user.

A typical use case for this API is remote desktop or virtual machine viewers which need to inhibit the default system keyboard shortcuts so that the remote session or virtual host gets those instead of the local environment.

The windowing system or desktop environment may ask the user to grant or deny the request or even choose to ignore the request entirely.

The caller can be notified whenever the request is granted or revoked by listening to the GdkToplevel::shortcuts-inhibited property.

Parameters

toplevel

the GdkToplevel requesting system keyboard shortcuts

 

event

the GdkEvent that is triggering the inhibit request, or NULL if none is available.

[nullable]

gdk_toplevel_restore_system_shortcuts ()

void
gdk_toplevel_restore_system_shortcuts (GdkToplevel *toplevel);

Restore default system keyboard shortcuts which were previously requested to be inhibited by gdk_toplevel_inhibit_system_shortcuts().

Parameters

toplevel

a GdkToplevel

 

gdk_toplevel_begin_resize ()

void
gdk_toplevel_begin_resize (GdkToplevel *toplevel,
                           GdkSurfaceEdge edge,
                           GdkDevice *device,
                           int button,
                           double x,
                           double y,
                           guint32 timestamp);

Begins an interactive resize operation (for a toplevel surface). You might use this function to implement a “window resize grip.”

Parameters

toplevel

a GdkToplevel

 

edge

the edge or corner from which the drag is started

 

device

the device used for the operation.

[nullable]

button

the button being used to drag, or 0 for a keyboard-initiated drag

 

x

surface X coordinate of mouse click that began the drag

 

y

surface Y coordinate of mouse click that began the drag

 

timestamp

timestamp of mouse click that began the drag (use gdk_event_get_time())

 

gdk_toplevel_begin_move ()

void
gdk_toplevel_begin_move (GdkToplevel *toplevel,
                         GdkDevice *device,
                         int button,
                         double x,
                         double y,
                         guint32 timestamp);

Begins an interactive move operation (for a toplevel surface). You might use this function to implement draggable titlebars.

Parameters

toplevel

a GdkToplevel

 

device

the device used for the operation

 

button

the button being used to drag, or 0 for a keyboard-initiated drag

 

x

surface X coordinate of mouse click that began the drag

 

y

surface Y coordinate of mouse click that began the drag

 

timestamp

timestamp of mouse click that began the drag

 

Types and Values

GdkToplevel

typedef struct _GdkToplevel GdkToplevel;

An interface for top level surfaces.


enum GdkToplevelState

Specifies the state of a toplevel surface.

On platforms that support information about individual edges, the GDK_TOPLEVEL_STATE_TILED state will be set whenever any of the individual tiled states is set. On platforms that lack that support, the tiled state will give an indication of tiledness without any of the per-edge states being set.

Members

GDK_TOPLEVEL_STATE_MINIMIZED

the surface is minimized

 

GDK_TOPLEVEL_STATE_MAXIMIZED

the surface is maximized

 

GDK_TOPLEVEL_STATE_STICKY

the surface is sticky

 

GDK_TOPLEVEL_STATE_FULLSCREEN

the surface is maximized without decorations

 

GDK_TOPLEVEL_STATE_ABOVE

the surface is kept above other surfaces

 

GDK_TOPLEVEL_STATE_BELOW

the surface is kept below other surfaces

 

GDK_TOPLEVEL_STATE_FOCUSED

the surface is presented as focused (with active decorations)

 

GDK_TOPLEVEL_STATE_TILED

the surface is in a tiled state

 

GDK_TOPLEVEL_STATE_TOP_TILED

whether the top edge is tiled

 

GDK_TOPLEVEL_STATE_TOP_RESIZABLE

whether the top edge is resizable

 

GDK_TOPLEVEL_STATE_RIGHT_TILED

whether the right edge is tiled

 

GDK_TOPLEVEL_STATE_RIGHT_RESIZABLE

whether the right edge is resizable

 

GDK_TOPLEVEL_STATE_BOTTOM_TILED

whether the bottom edge is tiled

 

GDK_TOPLEVEL_STATE_BOTTOM_RESIZABLE

whether the bottom edge is resizable

 

GDK_TOPLEVEL_STATE_LEFT_TILED

whether the left edge is tiled

 

GDK_TOPLEVEL_STATE_LEFT_RESIZABLE

whether the left edge is resizable

 

enum GdkFullscreenMode

Indicates which monitor (in a multi-head setup) a surface should span over when in fullscreen mode.

Members

GDK_FULLSCREEN_ON_CURRENT_MONITOR

Fullscreen on current monitor only.

 

GDK_FULLSCREEN_ON_ALL_MONITORS

Span across all monitors when fullscreen.

 

enum GdkSurfaceEdge

Determines a surface edge or corner.

Members

GDK_SURFACE_EDGE_NORTH_WEST

the top left corner.

 

GDK_SURFACE_EDGE_NORTH

the top edge.

 

GDK_SURFACE_EDGE_NORTH_EAST

the top right corner.

 

GDK_SURFACE_EDGE_WEST

the left edge.

 

GDK_SURFACE_EDGE_EAST

the right edge.

 

GDK_SURFACE_EDGE_SOUTH_WEST

the lower left corner.

 

GDK_SURFACE_EDGE_SOUTH

the lower edge.

 

GDK_SURFACE_EDGE_SOUTH_EAST

the lower right corner.

 

Property Details

The “decorated” property

  “decorated”                gboolean

Decorated.

Owner: GdkToplevel

Flags: Read / Write

Default value: FALSE


The “deletable” property

  “deletable”                gboolean

Deletable.

Owner: GdkToplevel

Flags: Read / Write

Default value: FALSE


The “fullscreen-mode” property

  “fullscreen-mode”          GdkFullscreenMode

Fullscreen mode.

Owner: GdkToplevel

Flags: Read / Write

Default value: GDK_FULLSCREEN_ON_CURRENT_MONITOR


The “icon-list” property

  “icon-list”                gpointer

The list of icon textures.

Owner: GdkToplevel

Flags: Read / Write


The “modal” property

  “modal”                    gboolean

Whether the surface is modal.

Owner: GdkToplevel

Flags: Read / Write

Default value: FALSE


The “shortcuts-inhibited” property

  “shortcuts-inhibited”      gboolean

Whether keyboard shortcuts are inhibited.

Owner: GdkToplevel

Flags: Read

Default value: FALSE


The “startup-id” property

  “startup-id”               char *

The startup ID of the surface.

Owner: GdkToplevel

Flags: Read / Write

Default value: NULL


The “state” property

  “state”                    GdkToplevelState

State.

Owner: GdkToplevel

Flags: Read


The “title” property

  “title”                    char *

The title of the surface.

Owner: GdkToplevel

Flags: Read / Write

Default value: NULL


The “transient-for” property

  “transient-for”            GdkSurface *

The transient parent of the surface.

Owner: GdkToplevel

Flags: Read / Write

Signal Details

The “compute-size” signal

void
user_function (GdkToplevel     *toplevel,
               GdkToplevelSize *size,
               gpointer         user_data)

Compute the desired size of the toplevel, given the information passed via the GdkToplevelSize object.

It will normally be emitted during or after gdk_toplevel_present(), depending on the configuration received by the windowing system. It may also be emitted at any other point in time, in response to the windowing system spontaneously changing the configuration.

It is the responsibility of the GdkToplevel user to handle this signal; failing to do so will result in an arbitrary size being used as a result.

Parameters

toplevel

a GdkToplevel

 

size

a GdkToplevelSize.

[type Gdk.ToplevelSize][out caller-allocates]

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

See Also

GdkSurface, GdkPopup

docs/reference/gdk/html/GdkToplevelLayout.html0000664000175000017500000006711114010071761021614 0ustar mclasenmclasen GdkToplevelLayout: GDK 4 Reference Manual

GdkToplevelLayout

GdkToplevelLayout — Information for presenting toplevels

Types and Values

Object Hierarchy

    GBoxed
    ╰── GdkToplevelLayout

Includes

#include <gdk/gdk.h>

Description

Toplevel surfaces are sovereign windows that can be presented to the user in various states (maximized, on all workspaces, etc).

The GdkToplevelLayout struct contains information that is necessary to do so, and is passed to gdk_toplevel_present().

Functions

gdk_toplevel_layout_new ()

GdkToplevelLayout *
gdk_toplevel_layout_new (void);

Create a toplevel layout description.

Used together with gdk_toplevel_present() to describe how a toplevel surface should be placed and behave on-screen.

The size is in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()).

[constructor]

Returns

newly created instance of GdkToplevelLayout.

[transfer full]


gdk_toplevel_layout_ref ()

GdkToplevelLayout *
gdk_toplevel_layout_ref (GdkToplevelLayout *layout);

Increases the reference count of layout .

Parameters

layout

a GdkToplevelLayout

 

Returns

the same layout


gdk_toplevel_layout_unref ()

void
gdk_toplevel_layout_unref (GdkToplevelLayout *layout);

Decreases the reference count of layout .

Parameters

layout

a GdkToplevelLayout

 

gdk_toplevel_layout_copy ()

GdkToplevelLayout *
gdk_toplevel_layout_copy (GdkToplevelLayout *layout);

Create a new GdkToplevelLayout and copy the contents of layout into it.

Parameters

layout

a GdkToplevelLayout

 

Returns

a copy of layout .

[transfer full]


gdk_toplevel_layout_equal ()

gboolean
gdk_toplevel_layout_equal (GdkToplevelLayout *layout,
                           GdkToplevelLayout *other);

Check whether layout and other has identical layout properties.

Parameters

layout

a GdkToplevelLayout

 

other

another GdkToplevelLayout

 

Returns

TRUE if layout and other have identical layout properties, otherwise FALSE.


gdk_toplevel_layout_set_maximized ()

void
gdk_toplevel_layout_set_maximized (GdkToplevelLayout *layout,
                                   gboolean maximized);

Sets whether the layout should cause the surface to be maximized when presented.

Parameters

layout

a GdkToplevelLayout

 

maximized

TRUE to maximize

 

gdk_toplevel_layout_get_maximized ()

gboolean
gdk_toplevel_layout_get_maximized (GdkToplevelLayout *layout,
                                   gboolean *maximized);

If the layout specifies whether to the toplevel should go maximized, the value pointed to by maximized is set to TRUE if it should go fullscreen, or FALSE, if it should go unmaximized.

Parameters

layout

a GdkToplevelLayout

 

maximized

set to TRUE if the toplevel should be maximized.

[out]

Returns

whether the layout specifies the maximized state for the toplevel


gdk_toplevel_layout_set_fullscreen ()

void
gdk_toplevel_layout_set_fullscreen (GdkToplevelLayout *layout,
                                    gboolean fullscreen,
                                    GdkMonitor *monitor);

Sets whether the layout should cause the surface to be fullscreen when presented.

Parameters

layout

a GdkToplevelLayout

 

fullscreen

TRUE to fullscreen the surface

 

monitor

the monitor to fullscreen on.

[nullable]

gdk_toplevel_layout_get_fullscreen ()

gboolean
gdk_toplevel_layout_get_fullscreen (GdkToplevelLayout *layout,
                                    gboolean *fullscreen);

If the layout specifies whether to the toplevel should go fullscreen, the value pointed to by fullscreen is set to TRUE if it should go fullscreen, or FALSE, if it should go unfullscreen.

Parameters

layout

a GdkToplevelLayout

 

fullscreen

location to store whether the toplevel should be fullscreen.

[out]

Returns

whether the layout specifies the fullscreen state for the toplevel


gdk_toplevel_layout_get_fullscreen_monitor ()

GdkMonitor *
gdk_toplevel_layout_get_fullscreen_monitor
                               (GdkToplevelLayout *layout);

Returns the monitor that the layout is fullscreening the surface on.

Parameters

layout

a GdkToplevelLayout

 

Returns

the monitor on which layout fullscreens.

[nullable][transfer none]


gdk_toplevel_layout_set_resizable ()

void
gdk_toplevel_layout_set_resizable (GdkToplevelLayout *layout,
                                   gboolean resizable);

Sets whether the layout should allow the user to resize the surface after it has been presented.

Parameters

layout

a GdkToplevelLayout

 

resizable

TRUE to allow resizing

 

gdk_toplevel_layout_get_resizable ()

gboolean
gdk_toplevel_layout_get_resizable (GdkToplevelLayout *layout);

Returns whether the layout should allow the user to resize the surface.

Parameters

layout

a GdkToplevelLayout

 

Returns

TRUE if the layout is resizable

Types and Values

GdkToplevelLayout

typedef struct _GdkToplevelLayout GdkToplevelLayout;

Struct containing information for gdk_toplevel_present()

docs/reference/gdk/html/gdk4-GdkToplevelSize.html0000664000175000017500000003354614010071761022105 0ustar mclasenmclasen GdkToplevelSize: GDK 4 Reference Manual

GdkToplevelSize

GdkToplevelSize — Information for computing toplevel size

Types and Values

Includes

#include <gdk/gdk.h>

Description

The GdkToplevelSIze struct contains information that may be useful for users of GdkToplevel to compute a surface size. It also carries information back with the computational result.

Functions

gdk_toplevel_size_get_bounds ()

void
gdk_toplevel_size_get_bounds (GdkToplevelSize *size,
                              int *bounds_width,
                              int *bounds_height);

Retrieves the bounds the toplevel is placed within.

The bounds represent the largest size a toplevel may have while still being able to fit within some type of boundary. Depending on the backend, this may be equivalent to the dimensions of the work area or the monitor on which the window is being presented on, or something else that limits the way a toplevel can be presented.

Parameters

size

a GdkToplevelSize

 

bounds_width

return location for width.

[out]

bounds_height

return location for height.

[out]

gdk_toplevel_size_set_size ()

void
gdk_toplevel_size_set_size (GdkToplevelSize *size,
                            int width,
                            int height);

Sets the size the toplevel prefers to be resized to. The size should be within the bounds (see gdk_toplevel_size_get_bounds()). The set size should be considered as a hint, and should not be assumed to be respected by the windowing system, or backend.

Parameters

size

a GdkToplevelSize

 

width

the width

 

height

the height

 

gdk_toplevel_size_set_min_size ()

void
gdk_toplevel_size_set_min_size (GdkToplevelSize *size,
                                int min_width,
                                int min_height);

The minimum size corresponds to the limitations the toplevel can be shrunk to, without resulting in incorrect painting. A user of a GdkToplevel should calculate these given both the existing size, and the bounds retrieved from the GdkToplevelSize object.

The minimum size should be within the bounds (see gdk_toplevel_size_get_bounds()).

Parameters

size

a GdkToplevelSize

 

min_width

the minimum width

 

min_height

the minimum height

 

gdk_toplevel_size_set_shadow_width ()

void
gdk_toplevel_size_set_shadow_width (GdkToplevelSize *size,
                                    int left,
                                    int right,
                                    int top,
                                    int bottom);

The shadow width corresponds to the part of the computed surface size that would consist of the shadow margin surrounding the window, would there be any.

Parameters

size

a GdkToplevelSize

 

left

width of the left part of the shadow

 

right

width of the right part of the shadow

 

top

height of the top part of the shadow

 

bottom

height of the bottom part of the shadow

 

Types and Values

GdkToplevelSize

typedef struct _GdkToplevelSize GdkToplevelSize;

Struct containing information for computing the size of a GdkToplevel.

docs/reference/gdk/html/index.html0000664000175000017500000002066114010071761017304 0ustar mclasenmclasen GDK 4 Reference Manual: GDK 4 Reference Manual

This document is for the GDK 4 library, version 4.0.3 . The latest versions can be found online at https://developer.gnome.org/gdk4/. If you are looking for the older GDK 3 series of libraries, see https://developer.gnome.org/gdk3/.


API Reference
General — Library initialization and versioning
GdkDisplayManager — Maintains a list of all open GdkDisplays
GdkDisplay — Controls a set of monitors and their associated input devices
GdkSeat — Object representing a user seat
GdkDevice — Object representing an input device
GtkDevicePad — Pad device interface
GdkMonitor — Object representing an output
GdkRectangle — Simple graphical data type
GdkTexture — Pixel data
GdkPaintable — An interface for a paintable region
GdkRGBA — RGBA colors
Cursors — Named and texture cursors
Surfaces — Onscreen display areas in the target window system
Toplevels — Interface for toplevel surfaces
GdkToplevelLayout — Information for presenting toplevels
GdkToplevelSize — Information for computing toplevel size
Popups — Interface for popup surfaces
GdkPopupLayout — Information for presenting popups
GdkFrameClock — Synchronizes painting to a surface
Frame timings — Object holding timing information for a single frame
GdkDrawContext — Base class for draw contexts
GdkGLContext — OpenGL draw context
GdkVulkanContext — Vulkan draw context
GdkCairoContext — Cairo draw context
Events — Functions for handling events from the window system
Key Values — Functions for manipulating keyboard codes
Clipboards — Share data between applications for Copy-and-Paste
Drag And Drop — Functions for controlling drag and drop handling
Content Formats — Advertising and negotiating of content exchange formats
GdkContentProvider — Provides content for data transfer between applications
GdkContentSerializer — Serialize content for transfer
GdkContentDeserializer — Deserialize content for transfer
GdkPixbuf Interaction — Functions for obtaining pixbufs
Pango Interaction — Using Pango in GDK
Cairo Interaction — Functions to support using cairo
GDK Platform Support
Application launching — Startup notification for applications
X Window System Interaction — X backend-specific functions
Wayland Interaction — Wayland backend-specific functions
Index of all symbols
Annotation Glossary
docs/reference/gdk/html/ch01s03.html0000664000175000017500000000273414010071761017257 0ustar mclasenmclasen : GDK 4 Reference Manual
docs/reference/gdk/html/ch01s04.html0000664000175000017500000000277014010071761017260 0ustar mclasenmclasen : GDK 4 Reference Manual
docs/reference/gdk/html/gdk4-GdkFrameTimings.html0000664000175000017500000005140614010071761022040 0ustar mclasenmclasen Frame timings: GDK 4 Reference Manual

Frame timings

Frame timings — Object holding timing information for a single frame

Types and Values

Includes

#include <gdk/gdk.h>

Description

A GdkFrameTimings object holds timing information for a single frame of the application’s displays. To retrieve GdkFrameTimings objects, use gdk_frame_clock_get_timings() or gdk_frame_clock_get_current_timings(). The information in GdkFrameTimings is useful for precise synchronization of video with the event or audio streams, and for measuring quality metrics for the application’s display, such as latency and jitter.

Functions

gdk_frame_timings_ref ()

GdkFrameTimings *
gdk_frame_timings_ref (GdkFrameTimings *timings);

Increases the reference count of timings .

Parameters

timings

a GdkFrameTimings

 

Returns

timings


gdk_frame_timings_unref ()

void
gdk_frame_timings_unref (GdkFrameTimings *timings);

Decreases the reference count of timings . If timings is no longer referenced, it will be freed.

Parameters

timings

a GdkFrameTimings

 

gdk_frame_timings_get_frame_counter ()

gint64
gdk_frame_timings_get_frame_counter (GdkFrameTimings *timings);

Gets the frame counter value of the GdkFrameClock when this this frame was drawn.

Parameters

timings

a GdkFrameTimings

 

Returns

the frame counter value for this frame


gdk_frame_timings_get_complete ()

gboolean
gdk_frame_timings_get_complete (GdkFrameTimings *timings);

The timing information in a GdkFrameTimings is filled in incrementally as the frame as drawn and passed off to the window system for processing and display to the user. The accessor functions for GdkFrameTimings can return 0 to indicate an unavailable value for two reasons: either because the information is not yet available, or because it isn't available at all. Once gdk_frame_timings_get_complete() returns TRUE for a frame, you can be certain that no further values will become available and be stored in the GdkFrameTimings.

Parameters

timings

a GdkFrameTimings

 

Returns

TRUE if all information that will be available for the frame has been filled in.


gdk_frame_timings_get_frame_time ()

gint64
gdk_frame_timings_get_frame_time (GdkFrameTimings *timings);

Returns the frame time for the frame. This is the time value that is typically used to time animations for the frame. See gdk_frame_clock_get_frame_time().

Parameters

timings

A GdkFrameTimings

 

Returns

the frame time for the frame, in the timescale of g_get_monotonic_time()


gdk_frame_timings_get_presentation_time ()

gint64
gdk_frame_timings_get_presentation_time
                               (GdkFrameTimings *timings);

Reurns the presentation time. This is the time at which the frame became visible to the user.

Parameters

timings

a GdkFrameTimings

 

Returns

the time the frame was displayed to the user, in the timescale of g_get_monotonic_time(), or 0 if no presentation time is available. See gdk_frame_timings_get_complete()


gdk_frame_timings_get_refresh_interval ()

gint64
gdk_frame_timings_get_refresh_interval
                               (GdkFrameTimings *timings);

Gets the natural interval between presentation times for the display that this frame was displayed on. Frame presentation usually happens during the “vertical blanking interval”.

Parameters

timings

a GdkFrameTimings

 

Returns

the refresh interval of the display, in microseconds, or 0 if the refresh interval is not available. See gdk_frame_timings_get_complete().


gdk_frame_timings_get_predicted_presentation_time ()

gint64
gdk_frame_timings_get_predicted_presentation_time
                               (GdkFrameTimings *timings);

Gets the predicted time at which this frame will be displayed. Although no predicted time may be available, if one is available, it will be available while the frame is being generated, in contrast to gdk_frame_timings_get_presentation_time(), which is only available after the frame has been presented. In general, if you are simply animating, you should use gdk_frame_clock_get_frame_time() rather than this function, but this function is useful for applications that want exact control over latency. For example, a movie player may want this information for Audio/Video synchronization.

Parameters

timings

a GdkFrameTimings

 

Returns

The predicted time at which the frame will be presented, in the timescale of g_get_monotonic_time(), or 0 if no predicted presentation time is available.

Types and Values

GdkFrameTimings

typedef struct _GdkFrameTimings GdkFrameTimings;

The GdkFrameTimings struct contains only private fields and should not be accessed directly.

docs/reference/gdk/html/gdk4-General.html0000664000175000017500000002546314010071761020406 0ustar mclasenmclasen General: GDK 4 Reference Manual

General

General — Library initialization and versioning

Includes

#include <gdk/gdk.h>

Description

This section describes miscellaneous macros and utility functions related to library versioning, as well as deprecation facilities.

The GDK and GTK headers annotate deprecated APIs in a way that produces compiler warnings if these deprecated APIs are used. The warnings can be turned off by defining the macro GDK_DISABLE_DEPRECATION_WARNINGS before including the glib.h header.

GDK and GTK also provide support for building applications against defined subsets of deprecated or new APIs. Define the macro GDK_VERSION_MIN_REQUIRED to specify up to what version you want to receive warnings about deprecated APIs. Define the macro GDK_VERSION_MAX_ALLOWED to specify the newest version whose API you want to use.

Functions

Types and Values

GDK_WINDOWING_X11

#define GDK_WINDOWING_X11

The GDK_WINDOWING_X11 macro is defined if the X11 backend is supported.

Use this macro to guard code that is specific to the X11 backend.


GDK_WINDOWING_WIN32

#define GDK_WINDOWING_WIN32

The GDK_WINDOWING_WIN32 macro is defined if the Win32 backend is supported.

Use this macro to guard code that is specific to the Win32 backend.


GDK_WINDOWING_MACOS

#define GDK_WINDOWING_MACOS

The GDK_WINDOWING_MACOS macro is defined if the MacOS backend is supported.

Use this macro to guard code that is specific to the MacOS backend.


GDK_WINDOWING_WAYLAND

#define GDK_WINDOWING_WAYLAND

The GDK_WINDOWING_WAYLAND macro is defined if the Wayland backend is supported.

Use this macro to guard code that is specific to the Wayland backend.


GDK_MAJOR_VERSION

#define GDK_MAJOR_VERSION (4)

The major version component of the library's version, e.g. "1" for "1.2.3".


GDK_MICRO_VERSION

#define GDK_MICRO_VERSION (3)

The micro version component of the library's version, e.g. "3" for "1.2.3".


GDK_MINOR_VERSION

#define GDK_MINOR_VERSION (0)

The minor version component of the library's version, e.g. "2" for "1.2.3".


GDK_VERSION_4_0

#define GDK_VERSION_4_0        (G_ENCODE_VERSION (4, 0))

A macro that evaluates to the 4.0 version of GDK, in a format that can be used by the C pre-processor.


GDK_VERSION_MIN_REQUIRED

# define GDK_VERSION_MIN_REQUIRED      (GDK_VERSION_CUR_STABLE)

A macro that should be defined by the user prior to including the gdk.h header.

The definition should be one of the predefined GDK version macros: GDK_VERSION_4_0, GDK_VERSION_4_2,...

This macro defines the lower bound for the GDK API to use.

If a function has been deprecated in a newer version of GDK, it is possible to use this symbol to avoid the compiler warnings without disabling warning for every deprecated function.


GDK_VERSION_MAX_ALLOWED

#  define GDK_VERSION_MAX_ALLOWED      GDK_VERSION_MIN_REQUIRED

A macro that should be defined by the user prior to including the gdk.h header.

The definition should be one of the predefined GDK version macros: GDK_VERSION_4_0, GDK_VERSION_4_2,...

This macro defines the upper bound for the GDK API to use.

If a function has been introduced in a newer version of GDK, it is possible to use this symbol to get compiler warnings when trying to use that function.


GDK_DISABLE_DEPRECATION_WARNINGS

#define GDK_DISABLE_DEPRECATION_WARNINGS

A macro that should be defined before including the gdk.h header.

If this symbol is defined, no compiler warnings will be produced for uses of deprecated GDK and GTK APIs.

docs/reference/gdk/html/GdkVulkanContext.html0000664000175000017500000006470414010071761021436 0ustar mclasenmclasen GdkVulkanContext: GDK 4 Reference Manual

GdkVulkanContext

GdkVulkanContext — Vulkan draw context

Signals

void images-updated Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkDrawContext
        ╰── GdkVulkanContext

Implemented Interfaces

GdkVulkanContext implements GInitable.

Includes

#include <gdk/gdk.h>

Description

GdkVulkanContext is an object representing the platform-specific Vulkan draw context.

GdkVulkanContexts are created for a GdkSurface using gdk_surface_create_vulkan_context(), and the context will match the the characteristics of the surface.

Support for GdkVulkanContext is platform-specific, context creation can fail, returning NULL context.

Functions

gdk_vulkan_context_get_device ()

VkDevice
gdk_vulkan_context_get_device (GdkVulkanContext *context);

Gets the Vulkan device that this context is using.

Parameters

context

a GdkVulkanContext

 

Returns

the VkDevice.

[transfer none]


gdk_vulkan_context_get_draw_index ()

uint32_t
gdk_vulkan_context_get_draw_index (GdkVulkanContext *context);

Gets the index of the image that is currently being drawn.

This function can only be used between gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() calls.

Parameters

context

a GdkVulkanContext

 

Returns

the index of the images that is being drawn


gdk_vulkan_context_get_draw_semaphore ()

VkSemaphore
gdk_vulkan_context_get_draw_semaphore (GdkVulkanContext *context);

Gets the Vulkan semaphore that protects access to the image that is currently being drawn.

This function can only be used between gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() calls.

Parameters

context

a GdkVulkanContext

 

Returns

the VkSemaphore.

[transfer none]


gdk_vulkan_context_get_image ()

VkImage
gdk_vulkan_context_get_image (GdkVulkanContext *context,
                              guint id);

Gets the image with index id that this context is using.

Parameters

context

a GdkVulkanContext

 

id

the index of the image to return

 

Returns

the VkImage.

[transfer none]


gdk_vulkan_context_get_image_format ()

VkFormat
gdk_vulkan_context_get_image_format (GdkVulkanContext *context);

Gets the image format that this context is using.

Parameters

context

a GdkVulkanContext

 

Returns

the VkFormat.

[transfer none]


gdk_vulkan_context_get_instance ()

VkInstance
gdk_vulkan_context_get_instance (GdkVulkanContext *context);

Gets the Vulkan instance that is associated with context .

Parameters

context

a GdkVulkanContext

 

Returns

the VkInstance.

[transfer none]


gdk_vulkan_context_get_n_images ()

uint32_t
gdk_vulkan_context_get_n_images (GdkVulkanContext *context);

Gets the number of images that this context is using in its swap chain.

Parameters

context

a GdkVulkanContext

 

Returns

the number of images


gdk_vulkan_context_get_physical_device ()

VkPhysicalDevice
gdk_vulkan_context_get_physical_device
                               (GdkVulkanContext *context);

Gets the Vulkan physical device that this context is using.

Parameters

context

a GdkVulkanContext

 

Returns

the VkPhysicalDevice.

[transfer none]


gdk_vulkan_context_get_queue ()

VkQueue
gdk_vulkan_context_get_queue (GdkVulkanContext *context);

Gets the Vulkan queue that this context is using.

Parameters

context

a GdkVulkanContext

 

Returns

the VkQueue.

[transfer none]


gdk_vulkan_context_get_queue_family_index ()

uint32_t
gdk_vulkan_context_get_queue_family_index
                               (GdkVulkanContext *context);

Gets the family index for the queue that this context is using. See vkGetPhysicalDeviceQueueFamilyProperties().

Parameters

context

a GdkVulkanContext

 

Returns

the index

Types and Values

GdkVulkanContext

typedef struct _GdkVulkanContext GdkVulkanContext;

The GdkVulkanContext struct contains only private fields and should not be accessed directly.


enum GdkVulkanError

Error enumeration for GdkVulkanContext.

Members

GDK_VULKAN_ERROR_UNSUPPORTED

Vulkan is not supported on this backend or has not been compiled in.

 

GDK_VULKAN_ERROR_NOT_AVAILABLE

Vulkan support is not available on this Surface

 

Signal Details

The “images-updated” signal

void
user_function (GdkVulkanContext *context,
               gpointer          user_data)

This signal is emitted when the images managed by this context have changed. Usually this means that the swapchain had to be recreated, for example in response to a change of the surface size.

Parameters

context

the object on which the signal is emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/annotation-glossary.html0000664000175000017500000001343214010071761022206 0ustar mclasenmclasen Annotation Glossary: GDK 4 Reference Manual

Annotation Glossary

A

allow-none

NULL is OK, both for passing and for returning.

array

Parameter points to an array of items.

C

closure

This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.

constructor

This symbol is a constructor, not a static method.

E

element-type

Generics and defining elements of containers and arrays.

N

not nullable

NULL must not be passed as the value in, out, in-out; or as a return value.

nullable

NULL may be passed as the value in, out, in-out; or as a return value.

O

optional

NULL may be passed instead of a pointer to a location.

out

Parameter for returning results. Default is transfer full.

out caller-allocates

Out parameter, where caller must allocate storage.

R

rename-to

Rename the original symbol's name to SYMBOL.

S

scope async

The callback is valid until first called.

skip

Exposed in C code, not necessarily available in other languages.

T

transfer container

Free data container after the code is done.

transfer full

Free data after the code is done.

transfer none

Don't free data after the code is done.

type

Override the parsed C type with given type.

docs/reference/gdk/html/gdk4-GdkCairoContext.html0000664000175000017500000001626414010071761022060 0ustar mclasenmclasen GdkCairoContext: GDK 4 Reference Manual

GdkCairoContext

GdkCairoContext — Cairo draw context

Types and Values

Includes

#include <gdk/gdk.h>

Description

GdkCairoContext is an object representing the platform-specific draw context.

GdkCairoContexts are created for a GdkDisplay using gdk_surface_create_cairo_context(), and the context can then be used to draw on that GdkSurface.

Functions

gdk_cairo_context_cairo_create ()

cairo_t *
gdk_cairo_context_cairo_create (GdkCairoContext *self);

Retrieves a Cairo context to be used to draw on the GdkSurface of context . A call to gdk_draw_context_begin_frame() with this context must have been done or this function will return NULL.

The returned context is guaranteed to be valid until gdk_draw_context_end_frame() is called.

Parameters

self

a GdkCairoContext that is currently drawing

 

Returns

a Cairo context to be used to draw the contents of the GdkSurface. NULL is returned when context is not drawing.

[transfer full][nullable]

Types and Values

GdkCairoContext

typedef struct _GdkCairoContext GdkCairoContext;

The GdkCairoContext struct contains only private fields and should not be accessed directly.

docs/reference/gdk/html/gdk4-Events.html0000664000175000017500000037557314010071761020307 0ustar mclasenmclasen Events: GDK 4 Reference Manual

Events

Events — Functions for handling events from the window system

Functions

GdkEvent * gdk_event_ref ()
void gdk_event_unref ()
GdkEventType gdk_event_get_event_type ()
GdkSurface * gdk_event_get_surface ()
GdkDevice * gdk_event_get_device ()
GdkDeviceTool * gdk_event_get_device_tool ()
guint32 gdk_event_get_time ()
GdkDisplay * gdk_event_get_display ()
GdkSeat * gdk_event_get_seat ()
GdkEventSequence * gdk_event_get_event_sequence ()
GdkModifierType gdk_event_get_modifier_state ()
gboolean gdk_event_get_position ()
gboolean gdk_event_get_axes ()
gboolean gdk_event_get_axis ()
GdkTimeCoord * gdk_event_get_history ()
gboolean gdk_event_get_pointer_emulated ()
gboolean gdk_event_triggers_context_menu ()
guint gdk_button_event_get_button ()
GdkScrollDirection gdk_scroll_event_get_direction ()
void gdk_scroll_event_get_deltas ()
gboolean gdk_scroll_event_is_stop ()
guint gdk_key_event_get_keyval ()
guint gdk_key_event_get_keycode ()
GdkModifierType gdk_key_event_get_consumed_modifiers ()
guint gdk_key_event_get_layout ()
guint gdk_key_event_get_level ()
gboolean gdk_key_event_is_modifier ()
GdkKeyMatch gdk_key_event_matches ()
gboolean gdk_key_event_get_match ()
gboolean gdk_focus_event_get_in ()
gboolean gdk_touch_event_get_emulating_pointer ()
GdkCrossingMode gdk_crossing_event_get_mode ()
GdkNotifyType gdk_crossing_event_get_detail ()
gboolean gdk_crossing_event_get_focus ()
GdkSurface * gdk_grab_broken_event_get_grab_surface ()
gboolean gdk_grab_broken_event_get_implicit ()
GdkDrop * gdk_dnd_event_get_drop ()
GdkTouchpadGesturePhase gdk_touchpad_event_get_gesture_phase ()
guint gdk_touchpad_event_get_n_fingers ()
void gdk_touchpad_event_get_deltas ()
double gdk_touchpad_event_get_pinch_angle_delta ()
double gdk_touchpad_event_get_pinch_scale ()
void gdk_pad_event_get_axis_value ()
guint gdk_pad_event_get_button ()
void gdk_pad_event_get_group_mode ()
gboolean gdk_events_get_angle ()
gboolean gdk_events_get_center ()
gboolean gdk_events_get_distance ()

Object Hierarchy

    GdkEvent

Includes

#include <gdk/gdk.h>

Description

This section describes functions dealing with events from the window system.

In GTK applications the events are handled automatically by toplevel widgets and passed on to the event controllers of appropriate widgets, so these functions are rarely needed.

Functions

gdk_event_ref ()

GdkEvent *
gdk_event_ref (GdkEvent *event);

Increase the ref count of event .

Parameters

event

a GdkEvent

 

Returns

event .

[transfer full]


gdk_event_unref ()

void
gdk_event_unref (GdkEvent *event);

Decrease the ref count of event , and free it if the last reference is dropped.

Parameters

event

a GdkEvent.

[transfer full]

gdk_event_get_event_type ()

GdkEventType
gdk_event_get_event_type (GdkEvent *event);

Retrieves the type of the event.

Parameters

event

a GdkEvent

 

Returns

a GdkEventType


gdk_event_get_surface ()

GdkSurface *
gdk_event_get_surface (GdkEvent *event);

Extracts the GdkSurface associated with an event.

Parameters

event

a GdkEvent

 

Returns

The GdkSurface associated with the event.

[transfer none]


gdk_event_get_device ()

GdkDevice *
gdk_event_get_device (GdkEvent *event);

Returns the device of an event.

Parameters

event

a GdkEvent.

 

Returns

a GdkDevice.

[nullable][transfer none]


gdk_event_get_device_tool ()

GdkDeviceTool *
gdk_event_get_device_tool (GdkEvent *event);

If the event was generated by a device that supports different tools (eg. a tablet), this function will return a GdkDeviceTool representing the tool that caused the event. Otherwise, NULL will be returned.

Note: the GdkDeviceTools will be constant during the application lifetime, if settings must be stored persistently across runs, see gdk_device_tool_get_serial()

Parameters

event

a GdkEvent

 

Returns

The current device tool, or NULL.

[transfer none][nullable]


gdk_event_get_time ()

guint32
gdk_event_get_time (GdkEvent *event);

Returns the time stamp from event , if there is one; otherwise returns GDK_CURRENT_TIME.

Parameters

event

a GdkEvent

 

Returns

time stamp field from event


gdk_event_get_display ()

GdkDisplay *
gdk_event_get_display (GdkEvent *event);

Retrieves the GdkDisplay associated to the event .

Parameters

event

a GdkEvent

 

Returns

a GdkDisplay.

[transfer none][nullable]


gdk_event_get_seat ()

GdkSeat *
gdk_event_get_seat (GdkEvent *event);

Returns the seat that originated the event.

Parameters

event

a GdkEvent

 

Returns

a GdkSeat.

[nullable][transfer none]


gdk_event_get_event_sequence ()

GdkEventSequence *
gdk_event_get_event_sequence (GdkEvent *event);

If event is a touch event, returns the GdkEventSequence to which the event belongs. Otherwise, return NULL.

Parameters

event

a GdkEvent

 

Returns

the event sequence that the event belongs to.

[transfer none]


gdk_event_get_modifier_state ()

GdkModifierType
gdk_event_get_modifier_state (GdkEvent *event);

Returns the modifier state field of an event.

Parameters

event

a GdkEvent

 

Returns

the modifier state of event


gdk_event_get_position ()

gboolean
gdk_event_get_position (GdkEvent *event,
                        double *x,
                        double *y);

Extract the event surface relative x/y coordinates from an event.

Parameters

event

a GdkEvent

 

x

location to put event surface x coordinate.

[out]

y

location to put event surface y coordinate.

[out]

gdk_event_get_axes ()

gboolean
gdk_event_get_axes (GdkEvent *event,
                    double **axes,
                    guint *n_axes);

Extracts all axis values from an event.

Parameters

event

a GdkEvent

 

axes

the array of values for all axes.

[transfer none][out][array length=n_axes]

n_axes

the length of array.

[out]

Returns

TRUE on success, otherwise FALSE


gdk_event_get_axis ()

gboolean
gdk_event_get_axis (GdkEvent *event,
                    GdkAxisUse axis_use,
                    double *value);

Extract the axis value for a particular axis use from an event structure.

Parameters

event

a GdkEvent

 

axis_use

the axis use to look for

 

value

location to store the value found.

[out]

Returns

TRUE if the specified axis was found, otherwise FALSE


gdk_event_get_history ()

GdkTimeCoord *
gdk_event_get_history (GdkEvent *event,
                       guint *out_n_coords);

Retrieves the history of the event , as a list of time and coordinates.

The history includes events that are not delivered to the application because they occurred in the same frame as event .

Note that only motion and scroll events record history, and motion events only if one of the mouse buttons is down.

Parameters

event

a motion or scroll GdkEvent

 

out_n_coords

Return location for the length of the returned array.

[out]

Returns

an array of time and coordinates.

[transfer container][array length=out_n_coords][nullable]


gdk_event_get_pointer_emulated ()

gboolean
gdk_event_get_pointer_emulated (GdkEvent *event);

Returns whether this event is an 'emulated' pointer event (typically from a touch event), as opposed to a real one.

Parameters

event

a GdkEvent

 

Returns

TRUE if this event is emulated


gdk_event_triggers_context_menu ()

gboolean
gdk_event_triggers_context_menu (GdkEvent *event);

This function returns whether a GdkEvent should trigger a context menu, according to platform conventions. The right mouse button always triggers context menus.

This function should always be used instead of simply checking for event->button == GDK_BUTTON_SECONDARY.

Parameters

event

a GdkEvent, currently only button events are meaningful values

 

Returns

TRUE if the event should trigger a context menu.


gdk_button_event_get_button ()

guint
gdk_button_event_get_button (GdkEvent *event);

Extract the button number from a button event.

Parameters

event

a button event.

[type GdkButtonEvent]

Returns

the button of event


gdk_scroll_event_get_direction ()

GdkScrollDirection
gdk_scroll_event_get_direction (GdkEvent *event);

Extracts the direction of a scroll event.

Parameters

event

a scroll event.

[type GdkScrollEvent]

Returns

the scroll direction of event


gdk_scroll_event_get_deltas ()

void
gdk_scroll_event_get_deltas (GdkEvent *event,
                             double *delta_x,
                             double *delta_y);

Extracts the scroll deltas of a scroll event.

The deltas will be zero unless the scroll direction is GDK_SCROLL_SMOOTH.

Parameters

event

a scroll event.

[type GdkScrollEvent]

delta_x

return location for x scroll delta.

[out]

delta_y

return location for y scroll delta.

[out]

gdk_scroll_event_is_stop ()

gboolean
gdk_scroll_event_is_stop (GdkEvent *event);

Check whether a scroll event is a stop scroll event. Scroll sequences with smooth scroll information may provide a stop scroll event once the interaction with the device finishes, e.g. by lifting a finger. This stop scroll event is the signal that a widget may trigger kinetic scrolling based on the current velocity.

Stop scroll events always have a delta of 0/0.

Parameters

event

a scroll event.

[type GdkScrollEvent]

Returns

TRUE if the event is a scroll stop event


gdk_key_event_get_keyval ()

guint
gdk_key_event_get_keyval (GdkEvent *event);

Extracts the keyval from a key event.

Parameters

event

a key event.

[type GdkKeyEvent]

Returns

the keyval of event


gdk_key_event_get_keycode ()

guint
gdk_key_event_get_keycode (GdkEvent *event);

Extracts the keycode from a key event.

Parameters

event

a key event.

[type GdkKeyEvent]

Returns

the keycode of event


gdk_key_event_get_consumed_modifiers ()

GdkModifierType
gdk_key_event_get_consumed_modifiers (GdkEvent *event);

Extracts the consumed modifiers from a key event.

Parameters

event

a key event.

[type GdkKeyEvent]

Returns

the consumed modifiers or event


gdk_key_event_get_layout ()

guint
gdk_key_event_get_layout (GdkEvent *event);

Extracts the layout from a key event.

Parameters

event

a key event.

[type GdkKeyEvent]

Returns

the layout of event


gdk_key_event_get_level ()

guint
gdk_key_event_get_level (GdkEvent *event);

Extracts the shift level from a key event.

Parameters

event

a key event.

[type GdkKeyEvent]

Returns

the shift level of event


gdk_key_event_is_modifier ()

gboolean
gdk_key_event_is_modifier (GdkEvent *event);

Extracts whether the key event is for a modifier key.

Parameters

event

a key event.

[type GdkKeyEvent]

Returns

TRUE if the event is for a modifier key


gdk_key_event_matches ()

GdkKeyMatch
gdk_key_event_matches (GdkEvent *event,
                       guint keyval,
                       GdkModifierType modifiers);

Matches a key event against a keyboard shortcut that is specified as a keyval and modifiers. Partial matches are possible where the combination matches if the currently active group is ignored.

Note that we ignore Caps Lock for matching.

Parameters

event

a key GdkEvent.

[type GdkKeyEvent]

keyval

the keyval to match

 

modifiers

the modifiers to match

 

Returns

a GdkKeyMatch value describing whether event matches


gdk_key_event_get_match ()

gboolean
gdk_key_event_get_match (GdkEvent *event,
                         guint *keyval,
                         GdkModifierType *modifiers);

Gets a keyval and modifier combination that will cause gdk_key_event_matches() to successfully match the given event.

Parameters

event

a key GdkEvent.

[type GdkKeyEvent]

keyval

return location for a keyval.

[out]

modifiers

return location for modifiers.

[out]

Returns

TRUE on success


gdk_focus_event_get_in ()

gboolean
gdk_focus_event_get_in (GdkEvent *event);

Extracts whether this event is about focus entering or leaving the surface.

Parameters

event

a focus change event.

[type GdkFocusEvent]

Returns

TRUE of the focus is entering


gdk_touch_event_get_emulating_pointer ()

gboolean
gdk_touch_event_get_emulating_pointer (GdkEvent *event);

Extracts whether a touch event is emulating a pointer event.

Parameters

event

a touch event.

[type GdkTouchEvent]

Returns

TRUE if event is emulating


gdk_crossing_event_get_mode ()

GdkCrossingMode
gdk_crossing_event_get_mode (GdkEvent *event);

Extracts the crossing mode from a crossing event.

Parameters

event

a crossing event.

[type GdkCrossingEvent]

Returns

the mode of event


gdk_crossing_event_get_detail ()

GdkNotifyType
gdk_crossing_event_get_detail (GdkEvent *event);

Extracts the notify detail from a crossing event.

Parameters

event

a crossing event.

[type GdkCrossingEvent]

Returns

the notify detail of event


gdk_crossing_event_get_focus ()

gboolean
gdk_crossing_event_get_focus (GdkEvent *event);

Checks if the event surface is the focus surface.

Parameters

event

a crossing event.

[type GdkCrossingEvent]

Returns

TRUE if the surface is the focus surface


gdk_grab_broken_event_get_grab_surface ()

GdkSurface *
gdk_grab_broken_event_get_grab_surface
                               (GdkEvent *event);

Extracts the grab surface from a grab broken event.

Parameters

event

a grab broken event.

[type GdkGrabBrokenEvent]

Returns

the grab surface of event .

[transfer none]


gdk_grab_broken_event_get_implicit ()

gboolean
gdk_grab_broken_event_get_implicit (GdkEvent *event);

Checks whether the grab broken event is for an implicit grab.

Parameters

event

a grab broken event.

[type GdkGrabBrokenEvent]

Returns

TRUE if the an implicit grab was broken


gdk_dnd_event_get_drop ()

GdkDrop *
gdk_dnd_event_get_drop (GdkEvent *event);

Gets the GdkDrop from a DND event.

Parameters

event

a DND event.

[type GdkDNDEvent]

Returns

the drop.

[transfer none][nullable]


gdk_touchpad_event_get_gesture_phase ()

GdkTouchpadGesturePhase
gdk_touchpad_event_get_gesture_phase (GdkEvent *event);

Extracts the touchpad gesture phase from a touchpad event.

Parameters

event

a touchpad GdkEvent.

[type GdkTouchpadEvent]

Returns

the gesture phase of event


gdk_touchpad_event_get_n_fingers ()

guint
gdk_touchpad_event_get_n_fingers (GdkEvent *event);

Extracts the number of fingers from a touchpad event.

Parameters

event

a touchpad event.

[type GdkTouchpadEvent]

Returns

the number of fingers for event


gdk_touchpad_event_get_deltas ()

void
gdk_touchpad_event_get_deltas (GdkEvent *event,
                               double *dx,
                               double *dy);

Extracts delta information from a touchpad event.

Parameters

event

a touchpad event.

[type GdkTouchpadEvent]

dx

return location for x.

[out]

dy

return location for y.

[out]

gdk_touchpad_event_get_pinch_angle_delta ()

double
gdk_touchpad_event_get_pinch_angle_delta
                               (GdkEvent *event);

Extracts the angle delta from a touchpad pinch event.

Parameters

event

a touchpad pinch event.

[type GdkTouchpadEvent]

Returns

the angle delta of event


gdk_touchpad_event_get_pinch_scale ()

double
gdk_touchpad_event_get_pinch_scale (GdkEvent *event);

Extracts the scale from a touchpad pinch event.

Parameters

event

a touchpad pinch event.

[type GdkTouchpadEvent]

Returns

the scale of event


gdk_pad_event_get_axis_value ()

void
gdk_pad_event_get_axis_value (GdkEvent *event,
                              guint *index,
                              double *value);

Extracts the information from a pad strip or ring event.

Parameters

event

a pad strip or ring event.

[type GdkPadEvent]

index

Return location for the axis index.

[out]

value

Return location for the axis value.

[out]

gdk_pad_event_get_button ()

guint
gdk_pad_event_get_button (GdkEvent *event);

Extracts information about the pressed button from a pad event.

Parameters

event

a pad button event.

[type GdkPadEvent]

Returns

the button of event


gdk_pad_event_get_group_mode ()

void
gdk_pad_event_get_group_mode (GdkEvent *event,
                              guint *group,
                              guint *mode);

Extracts group and mode information from a pad event.

Parameters

event

a pad event.

[type GdkPadEvent]

group

return location for the group.

[out]

mode

return location for the mode.

[out]

gdk_events_get_angle ()

gboolean
gdk_events_get_angle (GdkEvent *event1,
                      GdkEvent *event2,
                      double *angle);

If both events contain X/Y information, this function will return TRUE and return in angle the relative angle from event1 to event2 . The rotation direction for positive angles is from the positive X axis towards the positive Y axis.

Parameters

event1

first GdkEvent

 

event2

second GdkEvent

 

angle

return location for the relative angle between both events.

[out]

Returns

TRUE if the angle could be calculated.


gdk_events_get_center ()

gboolean
gdk_events_get_center (GdkEvent *event1,
                       GdkEvent *event2,
                       double *x,
                       double *y);

If both events contain X/Y information, the center of both coordinates will be returned in x and y .

Parameters

event1

first GdkEvent

 

event2

second GdkEvent

 

x

return location for the X coordinate of the center.

[out]

y

return location for the Y coordinate of the center.

[out]

Returns

TRUE if the center could be calculated.


gdk_events_get_distance ()

gboolean
gdk_events_get_distance (GdkEvent *event1,
                         GdkEvent *event2,
                         double *distance);

If both events have X/Y information, the distance between both coordinates (as in a straight line going from event1 to event2 ) will be returned.

Parameters

event1

first GdkEvent

 

event2

second GdkEvent

 

distance

return location for the distance.

[out]

Returns

TRUE if the distance could be calculated.

Types and Values

GdkEvent

typedef struct _GdkEvent GdkEvent;

The GdkEvent struct contains only private fields and should not be accessed directly.


enum GdkEventType

Specifies the type of the event.

Members

GDK_DELETE

the window manager has requested that the toplevel surface be hidden or destroyed, usually when the user clicks on a special icon in the title bar.

 

GDK_MOTION_NOTIFY

the pointer (usually a mouse) has moved.

 

GDK_BUTTON_PRESS

a mouse button has been pressed.

 

GDK_BUTTON_RELEASE

a mouse button has been released.

 

GDK_KEY_PRESS

a key has been pressed.

 

GDK_KEY_RELEASE

a key has been released.

 

GDK_ENTER_NOTIFY

the pointer has entered the surface.

 

GDK_LEAVE_NOTIFY

the pointer has left the surface.

 

GDK_FOCUS_CHANGE

the keyboard focus has entered or left the surface.

 

GDK_PROXIMITY_IN

an input device has moved into contact with a sensing surface (e.g. a touchscreen or graphics tablet).

 

GDK_PROXIMITY_OUT

an input device has moved out of contact with a sensing surface.

 

GDK_DRAG_ENTER

the mouse has entered the surface while a drag is in progress.

 

GDK_DRAG_LEAVE

the mouse has left the surface while a drag is in progress.

 

GDK_DRAG_MOTION

the mouse has moved in the surface while a drag is in progress.

 

GDK_DROP_START

a drop operation onto the surface has started.

 

GDK_SCROLL

the scroll wheel was turned

 

GDK_GRAB_BROKEN

a pointer or keyboard grab was broken.

 

GDK_TOUCH_BEGIN

A new touch event sequence has just started.

 

GDK_TOUCH_UPDATE

A touch event sequence has been updated.

 

GDK_TOUCH_END

A touch event sequence has finished.

 

GDK_TOUCH_CANCEL

A touch event sequence has been canceled.

 

GDK_TOUCHPAD_SWIPE

A touchpad swipe gesture event, the current state is determined by its phase field.

 

GDK_TOUCHPAD_PINCH

A touchpad pinch gesture event, the current state is determined by its phase field.

 

GDK_PAD_BUTTON_PRESS

A tablet pad button press event.

 

GDK_PAD_BUTTON_RELEASE

A tablet pad button release event.

 

GDK_PAD_RING

A tablet pad axis event from a "ring".

 

GDK_PAD_STRIP

A tablet pad axis event from a "strip".

 

GDK_PAD_GROUP_MODE

A tablet pad group mode change.

 

GDK_EVENT_LAST

marks the end of the GdkEventType enumeration.

 

struct GdkKeymapKey

struct GdkKeymapKey {
  guint keycode;
  int   group;
  int   level;
};

A GdkKeymapKey is a hardware key that can be mapped to a keyval.

Members

guint keycode;

the hardware keycode. This is an identifying number for a physical key.

 

int group;

indicates movement in a horizontal direction. Usually groups are used for two different languages. In group 0, a key might have two English characters, and in group 1 it might have two Hebrew characters. The Hebrew characters will be printed on the key next to the English characters.

 

int level;

indicates which symbol on the key will be used, in a vertical direction. So on a standard US keyboard, the key with the number “1” on it also has the exclamation point ("!") character on it. The level indicates whether to use the “1” or the “!” symbol. The letter keys are considered to have a lowercase letter at level 0, and an uppercase letter at level 1, though only the uppercase letter is printed.

 

enum GdkKeyMatch

The possible return values from gdk_key_event_matches() describe how well an event matches a given keyval and modifiers.

Members

GDK_KEY_MATCH_NONE

The key event does not match

 

GDK_KEY_MATCH_PARTIAL

The key event matches if keyboard state (specifically, the currently active group) is ignored

 

GDK_KEY_MATCH_EXACT

The key event matches

 

enum GdkTouchpadGesturePhase

Specifies the current state of a touchpad gesture. All gestures are guaranteed to begin with an event with phase GDK_TOUCHPAD_GESTURE_PHASE_BEGIN, followed by 0 or several events with phase GDK_TOUCHPAD_GESTURE_PHASE_UPDATE.

A finished gesture may have 2 possible outcomes, an event with phase GDK_TOUCHPAD_GESTURE_PHASE_END will be emitted when the gesture is considered successful, this should be used as the hint to perform any permanent changes.

Cancelled gestures may be so for a variety of reasons, due to hardware or the compositor, or due to the gesture recognition layers hinting the gesture did not finish resolutely (eg. a 3rd finger being added during a pinch gesture). In these cases, the last event will report the phase GDK_TOUCHPAD_GESTURE_PHASE_CANCEL, this should be used as a hint to undo any visible/permanent changes that were done throughout the progress of the gesture.

Members

GDK_TOUCHPAD_GESTURE_PHASE_BEGIN

The gesture has begun.

 

GDK_TOUCHPAD_GESTURE_PHASE_UPDATE

The gesture has been updated.

 

GDK_TOUCHPAD_GESTURE_PHASE_END

The gesture was finished, changes should be permanently applied.

 

GDK_TOUCHPAD_GESTURE_PHASE_CANCEL

The gesture was cancelled, all changes should be undone.

 

enum GdkScrollDirection

Specifies the direction for scroll events.

Members

GDK_SCROLL_UP

the surface is scrolled up.

 

GDK_SCROLL_DOWN

the surface is scrolled down.

 

GDK_SCROLL_LEFT

the surface is scrolled to the left.

 

GDK_SCROLL_RIGHT

the surface is scrolled to the right.

 

GDK_SCROLL_SMOOTH

the scrolling is determined by the delta values in scroll events. See gdk_scroll_event_get_deltas()

 

enum GdkCrossingMode

Specifies the crossing mode for enter and leave events.

Members

GDK_CROSSING_NORMAL

crossing because of pointer motion.

 

GDK_CROSSING_GRAB

crossing because a grab is activated.

 

GDK_CROSSING_UNGRAB

crossing because a grab is deactivated.

 

GDK_CROSSING_GTK_GRAB

crossing because a GTK grab is activated.

 

GDK_CROSSING_GTK_UNGRAB

crossing because a GTK grab is deactivated.

 

GDK_CROSSING_STATE_CHANGED

crossing because a GTK widget changed state (e.g. sensitivity).

 

GDK_CROSSING_TOUCH_BEGIN

crossing because a touch sequence has begun, this event is synthetic as the pointer might have not left the surface.

 

GDK_CROSSING_TOUCH_END

crossing because a touch sequence has ended, this event is synthetic as the pointer might have not left the surface.

 

GDK_CROSSING_DEVICE_SWITCH

crossing because of a device switch (i.e. a mouse taking control of the pointer after a touch device), this event is synthetic as the pointer didn’t leave the surface.

 

enum GdkNotifyType

Specifies the kind of crossing for enter and leave events.

See the X11 protocol specification of LeaveNotify for full details of crossing event generation.

Members

GDK_NOTIFY_ANCESTOR

the surface is entered from an ancestor or left towards an ancestor.

 

GDK_NOTIFY_VIRTUAL

the pointer moves between an ancestor and an inferior of the surface.

 

GDK_NOTIFY_INFERIOR

the surface is entered from an inferior or left towards an inferior.

 

GDK_NOTIFY_NONLINEAR

the surface is entered from or left towards a surface which is neither an ancestor nor an inferior.

 

GDK_NOTIFY_NONLINEAR_VIRTUAL

the pointer moves between two surfaces which are not ancestors of each other and the surface is part of the ancestor chain between one of these surfaces and their least common ancestor.

 

GDK_NOTIFY_UNKNOWN

an unknown type of enter/leave event occurred.

 

GDK_CURRENT_TIME

#define GDK_CURRENT_TIME     0L

Represents the current time, and can be used anywhere a time is expected.


GDK_PRIORITY_EVENTS

#define GDK_PRIORITY_EVENTS (G_PRIORITY_DEFAULT)

This is the priority that events from the X server are given in the GLib Main Loop.


GDK_PRIORITY_REDRAW

#define GDK_PRIORITY_REDRAW     (G_PRIORITY_HIGH_IDLE + 20)

This is the priority that the idle handler processing surface updates is given in the GLib Main Loop.


GDK_EVENT_PROPAGATE

#define GDK_EVENT_PROPAGATE     (FALSE)

Use this macro as the return value for continuing the propagation of an event handler.


GDK_EVENT_STOP

#define GDK_EVENT_STOP          (TRUE)

Use this macro as the return value for stopping the propagation of an event handler.


GDK_BUTTON_PRIMARY

#define GDK_BUTTON_PRIMARY      (1)

The primary button. This is typically the left mouse button, or the right button in a left-handed setup.


GDK_BUTTON_MIDDLE

#define GDK_BUTTON_MIDDLE       (2)

The middle button.


GDK_BUTTON_SECONDARY

#define GDK_BUTTON_SECONDARY    (3)

The secondary button. This is typically the right mouse button, or the left button in a left-handed setup.


GdkEventSequence

typedef struct _GdkEventSequence GdkEventSequence;

GdkEventSequence is an opaque type representing a sequence of related touch events.


GdkButtonEvent

typedef struct _GdkButtonEvent GdkButtonEvent;

An event related to a button on a pointer device/


GdkScrollEvent

typedef struct _GdkScrollEvent GdkScrollEvent;

An event related to a scrolling motion.


GdkMotionEvent

typedef struct _GdkMotionEvent GdkMotionEvent;

An event related to a pointer or touch device motion.


GdkKeyEvent

typedef struct _GdkKeyEvent GdkKeyEvent;

An event related to a key-based device.


GdkFocusEvent

typedef struct _GdkFocusEvent GdkFocusEvent;

An event related to a focus change.


GdkCrossingEvent

typedef struct _GdkCrossingEvent GdkCrossingEvent;

An event caused by a pointing device moving between surfaces.


GdkGrabBrokenEvent

typedef struct _GdkGrabBrokenEvent GdkGrabBrokenEvent;

An event related to a broken windowing system grab.


GdkDeleteEvent

typedef struct _GdkDeleteEvent GdkDeleteEvent;

An event related to closing a top-level surface.


GdkDNDEvent

typedef struct _GdkDNDEvent GdkDNDEvent;

An event related to drag and drop operations.


GdkTouchEvent

typedef struct _GdkTouchEvent GdkTouchEvent;

An event related to a touch-based device.


GdkTouchpadEvent

typedef struct _GdkTouchpadEvent GdkTouchpadEvent;

An event related to a touchpad device.


GdkPadEvent

typedef struct _GdkPadEvent GdkPadEvent;

An event related to a pad-based device.


GdkProximityEvent

typedef struct _GdkProximityEvent GdkProximityEvent;

An event related to the proximity of a tool to a device.

docs/reference/gdk/html/gdk4-Keyboard-Handling.html0000664000175000017500000006556014010071761022315 0ustar mclasenmclasen Key Values: GDK 4 Reference Manual

Key Values

Key Values — Functions for manipulating keyboard codes

Functions

Includes

#include <gdk/gdk.h>

Description

Key values are the codes which are sent whenever a key is pressed or released. They are included in the data contained in a key press or release GdkEvent. The complete list of key values can be found in the gdk/gdkkeysyms.h header file.

Key values are regularly updated from the upstream X.org X11 implementation, so new values are added regularly. They will be prefixed with GDK_KEY_ rather than XF86XK_ or XK_ (for older symbols).

Key values can be converted into a string representation using gdk_keyval_name(). The reverse function, converting a string to a key value, is provided by gdk_keyval_from_name().

The case of key values can be determined using gdk_keyval_is_upper() and gdk_keyval_is_lower(). Key values can be converted to upper or lower case using gdk_keyval_to_upper() and gdk_keyval_to_lower().

When it makes sense, key values can be converted to and from Unicode characters with gdk_keyval_to_unicode() and gdk_unicode_to_keyval().

Groups

At the lowest level, physical keys on the keyboard are represented by numeric keycodes, and GDK knows how to translate these keycodes into key values according to the configured keyboard layout and the current state of the keyboard. In the GDK api, the mapping from keycodes to key values is available via gdk_display_map_keycode(), and the reverse mapping is available via gdk_display_map_keyval(). The results of these functions are returned in GdkKeymapKey structs.

You can think of a GdkKeymapKey as a representation of a symbol printed on a physical keyboard key. That is, it contains three pieces of information. First, it contains the hardware keycode; this is an identifying number for a physical key. Second, it contains the “level” of the key. The level indicates which symbol on the key will be used, in a vertical direction. So on a standard US keyboard, the key with the number “1“ on it also has the exclamation point (”!”) character on it. The level indicates whether to use the “1” or the “!” symbol. The letter keys are considered to have a lowercase letter at level 0, and an uppercase letter at level 1, though normally only the uppercase letter is printed on the key. Third, the GdkKeymapKey contains a group; groups are not used on standard US keyboards, but are used in many other countries. On a keyboard with groups, there can be 3 or 4 symbols printed on a single key. The group indicates movement in a horizontal direction. Usually groups are used for two different languages. In group 0, a key might have two English characters, and in group 1 it might have two Hebrew characters. The Hebrew characters will be printed on the key next to the English characters.

When GDK creates a key event in order to deliver a key press or release, it first converts the current keyboard state into an effective group and level. This is done via a set of rules that varies widely according to type of keyboard and user configuration. The input to this translation consists of the hardware keycode pressed, the active modifiers, and the active group. It then applies the appropriate rules, and returns the group/level to be used to index the keymap, along with the modifiers which did not affect the group and level. i.e. it returns “unconsumed modifiers.” The keyboard group may differ from the effective group used for lookups because some keys don't have multiple groups - e.g. the Enter key is always in group 0 regardless of keyboard state.

The results of the translation, including the keyval, are all included in the key event and can be obtained via GdkEvent getters.


Consumed modifiers

The consumed_modifiers in a key event are modifiers that should be masked out from state when comparing this key press to a hot key. For instance, on a US keyboard, the plus symbol is shifted, so when comparing a key press to a <Control>plus accelerator <Shift> should be masked out.

1
2
3
4
5
6
7
8
9
10
11
// We want to ignore irrelevant modifiers like ScrollLock
#define ALL_ACCELS_MASK (GDK_CONTROL_MASK | GDK_SHIFT_MASK | GDK_ALT_MASK)
state = gdk_event_get_modifier_state (event);
gdk_keymap_translate_keyboard_state (keymap,
                                     gdk_key_event_get_keycode (event),
                                     state,
                                     gdk_key_event_get_group (event),
                                     &keyval, NULL, NULL, &consumed);
if (keyval == GDK_PLUS &&
    (state & ~consumed & ALL_ACCELS_MASK) == GDK_CONTROL_MASK)
  // Control was pressed

An older interpretation consumed_modifiers was that it contained all modifiers that might affect the translation of the key; this allowed accelerators to be stored with irrelevant consumed modifiers, by doing:

1
2
3
4
// XXX Don’t do this XXX
if (keyval == accel_keyval &&
    (state & ~consumed & ALL_ACCELS_MASK) == (accel_mods & ~consumed))
  // Accelerator was pressed

However, this did not work if multi-modifier combinations were used in the keymap, since, for instance, <Control> would be masked out even if only <Control>&lt;Alt> was used in the keymap. To support this usage as well as well as possible, all single modifier combinations that could affect the key for any combination of modifiers will be returned in consumed_modifiers ; multi-modifier combinations are returned only when actually found in state . When you store accelerators, you should always store them with consumed modifiers removed. Store <Control>plus, not <Control>&lt;Shift>plus.

Functions

gdk_keyval_name ()

const char *
gdk_keyval_name (guint keyval);

Converts a key value into a symbolic name.

The names are the same as those in the gdk/gdkkeysyms.h header file but without the leading “GDK_KEY_”.

Parameters

keyval

a key value

 

Returns

a string containing the name of the key, or NULL if keyval is not a valid key. The string should not be modified.

[nullable][transfer none]


gdk_keyval_from_name ()

guint
gdk_keyval_from_name (const char *keyval_name);

Converts a key name to a key value.

The names are the same as those in the gdk/gdkkeysyms.h header file but without the leading “GDK_KEY_”.

Parameters

keyval_name

a key name

 

Returns

the corresponding key value, or GDK_KEY_VoidSymbol if the key name is not a valid key


gdk_keyval_convert_case ()

void
gdk_keyval_convert_case (guint symbol,
                         guint *lower,
                         guint *upper);

Obtains the upper- and lower-case versions of the keyval symbol . Examples of keyvals are GDK_KEY_a, GDK_KEY_Enter, GDK_KEY_F1, etc.

Parameters

symbol

a keyval

 

lower

return location for lowercase version of symbol .

[out]

upper

return location for uppercase version of symbol .

[out]

gdk_keyval_to_upper ()

guint
gdk_keyval_to_upper (guint keyval);

Converts a key value to upper case, if applicable.

Parameters

keyval

a key value.

 

Returns

the upper case form of keyval , or keyval itself if it is already in upper case or it is not subject to case conversion.


gdk_keyval_to_lower ()

guint
gdk_keyval_to_lower (guint keyval);

Converts a key value to lower case, if applicable.

Parameters

keyval

a key value.

 

Returns

the lower case form of keyval , or keyval itself if it is already in lower case or it is not subject to case conversion.


gdk_keyval_is_upper ()

gboolean
gdk_keyval_is_upper (guint keyval);

Returns TRUE if the given key value is in upper case.

Parameters

keyval

a key value.

 

Returns

TRUE if keyval is in upper case, or if keyval is not subject to case conversion.


gdk_keyval_is_lower ()

gboolean
gdk_keyval_is_lower (guint keyval);

Returns TRUE if the given key value is in lower case.

Parameters

keyval

a key value.

 

Returns

TRUE if keyval is in lower case, or if keyval is not subject to case conversion.


gdk_keyval_to_unicode ()

guint32
gdk_keyval_to_unicode (guint keyval);

Convert from a GDK key symbol to the corresponding ISO10646 (Unicode) character.

Note that the conversion does not take the current locale into consideration, which might be expected for particular keyvals, such as GDK_KEY_KP_Decimal.

Parameters

keyval

a GDK key symbol

 

Returns

the corresponding unicode character, or 0 if there is no corresponding character.


gdk_unicode_to_keyval ()

guint
gdk_unicode_to_keyval (guint32 wc);

Convert from a ISO10646 character to a key symbol.

Parameters

wc

a ISO10646 encoded character

 

Returns

the corresponding GDK key symbol, if one exists. or, if there is no corresponding symbol, wc | 0x01000000

docs/reference/gdk/html/gdk4-Drag-and-Drop.html0000664000175000017500000025676714010071761021365 0ustar mclasenmclasen Drag And Drop: GDK 4 Reference Manual

Drag And Drop

Drag And Drop — Functions for controlling drag and drop handling

Properties

GdkDragAction actions Read / Write
GdkContentProvider * content Read / Write / Construct Only
GdkDevice * device Read / Write / Construct Only
GdkDisplay * display Read
GdkContentFormats * formats Read / Write / Construct Only
GdkDragAction selected-action Read / Write
GdkSurface * surface Read / Write / Construct Only
GdkDragAction actions Read / Write / Construct Only
GdkDevice * device Read / Write / Construct Only
GdkDisplay * display Read
GdkDrag * drag Read / Write / Construct Only
GdkContentFormats * formats Read / Write / Construct Only
GdkSurface * surface Read / Write / Construct Only

Signals

void cancel Run Last
void dnd-finished Run Last
void drop-performed Run Last

Object Hierarchy

    GInterface
    ╰── GdkDragSurface
    GObject
    ├── GdkDrag
    ╰── GdkDrop

Prerequisites

GdkDragSurface requires GdkSurface.

Includes

#include <gdk/gdk.h>

Description

These functions provide a low-level interface for drag and drop.

The GdkDrag object represents the source side of an ongoing DND operation. It is created when a drag is started, and stays alive for duration of the DND operation. After a drag has been started with gdk_drag_begin(), the caller gets informed about the status of the ongoing drag operation with signals on the GdkDrag object.

The GdkDrop object represents the target side of an ongoing DND operation. Possible drop sites get informed about the status of the ongoing drag operation with events of type GDK_DRAG_ENTER, GDK_DRAG_LEAVE, GDK_DRAG_MOTION and GDK_DROP_START. The GdkDrop object can be obtained from these GdkEvents using gdk_dnd_event_get_drop().

The actual data transfer is initiated from the target side via an async read, using one of the GdkDrop functions for this purpose: gdk_drop_read_async() or gdk_drop_read_value_async().

GTK provides a higher level abstraction based on top of these functions, and so they are not normally needed in GTK applications. See the Drag and Drop section of the GTK documentation for more information.

Functions

gdk_drag_drop_done ()

void
gdk_drag_drop_done (GdkDrag *drag,
                    gboolean success);

Inform GDK if the drop ended successfully. Passing FALSE for success may trigger a drag cancellation animation.

This function is called by the drag source, and should be the last call before dropping the reference to the drag .

The GdkDrag will only take the first gdk_drag_drop_done() call as effective, if this function is called multiple times, all subsequent calls will be ignored.

Parameters

drag

a GdkDrag

 

success

whether the drag was ultimatively successful

 

gdk_drag_begin ()

GdkDrag *
gdk_drag_begin (GdkSurface *surface,
                GdkDevice *device,
                GdkContentProvider *content,
                GdkDragAction actions,
                double dx,
                double dy);

Starts a drag and creates a new drag context for it.

This function is called by the drag source. After this call, you probably want to set up the drag icon using the surface returned by gdk_drag_get_drag_surface().

This function returns a reference to the GdkDrag object, but GTK keeps its own reference as well, as long as the DND operation is going on.

Note: if actions include GDK_ACTION_MOVE, you need to listen for the “dnd-finished” signal and delete the data at the source if gdk_drag_get_selected_action() returns GDK_ACTION_MOVE.

Parameters

surface

the source surface for this drag

 

device

the device that controls this drag

 

content

the offered content.

[transfer none]

actions

the actions supported by this drag

 

dx

the x offset to device 's position where the drag nominally started

 

dy

the y offset to device 's position where the drag nominally started

 

Returns

a newly created GdkDrag or NULL on error.

[transfer full][nullable]


gdk_drag_get_display ()

GdkDisplay *
gdk_drag_get_display (GdkDrag *drag);

Gets the GdkDisplay that the drag object was created for.

Parameters

drag

a GdkDrag

 

Returns

a GdkDisplay.

[transfer none]


gdk_drag_get_content ()

GdkContentProvider *
gdk_drag_get_content (GdkDrag *drag);

Returns the GdkContentProvider associated to the GdkDrag object.

Parameters

drag

a GdkDrag

 

Returns

The GdkContentProvider associated to drag .

[transfer none]


gdk_drag_get_actions ()

GdkDragAction
gdk_drag_get_actions (GdkDrag *drag);

Determines the bitmask of possible actions proposed by the source.

Parameters

drag

a GdkDrag

 

Returns

the GdkDragAction flags


gdk_drag_get_selected_action ()

GdkDragAction
gdk_drag_get_selected_action (GdkDrag *drag);

Determines the action chosen by the drag destination.

Parameters

drag

a GdkDrag

 

Returns

a GdkDragAction value


gdk_drag_get_formats ()

GdkContentFormats *
gdk_drag_get_formats (GdkDrag *drag);

Retrieves the formats supported by this GdkDrag object.

Parameters

drag

a GdkDrag

 

Returns

a GdkContentFormats.

[transfer none]


gdk_drag_get_device ()

GdkDevice *
gdk_drag_get_device (GdkDrag *drag);

Returns the GdkDevice associated to the GdkDrag object.

Parameters

drag

a GdkDrag

 

Returns

The GdkDevice associated to drag .

[transfer none]


gdk_drag_get_surface ()

GdkSurface *
gdk_drag_get_surface (GdkDrag *drag);

Returns the GdkSurface where the drag originates.

Parameters

drag

a GdkDrag

 

Returns

The GdkSurface where the drag originates.

[transfer none]


gdk_drag_get_drag_surface ()

GdkSurface *
gdk_drag_get_drag_surface (GdkDrag *drag);

Returns the surface on which the drag icon should be rendered during the drag operation. Note that the surface may not be available until the drag operation has begun. GDK will move the surface in accordance with the ongoing drag operation. The surface is owned by drag and will be destroyed when the drag operation is over.

Parameters

drag

a GdkDrag

 

Returns

the drag surface, or NULL.

[nullable][transfer none]


gdk_drag_set_hotspot ()

void
gdk_drag_set_hotspot (GdkDrag *drag,
                      int hot_x,
                      int hot_y);

Sets the position of the drag surface that will be kept under the cursor hotspot. Initially, the hotspot is at the top left corner of the drag surface.

Parameters

drag

a GdkDrag

 

hot_x

x coordinate of the drag surface hotspot

 

hot_y

y coordinate of the drag surface hotspot

 

gdk_drag_action_is_unique ()

gboolean
gdk_drag_action_is_unique (GdkDragAction action);

Checks if action represents a single action or if it includes multiple flags that can be selected from.

When action is 0 - ie no action was given, TRUE is returned.

Parameters

action

a GdkDragAction

 

Returns

TRUE if exactly one action was given


gdk_drag_surface_present ()

gboolean
gdk_drag_surface_present (GdkDragSurface *drag_surface,
                          int width,
                          int height);

Present drag_surface .

Parameters

drag_surface

the GdkDragSurface to show

 

width

the unconstrained drag_surface width to layout

 

height

the unconstrained drag_surface height to layout

 

Returns

FALSE if it failed to be presented, otherwise TRUE.


gdk_drop_get_display ()

GdkDisplay *
gdk_drop_get_display (GdkDrop *self);

Gets the GdkDisplay that self was created for.

Parameters

self

a GdkDrop

 

Returns

a GdkDisplay.

[transfer none]


gdk_drop_get_device ()

GdkDevice *
gdk_drop_get_device (GdkDrop *self);

Returns the GdkDevice performing the drop.

Parameters

self

a GdkDrop

 

Returns

The GdkDevice performing the drop.

[transfer none]


gdk_drop_get_surface ()

GdkSurface *
gdk_drop_get_surface (GdkDrop *self);

Returns the GdkSurface performing the drop.

Parameters

self

a GdkDrop

 

Returns

The GdkSurface performing the drop.

[transfer none]


gdk_drop_get_formats ()

GdkContentFormats *
gdk_drop_get_formats (GdkDrop *self);

Returns the GdkContentFormats that the drop offers the data to be read in.

Parameters

self

a GdkDrop

 

Returns

The possible GdkContentFormats.

[transfer none]


gdk_drop_get_actions ()

GdkDragAction
gdk_drop_get_actions (GdkDrop *self);

Returns the possible actions for this GdkDrop. If this value contains multiple actions - ie gdk_drag_action_is_unique() returns FALSE for the result - gdk_drop_finish() must choose the action to use when accepting the drop. This will only happen if you passed GDK_ACTION_ASK as one of the possible actions in gdk_drop_status(). GDK_ACTION_ASK itself will not be included in the actions returned by this function.

This value may change over the lifetime of the GdkDrop both as a response to source side actions as well as to calls to gdk_drop_status() or gdk_drop_finish(). The source side will not change this value anymore once a drop has started.

Parameters

self

a GdkDrop

 

Returns

The possible GdkDragActions


gdk_drop_get_drag ()

GdkDrag *
gdk_drop_get_drag (GdkDrop *self);

If this is an in-app drag-and-drop operation, returns the GdkDrag that corresponds to this drop.

If it is not, NULL is returned.

Parameters

self

a GdkDrop

 

Returns

the corresponding GdkDrag.

[transfer none][nullable]


gdk_drop_status ()

void
gdk_drop_status (GdkDrop *self,
                 GdkDragAction actions,
                 GdkDragAction preferred);

Selects all actions that are potentially supported by the destination.

When calling this function, do not restrict the passed in actions to the ones provided by gdk_drop_get_actions(). Those actions may change in the future, even depending on the actions you provide here.

The preferred action is a hint to the drag'n'drop mechanism about which action to use when multiple actions are possible.

This function should be called by drag destinations in response to GDK_DRAG_ENTER or GDK_DRAG_MOTION events. If the destination does not yet know the exact actions it supports, it should set any possible actions first and then later call this function again.

Parameters

self

a GdkDrop

 

actions

Supported actions of the destination, or 0 to indicate that a drop will not be accepted

 

preferred

A unique action that's a member of actions indicating the preferred action.

 

gdk_drop_finish ()

void
gdk_drop_finish (GdkDrop *self,
                 GdkDragAction action);

Ends the drag operation after a drop.

The action must be a single action selected from the actions available via gdk_drop_get_actions().

Parameters

self

a GdkDrop

 

action

the action performed by the destination or 0 if the drop failed

 

gdk_drop_read_async ()

void
gdk_drop_read_async (GdkDrop *self,
                     const char **mime_types,
                     int io_priority,
                     GCancellable *cancellable,
                     GAsyncReadyCallback callback,
                     gpointer user_data);

Asynchronously read the dropped data from a GdkDrop in a format that complies with one of the mime types.

Parameters

self

a GdkDrop

 

mime_types

pointer to an array of mime types.

[array zero-terminated=1][element-type utf8]

io_priority

the io priority for the read operation

 

cancellable

optional GCancellable object, NULL to ignore.

[allow-none]

callback

a GAsyncReadyCallback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback .

[closure]

gdk_drop_read_finish ()

GInputStream *
gdk_drop_read_finish (GdkDrop *self,
                      GAsyncResult *result,
                      const char **out_mime_type,
                      GError **error);

Finishes an async drop read operation, see gdk_drop_read_async().

Parameters

self

a GdkDrop

 

result

a GAsyncResult

 

out_mime_type

return location for the used mime type.

[out][type utf8]

error

location to store error information on failure, or NULL.

[allow-none]

Returns

the GInputStream, or NULL.

[nullable][transfer full]


gdk_drop_read_value_async ()

void
gdk_drop_read_value_async (GdkDrop *self,
                           GType type,
                           int io_priority,
                           GCancellable *cancellable,
                           GAsyncReadyCallback callback,
                           gpointer user_data);

Asynchronously request the drag operation's contents converted to the given type . When the operation is finished callback will be called. You can then call gdk_drop_read_value_finish() to get the resulting GValue.

For local drag'n'drop operations that are available in the given GType, the value will be copied directly. Otherwise, GDK will try to use gdk_content_deserialize_async() to convert the data.

Parameters

self

a GdkDrop

 

type

a GType to read

 

io_priority

the I/O priority of the request.

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_drop_read_value_finish ()

const GValue *
gdk_drop_read_value_finish (GdkDrop *self,
                            GAsyncResult *result,
                            GError **error);

Finishes an async drop read started with gdk_drop_read_value_async().

Parameters

self

a GdkDrop

 

result

a GAsyncResult

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

a GValue containing the result.

[transfer none]

Types and Values

GdkDrag

typedef struct _GdkDrag GdkDrag;

The GdkDrag struct contains only private fields and should not be accessed directly.


GdkDrop

typedef struct _GdkDrop GdkDrop;

The GdkDrop struct contains only private fields and should not be accessed directly.


enum GdkDragCancelReason

Used in GdkDrag to the reason of a cancelled DND operation.

Members

GDK_DRAG_CANCEL_NO_TARGET

There is no suitable drop target.

 

GDK_DRAG_CANCEL_USER_CANCELLED

Drag cancelled by the user

 

GDK_DRAG_CANCEL_ERROR

Unspecified error.

 

enum GdkDragAction

Used in GdkDrop and GdkDrag to indicate the actions that the destination can and should do with the dropped data.

Members

GDK_ACTION_COPY

Copy the data.

 

GDK_ACTION_MOVE

Move the data, i.e. first copy it, then delete it from the source using the DELETE target of the X selection protocol.

 

GDK_ACTION_LINK

Add a link to the data. Note that this is only useful if source and destination agree on what it means, and is not supported on all platforms.

 

GDK_ACTION_ASK

Ask the user what to do with the data.

 

GDK_ACTION_ALL

#define GDK_ACTION_ALL (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK)

Defines all possible DND actions. This can be used in gdk_drop_status() messages when any drop can be accepted or a more specific drop method is not yet known.


GdkDragSurface

typedef struct _GdkDragSurface GdkDragSurface;

A GdkDragSurface is an interface implemented by GdkSurfaces used during a DND operation.


GdkDragSurfaceInterface

typedef struct _GdkDragSurfaceInterface GdkDragSurfaceInterface;

The GdkDragSurfaceInterface implementation is private to GDK.

Property Details

The “actions” property

  “actions”                  GdkDragAction

The possible actions.

Owner: GdkDrag

Flags: Read / Write


The “content” property

  “content”                  GdkContentProvider *

The GdkContentProvider.

Owner: GdkDrag

Flags: Read / Write / Construct Only


The “device” property

  “device”                   GdkDevice *

The GdkDevice that is performing the drag.

Owner: GdkDrag

Flags: Read / Write / Construct Only


The “display” property

  “display”                  GdkDisplay *

The GdkDisplay that the drag belongs to.

Owner: GdkDrag

Flags: Read


The “formats” property

  “formats”                  GdkContentFormats *

The possible formats that the drag can provide its data in.

Owner: GdkDrag

Flags: Read / Write / Construct Only


The “selected-action” property

  “selected-action”          GdkDragAction

The currently selected action.

Owner: GdkDrag

Flags: Read / Write


The “surface” property

  “surface”                  GdkSurface *

The surface where the drag originates.

Owner: GdkDrag

Flags: Read / Write / Construct Only


The “actions” property

  “actions”                  GdkDragAction

The possible actions for this drop

Owner: GdkDrop

Flags: Read / Write / Construct Only

Default value: GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK


The “device” property

  “device”                   GdkDevice *

The GdkDevice performing the drop

Owner: GdkDrop

Flags: Read / Write / Construct Only


The “display” property

  “display”                  GdkDisplay *

The GdkDisplay that the drop belongs to.

Owner: GdkDrop

Flags: Read


The “drag” property

  “drag”                     GdkDrag *

The GdkDrag that initiated this drop

Owner: GdkDrop

Flags: Read / Write / Construct Only


The “formats” property

  “formats”                  GdkContentFormats *

The possible formats that the drop can provide its data in.

Owner: GdkDrop

Flags: Read / Write / Construct Only


The “surface” property

  “surface”                  GdkSurface *

The GdkSurface the drop happens on

Owner: GdkDrop

Flags: Read / Write / Construct Only

Signal Details

The “cancel” signal

void
user_function (GdkDrag            *drag,
               GdkDragCancelReason reason,
               gpointer            user_data)

The drag operation was cancelled.

Parameters

drag

The object on which the signal is emitted

 

reason

The reason the drag was cancelled

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “dnd-finished” signal

void
user_function (GdkDrag *drag,
               gpointer user_data)

The drag operation was finished, the destination finished reading all data. The drag object can now free all miscellaneous data.

Parameters

drag

The object on which the signal is emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “drop-performed” signal

void
user_function (GdkDrag *drag,
               gpointer user_data)

The drag operation was performed on an accepting client.

Parameters

drag

The object on which the signal is emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/gdk4-Cursors.html0000664000175000017500000007247014010071761020471 0ustar mclasenmclasen Cursors: GDK 4 Reference Manual

Cursors

Cursors — Named and texture cursors

Properties

GdkCursor * fallback Read / Write / Construct Only
int hotspot-x Read / Write / Construct Only
int hotspot-y Read / Write / Construct Only
char * name Read / Write / Construct Only
GdkTexture * texture Read / Write / Construct Only

Types and Values

Object Hierarchy

    GObject
    ╰── GdkCursor

Includes

#include <gdk/gdk.h>

Description

These functions are used to create and destroy cursors. Cursors are immutable objects, so once you created them, there is no way to modify them later. Create a new cursor when you want to change something about it.

Cursors by themselves are not very interesting, they must be bound to a window for users to see them. This is done with gdk_surface_set_cursor() or gdk_surface_set_device_cursor(). Applications will typically use higher-level GTK functions such as gtk_widget_set_cursor() instead.

Cursors are not bound to a given GdkDisplay, so they can be shared. However, the appearance of cursors may vary when used on different platforms.

There are multiple ways to create cursors. The platform's own cursors can be created with gdk_cursor_new_from_name(). That function lists the commonly available names that are shared with the CSS specification. Other names may be available, depending on the platform in use. On some platforms, what images are used for named cursors may be influenced by the cursor theme.

Another option to create a cursor is to use gdk_cursor_new_from_texture() and provide an image to use for the cursor.

To ease work with unsupported cursors, a fallback cursor can be provided. If a GdkSurface cannot use a cursor because of the reasons mentioned above, it will try the fallback cursor. Fallback cursors can themselves have fallback cursors again, so it is possible to provide a chain of progressively easier to support cursors. If none of the provided cursors can be supported, the default cursor will be the ultimate fallback.

Functions

gdk_cursor_new_from_texture ()

GdkCursor *
gdk_cursor_new_from_texture (GdkTexture *texture,
                             int hotspot_x,
                             int hotspot_y,
                             GdkCursor *fallback);

Creates a new cursor from a GdkTexture.

Parameters

texture

the texture providing the pixel data

 

hotspot_x

the horizontal offset of the “hotspot” of the cursor

 

hotspot_y

the vertical offset of the “hotspot” of the cursor

 

fallback

NULL or the GdkCursor to fall back to when this one cannot be supported.

[allow-none]

Returns

a new GdkCursor.


gdk_cursor_new_from_name ()

GdkCursor *
gdk_cursor_new_from_name (const char *name,
                          GdkCursor *fallback);

Creates a new cursor by looking up name in the current cursor theme.

A recommended set of cursor names that will work across different platforms can be found in the CSS specification:

  • "none"

  • "default"

  • "help"

  • "pointer"

  • "context-menu"

  • "progress"

  • "wait"

  • "cell"

  • "crosshair"

  • "text"

  • "vertical-text"

  • "alias"

  • "copy"

  • "no-drop"

  • "move"

  • "not-allowed"

  • "grab"

  • "grabbing"

  • "all-scroll"

  • "col-resize"

  • "row-resize"

  • "n-resize"

  • "e-resize"

  • "s-resize"

  • "w-resize"

  • "ne-resize"

  • "nw-resize"

  • "sw-resize"

  • "se-resize"

  • "ew-resize"

  • "ns-resize"

  • "nesw-resize"

  • "nwse-resize"

  • "zoom-in"

  • "zoom-out"

Parameters

name

the name of the cursor

 

fallback

NULL or the GdkCursor to fall back to when this one cannot be supported.

[allow-none]

Returns

a new GdkCursor, or NULL if there is no cursor with the given name.

[nullable]


gdk_cursor_get_fallback ()

GdkCursor *
gdk_cursor_get_fallback (GdkCursor *cursor);

Returns the fallback for this cursor . The fallback will be used if this cursor is not available on a given GdkDisplay.

For named cursors, this can happen when using nonstandard names or when using an incomplete cursor theme. For textured cursors, this can happen when the texture is too large or when the GdkDisplay it is used on does not support textured cursors.

Parameters

cursor

a GdkCursor.

 

Returns

the fallback of the cursor or NULL to use the default cursor as fallback.

[transfer none][nullable]


gdk_cursor_get_name ()

const char *
gdk_cursor_get_name (GdkCursor *cursor);

Returns the name of the cursor. If the cursor is not a named cursor, NULL will be returned.

Parameters

cursor

a GdkCursor.

 

Returns

the name of the cursor or NULL if it is not a named cursor.

[transfer none][nullable]


gdk_cursor_get_texture ()

GdkTexture *
gdk_cursor_get_texture (GdkCursor *cursor);

Returns the texture for the cursor. If the cursor is a named cursor, NULL will be returned.

Parameters

cursor

a GdkCursor.

 

Returns

the texture for cursor or NULL if it is a named cursor.

[transfer none][nullable]


gdk_cursor_get_hotspot_x ()

int
gdk_cursor_get_hotspot_x (GdkCursor *cursor);

Returns the horizontal offset of the hotspot. The hotspot indicates the pixel that will be directly above the cursor.

Note that named cursors may have a nonzero hotspot, but this function will only return the hotspot position for cursors created with gdk_cursor_new_from_texture().

Parameters

cursor

a GdkCursor.

 

Returns

the horizontal offset of the hotspot or 0 for named cursors


gdk_cursor_get_hotspot_y ()

int
gdk_cursor_get_hotspot_y (GdkCursor *cursor);

Returns the vertical offset of the hotspot. The hotspot indicates the pixel that will be directly above the cursor.

Note that named cursors may have a nonzero hotspot, but this function will only return the hotspot position for cursors created with gdk_cursor_new_from_texture().

Parameters

cursor

a GdkCursor.

 

Returns

the vertical offset of the hotspot or 0 for named cursors

Types and Values

GdkCursor

typedef struct _GdkCursor GdkCursor;

A GdkCursor represents a cursor. Its contents are private.

Cursors are immutable objects, so they can not change after they have been constructed.

Property Details

The “fallback” property

  “fallback”                 GdkCursor *

Cursor image to fall back to if this cursor cannot be displayed.

Owner: GdkCursor

Flags: Read / Write / Construct Only


The “hotspot-x” property

  “hotspot-x”                int

Horizontal offset of the cursor hotspot.

Owner: GdkCursor

Flags: Read / Write / Construct Only

Allowed values: >= 0

Default value: 0


The “hotspot-y” property

  “hotspot-y”                int

Vertical offset of the cursor hotspot.

Owner: GdkCursor

Flags: Read / Write / Construct Only

Allowed values: >= 0

Default value: 0


The “name” property

  “name”                     char *

Name of this cursor.

Owner: GdkCursor

Flags: Read / Write / Construct Only

Default value: NULL


The “texture” property

  “texture”                  GdkTexture *

The texture displayed by this cursor.

Owner: GdkCursor

Flags: Read / Write / Construct Only

docs/reference/gdk/html/GdkGLContext.html0000664000175000017500000013361414010071761020475 0ustar mclasenmclasen GdkGLContext: GDK 4 Reference Manual

GdkGLContext

GdkGLContext — OpenGL draw context

Properties

GdkGLContext * shared-context Read / Write / Construct Only

Types and Values

Object Hierarchy

    GObject
    ╰── GdkDrawContext
        ╰── GdkGLContext

Includes

#include <gdk/gdk.h>

Description

GdkGLContext is an object representing the platform-specific OpenGL draw context.

GdkGLContexts are created for a GdkSurface using gdk_surface_create_gl_context(), and the context will match the the characteristics of the surface.

A GdkGLContext is not tied to any particular normal framebuffer. For instance, it cannot draw to the GdkSurface back buffer. The GDK repaint system is in full control of the painting to that. Instead, you can create render buffers or textures and use gdk_cairo_draw_from_gl() in the draw function of your widget to draw them. Then GDK will handle the integration of your rendering with that of other widgets.

Support for GdkGLContext is platform-specific, context creation can fail, returning NULL context.

A GdkGLContext has to be made "current" in order to start using it, otherwise any OpenGL call will be ignored.

Creating a new OpenGL context

In order to create a new GdkGLContext instance you need a GdkSurface, which you typically get during the realize call of a widget.

A GdkGLContext is not realized until either gdk_gl_context_make_current(), or until it is realized using gdk_gl_context_realize(). It is possible to specify details of the GL context like the OpenGL version to be used, or whether the GL context should have extra state validation enabled after calling gdk_surface_create_gl_context() by calling gdk_gl_context_realize(). If the realization fails you have the option to change the settings of the GdkGLContext and try again.

Using a GdkGLContext

You will need to make the GdkGLContext the current context before issuing OpenGL calls; the system sends OpenGL commands to whichever context is current. It is possible to have multiple contexts, so you always need to ensure that the one which you want to draw with is the current one before issuing commands:

1
gdk_gl_context_make_current (context);

You can now perform your drawing using OpenGL commands.

You can check which GdkGLContext is the current one by using gdk_gl_context_get_current(); you can also unset any GdkGLContext that is currently set by calling gdk_gl_context_clear_current().

Functions

gdk_gl_context_get_display ()

GdkDisplay *
gdk_gl_context_get_display (GdkGLContext *context);

Retrieves the GdkDisplay the context is created for

Parameters

context

a GdkGLContext

 

Returns

a GdkDisplay or NULL.

[nullable][transfer none]


gdk_gl_context_get_surface ()

GdkSurface *
gdk_gl_context_get_surface (GdkGLContext *context);

Retrieves the GdkSurface used by the context .

Parameters

context

a GdkGLContext

 

Returns

a GdkSurface or NULL.

[nullable][transfer none]


gdk_gl_context_get_shared_context ()

GdkGLContext *
gdk_gl_context_get_shared_context (GdkGLContext *context);

Retrieves the GdkGLContext that this context share data with.

Parameters

context

a GdkGLContext

 

Returns

a GdkGLContext or NULL.

[nullable][transfer none]


gdk_gl_context_get_version ()

void
gdk_gl_context_get_version (GdkGLContext *context,
                            int *major,
                            int *minor);

Retrieves the OpenGL version of the context .

The context must be realized prior to calling this function.

Parameters

context

a GdkGLContext

 

major

return location for the major version.

[out]

minor

return location for the minor version.

[out]

gdk_gl_context_set_required_version ()

void
gdk_gl_context_set_required_version (GdkGLContext *context,
                                     int major,
                                     int minor);

Sets the major and minor version of OpenGL to request.

Setting major and minor to zero will use the default values.

The GdkGLContext must not be realized or made current prior to calling this function.

Parameters

context

a GdkGLContext

 

major

the major version to request

 

minor

the minor version to request

 

gdk_gl_context_get_required_version ()

void
gdk_gl_context_get_required_version (GdkGLContext *context,
                                     int *major,
                                     int *minor);

Retrieves the major and minor version requested by calling gdk_gl_context_set_required_version().

Parameters

context

a GdkGLContext

 

major

return location for the major version to request.

[out][nullable]

minor

return location for the minor version to request.

[out][nullable]

gdk_gl_context_set_debug_enabled ()

void
gdk_gl_context_set_debug_enabled (GdkGLContext *context,
                                  gboolean enabled);

Sets whether the GdkGLContext should perform extra validations and run time checking. This is useful during development, but has additional overhead.

The GdkGLContext must not be realized or made current prior to calling this function.

Parameters

context

a GdkGLContext

 

enabled

whether to enable debugging in the context

 

gdk_gl_context_get_debug_enabled ()

gboolean
gdk_gl_context_get_debug_enabled (GdkGLContext *context);

Retrieves the value set using gdk_gl_context_set_debug_enabled().

Parameters

context

a GdkGLContext

 

Returns

TRUE if debugging is enabled


gdk_gl_context_set_forward_compatible ()

void
gdk_gl_context_set_forward_compatible (GdkGLContext *context,
                                       gboolean compatible);

Sets whether the GdkGLContext should be forward compatible.

Forward compatible contexts must not support OpenGL functionality that has been marked as deprecated in the requested version; non-forward compatible contexts, on the other hand, must support both deprecated and non deprecated functionality.

The GdkGLContext must not be realized or made current prior to calling this function.

Parameters

context

a GdkGLContext

 

compatible

whether the context should be forward compatible

 

gdk_gl_context_get_forward_compatible ()

gboolean
gdk_gl_context_get_forward_compatible (GdkGLContext *context);

Retrieves the value set using gdk_gl_context_set_forward_compatible().

Parameters

context

a GdkGLContext

 

Returns

TRUE if the context should be forward compatible


gdk_gl_context_set_use_es ()

void
gdk_gl_context_set_use_es (GdkGLContext *context,
                           int use_es);

Requests that GDK create an OpenGL ES context instead of an OpenGL one, if the platform and windowing system allows it.

The context must not have been realized.

By default, GDK will attempt to automatically detect whether the underlying GL implementation is OpenGL or OpenGL ES once the context is realized.

You should check the return value of gdk_gl_context_get_use_es() after calling gdk_gl_context_realize() to decide whether to use the OpenGL or OpenGL ES API, extensions, or shaders.

Parameters

context

a GdkGLContext:

 

use_es

whether the context should use OpenGL ES instead of OpenGL, or -1 to allow auto-detection

 

gdk_gl_context_get_use_es ()

gboolean
gdk_gl_context_get_use_es (GdkGLContext *context);

Checks whether the context is using an OpenGL or OpenGL ES profile.

Parameters

context

a GdkGLContext

 

Returns

TRUE if the GdkGLContext is using an OpenGL ES profile


gdk_gl_context_is_legacy ()

gboolean
gdk_gl_context_is_legacy (GdkGLContext *context);

Whether the GdkGLContext is in legacy mode or not.

The GdkGLContext must be realized before calling this function.

When realizing a GL context, GDK will try to use the OpenGL 3.2 core profile; this profile removes all the OpenGL API that was deprecated prior to the 3.2 version of the specification. If the realization is successful, this function will return FALSE.

If the underlying OpenGL implementation does not support core profiles, GDK will fall back to a pre-3.2 compatibility profile, and this function will return TRUE.

You can use the value returned by this function to decide which kind of OpenGL API to use, or whether to do extension discovery, or what kind of shader programs to load.

Parameters

context

a GdkGLContext

 

Returns

TRUE if the GL context is in legacy mode


gdk_gl_context_realize ()

gboolean
gdk_gl_context_realize (GdkGLContext *context,
                        GError **error);

Realizes the given GdkGLContext.

It is safe to call this function on a realized GdkGLContext.

Parameters

context

a GdkGLContext

 

error

return location for a GError

 

Returns

TRUE if the context is realized


gdk_gl_context_make_current ()

void
gdk_gl_context_make_current (GdkGLContext *context);

Makes the context the current one.

Parameters

context

a GdkGLContext

 

gdk_gl_context_get_current ()

GdkGLContext *
gdk_gl_context_get_current (void);

Retrieves the current GdkGLContext.

Returns

the current GdkGLContext, or NULL.

[nullable][transfer none]


gdk_gl_context_clear_current ()

void
gdk_gl_context_clear_current (void);

Clears the current GdkGLContext.

Any OpenGL call after this function returns will be ignored until gdk_gl_context_make_current() is called.

Types and Values

GdkGLContext

typedef struct _GdkGLContext GdkGLContext;

The GdkGLContext struct contains only private fields and should not be accessed directly.


enum GdkGLError

Error enumeration for GdkGLContext.

Members

GDK_GL_ERROR_NOT_AVAILABLE

OpenGL support is not available

 

GDK_GL_ERROR_UNSUPPORTED_FORMAT

The requested visual format is not supported

 

GDK_GL_ERROR_UNSUPPORTED_PROFILE

The requested profile is not supported

 

GDK_GL_ERROR_COMPILATION_FAILED

The shader compilation failed

 

GDK_GL_ERROR_LINK_FAILED

The shader linking failed

 

Property Details

The “shared-context” property

  “shared-context”           GdkGLContext *

The GdkGLContext that this context is sharing data with, or NULL

Owner: GdkGLContext

Flags: Read / Write / Construct Only

docs/reference/gdk/html/GdkPaintable.html0000664000175000017500000013636114010071761020527 0ustar mclasenmclasen GdkPaintable: GDK 4 Reference Manual

GdkPaintable

GdkPaintable — An interface for a paintable region

Signals

void invalidate-contents Run Last
void invalidate-size Run Last

Object Hierarchy

    GInterface
    ╰── GdkPaintable
    GObject
    ╰── GdkSnapshot

Prerequisites

GdkPaintable requires GObject.

Known Implementations

GdkPaintable is implemented by GdkGLTexture, GdkMemoryTexture and GdkTexture.

Includes

#include <gdk/gdk.h>

Description

GdkPaintable is a simple interface used by GDK and GTK to represent objects that can be painted anywhere at any size without requiring any sort of layout. The interface is inspired by similar concepts elsewhere, such as ClutterContent, HTML/CSS Paint Sources, or SVG Paint Servers.

A GdkPaintable can be snapshot at any time and size using gdk_paintable_snapshot(). How the paintable interprets that size and if it scales or centers itself into the given rectangle is implementation defined, though if you are implementing a GdkPaintable and don't know what to do, it is suggested that you scale your paintable ignoring any potential aspect ratio.

The contents that a GdkPaintable produces may depend on the GdkSnapshot passed to it. For example, paintables may decide to use more detailed images on higher resolution screens or when OpenGL is available. A GdkPaintable will however always produce the same output for the same snapshot.

A GdkPaintable may change its contents, meaning that it will now produce a different output with the same snapshot. Once that happens, it will call gdk_paintable_invalidate_contents() which will emit the “invalidate-contents” signal. If a paintable is known to never change its contents, it will set the GDK_PAINTABLE_STATIC_CONTENTS flag. If a consumer cannot deal with changing contents, it may call gdk_paintable_get_current_image() which will return a static paintable and use that.

A paintable can report an intrinsic (or preferred) size or aspect ratio it wishes to be rendered at, though it doesn't have to. Consumers of the interface can use this information to layout thepaintable appropriately. Just like the contents, the size of a paintable can change. A paintable will indicate this by calling gdk_paintable_invalidate_size() which will emit the “invalidate-size” signal. And just like for contents, if a paintable is known to never change its size, it will set the GDK_PAINTABLE_STATIC_SIZE flag.

Besides API for applications, there are some functions that are only useful for implementing subclasses and should not be used by applications: gdk_paintable_invalidate_contents(), gdk_paintable_invalidate_size(), gdk_paintable_new_empty().

Functions

gdk_paintable_get_current_image ()

GdkPaintable *
gdk_paintable_get_current_image (GdkPaintable *paintable);

Gets an immutable paintable for the current contents displayed by paintable .

This is useful when you want to retain the current state of an animation, for example to take a screenshot of a running animation.

If the paintable is already immutable, it will return itself.

Parameters

paintable

a GdkPaintable

 

Returns

An immutable paintable for the current contents of paintable .

[transfer full]


gdk_paintable_snapshot ()

void
gdk_paintable_snapshot (GdkPaintable *paintable,
                        GdkSnapshot *snapshot,
                        double width,
                        double height);

Snapshots the given paintable with the given width and height at the current (0,0) offset of the snapshot . If width and height are not larger than zero, this function will do nothing.

Parameters

paintable

a GdkPaintable

 

snapshot

a GdkSnapshot to snapshot to

 

width

width to snapshot in

 

height

height to snapshot in

 

gdk_paintable_get_flags ()

GdkPaintableFlags
gdk_paintable_get_flags (GdkPaintable *paintable);

Get flags for the paintable. This is oftentimes useful for optimizations.

See GdkPaintableFlags for the flags and what they mean.

Parameters

paintable

a GdkPaintable

 

Returns

The GdkPaintableFlags for this paintable.


gdk_paintable_get_intrinsic_width ()

int
gdk_paintable_get_intrinsic_width (GdkPaintable *paintable);

Gets the preferred width the paintable would like to be displayed at. Consumers of this interface can use this to reserve enough space to draw the paintable.

This is a purely informational value and does not in any way limit the values that may be passed to gdk_paintable_snapshot().

If the paintable does not have a preferred width, it returns 0. Negative values are never returned.

Parameters

paintable

a GdkPaintable

 

Returns

the intrinsic width of paintable or 0 if none.


gdk_paintable_get_intrinsic_height ()

int
gdk_paintable_get_intrinsic_height (GdkPaintable *paintable);

Gets the preferred height the paintable would like to be displayed at. Consumers of this interface can use this to reserve enough space to draw the paintable.

This is a purely informational value and does not in any way limit the values that may be passed to gdk_paintable_snapshot().

If the paintable does not have a preferred height, it returns 0. Negative values are never returned.

Parameters

paintable

a GdkPaintable

 

Returns

the intrinsic height of paintable or 0 if none.


gdk_paintable_get_intrinsic_aspect_ratio ()

double
gdk_paintable_get_intrinsic_aspect_ratio
                               (GdkPaintable *paintable);

Gets the preferred aspect ratio the paintable would like to be displayed at. The aspect ratio is the width divided by the height, so a value of 0.5 means that the paintable prefers to be displayed twice as high as it is wide. Consumers of this interface can use this to preserve aspect ratio when displaying the paintable.

This is a purely informational value and does not in any way limit the values that may be passed to gdk_paintable_snapshot().

Usually when a paintable returns nonzero values from gdk_paintable_get_intrinsic_width() and gdk_paintable_get_intrinsic_height() the aspect ratio should conform to those values, though that is not required.

If the paintable does not have a preferred aspect ratio, it returns 0. Negative values are never returned.

Parameters

paintable

a GdkPaintable

 

Returns

the intrinsic aspect ratio of paintable or 0 if none.


gdk_paintable_compute_concrete_size ()

void
gdk_paintable_compute_concrete_size (GdkPaintable *paintable,
                                     double specified_width,
                                     double specified_height,
                                     double default_width,
                                     double default_height,
                                     double *concrete_width,
                                     double *concrete_height);

Applies the sizing algorithm outlined in https://drafts.csswg.org/css-images-3/default-sizing to the given paintable . See that link for more details.

It is not necessary to call this function when both specified_width and specified_height are known, but it is useful to call this function in GtkWidget:measure implementations to compute the other dimension when only one dimension is given.

Parameters

paintable

a GdkPaintable

 

specified_width

the width paintable could be drawn into or 0.0 if unknown

 

specified_height

the height paintable could be drawn into or 0.0 if unknown

 

default_width

the width paintable would be drawn into if no other constraints were given

 

default_height

the height paintable would be drawn into if no other constraints were given

 

concrete_width

will be set to the concrete width computed.

[out]

concrete_height

will be set to the concrete height computed.

[out]

gdk_paintable_invalidate_contents ()

void
gdk_paintable_invalidate_contents (GdkPaintable *paintable);

Called by implementations of GdkPaintable to invalidate their contents. Unless the contents are invalidated, implementations must guarantee that multiple calls of gdk_paintable_snapshot() produce the same output.

This function will emit the “invalidate-contents” signal.

If a paintable reports the GDK_PAINTABLE_STATIC_CONTENTS flag, it must not call this function.

Parameters

paintable

a GdkPaintable

 

gdk_paintable_invalidate_size ()

void
gdk_paintable_invalidate_size (GdkPaintable *paintable);

Called by implementations of GdkPaintable to invalidate their size. As long as the size is not invalidated, paintable must return the same values for its intrinsic width, height and aspect ratio.

This function will emit the “invalidate-size” signal.

If a paintable reports the GDK_PAINTABLE_STATIC_SIZE flag, it must not call this function.

Parameters

paintable

a GdkPaintable

 

gdk_paintable_new_empty ()

GdkPaintable *
gdk_paintable_new_empty (int intrinsic_width,
                         int intrinsic_height);

Returns a paintable that has the given intrinsic size and draws nothing. This is often useful for implementing the GdkPaintableInterface.get_current_image() virtual function when the paintable is in an incomplete state (like a GtkMediaStream before receiving the first frame).

Parameters

intrinsic_width

The intrinsic width to report. Can be 0 for no width.

 

intrinsic_height

The intrinsic height to report. Can be 0 for no height.

 

Returns

a GdkPaintable.

[transfer full]

Types and Values

GdkPaintable

typedef struct _GdkPaintable GdkPaintable;

Interface for paintable objects.


struct GdkPaintableInterface

struct GdkPaintableInterface {
  /* draw to 0,0 with the given width and height */
  void                  (* snapshot)                    (GdkPaintable           *paintable,
                                                         GdkSnapshot            *snapshot,
                                                         double                  width,
                                                         double                  height);
  /* get the current contents in an immutable form (optional) */
  GdkPaintable *        (* get_current_image)           (GdkPaintable           *paintable);

  /* get flags for potential optimizations (optional) */
  GdkPaintableFlags     (* get_flags)                   (GdkPaintable           *paintable);
  /* preferred width of paintable or 0 if it has no width (optional) */
  int                   (* get_intrinsic_width)         (GdkPaintable           *paintable);
  /* preferred height of paintable or 0 if it has no height (optional) */
  int                   (* get_intrinsic_height)        (GdkPaintable           *paintable);
  /* aspect ratio (width / height) of paintable or 0 if it has no aspect ratio (optional) */
  double                (* get_intrinsic_aspect_ratio)  (GdkPaintable           *paintable);
};

The list of functions that can be implemented for the GdkPaintable interface.

Note that apart from the GdkPaintableInterface.snapshot() function, no virtual function of this interface is mandatory to implement, though it is a good idea to implement GdkPaintableInterface.get_current_image() for non-static paintables and GdkPaintableInterface.get_flags() if the image is not dynamic as the default implementation returns no flags and that will make the implementation likely quite slow.

Members

snapshot ()

Snapshot the paintable. The given width and height are guaranteed to be larger than 0.0. The resulting snapshot must modify only the area in the rectangle from (0,0) to (width, height). This is the only function that must be implemented for this interface.

 

get_current_image ()

return a GdkPaintable that does not change over time. This means the GDK_PAINTABLE_STATIC_SIZE and GDK_PAINTABLE_STATIC_CONTENTS flag are set.

 

get_flags ()

Get the flags for this instance. See GdkPaintableFlags for details.

 

get_intrinsic_width ()

The preferred width for this object to be snapshot at or 0 if none. This is purely a hint. The object must still be able to render at any size.

 

get_intrinsic_height ()

The preferred height for this object to be snapshot at or 0 if none. This is purely a hint. The object must still be able to render at any size.

 

get_intrinsic_aspect_ratio ()

The preferred aspect ratio for this object or 0 if none. If both GdkPaintableInterface.get_intrinsic_width() and GdkPaintableInterface.get_intrinsic_height() return non-zero values, this function should return the aspect ratio computed from those.

 

enum GdkPaintableFlags

Flags about this object. Implementations use these for optimizations such as caching.

Members

GDK_PAINTABLE_STATIC_SIZE

The size is immutable. The “invalidate-size” signal will never be emitted.

 

GDK_PAINTABLE_STATIC_CONTENTS

The content is immutable. The “invalidate-contents” signal will never be emitted.

 

GdkSnapshot

typedef struct _GdkSnapshot GdkSnapshot;

Base type for snapshot operations.

Signal Details

The “invalidate-contents” signal

void
user_function (GdkPaintable *paintable,
               gpointer      user_data)

Emitted when the contents of the paintable change.

Examples for such an event would be videos changing to the next frame or the icon theme for an icon changing.

Parameters

paintable

a GdkPaintable

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “invalidate-size” signal

void
user_function (GdkPaintable *paintable,
               gpointer      user_data)

Emitted when the intrinsic size of the paintable changes. This means the values reported by at least one of gdk_paintable_get_intrinsic_width(), gdk_paintable_get_intrinsic_height() or gdk_paintable_get_intrinsic_aspect_ratio() has changed.

Examples for such an event would be a paintable displaying the contents of a toplevel surface being resized.

Parameters

paintable

a GdkPaintable

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

See Also

ClutterContent, GtkImage, GdkTexture, GtkSnapshot

docs/reference/gdk/html/ch01.html0000664000175000017500000001734414010071761016734 0ustar mclasenmclasen API Reference: GDK 4 Reference Manual

API Reference

General — Library initialization and versioning
GdkDisplayManager — Maintains a list of all open GdkDisplays
GdkDisplay — Controls a set of monitors and their associated input devices
GdkSeat — Object representing a user seat
GdkDevice — Object representing an input device
GtkDevicePad — Pad device interface
GdkMonitor — Object representing an output
GdkRectangle — Simple graphical data type
GdkTexture — Pixel data
GdkPaintable — An interface for a paintable region
GdkRGBA — RGBA colors
Cursors — Named and texture cursors
Surfaces — Onscreen display areas in the target window system
Toplevels — Interface for toplevel surfaces
GdkToplevelLayout — Information for presenting toplevels
GdkToplevelSize — Information for computing toplevel size
Popups — Interface for popup surfaces
GdkPopupLayout — Information for presenting popups
GdkFrameClock — Synchronizes painting to a surface
Frame timings — Object holding timing information for a single frame
GdkDrawContext — Base class for draw contexts
GdkGLContext — OpenGL draw context
GdkVulkanContext — Vulkan draw context
GdkCairoContext — Cairo draw context
Events — Functions for handling events from the window system
Key Values — Functions for manipulating keyboard codes
Clipboards — Share data between applications for Copy-and-Paste
Drag And Drop — Functions for controlling drag and drop handling
Content Formats — Advertising and negotiating of content exchange formats
GdkContentProvider — Provides content for data transfer between applications
GdkContentSerializer — Serialize content for transfer
GdkContentDeserializer — Deserialize content for transfer
GdkPixbuf Interaction — Functions for obtaining pixbufs
Pango Interaction — Using Pango in GDK
Cairo Interaction — Functions to support using cairo
docs/reference/gdk/html/gdk4-Pixbufs.html0000664000175000017500000002204214010071761020437 0ustar mclasenmclasen GdkPixbuf Interaction: GDK 4 Reference Manual

GdkPixbuf Interaction

GdkPixbuf Interaction — Functions for obtaining pixbufs

Includes

#include <gdk/gdk.h>

Description

Pixbufs are client-side images. For details on how to create and manipulate pixbufs, see the GdkPixbuf API documentation.

The functions described here allow to obtain pixbufs from GdkSurfaces and cairo surfaces.

Functions

gdk_pixbuf_get_from_surface ()

GdkPixbuf *
gdk_pixbuf_get_from_surface (cairo_surface_t *surface,
                             int src_x,
                             int src_y,
                             int width,
                             int height);

Transfers image data from a cairo_surface_t and converts it to an RGB(A) representation inside a GdkPixbuf. This allows you to efficiently read individual pixels from cairo surfaces.

This function will create an RGB pixbuf with 8 bits per channel. The pixbuf will contain an alpha channel if the surface contains one.

Parameters

surface

surface to copy from

 

src_x

Source X coordinate within surface

 

src_y

Source Y coordinate within surface

 

width

Width in pixels of region to get

 

height

Height in pixels of region to get

 

Returns

A newly-created pixbuf with a reference count of 1, or NULL on error.

[nullable][transfer full]


gdk_pixbuf_get_from_texture ()

GdkPixbuf *
gdk_pixbuf_get_from_texture (GdkTexture *texture);

Creates a new pixbuf from texture . This should generally not be used in newly written code as later stages will almost certainly convert the pixbuf back into a texture to draw it on screen.

Parameters

texture

a GdkTexture

 

Returns

a new GdkPixbuf or NULL in case of an error.

[transfer full][nullable]

docs/reference/gdk/html/gdk4-Clipboards.html0000664000175000017500000020202314010071761021100 0ustar mclasenmclasen Clipboards: GDK 4 Reference Manual

Clipboards

Clipboards — Share data between applications for Copy-and-Paste

Properties

GdkContentProvider * content Read
GdkDisplay * display Read / Write / Construct Only
GdkContentFormats * formats Read
gboolean local Read

Signals

void changed Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkClipboard

Includes

#include <gdk/gdk.h>

Description

The GdkClipboard object represents a clipboard of data shared between different applications or between different parts of the same application.

To get a GdkClipboard object, use gdk_display_get_clipboard() or gdk_display_get_primary_clipboard(). You can find out about the data that is currently available in a clipboard using gdk_clipboard_get_formats().

To make text or image data available in a clipboard, use gdk_clipboard_set_text() or gdk_clipboard_set_texture(). For other data, you can use gdk_clipboard_set_content(), which takes a GdkContentProvider object.

To read textual or image data from a clipboard, use gdk_clipboard_read_text_async() or gdk_clipboard_read_texture_async(). For other data, use gdk_clipboard_read_async(), which provides a GInputStream object.

Functions

gdk_clipboard_get_display ()

GdkDisplay *
gdk_clipboard_get_display (GdkClipboard *clipboard);

Gets the GdkDisplay that the clipboard was created for.

Parameters

clipboard

a GdkClipboard

 

Returns

a GdkDisplay.

[transfer none]


gdk_clipboard_get_formats ()

GdkContentFormats *
gdk_clipboard_get_formats (GdkClipboard *clipboard);

Gets the formats that the clipboard can provide its current contents in.

Parameters

clipboard

a GdkClipboard

 

Returns

The formats of the clipboard.

[transfer none]


gdk_clipboard_is_local ()

gboolean
gdk_clipboard_is_local (GdkClipboard *clipboard);

Returns if the clipboard is local. A clipboard is considered local if it was last claimed by the running application.

Note that gdk_clipboard_get_content() may return NULL even on a local clipboard. In this case the clipboard is empty.

Parameters

clipboard

a GdkClipboard

 

Returns

TRUE if the clipboard is local


gdk_clipboard_get_content ()

GdkContentProvider *
gdk_clipboard_get_content (GdkClipboard *clipboard);

Returns the GdkContentProvider currently set on clipboard . If the clipboard is empty or its contents are not owned by the current process, NULL will be returned.

Parameters

clipboard

a GdkClipboard

 

Returns

The content of a clipboard or NULL if the clipboard does not maintain any content.

[transfer none][nullable]


gdk_clipboard_store_async ()

void
gdk_clipboard_store_async (GdkClipboard *clipboard,
                           int io_priority,
                           GCancellable *cancellable,
                           GAsyncReadyCallback callback,
                           gpointer user_data);

Asynchronously instructs the clipboard to store its contents remotely to preserve them for later usage. If the clipboard is not local, this function does nothing but report success.

This function is called automatically when gtk_main() or GtkApplication exit, so you likely don't need to call it.

Parameters

clipboard

a GdkClipboard

 

io_priority

the I/O priority of the request.

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_clipboard_store_finish ()

gboolean
gdk_clipboard_store_finish (GdkClipboard *clipboard,
                            GAsyncResult *result,
                            GError **error);

Finishes an asynchronous clipboard store started with gdk_clipboard_store_async().

Parameters

clipboard

a GdkClipboard

 

result

a GAsyncResult

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

TRUE if storing was successful.


gdk_clipboard_read_async ()

void
gdk_clipboard_read_async (GdkClipboard *clipboard,
                          const char **mime_types,
                          int io_priority,
                          GCancellable *cancellable,
                          GAsyncReadyCallback callback,
                          gpointer user_data);

Asynchronously requests an input stream to read the clipboard 's contents from. When the operation is finished callback will be called. You can then call gdk_clipboard_read_finish() to get the result of the operation.

The clipboard will choose the most suitable mime type from the given list to fulfill the request, preferring the ones listed first.

Parameters

clipboard

a GdkClipboard

 

mime_types

a NULL-terminated array of mime types to choose from

 

io_priority

the I/O priority of the request.

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_clipboard_read_finish ()

GInputStream *
gdk_clipboard_read_finish (GdkClipboard *clipboard,
                           GAsyncResult *result,
                           const char **out_mime_type,
                           GError **error);

Finishes an asynchronous clipboard read started with gdk_clipboard_read_async().

Parameters

clipboard

a GdkClipboard

 

result

a GAsyncResult

 

out_mime_type

pointer to store the chosen mime type in or NULL.

[out][allow-none][transfer none]

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

a GInputStream or NULL on error.

[transfer full][nullable]


gdk_clipboard_read_value_async ()

void
gdk_clipboard_read_value_async (GdkClipboard *clipboard,
                                GType type,
                                int io_priority,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);

Asynchronously request the clipboard contents converted to the given type . When the operation is finished callback will be called. You can then call gdk_clipboard_read_value_finish() to get the resulting GValue.

For local clipboard contents that are available in the given GType, the value will be copied directly. Otherwise, GDK will try to use gdk_content_deserialize_async() to convert the clipboard's data.

Parameters

clipboard

a GdkClipboard

 

type

a GType to read

 

io_priority

the I/O priority of the request.

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_clipboard_read_value_finish ()

const GValue *
gdk_clipboard_read_value_finish (GdkClipboard *clipboard,
                                 GAsyncResult *result,
                                 GError **error);

Finishes an asynchronous clipboard read started with gdk_clipboard_read_value_async().

Parameters

clipboard

a GdkClipboard

 

result

a GAsyncResult

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

a GValue containing the result.

[transfer none]


gdk_clipboard_read_texture_async ()

void
gdk_clipboard_read_texture_async (GdkClipboard *clipboard,
                                  GCancellable *cancellable,
                                  GAsyncReadyCallback callback,
                                  gpointer user_data);

Asynchronously request the clipboard contents converted to a GdkPixbuf. When the operation is finished callback will be called. You can then call gdk_clipboard_read_texture_finish() to get the result.

This is a simple wrapper around gdk_clipboard_read_value_async(). Use that function or gdk_clipboard_read_async() directly if you need more control over the operation.

Parameters

clipboard

a GdkClipboard

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_clipboard_read_texture_finish ()

GdkTexture *
gdk_clipboard_read_texture_finish (GdkClipboard *clipboard,
                                   GAsyncResult *result,
                                   GError **error);

Finishes an asynchronous clipboard read started with gdk_clipboard_read_texture_async().

Parameters

clipboard

a GdkClipboard

 

result

a GAsyncResult

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

a new GdkTexture or NULL on error.

[transfer full][nullable]


gdk_clipboard_read_text_async ()

void
gdk_clipboard_read_text_async (GdkClipboard *clipboard,
                               GCancellable *cancellable,
                               GAsyncReadyCallback callback,
                               gpointer user_data);

Asynchronously request the clipboard contents converted to a string. When the operation is finished callback will be called. You can then call gdk_clipboard_read_text_finish() to get the result.

This is a simple wrapper around gdk_clipboard_read_value_async(). Use that function or gdk_clipboard_read_async() directly if you need more control over the operation.

Parameters

clipboard

a GdkClipboard

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_clipboard_read_text_finish ()

char *
gdk_clipboard_read_text_finish (GdkClipboard *clipboard,
                                GAsyncResult *result,
                                GError **error);

Finishes an asynchronous clipboard read started with gdk_clipboard_read_text_async().

Parameters

clipboard

a GdkClipboard

 

result

a GAsyncResult

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

a new string or NULL on error.

[transfer full][nullable]


gdk_clipboard_set_content ()

gboolean
gdk_clipboard_set_content (GdkClipboard *clipboard,
                           GdkContentProvider *provider);

Sets a new content provider on clipboard . The clipboard will claim the GdkDisplay's resources and advertise these new contents to other applications.

In the rare case of a failure, this function will return FALSE. The clipboard will then continue reporting its old contents and ignore provider .

If the contents are read by either an external application or the clipboard 's read functions, clipboard will select the best format to transfer the contents and then request that format from provider .

Parameters

clipboard

a GdkClipboard

 

provider

the new contents of clipboard or NULL to clear the clipboard.

[transfer none][allow-none]

Returns

TRUE if setting the clipboard succeeded


gdk_clipboard_set ()

void
gdk_clipboard_set (GdkClipboard *clipboard,
                   GType type,
                   ...);

Sets the clipboard to contain the value collected from the given varargs.

Parameters

clipboard

a GdkClipboard

 

type

type of value to set

 

...

value contents conforming to type

 

gdk_clipboard_set_valist ()

void
gdk_clipboard_set_valist (GdkClipboard *clipboard,
                          GType type,
                          va_list args);

Sets the clipboard to contain the value collected from the given args .

[skip]

Parameters

clipboard

a GdkClipboard

 

type

type of value to set

 

args

varargs containing the value of type

 

gdk_clipboard_set_value ()

void
gdk_clipboard_set_value (GdkClipboard *clipboard,
                         const GValue *value);

Sets the clipboard to contain the given value .

[rename-to gdk_clipboard_set]

Parameters

clipboard

a GdkClipboard

 

value

a GValue to set

 

gdk_clipboard_set_text ()

void
gdk_clipboard_set_text (GdkClipboard *clipboard,
                        const char *text);

Puts the given text into the clipboard.

[skip]

Parameters

clipboard

a GdkClipboard

 

text

Text to put into the clipboard

 

gdk_clipboard_set_texture ()

void
gdk_clipboard_set_texture (GdkClipboard *clipboard,
                           GdkTexture *texture);

Puts the given texture into the clipboard.

[skip]

Parameters

clipboard

a GdkClipboard

 

texture

a GdkTexture to put into the clipboard

 

Types and Values

GdkClipboard

typedef struct _GdkClipboard GdkClipboard;

The GdkClipboard struct contains only private fields and should not be accessed directly.

Property Details

The “content” property

  “content”                  GdkContentProvider *

The GdkContentProvider or NULL if the clipboard is empty or contents are provided otherwise.

Owner: GdkClipboard

Flags: Read


The “display” property

  “display”                  GdkDisplay *

The GdkDisplay that the clipboard belongs to.

Owner: GdkClipboard

Flags: Read / Write / Construct Only


The “formats” property

  “formats”                  GdkContentFormats *

The possible formats that the clipboard can provide its data in.

Owner: GdkClipboard

Flags: Read


The “local” property

  “local”                    gboolean

TRUE if the contents of the clipboard are owned by this process.

Owner: GdkClipboard

Flags: Read

Default value: TRUE

Signal Details

The “changed” signal

void
user_function (GdkClipboard *clipboard,
               gpointer      user_data)

The ::changed signal is emitted when the clipboard changes ownership.

Parameters

clipboard

the object on which the signal was emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/gdk4-Application-launching.html0000664000175000017500000004527014010071761023240 0ustar mclasenmclasen Application launching: GDK 4 Reference Manual

Application launching

Application launching — Startup notification for applications

Properties

GdkDisplay * display Read / Write / Construct Only

Types and Values

Object Hierarchy

    GObject
    ╰── GAppLaunchContext
        ╰── GdkAppLaunchContext

Includes

#include <gdk/gdk.h>

Description

GdkAppLaunchContext is an implementation of GAppLaunchContext that handles launching an application in a graphical context. It provides startup notification and allows to launch applications on a specific screen or workspace.

Launching an application

1
2
3
4
5
6
7
8
9
10
11
GdkAppLaunchContext *context;

context = gdk_display_get_app_launch_context (display);

gdk_app_launch_context_set_display (display);
gdk_app_launch_context_set_timestamp (gdk_event_get_time (event));

if (!g_app_info_launch_default_for_uri ("http://www.gtk.org", context, &error))
  g_warning ("Launching failed: %s\n", error->message);

g_object_unref (context);

Functions

gdk_app_launch_context_get_display ()

GdkDisplay *
gdk_app_launch_context_get_display (GdkAppLaunchContext *context);

Gets the GdkDisplay that context is for.

Parameters

context

a GdkAppLaunchContext

 

Returns

the display of context .

[transfer none]


gdk_app_launch_context_set_desktop ()

void
gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context,
                                    int desktop);

Sets the workspace on which applications will be launched when using this context when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints.

When the workspace is not specified or desktop is set to -1, it is up to the window manager to pick one, typically it will be the current workspace.

Parameters

context

a GdkAppLaunchContext

 

desktop

the number of a workspace, or -1

 

gdk_app_launch_context_set_timestamp ()

void
gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context,
                                      guint32 timestamp);

Sets the timestamp of context . The timestamp should ideally be taken from the event that triggered the launch.

Window managers can use this information to avoid moving the focus to the newly launched application when the user is busy typing in another window. This is also known as 'focus stealing prevention'.

Parameters

context

a GdkAppLaunchContext

 

timestamp

a timestamp

 

gdk_app_launch_context_set_icon ()

void
gdk_app_launch_context_set_icon (GdkAppLaunchContext *context,
                                 GIcon *icon);

Sets the icon for applications that are launched with this context.

Window Managers can use this information when displaying startup notification.

See also gdk_app_launch_context_set_icon_name().

Parameters

context

a GdkAppLaunchContext

 

icon

a GIcon, or NULL.

[allow-none]

gdk_app_launch_context_set_icon_name ()

void
gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context,
                                      const char *icon_name);

Sets the icon for applications that are launched with this context. The icon_name will be interpreted in the same way as the Icon field in desktop files. See also gdk_app_launch_context_set_icon().

If both icon and icon_name are set, the icon_name takes priority. If neither icon or icon_name is set, the icon is taken from either the file that is passed to launched application or from the GAppInfo for the launched application itself.

Parameters

context

a GdkAppLaunchContext

 

icon_name

an icon name, or NULL.

[allow-none]

Types and Values

GdkAppLaunchContext

typedef struct _GdkAppLaunchContext GdkAppLaunchContext;

The GdkAppLaunchContext struct contains only private fields and should not be accessed directly.

Property Details

The “display” property

  “display”                  GdkDisplay *

Display.

Owner: GdkAppLaunchContext

Flags: Read / Write / Construct Only

docs/reference/gdk/html/gdk4-X-Window-System-Interaction.html0000664000175000017500000040222314010071761024235 0ustar mclasenmclasen X Window System Interaction: GDK 4 Reference Manual

X Window System Interaction

X Window System Interaction — X backend-specific functions

Functions

#define GDK_SURFACE_XID()
#define GDK_DISPLAY_XDISPLAY()
#define GDK_POINTER_TO_XID()
#define GDK_XID_TO_POINTER()
GdkDisplay * gdk_x11_lookup_xdisplay ()
guint32 gdk_x11_get_server_time ()
int gdk_x11_device_get_id ()
GdkDevice * gdk_x11_device_manager_lookup ()
GdkDisplay * gdk_x11_display_open ()
void gdk_x11_display_set_program_class ()
guint32 gdk_x11_display_get_user_time ()
void gdk_x11_display_broadcast_startup_message ()
const char * gdk_x11_display_get_startup_notification_id ()
void gdk_x11_display_set_startup_notification_id ()
Display * gdk_x11_display_get_xdisplay ()
Screen * gdk_x11_display_get_xscreen ()
Window gdk_x11_display_get_xrootwindow ()
Cursor gdk_x11_display_get_xcursor ()
void gdk_x11_display_grab ()
void gdk_x11_display_ungrab ()
GdkSurface * gdk_x11_display_get_default_group ()
void gdk_x11_display_error_trap_push ()
int gdk_x11_display_error_trap_pop ()
void gdk_x11_display_error_trap_pop_ignored ()
void gdk_x11_display_set_cursor_theme ()
void gdk_x11_display_set_surface_scale ()
gboolean gdk_x11_display_get_glx_version ()
GdkMonitor * gdk_x11_display_get_primary_monitor ()
GdkX11Screen * gdk_x11_display_get_screen ()
XID gdk_x11_monitor_get_output ()
void gdk_x11_monitor_get_workarea ()
int gdk_x11_screen_get_screen_number ()
Screen * gdk_x11_screen_get_xscreen ()
const char * gdk_x11_screen_get_window_manager_name ()
XID gdk_x11_screen_get_monitor_output ()
gboolean gdk_x11_screen_supports_net_wm_hint ()
guint32 gdk_x11_screen_get_number_of_desktops ()
guint32 gdk_x11_screen_get_current_desktop ()
GdkSurface * gdk_x11_surface_lookup_for_display ()
Window gdk_x11_surface_get_xid ()
void gdk_x11_surface_set_theme_variant ()
void gdk_x11_surface_set_user_time ()
void gdk_x11_surface_move_to_current_desktop ()
void gdk_x11_surface_move_to_desktop ()
guint32 gdk_x11_surface_get_desktop ()
void gdk_x11_surface_set_utf8_property ()
void gdk_x11_surface_set_frame_sync_enabled ()
void gdk_x11_surface_set_group ()
GdkSurface * gdk_x11_surface_get_group ()
void gdk_x11_surface_set_skip_pager_hint ()
void gdk_x11_surface_set_skip_taskbar_hint ()
void gdk_x11_surface_set_urgency_hint ()
Atom gdk_x11_get_xatom_by_name_for_display ()
const char * gdk_x11_get_xatom_name_for_display ()
void gdk_x11_set_sm_client_id ()
int gdk_x11_display_text_property_to_text_list ()
void gdk_x11_free_text_list ()
int gdk_x11_display_string_to_compound_text ()
gboolean gdk_x11_display_utf8_to_compound_text ()
void gdk_x11_free_compound_text ()

Includes

#include <gdk/x11/gdkx.h>

Description

The functions in this section are specific to the GDK X11 backend. To use them, you need to include the <gdk/x11/gdkx.h> header and use the X11-specific pkg-config file gtk4-x11 to build your application.

To make your code compile with other GDK backends, guard backend-specific calls by an ifdef as follows. Since GDK may be built with multiple backends, you should also check for the backend that is in use (e.g. by using the GDK_IS_X11_DISPLAY() macro).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifdef GDK_WINDOWING_X11
  if (GDK_IS_X11_DISPLAY (display))
    {
      // make X11-specific calls here
    }
  else
#endif
#ifdef GDK_WINDOWING_MACOS
  if (GDK_IS_MACOS_DISPLAY (display))
    {
      // make MacOS-specific calls here
    }
  else
#endif
  g_error ("Unsupported GDK backend");

Functions

GDK_SURFACE_XID()

#define GDK_SURFACE_XID(win)           (gdk_x11_surface_get_xid (win))

Returns the X window belonging to a GdkSurface.

Parameters

win

a GdkSurface.

 

Returns

the Xlib Window of win .


GDK_DISPLAY_XDISPLAY()

#define GDK_DISPLAY_XDISPLAY(display) (gdk_x11_display_get_xdisplay (display))

Returns the display of a GdkDisplay.

Parameters

display

a GdkDisplay

 

Returns

an Xlib Display*


GDK_POINTER_TO_XID()

#define GDK_POINTER_TO_XID(pointer) GPOINTER_TO_UINT(pointer)

Converts a gpointer back to an XID that was previously converted using GDK_XID_TO_POINTER().

Parameters

pointer

pointer to extract an XID from

 

GDK_XID_TO_POINTER()

#define GDK_XID_TO_POINTER(xid) GUINT_TO_POINTER(xid)

Converts an XID into a gpointer . This is useful with data structures that use pointer arguments such as GHashTable. Use GDK_POINTER_TO_XID() to convert the argument back to an XID.

Parameters

xid

XID to stuff into the pointer

 

gdk_x11_lookup_xdisplay ()

GdkDisplay *
gdk_x11_lookup_xdisplay (Display *xdisplay);

Find the GdkDisplay corresponding to xdisplay , if any exists.

Parameters

xdisplay

a pointer to an X Display

 

Returns

the GdkDisplay, if found, otherwise NULL.

[transfer none][type GdkX11Display]


gdk_x11_get_server_time ()

guint32
gdk_x11_get_server_time (GdkSurface *surface);

Routine to get the current X server time stamp.

Parameters

surface

a GdkSurface, used for communication with the server. The surface must have GDK_PROPERTY_CHANGE_MASK in its events mask or a hang will result.

[type GdkX11Surface]

Returns

the time stamp.


gdk_x11_device_get_id ()

int
gdk_x11_device_get_id (GdkDevice *device);

Returns the device ID as seen by XInput2.

Parameters

device

a GdkDevice.

[type GdkX11DeviceXI2]

Returns

the XInput2 device ID.


gdk_x11_device_manager_lookup ()

GdkDevice *
gdk_x11_device_manager_lookup (GdkX11DeviceManagerXI2 *device_manager,
                               int device_id);

Returns the GdkDevice that wraps the given device ID.

Parameters

device_manager

a GdkDeviceManager.

[type GdkX11DeviceManagerXI2]

device_id

a device ID, as understood by the XInput2 protocol

 

Returns

The GdkDevice wrapping the device ID, or NULL if the given ID doesn’t currently represent a device.

[transfer none][allow-none][type GdkX11DeviceXI2]


gdk_x11_display_open ()

GdkDisplay *
gdk_x11_display_open (const char *display_name);

Tries to open a new display to the X server given by display_name . If opening the display fails, NULL is returned.

Parameters

display_name

name of the X display. See the XOpenDisplay() for details.

[allow-none]

Returns

The new display or NULL on error.

[nullable][transfer full]


gdk_x11_display_set_program_class ()

void
gdk_x11_display_set_program_class (GdkDisplay *display,
                                   const char *program_class);

Sets the program class.

The X11 backend uses the program class to set the class name part of the WM_CLASS property on toplevel windows; see the ICCCM.

Parameters

display

a GdkDisplay

 

program_class

a string

 

gdk_x11_display_get_user_time ()

guint32
gdk_x11_display_get_user_time (GdkDisplay *display);

Returns the timestamp of the last user interaction on display . The timestamp is taken from events caused by user interaction such as key presses or pointer movements. See gdk_x11_surface_set_user_time().

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

the timestamp of the last user interaction


gdk_x11_display_broadcast_startup_message ()

void
gdk_x11_display_broadcast_startup_message
                               (GdkDisplay *display,
                                const char *message_type,
                                ...);

Sends a startup notification message of type message_type to display .

This is a convenience function for use by code that implements the freedesktop startup notification specification. Applications should not normally need to call it directly. See the Startup Notification Protocol specification for definitions of the message types and keys that can be used.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

message_type

startup notification message type ("new", "change", or "remove")

 

...

a list of key/value pairs (as strings), terminated by a NULL key. (A NULL value for a key will cause that key to be skipped in the output.)

 

gdk_x11_display_get_startup_notification_id ()

const char *
gdk_x11_display_get_startup_notification_id
                               (GdkDisplay *display);

Gets the startup notification ID for a display.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

the startup notification ID for display


gdk_x11_display_set_startup_notification_id ()

void
gdk_x11_display_set_startup_notification_id
                               (GdkDisplay *display,
                                const char *startup_id);

Sets the startup notification ID for a display.

This is usually taken from the value of the DESKTOP_STARTUP_ID environment variable, but in some cases (such as the application not being launched using exec()) it can come from other sources.

If the ID contains the string "_TIME" then the portion following that string is taken to be the X11 timestamp of the event that triggered the application to be launched and the GDK current event time is set accordingly.

The startup ID is also what is used to signal that the startup is complete (for example, when opening a window or when calling gdk_display_notify_startup_complete()).

Parameters

display

a GdkDisplay.

[type GdkX11Display]

startup_id

the startup notification ID (must be valid utf8)

 

gdk_x11_display_get_xdisplay ()

Display *
gdk_x11_display_get_xdisplay (GdkDisplay *display);

Returns the X display of a GdkDisplay.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

an X display.

[transfer none]


gdk_x11_display_get_xscreen ()

Screen *
gdk_x11_display_get_xscreen (GdkDisplay *display);

Returns the X Screen used by GdkDisplay.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

an X Screen.

[transfer none]


gdk_x11_display_get_xrootwindow ()

Window
gdk_x11_display_get_xrootwindow (GdkDisplay *display);

Returns the root X window used by GdkDisplay.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

an X Window


gdk_x11_display_get_xcursor ()

Cursor
gdk_x11_display_get_xcursor (GdkDisplay *display,
                             GdkCursor *cursor);

Returns the X cursor belonging to a GdkCursor, potentially creating the cursor.

Be aware that the returned cursor may not be unique to cursor . It may for example be shared with its fallback cursor. On old X servers that don't support the XCursor extension, all cursors may even fall back to a few default cursors.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

cursor

a GdkCursor.

 

Returns

an Xlib Cursor.


gdk_x11_display_grab ()

void
gdk_x11_display_grab (GdkDisplay *display);

Call XGrabServer() on display . To ungrab the display again, use gdk_x11_display_ungrab().

gdk_x11_display_grab()/gdk_x11_display_ungrab() calls can be nested.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

gdk_x11_display_ungrab ()

void
gdk_x11_display_ungrab (GdkDisplay *display);

Ungrab display after it has been grabbed with gdk_x11_display_grab().

Parameters

display

a GdkDisplay.

[type GdkX11Display]

gdk_x11_display_get_default_group ()

GdkSurface *
gdk_x11_display_get_default_group (GdkDisplay *display);

Returns the default group leader surface for all toplevel surfaces on display . This surface is implicitly created by GDK. See gdk_x11_surface_set_group().

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

The default group leader surface for display .

[transfer none]


gdk_x11_display_error_trap_push ()

void
gdk_x11_display_error_trap_push (GdkDisplay *display);

Begins a range of X requests on display for which X error events will be ignored. Unignored errors (when no trap is pushed) will abort the application. Use gdk_x11_display_error_trap_pop() or gdk_x11_display_error_trap_pop_ignored()to lift a trap pushed with this function.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

gdk_x11_display_error_trap_pop ()

int
gdk_x11_display_error_trap_pop (GdkDisplay *display);

Pops the error trap pushed by gdk_x11_display_error_trap_push(). Will XSync() if necessary and will always block until the error is known to have occurred or not occurred, so the error code can be returned.

If you don’t need to use the return value, gdk_x11_display_error_trap_pop_ignored() would be more efficient.

Parameters

display

the display.

[type GdkX11Display]

Returns

X error code or 0 on success


gdk_x11_display_error_trap_pop_ignored ()

void
gdk_x11_display_error_trap_pop_ignored
                               (GdkDisplay *display);

Pops the error trap pushed by gdk_x11_display_error_trap_push(). Does not block to see if an error occurred; merely records the range of requests to ignore errors for, and ignores those errors if they arrive asynchronously.

Parameters

display

the display.

[type GdkX11Display]

gdk_x11_display_set_cursor_theme ()

void
gdk_x11_display_set_cursor_theme (GdkDisplay *display,
                                  const char *theme,
                                  const int size);

Sets the cursor theme from which the images for cursor should be taken.

If the windowing system supports it, existing cursors created with gdk_cursor_new_from_name() are updated to reflect the theme change. Custom cursors constructed with gdk_cursor_new_from_texture() will have to be handled by the application (GTK applications can learn about cursor theme changes by listening for change notification for the corresponding GtkSetting).

Parameters

display

a GdkDisplay.

[type GdkX11Display]

theme

the name of the cursor theme to use, or NULL to unset a previously set value.

[nullable]

size

the cursor size to use, or 0 to keep the previous size

 

gdk_x11_display_set_surface_scale ()

void
gdk_x11_display_set_surface_scale (GdkDisplay *display,
                                   int scale);

Forces a specific window scale for all windows on this display, instead of using the default or user configured scale. This is can be used to disable scaling support by setting scale to 1, or to programmatically set the window scale.

Once the scale is set by this call it will not change in response to later user configuration changes.

Parameters

display

the display.

[type GdkX11Display]

scale

The new scale value

 

gdk_x11_display_get_glx_version ()

gboolean
gdk_x11_display_get_glx_version (GdkDisplay *display,
                                 int *major,
                                 int *minor);

Retrieves the version of the GLX implementation.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

major

return location for the GLX major version.

[out]

minor

return location for the GLX minor version.

[out]

Returns

TRUE if GLX is available


gdk_x11_display_get_primary_monitor ()

GdkMonitor *
gdk_x11_display_get_primary_monitor (GdkDisplay *display);

Gets the primary monitor for the display.

The primary monitor is considered the monitor where the “main desktop” lives. While normal application surfaces typically allow the window manager to place the surfaces, specialized desktop applications such as panels should place themselves on the primary monitor.

If no monitor is the designated primary monitor, any monitor (usually the first) may be returned.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

Returns

the primary monitor, or any monitor if no primary monitor is configured by the user.

[transfer none]


gdk_x11_display_get_screen ()

GdkX11Screen *
gdk_x11_display_get_screen (GdkDisplay *display);

Retrieves the GdkX11Screen of the display .

Parameters

display

a GdkX11Display.

[type GdkX11Display]

Returns

the GdkX11Screen.

[transfer none]


gdk_x11_monitor_get_output ()

XID
gdk_x11_monitor_get_output (GdkMonitor *monitor);

Returns the XID of the Output corresponding to monitor .

Parameters

monitor

a GdkMonitor.

[type GdkX11Monitor]

Returns

the XID of monitor


gdk_x11_monitor_get_workarea ()

void
gdk_x11_monitor_get_workarea (GdkMonitor *monitor,
                              GdkRectangle *workarea);

Retrieves the size and position of the “work area” on a monitor within the display coordinate space. The returned geometry is in ”application pixels”, not in ”device pixels” (see gdk_monitor_get_scale_factor()).

Parameters

monitor

a GdkMonitor.

[type GdkX11Monitor]

workarea

a GdkRectangle to be filled with the monitor workarea.

[out]

gdk_x11_screen_get_screen_number ()

int
gdk_x11_screen_get_screen_number (GdkX11Screen *screen);

Returns the index of a GdkX11Screen.

Parameters

screen

a GdkX11Screen

 

Returns

the position of screen among the screens of its display


gdk_x11_screen_get_xscreen ()

Screen *
gdk_x11_screen_get_xscreen (GdkX11Screen *screen);

Returns the screen of a GdkX11Screen.

Parameters

screen

a GdkX11Screen

 

Returns

an Xlib Screen*.

[transfer none]


gdk_x11_screen_get_window_manager_name ()

const char *
gdk_x11_screen_get_window_manager_name
                               (GdkX11Screen *screen);

Returns the name of the window manager for screen .

Parameters

screen

a GdkX11Screen

 

Returns

the name of the window manager screen screen , or "unknown" if the window manager is unknown. The string is owned by GDK and should not be freed.


gdk_x11_screen_get_monitor_output ()

XID
gdk_x11_screen_get_monitor_output (GdkX11Screen *screen,
                                   int monitor_num);

Gets the XID of the specified output/monitor. If the X server does not support version 1.2 of the RANDR extension, 0 is returned.

Parameters

screen

a GdkX11Screen

 

monitor_num

number of the monitor, between 0 and gdk_screen_get_n_monitors (screen)

 

Returns

the XID of the monitor


gdk_x11_screen_supports_net_wm_hint ()

gboolean
gdk_x11_screen_supports_net_wm_hint (GdkX11Screen *screen,
                                     const char *property_name);

This function is specific to the X11 backend of GDK, and indicates whether the window manager supports a certain hint from the Extended Window Manager Hints specification.

When using this function, keep in mind that the window manager can change over time; so you shouldn’t use this function in a way that impacts persistent application state. A common bug is that your application can start up before the window manager does when the user logs in, and before the window manager starts gdk_x11_screen_supports_net_wm_hint() will return FALSE for every property. You can monitor the window_manager_changed signal on GdkX11Screen to detect a window manager change.

Parameters

screen

the relevant GdkX11Screen.

 

property_name

name of the WM property

 

Returns

TRUE if the window manager supports property


gdk_x11_screen_get_number_of_desktops ()

guint32
gdk_x11_screen_get_number_of_desktops (GdkX11Screen *screen);

Returns the number of workspaces for screen when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification.

Parameters

screen

a GdkX11Screen

 

Returns

the number of workspaces, or 0 if workspaces are not supported


gdk_x11_screen_get_current_desktop ()

guint32
gdk_x11_screen_get_current_desktop (GdkX11Screen *screen);

Returns the current workspace for screen when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification.

Parameters

screen

a GdkX11Screen

 

Returns

the current workspace, or 0 if workspaces are not supported


gdk_x11_surface_lookup_for_display ()

GdkSurface *
gdk_x11_surface_lookup_for_display (GdkDisplay *display,
                                    Window window);

Looks up the GdkSurface that wraps the given native window handle.

Parameters

display

the GdkDisplay corresponding to the window handle.

[type GdkX11Display]

window

an Xlib Window

 

Returns

the GdkSurface wrapper for the native window, or NULL if there is none.

[transfer none][type GdkX11Surface]


gdk_x11_surface_get_xid ()

Window
gdk_x11_surface_get_xid (GdkSurface *surface);

Returns the X resource (surface) belonging to a GdkSurface.

Parameters

surface

a native GdkSurface.

[type GdkX11Surface]

Returns

the ID of drawable ’s X resource.


gdk_x11_surface_set_theme_variant ()

void
gdk_x11_surface_set_theme_variant (GdkSurface *surface,
                                   const char *variant);

GTK applications can request a dark theme variant. In order to make other applications - namely window managers using GTK for themeing - aware of this choice, GTK uses this function to export the requested theme variant as _GTK_THEME_VARIANT property on toplevel surfaces.

Note that this property is automatically updated by GTK, so this function should only be used by applications which do not use GTK to create toplevel surfaces.

Parameters

surface

a GdkSurface.

[type GdkX11Surface]

variant

the theme variant to export

 

gdk_x11_surface_set_user_time ()

void
gdk_x11_surface_set_user_time (GdkSurface *surface,
                               guint32 timestamp);

The application can use this call to update the _NET_WM_USER_TIME property on a toplevel surface. This property stores an Xserver time which represents the time of the last user input event received for this surface. This property may be used by the window manager to alter the focus, stacking, and/or placement behavior of surfaces when they are mapped depending on whether the new surface was created by a user action or is a "pop-up" surface activated by a timer or some other event.

Note that this property is automatically updated by GDK, so this function should only be used by applications which handle input events bypassing GDK.

Parameters

surface

A toplevel GdkSurface.

[type GdkX11Surface]

timestamp

An XServer timestamp to which the property should be set

 

gdk_x11_surface_move_to_current_desktop ()

void
gdk_x11_surface_move_to_current_desktop
                               (GdkSurface *surface);

Moves the surface to the correct workspace when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification. Will not do anything if the surface is already on all workspaces.

Parameters

surface

a GdkSurface.

[type GdkX11Surface]

gdk_x11_surface_move_to_desktop ()

void
gdk_x11_surface_move_to_desktop (GdkSurface *surface,
                                 guint32 desktop);

Moves the surface to the given workspace when running unde a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification.

Parameters

surface

a GdkSurface.

[type GdkX11Surface]

desktop

the number of the workspace to move the surface to

 

gdk_x11_surface_get_desktop ()

guint32
gdk_x11_surface_get_desktop (GdkSurface *surface);

Gets the number of the workspace surface is on.

Parameters

surface

a GdkSurface.

[type GdkX11Surface]

Returns

the current workspace of surface


gdk_x11_surface_set_utf8_property ()

void
gdk_x11_surface_set_utf8_property (GdkSurface *surface,
                                   const char *name,
                                   const char *value);

This function modifies or removes an arbitrary X11 window property of type UTF8_STRING. If the given surface is not a toplevel surface, it is ignored.

Parameters

surface

a GdkSurface.

[type GdkX11Surface]

name

Property name, will be interned as an X atom

 

value

Property value, or NULL to delete.

[allow-none]

gdk_x11_surface_set_frame_sync_enabled ()

void
gdk_x11_surface_set_frame_sync_enabled
                               (GdkSurface *surface,
                                gboolean frame_sync_enabled);

This function can be used to disable frame synchronization for a surface. Normally frame synchronziation will be enabled or disabled based on whether the system has a compositor that supports frame synchronization, but if the surface is not directly managed by the window manager, then frame synchronziation may need to be disabled. This is the case for a surface embedded via the XEMBED protocol.

Parameters

surface

a native GdkSurface.

[type GdkX11Surface]

frame_sync_enabled

whether frame-synchronization should be enabled

 

gdk_x11_surface_set_group ()

void
gdk_x11_surface_set_group (GdkSurface *surface,
                           GdkSurface *leader);

Sets the group leader of surface to be leader . See the ICCCM for details.

Parameters

surface

a native GdkSurface.

[type GdkX11Surface]

leader

a GdkSurface

 

gdk_x11_surface_get_group ()

GdkSurface *
gdk_x11_surface_get_group (GdkSurface *surface);

Returns the group this surface belongs to.

Parameters

surface

The GdkSurface.

[type GdkX11Surface]

Returns

The group of this surface;.

[transfer none]


gdk_x11_surface_set_skip_pager_hint ()

void
gdk_x11_surface_set_skip_pager_hint (GdkSurface *surface,
                                     gboolean skips_pager);

Sets a hint on surface that pagers should not display it. See the EWMH for details.

Parameters

surface

a GdkSurface.

[type GdkX11Surface]

skips_pager

TRUE to skip pagers

 

gdk_x11_surface_set_skip_taskbar_hint ()

void
gdk_x11_surface_set_skip_taskbar_hint (GdkSurface *surface,
                                       gboolean skips_taskbar);

Sets a hint on surface that taskbars should not display it. See the EWMH for details.

Parameters

surface

a native GdkSurface.

[type GdkX11Surface]

skips_taskbar

TRUE to skip taskbars

 

gdk_x11_surface_set_urgency_hint ()

void
gdk_x11_surface_set_urgency_hint (GdkSurface *surface,
                                  gboolean urgent);

Sets a hint on surface that it needs user attention. See the ICCCM for details.

Parameters

surface

a native GdkSurface.

[type GdkX11Surface]

urgent

TRUE to indicate urgenct attention needed

 

gdk_x11_get_xatom_by_name_for_display ()

Atom
gdk_x11_get_xatom_by_name_for_display (GdkDisplay *display,
                                       const char *atom_name);

Returns the X atom for a GdkDisplay corresponding to atom_name . This function caches the result, so if called repeatedly it is much faster than XInternAtom(), which is a round trip to the server each time.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

atom_name

a string

 

Returns

a X atom for a GdkDisplay


gdk_x11_get_xatom_name_for_display ()

const char *
gdk_x11_get_xatom_name_for_display (GdkDisplay *display,
                                    Atom xatom);

Returns the name of an X atom for its display. This function is meant mainly for debugging, so for convenience, unlike XAtomName() and the result doesn’t need to be freed.

Parameters

display

the GdkDisplay where xatom is defined.

[type GdkX11Display]

xatom

an X atom

 

Returns

name of the X atom; this string is owned by GDK, so it shouldn’t be modified or freed.


gdk_x11_set_sm_client_id ()

void
gdk_x11_set_sm_client_id (const char *sm_client_id);

Sets the SM_CLIENT_ID property on the application’s leader window so that the window manager can save the application’s state using the X11R6 ICCCM session management protocol.

See the X Session Management Library documentation for more information on session management and the Inter-Client Communication Conventions Manual

Parameters

sm_client_id

the client id assigned by the session manager when the connection was opened, or NULL to remove the property.

[nullable]

gdk_x11_display_text_property_to_text_list ()

int
gdk_x11_display_text_property_to_text_list
                               (GdkDisplay *display,
                                const char *encoding,
                                int format,
                                const guchar *text,
                                int length,
                                char ***list);

Convert a text string from the encoding as it is stored in a property into an array of strings in the encoding of the current locale. (The elements of the array represent the nul-separated elements of the original text string.)

Parameters

display

The GdkDisplay where the encoding is defined.

[type GdkX11Display]

encoding

a string representing the encoding. The most common values for this are "STRING", or "COMPOUND_TEXT". This is value used as the type for the property

 

format

the format of the property

 

text

The text data

 

length

The number of items to transform

 

list

location to store an array of strings in the encoding of the current locale. This array should be freed using gdk_x11_free_text_list().

 

Returns

the number of strings stored in list, or 0, if the conversion failed


gdk_x11_free_text_list ()

void
gdk_x11_free_text_list (char **list);

Frees the array of strings created by gdk_x11_display_text_property_to_text_list().

Parameters

list

the value stored in the list parameter by a call to gdk_x11_display_text_property_to_text_list().

 

gdk_x11_display_string_to_compound_text ()

int
gdk_x11_display_string_to_compound_text
                               (GdkDisplay *display,
                                const char *str,
                                const char **encoding,
                                int *format,
                                guchar **ctext,
                                int *length);

Convert a string from the encoding of the current locale into a form suitable for storing in a window property.

Parameters

display

the GdkDisplay where the encoding is defined.

[type GdkX11Display]

str

a nul-terminated string

 

encoding

location to store the encoding (to be used as the type for the property).

[out][transfer none]

format

location to store the format of the property.

[out]

ctext

location to store newly allocated data for the property.

[out][array length=length]

length

the length of ctext , in bytes

 

Returns

0 upon success, non-zero upon failure


gdk_x11_display_utf8_to_compound_text ()

gboolean
gdk_x11_display_utf8_to_compound_text (GdkDisplay *display,
                                       const char *str,
                                       const char **encoding,
                                       int *format,
                                       guchar **ctext,
                                       int *length);

Converts from UTF-8 to compound text.

Parameters

display

a GdkDisplay.

[type GdkX11Display]

str

a UTF-8 string

 

encoding

location to store resulting encoding.

[out][transfer none]

format

location to store format of the result.

[out]

ctext

location to store the data of the result.

[out][array length=length]

length

location to store the length of the data stored in ctext

 

Returns

TRUE if the conversion succeeded, otherwise FALSE


gdk_x11_free_compound_text ()

void
gdk_x11_free_compound_text (guchar *ctext);

Frees the data returned from gdk_x11_display_string_to_compound_text().

Parameters

ctext

The pointer stored in ctext from a call to gdk_x11_display_string_to_compound_text().

 
docs/reference/gdk/html/gdk4-Wayland-Interaction.html0000664000175000017500000013346714010071761022711 0ustar mclasenmclasen Wayland Interaction: GDK 4 Reference Manual

Wayland Interaction

Wayland Interaction — Wayland backend-specific functions

Includes

#include <gdk/wayland/gdkwayland.h>

Description

The functions in this section are specific to the GDK Wayland backend. To use them, you need to include the <gdk/wayland/gdkwayland.h> header and use the Wayland-specific pkg-config gtk4-wayland file to build your application.

To make your code compile with other GDK backends, guard backend-specific calls by an ifdef as follows. Since GDK may be built with multiple backends, you should also check for the backend that is in use (e.g. by using the GDK_IS_WAYLAND_DISPLAY() macro).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifdef GDK_WINDOWING_WAYLAND
  if (GDK_IS_WAYLAND_DISPLAY (display))
    {
      // make Wayland-specific calls here
    }
  else
#endif
#ifdef GDK_WINDOWING_X11
  if (GDK_IS_X11_DISPLAY (display))
    {
      // make X11-specific calls here
    }
  else
#endif
  g_error ("Unsupported GDK backend");

Functions

gdk_wayland_display_get_wl_display ()

struct wl_display *
gdk_wayland_display_get_wl_display (GdkDisplay *display);

Returns the Wayland wl_display of a GdkDisplay.

[skip]

Parameters

display

a GdkDisplay.

[type GdkWaylandDisplay]

Returns

a Wayland wl_display.

[transfer none]


gdk_wayland_display_get_wl_compositor ()

struct wl_compositor *
gdk_wayland_display_get_wl_compositor (GdkDisplay *display);

Returns the Wayland global singleton compositor of a GdkDisplay.

[skip]

Parameters

display

a GdkDisplay.

[type GdkWaylandDisplay]

Returns

a Wayland wl_compositor.

[transfer none]


gdk_wayland_display_query_registry ()

gboolean
gdk_wayland_display_query_registry (GdkDisplay *display,
                                    const char *global);

Returns TRUE if the the interface was found in the display wl_registry.global handler.

Parameters

display

a GdkDisplay.

[type GdkWaylandDisplay]

global

global interface to query in the registry

 

Returns

TRUE if the global is offered by the compositor


gdk_wayland_display_set_cursor_theme ()

void
gdk_wayland_display_set_cursor_theme (GdkDisplay *display,
                                      const char *name,
                                      int size);

Sets the cursor theme for the given display .

Parameters

display

a GdkDisplay.

[type GdkWaylandDisplay]

name

the new cursor theme

 

size

the size to use for cursors

 

gdk_wayland_display_get_startup_notification_id ()

const char *
gdk_wayland_display_get_startup_notification_id
                               (GdkDisplay *display);

Gets the startup notification ID for a Wayland display, or NULL if no ID has been defined.

Parameters

display

a GdkDisplay.

[type GdkWaylandDisplay]

Returns

the startup notification ID for display , or NULL.

[nullable]


gdk_wayland_display_set_startup_notification_id ()

void
gdk_wayland_display_set_startup_notification_id
                               (GdkDisplay *display,
                                const char *startup_id);

Sets the startup notification ID for a display.

This is usually taken from the value of the DESKTOP_STARTUP_ID environment variable, but in some cases (such as the application not being launched using exec()) it can come from other sources.

The startup ID is also what is used to signal that the startup is complete (for example, when opening a window or when calling gdk_display_notify_startup_complete()).

Parameters

display

a GdkDisplay.

[type GdkWaylandDisplay]

startup_id

the startup notification ID (must be valid utf8)

 

gdk_wayland_seat_get_wl_seat ()

struct wl_seat *
gdk_wayland_seat_get_wl_seat (GdkSeat *seat);

Returns the Wayland wl_seat of a GdkSeat.

[skip]

Parameters

seat

a GdkSeat.

[type GdkWaylandSeat]

Returns

a Wayland wl_seat.

[transfer none]


gdk_wayland_device_get_wl_seat ()

struct wl_seat *
gdk_wayland_device_get_wl_seat (GdkDevice *device);

Returns the Wayland wl_seat of a GdkDevice.

[skip]

Parameters

device

a GdkDevice.

[type GdkWaylandDevice]

Returns

a Wayland wl_seat.

[transfer none]


gdk_wayland_device_get_wl_pointer ()

struct wl_pointer *
gdk_wayland_device_get_wl_pointer (GdkDevice *device);

Returns the Wayland wl_pointer of a GdkDevice.

[skip]

Parameters

device

a GdkDevice.

[type GdkWaylandDevice]

Returns

a Wayland wl_pointer.

[transfer none]


gdk_wayland_device_get_wl_keyboard ()

struct wl_keyboard *
gdk_wayland_device_get_wl_keyboard (GdkDevice *device);

Returns the Wayland wl_keyboard of a GdkDevice.

[skip]

Parameters

device

a GdkDevice.

[type GdkWaylandDevice]

Returns

a Wayland wl_keyboard.

[transfer none]


gdk_wayland_device_get_node_path ()

const char *
gdk_wayland_device_get_node_path (GdkDevice *device);

Returns the /dev/input/event* path of this device.

For GdkDevices that possibly coalesce multiple hardware devices (eg. mouse, keyboard, touch,...), this function will return NULL.

This is most notably implemented for devices of type GDK_SOURCE_PEN, GDK_SOURCE_TABLET_PAD.

Parameters

device

a GdkDevice.

[type GdkWaylandDevice]

Returns

the /dev/input/event* path of this device.

[nullable][transfer none]


gdk_wayland_monitor_get_wl_output ()

struct wl_output *
gdk_wayland_monitor_get_wl_output (GdkMonitor *monitor);

Returns the Wayland wl_output of a GdkMonitor.

[skip]

Parameters

monitor

a GdkMonitor.

[type GdkWaylandMonitor]

Returns

a Wayland wl_output.

[transfer none]


gdk_wayland_surface_get_wl_surface ()

struct wl_surface *
gdk_wayland_surface_get_wl_surface (GdkSurface *surface);

Returns the Wayland surface of a GdkSurface.

[skip]

Parameters

surface

a GdkSurface.

[type GdkWaylandSurface]

Returns

a Wayland wl_surface.

[transfer none]


GdkWaylandToplevelExported ()

void
(*GdkWaylandToplevelExported) (GdkToplevel *toplevel,
                               const char *handle,
                               gpointer user_data);

Callback that gets called when the handle for a surface has been obtained from the Wayland compositor. The handle can be passed to other processes, for the purpose of marking surfaces as transient for out-of-process surfaces.

Parameters

toplevel

the GdkToplevel that is exported.

[type GdkWaylandToplevel]

handle

the handle

 

user_data

user data that was passed to gdk_wayland_toplevel_export_handle()

 

gdk_wayland_toplevel_export_handle ()

gboolean
gdk_wayland_toplevel_export_handle (GdkToplevel *toplevel,
                                    GdkWaylandToplevelExported callback,
                                    gpointer user_data,
                                    GDestroyNotify destroy_func);

Asynchronously obtains a handle for a surface that can be passed to other processes. When the handle has been obtained, callback will be called.

It is an error to call this function on a surface that is already exported.

When the handle is no longer needed, gdk_wayland_toplevel_unexport_handle() should be called to clean up resources.

The main purpose for obtaining a handle is to mark a surface from another surface as transient for this one, see gdk_wayland_toplevel_set_transient_for_exported().

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

Parameters

toplevel

the GdkToplevel to obtain a handle for.

[type GdkWaylandToplevel]

callback

callback to call with the handle

 

user_data

user data for callback .

[closure]

destroy_func

destroy notify for user_data

 

Returns

TRUE if the handle has been requested, FALSE if an error occurred.


gdk_wayland_toplevel_unexport_handle ()

void
gdk_wayland_toplevel_unexport_handle (GdkToplevel *toplevel);

Destroys the handle that was obtained with gdk_wayland_toplevel_export_handle().

It is an error to call this function on a surface that does not have a handle.

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

Parameters

toplevel

the GdkToplevel to unexport.

[type GdkWaylandToplevel]

gdk_wayland_toplevel_set_transient_for_exported ()

gboolean
gdk_wayland_toplevel_set_transient_for_exported
                               (GdkToplevel *toplevel,
                                const char *parent_handle_str);

Marks toplevel as transient for the surface to which the given parent_handle_str refers. Typically, the handle will originate from a gdk_wayland_toplevel_export_handle() call in another process.

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

Parameters

toplevel

the GdkToplevel to make as transient.

[type GdkWaylandToplevel]

parent_handle_str

an exported handle for a surface

 

Returns

TRUE if the surface has been marked as transient, FALSE if an error occurred.


gdk_wayland_toplevel_set_application_id ()

void
gdk_wayland_toplevel_set_application_id
                               (GdkToplevel *toplevel,
                                const char *application_id);

Sets the application id on a GdkToplevel.

Parameters

toplevel

a GdkToplevel.

[type GdkWaylandToplevel]

application_id

the application id for the toplevel

 
docs/reference/gdk/html/api-index-full.html0000664000175000017500000057051614010071761021024 0ustar mclasenmclasen Index of all symbols: GDK 4 Reference Manual

Index of all symbols

A

GDK_ACTION_ALL, macro in Drag and Drop
GdkAnchorHints, enum in GdkPopupLayout
GdkAppLaunchContext, struct in Application launching
GdkAppLaunchContext:display, object property in Application launching
gdk_app_launch_context_get_display, function in Application launching
gdk_app_launch_context_set_desktop, function in Application launching
gdk_app_launch_context_set_icon, function in Application launching
gdk_app_launch_context_set_icon_name, function in Application launching
gdk_app_launch_context_set_timestamp, function in Application launching
GdkAxisFlags, enum in GdkDevice
GdkAxisUse, enum in GdkDevice

B

GdkButtonEvent, struct in Events
gdk_button_event_get_button, function in Events
GDK_BUTTON_MIDDLE, macro in Events
GDK_BUTTON_PRIMARY, macro in Events
GDK_BUTTON_SECONDARY, macro in Events

C

GdkCairoContext, struct in GdkCairoContext
gdk_cairo_context_cairo_create, function in GdkCairoContext
gdk_cairo_draw_from_gl, function in Cairo Interaction
gdk_cairo_rectangle, function in Cairo Interaction
gdk_cairo_region, function in Cairo Interaction
gdk_cairo_region_create_from_surface, function in Cairo Interaction
gdk_cairo_set_source_pixbuf, function in Cairo Interaction
gdk_cairo_set_source_rgba, function in Cairo Interaction
GdkClipboard, struct in Clipboards
GdkClipboard::changed, object signal in Clipboards
GdkClipboard:content, object property in Clipboards
GdkClipboard:display, object property in Clipboards
GdkClipboard:formats, object property in Clipboards
GdkClipboard:local, object property in Clipboards
gdk_clipboard_get_content, function in Clipboards
gdk_clipboard_get_display, function in Clipboards
gdk_clipboard_get_formats, function in Clipboards
gdk_clipboard_is_local, function in Clipboards
gdk_clipboard_read_async, function in Clipboards
gdk_clipboard_read_finish, function in Clipboards
gdk_clipboard_read_texture_async, function in Clipboards
gdk_clipboard_read_texture_finish, function in Clipboards
gdk_clipboard_read_text_async, function in Clipboards
gdk_clipboard_read_text_finish, function in Clipboards
gdk_clipboard_read_value_async, function in Clipboards
gdk_clipboard_read_value_finish, function in Clipboards
gdk_clipboard_set, function in Clipboards
gdk_clipboard_set_content, function in Clipboards
gdk_clipboard_set_text, function in Clipboards
gdk_clipboard_set_texture, function in Clipboards
gdk_clipboard_set_valist, function in Clipboards
gdk_clipboard_set_value, function in Clipboards
gdk_clipboard_store_async, function in Clipboards
gdk_clipboard_store_finish, function in Clipboards
GdkContentDeserializeFunc, user_function in GdkContentDeserializer
GdkContentDeserializer, struct in GdkContentDeserializer
GdkContentFormats, struct in Content Formats
GdkContentFormatsBuilder, struct in Content Formats
GdkContentProvider, struct in GdkContentProvider
GdkContentProvider::content-changed, object signal in GdkContentProvider
GdkContentProvider:formats, object property in GdkContentProvider
GdkContentProvider:storable-formats, object property in GdkContentProvider
GdkContentProviderClass, struct in GdkContentProvider
GdkContentSerializeFunc, user_function in GdkContentSerializer
GdkContentSerializer, struct in GdkContentSerializer
gdk_content_deserializer_get_cancellable, function in GdkContentDeserializer
gdk_content_deserializer_get_gtype, function in GdkContentDeserializer
gdk_content_deserializer_get_input_stream, function in GdkContentDeserializer
gdk_content_deserializer_get_mime_type, function in GdkContentDeserializer
gdk_content_deserializer_get_priority, function in GdkContentDeserializer
gdk_content_deserializer_get_task_data, function in GdkContentDeserializer
gdk_content_deserializer_get_user_data, function in GdkContentDeserializer
gdk_content_deserializer_get_value, function in GdkContentDeserializer
gdk_content_deserializer_return_error, function in GdkContentDeserializer
gdk_content_deserializer_return_success, function in GdkContentDeserializer
gdk_content_deserializer_set_task_data, function in GdkContentDeserializer
gdk_content_deserialize_async, function in GdkContentDeserializer
gdk_content_deserialize_finish, function in GdkContentDeserializer
gdk_content_formats_builder_add_formats, function in Content Formats
gdk_content_formats_builder_add_gtype, function in Content Formats
gdk_content_formats_builder_add_mime_type, function in Content Formats
gdk_content_formats_builder_free_to_formats, function in Content Formats
gdk_content_formats_builder_new, function in Content Formats
gdk_content_formats_builder_ref, function in Content Formats
gdk_content_formats_builder_to_formats, function in Content Formats
gdk_content_formats_builder_unref, function in Content Formats
gdk_content_formats_contain_gtype, function in Content Formats
gdk_content_formats_contain_mime_type, function in Content Formats
gdk_content_formats_get_gtypes, function in Content Formats
gdk_content_formats_get_mime_types, function in Content Formats
gdk_content_formats_match, function in Content Formats
gdk_content_formats_match_gtype, function in Content Formats
gdk_content_formats_match_mime_type, function in Content Formats
gdk_content_formats_new, function in Content Formats
gdk_content_formats_new_for_gtype, function in Content Formats
gdk_content_formats_print, function in Content Formats
gdk_content_formats_ref, function in Content Formats
gdk_content_formats_to_string, function in Content Formats
gdk_content_formats_union, function in Content Formats
gdk_content_formats_union_deserialize_gtypes, function in Content Formats
gdk_content_formats_union_deserialize_mime_types, function in Content Formats
gdk_content_formats_union_serialize_gtypes, function in Content Formats
gdk_content_formats_union_serialize_mime_types, function in Content Formats
gdk_content_formats_unref, function in Content Formats
gdk_content_provider_content_changed, function in GdkContentProvider
gdk_content_provider_get_value, function in GdkContentProvider
gdk_content_provider_new_for_bytes, function in GdkContentProvider
gdk_content_provider_new_for_value, function in GdkContentProvider
gdk_content_provider_new_typed, function in GdkContentProvider
gdk_content_provider_new_union, function in GdkContentProvider
gdk_content_provider_ref_formats, function in GdkContentProvider
gdk_content_provider_ref_storable_formats, function in GdkContentProvider
gdk_content_provider_write_mime_type_async, function in GdkContentProvider
gdk_content_provider_write_mime_type_finish, function in GdkContentProvider
gdk_content_register_deserializer, function in GdkContentDeserializer
gdk_content_register_serializer, function in GdkContentSerializer
gdk_content_serializer_get_cancellable, function in GdkContentSerializer
gdk_content_serializer_get_gtype, function in GdkContentSerializer
gdk_content_serializer_get_mime_type, function in GdkContentSerializer
gdk_content_serializer_get_output_stream, function in GdkContentSerializer
gdk_content_serializer_get_priority, function in GdkContentSerializer
gdk_content_serializer_get_task_data, function in GdkContentSerializer
gdk_content_serializer_get_user_data, function in GdkContentSerializer
gdk_content_serializer_get_value, function in GdkContentSerializer
gdk_content_serializer_return_error, function in GdkContentSerializer
gdk_content_serializer_return_success, function in GdkContentSerializer
gdk_content_serializer_set_task_data, function in GdkContentSerializer
gdk_content_serialize_async, function in GdkContentSerializer
gdk_content_serialize_finish, function in GdkContentSerializer
GdkCrossingEvent, struct in Events
GdkCrossingMode, enum in Events
gdk_crossing_event_get_detail, function in Events
gdk_crossing_event_get_focus, function in Events
gdk_crossing_event_get_mode, function in Events
GDK_CURRENT_TIME, macro in Events
GdkCursor, struct in Cursors
GdkCursor:fallback, object property in Cursors
GdkCursor:hotspot-x, object property in Cursors
GdkCursor:hotspot-y, object property in Cursors
GdkCursor:name, object property in Cursors
GdkCursor:texture, object property in Cursors
gdk_cursor_get_fallback, function in Cursors
gdk_cursor_get_hotspot_x, function in Cursors
gdk_cursor_get_hotspot_y, function in Cursors
gdk_cursor_get_name, function in Cursors
gdk_cursor_get_texture, function in Cursors
gdk_cursor_new_from_name, function in Cursors
gdk_cursor_new_from_texture, function in Cursors

D

GdkDeleteEvent, struct in Events
GdkDevice, struct in GdkDevice
GdkDevice::changed, object signal in GdkDevice
GdkDevice::tool-changed, object signal in GdkDevice
GdkDevice:caps-lock-state, object property in GdkDevice
GdkDevice:direction, object property in GdkDevice
GdkDevice:display, object property in GdkDevice
GdkDevice:has-bidi-layouts, object property in GdkDevice
GdkDevice:has-cursor, object property in GdkDevice
GdkDevice:modifier-state, object property in GdkDevice
GdkDevice:n-axes, object property in GdkDevice
GdkDevice:name, object property in GdkDevice
GdkDevice:num-lock-state, object property in GdkDevice
GdkDevice:num-touches, object property in GdkDevice
GdkDevice:product-id, object property in GdkDevice
GdkDevice:scroll-lock-state, object property in GdkDevice
GdkDevice:seat, object property in GdkDevice
GdkDevice:source, object property in GdkDevice
GdkDevice:tool, object property in GdkDevice
GdkDevice:vendor-id, object property in GdkDevice
GdkDevicePad, struct in GdkDevicePad
GdkDevicePadFeature, enum in GdkDevicePad
GdkDeviceTool, struct in GdkDevice
GdkDeviceTool:axes, object property in GdkDevice
GdkDeviceTool:hardware-id, object property in GdkDevice
GdkDeviceTool:serial, object property in GdkDevice
GdkDeviceTool:tool-type, object property in GdkDevice
GdkDeviceToolType, enum in GdkDevice
gdk_device_get_caps_lock_state, function in GdkDevice
gdk_device_get_device_tool, function in GdkDevice
gdk_device_get_direction, function in GdkDevice
gdk_device_get_display, function in GdkDevice
gdk_device_get_has_cursor, function in GdkDevice
gdk_device_get_modifier_state, function in GdkDevice
gdk_device_get_name, function in GdkDevice
gdk_device_get_num_lock_state, function in GdkDevice
gdk_device_get_num_touches, function in GdkDevice
gdk_device_get_product_id, function in GdkDevice
gdk_device_get_scroll_lock_state, function in GdkDevice
gdk_device_get_seat, function in GdkDevice
gdk_device_get_source, function in GdkDevice
gdk_device_get_surface_at_position, function in GdkDevice
gdk_device_get_vendor_id, function in GdkDevice
gdk_device_has_bidi_layouts, function in GdkDevice
gdk_device_pad_get_feature_group, function in GdkDevicePad
gdk_device_pad_get_group_n_modes, function in GdkDevicePad
gdk_device_pad_get_n_features, function in GdkDevicePad
gdk_device_pad_get_n_groups, function in GdkDevicePad
gdk_device_tool_get_axes, function in GdkDevice
gdk_device_tool_get_hardware_id, function in GdkDevice
gdk_device_tool_get_serial, function in GdkDevice
gdk_device_tool_get_tool_type, function in GdkDevice
GDK_DISABLE_DEPRECATION_WARNINGS, macro in General
GdkDisplay, struct in GdkDisplay
GdkDisplay::closed, object signal in GdkDisplay
GdkDisplay::opened, object signal in GdkDisplay
GdkDisplay::seat-added, object signal in GdkDisplay
GdkDisplay::seat-removed, object signal in GdkDisplay
GdkDisplay::setting-changed, object signal in GdkDisplay
GdkDisplay:composited, object property in GdkDisplay
GdkDisplay:input-shapes, object property in GdkDisplay
GdkDisplay:rgba, object property in GdkDisplay
GdkDisplayManager, struct in GdkDisplayManager
GdkDisplayManager::display-opened, object signal in GdkDisplayManager
GdkDisplayManager:default-display, object property in GdkDisplayManager
gdk_display_beep, function in GdkDisplay
gdk_display_close, function in GdkDisplay
gdk_display_device_is_grabbed, function in GdkDisplay
gdk_display_flush, function in GdkDisplay
gdk_display_get_app_launch_context, function in GdkDisplay
gdk_display_get_clipboard, function in GdkDisplay
gdk_display_get_default, function in GdkDisplay
gdk_display_get_default_seat, function in GdkDisplay
gdk_display_get_monitors, function in GdkDisplay
gdk_display_get_monitor_at_surface, function in GdkDisplay
gdk_display_get_name, function in GdkDisplay
gdk_display_get_primary_clipboard, function in GdkDisplay
gdk_display_get_setting, function in GdkDisplay
gdk_display_get_startup_notification_id, function in GdkDisplay
gdk_display_is_closed, function in GdkDisplay
gdk_display_is_composited, function in GdkDisplay
gdk_display_is_rgba, function in GdkDisplay
gdk_display_list_seats, function in GdkDisplay
gdk_display_manager_get, function in GdkDisplayManager
gdk_display_manager_get_default_display, function in GdkDisplayManager
gdk_display_manager_list_displays, function in GdkDisplayManager
gdk_display_manager_open_display, function in GdkDisplayManager
gdk_display_manager_set_default_display, function in GdkDisplayManager
gdk_display_map_keycode, function in GdkDisplay
gdk_display_map_keyval, function in GdkDisplay
gdk_display_notify_startup_complete, function in GdkDisplay
gdk_display_open, function in GdkDisplay
gdk_display_put_event, function in GdkDisplay
gdk_display_supports_input_shapes, function in GdkDisplay
gdk_display_sync, function in GdkDisplay
gdk_display_translate_key, function in GdkDisplay
GDK_DISPLAY_XDISPLAY, macro in X Window System Interaction
GdkDNDEvent, struct in Events
gdk_dnd_event_get_drop, function in Events
GdkDrag, struct in Drag and Drop
GdkDrag::cancel, object signal in Drag and Drop
GdkDrag::dnd-finished, object signal in Drag and Drop
GdkDrag::drop-performed, object signal in Drag and Drop
GdkDrag:actions, object property in Drag and Drop
GdkDrag:content, object property in Drag and Drop
GdkDrag:device, object property in Drag and Drop
GdkDrag:display, object property in Drag and Drop
GdkDrag:formats, object property in Drag and Drop
GdkDrag:selected-action, object property in Drag and Drop
GdkDrag:surface, object property in Drag and Drop
GdkDragAction, enum in Drag and Drop
GdkDragCancelReason, enum in Drag and Drop
GdkDragSurface, struct in Drag and Drop
GdkDragSurfaceInterface, struct in Drag and Drop
gdk_drag_action_is_unique, function in Drag and Drop
gdk_drag_begin, function in Drag and Drop
gdk_drag_drop_done, function in Drag and Drop
gdk_drag_get_actions, function in Drag and Drop
gdk_drag_get_content, function in Drag and Drop
gdk_drag_get_device, function in Drag and Drop
gdk_drag_get_display, function in Drag and Drop
gdk_drag_get_drag_surface, function in Drag and Drop
gdk_drag_get_formats, function in Drag and Drop
gdk_drag_get_selected_action, function in Drag and Drop
gdk_drag_get_surface, function in Drag and Drop
gdk_drag_set_hotspot, function in Drag and Drop
gdk_drag_surface_present, function in Drag and Drop
GdkDrawContext, struct in GdkDrawContext
gdk_draw_context_begin_frame, function in GdkDrawContext
gdk_draw_context_end_frame, function in GdkDrawContext
gdk_draw_context_get_display, function in GdkDrawContext
gdk_draw_context_get_frame_region, function in GdkDrawContext
gdk_draw_context_get_surface, function in GdkDrawContext
gdk_draw_context_is_in_frame, function in GdkDrawContext
GdkDrop, struct in Drag and Drop
GdkDrop:actions, object property in Drag and Drop
GdkDrop:device, object property in Drag and Drop
GdkDrop:display, object property in Drag and Drop
GdkDrop:drag, object property in Drag and Drop
GdkDrop:formats, object property in Drag and Drop
GdkDrop:surface, object property in Drag and Drop
gdk_drop_finish, function in Drag and Drop
gdk_drop_get_actions, function in Drag and Drop
gdk_drop_get_device, function in Drag and Drop
gdk_drop_get_display, function in Drag and Drop
gdk_drop_get_drag, function in Drag and Drop
gdk_drop_get_formats, function in Drag and Drop
gdk_drop_get_surface, function in Drag and Drop
gdk_drop_read_async, function in Drag and Drop
gdk_drop_read_finish, function in Drag and Drop
gdk_drop_read_value_async, function in Drag and Drop
gdk_drop_read_value_finish, function in Drag and Drop
gdk_drop_status, function in Drag and Drop

E

GdkEvent, struct in Events
GdkEventSequence, struct in Events
gdk_events_get_angle, function in Events
gdk_events_get_center, function in Events
gdk_events_get_distance, function in Events
GdkEventType, enum in Events
gdk_event_get_axes, function in Events
gdk_event_get_axis, function in Events
gdk_event_get_device, function in Events
gdk_event_get_device_tool, function in Events
gdk_event_get_display, function in Events
gdk_event_get_event_sequence, function in Events
gdk_event_get_event_type, function in Events
gdk_event_get_history, function in Events
gdk_event_get_modifier_state, function in Events
gdk_event_get_pointer_emulated, function in Events
gdk_event_get_position, function in Events
gdk_event_get_seat, function in Events
gdk_event_get_surface, function in Events
gdk_event_get_time, function in Events
GDK_EVENT_PROPAGATE, macro in Events
gdk_event_ref, function in Events
GDK_EVENT_STOP, macro in Events
gdk_event_triggers_context_menu, function in Events
gdk_event_unref, function in Events

F

GdkFocusEvent, struct in Events
gdk_focus_event_get_in, function in Events
GdkFrameClock, struct in GdkFrameClock
GdkFrameClock::after-paint, object signal in GdkFrameClock
GdkFrameClock::before-paint, object signal in GdkFrameClock
GdkFrameClock::flush-events, object signal in GdkFrameClock
GdkFrameClock::layout, object signal in GdkFrameClock
GdkFrameClock::paint, object signal in GdkFrameClock
GdkFrameClock::resume-events, object signal in GdkFrameClock
GdkFrameClock::update, object signal in GdkFrameClock
GdkFrameClockPhase, enum in GdkFrameClock
GdkFrameTimings, struct in GdkFrameTimings
gdk_frame_clock_begin_updating, function in GdkFrameClock
gdk_frame_clock_end_updating, function in GdkFrameClock
gdk_frame_clock_get_current_timings, function in GdkFrameClock
gdk_frame_clock_get_fps, function in GdkFrameClock
gdk_frame_clock_get_frame_counter, function in GdkFrameClock
gdk_frame_clock_get_frame_time, function in GdkFrameClock
gdk_frame_clock_get_history_start, function in GdkFrameClock
gdk_frame_clock_get_refresh_info, function in GdkFrameClock
gdk_frame_clock_get_timings, function in GdkFrameClock
gdk_frame_clock_request_phase, function in GdkFrameClock
gdk_frame_timings_get_complete, function in GdkFrameTimings
gdk_frame_timings_get_frame_counter, function in GdkFrameTimings
gdk_frame_timings_get_frame_time, function in GdkFrameTimings
gdk_frame_timings_get_predicted_presentation_time, function in GdkFrameTimings
gdk_frame_timings_get_presentation_time, function in GdkFrameTimings
gdk_frame_timings_get_refresh_interval, function in GdkFrameTimings
gdk_frame_timings_ref, function in GdkFrameTimings
gdk_frame_timings_unref, function in GdkFrameTimings
GdkFullscreenMode, enum in GdkToplevel

G

GdkGLContext, struct in GdkGLContext
GdkGLContext:shared-context, object property in GdkGLContext
GdkGLError, enum in GdkGLContext
GdkGLTexture, struct in Textures
gdk_gl_context_clear_current, function in GdkGLContext
gdk_gl_context_get_current, function in GdkGLContext
gdk_gl_context_get_debug_enabled, function in GdkGLContext
gdk_gl_context_get_display, function in GdkGLContext
gdk_gl_context_get_forward_compatible, function in GdkGLContext
gdk_gl_context_get_required_version, function in GdkGLContext
gdk_gl_context_get_shared_context, function in GdkGLContext
gdk_gl_context_get_surface, function in GdkGLContext
gdk_gl_context_get_use_es, function in GdkGLContext
gdk_gl_context_get_version, function in GdkGLContext
gdk_gl_context_is_legacy, function in GdkGLContext
gdk_gl_context_make_current, function in GdkGLContext
gdk_gl_context_realize, function in GdkGLContext
gdk_gl_context_set_debug_enabled, function in GdkGLContext
gdk_gl_context_set_forward_compatible, function in GdkGLContext
gdk_gl_context_set_required_version, function in GdkGLContext
gdk_gl_context_set_use_es, function in GdkGLContext
gdk_gl_texture_new, function in Textures
gdk_gl_texture_release, function in Textures
GdkGrabBrokenEvent, struct in Events
gdk_grab_broken_event_get_grab_surface, function in Events
gdk_grab_broken_event_get_implicit, function in Events
GdkGravity, enum in GdkSurface

I

GdkInputSource, enum in GdkDevice
gdk_intern_mime_type, function in Content Formats

K

GdkKeyEvent, struct in Events
GdkKeymapKey, struct in Events
GdkKeyMatch, enum in Events
gdk_keyval_convert_case, function in Keyboard Handling
gdk_keyval_from_name, function in Keyboard Handling
gdk_keyval_is_lower, function in Keyboard Handling
gdk_keyval_is_upper, function in Keyboard Handling
gdk_keyval_name, function in Keyboard Handling
gdk_keyval_to_lower, function in Keyboard Handling
gdk_keyval_to_unicode, function in Keyboard Handling
gdk_keyval_to_upper, function in Keyboard Handling
gdk_key_event_get_consumed_modifiers, function in Events
gdk_key_event_get_keycode, function in Events
gdk_key_event_get_keyval, function in Events
gdk_key_event_get_layout, function in Events
gdk_key_event_get_level, function in Events
gdk_key_event_get_match, function in Events
gdk_key_event_is_modifier, function in Events
gdk_key_event_matches, function in Events

M

GDK_MAJOR_VERSION, macro in General
GdkMemoryFormat, enum in Textures
GdkMemoryTexture, struct in Textures
GDK_MEMORY_DEFAULT, macro in Textures
gdk_memory_texture_new, function in Textures
GDK_MICRO_VERSION, macro in General
GDK_MINOR_VERSION, macro in General
GdkModifierType, enum in GdkSurface
GDK_MODIFIER_MASK, macro in GdkSurface
GdkMonitor, struct in GdkMonitor
GdkMonitor::invalidate, object signal in GdkMonitor
GdkMonitor:connector, object property in GdkMonitor
GdkMonitor:display, object property in GdkMonitor
GdkMonitor:geometry, object property in GdkMonitor
GdkMonitor:height-mm, object property in GdkMonitor
GdkMonitor:manufacturer, object property in GdkMonitor
GdkMonitor:model, object property in GdkMonitor
GdkMonitor:refresh-rate, object property in GdkMonitor
GdkMonitor:scale-factor, object property in GdkMonitor
GdkMonitor:subpixel-layout, object property in GdkMonitor
GdkMonitor:valid, object property in GdkMonitor
GdkMonitor:width-mm, object property in GdkMonitor
gdk_monitor_get_connector, function in GdkMonitor
gdk_monitor_get_display, function in GdkMonitor
gdk_monitor_get_geometry, function in GdkMonitor
gdk_monitor_get_height_mm, function in GdkMonitor
gdk_monitor_get_manufacturer, function in GdkMonitor
gdk_monitor_get_model, function in GdkMonitor
gdk_monitor_get_refresh_rate, function in GdkMonitor
gdk_monitor_get_scale_factor, function in GdkMonitor
gdk_monitor_get_subpixel_layout, function in GdkMonitor
gdk_monitor_get_width_mm, function in GdkMonitor
gdk_monitor_is_valid, function in GdkMonitor
GdkMotionEvent, struct in Events

N

GdkNotifyType, enum in Events

P

GdkPadEvent, struct in Events
gdk_pad_event_get_axis_value, function in Events
gdk_pad_event_get_button, function in Events
gdk_pad_event_get_group_mode, function in Events
GdkPaintable, struct in GdkPaintable
GdkPaintable::invalidate-contents, object signal in GdkPaintable
GdkPaintable::invalidate-size, object signal in GdkPaintable
GdkPaintableFlags, enum in GdkPaintable
GdkPaintableInterface, struct in GdkPaintable
gdk_paintable_compute_concrete_size, function in GdkPaintable
gdk_paintable_get_current_image, function in GdkPaintable
gdk_paintable_get_flags, function in GdkPaintable
gdk_paintable_get_intrinsic_aspect_ratio, function in GdkPaintable
gdk_paintable_get_intrinsic_height, function in GdkPaintable
gdk_paintable_get_intrinsic_width, function in GdkPaintable
gdk_paintable_invalidate_contents, function in GdkPaintable
gdk_paintable_invalidate_size, function in GdkPaintable
gdk_paintable_new_empty, function in GdkPaintable
gdk_paintable_snapshot, function in GdkPaintable
gdk_pango_layout_get_clip_region, function in Pango Interaction
gdk_pango_layout_line_get_clip_region, function in Pango Interaction
gdk_pixbuf_get_from_surface, function in Pixbufs
gdk_pixbuf_get_from_texture, function in Pixbufs
GDK_POINTER_TO_XID, macro in X Window System Interaction
GdkPopup, struct in GdkPopup
GdkPopup:autohide, object property in GdkPopup
GdkPopup:parent, object property in GdkPopup
GdkPopupLayout, struct in GdkPopupLayout
gdk_popup_get_autohide, function in GdkPopup
gdk_popup_get_parent, function in GdkPopup
gdk_popup_get_position_x, function in GdkPopup
gdk_popup_get_position_y, function in GdkPopup
gdk_popup_get_rect_anchor, function in GdkPopup
gdk_popup_get_surface_anchor, function in GdkPopup
gdk_popup_layout_copy, function in GdkPopupLayout
gdk_popup_layout_equal, function in GdkPopupLayout
gdk_popup_layout_get_anchor_hints, function in GdkPopupLayout
gdk_popup_layout_get_anchor_rect, function in GdkPopupLayout
gdk_popup_layout_get_offset, function in GdkPopupLayout
gdk_popup_layout_get_rect_anchor, function in GdkPopupLayout
gdk_popup_layout_get_surface_anchor, function in GdkPopupLayout
gdk_popup_layout_new, function in GdkPopupLayout
gdk_popup_layout_ref, function in GdkPopupLayout
gdk_popup_layout_set_anchor_hints, function in GdkPopupLayout
gdk_popup_layout_set_anchor_rect, function in GdkPopupLayout
gdk_popup_layout_set_offset, function in GdkPopupLayout
gdk_popup_layout_set_rect_anchor, function in GdkPopupLayout
gdk_popup_layout_set_surface_anchor, function in GdkPopupLayout
gdk_popup_layout_unref, function in GdkPopupLayout
gdk_popup_present, function in GdkPopup
GDK_PRIORITY_EVENTS, macro in Events
GDK_PRIORITY_REDRAW, macro in Events
GdkProximityEvent, struct in Events

R

GdkRectangle, struct in Rectangles and Regions
gdk_rectangle_contains_point, function in Rectangles and Regions
gdk_rectangle_equal, function in Rectangles and Regions
gdk_rectangle_intersect, function in Rectangles and Regions
gdk_rectangle_union, function in Rectangles and Regions
GdkRGBA, struct in RGBA Colors
gdk_rgba_copy, function in RGBA Colors
gdk_rgba_equal, function in RGBA Colors
gdk_rgba_free, function in RGBA Colors
gdk_rgba_hash, function in RGBA Colors
gdk_rgba_is_clear, function in RGBA Colors
gdk_rgba_is_opaque, function in RGBA Colors
gdk_rgba_parse, function in RGBA Colors
gdk_rgba_to_string, function in RGBA Colors

S

GdkScrollDirection, enum in Events
GdkScrollEvent, struct in Events
gdk_scroll_event_get_deltas, function in Events
gdk_scroll_event_get_direction, function in Events
gdk_scroll_event_is_stop, function in Events
GdkSeat, struct in GdkSeat
GdkSeat::device-added, object signal in GdkSeat
GdkSeat::device-removed, object signal in GdkSeat
GdkSeat::tool-added, object signal in GdkSeat
GdkSeat::tool-removed, object signal in GdkSeat
GdkSeat:display, object property in GdkSeat
GdkSeatCapabilities, enum in GdkSeat
gdk_seat_get_capabilities, function in GdkSeat
gdk_seat_get_devices, function in GdkSeat
gdk_seat_get_display, function in GdkSeat
gdk_seat_get_keyboard, function in GdkSeat
gdk_seat_get_pointer, function in GdkSeat
gdk_seat_get_tools, function in GdkSeat
gdk_set_allowed_backends, function in GdkDisplayManager
GdkSnapshot, struct in GdkPaintable
GdkSubpixelLayout, enum in GdkMonitor
GdkSurface, struct in GdkSurface
GdkSurface::enter-monitor, object signal in GdkSurface
GdkSurface::event, object signal in GdkSurface
GdkSurface::layout, object signal in GdkSurface
GdkSurface::leave-monitor, object signal in GdkSurface
GdkSurface::render, object signal in GdkSurface
GdkSurface:cursor, object property in GdkSurface
GdkSurface:display, object property in GdkSurface
GdkSurface:frame-clock, object property in GdkSurface
GdkSurface:height, object property in GdkSurface
GdkSurface:mapped, object property in GdkSurface
GdkSurface:scale-factor, object property in GdkSurface
GdkSurface:width, object property in GdkSurface
GdkSurfaceEdge, enum in GdkToplevel
gdk_surface_beep, function in GdkSurface
gdk_surface_create_cairo_context, function in GdkSurface
gdk_surface_create_gl_context, function in GdkSurface
gdk_surface_create_similar_surface, function in Cairo Interaction
gdk_surface_create_vulkan_context, function in GdkSurface
gdk_surface_destroy, function in GdkSurface
gdk_surface_get_cursor, function in GdkSurface
gdk_surface_get_device_cursor, function in GdkSurface
gdk_surface_get_device_position, function in GdkSurface
gdk_surface_get_display, function in GdkSurface
gdk_surface_get_frame_clock, function in GdkSurface
gdk_surface_get_height, function in GdkSurface
gdk_surface_get_mapped, function in GdkSurface
gdk_surface_get_scale_factor, function in GdkSurface
gdk_surface_get_width, function in GdkSurface
gdk_surface_hide, function in GdkSurface
gdk_surface_is_destroyed, function in GdkSurface
gdk_surface_new_popup, function in GdkSurface
gdk_surface_new_toplevel, function in GdkSurface
gdk_surface_queue_render, function in GdkSurface
gdk_surface_request_layout, function in GdkSurface
gdk_surface_set_cursor, function in GdkSurface
gdk_surface_set_device_cursor, function in GdkSurface
gdk_surface_set_input_region, function in GdkSurface
gdk_surface_set_opaque_region, function in GdkSurface
gdk_surface_translate_coordinates, function in GdkSurface
GDK_SURFACE_XID, macro in X Window System Interaction

T

GdkTexture, struct in Textures
GdkTexture:height, object property in Textures
GdkTexture:width, object property in Textures
gdk_texture_download, function in Textures
gdk_texture_get_height, function in Textures
gdk_texture_get_width, function in Textures
gdk_texture_new_for_pixbuf, function in Textures
gdk_texture_new_from_file, function in Textures
gdk_texture_new_from_resource, function in Textures
gdk_texture_save_to_png, function in Textures
GdkTimeCoord, struct in GdkDevice
GdkToplevel, struct in GdkToplevel
GdkToplevel::compute-size, object signal in GdkToplevel
GdkToplevel:decorated, object property in GdkToplevel
GdkToplevel:deletable, object property in GdkToplevel
GdkToplevel:fullscreen-mode, object property in GdkToplevel
GdkToplevel:icon-list, object property in GdkToplevel
GdkToplevel:modal, object property in GdkToplevel
GdkToplevel:shortcuts-inhibited, object property in GdkToplevel
GdkToplevel:startup-id, object property in GdkToplevel
GdkToplevel:state, object property in GdkToplevel
GdkToplevel:title, object property in GdkToplevel
GdkToplevel:transient-for, object property in GdkToplevel
GdkToplevelLayout, struct in GdkToplevelLayout
GdkToplevelSize, struct in GdkToplevelSize
GdkToplevelState, enum in GdkToplevel
gdk_toplevel_begin_move, function in GdkToplevel
gdk_toplevel_begin_resize, function in GdkToplevel
gdk_toplevel_focus, function in GdkToplevel
gdk_toplevel_get_state, function in GdkToplevel
gdk_toplevel_inhibit_system_shortcuts, function in GdkToplevel
gdk_toplevel_layout_copy, function in GdkToplevelLayout
gdk_toplevel_layout_equal, function in GdkToplevelLayout
gdk_toplevel_layout_get_fullscreen, function in GdkToplevelLayout
gdk_toplevel_layout_get_fullscreen_monitor, function in GdkToplevelLayout
gdk_toplevel_layout_get_maximized, function in GdkToplevelLayout
gdk_toplevel_layout_get_resizable, function in GdkToplevelLayout
gdk_toplevel_layout_new, function in GdkToplevelLayout
gdk_toplevel_layout_ref, function in GdkToplevelLayout
gdk_toplevel_layout_set_fullscreen, function in GdkToplevelLayout
gdk_toplevel_layout_set_maximized, function in GdkToplevelLayout
gdk_toplevel_layout_set_resizable, function in GdkToplevelLayout
gdk_toplevel_layout_unref, function in GdkToplevelLayout
gdk_toplevel_lower, function in GdkToplevel
gdk_toplevel_minimize, function in GdkToplevel
gdk_toplevel_present, function in GdkToplevel
gdk_toplevel_restore_system_shortcuts, function in GdkToplevel
gdk_toplevel_set_decorated, function in GdkToplevel
gdk_toplevel_set_deletable, function in GdkToplevel
gdk_toplevel_set_icon_list, function in GdkToplevel
gdk_toplevel_set_modal, function in GdkToplevel
gdk_toplevel_set_startup_id, function in GdkToplevel
gdk_toplevel_set_title, function in GdkToplevel
gdk_toplevel_set_transient_for, function in GdkToplevel
gdk_toplevel_show_window_menu, function in GdkToplevel
gdk_toplevel_size_get_bounds, function in GdkToplevelSize
gdk_toplevel_size_set_min_size, function in GdkToplevelSize
gdk_toplevel_size_set_shadow_width, function in GdkToplevelSize
gdk_toplevel_size_set_size, function in GdkToplevelSize
gdk_toplevel_supports_edge_constraints, function in GdkToplevel
GdkTouchEvent, struct in Events
GdkTouchpadEvent, struct in Events
GdkTouchpadGesturePhase, enum in Events
gdk_touchpad_event_get_deltas, function in Events
gdk_touchpad_event_get_gesture_phase, function in Events
gdk_touchpad_event_get_n_fingers, function in Events
gdk_touchpad_event_get_pinch_angle_delta, function in Events
gdk_touchpad_event_get_pinch_scale, function in Events
gdk_touch_event_get_emulating_pointer, function in Events

U

gdk_unicode_to_keyval, function in Keyboard Handling

V

GDK_VERSION_4_0, macro in General
GDK_VERSION_MAX_ALLOWED, macro in General
GDK_VERSION_MIN_REQUIRED, macro in General
GdkVulkanContext, struct in GdkVulkanContext
GdkVulkanContext::images-updated, object signal in GdkVulkanContext
GdkVulkanError, enum in GdkVulkanContext
gdk_vulkan_context_get_device, function in GdkVulkanContext
gdk_vulkan_context_get_draw_index, function in GdkVulkanContext
gdk_vulkan_context_get_draw_semaphore, function in GdkVulkanContext
gdk_vulkan_context_get_image, function in GdkVulkanContext
gdk_vulkan_context_get_image_format, function in GdkVulkanContext
gdk_vulkan_context_get_instance, function in GdkVulkanContext
gdk_vulkan_context_get_n_images, function in GdkVulkanContext
gdk_vulkan_context_get_physical_device, function in GdkVulkanContext
gdk_vulkan_context_get_queue, function in GdkVulkanContext
gdk_vulkan_context_get_queue_family_index, function in GdkVulkanContext

W

GdkWaylandToplevelExported, user_function in Wayland Interaction
gdk_wayland_device_get_node_path, function in Wayland Interaction
gdk_wayland_device_get_wl_keyboard, function in Wayland Interaction
gdk_wayland_device_get_wl_pointer, function in Wayland Interaction
gdk_wayland_device_get_wl_seat, function in Wayland Interaction
gdk_wayland_display_get_startup_notification_id, function in Wayland Interaction
gdk_wayland_display_get_wl_compositor, function in Wayland Interaction
gdk_wayland_display_get_wl_display, function in Wayland Interaction
gdk_wayland_display_query_registry, function in Wayland Interaction
gdk_wayland_display_set_cursor_theme, function in Wayland Interaction
gdk_wayland_display_set_startup_notification_id, function in Wayland Interaction
gdk_wayland_monitor_get_wl_output, function in Wayland Interaction
gdk_wayland_seat_get_wl_seat, function in Wayland Interaction
gdk_wayland_surface_get_wl_surface, function in Wayland Interaction
gdk_wayland_toplevel_export_handle, function in Wayland Interaction
gdk_wayland_toplevel_set_application_id, function in Wayland Interaction
gdk_wayland_toplevel_set_transient_for_exported, function in Wayland Interaction
gdk_wayland_toplevel_unexport_handle, function in Wayland Interaction
GDK_WINDOWING_MACOS, macro in General
GDK_WINDOWING_WAYLAND, macro in General
GDK_WINDOWING_WIN32, macro in General
GDK_WINDOWING_X11, macro in General

X

gdk_x11_device_get_id, function in X Window System Interaction
gdk_x11_device_manager_lookup, function in X Window System Interaction
gdk_x11_display_broadcast_startup_message, function in X Window System Interaction
gdk_x11_display_error_trap_pop, function in X Window System Interaction
gdk_x11_display_error_trap_pop_ignored, function in X Window System Interaction
gdk_x11_display_error_trap_push, function in X Window System Interaction
gdk_x11_display_get_default_group, function in X Window System Interaction
gdk_x11_display_get_glx_version, function in X Window System Interaction
gdk_x11_display_get_primary_monitor, function in X Window System Interaction
gdk_x11_display_get_screen, function in X Window System Interaction
gdk_x11_display_get_startup_notification_id, function in X Window System Interaction
gdk_x11_display_get_user_time, function in X Window System Interaction
gdk_x11_display_get_xcursor, function in X Window System Interaction
gdk_x11_display_get_xdisplay, function in X Window System Interaction
gdk_x11_display_get_xrootwindow, function in X Window System Interaction
gdk_x11_display_get_xscreen, function in X Window System Interaction
gdk_x11_display_grab, function in X Window System Interaction
gdk_x11_display_open, function in X Window System Interaction
gdk_x11_display_set_cursor_theme, function in X Window System Interaction
gdk_x11_display_set_program_class, function in X Window System Interaction
gdk_x11_display_set_startup_notification_id, function in X Window System Interaction
gdk_x11_display_set_surface_scale, function in X Window System Interaction
gdk_x11_display_string_to_compound_text, function in X Window System Interaction
gdk_x11_display_text_property_to_text_list, function in X Window System Interaction
gdk_x11_display_ungrab, function in X Window System Interaction
gdk_x11_display_utf8_to_compound_text, function in X Window System Interaction
gdk_x11_free_compound_text, function in X Window System Interaction
gdk_x11_free_text_list, function in X Window System Interaction
gdk_x11_get_server_time, function in X Window System Interaction
gdk_x11_get_xatom_by_name_for_display, function in X Window System Interaction
gdk_x11_get_xatom_name_for_display, function in X Window System Interaction
gdk_x11_lookup_xdisplay, function in X Window System Interaction
gdk_x11_monitor_get_output, function in X Window System Interaction
gdk_x11_monitor_get_workarea, function in X Window System Interaction
gdk_x11_screen_get_current_desktop, function in X Window System Interaction
gdk_x11_screen_get_monitor_output, function in X Window System Interaction
gdk_x11_screen_get_number_of_desktops, function in X Window System Interaction
gdk_x11_screen_get_screen_number, function in X Window System Interaction
gdk_x11_screen_get_window_manager_name, function in X Window System Interaction
gdk_x11_screen_get_xscreen, function in X Window System Interaction
gdk_x11_screen_supports_net_wm_hint, function in X Window System Interaction
gdk_x11_set_sm_client_id, function in X Window System Interaction
gdk_x11_surface_get_desktop, function in X Window System Interaction
gdk_x11_surface_get_group, function in X Window System Interaction
gdk_x11_surface_get_xid, function in X Window System Interaction
gdk_x11_surface_lookup_for_display, function in X Window System Interaction
gdk_x11_surface_move_to_current_desktop, function in X Window System Interaction
gdk_x11_surface_move_to_desktop, function in X Window System Interaction
gdk_x11_surface_set_frame_sync_enabled, function in X Window System Interaction
gdk_x11_surface_set_group, function in X Window System Interaction
gdk_x11_surface_set_skip_pager_hint, function in X Window System Interaction
gdk_x11_surface_set_skip_taskbar_hint, function in X Window System Interaction
gdk_x11_surface_set_theme_variant, function in X Window System Interaction
gdk_x11_surface_set_urgency_hint, function in X Window System Interaction
gdk_x11_surface_set_user_time, function in X Window System Interaction
gdk_x11_surface_set_utf8_property, function in X Window System Interaction
GDK_XID_TO_POINTER, macro in X Window System Interaction
docs/reference/gdk/html/gdk4-Cairo-Interaction.html0000664000175000017500000005426014010071761022340 0ustar mclasenmclasen Cairo Interaction: GDK 4 Reference Manual

Cairo Interaction

Cairo Interaction — Functions to support using cairo

Includes

#include <gdk/gdk.h>

Description

Cairo is a graphics library that supports vector graphics and image compositing that can be used with GDK and GTK.

GDK does not wrap the cairo API, instead it allows to create cairo contexts which can be used to draw on GdkSurfaces. Additional functions allow use GdkRectangles with cairo and to use GdkRGBAs, GdkPixbufs and GdkSurfaces as sources for drawing operations.

Functions

gdk_surface_create_similar_surface ()

cairo_surface_t *
gdk_surface_create_similar_surface (GdkSurface *surface,
                                    cairo_content_t content,
                                    int width,
                                    int height);

Create a new surface that is as compatible as possible with the given surface . For example the new surface will have the same fallback resolution and font options as surface . Generally, the new surface will also use the same backend as surface , unless that is not possible for some reason. The type of the returned surface may be examined with cairo_surface_get_type().

Initially the surface contents are all 0 (transparent if contents have transparency, black otherwise.)

Parameters

surface

surface to make new surface similar to

 

content

the content for the new surface

 

width

width of the new surface

 

height

height of the new surface

 

Returns

a pointer to the newly allocated surface. The caller owns the surface and should call cairo_surface_destroy() when done with it.

This function always returns a valid pointer, but it will return a pointer to a “nil” surface if other is already in an error state or any other error occurs.


gdk_cairo_set_source_rgba ()

void
gdk_cairo_set_source_rgba (cairo_t *cr,
                           const GdkRGBA *rgba);

Sets the specified GdkRGBA as the source color of cr .

Parameters

cr

a cairo context

 

rgba

a GdkRGBA

 

gdk_cairo_set_source_pixbuf ()

void
gdk_cairo_set_source_pixbuf (cairo_t *cr,
                             const GdkPixbuf *pixbuf,
                             double pixbuf_x,
                             double pixbuf_y);

Sets the given pixbuf as the source pattern for cr .

The pattern has an extend mode of CAIRO_EXTEND_NONE and is aligned so that the origin of pixbuf is pixbuf_x , pixbuf_y .

Parameters

cr

a cairo context

 

pixbuf

a GdkPixbuf

 

pixbuf_x

X coordinate of location to place upper left corner of pixbuf

 

pixbuf_y

Y coordinate of location to place upper left corner of pixbuf

 

gdk_cairo_rectangle ()

void
gdk_cairo_rectangle (cairo_t *cr,
                     const GdkRectangle *rectangle);

Adds the given rectangle to the current path of cr .

Parameters

cr

a cairo context

 

rectangle

a GdkRectangle

 

gdk_cairo_region ()

void
gdk_cairo_region (cairo_t *cr,
                  const cairo_region_t *region);

Adds the given region to the current path of cr .

Parameters

cr

a cairo context

 

region

a cairo_region_t

 

gdk_cairo_region_create_from_surface ()

cairo_region_t *
gdk_cairo_region_create_from_surface (cairo_surface_t *surface);

Creates region that describes covers the area where the given surface is more than 50% opaque.

This function takes into account device offsets that might be set with cairo_surface_set_device_offset().

Parameters

surface

a cairo surface

 

Returns

A cairo_region_t; must be freed with cairo_region_destroy()


gdk_cairo_draw_from_gl ()

void
gdk_cairo_draw_from_gl (cairo_t *cr,
                        GdkSurface *surface,
                        int source,
                        int source_type,
                        int buffer_scale,
                        int x,
                        int y,
                        int width,
                        int height);

This is the main way to draw GL content in GTK. It takes a render buffer ID (source_type == GL_RENDERBUFFER) or a texture id (source_type == GL_TEXTURE) and draws it onto cr with an OVER operation, respecting the current clip. The top left corner of the rectangle specified by x , y , width and height will be drawn at the current (0,0) position of the cairo_t.

This will work for *all* cairo_t, as long as surface is realized, but the fallback implementation that reads back the pixels from the buffer may be used in the general case. In the case of direct drawing to a surface with no special effects applied to cr it will however use a more efficient approach.

For GL_RENDERBUFFER the code will always fall back to software for buffers with alpha components, so make sure you use GL_TEXTURE if using alpha.

Calling this may change the current GL context.

Parameters

cr

a cairo context

 

surface

The surface we're rendering for (not necessarily into)

 

source

The GL ID of the source buffer

 

source_type

The type of the source

 

buffer_scale

The scale-factor that the source buffer is allocated for

 

x

The source x position in source to start copying from in GL coordinates

 

y

The source y position in source to start copying from in GL coordinates

 

width

The width of the region to draw

 

height

The height of the region to draw

 
docs/reference/gdk/html/gdk4.devhelp20000664000175000017500000034641214010071760017577 0ustar mclasenmclasen docs/reference/gdk/html/up-insensitive.png0000644000175000017500000000056614010071760020776 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIMEwIIDAT8?/Qϙ?[u$VHTDۈBM+![/]_i03IENDB`docs/reference/gdk/html/left-insensitive.png0000644000175000017500000000061314010071760021275 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIMEƫqIDAT8͒NQ@pds`*4@W@ A!Ԇ@6^ 5hxIH R`sQp̙339B|sKEQTK@۝΁i^~Wʆ`0TJ6TcYn6A ƀ~߱>}ǭs; lYkwr 5U= /" "uU=ɲlArDzp5I4^E+P3Ɯq_p ̥iUYp=#IENDB`docs/reference/gdk/html/up.png0000644000175000017500000000040414010071760016427 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/gdk/html/home.png0000644000175000017500000000040014010071760016727 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/gdk/html/right-insensitive.png0000644000175000017500000000056514010071760021466 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/gdk/html/right.png0000644000175000017500000000040514010071760017121 0ustar mclasenmclasenPNG  IHDRabKGD pHYs B(xtIME!GIDAT8үa?MIdEr,-hAIl ry}sX6 !9#D r$-Br$G"$;WZ&!cq \`軀O=QoufIENDB`docs/reference/gdk/html/style.css0000644000175000017500000002645514010071761017166 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; } span.nowrap { white-space: nowrap; } 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; } .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.informaltable table[border="1"], div.table table { border-collapse: collapse; border-spacing: 0px; /* tango:aluminium 3 */ border: solid 1px #babdb6; } div.informaltable table[border="1"] td, div.informaltable table th, div.table table td, div.table table th { /* tango:aluminium 3 */ border: solid 1px #babdb6; padding: 3px; vertical-align: top; } div.informaltable table[border="1"] th, 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; } .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; } } .hll { background-color: #ffffcc } .c { color: #408080; font-style: italic } /* Comment */ .err { border: 1px solid #FF0000 } /* Error */ .k { color: #008000; font-weight: bold } /* Keyword */ .o { color: #666666 } /* Operator */ .ch { color: #408080; font-style: italic } /* Comment.Hashbang */ .cm { color: #408080; font-style: italic } /* Comment.Multiline */ .cp { color: #BC7A00 } /* Comment.Preproc */ .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */ .c1 { color: #408080; font-style: italic } /* Comment.Single */ .cs { color: #408080; font-style: italic } /* Comment.Special */ .gd { color: #A00000 } /* Generic.Deleted */ .ge { font-style: italic } /* Generic.Emph */ .gr { color: #FF0000 } /* Generic.Error */ .gh { color: #000080; font-weight: bold } /* Generic.Heading */ .gi { color: #00A000 } /* Generic.Inserted */ .go { color: #888888 } /* Generic.Output */ .gp { color: #000080; font-weight: bold } /* Generic.Prompt */ .gs { font-weight: bold } /* Generic.Strong */ .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ .gt { color: #0044DD } /* Generic.Traceback */ .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ .kp { color: #008000 } /* Keyword.Pseudo */ .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ .kt { color: #B00040 } /* Keyword.Type */ .m { color: #666666 } /* Literal.Number */ .s { color: #BA2121 } /* Literal.String */ .na { color: #7D9029 } /* Name.Attribute */ .nb { color: #008000 } /* Name.Builtin */ .nc { color: #0000FF; font-weight: bold } /* Name.Class */ .no { color: #880000 } /* Name.Constant */ .nd { color: #AA22FF } /* Name.Decorator */ .ni { color: #999999; font-weight: bold } /* Name.Entity */ .ne { color: #D2413A; font-weight: bold } /* Name.Exception */ .nf { color: #0000FF } /* Name.Function */ .nl { color: #A0A000 } /* Name.Label */ .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */ .nt { color: #008000; font-weight: bold } /* Name.Tag */ .nv { color: #19177C } /* Name.Variable */ .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */ .w { color: #bbbbbb } /* Text.Whitespace */ .mb { color: #666666 } /* Literal.Number.Bin */ .mf { color: #666666 } /* Literal.Number.Float */ .mh { color: #666666 } /* Literal.Number.Hex */ .mi { color: #666666 } /* Literal.Number.Integer */ .mo { color: #666666 } /* Literal.Number.Oct */ .sa { color: #BA2121 } /* Literal.String.Affix */ .sb { color: #BA2121 } /* Literal.String.Backtick */ .sc { color: #BA2121 } /* Literal.String.Char */ .dl { color: #BA2121 } /* Literal.String.Delimiter */ .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */ .s2 { color: #BA2121 } /* Literal.String.Double */ .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */ .sh { color: #BA2121 } /* Literal.String.Heredoc */ .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */ .sx { color: #008000 } /* Literal.String.Other */ .sr { color: #BB6688 } /* Literal.String.Regex */ .s1 { color: #BA2121 } /* Literal.String.Single */ .ss { color: #19177C } /* Literal.String.Symbol */ .bp { color: #008000 } /* Name.Builtin.Pseudo */ .fm { color: #0000FF } /* Name.Function.Magic */ .vc { color: #19177C } /* Name.Variable.Class */ .vg { color: #19177C } /* Name.Variable.Global */ .vi { color: #19177C } /* Name.Variable.Instance */ .vm { color: #19177C } /* Name.Variable.Magic */ .il { color: #666666 } /* Literal.Number.Integer.Long */docs/reference/gdk/html/ch01s02.html0000664000175000017500000000275614010071761017262 0ustar mclasenmclasen : GDK 4 Reference Manual
docs/reference/gdk/html/GdkContentDeserializer.html0000664000175000017500000010743714010071761022607 0ustar mclasenmclasen GdkContentDeserializer: GDK 4 Reference Manual

GdkContentDeserializer

GdkContentDeserializer — Deserialize content for transfer

Types and Values

Object Hierarchy

    GObject
    ╰── GdkContentDeserializer

Implemented Interfaces

GdkContentDeserializer implements GAsyncResult.

Includes

#include <gdk/gdk.h>

Description

A GdkContentDeserializer is used to deserialize content received via inter-application data transfers.

Functions

GdkContentDeserializeFunc ()

void
(*GdkContentDeserializeFunc) (GdkContentDeserializer *deserializer);

The type of a function that can be registered with gdk_content_register_deserializer(). When the function gets called to operate on content, it can call functions on the deserializer object to obtain the mime type, input stream, user data, etc. for its operation.

Parameters

deserializer

a GdkContentDeserializer

 

gdk_content_deserializer_get_mime_type ()

const char *
gdk_content_deserializer_get_mime_type
                               (GdkContentDeserializer *deserializer);

Gets the mime type to deserialize from.

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the mime type for the current operation.

[transfer none]


gdk_content_deserializer_get_gtype ()

GType
gdk_content_deserializer_get_gtype (GdkContentDeserializer *deserializer);

Gets the GType to create an instance of.

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the GType for the current operation


gdk_content_deserializer_get_value ()

GValue *
gdk_content_deserializer_get_value (GdkContentDeserializer *deserializer);

Gets the GValue to store the deserialized object in.

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the GValue for the current operation.

[transfer none]


gdk_content_deserializer_get_input_stream ()

GInputStream *
gdk_content_deserializer_get_input_stream
                               (GdkContentDeserializer *deserializer);

Gets the input stream that was passed to gdk_content_deserialize_async().

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the input stream for the current operation.

[transfer none]


gdk_content_deserializer_get_priority ()

int
gdk_content_deserializer_get_priority (GdkContentDeserializer *deserializer);

Gets the io priority that was passed to gdk_content_deserialize_async().

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the io priority for the current operation


gdk_content_deserializer_get_cancellable ()

GCancellable *
gdk_content_deserializer_get_cancellable
                               (GdkContentDeserializer *deserializer);

Gets the cancellable that was passed to gdk_content_deserialize_async().

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the cancellable for the current operation.

[transfer none]


gdk_content_deserializer_get_user_data ()

gpointer
gdk_content_deserializer_get_user_data
                               (GdkContentDeserializer *deserializer);

Gets the user data that was passed when the deserializer was registered.

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the user data for this deserializer.

[transfer none]


gdk_content_deserializer_set_task_data ()

void
gdk_content_deserializer_set_task_data
                               (GdkContentDeserializer *deserializer,
                                gpointer data,
                                GDestroyNotify notify);

Associate data with the current deserialization operation.

Parameters

deserializer

a GdkContentDeserializer

 

data

data to associate with this operation

 

notify

destroy notify for data

 

gdk_content_deserializer_get_task_data ()

gpointer
gdk_content_deserializer_get_task_data
                               (GdkContentDeserializer *deserializer);

Gets the data that was associated with deserializer via gdk_content_deserializer_set_task_data().

Parameters

deserializer

a GdkContentDeserializer

 

Returns

the task data for deserializer .

[transfer none]


gdk_content_deserializer_return_success ()

void
gdk_content_deserializer_return_success
                               (GdkContentDeserializer *deserializer);

Indicate that the deserialization has been successfully completed.

Parameters

deserializer

a GdkContentDeserializer

 

gdk_content_deserializer_return_error ()

void
gdk_content_deserializer_return_error (GdkContentDeserializer *deserializer,
                                       GError *error);

Indicate that the deserialization has ended with an error. This function consumes error .

Parameters

deserializer

a GdkContentDeserializer

 

error

a GError

 

gdk_content_register_deserializer ()

void
gdk_content_register_deserializer (const char *mime_type,
                                   GType type,
                                   GdkContentDeserializeFunc deserialize,
                                   gpointer data,
                                   GDestroyNotify notify);

Registers a function to create objects of a given type from a serialized representation with the given mime type.

Parameters

mime_type

the mime type which the function can deserialize from

 

type

the type of objects that the function creates

 

deserialize

the callback

 

data

data that deserialize can access

 

notify

destroy notify for data

 

gdk_content_deserialize_async ()

void
gdk_content_deserialize_async (GInputStream *stream,
                               const char *mime_type,
                               GType type,
                               int io_priority,
                               GCancellable *cancellable,
                               GAsyncReadyCallback callback,
                               gpointer user_data);

Read content from the given input stream and deserialize it, asynchronously. When the operation is finished, callback will be called. You can then call gdk_content_deserialize_finish() to get the result of the operation.

Parameters

stream

a GInputStream to read the serialized content from

 

mime_type

the mime type to deserialize from

 

type

the GType to deserialize from

 

io_priority

the io priority of the operation

 

cancellable

optional GCancellable object.

[nullable]

callback

callback to call when the operation is done.

[scope async]

user_data

data to pass to the callback function.

[closure]

gdk_content_deserialize_finish ()

gboolean
gdk_content_deserialize_finish (GAsyncResult *result,
                                GValue *value,
                                GError **error);

Finishes a content deserialization operation.

Parameters

result

the GAsyncResult

 

value

return location for the result of the operation

 

error

return location for an error

 

Returns

TRUE if the operation was successful. In this case, value is set. FALSE if an error occurred. In this case, error is set

Types and Values

GdkContentDeserializer

typedef struct _GdkContentDeserializer GdkContentDeserializer;

Should not be accessed directly.

docs/reference/gdk/html/gdk4-Content-Formats.html0000664000175000017500000020201614010071761022043 0ustar mclasenmclasen Content Formats: GDK 4 Reference Manual

Content Formats

Content Formats — Advertising and negotiating of content exchange formats

Object Hierarchy

    GBoxed
    ╰── GdkContentFormats

Includes

#include <gdk/gdk.h>

Description

This section describes the GdkContentFormats structure that is used to advertise and negotiate the format of content passed between different widgets, windows or applications using for example the clipboard or drag'n'drop.

GDK supports content in 2 forms: GType and mime type. Using GTypes is meant only for in-process content transfers. Mime types are meant to be used for data passing both in-process and out-of-process. The details of how data is passed is described in the documentation of the actual implementations.

A GdkContentFormats describes a set of possible formats content can be exchanged in. It is assumed that this set is ordered. GTypes are more important than mime types. Order between different GTypes or mime types is the order they were added in, most important first. Functions that care about order, such as gdk_content_formats_union() will describe in their documentation how they interpret that order, though in general the order of the first argument is considered the primary order of the result, followed by the order of further arguments.

For debugging purposes, the function gdk_content_formats_to_string() exists. It will print a comma-seperated formats of formats from most important to least important.

GdkContentFormats is an immutable struct. After creation, you cannot change the types it represents. Instead, new GdkContentFormats have to be created. The GdkContentFormatsBuilder structure is meant to help in this endeavor.

Functions

gdk_intern_mime_type ()

const char *
gdk_intern_mime_type (const char *string);

Canonicalizes the given mime type and interns the result.

If string is not a valid mime type, NULL is returned instead. See RFC 2048 for the syntax if mime types.

Parameters

string

string of a potential mime type.

[transfer none]

Returns

An interned string for the canonicalized mime type or NULL if the string wasn't a valid mime type


gdk_content_formats_new ()

GdkContentFormats *
gdk_content_formats_new (const char **mime_types,
                         guint n_mime_types);

Creates a new GdkContentFormats from an array of mime types.

The mime types must be valid and different from each other or the behavior of the return value is undefined. If you cannot guarantee this, use GdkContentFormatsBuilder instead.

Parameters

mime_types

Pointer to an array of mime types.

[array length=n_mime_types][allow-none]

n_mime_types

number of entries in mime_types .

 

Returns

the new GdkContentFormats.

[transfer full]


gdk_content_formats_new_for_gtype ()

GdkContentFormats *
gdk_content_formats_new_for_gtype (GType type);

Creates a new GdkContentFormats for a given GType.

Parameters

type

a $GType

 

Returns

a new GdkContentFormats


gdk_content_formats_ref ()

GdkContentFormats *
gdk_content_formats_ref (GdkContentFormats *formats);

Increases the reference count of a GdkContentFormats by one.

Parameters

formats

a GdkContentFormats

 

Returns

the passed in GdkContentFormats.


gdk_content_formats_unref ()

void
gdk_content_formats_unref (GdkContentFormats *formats);

Decreases the reference count of a GdkContentFormats by one. If the resulting reference count is zero, frees the formats.

Parameters

formats

a GdkContentFormats

 

gdk_content_formats_print ()

void
gdk_content_formats_print (GdkContentFormats *formats,
                           GString *string);

Prints the given formats into a string for human consumption. This is meant for debugging and logging.

The form of the representation may change at any time and is not guaranteed to stay identical.

Parameters

formats

a GdkContentFormats

 

string

a GString to print into

 

gdk_content_formats_to_string ()

char *
gdk_content_formats_to_string (GdkContentFormats *formats);

Prints the given formats into a human-readable string. This is a small wrapper around gdk_content_formats_print() to help when debugging.

Parameters

formats

a GdkContentFormats

 

Returns

a new string.

[transfer full]


gdk_content_formats_get_gtypes ()

const GType *
gdk_content_formats_get_gtypes (const GdkContentFormats *formats,
                                gsize *n_gtypes);

Gets the GTypes included in formats . Note that formats may not contain any GTypes, in particular when they are empty. In that case NULL will be returned.

Parameters

formats

a GdkContentFormats

 

n_gtypes

optional pointer to take the number of GTypes contained in the return value.

[out][optional]

Returns

G_TYPE_INVALID-terminated array of types included in formats or NULL if none.

[transfer none][nullable][array length=n_gtypes]


gdk_content_formats_get_mime_types ()

const char * const *
gdk_content_formats_get_mime_types (const GdkContentFormats *formats,
                                    gsize *n_mime_types);

Gets the mime types included in formats . Note that formats may not contain any mime types, in particular when they are empty. In that case NULL will be returned.

Parameters

formats

a GdkContentFormats

 

n_mime_types

optional pointer to take the number of mime types contained in the return value.

[out][allow-none]

Returns

NULL-terminated array of interned strings of mime types included in formats or NULL if none.

[transfer none][nullable]


gdk_content_formats_union ()

GdkContentFormats *
gdk_content_formats_union (GdkContentFormats *first,
                           const GdkContentFormats *second);

Append all missing types from second to first , in the order they had in second .

Parameters

first

the GdkContentFormats to merge into.

[transfer full]

second

the GdkContentFormats to merge from.

[transfer none]

Returns

a new GdkContentFormats


gdk_content_formats_match ()

gboolean
gdk_content_formats_match (const GdkContentFormats *first,
                           const GdkContentFormats *second);

Checks if first and second have any matching formats.

Parameters

first

the primary GdkContentFormats to intersect

 

second

the GdkContentFormats to intersect with

 

Returns

TRUE if a matching format was found.


gdk_content_formats_match_gtype ()

GType
gdk_content_formats_match_gtype (const GdkContentFormats *first,
                                 const GdkContentFormats *second);

Finds the first GType from first that is also contained in second . If no matching GType is found, G_TYPE_INVALID is returned.

Parameters

first

the primary GdkContentFormats to intersect

 

second

the GdkContentFormats to intersect with

 

Returns

The first common GType or G_TYPE_INVALID if none.


gdk_content_formats_match_mime_type ()

const char *
gdk_content_formats_match_mime_type (const GdkContentFormats *first,
                                     const GdkContentFormats *second);

Finds the first mime type from first that is also contained in second . If no matching mime type is found, NULL is returned.

Parameters

first

the primary GdkContentFormats to intersect

 

second

the GdkContentFormats to intersect with

 

Returns

The first common mime type or NULL if none.

[nullable]


gdk_content_formats_contain_gtype ()

gboolean
gdk_content_formats_contain_gtype (const GdkContentFormats *formats,
                                   GType type);

Checks if a given GType is part of the given formats .

Parameters

formats

a GdkContentFormats

 

type

the GType to search for

 

Returns

TRUE if the GType was found


gdk_content_formats_contain_mime_type ()

gboolean
gdk_content_formats_contain_mime_type (const GdkContentFormats *formats,
                                       const char *mime_type);

Checks if a given mime type is part of the given formats .

Parameters

formats

a GdkContentFormats

 

mime_type

the mime type to search for

 

Returns

TRUE if the mime_type was found


gdk_content_formats_union_serialize_gtypes ()

GdkContentFormats *
gdk_content_formats_union_serialize_gtypes
                               (GdkContentFormats *formats);

Add GTypes for the mime types in formats for which serializers are registered.

Return: a new GdkContentFormats

Parameters

formats

a GdkContentFormats.

[transfer full]

gdk_content_formats_union_deserialize_gtypes ()

GdkContentFormats *
gdk_content_formats_union_deserialize_gtypes
                               (GdkContentFormats *formats);

Add GTypes for mime types in formats for which deserializers are registered.

Return: a new GdkContentFormats

Parameters

formats

a GdkContentFormats.

[transfer full]

gdk_content_formats_union_serialize_mime_types ()

GdkContentFormats *
gdk_content_formats_union_serialize_mime_types
                               (GdkContentFormats *formats);

Add mime types for GTypes in formats for which serializers are registered.

Return: a new GdkContentFormats

Parameters

formats

a GdkContentFormats.

[transfer full]

gdk_content_formats_union_deserialize_mime_types ()

GdkContentFormats *
gdk_content_formats_union_deserialize_mime_types
                               (GdkContentFormats *formats);

Add mime types for GTypes in formats for which deserializers are registered.

Return: a new GdkContentFormats

Parameters

formats

a GdkContentFormats.

[transfer full]

gdk_content_formats_builder_new ()

GdkContentFormatsBuilder *
gdk_content_formats_builder_new (void);

Create a new GdkContentFormatsBuilder object. The resulting builder would create an empty GdkContentFormats. Use addition functions to add types to it.

Returns

a new GdkContentFormatsBuilder


gdk_content_formats_builder_free_to_formats ()

GdkContentFormats *
gdk_content_formats_builder_free_to_formats
                               (GdkContentFormatsBuilder *builder);

Creates a new GdkContentFormats from the current state of the given builder , and frees the builder instance.

[skip]

Parameters

Returns

the newly created GdkContentFormats with all the formats added to builder .

[transfer full]


gdk_content_formats_builder_add_formats ()

void
gdk_content_formats_builder_add_formats
                               (GdkContentFormatsBuilder *builder,
                                const GdkContentFormats *formats);

Appends all formats from formats to builder , skipping those that already exist.

Parameters

builder

a GdkContentFormatsBuilder

 

formats

the formats to add

 

gdk_content_formats_builder_add_gtype ()

void
gdk_content_formats_builder_add_gtype (GdkContentFormatsBuilder *builder,
                                       GType type);

Appends gtype to builder if it has not already been added.

Parameters

builder

a GdkContentFormatsBuilder

 

type

a GType

 

gdk_content_formats_builder_add_mime_type ()

void
gdk_content_formats_builder_add_mime_type
                               (GdkContentFormatsBuilder *builder,
                                const char *mime_type);

Appends mime_type to builder if it has not already been added.

Parameters

builder

a GdkContentFormatsBuilder

 

mime_type

a mime type

 

gdk_content_formats_builder_ref ()

GdkContentFormatsBuilder *
gdk_content_formats_builder_ref (GdkContentFormatsBuilder *builder);

Acquires a reference on the given builder .

This function is intended primarily for bindings. GdkContentFormatsBuilder objects should not be kept around.

Parameters

Returns

the given GdkContentFormatsBuilder with its reference count increased.

[transfer none]


gdk_content_formats_builder_unref ()

void
gdk_content_formats_builder_unref (GdkContentFormatsBuilder *builder);

Releases a reference on the given builder .

Parameters


gdk_content_formats_builder_to_formats ()

GdkContentFormats *
gdk_content_formats_builder_to_formats
                               (GdkContentFormatsBuilder *builder);

Creates a new GdkContentFormats from the given builder .

The given GdkContentFormatsBuilder is reset once this function returns; you cannot call this function multiple times on the same builder instance.

This function is intended primarily for bindings. C code should use gdk_content_formats_builder_free_to_formats().

Parameters

Returns

the newly created GdkContentFormats with all the formats added to builder .

[transfer full]

Types and Values

GdkContentFormats

typedef struct _GdkContentFormats GdkContentFormats;

A GdkContentFormats struct is a reference counted struct and should be treated as opaque.


GdkContentFormatsBuilder

typedef struct _GdkContentFormatsBuilder GdkContentFormatsBuilder;

A GdkContentFormatsBuilder struct is an opaque struct. It is meant to not be kept around and only be used to create new GdkContentFormats objects.

docs/reference/gdk/html/GdkContentProvider.html0000664000175000017500000011240314010071761021744 0ustar mclasenmclasen GdkContentProvider: GDK 4 Reference Manual

GdkContentProvider

GdkContentProvider — Provides content for data transfer between applications

Signals

void content-changed Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkContentProvider

Includes

#include <gdk/gdk.h>

Description

A GdkContentProvider is used to provide content for the clipboard in a number of formats.

To create a GdkContentProvider, use gdk_content_provider_new_for_value() or gdk_content_provider_new_for_bytes().

GDK knows how to handle common text and image formats out-of-the-box. See GdkContentSerializer and GdkContentDeserializer if you want to add support for application-specific data formats.

Functions

gdk_content_provider_new_for_value ()

GdkContentProvider *
gdk_content_provider_new_for_value (const GValue *value);

Create a content provider that provides the given value .

Parameters

value

a GValue

 

Returns

a new GdkContentProvider


gdk_content_provider_new_typed ()

GdkContentProvider *
gdk_content_provider_new_typed (GType type,
                                ...);

Create a content provider that provides the value of the given type .

The value is provided using G_VALUE_COLLECT(), so the same rules apply as when calling g_object_new() or g_object_set().

Parameters

type

Type of value to follow

 

...

value

 

Returns

a new GdkContentProvider


gdk_content_provider_new_for_bytes ()

GdkContentProvider *
gdk_content_provider_new_for_bytes (const char *mime_type,
                                    GBytes *bytes);

Create a content provider that provides the given bytes as data for the given mime_type .

Parameters

mime_type

the mime type

 

bytes

a GBytes with the data for mime_type .

[transfer none]

Returns

a new GdkContentProvider


gdk_content_provider_new_union ()

GdkContentProvider *
gdk_content_provider_new_union (GdkContentProvider **providers,
                                gsize n_providers);

Creates a content provider that represents all the given providers .

Whenever data needs to be written, the union provider will try the given providers in the given order and the first one supporting a format will be chosen to provide it.

This allows an easy way to support providing data in different formats. For example, an image may be provided by its file and by the image contents with a call such as

1
2
3
4
gdk_content_provider_new_union ((GdkContentProvider *[2]) {
                                  gdk_content_provider_new_typed (G_TYPE_FILE, file),
                                  gdk_content_provider_new_typed (G_TYPE_TEXTURE, texture)
                                }, 2);

Parameters

providers

The GdkContentProviders to present the union of.

[nullable][array length=n_providers][transfer full]

n_providers

the number of providers

 

Returns

a new GdkContentProvider


gdk_content_provider_ref_formats ()

GdkContentFormats *
gdk_content_provider_ref_formats (GdkContentProvider *provider);

Gets the formats that the provider can provide its current contents in.

Parameters

provider

a GdkContentProvider

 

Returns

The formats of the provider.

[transfer full]


gdk_content_provider_ref_storable_formats ()

GdkContentFormats *
gdk_content_provider_ref_storable_formats
                               (GdkContentProvider *provider);

Gets the formats that the provider suggests other applications to store the data in. An example of such an application would be a clipboard manager.

This can be assumed to be a subset of gdk_content_provider_ref_formats().

Parameters

provider

a GdkContentProvider

 

Returns

The storable formats of the provider.

[transfer full]


gdk_content_provider_content_changed ()

void
gdk_content_provider_content_changed (GdkContentProvider *provider);

Emits the “content-changed” signal.

Parameters

provider

a GdkContentProvider

 

gdk_content_provider_write_mime_type_async ()

void
gdk_content_provider_write_mime_type_async
                               (GdkContentProvider *provider,
                                const char *mime_type,
                                GOutputStream *stream,
                                int io_priority,
                                GCancellable *cancellable,
                                GAsyncReadyCallback callback,
                                gpointer user_data);

Asynchronously writes the contents of provider to stream in the given mime_type . When the operation is finished callback will be called. You can then call gdk_content_provider_write_mime_type_finish() to get the result of the operation.

The given mime type does not need to be listed in the formats returned by gdk_content_provider_ref_formats(). However, if the given GType is not supported, G_IO_ERROR_NOT_SUPPORTED will be reported.

The given stream will not be closed.

Parameters

provider

a GdkContentProvider

 

mime_type

the mime type to provide the data in

 

stream

the GOutputStream to write to

 

io_priority

the I/O priority of the request.

 

cancellable

optional GCancellable object, NULL to ignore.

[nullable]

callback

callback to call when the request is satisfied.

[scope async]

user_data

the data to pass to callback function.

[closure]

gdk_content_provider_write_mime_type_finish ()

gboolean
gdk_content_provider_write_mime_type_finish
                               (GdkContentProvider *provider,
                                GAsyncResult *result,
                                GError **error);

Finishes an asynchronous write operation started with gdk_content_provider_write_mime_type_async().

Parameters

provider

a GdkContentProvider

 

result

a GAsyncResult

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

TRUE if the operation was completed successfully. Otherwise error will be set to describe the failure.


gdk_content_provider_get_value ()

gboolean
gdk_content_provider_get_value (GdkContentProvider *provider,
                                GValue *value,
                                GError **error);

Gets the contents of provider stored in value .

The value will have been initialized to the GType the value should be provided in. This given GType does not need to be listed in the formats returned by gdk_content_provider_ref_formats(). However, if the given GType is not supported, this operation can fail and G_IO_ERROR_NOT_SUPPORTED will be reported.

Parameters

provider

a GdkContentProvider

 

value

the GValue to fill

 

error

a GError location to store the error occurring, or NULL to ignore.

 

Returns

TRUE if the value was set successfully. Otherwise error will be set to describe the failure.

Types and Values

GdkContentProvider

typedef struct _GdkContentProvider GdkContentProvider;

Should not be directly accessed.


struct GdkContentProviderClass

struct GdkContentProviderClass {
  GObjectClass parent_class;

  /* signals */
  void                  (* content_changed)                             (GdkContentProvider     *provider);
};

Class structure for GdkContentProvider.

Members

content_changed ()

Signal class closure for “content-changed”

 

Property Details

The “formats” property

  “formats”                  GdkContentFormats *

The possible formats that the provider can provide its data in.

Owner: GdkContentProvider

Flags: Read


The “storable-formats” property

  “storable-formats”         GdkContentFormats *

The subset of formats that clipboard managers should store this provider's data in.

Owner: GdkContentProvider

Flags: Read

Signal Details

The “content-changed” signal

void
user_function (GdkContentProvider *gdkcontentprovider,
               gpointer            user_data)

Emitted whenever the content provided by this provider has changed.

Parameters

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/gdk4-Pango-Interaction.html0000664000175000017500000005330714010071761022350 0ustar mclasenmclasen Pango Interaction: GDK 4 Reference Manual

Pango Interaction

Pango Interaction — Using Pango in GDK

Includes

#include <gdk/gdk.h>

Description

Pango is the text layout system used by GDK and GTK. The functions and types in this section are used to obtain clip regions for PangoLayouts, and to get PangoContexts that can be used with GDK.

Creating a PangoLayout object is the first step in rendering text, and requires getting a handle to a PangoContext. For GTK programs, you’ll usually want to use gtk_widget_get_pango_context(), or gtk_widget_create_pango_layout(). Once you have a PangoLayout, you can set the text and attributes of it with Pango functions like pango_layout_set_text() and get its size with pango_layout_get_size(). (Note that Pango uses a fixed point system internally, so converting between Pango units and pixels using PANGO_SCALE or the PANGO_PIXELS() macro.)

Rendering a Pango layout is done most simply with pango_cairo_show_layout(); you can also draw pieces of the layout with pango_cairo_show_layout_line().

Draw transformed text with Pango and cairo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#define RADIUS 100
#define N_WORDS 10
#define FONT "Sans Bold 18"

PangoContext *context;
PangoLayout *layout;
PangoFontDescription *desc;

double radius;
int width, height;
int i;

// Set up a transformation matrix so that the user space coordinates for
// where we are drawing are [-RADIUS, RADIUS], [-RADIUS, RADIUS]
// We first center, then change the scale

width = gdk_surface_get_width (surface);
height = gdk_surface_get_height (surface);
radius = MIN (width, height) / 2.;

cairo_translate (cr,
                 radius + (width - 2 * radius) / 2,
                 radius + (height - 2 * radius) / 2);
                 cairo_scale (cr, radius / RADIUS, radius / RADIUS);

// Create a PangoLayout, set the font and text
context = gdk_pango_context_get_for_display (display);
layout = pango_layout_new (context);
pango_layout_set_text (layout, "Text", -1);
desc = pango_font_description_from_string (FONT);
pango_layout_set_font_description (layout, desc);
pango_font_description_free (desc);

// Draw the layout N_WORDS times in a circle
for (i = 0; i < N_WORDS; i++)
  {
    double red, green, blue;
    double angle = 2 * G_PI * i / n_words;

    cairo_save (cr);

    // Gradient from red at angle == 60 to blue at angle == 300
    red = (1 + cos (angle - 60)) / 2;
    green = 0;
    blue = 1 - red;

    cairo_set_source_rgb (cr, red, green, blue);
    cairo_rotate (cr, angle);

    // Inform Pango to re-layout the text with the new transformation matrix
    pango_cairo_update_layout (cr, layout);

    pango_layout_get_size (layout, &width, &height);

    cairo_move_to (cr, - width / 2 / PANGO_SCALE, - DEFAULT_TEXT_RADIUS);
    pango_cairo_show_layout (cr, layout);

    cairo_restore (cr);
  }

g_object_unref (layout);
g_object_unref (context);

Output of the example above.

Functions

gdk_pango_layout_get_clip_region ()

cairo_region_t *
gdk_pango_layout_get_clip_region (PangoLayout *layout,
                                  int x_origin,
                                  int y_origin,
                                  const int *index_ranges,
                                  int n_ranges);

Obtains a clip region which contains the areas where the given ranges of text would be drawn. x_origin and y_origin are the top left point to center the layout. index_ranges should contain ranges of bytes in the layout’s text.

Note that the regions returned correspond to logical extents of the text ranges, not ink extents. So the drawn layout may in fact touch areas out of the clip region. The clip region is mainly useful for highlightling parts of text, such as when text is selected.

[skip]

Parameters

layout

a PangoLayout

 

x_origin

X pixel where you intend to draw the layout with this clip

 

y_origin

Y pixel where you intend to draw the layout with this clip

 

index_ranges

array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes

 

n_ranges

number of ranges in index_ranges , i.e. half the size of index_ranges

 

Returns

a clip region containing the given ranges


gdk_pango_layout_line_get_clip_region ()

cairo_region_t *
gdk_pango_layout_line_get_clip_region (PangoLayoutLine *line,
                                       int x_origin,
                                       int y_origin,
                                       const int *index_ranges,
                                       int n_ranges);

Obtains a clip region which contains the areas where the given ranges of text would be drawn. x_origin and y_origin are the top left position of the layout. index_ranges should contain ranges of bytes in the layout’s text. The clip region will include space to the left or right of the line (to the layout bounding box) if you have indexes above or below the indexes contained inside the line. This is to draw the selection all the way to the side of the layout. However, the clip region is in line coordinates, not layout coordinates.

Note that the regions returned correspond to logical extents of the text ranges, not ink extents. So the drawn line may in fact touch areas out of the clip region. The clip region is mainly useful for highlightling parts of text, such as when text is selected.

[skip]

Parameters

line

a PangoLayoutLine

 

x_origin

X pixel where you intend to draw the layout line with this clip

 

y_origin

baseline pixel where you intend to draw the layout line with this clip

 

index_ranges

array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes.

[array]

n_ranges

number of ranges in index_ranges , i.e. half the size of index_ranges

 

Returns

a clip region containing the given ranges

docs/reference/gdk/html/GdkContentSerializer.html0000664000175000017500000010550614010071761022271 0ustar mclasenmclasen GdkContentSerializer: GDK 4 Reference Manual

GdkContentSerializer

GdkContentSerializer — Serialize content for transfer

Types and Values

Object Hierarchy

    GObject
    ╰── GdkContentSerializer

Implemented Interfaces

GdkContentSerializer implements GAsyncResult.

Includes

#include <gdk/gdk.h>

Description

A GdkContentSerializer is used to serialize content for inter-application data transfers.

Functions

GdkContentSerializeFunc ()

void
(*GdkContentSerializeFunc) (GdkContentSerializer *serializer);

The type of a function that can be registered with gdk_content_register_serializer(). When the function gets called to operate on content, it can call functions on the serializer object to obtain the mime type, output stream, user data, etc. for its operation.

Parameters

serializer

a GdkContentSerializer

 

gdk_content_serializer_get_mime_type ()

const char *
gdk_content_serializer_get_mime_type (GdkContentSerializer *serializer);

Gets the mime type to serialize to.

Parameters

serializer

a GdkContentSerializer

 

Returns

the mime type for the current operation.

[transfer none]


gdk_content_serializer_get_gtype ()

GType
gdk_content_serializer_get_gtype (GdkContentSerializer *serializer);

Gets the GType to of the object to serialize.

Parameters

serializer

a GdkContentSerializer

 

Returns

the GType for the current operation


gdk_content_serializer_get_value ()

const GValue *
gdk_content_serializer_get_value (GdkContentSerializer *serializer);

Gets the GValue to read the object to serialize from.

Parameters

serializer

a GdkContentSerializer

 

Returns

the GValue for the current operation.

[transfer none]


gdk_content_serializer_get_output_stream ()

GOutputStream *
gdk_content_serializer_get_output_stream
                               (GdkContentSerializer *serializer);

Gets the output stream that was passed to gdk_content_serialize_async().

Parameters

serializer

a GdkContentSerializer

 

Returns

the output stream for the current operation.

[transfer none]


gdk_content_serializer_get_priority ()

int
gdk_content_serializer_get_priority (GdkContentSerializer *serializer);

Gets the io priority that was passed to gdk_content_serialize_async().

Parameters

serializer

a GdkContentSerializer

 

Returns

the io priority for the current operation


gdk_content_serializer_get_cancellable ()

GCancellable *
gdk_content_serializer_get_cancellable
                               (GdkContentSerializer *serializer);

Gets the cancellable that was passed to gdk_content_serialize_async().

Parameters

serializer

a GdkContentSerializer

 

Returns

the cancellable for the current operation.

[transfer none]


gdk_content_serializer_get_user_data ()

gpointer
gdk_content_serializer_get_user_data (GdkContentSerializer *serializer);

Gets the user data that was passed when the serializer was registered.

Parameters

serializer

a GdkContentSerializer

 

Returns

the user data for this serializer.

[transfer none]


gdk_content_serializer_set_task_data ()

void
gdk_content_serializer_set_task_data (GdkContentSerializer *serializer,
                                      gpointer data,
                                      GDestroyNotify notify);

Associate data with the current serialization operation.

Parameters

serializer

a GdkContentSerializer

 

data

data to associate with this operation

 

notify

destroy notify for data

 

gdk_content_serializer_get_task_data ()

gpointer
gdk_content_serializer_get_task_data (GdkContentSerializer *serializer);

Gets the data that was associated with serializer via gdk_content_serializer_set_task_data().

Parameters

serializer

a GdkContentSerializer

 

Returns

the task data for serializer .

[transfer none]


gdk_content_serializer_return_success ()

void
gdk_content_serializer_return_success (GdkContentSerializer *serializer);

Indicate that the serialization has been successfully completed.

Parameters

serializer

a GdkContentSerializer

 

gdk_content_serializer_return_error ()

void
gdk_content_serializer_return_error (GdkContentSerializer *serializer,
                                     GError *error);

Indicate that the serialization has ended with an error. This function consumes error .

Parameters

serializer

a GdkContentSerializer

 

error

a GError

 

gdk_content_register_serializer ()

void
gdk_content_register_serializer (GType type,
                                 const char *mime_type,
                                 GdkContentSerializeFunc serialize,
                                 gpointer data,
                                 GDestroyNotify notify);

Registers a function to convert objects of the given type to a serialized representation with the given mime type.

Parameters

type

the type of objects that the function can serialize

 

mime_type

the mime type to serialize to

 

serialize

the callback

 

data

data that serialize can access

 

notify

destroy notify for data

 

gdk_content_serialize_async ()

void
gdk_content_serialize_async (GOutputStream *stream,
                             const char *mime_type,
                             const GValue *value,
                             int io_priority,
                             GCancellable *cancellable,
                             GAsyncReadyCallback callback,
                             gpointer user_data);

Serialize content and write it to the given output stream, asynchronously. When the operation is finished, callback will be called. You can then call gdk_content_serialize_finish() to get the result of the operation.

Parameters

stream

a GOutputStream to write the serialized content to

 

mime_type

the mime type to serialize to

 

value

the content to serialize

 

io_priority

the io priority of the operation

 

cancellable

optional GCancellable object.

[nullable]

callback

callback to call when the operation is done.

[scope async]

user_data

data to pass to the callback function.

[closure]

gdk_content_serialize_finish ()

gboolean
gdk_content_serialize_finish (GAsyncResult *result,
                              GError **error);

Finishes a content serialization operation.

Parameters

result

the GAsyncResult

 

error

return location for an error

 

Returns

TRUE if the operation was successful, FALSE if an error occurred. In this case, error is set

Types and Values

GdkContentSerializer

typedef struct _GdkContentSerializer GdkContentSerializer;

Should not be accessed directly.

docs/reference/gdk/html/GdkDevice.html0000664000175000017500000023442414010071761020026 0ustar mclasenmclasen GdkDevice: GDK 4 Reference Manual

GdkDevice

GdkDevice — Object representing an input device

Properties

gboolean caps-lock-state Read
PangoDirection direction Read
GdkDisplay * display Read / Write / Construct Only
gboolean has-bidi-layouts Read
gboolean has-cursor Read / Write / Construct Only
GdkModifierType modifier-state Read
guint n-axes Read
char * name Read / Write / Construct Only
gboolean num-lock-state Read
guint num-touches Read / Write / Construct Only
char * product-id Read / Write / Construct Only
gboolean scroll-lock-state Read
GdkSeat * seat Read / Write
GdkInputSource source Read / Write / Construct Only
GdkDeviceTool * tool Read
char * vendor-id Read / Write / Construct Only
GdkAxisFlags axes Read / Write / Construct Only
guint64 hardware-id Read / Write / Construct Only
guint64 serial Read / Write / Construct Only
GdkDeviceToolType tool-type Read / Write / Construct Only

Signals

void changed Run Last
void tool-changed Run Last

Types and Values

Object Hierarchy

    GObject
    ├── GdkDevice
    ╰── GdkDeviceTool

Known Derived Interfaces

GdkDevice is required by GdkDevicePad.

Includes

#include <gdk/gdk.h>

Description

The GdkDevice object represents a single input device, such as a keyboard, a mouse, a touchpad, etc.

See the GdkSeat documentation for more information about the various kinds of devices, and their relationships.

Functions

gdk_device_get_name ()

const char *
gdk_device_get_name (GdkDevice *device);

Determines the name of the device, suitable for showing in a user interface.

Parameters

device

a GdkDevice

 

Returns

a name


gdk_device_get_vendor_id ()

const char *
gdk_device_get_vendor_id (GdkDevice *device);

Returns the vendor ID of this device, or NULL if this information couldn't be obtained. This ID is retrieved from the device, and is thus constant for it.

This function, together with gdk_device_get_product_id(), can be used to eg. compose GSettings paths to store settings for this device.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
static GSettings *
get_device_settings (GdkDevice *device)
{
  const char *vendor, *product;
  GSettings *settings;
  GdkDevice *device;
  char *path;

  vendor = gdk_device_get_vendor_id (device);
  product = gdk_device_get_product_id (device);

  path = g_strdup_printf ("/org/example/app/devices/%s:%s/", vendor, product);
  settings = g_settings_new_with_path (DEVICE_SCHEMA, path);
  g_free (path);

  return settings;
}

Parameters

device

a physical GdkDevice

 

Returns

the vendor ID, or NULL.

[nullable]


gdk_device_get_product_id ()

const char *
gdk_device_get_product_id (GdkDevice *device);

Returns the product ID of this device, or NULL if this information couldn't be obtained. This ID is retrieved from the device, and is thus constant for it. See gdk_device_get_vendor_id() for more information.

Parameters

device

a physical GdkDevice

 

Returns

the product ID, or NULL.

[nullable]


gdk_device_get_source ()

GdkInputSource
gdk_device_get_source (GdkDevice *device);

Determines the type of the device.

Parameters

device

a GdkDevice

 

Returns

a GdkInputSource


gdk_device_get_display ()

GdkDisplay *
gdk_device_get_display (GdkDevice *device);

Returns the GdkDisplay to which device pertains.

Parameters

device

a GdkDevice

 

Returns

a GdkDisplay. This memory is owned by GTK, and must not be freed or unreffed.

[transfer none]


gdk_device_get_has_cursor ()

gboolean
gdk_device_get_has_cursor (GdkDevice *device);

Determines whether the pointer follows device motion. This is not meaningful for keyboard devices, which don't have a pointer.

Parameters

device

a GdkDevice

 

Returns

TRUE if the pointer follows device motion


gdk_device_get_seat ()

GdkSeat *
gdk_device_get_seat (GdkDevice *device);

Returns the GdkSeat the device belongs to.

Parameters

device

A GdkDevice

 

Returns

a GdkSeat.

[transfer none]


gdk_device_get_num_touches ()

guint
gdk_device_get_num_touches (GdkDevice *device);

Retrieves the number of touch points associated to device .

Parameters

device

a GdkDevice

 

Returns

the number of touch points


gdk_device_get_device_tool ()

GdkDeviceTool *
gdk_device_get_device_tool (GdkDevice *device);

Retrieves the GdkDeviceTool associated to device .

Parameters

device

a GdkDevice

 

Returns

the GdkDeviceTool.

[transfer none]


gdk_device_get_caps_lock_state ()

gboolean
gdk_device_get_caps_lock_state (GdkDevice *device);

Retrieves whether the Caps Lock modifier of the keyboard is locked, if device is a keyboard device.

Parameters

device

a GdkDevice

 

Returns

TRUE if Caps Lock is on for device


gdk_device_get_direction ()

PangoDirection
gdk_device_get_direction (GdkDevice *device);

Returns the direction of effective layout of the keyboard, if device is a keyboard device.

The direction of a layout is the direction of the majority of its symbols. See pango_unichar_direction().

Parameters

device

a GdkDevice

 

Returns

PANGO_DIRECTION_LTR or PANGO_DIRECTION_RTL if it can determine the direction. PANGO_DIRECTION_NEUTRAL otherwise


gdk_device_get_modifier_state ()

GdkModifierType
gdk_device_get_modifier_state (GdkDevice *device);

Retrieves the current modifier state of the keyboard, if device is a keyboard device.

Parameters

device

a GdkDevice

 

Returns

the current modifier state


gdk_device_get_num_lock_state ()

gboolean
gdk_device_get_num_lock_state (GdkDevice *device);

Retrieves whether the Num Lock modifier of the keyboard is locked, if device is a keyboard device.

Parameters

device

a GdkDevice

 

Returns

TRUE if Num Lock is on for device


gdk_device_get_scroll_lock_state ()

gboolean
gdk_device_get_scroll_lock_state (GdkDevice *device);

Retrieves whether the Scroll Lock modifier of the keyboard is locked, if device is a keyboard device.

Parameters

device

a GdkDevice

 

Returns

TRUE if Scroll Lock is on for device


gdk_device_has_bidi_layouts ()

gboolean
gdk_device_has_bidi_layouts (GdkDevice *device);

Determines if keyboard layouts for both right-to-left and left-to-right languages are in use on the keyboard, if device is a keyboard device.

Parameters

device

a GdkDevice

 

Returns

TRUE if there are layouts with both directions, FALSE otherwise


gdk_device_get_surface_at_position ()

GdkSurface *
gdk_device_get_surface_at_position (GdkDevice *device,
                                    double *win_x,
                                    double *win_y);

Obtains the surface underneath device , returning the location of the device in win_x and win_y in double precision. Returns NULL if the surface tree under device is not known to GDK (for example, belongs to another application).

Parameters

device

pointer GdkDevice to query info to.

 

win_x

return location for the X coordinate of the device location, relative to the surface origin, or NULL.

[out][allow-none]

win_y

return location for the Y coordinate of the device location, relative to the surface origin, or NULL.

[out][allow-none]

Returns

the GdkSurface under the device position, or NULL.

[nullable][transfer none]


gdk_device_tool_get_serial ()

guint64
gdk_device_tool_get_serial (GdkDeviceTool *tool);

Gets the serial of this tool, this value can be used to identify a physical tool (eg. a tablet pen) across program executions.

Parameters

tool

a GdkDeviceTool

 

Returns

The serial ID for this tool


gdk_device_tool_get_tool_type ()

GdkDeviceToolType
gdk_device_tool_get_tool_type (GdkDeviceTool *tool);

Gets the GdkDeviceToolType of the tool.

Parameters

tool

a GdkDeviceTool

 

Returns

The physical type for this tool. This can be used to figure out what sort of pen is being used, such as an airbrush or a pencil.


gdk_device_tool_get_hardware_id ()

guint64
gdk_device_tool_get_hardware_id (GdkDeviceTool *tool);

Gets the hardware ID of this tool, or 0 if it's not known. When non-zero, the identificator is unique for the given tool model, meaning that two identical tools will share the same hardware_id , but will have different serial numbers (see gdk_device_tool_get_serial()).

This is a more concrete (and device specific) method to identify a GdkDeviceTool than gdk_device_tool_get_tool_type(), as a tablet may support multiple devices with the same GdkDeviceToolType, but having different hardware identificators.

Parameters

tool

a GdkDeviceTool

 

Returns

The hardware identificator of this tool.


gdk_device_tool_get_axes ()

GdkAxisFlags
gdk_device_tool_get_axes (GdkDeviceTool *tool);

Gets the axes of the tool.

Parameters

tool

a GdkDeviceTool

 

Returns

the axes of tool

Types and Values

GdkDevice

typedef struct _GdkDevice GdkDevice;

The GdkDevice struct contains only private fields and should not be accessed directly.


enum GdkInputSource

An enumeration describing the type of an input device in general terms.

Members

GDK_SOURCE_MOUSE

the device is a mouse. (This will be reported for the core pointer, even if it is something else, such as a trackball.)

 

GDK_SOURCE_PEN

the device is a stylus of a graphics tablet or similar device.

 

GDK_SOURCE_KEYBOARD

the device is a keyboard.

 

GDK_SOURCE_TOUCHSCREEN

the device is a direct-input touch device, such as a touchscreen or tablet

 

GDK_SOURCE_TOUCHPAD

the device is an indirect touch device, such as a touchpad

 

GDK_SOURCE_TRACKPOINT

the device is a trackpoint

 

GDK_SOURCE_TABLET_PAD

the device is a "pad", a collection of buttons, rings and strips found in drawing tablets

 

enum GdkAxisUse

An enumeration describing the way in which a device axis (valuator) maps onto the predefined valuator types that GTK understands.

Note that the X and Y axes are not really needed; pointer devices report their location via the x/y members of events regardless. Whether X and Y are present as axes depends on the GDK backend.

Members

GDK_AXIS_IGNORE

the axis is ignored.

 

GDK_AXIS_X

the axis is used as the x axis.

 

GDK_AXIS_Y

the axis is used as the y axis.

 

GDK_AXIS_DELTA_X

the axis is used as the scroll x delta

 

GDK_AXIS_DELTA_Y

the axis is used as the scroll y delta

 

GDK_AXIS_PRESSURE

the axis is used for pressure information.

 

GDK_AXIS_XTILT

the axis is used for x tilt information.

 

GDK_AXIS_YTILT

the axis is used for y tilt information.

 

GDK_AXIS_WHEEL

the axis is used for wheel information.

 

GDK_AXIS_DISTANCE

the axis is used for pen/tablet distance information

 

GDK_AXIS_ROTATION

the axis is used for pen rotation information

 

GDK_AXIS_SLIDER

the axis is used for pen slider information

 

GDK_AXIS_LAST

a constant equal to the numerically highest axis value.

 

enum GdkAxisFlags

Flags describing the current capabilities of a device/tool.

Members

GDK_AXIS_FLAG_X

X axis is present

 

GDK_AXIS_FLAG_Y

Y axis is present

 

GDK_AXIS_FLAG_DELTA_X

Scroll X delta axis is present

 

GDK_AXIS_FLAG_DELTA_Y

Scroll Y delta axis is present

 

GDK_AXIS_FLAG_PRESSURE

Pressure axis is present

 

GDK_AXIS_FLAG_XTILT

X tilt axis is present

 

GDK_AXIS_FLAG_YTILT

Y tilt axis is present

 

GDK_AXIS_FLAG_WHEEL

Wheel axis is present

 

GDK_AXIS_FLAG_DISTANCE

Distance axis is present

 

GDK_AXIS_FLAG_ROTATION

Z-axis rotation is present

 

GDK_AXIS_FLAG_SLIDER

Slider axis is present

 

GdkDeviceTool

typedef struct _GdkDeviceTool GdkDeviceTool;

A physical tool associated to a GdkDevice.


enum GdkDeviceToolType

Indicates the specific type of tool being used being a tablet. Such as an airbrush, pencil, etc.

Members

GDK_DEVICE_TOOL_TYPE_UNKNOWN

Tool is of an unknown type.

 

GDK_DEVICE_TOOL_TYPE_PEN

Tool is a standard tablet stylus.

 

GDK_DEVICE_TOOL_TYPE_ERASER

Tool is standard tablet eraser.

 

GDK_DEVICE_TOOL_TYPE_BRUSH

Tool is a brush stylus.

 

GDK_DEVICE_TOOL_TYPE_PENCIL

Tool is a pencil stylus.

 

GDK_DEVICE_TOOL_TYPE_AIRBRUSH

Tool is an airbrush stylus.

 

GDK_DEVICE_TOOL_TYPE_MOUSE

Tool is a mouse.

 

GDK_DEVICE_TOOL_TYPE_LENS

Tool is a lens cursor.

 

struct GdkTimeCoord

struct GdkTimeCoord {
  guint32 time;
  GdkAxisFlags flags;
  double axes[GDK_AXIS_LAST];
};

A GdkTimeCoord stores a single event in a motion history.

Members

guint32 time;

The timestamp for this event.

 

GdkAxisFlags flags;

Flags indicating what axes are present

 

double axes[GDK_AXIS_LAST];

axis values.

[array fixed-size=12]

Property Details

The “caps-lock-state” property

  “caps-lock-state”          gboolean

Whether the keyboard caps lock is on.

Owner: GdkDevice

Flags: Read

Default value: FALSE


The “direction” property

  “direction”                PangoDirection

The direction of the current layout of the keyboard.

Owner: GdkDevice

Flags: Read

Default value: PANGO_DIRECTION_NEUTRAL


The “display” property

  “display”                  GdkDisplay *

The GdkDisplay the GdkDevice pertains to.

Owner: GdkDevice

Flags: Read / Write / Construct Only


The “has-bidi-layouts” property

  “has-bidi-layouts”         gboolean

Whether the keyboard has bidi layouts.

Owner: GdkDevice

Flags: Read

Default value: FALSE


The “has-cursor” property

  “has-cursor”               gboolean

Whether the device is represented by a cursor on the screen.

Owner: GdkDevice

Flags: Read / Write / Construct Only

Default value: FALSE


The “modifier-state” property

  “modifier-state”           GdkModifierType

The modifier state of the keyboard.

Owner: GdkDevice

Flags: Read


The “n-axes” property

  “n-axes”                   guint

Number of axes in the device.

Owner: GdkDevice

Flags: Read

Default value: 0


The “name” property

  “name”                     char *

The device name.

Owner: GdkDevice

Flags: Read / Write / Construct Only

Default value: NULL


The “num-lock-state” property

  “num-lock-state”           gboolean

Whether the keyboard num lock is on.

Owner: GdkDevice

Flags: Read

Default value: FALSE


The “num-touches” property

  “num-touches”              guint

The maximal number of concurrent touches on a touch device. Will be 0 if the device is not a touch device or if the number of touches is unknown.

Owner: GdkDevice

Flags: Read / Write / Construct Only

Default value: 0


The “product-id” property

  “product-id”               char *

Product ID of this device, see gdk_device_get_product_id().

Owner: GdkDevice

Flags: Read / Write / Construct Only

Default value: NULL


The “scroll-lock-state” property

  “scroll-lock-state”        gboolean

Whether the keyboard scroll lock is on.

Owner: GdkDevice

Flags: Read

Default value: FALSE


The “seat” property

  “seat”                     GdkSeat *

GdkSeat of this device.

Owner: GdkDevice

Flags: Read / Write


The “source” property

  “source”                   GdkInputSource

Source type for the device.

Owner: GdkDevice

Flags: Read / Write / Construct Only

Default value: GDK_SOURCE_MOUSE


The “tool” property

  “tool”                     GdkDeviceTool *

The tool that is currently used with this device.

Owner: GdkDevice

Flags: Read


The “vendor-id” property

  “vendor-id”                char *

Vendor ID of this device, see gdk_device_get_vendor_id().

Owner: GdkDevice

Flags: Read / Write / Construct Only

Default value: NULL


The “axes” property

  “axes”                     GdkAxisFlags

Tool axes.

Owner: GdkDeviceTool

Flags: Read / Write / Construct Only


The “hardware-id” property

  “hardware-id”              guint64

Hardware ID.

Owner: GdkDeviceTool

Flags: Read / Write / Construct Only

Default value: 0


The “serial” property

  “serial”                   guint64

Serial number.

Owner: GdkDeviceTool

Flags: Read / Write / Construct Only

Default value: 0


The “tool-type” property

  “tool-type”                GdkDeviceToolType

Tool type.

Owner: GdkDeviceTool

Flags: Read / Write / Construct Only

Default value: GDK_DEVICE_TOOL_TYPE_UNKNOWN

Signal Details

The “changed” signal

void
user_function (GdkDevice *device,
               gpointer   user_data)

The ::changed signal is emitted either when the GdkDevice has changed the number of either axes or keys. For example on X11 this will normally happen when the physical device routing events through the logical device changes (for example, user switches from the USB mouse to a tablet); in that case the logical device will change to reflect the axes and keys on the new physical device.

Parameters

device

the GdkDevice that changed.

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “tool-changed” signal

void
user_function (GdkDevice     *device,
               GdkDeviceTool *tool,
               gpointer       user_data)

The ::tool-changed signal is emitted on pen/eraser GdkDevices whenever tools enter or leave proximity.

Parameters

device

the GdkDevice that changed.

 

tool

The new current tool

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

See Also

GdkSeat

docs/reference/gdk/html/GdkDevicePad.html0000664000175000017500000003611714010071761020452 0ustar mclasenmclasen GtkDevicePad: GDK 4 Reference Manual

GtkDevicePad

GtkDevicePad — Pad device interface

Types and Values

Object Hierarchy

    GInterface
    ╰── GdkDevicePad

Prerequisites

GdkDevicePad requires GdkDevice.

Includes

#include <gdk/gdk.h>

Description

GdkDevicePad is an interface implemented by devices of type GDK_SOURCE_TABLET_PAD, it allows querying the features provided by the pad device.

Tablet pads may contain one or more groups, each containing a subset of the buttons/rings/strips available. gdk_device_pad_get_n_groups() can be used to obtain the number of groups, gdk_device_pad_get_n_features() and gdk_device_pad_get_feature_group() can be combined to find out the number of buttons/rings/strips the device has, and how are they grouped.

Each of those groups have different modes, which may be used to map each individual pad feature to multiple actions. Only one mode is effective (current) for each given group, different groups may have different current modes. The number of available modes in a group can be found out through gdk_device_pad_get_group_n_modes(), and the current mode for a given group will be notified through events of type GDK_PAD_GROUP_MODE.

Functions

gdk_device_pad_get_n_groups ()

int
gdk_device_pad_get_n_groups (GdkDevicePad *pad);

Returns the number of groups this pad device has. Pads have at least one group. A pad group is a subcollection of buttons/strip/rings that is affected collectively by a same current mode.

Parameters

pad

a GdkDevicePad

 

Returns

The number of button/ring/strip groups in the pad.


gdk_device_pad_get_group_n_modes ()

int
gdk_device_pad_get_group_n_modes (GdkDevicePad *pad,
                                  int group_idx);

Returns the number of modes that group may have.

Parameters

pad

a GdkDevicePad

 

group_idx

group to get the number of available modes from

 

Returns

The number of modes available in group .


gdk_device_pad_get_n_features ()

int
gdk_device_pad_get_n_features (GdkDevicePad *pad,
                               GdkDevicePadFeature feature);

Returns the number of features a tablet pad has.

Parameters

pad

a GdkDevicePad

 

feature

a pad feature

 

Returns

The amount of elements of type feature that this pad has.


gdk_device_pad_get_feature_group ()

int
gdk_device_pad_get_feature_group (GdkDevicePad *pad,
                                  GdkDevicePadFeature feature,
                                  int feature_idx);

Returns the group the given feature and idx belong to, or -1 if feature/index do not exist in pad .

Parameters

pad

a GdkDevicePad

 

feature

the feature type to get the group from

 

feature_idx

the index of the feature to get the group from

 

Returns

The group number of the queried pad feature.

Types and Values

GdkDevicePad

typedef struct _GdkDevicePad GdkDevicePad;

The GdkDevicePad struct contains only private fields and should not be accessed directly.


enum GdkDevicePadFeature

A pad feature.

Members

GDK_DEVICE_PAD_FEATURE_BUTTON

a button

 

GDK_DEVICE_PAD_FEATURE_RING

a ring-shaped interactive area

 

GDK_DEVICE_PAD_FEATURE_STRIP

a straight interactive area

 
docs/reference/gdk/html/GdkDisplay.html0000664000175000017500000022437114010071761020234 0ustar mclasenmclasen GdkDisplay: GDK 4 Reference Manual

GdkDisplay

GdkDisplay — Controls a set of monitors and their associated input devices

Properties

gboolean composited Read
gboolean input-shapes Read
gboolean rgba Read

Signals

void closed Run Last
void opened Run Last
void seat-added Run Last
void seat-removed Run Last
void setting-changed Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkDisplay

Includes

#include <gdk/gdk.h>

Description

GdkDisplay objects are the GDK representation of a workstation.

Their purpose are two-fold:

  • To manage and provide information about input devices (pointers, keyboards, etc)

  • To manage and provide information about output devices (monitors, projectors, etc)

Most of the input device handling has been factored out into separate GdkSeat objects. Every display has a one or more seats, which can be accessed with gdk_display_get_default_seat() and gdk_display_list_seats().

Output devices are represented by GdkMonitor objects, which can be accessed with gdk_display_get_monitor_at_surface() and similar APIs.

Functions

gdk_display_open ()

GdkDisplay *
gdk_display_open (const char *display_name);

Opens a display.

Parameters

display_name

the name of the display to open

 

Returns

a GdkDisplay, or NULL if the display could not be opened.

[nullable][transfer none]


gdk_display_get_default ()

GdkDisplay *
gdk_display_get_default (void);

Gets the default GdkDisplay. This is a convenience function for: gdk_display_manager_get_default_display (gdk_display_manager_get()).

Returns

a GdkDisplay, or NULL if there is no default display.

[nullable][transfer none]


gdk_display_get_name ()

const char *
gdk_display_get_name (GdkDisplay *display);

Gets the name of the display.

Parameters

display

a GdkDisplay

 

Returns

a string representing the display name. This string is owned by GDK and should not be modified or freed.


gdk_display_device_is_grabbed ()

gboolean
gdk_display_device_is_grabbed (GdkDisplay *display,
                               GdkDevice *device);

Returns TRUE if there is an ongoing grab on device for display .

Parameters

display

a GdkDisplay

 

device

a GdkDevice

 

Returns

TRUE if there is a grab in effect for device .


gdk_display_beep ()

void
gdk_display_beep (GdkDisplay *display);

Emits a short beep on display

Parameters

display

a GdkDisplay

 

gdk_display_sync ()

void
gdk_display_sync (GdkDisplay *display);

Flushes any requests queued for the windowing system and waits until all requests have been handled. This is often used for making sure that the display is synchronized with the current state of the program. Calling gdk_display_sync() before gdk_x11_display_error_trap_pop() makes sure that any errors generated from earlier requests are handled before the error trap is removed.

This is most useful for X11. On windowing systems where requests are handled synchronously, this function will do nothing.

Parameters

display

a GdkDisplay

 

gdk_display_flush ()

void
gdk_display_flush (GdkDisplay *display);

Flushes any requests queued for the windowing system; this happens automatically when the main loop blocks waiting for new events, but if your application is drawing without returning control to the main loop, you may need to call this function explicitly. A common case where this function needs to be called is when an application is executing drawing commands from a thread other than the thread where the main loop is running.

This is most useful for X11. On windowing systems where requests are handled synchronously, this function will do nothing.

Parameters

display

a GdkDisplay

 

gdk_display_close ()

void
gdk_display_close (GdkDisplay *display);

Closes the connection to the windowing system for the given display, and cleans up associated resources.

Parameters

display

a GdkDisplay

 

gdk_display_is_closed ()

gboolean
gdk_display_is_closed (GdkDisplay *display);

Finds out if the display has been closed.

Parameters

display

a GdkDisplay

 

Returns

TRUE if the display is closed.


gdk_display_is_rgba ()

gboolean
gdk_display_is_rgba (GdkDisplay *display);

Returns whether surfaces on this display are created with an alpha channel.

Even if a TRUE is returned, it is possible that the surface’s alpha channel won’t be honored when displaying the surface on the screen: in particular, for X an appropriate windowing manager and compositing manager must be running to provide appropriate display. Use gdk_display_is_composited() to check if that is the case.

On modern displays, this value is always TRUE.

Parameters

display

a GdkDisplay

 

Returns

TRUE if surfaces are created with an alpha channel or FALSE if the display does not support this functionality.


gdk_display_is_composited ()

gboolean
gdk_display_is_composited (GdkDisplay *display);

Returns whether surfaces can reasonably be expected to have their alpha channel drawn correctly on the screen. Check gdk_display_is_rgba() for whether the display supports an alpha channel.

On X11 this function returns whether a compositing manager is compositing on display .

On modern displays, this value is always TRUE.

Parameters

display

a GdkDisplay

 

Returns

Whether surfaces with RGBA visuals can reasonably be expected to have their alpha channels drawn correctly on the screen.


gdk_display_supports_input_shapes ()

gboolean
gdk_display_supports_input_shapes (GdkDisplay *display);

Returns TRUE if gdk_surface_set_input_region() can be used to modify the input shape of surfaces on display .

On modern displays, this value is always TRUE.

Parameters

display

a GdkDisplay

 

Returns

TRUE if surfaces with modified input shape are supported


gdk_display_get_app_launch_context ()

GdkAppLaunchContext *
gdk_display_get_app_launch_context (GdkDisplay *display);

Returns a GdkAppLaunchContext suitable for launching applications on the given display.

Parameters

display

a GdkDisplay

 

Returns

a new GdkAppLaunchContext for display . Free with g_object_unref() when done.

[transfer full]


gdk_display_notify_startup_complete ()

void
gdk_display_notify_startup_complete (GdkDisplay *display,
                                     const char *startup_id);

Indicates to the GUI environment that the application has finished loading, using a given identifier.

GTK will call this function automatically for GtkWindow with custom startup-notification identifier unless gtk_window_set_auto_startup_notification() is called to disable that feature.

Parameters

display

a GdkDisplay

 

startup_id

a startup-notification identifier, for which notification process should be completed

 

gdk_display_get_default_seat ()

GdkSeat *
gdk_display_get_default_seat (GdkDisplay *display);

Returns the default GdkSeat for this display.

Note that a display may not have a seat. In this case, this function will return NULL.

Parameters

display

a GdkDisplay

 

Returns

the default seat.

[transfer none][nullable]


gdk_display_list_seats ()

GList *
gdk_display_list_seats (GdkDisplay *display);

Returns the list of seats known to display .

Parameters

display

a GdkDisplay

 

Returns

the list of seats known to the GdkDisplay.

[transfer container][element-type GdkSeat]


gdk_display_get_monitors ()

GListModel *
gdk_display_get_monitors (GdkDisplay *self);

Gets the list of monitors associated with this display.

Subsequent calls to this function will always return the same list for the same display.

You can listen to the GListModel::items-changed signal on this list to monitor changes to the monitor of this display.

Parameters

self

a GdkDisplay

 

Returns

a GListModel of GdkMonitor.

[transfer none]


gdk_display_get_monitor_at_surface ()

GdkMonitor *
gdk_display_get_monitor_at_surface (GdkDisplay *display,
                                    GdkSurface *surface);

Gets the monitor in which the largest area of surface resides, or a monitor close to surface if it is outside of all monitors.

Parameters

display

a GdkDisplay

 

surface

a GdkSurface

 

Returns

the monitor with the largest overlap with surface .

[transfer none]


gdk_display_get_clipboard ()

GdkClipboard *
gdk_display_get_clipboard (GdkDisplay *display);

Gets the clipboard used for copy/paste operations.

Parameters

display

a GdkDisplay

 

Returns

the display's clipboard.

[transfer none]


gdk_display_get_primary_clipboard ()

GdkClipboard *
gdk_display_get_primary_clipboard (GdkDisplay *display);

Gets the clipboard used for the primary selection. On backends where the primary clipboard is not supported natively, GDK emulates this clipboard locally.

Parameters

display

a GdkDisplay

 

Returns

the primary clipboard.

[transfer none]


gdk_display_get_setting ()

gboolean
gdk_display_get_setting (GdkDisplay *display,
                         const char *name,
                         GValue *value);

Retrieves a desktop-wide setting such as double-click time for the display .

Parameters

display

a GdkDisplay

 

name

the name of the setting

 

value

location to store the value of the setting

 

Returns

TRUE if the setting existed and a value was stored in value , FALSE otherwise


gdk_display_get_startup_notification_id ()

const char *
gdk_display_get_startup_notification_id
                               (GdkDisplay *display);

Gets the startup notification ID for a Wayland display, or NULL if no ID has been defined.

Parameters

display

a GdkDisplay

 

Returns

the startup notification ID for display , or NULL.

[nullable]


gdk_display_put_event ()

void
gdk_display_put_event (GdkDisplay *display,
                       GdkEvent *event);

Appends the given event onto the front of the event queue for display .

This function is only useful in very special situations and should not be used by applications.

Parameters

display

a GdkDisplay

 

event

a GdkEvent.

[transfer none]

gdk_display_map_keyval ()

gboolean
gdk_display_map_keyval (GdkDisplay *display,
                        guint keyval,
                        GdkKeymapKey **keys,
                        int *n_keys);

Obtains a list of keycode/group/level combinations that will generate keyval . Groups and levels are two kinds of keyboard mode; in general, the level determines whether the top or bottom symbol on a key is used, and the group determines whether the left or right symbol is used.

On US keyboards, the shift key changes the keyboard level, and there are no groups. A group switch key might convert a keyboard between Hebrew to English modes, for example.

GdkEventKey contains a group field that indicates the active keyboard group. The level is computed from the modifier mask.

The returned array should be freed with g_free().

Parameters

display

a GdkDisplay

 

keyval

a keyval, such as GDK_KEY_a, GDK_KEY_Up, GDK_KEY_Return, etc.

 

keys

return location for an array of GdkKeymapKey.

[out][array length=n_keys][transfer full]

n_keys

return location for number of elements in returned array

 

Returns

TRUE if keys were found and returned


gdk_display_map_keycode ()

gboolean
gdk_display_map_keycode (GdkDisplay *display,
                         guint keycode,
                         GdkKeymapKey **keys,
                         guint **keyvals,
                         int *n_entries);

Returns the keyvals bound to keycode . The Nth GdkKeymapKey in keys is bound to the Nth keyval in keyvals .

When a keycode is pressed by the user, the keyval from this list of entries is selected by considering the effective keyboard group and level.

Free the returned arrays with g_free().

Parameters

display

a GdkDisplay

 

keycode

a keycode

 

keys

return location for array of GdkKeymapKey, or NULL.

[out][array length=n_entries][transfer full][optional]

keyvals

return location for array of keyvals, or NULL.

[out][array length=n_entries][transfer full][optional]

n_entries

length of keys and keyvals

 

Returns

TRUE if there were any entries


gdk_display_translate_key ()

gboolean
gdk_display_translate_key (GdkDisplay *display,
                           guint keycode,
                           GdkModifierType state,
                           int group,
                           guint *keyval,
                           int *effective_group,
                           int *level,
                           GdkModifierType *consumed);

Translates the contents of a GdkEventKey (ie keycode , state , and group ) into a keyval, effective group, and level. Modifiers that affected the translation and are thus unavailable for application use are returned in consumed_modifiers .

The effective_group is the group that was actually used for the translation; some keys such as Enter are not affected by the active keyboard group. The level is derived from state .

consumed_modifiers gives modifiers that should be masked outfrom state when comparing this key press to a keyboard shortcut. For instance, on a US keyboard, the plus symbol is shifted, so when comparing a key press to a <Control>plus accelerator <Shift> should be masked out.

This function should rarely be needed, since GdkEventKey already contains the translated keyval. It is exported for the benefit of virtualized test environments.

Parameters

display

a GdkDisplay

 

keycode

a keycode

 

state

a modifier state

 

group

active keyboard group

 

keyval

return location for keyval, or NULL.

[out][optional]

effective_group

return location for effective group, or NULL.

[out][optional]

level

return location for level, or NULL.

[out][optional]

consumed

return location for modifiers that were used to determine the group or level, or NULL.

[out][optional]

Returns

TRUE if there was a keyval bound to keycode/state/group.

Types and Values

GdkDisplay

typedef struct _GdkDisplay GdkDisplay;

The GdkDisplay struct contains only private fields and should not be accessed directly.

Property Details

The “composited” property

  “composited”               gboolean

TRUE if the display properly composites the alpha channel. See gdk_display_is_composited() for details.

Owner: GdkDisplay

Flags: Read

Default value: TRUE


The “input-shapes” property

  “input-shapes”             gboolean

TRUE if the display supports input shapes. See gdk_display_supports_input_shapes() for details.

Owner: GdkDisplay

Flags: Read

Default value: TRUE


The “rgba” property

  “rgba”                     gboolean

TRUE if the display supports an alpha channel. See gdk_display_is_rgba() for details.

Owner: GdkDisplay

Flags: Read

Default value: TRUE

Signal Details

The “closed” signal

void
user_function (GdkDisplay *display,
               gboolean    is_error,
               gpointer    user_data)

The ::closed signal is emitted when the connection to the windowing system for display is closed.

Parameters

display

the object on which the signal is emitted

 

is_error

TRUE if the display was closed due to an error

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “opened” signal

void
user_function (GdkDisplay *display,
               gpointer    user_data)

The ::opened signal is emitted when the connection to the windowing system for display is opened.

Parameters

display

the object on which the signal is emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “seat-added” signal

void
user_function (GdkDisplay *display,
               GdkSeat    *seat,
               gpointer    user_data)

The ::seat-added signal is emitted whenever a new seat is made known to the windowing system.

Parameters

display

the object on which the signal is emitted

 

seat

the seat that was just added

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “seat-removed” signal

void
user_function (GdkDisplay *display,
               GdkSeat    *seat,
               gpointer    user_data)

The ::seat-removed signal is emitted whenever a seat is removed by the windowing system.

Parameters

display

the object on which the signal is emitted

 

seat

the seat that was just removed

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “setting-changed” signal

void
user_function (GdkDisplay *display,
               char       *setting,
               gpointer    user_data)

The ::setting-changed signal is emitted whenever a setting changes its value.

Parameters

display

the object on which the signal is emitted

 

setting

the name of the setting that changed

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/GdkDisplayManager.html0000664000175000017500000005724014010071761021526 0ustar mclasenmclasen GdkDisplayManager: GDK 4 Reference Manual

GdkDisplayManager

GdkDisplayManager — Maintains a list of all open GdkDisplays

Properties

GdkDisplay * default-display Read / Write

Signals

void display-opened Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkDisplayManager

Includes

#include <gdk/gdk.h>

Description

The purpose of the GdkDisplayManager singleton object is to offer notification when displays appear or disappear or the default display changes.

You can use gdk_display_manager_get() to obtain the GdkDisplayManager singleton, but that should be rarely necessary. Typically, initializing GTK opens a display that you can work with without ever accessing the GdkDisplayManager.

The GDK library can be built with support for multiple backends. The GdkDisplayManager object determines which backend is used at runtime.

When writing backend-specific code that is supposed to work with multiple GDK backends, you have to consider both compile time and runtime. At compile time, use the GDK_WINDOWING_X11, GDK_WINDOWING_WIN32 macros, etc. to find out which backends are present in the GDK library you are building your application against. At runtime, use type-check macros like GDK_IS_X11_DISPLAY() to find out which backend is in use:

Backend-specific code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifdef GDK_WINDOWING_X11
  if (GDK_IS_X11_DISPLAY (display))
    {
      // make X11-specific calls here
    }
  else
#endif
#ifdef GDK_WINDOWING_MACOS
  if (GDK_IS_MACOS_DISPLAY (display))
    {
      // make Quartz-specific calls here
    }
  else
#endif
  g_error ("Unsupported GDK backend");

Functions

gdk_display_manager_get ()

GdkDisplayManager *
gdk_display_manager_get (void);

Gets the singleton GdkDisplayManager object.

When called for the first time, this function consults the GDK_BACKEND environment variable to find out which of the supported GDK backends to use (in case GDK has been compiled with multiple backends). Applications can use gdk_set_allowed_backends() to limit what backends can be used.

Returns

The global GdkDisplayManager singleton.

[transfer none]


gdk_display_manager_get_default_display ()

GdkDisplay *
gdk_display_manager_get_default_display
                               (GdkDisplayManager *manager);

Gets the default GdkDisplay.

Parameters

manager

a GdkDisplayManager

 

Returns

a GdkDisplay, or NULL if there is no default display.

[nullable][transfer none]


gdk_display_manager_set_default_display ()

void
gdk_display_manager_set_default_display
                               (GdkDisplayManager *manager,
                                GdkDisplay *display);

Sets display as the default display.

Parameters

manager

a GdkDisplayManager

 

display

a GdkDisplay

 

gdk_display_manager_list_displays ()

GSList *
gdk_display_manager_list_displays (GdkDisplayManager *manager);

List all currently open displays.

Parameters

manager

a GdkDisplayManager

 

Returns

a newly allocated GSList of GdkDisplay objects. Free with g_slist_free() when you are done with it.

[transfer container][element-type GdkDisplay]


gdk_display_manager_open_display ()

GdkDisplay *
gdk_display_manager_open_display (GdkDisplayManager *manager,
                                  const char *name);

Opens a display.

Parameters

manager

a GdkDisplayManager

 

name

the name of the display to open

 

Returns

a GdkDisplay, or NULL if the display could not be opened.

[nullable][transfer none]


gdk_set_allowed_backends ()

void
gdk_set_allowed_backends (const char *backends);

Sets a list of backends that GDK should try to use.

This can be useful if your application does not work with certain GDK backends.

By default, GDK tries all included backends.

For example,

1
gdk_set_allowed_backends ("wayland,quartz,*");

instructs GDK to try the Wayland backend first, followed by the Quartz backend, and then all others.

If the GDK_BACKEND environment variable is set, it determines what backends are tried in what order, while still respecting the set of allowed backends that are specified by this function.

The possible backend names are x11, win32, quartz, broadway, wayland. You can also include a * in the list to try all remaining backends.

This call must happen prior to gdk_display_open(), gtk_init(), or gtk_init_check() in order to take effect.

Parameters

backends

a comma-separated list of backends

 

Types and Values

GdkDisplayManager

typedef struct _GdkDisplayManager GdkDisplayManager;

The GdkDisplayManager struct contains only private fields and should not be accessed directly.

Property Details

The “default-display” property

  “default-display”          GdkDisplay *

The default display for GDK.

Owner: GdkDisplayManager

Flags: Read / Write

Signal Details

The “display-opened” signal

void
user_function (GdkDisplayManager *manager,
               GdkDisplay        *display,
               gpointer           user_data)

The ::display-opened signal is emitted when a display is opened.

Parameters

manager

the object on which the signal is emitted

 

display

the opened display

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/GdkDrawContext.html0000664000175000017500000005006614010071761021067 0ustar mclasenmclasen GdkDrawContext: GDK 4 Reference Manual

GdkDrawContext

GdkDrawContext — Base class for draw contexts

Types and Values

Object Hierarchy

    GObject
    ╰── GdkDrawContext
        ├── GdkGLContext
        ╰── GdkVulkanContext

Includes

#include <gdk/gdk.h>

Description

GdkDrawContext is the base object used by contexts implementing different rendering methods, such as GdkGLContext or GdkVulkanContext. It provides shared functionality between those contexts.

You will always interact with one of those subclasses.

A GdkDrawContext is always associated with a single toplevel surface.

Functions

gdk_draw_context_get_display ()

GdkDisplay *
gdk_draw_context_get_display (GdkDrawContext *context);

Retrieves the GdkDisplay the context is created for

Parameters

context

a GdkDrawContext

 

Returns

a GdkDisplay or NULL.

[nullable][transfer none]


gdk_draw_context_get_surface ()

GdkSurface *
gdk_draw_context_get_surface (GdkDrawContext *context);

Retrieves the GdkSurface used by the context .

Parameters

context

a GdkDrawContext

 

Returns

a GdkSurface or NULL.

[nullable][transfer none]


gdk_draw_context_begin_frame ()

void
gdk_draw_context_begin_frame (GdkDrawContext *context,
                              const cairo_region_t *region);

Indicates that you are beginning the process of redrawing region on the context 's surface.

Calling this function begins a drawing operation using context on the surface that context was created from. The actual requirements and guarantees for the drawing operation vary for different implementations of drawing, so a GdkCairoContext and a GdkGLContext need to be treated differently.

A call to this function is a requirement for drawing and must be followed by a call to gdk_draw_context_end_frame(), which will complete the drawing operation and ensure the contents become visible on screen.

Note that the region passed to this function is the minimum region that needs to be drawn and depending on implementation, windowing system and hardware in use, it might be necessary to draw a larger region. Drawing implementation must use gdk_draw_context_get_frame_region() to query the region that must be drawn.

When using GTK, the widget system automatically places calls to gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() via the use of GskRenderers, so application code does not need to call these functions explicitly.

Parameters

context

the context used to draw the frame

 

region

minimum region that should be drawn

 

gdk_draw_context_end_frame ()

void
gdk_draw_context_end_frame (GdkDrawContext *context);

Ends a drawing operation started with gdk_draw_context_begin_frame() and makes the drawing available on screen. See that function for more details about drawing.

When using a GdkGLContext, this function may call glFlush() implicitly before returning; it is not recommended to call glFlush() explicitly before calling this function.

Parameters

context

a GdkDrawContext

 

gdk_draw_context_is_in_frame ()

gboolean
gdk_draw_context_is_in_frame (GdkDrawContext *context);

Returns TRUE if context is in the process of drawing to its surface after a call to gdk_draw_context_begin_frame() and not yet having called gdk_draw_context_end_frame(). In this situation, drawing commands may be effecting the contents of a context 's surface.

Parameters

context

a GdkDrawContext

 

Returns

TRUE if the context is between gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() calls.


gdk_draw_context_get_frame_region ()

const cairo_region_t *
gdk_draw_context_get_frame_region (GdkDrawContext *context);

Retrieves the region that is currently in the process of being repainted.

After a call to gdk_draw_context_begin_frame() this function will return a union of the region passed to that function and the area of the surface that the context determined needs to be repainted.

If context is not in between calls to gdk_draw_context_begin_frame() and gdk_draw_context_end_frame(), NULL will be returned.

Parameters

context

a GdkDrawContext

 

Returns

a Cairo region or NULL if not drawing a frame.

[transfer none][nullable]

Types and Values

GdkDrawContext

typedef struct _GdkDrawContext GdkDrawContext;

The GdkDrawContext struct contains only private fields and should not be accessed directly.

docs/reference/gdk/html/GdkFrameClock.html0000664000175000017500000013154614010071761020636 0ustar mclasenmclasen GdkFrameClock: GDK 4 Reference Manual

GdkFrameClock

GdkFrameClock — Synchronizes painting to a surface

Signals

void after-paint Run Last
void before-paint Run Last
void flush-events Run Last
void layout Run Last
void paint Run Last
void resume-events Run Last
void update Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── GdkFrameClock

Includes

#include <gdk/gdk.h>

Description

A GdkFrameClock tells the application when to update and repaint a surface. This may be synced to the vertical refresh rate of the monitor, for example. Even when the frame clock uses a simple timer rather than a hardware-based vertical sync, the frame clock helps because it ensures everything paints at the same time (reducing the total number of frames). The frame clock can also automatically stop painting when it knows the frames will not be visible, or scale back animation framerates.

GdkFrameClock is designed to be compatible with an OpenGL-based implementation or with mozRequestAnimationFrame in Firefox, for example.

A frame clock is idle until someone requests a frame with gdk_frame_clock_request_phase(). At some later point that makes sense for the synchronization being implemented, the clock will process a frame and emit signals for each phase that has been requested. (See the signals of the GdkFrameClock class for documentation of the phases. GDK_FRAME_CLOCK_PHASE_UPDATE and the “update” signal are most interesting for application writers, and are used to update the animations, using the frame time given by gdk_frame_clock_get_frame_time().

The frame time is reported in microseconds and generally in the same timescale as g_get_monotonic_time(), however, it is not the same as g_get_monotonic_time(). The frame time does not advance during the time a frame is being painted, and outside of a frame, an attempt is made so that all calls to gdk_frame_clock_get_frame_time() that are called at a “similar” time get the same value. This means that if different animations are timed by looking at the difference in time between an initial value from gdk_frame_clock_get_frame_time() and the value inside the “update” signal of the clock, they will stay exactly synchronized.

Functions

gdk_frame_clock_get_frame_time ()

gint64
gdk_frame_clock_get_frame_time (GdkFrameClock *frame_clock);

Gets the time that should currently be used for animations. Inside the processing of a frame, it’s the time used to compute the animation position of everything in a frame. Outside of a frame, it's the time of the conceptual “previous frame,” which may be either the actual previous frame time, or if that’s too old, an updated time.

Parameters

frame_clock

a GdkFrameClock

 

Returns

a timestamp in microseconds, in the timescale of of g_get_monotonic_time().


gdk_frame_clock_request_phase ()

void
gdk_frame_clock_request_phase (GdkFrameClock *frame_clock,
                               GdkFrameClockPhase phase);

Asks the frame clock to run a particular phase. The signal corresponding the requested phase will be emitted the next time the frame clock processes. Multiple calls to gdk_frame_clock_request_phase() will be combined together and only one frame processed. If you are displaying animated content and want to continually request the GDK_FRAME_CLOCK_PHASE_UPDATE phase for a period of time, you should use gdk_frame_clock_begin_updating() instead, since this allows GTK to adjust system parameters to get maximally smooth animations.

Parameters

frame_clock

a GdkFrameClock

 

phase

the phase that is requested

 

gdk_frame_clock_begin_updating ()

void
gdk_frame_clock_begin_updating (GdkFrameClock *frame_clock);

Starts updates for an animation. Until a matching call to gdk_frame_clock_end_updating() is made, the frame clock will continually request a new frame with the GDK_FRAME_CLOCK_PHASE_UPDATE phase. This function may be called multiple times and frames will be requested until gdk_frame_clock_end_updating() is called the same number of times.

Parameters

frame_clock

a GdkFrameClock

 

gdk_frame_clock_end_updating ()

void
gdk_frame_clock_end_updating (GdkFrameClock *frame_clock);

Stops updates for an animation. See the documentation for gdk_frame_clock_begin_updating().

Parameters

frame_clock

a GdkFrameClock

 

gdk_frame_clock_get_frame_counter ()

gint64
gdk_frame_clock_get_frame_counter (GdkFrameClock *frame_clock);

A GdkFrameClock maintains a 64-bit counter that increments for each frame drawn.

Parameters

frame_clock

a GdkFrameClock

 

Returns

inside frame processing, the value of the frame counter for the current frame. Outside of frame processing, the frame counter for the last frame.


gdk_frame_clock_get_history_start ()

gint64
gdk_frame_clock_get_history_start (GdkFrameClock *frame_clock);

GdkFrameClock internally keeps a history of GdkFrameTimings objects for recent frames that can be retrieved with gdk_frame_clock_get_timings(). The set of stored frames is the set from the counter values given by gdk_frame_clock_get_history_start() and gdk_frame_clock_get_frame_counter(), inclusive.

Parameters

frame_clock

a GdkFrameClock

 

Returns

the frame counter value for the oldest frame that is available in the internal frame history of the GdkFrameClock.


gdk_frame_clock_get_timings ()

GdkFrameTimings *
gdk_frame_clock_get_timings (GdkFrameClock *frame_clock,
                             gint64 frame_counter);

Retrieves a GdkFrameTimings object holding timing information for the current frame or a recent frame. The GdkFrameTimings object may not yet be complete: see gdk_frame_timings_get_complete().

Parameters

frame_clock

a GdkFrameClock

 

frame_counter

the frame counter value identifying the frame to be received.

 

Returns

the GdkFrameTimings object for the specified frame, or NULL if it is not available. See gdk_frame_clock_get_history_start().

[nullable][transfer none]


gdk_frame_clock_get_current_timings ()

GdkFrameTimings *
gdk_frame_clock_get_current_timings (GdkFrameClock *frame_clock);

Gets the frame timings for the current frame.

Parameters

frame_clock

a GdkFrameClock

 

Returns

the GdkFrameTimings for the frame currently being processed, or even no frame is being processed, for the previous frame. Before any frames have been processed, returns NULL.

[nullable][transfer none]


gdk_frame_clock_get_refresh_info ()

void
gdk_frame_clock_get_refresh_info (GdkFrameClock *frame_clock,
                                  gint64 base_time,
                                  gint64 *refresh_interval_return,
                                  gint64 *presentation_time_return);

Using the frame history stored in the frame clock, finds the last known presentation time and refresh interval, and assuming that presentation times are separated by the refresh interval, predicts a presentation time that is a multiple of the refresh interval after the last presentation time, and later than base_time .

Parameters

frame_clock

a GdkFrameClock

 

base_time

base time for determining a presentaton time

 

refresh_interval_return

a location to store the determined refresh interval, or NULL. A default refresh interval of 1/60th of a second will be stored if no history is present.

[out][optional]

presentation_time_return

a location to store the next candidate presentation time after the given base time. 0 will be will be stored if no history is present.

[out]

gdk_frame_clock_get_fps ()

double
gdk_frame_clock_get_fps (GdkFrameClock *frame_clock);

Calculates the current frames-per-second, based on the frame timings of frame_clock .

Parameters

frame_clock

a GdkFrameClock

 

Returns

the current fps, as a double

Types and Values

GdkFrameClock

typedef struct _GdkFrameClock GdkFrameClock;

The GdkFrameClock struct contains only private fields and should not be accessed directly.


enum GdkFrameClockPhase

GdkFrameClockPhase is used to represent the different paint clock phases that can be requested. The elements of the enumeration correspond to the signals of GdkFrameClock.

Members

GDK_FRAME_CLOCK_PHASE_NONE

no phase

 

GDK_FRAME_CLOCK_PHASE_FLUSH_EVENTS

corresponds to GdkFrameClock::flush-events. Should not be handled by applications.

 

GDK_FRAME_CLOCK_PHASE_BEFORE_PAINT

corresponds to GdkFrameClock::before-paint. Should not be handled by applications.

 

GDK_FRAME_CLOCK_PHASE_UPDATE

corresponds to GdkFrameClock::update.

 

GDK_FRAME_CLOCK_PHASE_LAYOUT

corresponds to GdkFrameClock::layout. Should not be handled by applicatiosn.

 

GDK_FRAME_CLOCK_PHASE_PAINT

corresponds to GdkFrameClock::paint.

 

GDK_FRAME_CLOCK_PHASE_RESUME_EVENTS

corresponds to GdkFrameClock::resume-events. Should not be handled by applications.

 

GDK_FRAME_CLOCK_PHASE_AFTER_PAINT

corresponds to GdkFrameClock::after-paint. Should not be handled by applications.

 

Signal Details

The “after-paint” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal ends processing of the frame. Applications should generally not handle this signal.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “before-paint” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal begins processing of the frame. Applications should generally not handle this signal.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “flush-events” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal is used to flush pending motion events that are being batched up and compressed together. Applications should not handle this signal.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “layout” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal is emitted as the second step of toolkit and application processing of the frame. Any work to update sizes and positions of application elements should be performed. GTK normally handles this internally.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “paint” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal is emitted as the third step of toolkit and application processing of the frame. The frame is repainted. GDK normally handles this internally and emits “render” which are turned into “snapshot” signals by GTK.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “resume-events” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal is emitted after processing of the frame is finished, and is handled internally by GTK to resume normal event processing. Applications should not handle this signal.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “update” signal

void
user_function (GdkFrameClock *clock,
               gpointer       user_data)

This signal is emitted as the first step of toolkit and application processing of the frame. Animations should be updated using gdk_frame_clock_get_frame_time(). Applications can connect directly to this signal, or use gtk_widget_add_tick_callback() as a more convenient interface.

Parameters

clock

the frame clock emitting the signal

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

docs/reference/gdk/html/GdkMonitor.html0000664000175000017500000010657414010071761020262 0ustar mclasenmclasen GdkMonitor: GDK 4 Reference Manual

GdkMonitor

GdkMonitor — Object representing an output

Properties

char * connector Read
GdkDisplay * display Read / Write / Construct Only
GdkRectangle * geometry Read
int height-mm Read
char * manufacturer Read
char * model Read
int refresh-rate Read
int scale-factor Read
GdkSubpixelLayout subpixel-layout Read
gboolean valid Read
int width-mm Read

Signals

void invalidate Run First

Types and Values

Object Hierarchy

    GObject
    ╰── GdkMonitor

Includes

#include <gdk/gdk.h>

Description

GdkMonitor objects represent the individual outputs that are associated with a GdkDisplay. GdkDisplay keeps a GListModel to enumerate and monitor monitors with gdk_display_get_monitors(). You can use gdk_display_get_monitor_at_surface() to find a particular monitor.

Functions

gdk_monitor_get_display ()

GdkDisplay *
gdk_monitor_get_display (GdkMonitor *monitor);

Gets the display that this monitor belongs to.

Parameters

monitor

a GdkMonitor

 

Returns

the display.

[transfer none]


gdk_monitor_get_geometry ()

void
gdk_monitor_get_geometry (GdkMonitor *monitor,
                          GdkRectangle *geometry);

Retrieves the size and position of an individual monitor within the display coordinate space. The returned geometry is in ”application pixels”, not in ”device pixels” (see gdk_monitor_get_scale_factor()).

Parameters

monitor

a GdkMonitor

 

geometry

a GdkRectangle to be filled with the monitor geometry.

[out]

gdk_monitor_get_width_mm ()

int
gdk_monitor_get_width_mm (GdkMonitor *monitor);

Gets the width in millimeters of the monitor.

Parameters

monitor

a GdkMonitor

 

Returns

the physical width of the monitor


gdk_monitor_get_height_mm ()

int
gdk_monitor_get_height_mm (GdkMonitor *monitor);

Gets the height in millimeters of the monitor.

Parameters

monitor

a GdkMonitor

 

Returns

the physical height of the monitor


gdk_monitor_get_manufacturer ()

const char *
gdk_monitor_get_manufacturer (GdkMonitor *monitor);

Gets the name or PNP ID of the monitor's manufacturer, if available.

Note that this value might also vary depending on actual display backend.

PNP ID registry is located at https://uefi.org/pnp_id_list

Parameters

monitor

a GdkMonitor

 

Returns

the name of the manufacturer, or NULL.

[transfer none][nullable]


gdk_monitor_get_model ()

const char *
gdk_monitor_get_model (GdkMonitor *monitor);

Gets the string identifying the monitor model, if available.

Parameters

monitor

a GdkMonitor

 

Returns

the monitor model, or NULL.

[transfer none][nullable]


gdk_monitor_get_connector ()

const char *
gdk_monitor_get_connector (GdkMonitor *monitor);

Gets the name of the monitor's connector, if available.

Parameters

monitor

a GdkMonitor

 

Returns

the name of the connector.

[transfer none][nullable]


gdk_monitor_get_scale_factor ()

int
gdk_monitor_get_scale_factor (GdkMonitor *monitor);

Gets the internal scale factor that maps from monitor coordinates to the actual device pixels. On traditional systems this is 1, but on very high density outputs this can be a higher value (often 2).

This can be used if you want to create pixel based data for a particular monitor, but most of the time you’re drawing to a surface where it is better to use gdk_surface_get_scale_factor() instead.

Parameters

monitor

a GdkMonitor

 

Returns

the scale factor


gdk_monitor_get_refresh_rate ()

int
gdk_monitor_get_refresh_rate (GdkMonitor *monitor);

Gets the refresh rate of the monitor, if available.

The value is in milli-Hertz, so a refresh rate of 60Hz is returned as 60000.

Parameters

monitor

a GdkMonitor

 

Returns

the refresh rate in milli-Hertz, or 0


gdk_monitor_get_subpixel_layout ()

GdkSubpixelLayout
gdk_monitor_get_subpixel_layout (GdkMonitor *monitor);

Gets information about the layout of red, green and blue primaries for each pixel in this monitor, if available.

Parameters

monitor

a GdkMonitor

 

Returns

the subpixel layout


gdk_monitor_is_valid ()

gboolean
gdk_monitor_is_valid (GdkMonitor *monitor);

Returns TRUE if the monitor object corresponds to a physical monitor. The monitor becomes invalid when the physical monitor is unplugged or removed.

Parameters

monitor

a GdkMonitor

 

Returns

TRUE if the object corresponds to a physical monitor

Types and Values

GdkMonitor

typedef struct _GdkMonitor GdkMonitor;

The GdkMonitor struct contains only private fields and should not be accessed directly.


enum GdkSubpixelLayout

This enumeration describes how the red, green and blue components of physical pixels on an output device are laid out.

Members

GDK_SUBPIXEL_LAYOUT_UNKNOWN

The layout is not known

 

GDK_SUBPIXEL_LAYOUT_NONE

Not organized in this way

 

GDK_SUBPIXEL_LAYOUT_HORIZONTAL_RGB

The layout is horizontal, the order is RGB

 

GDK_SUBPIXEL_LAYOUT_HORIZONTAL_BGR

The layout is horizontal, the order is BGR

 

GDK_SUBPIXEL_LAYOUT_VERTICAL_RGB

The layout is vertical, the order is RGB

 

GDK_SUBPIXEL_LAYOUT_VERTICAL_BGR

The layout is vertical, the order is BGR

 

Property Details

The “connector” property

  “connector”                char *

The connector name.

Owner: GdkMonitor

Flags: Read

Default value: NULL


The “display” property

  “display”                  GdkDisplay *

The display of the monitor.

Owner: GdkMonitor

Flags: Read / Write / Construct Only


The “geometry” property

  “geometry”                 GdkRectangle *

The geometry of the monitor.

Owner: GdkMonitor

Flags: Read


The “height-mm” property

  “height-mm”                int

The height of the monitor, in millimeters.

Owner: GdkMonitor

Flags: Read

Allowed values: >= 0

Default value: 0


The “manufacturer” property

  “manufacturer”             char *

The manufacturer name.

Owner: GdkMonitor

Flags: Read

Default value: NULL


The “model” property

  “model”                    char *

The model name.

Owner: GdkMonitor

Flags: Read

Default value: NULL


The “refresh-rate” property

  “refresh-rate”             int

The refresh rate, in millihertz.

Owner: GdkMonitor

Flags: Read

Allowed values: >= 0

Default value: 0


The “scale-factor” property

  “scale-factor”             int

The scale factor.

Owner: GdkMonitor

Flags: Read

Allowed values: >= 0

Default value: 1


The “subpixel-layout” property

  “subpixel-layout”          GdkSubpixelLayout

The subpixel layout.

Owner: GdkMonitor

Flags: Read

Default value: GDK_SUBPIXEL_LAYOUT_UNKNOWN


The “valid” property

  “valid”                    gboolean

Whether the monitor is still valid.

Owner: GdkMonitor

Flags: Read

Default value: TRUE


The “width-mm” property

  “width-mm”                 int

The width of the monitor, in millimeters.

Owner: GdkMonitor

Flags: Read

Allowed values: >= 0

Default value: 0

Signal Details

The “invalidate” signal

void
user_function (GdkMonitor *monitor,
               gpointer    user_data)

The ::invalidate signal gets emitted when the output represented by monitor gets disconnected.

Parameters

monitor

the object on which this signal was emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First

docs/reference/gdk/html/GdkPopup.html0000664000175000017500000005153014010071761017725 0ustar mclasenmclasen Popups: GDK 4 Reference Manual

Popups

Popups — Interface for popup surfaces

Properties

gboolean autohide Read / Write / Construct Only
GdkSurface * parent Read / Write / Construct Only

Types and Values

Object Hierarchy

    GInterface
    ╰── GdkPopup

Prerequisites

GdkPopup requires GdkSurface.

Includes

#include <gdk/gdk.h>

Description

A GdkPopup is a surface that is attached to another surface, called its “parent”, and is positioned relative to it.

GdkPopups are typically used to implement menus and similar popups. They can be modal, which is indicated by the “autohide” property.

Functions

gdk_popup_present ()

gboolean
gdk_popup_present (GdkPopup *popup,
                   int width,
                   int height,
                   GdkPopupLayout *layout);

Present popup after having processed the GdkPopupLayout rules. If the popup was previously now showing, it will be showed, otherwise it will change position according to layout .

After calling this function, the result should be handled in response to the “layout” signal being emitted. The resulting popup position can be queried using gdk_popup_get_position_x(), gdk_popup_get_position_y(), and the resulting size will be sent as parameters in the layout signal. Use gdk_popup_get_rect_anchor() and gdk_popup_get_surface_anchor() to get the resulting anchors.

Presenting may fail, for example if the popup is set to autohide and is immediately hidden upon being presented. If presenting failed, the “layout” signal will not me emitted.

Parameters

popup

the GdkPopup to show

 

width

the unconstrained popup width to layout

 

height

the unconstrained popup height to layout

 

layout

the GdkPopupLayout object used to layout

 

Returns

FALSE if it failed to be presented, otherwise TRUE.


gdk_popup_get_surface_anchor ()

GdkGravity
gdk_popup_get_surface_anchor (GdkPopup *popup);

Gets the current popup surface anchor.

The value returned may change after calling gdk_popup_present(), or after the “layout” signal is emitted.

Parameters

popup

a GdkPopup

 

Returns

the current surface anchor value of popup


gdk_popup_get_rect_anchor ()

GdkGravity
gdk_popup_get_rect_anchor (GdkPopup *popup);

Gets the current popup rectangle anchor.

The value returned may change after calling gdk_popup_present(), or after the “layout” signal is emitted.

Parameters

popup

a GdkPopup

 

Returns

the current rectangle anchor value of popup


gdk_popup_get_parent ()

GdkSurface *
gdk_popup_get_parent (GdkPopup *popup);

Returns the parent surface of a popup.

Parameters

popup

a GdkPopup

 

Returns

the parent surface.

[transfer none]


gdk_popup_get_position_x ()

int
gdk_popup_get_position_x (GdkPopup *popup);

Obtains the position of the popup relative to its parent.

Parameters

popup

a GdkPopup

 

Returns

the X coordinate of popup position


gdk_popup_get_position_y ()

int
gdk_popup_get_position_y (GdkPopup *popup);

Obtains the position of the popup relative to its parent.

Parameters

popup

a GdkPopup

 

Returns

the Y coordinate of popup position


gdk_popup_get_autohide ()

gboolean
gdk_popup_get_autohide (GdkPopup *popup);

Returns whether this popup is set to hide on outside clicks.

Parameters

popup

a GdkPopup

 

Returns

TRUE if popup will autohide

Types and Values

GdkPopup

typedef struct _GdkPopup GdkPopup;

Interface for popup surfaces.

Property Details

The “autohide” property

  “autohide”                 gboolean

Whether to hide on outside clicks.

Owner: GdkPopup

Flags: Read / Write / Construct Only

Default value: FALSE


The “parent” property

  “parent”                   GdkSurface *

The parent surface.

Owner: GdkPopup

Flags: Read / Write / Construct Only

docs/reference/gdk/html/ch01s05.html0000664000175000017500000000275214010071761017261 0ustar mclasenmclasen : GDK 4 Reference Manual
docs/reference/gdk/gdk4-decl-list.txt0000664000175000017500000006746214010071745017627 0ustar mclasenmclasen
gdk
gdkapplaunchcontext gdk_app_launch_context_get_display gdk_app_launch_context_set_desktop gdk_app_launch_context_set_timestamp gdk_app_launch_context_set_icon gdk_app_launch_context_set_icon_name GDK_APP_LAUNCH_CONTEXT GDK_IS_APP_LAUNCH_CONTEXT GDK_TYPE_APP_LAUNCH_CONTEXT gdk_app_launch_context_get_type
gdkcairo gdk_cairo_set_source_rgba gdk_cairo_set_source_pixbuf gdk_cairo_rectangle gdk_cairo_region gdk_cairo_region_create_from_surface gdk_cairo_draw_from_gl
gdkcairocontext GDK_CAIRO_ERROR gdk_cairo_context_cairo_create GDK_CAIRO_CONTEXT GDK_IS_CAIRO_CONTEXT GDK_TYPE_CAIRO_CONTEXT gdk_cairo_context_get_type
gdkclipboard gdk_clipboard_get_display gdk_clipboard_get_formats gdk_clipboard_is_local gdk_clipboard_get_content gdk_clipboard_store_async gdk_clipboard_store_finish gdk_clipboard_read_async gdk_clipboard_read_finish gdk_clipboard_read_value_async gdk_clipboard_read_value_finish gdk_clipboard_read_texture_async gdk_clipboard_read_texture_finish gdk_clipboard_read_text_async gdk_clipboard_read_text_finish gdk_clipboard_set_content gdk_clipboard_set gdk_clipboard_set_valist gdk_clipboard_set_value gdk_clipboard_set_text gdk_clipboard_set_texture GDK_CLIPBOARD GDK_IS_CLIPBOARD GDK_TYPE_CLIPBOARD gdk_clipboard_get_type
gdkconfig GDK_WINDOWING_X11 GDK_WINDOWING_WAYLAND GDK_RENDERING_VULKAN
gdkcontentdeserializer GdkContentDeserializeFunc gdk_content_deserializer_get_mime_type gdk_content_deserializer_get_gtype gdk_content_deserializer_get_value gdk_content_deserializer_get_input_stream gdk_content_deserializer_get_priority gdk_content_deserializer_get_cancellable gdk_content_deserializer_get_user_data gdk_content_deserializer_set_task_data gdk_content_deserializer_get_task_data gdk_content_deserializer_return_success gdk_content_deserializer_return_error gdk_content_formats_union_deserialize_gtypes gdk_content_formats_union_deserialize_mime_types gdk_content_register_deserializer gdk_content_deserialize_async gdk_content_deserialize_finish GdkContentDeserializer GDK_CONTENT_DESERIALIZER GDK_IS_CONTENT_DESERIALIZER GDK_TYPE_CONTENT_DESERIALIZER gdk_content_deserializer_get_type
gdkcontentformats gdk_intern_mime_type gdk_content_formats_new gdk_content_formats_new_for_gtype gdk_content_formats_ref gdk_content_formats_unref gdk_content_formats_print gdk_content_formats_to_string gdk_content_formats_get_gtypes gdk_content_formats_get_mime_types gdk_content_formats_union gdk_content_formats_match gdk_content_formats_match_gtype gdk_content_formats_match_mime_type gdk_content_formats_contain_gtype gdk_content_formats_contain_mime_type gdk_content_formats_builder_new gdk_content_formats_builder_ref gdk_content_formats_builder_unref gdk_content_formats_builder_free_to_formats gdk_content_formats_builder_to_formats gdk_content_formats_builder_add_formats gdk_content_formats_builder_add_mime_type gdk_content_formats_builder_add_gtype GDK_TYPE_CONTENT_FORMATS GDK_TYPE_CONTENT_FORMATS_BUILDER GDK_TYPE_FILE_LIST GdkContentFormatsBuilder gdk_content_formats_builder_get_type gdk_content_formats_get_type gdk_file_list_get_type
gdkcontentprovider GdkContentProvider GdkContentProvider GdkContentProviderClass gdk_content_provider_ref_formats gdk_content_provider_ref_storable_formats gdk_content_provider_content_changed gdk_content_provider_write_mime_type_async gdk_content_provider_write_mime_type_finish gdk_content_provider_get_value GDK_CONTENT_PROVIDER GDK_CONTENT_PROVIDER_CLASS GDK_CONTENT_PROVIDER_GET_CLASS GDK_IS_CONTENT_PROVIDER GDK_IS_CONTENT_PROVIDER_CLASS GDK_TYPE_CONTENT_PROVIDER gdk_content_provider_get_type
gdkcontentproviderimpl gdk_content_provider_new_for_value gdk_content_provider_new_typed gdk_content_provider_new_union gdk_content_provider_new_for_bytes
gdkcontentserializer GdkContentSerializeFunc gdk_content_serializer_get_mime_type gdk_content_serializer_get_gtype gdk_content_serializer_get_value gdk_content_serializer_get_output_stream gdk_content_serializer_get_priority gdk_content_serializer_get_cancellable gdk_content_serializer_get_user_data gdk_content_serializer_set_task_data gdk_content_serializer_get_task_data gdk_content_serializer_return_success gdk_content_serializer_return_error gdk_content_formats_union_serialize_gtypes gdk_content_formats_union_serialize_mime_types gdk_content_register_serializer gdk_content_serialize_async gdk_content_serialize_finish GdkContentSerializer GDK_CONTENT_SERIALIZER GDK_IS_CONTENT_SERIALIZER GDK_TYPE_CONTENT_SERIALIZER gdk_content_serializer_get_type
gdkcursor gdk_cursor_new_from_texture gdk_cursor_new_from_name gdk_cursor_get_fallback gdk_cursor_get_name gdk_cursor_get_texture gdk_cursor_get_hotspot_x gdk_cursor_get_hotspot_y GDK_CURSOR GDK_IS_CURSOR GDK_TYPE_CURSOR gdk_cursor_get_type
gdkdevice GdkInputSource GdkTimeCoord gdk_device_get_name gdk_device_get_vendor_id gdk_device_get_product_id gdk_device_get_display gdk_device_get_seat gdk_device_get_device_tool gdk_device_get_source gdk_device_get_has_cursor gdk_device_get_num_touches gdk_device_get_modifier_state gdk_device_get_direction gdk_device_has_bidi_layouts gdk_device_get_caps_lock_state gdk_device_get_num_lock_state gdk_device_get_scroll_lock_state gdk_device_get_surface_at_position GDK_DEVICE GDK_IS_DEVICE GDK_TYPE_DEVICE gdk_device_get_type
gdkdevicepad GdkDevicePad GdkDevicePadFeature gdk_device_pad_get_n_groups gdk_device_pad_get_group_n_modes gdk_device_pad_get_n_features gdk_device_pad_get_feature_group GDK_DEVICE_PAD GDK_IS_DEVICE_PAD GDK_TYPE_DEVICE_PAD GdkDevicePad GdkDevicePadInterface gdk_device_pad_get_type
gdkdevicetool GdkDeviceToolType gdk_device_tool_get_serial gdk_device_tool_get_hardware_id gdk_device_tool_get_tool_type gdk_device_tool_get_axes GdkDeviceTool GDK_DEVICE_TOOL GDK_IS_DEVICE_TOOL GDK_TYPE_DEVICE_TOOL gdk_device_tool_get_type
gdkdisplay gdk_display_open gdk_display_get_name gdk_display_device_is_grabbed gdk_display_beep gdk_display_sync gdk_display_flush gdk_display_close gdk_display_is_closed gdk_display_is_composited gdk_display_is_rgba gdk_display_supports_input_shapes gdk_display_get_default gdk_display_get_clipboard gdk_display_get_primary_clipboard gdk_display_notify_startup_complete gdk_display_get_startup_notification_id gdk_display_get_app_launch_context gdk_display_get_default_seat gdk_display_list_seats gdk_display_get_monitors gdk_display_get_monitor_at_surface gdk_display_put_event gdk_display_map_keyval gdk_display_map_keycode gdk_display_translate_key gdk_display_get_setting GDK_DISPLAY GDK_IS_DISPLAY GDK_TYPE_DISPLAY gdk_display_get_type
gdkdisplaymanager gdk_display_manager_get gdk_display_manager_get_default_display gdk_display_manager_set_default_display gdk_display_manager_list_displays gdk_display_manager_open_display gdk_set_allowed_backends GDK_DISPLAY_MANAGER GDK_IS_DISPLAY_MANAGER GDK_TYPE_DISPLAY_MANAGER gdk_display_manager_get_type
gdkdrag GdkDragCancelReason gdk_drag_get_display gdk_drag_get_device gdk_drag_get_formats gdk_drag_get_actions gdk_drag_get_selected_action gdk_drag_action_is_unique gdk_drag_begin gdk_drag_drop_done gdk_drag_get_drag_surface gdk_drag_set_hotspot gdk_drag_get_content gdk_drag_get_surface GDK_DRAG GDK_IS_DRAG GDK_TYPE_DRAG gdk_drag_get_type
gdkdragsurface GDK_TYPE_DRAG_SURFACE gdk_drag_surface_present GdkDragSurface GdkDragSurfaceInterface
gdkdrawcontext gdk_draw_context_get_display gdk_draw_context_get_surface gdk_draw_context_begin_frame gdk_draw_context_end_frame gdk_draw_context_is_in_frame gdk_draw_context_get_frame_region GDK_DRAW_CONTEXT GDK_IS_DRAW_CONTEXT GDK_TYPE_DRAW_CONTEXT gdk_draw_context_get_type
gdkdrop gdk_drop_get_display gdk_drop_get_device gdk_drop_get_surface gdk_drop_get_formats gdk_drop_get_actions gdk_drop_get_drag gdk_drop_status gdk_drop_finish gdk_drop_read_async gdk_drop_read_finish gdk_drop_read_value_async gdk_drop_read_value_finish GDK_DROP GDK_IS_DROP GDK_TYPE_DROP gdk_drop_get_type
gdkenumtypes GDK_TYPE_INPUT_SOURCE GDK_TYPE_DEVICE_PAD_FEATURE GDK_TYPE_DEVICE_TOOL_TYPE GDK_TYPE_DRAG_CANCEL_REASON GDK_TYPE_EVENT_TYPE GDK_TYPE_TOUCHPAD_GESTURE_PHASE GDK_TYPE_SCROLL_DIRECTION GDK_TYPE_NOTIFY_TYPE GDK_TYPE_CROSSING_MODE GDK_TYPE_KEY_MATCH GDK_TYPE_FRAME_CLOCK_PHASE GDK_TYPE_MEMORY_FORMAT GDK_TYPE_SUBPIXEL_LAYOUT GDK_TYPE_PAINTABLE_FLAGS GDK_TYPE_ANCHOR_HINTS GDK_TYPE_SEAT_CAPABILITIES GDK_TYPE_SURFACE_EDGE GDK_TYPE_FULLSCREEN_MODE GDK_TYPE_TOPLEVEL_STATE GDK_TYPE_GRAVITY GDK_TYPE_MODIFIER_TYPE GDK_TYPE_GL_ERROR GDK_TYPE_VULKAN_ERROR GDK_TYPE_AXIS_USE GDK_TYPE_AXIS_FLAGS GDK_TYPE_DRAG_ACTION
gdkevents GDK_PRIORITY_EVENTS GDK_PRIORITY_REDRAW GDK_EVENT_PROPAGATE GDK_EVENT_STOP GDK_BUTTON_PRIMARY GDK_BUTTON_MIDDLE GDK_BUTTON_SECONDARY GdkEventType GdkTouchpadGesturePhase GdkScrollDirection GdkNotifyType GdkCrossingMode gdk_event_ref gdk_event_unref gdk_event_get_event_type gdk_event_get_surface gdk_event_get_seat gdk_event_get_device gdk_event_get_device_tool gdk_event_get_time gdk_event_get_display gdk_event_get_event_sequence gdk_event_get_modifier_state gdk_event_get_position gdk_event_get_axes gdk_event_get_axis gdk_event_get_history gdk_event_get_pointer_emulated gdk_button_event_get_button gdk_scroll_event_get_direction gdk_scroll_event_get_deltas gdk_scroll_event_is_stop gdk_key_event_get_keyval gdk_key_event_get_keycode gdk_key_event_get_consumed_modifiers gdk_key_event_get_layout gdk_key_event_get_level gdk_key_event_is_modifier gdk_focus_event_get_in gdk_touch_event_get_emulating_pointer gdk_crossing_event_get_mode gdk_crossing_event_get_detail gdk_crossing_event_get_focus gdk_touchpad_event_get_gesture_phase gdk_touchpad_event_get_n_fingers gdk_touchpad_event_get_deltas gdk_touchpad_event_get_pinch_angle_delta gdk_touchpad_event_get_pinch_scale gdk_pad_event_get_button gdk_pad_event_get_axis_value gdk_pad_event_get_group_mode gdk_dnd_event_get_drop gdk_grab_broken_event_get_grab_surface gdk_grab_broken_event_get_implicit gdk_event_triggers_context_menu gdk_events_get_distance gdk_events_get_angle gdk_events_get_center GdkKeyMatch gdk_key_event_matches gdk_key_event_get_match GdkButtonEvent GdkCrossingEvent GdkDNDEvent GdkDeleteEvent GdkFocusEvent GdkGrabBrokenEvent GdkKeyEvent GdkMotionEvent GdkPadEvent GdkProximityEvent GdkScrollEvent GdkTouchEvent GdkTouchpadEvent GDK_EVENT GDK_IS_EVENT GDK_IS_EVENT_TYPE GDK_TYPE_EVENT GDK_TYPE_EVENT_SEQUENCE GdkEvent GdkEventSequence gdk_event_get_type gdk_event_sequence_get_type
gdkframeclock GdkFrameClock GdkFrameClockPhase gdk_frame_clock_get_frame_time gdk_frame_clock_request_phase gdk_frame_clock_begin_updating gdk_frame_clock_end_updating gdk_frame_clock_get_frame_counter gdk_frame_clock_get_history_start gdk_frame_clock_get_timings gdk_frame_clock_get_current_timings gdk_frame_clock_get_refresh_info gdk_frame_clock_get_fps GDK_FRAME_CLOCK GDK_FRAME_CLOCK_CLASS GDK_FRAME_CLOCK_GET_CLASS GDK_IS_FRAME_CLOCK GDK_IS_FRAME_CLOCK_CLASS GDK_TYPE_FRAME_CLOCK GdkFrameClock GdkFrameClockClass GdkFrameClockPrivate gdk_frame_clock_get_type
gdkframetimings gdk_frame_timings_ref gdk_frame_timings_unref gdk_frame_timings_get_frame_counter gdk_frame_timings_get_complete gdk_frame_timings_get_frame_time gdk_frame_timings_get_presentation_time gdk_frame_timings_get_refresh_interval gdk_frame_timings_get_predicted_presentation_time GdkFrameTimings gdk_frame_timings_get_type
gdkglcontext GDK_GL_ERROR gdk_gl_error_quark gdk_gl_context_get_display gdk_gl_context_get_surface gdk_gl_context_get_shared_context gdk_gl_context_get_version gdk_gl_context_is_legacy gdk_gl_context_set_required_version gdk_gl_context_get_required_version gdk_gl_context_set_debug_enabled gdk_gl_context_get_debug_enabled gdk_gl_context_set_forward_compatible gdk_gl_context_get_forward_compatible gdk_gl_context_set_use_es gdk_gl_context_get_use_es gdk_gl_context_realize gdk_gl_context_make_current gdk_gl_context_get_current gdk_gl_context_clear_current GDK_GL_CONTEXT GDK_IS_GL_CONTEXT GDK_TYPE_GL_CONTEXT gdk_gl_context_get_type
gdkgltexture GdkGLTexture gdk_gl_texture_new gdk_gl_texture_release GdkGLTexture GDK_GL_TEXTURE GDK_IS_GL_TEXTURE GDK_TYPE_GL_TEXTURE GdkGLTextureClass gdk_gl_texture_get_type
gdkkeys gdk_keyval_name gdk_keyval_from_name gdk_keyval_convert_case gdk_keyval_to_upper gdk_keyval_to_lower gdk_keyval_is_upper gdk_keyval_is_lower gdk_keyval_to_unicode gdk_unicode_to_keyval
gdkmemorytexture GdkMemoryTexture GdkMemoryFormat GDK_MEMORY_DEFAULT gdk_memory_texture_new GdkMemoryTexture GDK_IS_MEMORY_TEXTURE GDK_MEMORY_TEXTURE GDK_TYPE_MEMORY_TEXTURE GdkMemoryTextureClass gdk_memory_texture_get_type
gdkmonitor GdkMonitor GdkSubpixelLayout gdk_monitor_get_display gdk_monitor_get_geometry gdk_monitor_get_width_mm gdk_monitor_get_height_mm gdk_monitor_get_manufacturer gdk_monitor_get_model gdk_monitor_get_connector gdk_monitor_get_scale_factor gdk_monitor_get_refresh_rate gdk_monitor_get_subpixel_layout gdk_monitor_is_valid GDK_IS_MONITOR GDK_MONITOR GDK_TYPE_MONITOR GdkMonitor GdkMonitorClass gdk_monitor_get_type
gdkpaintable GdkPaintable GDK_TYPE_PAINTABLE GdkPaintableFlags GdkPaintableInterface gdk_paintable_snapshot gdk_paintable_get_current_image gdk_paintable_get_flags gdk_paintable_get_intrinsic_width gdk_paintable_get_intrinsic_height gdk_paintable_get_intrinsic_aspect_ratio gdk_paintable_compute_concrete_size gdk_paintable_invalidate_contents gdk_paintable_invalidate_size gdk_paintable_new_empty GdkPaintable
gdkpango gdk_pango_layout_line_get_clip_region gdk_pango_layout_get_clip_region
gdkpixbuf gdk_pixbuf_get_from_surface gdk_pixbuf_get_from_texture
gdkpopup GDK_TYPE_POPUP gdk_popup_present gdk_popup_get_surface_anchor gdk_popup_get_rect_anchor gdk_popup_get_parent gdk_popup_get_position_x gdk_popup_get_position_y gdk_popup_get_autohide GdkPopup GdkPopupInterface
gdkpopuplayout GdkAnchorHints gdk_popup_layout_new gdk_popup_layout_ref gdk_popup_layout_unref gdk_popup_layout_copy gdk_popup_layout_equal gdk_popup_layout_set_anchor_rect gdk_popup_layout_get_anchor_rect gdk_popup_layout_set_rect_anchor gdk_popup_layout_get_rect_anchor gdk_popup_layout_set_surface_anchor gdk_popup_layout_get_surface_anchor gdk_popup_layout_set_anchor_hints gdk_popup_layout_get_anchor_hints gdk_popup_layout_set_offset gdk_popup_layout_get_offset GdkPopupLayout GDK_TYPE_POPUP_LAYOUT gdk_popup_layout_get_type
gdkrectangle gdk_rectangle_intersect gdk_rectangle_union gdk_rectangle_equal gdk_rectangle_contains_point GDK_TYPE_RECTANGLE gdk_rectangle_get_type
gdkresources
gdkrgba gdk_rgba_copy gdk_rgba_free gdk_rgba_is_clear gdk_rgba_is_opaque gdk_rgba_hash gdk_rgba_equal gdk_rgba_parse gdk_rgba_to_string GDK_TYPE_RGBA GdkRGBA gdk_rgba_get_type
gdkseat GdkSeatCapabilities gdk_seat_get_display gdk_seat_get_capabilities gdk_seat_get_devices gdk_seat_get_tools gdk_seat_get_pointer gdk_seat_get_keyboard GDK_IS_SEAT GDK_SEAT GDK_TYPE_SEAT GdkSeat gdk_seat_get_type
gdksnapshot GdkSnapshot GDK_IS_SNAPSHOT GDK_SNAPSHOT GDK_TYPE_SNAPSHOT GdkSnapshotClass gdk_snapshot_get_type
gdksurface GdkSurface gdk_surface_new_toplevel gdk_surface_new_popup gdk_surface_destroy gdk_surface_is_destroyed gdk_surface_get_display gdk_surface_hide gdk_surface_set_input_region gdk_surface_get_mapped gdk_surface_set_cursor gdk_surface_get_cursor gdk_surface_set_device_cursor gdk_surface_get_device_cursor gdk_surface_get_width gdk_surface_get_height gdk_surface_translate_coordinates gdk_surface_get_scale_factor gdk_surface_get_device_position gdk_surface_create_similar_surface gdk_surface_beep gdk_surface_queue_render gdk_surface_request_layout gdk_surface_get_frame_clock gdk_surface_set_opaque_region gdk_surface_create_cairo_context gdk_surface_create_gl_context gdk_surface_create_vulkan_context GDK_IS_SURFACE GDK_IS_SURFACE_CLASS GDK_SURFACE GDK_SURFACE_CLASS GDK_SURFACE_GET_CLASS GDK_TYPE_SURFACE GdkSurfaceClass gdk_surface_get_type
gdktexture GdkTexture gdk_texture_new_for_pixbuf gdk_texture_new_from_resource gdk_texture_new_from_file gdk_texture_get_width gdk_texture_get_height gdk_texture_download gdk_texture_save_to_png GDK_IS_TEXTURE GDK_TEXTURE GDK_TYPE_TEXTURE GdkTextureClass gdk_texture_get_type
gdktoplevel GdkSurfaceEdge GdkFullscreenMode GdkToplevelState GDK_TYPE_TOPLEVEL gdk_toplevel_present gdk_toplevel_minimize gdk_toplevel_lower gdk_toplevel_focus gdk_toplevel_get_state gdk_toplevel_set_title gdk_toplevel_set_startup_id gdk_toplevel_set_transient_for gdk_toplevel_set_modal gdk_toplevel_set_icon_list gdk_toplevel_show_window_menu gdk_toplevel_set_decorated gdk_toplevel_set_deletable gdk_toplevel_supports_edge_constraints gdk_toplevel_inhibit_system_shortcuts gdk_toplevel_restore_system_shortcuts gdk_toplevel_begin_resize gdk_toplevel_begin_move GdkToplevel GdkToplevelInterface
gdktoplevellayout gdk_toplevel_layout_new gdk_toplevel_layout_ref gdk_toplevel_layout_unref gdk_toplevel_layout_copy gdk_toplevel_layout_equal gdk_toplevel_layout_set_maximized gdk_toplevel_layout_set_fullscreen gdk_toplevel_layout_get_maximized gdk_toplevel_layout_get_fullscreen gdk_toplevel_layout_get_fullscreen_monitor gdk_toplevel_layout_set_resizable gdk_toplevel_layout_get_resizable GdkToplevelLayout GDK_TYPE_TOPLEVEL_LAYOUT gdk_toplevel_layout_get_type
gdktoplevelsize gdk_toplevel_size_get_bounds gdk_toplevel_size_set_size gdk_toplevel_size_set_min_size gdk_toplevel_size_set_shadow_width GdkToplevelSize GDK_TYPE_TOPLEVEL_SIZE gdk_toplevel_size_get_type
gdktypes GDK_CURRENT_TIME GdkRectangle GdkGravity GdkModifierType GDK_MODIFIER_MASK GdkGLError GdkVulkanError GdkAxisUse GdkAxisFlags GdkDragAction GDK_ACTION_ALL GDK_DECLARE_INTERNAL_TYPE GdkKeymapKey GDK_EXTERN_VAR GdkAppLaunchContext GdkCairoContext GdkClipboard GdkContentFormats GdkContentProvider GdkCursor GdkDevice GdkDisplay GdkDisplayManager GdkDrag GdkDrawContext GdkDrawingContext GdkDrop GdkGLContext GdkRGBA GdkSeat GdkSnapshot GdkSurface GdkTexture GdkVulkanContext
gdkversionmacros GDK_MAJOR_VERSION GDK_MINOR_VERSION GDK_MICRO_VERSION GDK_DEPRECATED GDK_DEPRECATED_FOR GDK_UNAVAILABLE GDK_VERSION_4_0 GDK_VERSION_CUR_STABLE GDK_VERSION_PREV_STABLE GDK_VERSION_MIN_REQUIRED GDK_VERSION_MAX_ALLOWED GDK_AVAILABLE_IN_ALL GDK_AVAILABLE_IN_4_0 GDK_DEPRECATED_IN_4_0 GDK_DEPRECATED_IN_4_0_FOR
gdkvulkancontext GDK_VULKAN_ERROR gdk_vulkan_error_quark gdk_vulkan_strerror gdk_vulkan_context_get_instance gdk_vulkan_context_get_physical_device gdk_vulkan_context_get_device gdk_vulkan_context_get_queue gdk_vulkan_context_get_queue_family_index gdk_vulkan_context_get_image_format gdk_vulkan_context_get_n_images gdk_vulkan_context_get_image gdk_vulkan_context_get_draw_index gdk_vulkan_context_get_draw_semaphore GDK_IS_VULKAN_CONTEXT GDK_TYPE_VULKAN_CONTEXT GDK_VULKAN_CONTEXT gdk_vulkan_context_get_type
gdkwayland
gdkwaylanddevice GdkWaylandDevice gdk_wayland_device_get_wl_seat gdk_wayland_device_get_wl_pointer gdk_wayland_device_get_wl_keyboard gdk_wayland_device_get_node_path GDK_IS_WAYLAND_DEVICE GDK_IS_WAYLAND_DEVICE_CLASS GDK_TYPE_WAYLAND_DEVICE GDK_WAYLAND_DEVICE GDK_WAYLAND_DEVICE_CLASS GDK_WAYLAND_DEVICE_GET_CLASS GdkWaylandDevice GdkWaylandDeviceClass gdk_wayland_device_get_type
gdkwaylanddisplay GdkWaylandDisplay gdk_wayland_display_get_wl_display gdk_wayland_display_get_wl_compositor gdk_wayland_display_set_cursor_theme gdk_wayland_display_get_startup_notification_id gdk_wayland_display_set_startup_notification_id gdk_wayland_display_query_registry GDK_IS_WAYLAND_DISPLAY GDK_IS_WAYLAND_DISPLAY_CLASS GDK_TYPE_WAYLAND_DISPLAY GDK_WAYLAND_DISPLAY GDK_WAYLAND_DISPLAY_CLASS GDK_WAYLAND_DISPLAY_GET_CLASS GdkWaylandDisplay GdkWaylandDisplayClass gdk_wayland_display_get_type
gdkwaylandglcontext GdkWaylandGLContext GdkWaylandGLContext GdkWaylandGLContextClass GDK_TYPE_WAYLAND_GL_CONTEXT GDK_WAYLAND_IS_GL_CONTEXT gdk_wayland_gl_context_get_type
gdkwaylandmonitor GdkWaylandMonitor gdk_wayland_monitor_get_wl_output GDK_IS_WAYLAND_MONITOR GDK_TYPE_WAYLAND_MONITOR GDK_WAYLAND_MONITOR GdkWaylandMonitor GdkWaylandMonitorClass gdk_wayland_monitor_get_type
gdkwaylandseat GdkWaylandSeat gdk_wayland_seat_get_wl_seat GDK_IS_WAYLAND_SEAT GDK_TYPE_WAYLAND_SEAT GDK_WAYLAND_SEAT GdkWaylandSeat GdkWaylandSeatClass gdk_wayland_seat_get_type
gdkwaylandsurface gdk_wayland_surface_get_wl_surface GdkWaylandToplevelExported gdk_wayland_toplevel_export_handle gdk_wayland_toplevel_unexport_handle gdk_wayland_toplevel_set_transient_for_exported gdk_wayland_toplevel_set_application_id GDK_IS_WAYLAND_POPUP GDK_IS_WAYLAND_SURFACE GDK_IS_WAYLAND_TOPLEVEL GDK_TYPE_WAYLAND_POPUP GDK_TYPE_WAYLAND_SURFACE GDK_TYPE_WAYLAND_TOPLEVEL GDK_WAYLAND_POPUP GDK_WAYLAND_SURFACE GDK_WAYLAND_TOPLEVEL GdkWaylandPopup GdkWaylandSurface GdkWaylandToplevel gdk_wayland_popup_get_type gdk_wayland_surface_get_type gdk_wayland_toplevel_get_type
gdkx
gdkx11applaunchcontext GdkX11AppLaunchContext GDK_IS_X11_APP_LAUNCH_CONTEXT GDK_IS_X11_APP_LAUNCH_CONTEXT_CLASS GDK_TYPE_X11_APP_LAUNCH_CONTEXT GDK_X11_APP_LAUNCH_CONTEXT GDK_X11_APP_LAUNCH_CONTEXT_CLASS GDK_X11_APP_LAUNCH_CONTEXT_GET_CLASS GdkX11AppLaunchContext GdkX11AppLaunchContextClass gdk_x11_app_launch_context_get_type
gdkx11device gdk_x11_device_get_id
gdkx11device-xi2 GdkX11DeviceXI2 GdkX11DeviceType GDK_IS_X11_DEVICE_XI2 GDK_IS_X11_DEVICE_XI2_CLASS GDK_TYPE_X11_DEVICE_XI2 GDK_X11_DEVICE_XI2 GDK_X11_DEVICE_XI2_CLASS GDK_X11_DEVICE_XI2_GET_CLASS GdkX11DeviceXI2 GdkX11DeviceXI2Class gdk_x11_device_xi2_get_type
gdkx11devicemanager gdk_x11_device_manager_lookup
gdkx11devicemanager-xi2 GdkX11DeviceManagerXI2 GDK_IS_X11_DEVICE_MANAGER_XI2 GDK_IS_X11_DEVICE_MANAGER_XI2_CLASS GDK_TYPE_X11_DEVICE_MANAGER_XI2 GDK_X11_DEVICE_MANAGER_XI2 GDK_X11_DEVICE_MANAGER_XI2_CLASS GDK_X11_DEVICE_MANAGER_XI2_GET_CLASS GdkX11DeviceManagerXI2 GdkX11DeviceManagerXI2Class gdk_x11_device_manager_xi2_get_type
gdkx11display GdkX11Display gdk_x11_display_open gdk_x11_display_get_xdisplay gdk_x11_display_get_xscreen gdk_x11_display_get_xrootwindow gdk_x11_display_get_xcursor GDK_DISPLAY_XDISPLAY gdk_x11_display_get_user_time gdk_x11_display_get_startup_notification_id gdk_x11_display_set_startup_notification_id gdk_x11_display_set_program_class gdk_x11_display_set_cursor_theme gdk_x11_display_broadcast_startup_message gdk_x11_lookup_xdisplay gdk_x11_display_get_screen gdk_x11_display_get_primary_monitor gdk_x11_display_grab gdk_x11_display_ungrab gdk_x11_display_set_surface_scale gdk_x11_display_error_trap_push gdk_x11_display_error_trap_pop gdk_x11_display_error_trap_pop_ignored gdk_x11_set_sm_client_id gdk_x11_display_get_default_group GDK_IS_X11_DISPLAY GDK_IS_X11_DISPLAY_CLASS GDK_TYPE_X11_DISPLAY GDK_X11_DISPLAY GDK_X11_DISPLAY_CLASS GDK_X11_DISPLAY_GET_CLASS GdkX11Display GdkX11DisplayClass gdk_x11_display_get_type
gdkx11dnd GdkX11Drag GDK_IS_X11_DRAG GDK_IS_X11_DRAG_CLASS GDK_TYPE_X11_DRAG GDK_X11_DRAG GDK_X11_DRAG_CLASS GDK_X11_DRAG_GET_CLASS GdkX11Drag GdkX11DragClass gdk_x11_drag_get_type
gdkx11glcontext GdkX11GLContext gdk_x11_display_get_glx_version GdkX11GLContext GdkX11GLContextClass GDK_TYPE_X11_GL_CONTEXT GDK_X11_IS_GL_CONTEXT gdk_x11_gl_context_get_type
gdkx11monitor GdkX11Monitor gdk_x11_monitor_get_output gdk_x11_monitor_get_workarea GDK_IS_X11_MONITOR GDK_TYPE_X11_MONITOR GDK_X11_MONITOR GdkX11Monitor GdkX11MonitorClass gdk_x11_monitor_get_type
gdkx11property gdk_x11_get_xatom_by_name_for_display gdk_x11_get_xatom_name_for_display
gdkx11screen GdkX11Screen gdk_x11_screen_get_xscreen gdk_x11_screen_get_screen_number gdk_x11_screen_get_window_manager_name gdk_x11_screen_supports_net_wm_hint gdk_x11_screen_get_monitor_output gdk_x11_screen_get_number_of_desktops gdk_x11_screen_get_current_desktop GDK_IS_X11_SCREEN GDK_IS_X11_SCREEN_CLASS GDK_TYPE_X11_SCREEN GDK_X11_SCREEN GDK_X11_SCREEN_CLASS GDK_X11_SCREEN_GET_CLASS GdkX11Screen GdkX11ScreenClass gdk_x11_screen_get_type
gdkx11selection gdk_x11_display_text_property_to_text_list gdk_x11_free_text_list gdk_x11_display_string_to_compound_text gdk_x11_display_utf8_to_compound_text gdk_x11_free_compound_text
gdkx11surface GdkX11Surface gdk_x11_surface_get_xid gdk_x11_surface_set_user_time gdk_x11_surface_set_utf8_property gdk_x11_surface_set_theme_variant gdk_x11_surface_move_to_current_desktop gdk_x11_surface_get_desktop gdk_x11_surface_move_to_desktop gdk_x11_surface_set_frame_sync_enabled GDK_SURFACE_XDISPLAY GDK_SURFACE_XID gdk_x11_get_server_time gdk_x11_surface_lookup_for_display gdk_x11_surface_set_skip_taskbar_hint gdk_x11_surface_set_skip_pager_hint gdk_x11_surface_set_urgency_hint gdk_x11_surface_set_group gdk_x11_surface_get_group GDK_IS_X11_SURFACE GDK_IS_X11_SURFACE_CLASS GDK_TYPE_X11_SURFACE GDK_X11_SURFACE GDK_X11_SURFACE_CLASS GDK_X11_SURFACE_GET_CLASS GdkX11Surface GdkX11SurfaceClass gdk_x11_surface_get_type
gdkx11utils GDK_XID_TO_POINTER GDK_POINTER_TO_XID
docs/reference/gdk/gdk4-decl.txt0000664000175000017500000040350314010071745016644 0ustar mclasenmclasen GDK_TYPE_APP_LAUNCH_CONTEXT #define GDK_TYPE_APP_LAUNCH_CONTEXT (gdk_app_launch_context_get_type ()) GDK_APP_LAUNCH_CONTEXT #define GDK_APP_LAUNCH_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_APP_LAUNCH_CONTEXT, GdkAppLaunchContext)) GDK_IS_APP_LAUNCH_CONTEXT #define GDK_IS_APP_LAUNCH_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_APP_LAUNCH_CONTEXT)) gdk_app_launch_context_get_type GType void gdk_app_launch_context_get_display GdkDisplay * GdkAppLaunchContext *context gdk_app_launch_context_set_desktop void GdkAppLaunchContext *context, int desktop gdk_app_launch_context_set_timestamp void GdkAppLaunchContext *context, guint32 timestamp gdk_app_launch_context_set_icon void GdkAppLaunchContext *context, GIcon *icon gdk_app_launch_context_set_icon_name void GdkAppLaunchContext *context, const char *icon_name gdk_cairo_set_source_rgba void cairo_t *cr, const GdkRGBA *rgba gdk_cairo_set_source_pixbuf void cairo_t *cr, const GdkPixbuf *pixbuf, double pixbuf_x, double pixbuf_y gdk_cairo_rectangle void cairo_t *cr, const GdkRectangle *rectangle gdk_cairo_region void cairo_t *cr, const cairo_region_t *region gdk_cairo_region_create_from_surface cairo_region_t * cairo_surface_t *surface gdk_cairo_draw_from_gl void cairo_t *cr, GdkSurface *surface, int source, int source_type, int buffer_scale, int x, int y, int width, int height GDK_TYPE_CAIRO_CONTEXT #define GDK_TYPE_CAIRO_CONTEXT (gdk_cairo_context_get_type ()) GDK_CAIRO_CONTEXT #define GDK_CAIRO_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_CAIRO_CONTEXT, GdkCairoContext)) GDK_IS_CAIRO_CONTEXT #define GDK_IS_CAIRO_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_CAIRO_CONTEXT)) GDK_CAIRO_ERROR #define GDK_CAIRO_ERROR (gdk_cairo_error_quark ()) gdk_cairo_context_get_type GType void gdk_cairo_context_cairo_create cairo_t * GdkCairoContext *self GDK_TYPE_CLIPBOARD #define GDK_TYPE_CLIPBOARD (gdk_clipboard_get_type ()) GDK_CLIPBOARD #define GDK_CLIPBOARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_CLIPBOARD, GdkClipboard)) GDK_IS_CLIPBOARD #define GDK_IS_CLIPBOARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_CLIPBOARD)) gdk_clipboard_get_type GType void gdk_clipboard_get_display GdkDisplay * GdkClipboard *clipboard gdk_clipboard_get_formats GdkContentFormats * GdkClipboard *clipboard gdk_clipboard_is_local gboolean GdkClipboard *clipboard gdk_clipboard_get_content GdkContentProvider * GdkClipboard *clipboard gdk_clipboard_store_async void GdkClipboard *clipboard, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_clipboard_store_finish gboolean GdkClipboard *clipboard, GAsyncResult *result, GError **error gdk_clipboard_read_async void GdkClipboard *clipboard, const char **mime_types, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_clipboard_read_finish GInputStream * GdkClipboard *clipboard, GAsyncResult *result, const char **out_mime_type, GError **error gdk_clipboard_read_value_async void GdkClipboard *clipboard, GType type, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_clipboard_read_value_finish const GValue * GdkClipboard *clipboard, GAsyncResult *result, GError **error gdk_clipboard_read_texture_async void GdkClipboard *clipboard, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_clipboard_read_texture_finish GdkTexture * GdkClipboard *clipboard, GAsyncResult *result, GError **error gdk_clipboard_read_text_async void GdkClipboard *clipboard, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_clipboard_read_text_finish char * GdkClipboard *clipboard, GAsyncResult *result, GError **error gdk_clipboard_set_content gboolean GdkClipboard *clipboard, GdkContentProvider *provider gdk_clipboard_set void GdkClipboard *clipboard, GType type, ... gdk_clipboard_set_valist void GdkClipboard *clipboard, GType type, va_list args gdk_clipboard_set_value void GdkClipboard *clipboard, const GValue *value gdk_clipboard_set_text void GdkClipboard *clipboard, const char *text gdk_clipboard_set_texture void GdkClipboard *clipboard, GdkTexture *texture GDK_TYPE_CONTENT_DESERIALIZER #define GDK_TYPE_CONTENT_DESERIALIZER (gdk_content_deserializer_get_type ()) GDK_CONTENT_DESERIALIZER #define GDK_CONTENT_DESERIALIZER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_CONTENT_DESERIALIZER, GdkContentDeserializer)) GDK_IS_CONTENT_DESERIALIZER #define GDK_IS_CONTENT_DESERIALIZER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_CONTENT_DESERIALIZER)) GdkContentDeserializeFunc void GdkContentDeserializer *deserializer gdk_content_deserializer_get_type GType void gdk_content_deserializer_get_mime_type const char * GdkContentDeserializer *deserializer gdk_content_deserializer_get_gtype GType GdkContentDeserializer *deserializer gdk_content_deserializer_get_value GValue * GdkContentDeserializer *deserializer gdk_content_deserializer_get_input_stream GInputStream * GdkContentDeserializer *deserializer gdk_content_deserializer_get_priority int GdkContentDeserializer *deserializer gdk_content_deserializer_get_cancellable GCancellable * GdkContentDeserializer *deserializer gdk_content_deserializer_get_user_data gpointer GdkContentDeserializer *deserializer gdk_content_deserializer_set_task_data void GdkContentDeserializer *deserializer, gpointer data, GDestroyNotify notify gdk_content_deserializer_get_task_data gpointer GdkContentDeserializer *deserializer gdk_content_deserializer_return_success void GdkContentDeserializer *deserializer gdk_content_deserializer_return_error void GdkContentDeserializer *deserializer, GError *error gdk_content_formats_union_deserialize_gtypes GdkContentFormats * GdkContentFormats *formats gdk_content_formats_union_deserialize_mime_types GdkContentFormats * GdkContentFormats *formats gdk_content_register_deserializer void const char *mime_type, GType type, GdkContentDeserializeFunc deserialize, gpointer data, GDestroyNotify notify gdk_content_deserialize_async void GInputStream *stream, const char *mime_type, GType type, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_content_deserialize_finish gboolean GAsyncResult *result, GValue *value, GError **error GdkContentDeserializer GDK_TYPE_CONTENT_FORMATS #define GDK_TYPE_CONTENT_FORMATS (gdk_content_formats_get_type ()) gdk_intern_mime_type const char * const char *string gdk_content_formats_get_type GType void gdk_content_formats_new GdkContentFormats * const char **mime_types, guint n_mime_types gdk_content_formats_new_for_gtype GdkContentFormats * GType type gdk_content_formats_ref GdkContentFormats * GdkContentFormats *formats gdk_content_formats_unref void GdkContentFormats *formats gdk_content_formats_print void GdkContentFormats *formats, GString *string gdk_content_formats_to_string char * GdkContentFormats *formats gdk_content_formats_get_gtypes const GType * const GdkContentFormats *formats, gsize *n_gtypes gdk_content_formats_get_mime_types const char * const * const GdkContentFormats *formats, gsize *n_mime_types gdk_content_formats_union GdkContentFormats * GdkContentFormats *first, const GdkContentFormats *second gdk_content_formats_match gboolean const GdkContentFormats *first, const GdkContentFormats *second gdk_content_formats_match_gtype GType const GdkContentFormats *first, const GdkContentFormats *second gdk_content_formats_match_mime_type const char * const GdkContentFormats *first, const GdkContentFormats *second gdk_content_formats_contain_gtype gboolean const GdkContentFormats *formats, GType type gdk_content_formats_contain_mime_type gboolean const GdkContentFormats *formats, const char *mime_type GDK_TYPE_CONTENT_FORMATS_BUILDER #define GDK_TYPE_CONTENT_FORMATS_BUILDER (gdk_content_formats_builder_get_type ()) gdk_content_formats_builder_get_type GType void gdk_content_formats_builder_new GdkContentFormatsBuilder * void gdk_content_formats_builder_ref GdkContentFormatsBuilder * GdkContentFormatsBuilder *builder gdk_content_formats_builder_unref void GdkContentFormatsBuilder *builder gdk_content_formats_builder_free_to_formats GdkContentFormats * GdkContentFormatsBuilder *builder gdk_content_formats_builder_to_formats GdkContentFormats * GdkContentFormatsBuilder *builder gdk_content_formats_builder_add_formats void GdkContentFormatsBuilder *builder, const GdkContentFormats *formats gdk_content_formats_builder_add_mime_type void GdkContentFormatsBuilder *builder, const char *mime_type gdk_content_formats_builder_add_gtype void GdkContentFormatsBuilder *builder, GType type GDK_TYPE_FILE_LIST #define GDK_TYPE_FILE_LIST (gdk_file_list_get_type ()) gdk_file_list_get_type GType void GdkContentFormatsBuilder GDK_TYPE_CONTENT_PROVIDER #define GDK_TYPE_CONTENT_PROVIDER (gdk_content_provider_get_type ()) GDK_CONTENT_PROVIDER #define GDK_CONTENT_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_CONTENT_PROVIDER, GdkContentProvider)) GDK_IS_CONTENT_PROVIDER #define GDK_IS_CONTENT_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_CONTENT_PROVIDER)) GDK_CONTENT_PROVIDER_CLASS #define GDK_CONTENT_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_CONTENT_PROVIDER, GdkContentProviderClass)) GDK_IS_CONTENT_PROVIDER_CLASS #define GDK_IS_CONTENT_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_CONTENT_PROVIDER)) GDK_CONTENT_PROVIDER_GET_CLASS #define GDK_CONTENT_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_CONTENT_PROVIDER, GdkContentProviderClass)) GdkContentProvider struct _GdkContentProvider { GObject parent; }; GdkContentProviderClass struct _GdkContentProviderClass { GObjectClass parent_class; /* signals */ void (* content_changed) (GdkContentProvider *provider); /*< private >*/ /* vfuncs */ void (* attach_clipboard) (GdkContentProvider *provider, GdkClipboard *clipboard); void (* detach_clipboard) (GdkContentProvider *provider, GdkClipboard *clipboard); GdkContentFormats * (* ref_formats) (GdkContentProvider *provider); GdkContentFormats * (* ref_storable_formats) (GdkContentProvider *provider); void (* write_mime_type_async) (GdkContentProvider *provider, const char *mime_type, GOutputStream *stream, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); gboolean (* write_mime_type_finish) (GdkContentProvider *provider, GAsyncResult *result, GError **error); gboolean (* get_value) (GdkContentProvider *provider, GValue *value, GError **error); /*< private >*/ gpointer padding[8]; }; gdk_content_provider_get_type GType void gdk_content_provider_ref_formats GdkContentFormats * GdkContentProvider *provider gdk_content_provider_ref_storable_formats GdkContentFormats * GdkContentProvider *provider gdk_content_provider_content_changed void GdkContentProvider *provider gdk_content_provider_write_mime_type_async void GdkContentProvider *provider, const char *mime_type, GOutputStream *stream, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_content_provider_write_mime_type_finish gboolean GdkContentProvider *provider, GAsyncResult *result, GError **error gdk_content_provider_get_value gboolean GdkContentProvider *provider, GValue *value, GError **error gdk_content_provider_new_for_value GdkContentProvider * const GValue *value gdk_content_provider_new_typed GdkContentProvider * GType type, ... gdk_content_provider_new_union GdkContentProvider * GdkContentProvider **providers, gsize n_providers gdk_content_provider_new_for_bytes GdkContentProvider * const char *mime_type, GBytes *bytes GDK_TYPE_CONTENT_SERIALIZER #define GDK_TYPE_CONTENT_SERIALIZER (gdk_content_serializer_get_type ()) GDK_CONTENT_SERIALIZER #define GDK_CONTENT_SERIALIZER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_CONTENT_SERIALIZER, GdkContentSerializer)) GDK_IS_CONTENT_SERIALIZER #define GDK_IS_CONTENT_SERIALIZER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_CONTENT_SERIALIZER)) GdkContentSerializeFunc void GdkContentSerializer *serializer gdk_content_serializer_get_type GType void gdk_content_serializer_get_mime_type const char * GdkContentSerializer *serializer gdk_content_serializer_get_gtype GType GdkContentSerializer *serializer gdk_content_serializer_get_value const GValue * GdkContentSerializer *serializer gdk_content_serializer_get_output_stream GOutputStream * GdkContentSerializer *serializer gdk_content_serializer_get_priority int GdkContentSerializer *serializer gdk_content_serializer_get_cancellable GCancellable * GdkContentSerializer *serializer gdk_content_serializer_get_user_data gpointer GdkContentSerializer *serializer gdk_content_serializer_set_task_data void GdkContentSerializer *serializer, gpointer data, GDestroyNotify notify gdk_content_serializer_get_task_data gpointer GdkContentSerializer *serializer gdk_content_serializer_return_success void GdkContentSerializer *serializer gdk_content_serializer_return_error void GdkContentSerializer *serializer, GError *error gdk_content_formats_union_serialize_gtypes GdkContentFormats * GdkContentFormats *formats gdk_content_formats_union_serialize_mime_types GdkContentFormats * GdkContentFormats *formats gdk_content_register_serializer void GType type, const char *mime_type, GdkContentSerializeFunc serialize, gpointer data, GDestroyNotify notify gdk_content_serialize_async void GOutputStream *stream, const char *mime_type, const GValue *value, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_content_serialize_finish gboolean GAsyncResult *result, GError **error GdkContentSerializer GDK_TYPE_CURSOR #define GDK_TYPE_CURSOR (gdk_cursor_get_type ()) GDK_CURSOR #define GDK_CURSOR(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_CURSOR, GdkCursor)) GDK_IS_CURSOR #define GDK_IS_CURSOR(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_CURSOR)) gdk_cursor_get_type GType void gdk_cursor_new_from_texture GdkCursor * GdkTexture *texture, int hotspot_x, int hotspot_y, GdkCursor *fallback gdk_cursor_new_from_name GdkCursor * const char *name, GdkCursor *fallback gdk_cursor_get_fallback GdkCursor * GdkCursor *cursor gdk_cursor_get_name const char * GdkCursor *cursor gdk_cursor_get_texture GdkTexture * GdkCursor *cursor gdk_cursor_get_hotspot_x int GdkCursor *cursor gdk_cursor_get_hotspot_y int GdkCursor *cursor GDK_TYPE_DEVICE #define GDK_TYPE_DEVICE (gdk_device_get_type ()) GDK_DEVICE #define GDK_DEVICE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_DEVICE, GdkDevice)) GDK_IS_DEVICE #define GDK_IS_DEVICE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_DEVICE)) GdkInputSource typedef enum { GDK_SOURCE_MOUSE, GDK_SOURCE_PEN, GDK_SOURCE_KEYBOARD, GDK_SOURCE_TOUCHSCREEN, GDK_SOURCE_TOUCHPAD, GDK_SOURCE_TRACKPOINT, GDK_SOURCE_TABLET_PAD } GdkInputSource; GdkTimeCoord struct _GdkTimeCoord { guint32 time; GdkAxisFlags flags; double axes[GDK_AXIS_LAST]; }; gdk_device_get_type GType void gdk_device_get_name const char * GdkDevice *device gdk_device_get_vendor_id const char * GdkDevice *device gdk_device_get_product_id const char * GdkDevice *device gdk_device_get_display GdkDisplay * GdkDevice *device gdk_device_get_seat GdkSeat * GdkDevice *device gdk_device_get_device_tool GdkDeviceTool * GdkDevice *device gdk_device_get_source GdkInputSource GdkDevice *device gdk_device_get_has_cursor gboolean GdkDevice *device gdk_device_get_num_touches guint GdkDevice *device gdk_device_get_modifier_state GdkModifierType GdkDevice *device gdk_device_get_direction PangoDirection GdkDevice *device gdk_device_has_bidi_layouts gboolean GdkDevice *device gdk_device_get_caps_lock_state gboolean GdkDevice *device gdk_device_get_num_lock_state gboolean GdkDevice *device gdk_device_get_scroll_lock_state gboolean GdkDevice *device gdk_device_get_surface_at_position GdkSurface * GdkDevice *device, double *win_x, double *win_y GDK_TYPE_DEVICE_PAD #define GDK_TYPE_DEVICE_PAD (gdk_device_pad_get_type ()) GDK_DEVICE_PAD #define GDK_DEVICE_PAD(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_DEVICE_PAD, GdkDevicePad)) GDK_IS_DEVICE_PAD #define GDK_IS_DEVICE_PAD(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_DEVICE_PAD)) GdkDevicePadFeature typedef enum { GDK_DEVICE_PAD_FEATURE_BUTTON, GDK_DEVICE_PAD_FEATURE_RING, GDK_DEVICE_PAD_FEATURE_STRIP } GdkDevicePadFeature; gdk_device_pad_get_type GType void gdk_device_pad_get_n_groups int GdkDevicePad *pad gdk_device_pad_get_group_n_modes int GdkDevicePad *pad, int group_idx gdk_device_pad_get_n_features int GdkDevicePad *pad, GdkDevicePadFeature feature gdk_device_pad_get_feature_group int GdkDevicePad *pad, GdkDevicePadFeature feature, int feature_idx GdkDevicePad GdkDevicePadInterface GDK_TYPE_DEVICE_TOOL #define GDK_TYPE_DEVICE_TOOL (gdk_device_tool_get_type ()) GDK_DEVICE_TOOL #define GDK_DEVICE_TOOL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_DEVICE_TOOL, GdkDeviceTool)) GDK_IS_DEVICE_TOOL #define GDK_IS_DEVICE_TOOL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_DEVICE_TOOL)) GdkDeviceToolType typedef enum { GDK_DEVICE_TOOL_TYPE_UNKNOWN, GDK_DEVICE_TOOL_TYPE_PEN, GDK_DEVICE_TOOL_TYPE_ERASER, GDK_DEVICE_TOOL_TYPE_BRUSH, GDK_DEVICE_TOOL_TYPE_PENCIL, GDK_DEVICE_TOOL_TYPE_AIRBRUSH, GDK_DEVICE_TOOL_TYPE_MOUSE, GDK_DEVICE_TOOL_TYPE_LENS, } GdkDeviceToolType; gdk_device_tool_get_type GType void gdk_device_tool_get_serial guint64 GdkDeviceTool *tool gdk_device_tool_get_hardware_id guint64 GdkDeviceTool *tool gdk_device_tool_get_tool_type GdkDeviceToolType GdkDeviceTool *tool gdk_device_tool_get_axes GdkAxisFlags GdkDeviceTool *tool GdkDeviceTool GDK_TYPE_DISPLAY #define GDK_TYPE_DISPLAY (gdk_display_get_type ()) GDK_DISPLAY #define GDK_DISPLAY(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_DISPLAY, GdkDisplay)) GDK_IS_DISPLAY #define GDK_IS_DISPLAY(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_DISPLAY)) gdk_display_get_type GType void gdk_display_open GdkDisplay * const char *display_name gdk_display_get_name const char * GdkDisplay *display gdk_display_device_is_grabbed gboolean GdkDisplay *display, GdkDevice *device gdk_display_beep void GdkDisplay *display gdk_display_sync void GdkDisplay *display gdk_display_flush void GdkDisplay *display gdk_display_close void GdkDisplay *display gdk_display_is_closed gboolean GdkDisplay *display gdk_display_is_composited gboolean GdkDisplay *display gdk_display_is_rgba gboolean GdkDisplay *display gdk_display_supports_input_shapes gboolean GdkDisplay *display gdk_display_get_default GdkDisplay * void gdk_display_get_clipboard GdkClipboard * GdkDisplay *display gdk_display_get_primary_clipboard GdkClipboard * GdkDisplay *display gdk_display_notify_startup_complete void GdkDisplay *display, const char *startup_id gdk_display_get_startup_notification_id const char * GdkDisplay *display gdk_display_get_app_launch_context GdkAppLaunchContext * GdkDisplay *display gdk_display_get_default_seat GdkSeat * GdkDisplay *display gdk_display_list_seats GList * GdkDisplay *display gdk_display_get_monitors GListModel * GdkDisplay *self gdk_display_get_monitor_at_surface GdkMonitor * GdkDisplay *display, GdkSurface *surface gdk_display_put_event void GdkDisplay *display, GdkEvent *event gdk_display_map_keyval gboolean GdkDisplay *display, guint keyval, GdkKeymapKey **keys, int *n_keys gdk_display_map_keycode gboolean GdkDisplay *display, guint keycode, GdkKeymapKey **keys, guint **keyvals, int *n_entries gdk_display_translate_key gboolean GdkDisplay *display, guint keycode, GdkModifierType state, int group, guint *keyval, int *effective_group, int *level, GdkModifierType *consumed gdk_display_get_setting gboolean GdkDisplay *display, const char *name, GValue *value GDK_TYPE_DISPLAY_MANAGER #define GDK_TYPE_DISPLAY_MANAGER (gdk_display_manager_get_type ()) GDK_DISPLAY_MANAGER #define GDK_DISPLAY_MANAGER(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_DISPLAY_MANAGER, GdkDisplayManager)) GDK_IS_DISPLAY_MANAGER #define GDK_IS_DISPLAY_MANAGER(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_DISPLAY_MANAGER)) gdk_display_manager_get_type GType void gdk_display_manager_get GdkDisplayManager * void gdk_display_manager_get_default_display GdkDisplay * GdkDisplayManager *manager gdk_display_manager_set_default_display void GdkDisplayManager *manager, GdkDisplay *display gdk_display_manager_list_displays GSList * GdkDisplayManager *manager gdk_display_manager_open_display GdkDisplay * GdkDisplayManager *manager, const char *name gdk_set_allowed_backends void const char *backends GDK_TYPE_DRAG #define GDK_TYPE_DRAG (gdk_drag_get_type ()) GDK_DRAG #define GDK_DRAG(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_DRAG, GdkDrag)) GDK_IS_DRAG #define GDK_IS_DRAG(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_DRAG)) GdkDragCancelReason typedef enum { GDK_DRAG_CANCEL_NO_TARGET, GDK_DRAG_CANCEL_USER_CANCELLED, GDK_DRAG_CANCEL_ERROR } GdkDragCancelReason; gdk_drag_get_type GType void gdk_drag_get_display GdkDisplay * GdkDrag *drag gdk_drag_get_device GdkDevice * GdkDrag *drag gdk_drag_get_formats GdkContentFormats * GdkDrag *drag gdk_drag_get_actions GdkDragAction GdkDrag *drag gdk_drag_get_selected_action GdkDragAction GdkDrag *drag gdk_drag_action_is_unique gboolean GdkDragAction action gdk_drag_begin GdkDrag * GdkSurface *surface, GdkDevice *device, GdkContentProvider *content, GdkDragAction actions, double dx, double dy gdk_drag_drop_done void GdkDrag *drag, gboolean success gdk_drag_get_drag_surface GdkSurface * GdkDrag *drag gdk_drag_set_hotspot void GdkDrag *drag, int hot_x, int hot_y gdk_drag_get_content GdkContentProvider * GdkDrag *drag gdk_drag_get_surface GdkSurface * GdkDrag *drag GDK_TYPE_DRAG_SURFACE #define GDK_TYPE_DRAG_SURFACE (gdk_drag_surface_get_type ()) gdk_drag_surface_present gboolean GdkDragSurface *drag_surface, int width, int height GdkDragSurface GdkDragSurfaceInterface GDK_TYPE_DRAW_CONTEXT #define GDK_TYPE_DRAW_CONTEXT (gdk_draw_context_get_type ()) GDK_DRAW_CONTEXT #define GDK_DRAW_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_DRAW_CONTEXT, GdkDrawContext)) GDK_IS_DRAW_CONTEXT #define GDK_IS_DRAW_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_DRAW_CONTEXT)) gdk_draw_context_get_type GType void gdk_draw_context_get_display GdkDisplay * GdkDrawContext *context gdk_draw_context_get_surface GdkSurface * GdkDrawContext *context gdk_draw_context_begin_frame void GdkDrawContext *context, const cairo_region_t *region gdk_draw_context_end_frame void GdkDrawContext *context gdk_draw_context_is_in_frame gboolean GdkDrawContext *context gdk_draw_context_get_frame_region const cairo_region_t * GdkDrawContext *context GDK_TYPE_DROP #define GDK_TYPE_DROP (gdk_drop_get_type ()) GDK_DROP #define GDK_DROP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_DROP, GdkDrop)) GDK_IS_DROP #define GDK_IS_DROP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_DROP)) gdk_drop_get_type GType void gdk_drop_get_display GdkDisplay * GdkDrop *self gdk_drop_get_device GdkDevice * GdkDrop *self gdk_drop_get_surface GdkSurface * GdkDrop *self gdk_drop_get_formats GdkContentFormats * GdkDrop *self gdk_drop_get_actions GdkDragAction GdkDrop *self gdk_drop_get_drag GdkDrag * GdkDrop *self gdk_drop_status void GdkDrop *self, GdkDragAction actions, GdkDragAction preferred gdk_drop_finish void GdkDrop *self, GdkDragAction action gdk_drop_read_async void GdkDrop *self, const char **mime_types, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_drop_read_finish GInputStream * GdkDrop *self, GAsyncResult *result, const char **out_mime_type, GError **error gdk_drop_read_value_async void GdkDrop *self, GType type, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data gdk_drop_read_value_finish const GValue * GdkDrop *self, GAsyncResult *result, GError **error GDK_TYPE_EVENT #define GDK_TYPE_EVENT (gdk_event_get_type ()) GDK_TYPE_EVENT_SEQUENCE #define GDK_TYPE_EVENT_SEQUENCE (gdk_event_sequence_get_type ()) GDK_IS_EVENT #define GDK_IS_EVENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_EVENT)) GDK_EVENT #define GDK_EVENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_EVENT, GdkEvent)) GDK_IS_EVENT_TYPE #define GDK_IS_EVENT_TYPE(event, type) (gdk_event_get_event_type ((event)) == (type)) GDK_PRIORITY_EVENTS #define GDK_PRIORITY_EVENTS (G_PRIORITY_DEFAULT) GDK_PRIORITY_REDRAW #define GDK_PRIORITY_REDRAW (G_PRIORITY_HIGH_IDLE + 20) GDK_EVENT_PROPAGATE #define GDK_EVENT_PROPAGATE (FALSE) GDK_EVENT_STOP #define GDK_EVENT_STOP (TRUE) GDK_BUTTON_PRIMARY #define GDK_BUTTON_PRIMARY (1) GDK_BUTTON_MIDDLE #define GDK_BUTTON_MIDDLE (2) GDK_BUTTON_SECONDARY #define GDK_BUTTON_SECONDARY (3) GDK_TYPE_BUTTON_EVENT #define GDK_TYPE_BUTTON_EVENT (gdk_button_event_get_type()) GDK_TYPE_CROSSING_EVENT #define GDK_TYPE_CROSSING_EVENT (gdk_crossing_event_get_type()) GDK_TYPE_DELETE_EVENT #define GDK_TYPE_DELETE_EVENT (gdk_delete_event_get_type()) GDK_TYPE_DND_EVENT #define GDK_TYPE_DND_EVENT (gdk_dnd_event_get_type()) GDK_TYPE_FOCUS_EVENT #define GDK_TYPE_FOCUS_EVENT (gdk_focus_event_get_type()) GDK_TYPE_GRAB_BROKEN_EVENT #define GDK_TYPE_GRAB_BROKEN_EVENT (gdk_grab_broken_event_get_type()) GDK_TYPE_KEY_EVENT #define GDK_TYPE_KEY_EVENT (gdk_key_event_get_type()) GDK_TYPE_MOTION_EVENT #define GDK_TYPE_MOTION_EVENT (gdk_motion_event_get_type()) GDK_TYPE_PAD_EVENT #define GDK_TYPE_PAD_EVENT (gdk_pad_event_get_type()) GDK_TYPE_PROXIMITY_EVENT #define GDK_TYPE_PROXIMITY_EVENT (gdk_proximity_event_get_type()) GDK_TYPE_SCROLL_EVENT #define GDK_TYPE_SCROLL_EVENT (gdk_scroll_event_get_type()) GDK_TYPE_TOUCH_EVENT #define GDK_TYPE_TOUCH_EVENT (gdk_touch_event_get_type()) GDK_TYPE_TOUCHPAD_EVENT #define GDK_TYPE_TOUCHPAD_EVENT (gdk_touchpad_event_get_type()) GdkEventType typedef enum { GDK_DELETE, GDK_MOTION_NOTIFY, GDK_BUTTON_PRESS, GDK_BUTTON_RELEASE, GDK_KEY_PRESS, GDK_KEY_RELEASE, GDK_ENTER_NOTIFY, GDK_LEAVE_NOTIFY, GDK_FOCUS_CHANGE, GDK_PROXIMITY_IN, GDK_PROXIMITY_OUT, GDK_DRAG_ENTER, GDK_DRAG_LEAVE, GDK_DRAG_MOTION, GDK_DROP_START, GDK_SCROLL, GDK_GRAB_BROKEN, GDK_TOUCH_BEGIN, GDK_TOUCH_UPDATE, GDK_TOUCH_END, GDK_TOUCH_CANCEL, GDK_TOUCHPAD_SWIPE, GDK_TOUCHPAD_PINCH, GDK_PAD_BUTTON_PRESS, GDK_PAD_BUTTON_RELEASE, GDK_PAD_RING, GDK_PAD_STRIP, GDK_PAD_GROUP_MODE, GDK_EVENT_LAST /* helper variable for decls */ } GdkEventType; GdkTouchpadGesturePhase typedef enum { GDK_TOUCHPAD_GESTURE_PHASE_BEGIN, GDK_TOUCHPAD_GESTURE_PHASE_UPDATE, GDK_TOUCHPAD_GESTURE_PHASE_END, GDK_TOUCHPAD_GESTURE_PHASE_CANCEL } GdkTouchpadGesturePhase; GdkScrollDirection typedef enum { GDK_SCROLL_UP, GDK_SCROLL_DOWN, GDK_SCROLL_LEFT, GDK_SCROLL_RIGHT, GDK_SCROLL_SMOOTH } GdkScrollDirection; GdkNotifyType typedef enum { GDK_NOTIFY_ANCESTOR = 0, GDK_NOTIFY_VIRTUAL = 1, GDK_NOTIFY_INFERIOR = 2, GDK_NOTIFY_NONLINEAR = 3, GDK_NOTIFY_NONLINEAR_VIRTUAL = 4, GDK_NOTIFY_UNKNOWN = 5 } GdkNotifyType; GdkCrossingMode typedef enum { GDK_CROSSING_NORMAL, GDK_CROSSING_GRAB, GDK_CROSSING_UNGRAB, GDK_CROSSING_GTK_GRAB, GDK_CROSSING_GTK_UNGRAB, GDK_CROSSING_STATE_CHANGED, GDK_CROSSING_TOUCH_BEGIN, GDK_CROSSING_TOUCH_END, GDK_CROSSING_DEVICE_SWITCH } GdkCrossingMode; gdk_event_get_type GType void gdk_event_sequence_get_type GType void gdk_event_ref GdkEvent * GdkEvent *event gdk_event_unref void GdkEvent *event gdk_event_get_event_type GdkEventType GdkEvent *event gdk_event_get_surface GdkSurface * GdkEvent *event gdk_event_get_seat GdkSeat * GdkEvent *event gdk_event_get_device GdkDevice * GdkEvent *event gdk_event_get_device_tool GdkDeviceTool * GdkEvent *event gdk_event_get_time guint32 GdkEvent *event gdk_event_get_display GdkDisplay * GdkEvent *event gdk_event_get_event_sequence GdkEventSequence * GdkEvent *event gdk_event_get_modifier_state GdkModifierType GdkEvent *event gdk_event_get_position gboolean GdkEvent *event, double *x, double *y gdk_event_get_axes gboolean GdkEvent *event, double **axes, guint *n_axes gdk_event_get_axis gboolean GdkEvent *event, GdkAxisUse axis_use, double *value gdk_event_get_history GdkTimeCoord * GdkEvent *event, guint *out_n_coords gdk_event_get_pointer_emulated gboolean GdkEvent *event gdk_button_event_get_type GType void gdk_button_event_get_button guint GdkEvent *event gdk_scroll_event_get_type GType void gdk_scroll_event_get_direction GdkScrollDirection GdkEvent *event gdk_scroll_event_get_deltas void GdkEvent *event, double *delta_x, double *delta_y gdk_scroll_event_is_stop gboolean GdkEvent *event gdk_key_event_get_type GType void gdk_key_event_get_keyval guint GdkEvent *event gdk_key_event_get_keycode guint GdkEvent *event gdk_key_event_get_consumed_modifiers GdkModifierType GdkEvent *event gdk_key_event_get_layout guint GdkEvent *event gdk_key_event_get_level guint GdkEvent *event gdk_key_event_is_modifier gboolean GdkEvent *event gdk_focus_event_get_type GType void gdk_focus_event_get_in gboolean GdkEvent *event gdk_touch_event_get_type GType void gdk_touch_event_get_emulating_pointer gboolean GdkEvent *event gdk_crossing_event_get_type GType void gdk_crossing_event_get_mode GdkCrossingMode GdkEvent *event gdk_crossing_event_get_detail GdkNotifyType GdkEvent *event gdk_crossing_event_get_focus gboolean GdkEvent *event gdk_touchpad_event_get_type GType void gdk_touchpad_event_get_gesture_phase GdkTouchpadGesturePhase GdkEvent *event gdk_touchpad_event_get_n_fingers guint GdkEvent *event gdk_touchpad_event_get_deltas void GdkEvent *event, double *dx, double *dy gdk_touchpad_event_get_pinch_angle_delta double GdkEvent *event gdk_touchpad_event_get_pinch_scale double GdkEvent *event gdk_pad_event_get_type GType void gdk_pad_event_get_button guint GdkEvent *event gdk_pad_event_get_axis_value void GdkEvent *event, guint *index, double *value gdk_pad_event_get_group_mode void GdkEvent *event, guint *group, guint *mode gdk_dnd_event_get_type GType void gdk_dnd_event_get_drop GdkDrop * GdkEvent *event gdk_grab_broken_event_get_type GType void gdk_grab_broken_event_get_grab_surface GdkSurface * GdkEvent *event gdk_grab_broken_event_get_implicit gboolean GdkEvent *event gdk_motion_event_get_type GType void gdk_delete_event_get_type GType void gdk_proximity_event_get_type GType void gdk_event_triggers_context_menu gboolean GdkEvent *event gdk_events_get_distance gboolean GdkEvent *event1, GdkEvent *event2, double *distance gdk_events_get_angle gboolean GdkEvent *event1, GdkEvent *event2, double *angle gdk_events_get_center gboolean GdkEvent *event1, GdkEvent *event2, double *x, double *y GdkKeyMatch typedef enum { GDK_KEY_MATCH_NONE, GDK_KEY_MATCH_PARTIAL, GDK_KEY_MATCH_EXACT } GdkKeyMatch; gdk_key_event_matches GdkKeyMatch GdkEvent *event, guint keyval, GdkModifierType modifiers gdk_key_event_get_match gboolean GdkEvent *event, guint *keyval, GdkModifierType *modifiers GdkButtonEvent GdkCrossingEvent GdkDNDEvent GdkDeleteEvent GdkEvent GdkEventSequence GdkFocusEvent GdkGrabBrokenEvent GdkKeyEvent GdkMotionEvent GdkPadEvent GdkProximityEvent GdkScrollEvent GdkTouchEvent GdkTouchpadEvent GDK_TYPE_FRAME_CLOCK #define GDK_TYPE_FRAME_CLOCK (gdk_frame_clock_get_type ()) GDK_FRAME_CLOCK #define GDK_FRAME_CLOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_FRAME_CLOCK, GdkFrameClock)) GDK_FRAME_CLOCK_CLASS #define GDK_FRAME_CLOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_FRAME_CLOCK, GdkFrameClockClass)) GDK_IS_FRAME_CLOCK #define GDK_IS_FRAME_CLOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_FRAME_CLOCK)) GDK_IS_FRAME_CLOCK_CLASS #define GDK_IS_FRAME_CLOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_FRAME_CLOCK)) GDK_FRAME_CLOCK_GET_CLASS #define GDK_FRAME_CLOCK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_FRAME_CLOCK, GdkFrameClockClass)) GdkFrameClockPhase typedef enum { GDK_FRAME_CLOCK_PHASE_NONE = 0, GDK_FRAME_CLOCK_PHASE_FLUSH_EVENTS = 1 << 0, GDK_FRAME_CLOCK_PHASE_BEFORE_PAINT = 1 << 1, GDK_FRAME_CLOCK_PHASE_UPDATE = 1 << 2, GDK_FRAME_CLOCK_PHASE_LAYOUT = 1 << 3, GDK_FRAME_CLOCK_PHASE_PAINT = 1 << 4, GDK_FRAME_CLOCK_PHASE_RESUME_EVENTS = 1 << 5, GDK_FRAME_CLOCK_PHASE_AFTER_PAINT = 1 << 6 } GdkFrameClockPhase; gdk_frame_clock_get_type GType void gdk_frame_clock_get_frame_time gint64 GdkFrameClock *frame_clock gdk_frame_clock_request_phase void GdkFrameClock *frame_clock, GdkFrameClockPhase phase gdk_frame_clock_begin_updating void GdkFrameClock *frame_clock gdk_frame_clock_end_updating void GdkFrameClock *frame_clock gdk_frame_clock_get_frame_counter gint64 GdkFrameClock *frame_clock gdk_frame_clock_get_history_start gint64 GdkFrameClock *frame_clock gdk_frame_clock_get_timings GdkFrameTimings * GdkFrameClock *frame_clock, gint64 frame_counter gdk_frame_clock_get_current_timings GdkFrameTimings * GdkFrameClock *frame_clock gdk_frame_clock_get_refresh_info void GdkFrameClock *frame_clock, gint64 base_time, gint64 *refresh_interval_return, gint64 *presentation_time_return gdk_frame_clock_get_fps double GdkFrameClock *frame_clock GdkFrameClock GdkFrameClockClass GdkFrameClockPrivate gdk_frame_timings_get_type GType void gdk_frame_timings_ref GdkFrameTimings * GdkFrameTimings *timings gdk_frame_timings_unref void GdkFrameTimings *timings gdk_frame_timings_get_frame_counter gint64 GdkFrameTimings *timings gdk_frame_timings_get_complete gboolean GdkFrameTimings *timings gdk_frame_timings_get_frame_time gint64 GdkFrameTimings *timings gdk_frame_timings_get_presentation_time gint64 GdkFrameTimings *timings gdk_frame_timings_get_refresh_interval gint64 GdkFrameTimings *timings gdk_frame_timings_get_predicted_presentation_time gint64 GdkFrameTimings *timings GdkFrameTimings GDK_TYPE_GL_CONTEXT #define GDK_TYPE_GL_CONTEXT (gdk_gl_context_get_type ()) GDK_GL_CONTEXT #define GDK_GL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_GL_CONTEXT, GdkGLContext)) GDK_IS_GL_CONTEXT #define GDK_IS_GL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_GL_CONTEXT)) GDK_GL_ERROR #define GDK_GL_ERROR (gdk_gl_error_quark ()) gdk_gl_error_quark GQuark void gdk_gl_context_get_type GType void gdk_gl_context_get_display GdkDisplay * GdkGLContext *context gdk_gl_context_get_surface GdkSurface * GdkGLContext *context gdk_gl_context_get_shared_context GdkGLContext * GdkGLContext *context gdk_gl_context_get_version void GdkGLContext *context, int *major, int *minor gdk_gl_context_is_legacy gboolean GdkGLContext *context gdk_gl_context_set_required_version void GdkGLContext *context, int major, int minor gdk_gl_context_get_required_version void GdkGLContext *context, int *major, int *minor gdk_gl_context_set_debug_enabled void GdkGLContext *context, gboolean enabled gdk_gl_context_get_debug_enabled gboolean GdkGLContext *context gdk_gl_context_set_forward_compatible void GdkGLContext *context, gboolean compatible gdk_gl_context_get_forward_compatible gboolean GdkGLContext *context gdk_gl_context_set_use_es void GdkGLContext *context, int use_es gdk_gl_context_get_use_es gboolean GdkGLContext *context gdk_gl_context_realize gboolean GdkGLContext *context, GError **error gdk_gl_context_make_current void GdkGLContext *context gdk_gl_context_get_current GdkGLContext * void gdk_gl_context_clear_current void void GDK_TYPE_GL_TEXTURE #define GDK_TYPE_GL_TEXTURE (gdk_gl_texture_get_type ()) GDK_GL_TEXTURE #define GDK_GL_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_GL_TEXTURE, GdkGLTexture)) GDK_IS_GL_TEXTURE #define GDK_IS_GL_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_GL_TEXTURE)) gdk_gl_texture_get_type GType void gdk_gl_texture_new GdkTexture * GdkGLContext *context, guint id, int width, int height, GDestroyNotify destroy, gpointer data gdk_gl_texture_release void GdkGLTexture *self GdkGLTexture GdkGLTextureClass gdk_keyval_name const char * guint keyval gdk_keyval_from_name guint const char *keyval_name gdk_keyval_convert_case void guint symbol, guint *lower, guint *upper gdk_keyval_to_upper guint guint keyval gdk_keyval_to_lower guint guint keyval gdk_keyval_is_upper gboolean guint keyval gdk_keyval_is_lower gboolean guint keyval gdk_keyval_to_unicode guint32 guint keyval gdk_unicode_to_keyval guint guint32 wc GdkMemoryFormat typedef enum { GDK_MEMORY_B8G8R8A8_PREMULTIPLIED, GDK_MEMORY_A8R8G8B8_PREMULTIPLIED, GDK_MEMORY_R8G8B8A8_PREMULTIPLIED, GDK_MEMORY_B8G8R8A8, GDK_MEMORY_A8R8G8B8, GDK_MEMORY_R8G8B8A8, GDK_MEMORY_A8B8G8R8, GDK_MEMORY_R8G8B8, GDK_MEMORY_B8G8R8, GDK_MEMORY_N_FORMATS } GdkMemoryFormat; GDK_MEMORY_DEFAULT #define GDK_MEMORY_DEFAULT GDK_MEMORY_B8G8R8A8_PREMULTIPLIED GDK_TYPE_MEMORY_TEXTURE #define GDK_TYPE_MEMORY_TEXTURE (gdk_memory_texture_get_type ()) GDK_MEMORY_TEXTURE #define GDK_MEMORY_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_MEMORY_TEXTURE, GdkMemoryTexture)) GDK_IS_MEMORY_TEXTURE #define GDK_IS_MEMORY_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_MEMORY_TEXTURE)) gdk_memory_texture_get_type GType void gdk_memory_texture_new GdkTexture * int width, int height, GdkMemoryFormat format, GBytes *bytes, gsize stride GdkMemoryTexture GdkMemoryTextureClass GDK_TYPE_MONITOR #define GDK_TYPE_MONITOR (gdk_monitor_get_type ()) GDK_MONITOR #define GDK_MONITOR(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_MONITOR, GdkMonitor)) GDK_IS_MONITOR #define GDK_IS_MONITOR(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_MONITOR)) GdkSubpixelLayout typedef enum { GDK_SUBPIXEL_LAYOUT_UNKNOWN, GDK_SUBPIXEL_LAYOUT_NONE, GDK_SUBPIXEL_LAYOUT_HORIZONTAL_RGB, GDK_SUBPIXEL_LAYOUT_HORIZONTAL_BGR, GDK_SUBPIXEL_LAYOUT_VERTICAL_RGB, GDK_SUBPIXEL_LAYOUT_VERTICAL_BGR } GdkSubpixelLayout; gdk_monitor_get_type GType void gdk_monitor_get_display GdkDisplay * GdkMonitor *monitor gdk_monitor_get_geometry void GdkMonitor *monitor, GdkRectangle *geometry gdk_monitor_get_width_mm int GdkMonitor *monitor gdk_monitor_get_height_mm int GdkMonitor *monitor gdk_monitor_get_manufacturer const char * GdkMonitor *monitor gdk_monitor_get_model const char * GdkMonitor *monitor gdk_monitor_get_connector const char * GdkMonitor *monitor gdk_monitor_get_scale_factor int GdkMonitor *monitor gdk_monitor_get_refresh_rate int GdkMonitor *monitor gdk_monitor_get_subpixel_layout GdkSubpixelLayout GdkMonitor *monitor gdk_monitor_is_valid gboolean GdkMonitor *monitor GdkMonitor GdkMonitorClass GDK_TYPE_PAINTABLE #define GDK_TYPE_PAINTABLE (gdk_paintable_get_type ()) GdkPaintableFlags typedef enum { GDK_PAINTABLE_STATIC_SIZE = 1 << 0, GDK_PAINTABLE_STATIC_CONTENTS = 1 << 1 } GdkPaintableFlags; GdkPaintableInterface struct _GdkPaintableInterface { /*< private >*/ GTypeInterface g_iface; /*< public >*/ /* draw to 0,0 with the given width and height */ void (* snapshot) (GdkPaintable *paintable, GdkSnapshot *snapshot, double width, double height); /* get the current contents in an immutable form (optional) */ GdkPaintable * (* get_current_image) (GdkPaintable *paintable); /* get flags for potential optimizations (optional) */ GdkPaintableFlags (* get_flags) (GdkPaintable *paintable); /* preferred width of paintable or 0 if it has no width (optional) */ int (* get_intrinsic_width) (GdkPaintable *paintable); /* preferred height of paintable or 0 if it has no height (optional) */ int (* get_intrinsic_height) (GdkPaintable *paintable); /* aspect ratio (width / height) of paintable or 0 if it has no aspect ratio (optional) */ double (* get_intrinsic_aspect_ratio) (GdkPaintable *paintable); }; gdk_paintable_snapshot void GdkPaintable *paintable, GdkSnapshot *snapshot, double width, double height gdk_paintable_get_current_image GdkPaintable * GdkPaintable *paintable gdk_paintable_get_flags GdkPaintableFlags GdkPaintable *paintable gdk_paintable_get_intrinsic_width int GdkPaintable *paintable gdk_paintable_get_intrinsic_height int GdkPaintable *paintable gdk_paintable_get_intrinsic_aspect_ratio double GdkPaintable *paintable gdk_paintable_compute_concrete_size void GdkPaintable *paintable, double specified_width, double specified_height, double default_width, double default_height, double *concrete_width, double *concrete_height gdk_paintable_invalidate_contents void GdkPaintable *paintable gdk_paintable_invalidate_size void GdkPaintable *paintable gdk_paintable_new_empty GdkPaintable * int intrinsic_width, int intrinsic_height GdkPaintable gdk_pango_layout_line_get_clip_region cairo_region_t * PangoLayoutLine *line, int x_origin, int y_origin, const int *index_ranges, int n_ranges gdk_pango_layout_get_clip_region cairo_region_t * PangoLayout *layout, int x_origin, int y_origin, const int *index_ranges, int n_ranges gdk_pixbuf_get_from_surface GdkPixbuf * cairo_surface_t *surface, int src_x, int src_y, int width, int height gdk_pixbuf_get_from_texture GdkPixbuf * GdkTexture *texture GDK_TYPE_POPUP #define GDK_TYPE_POPUP (gdk_popup_get_type ()) gdk_popup_present gboolean GdkPopup *popup, int width, int height, GdkPopupLayout *layout gdk_popup_get_surface_anchor GdkGravity GdkPopup *popup gdk_popup_get_rect_anchor GdkGravity GdkPopup *popup gdk_popup_get_parent GdkSurface * GdkPopup *popup gdk_popup_get_position_x int GdkPopup *popup gdk_popup_get_position_y int GdkPopup *popup gdk_popup_get_autohide gboolean GdkPopup *popup GdkPopup GdkPopupInterface GdkAnchorHints typedef enum { GDK_ANCHOR_FLIP_X = 1 << 0, GDK_ANCHOR_FLIP_Y = 1 << 1, GDK_ANCHOR_SLIDE_X = 1 << 2, GDK_ANCHOR_SLIDE_Y = 1 << 3, GDK_ANCHOR_RESIZE_X = 1 << 4, GDK_ANCHOR_RESIZE_Y = 1 << 5, GDK_ANCHOR_FLIP = GDK_ANCHOR_FLIP_X | GDK_ANCHOR_FLIP_Y, GDK_ANCHOR_SLIDE = GDK_ANCHOR_SLIDE_X | GDK_ANCHOR_SLIDE_Y, GDK_ANCHOR_RESIZE = GDK_ANCHOR_RESIZE_X | GDK_ANCHOR_RESIZE_Y, } GdkAnchorHints; GDK_TYPE_POPUP_LAYOUT #define GDK_TYPE_POPUP_LAYOUT (gdk_popup_layout_get_type ()) gdk_popup_layout_get_type GType void gdk_popup_layout_new GdkPopupLayout * const GdkRectangle *anchor_rect, GdkGravity rect_anchor, GdkGravity surface_anchor gdk_popup_layout_ref GdkPopupLayout * GdkPopupLayout *layout gdk_popup_layout_unref void GdkPopupLayout *layout gdk_popup_layout_copy GdkPopupLayout * GdkPopupLayout *layout gdk_popup_layout_equal gboolean GdkPopupLayout *layout, GdkPopupLayout *other gdk_popup_layout_set_anchor_rect void GdkPopupLayout *layout, const GdkRectangle *anchor_rect gdk_popup_layout_get_anchor_rect const GdkRectangle * GdkPopupLayout *layout gdk_popup_layout_set_rect_anchor void GdkPopupLayout *layout, GdkGravity anchor gdk_popup_layout_get_rect_anchor GdkGravity GdkPopupLayout *layout gdk_popup_layout_set_surface_anchor void GdkPopupLayout *layout, GdkGravity anchor gdk_popup_layout_get_surface_anchor GdkGravity GdkPopupLayout *layout gdk_popup_layout_set_anchor_hints void GdkPopupLayout *layout, GdkAnchorHints anchor_hints gdk_popup_layout_get_anchor_hints GdkAnchorHints GdkPopupLayout *layout gdk_popup_layout_set_offset void GdkPopupLayout *layout, int dx, int dy gdk_popup_layout_get_offset void GdkPopupLayout *layout, int *dx, int *dy GdkPopupLayout gdk_rectangle_intersect gboolean const GdkRectangle *src1, const GdkRectangle *src2, GdkRectangle *dest gdk_rectangle_union void const GdkRectangle *src1, const GdkRectangle *src2, GdkRectangle *dest gdk_rectangle_equal gboolean const GdkRectangle *rect1, const GdkRectangle *rect2 gdk_rectangle_contains_point gboolean const GdkRectangle *rect, int x, int y gdk_rectangle_get_type GType void GDK_TYPE_RECTANGLE #define GDK_TYPE_RECTANGLE (gdk_rectangle_get_type ()) GdkRGBA struct _GdkRGBA { float red; float green; float blue; float alpha; }; GDK_TYPE_RGBA #define GDK_TYPE_RGBA (gdk_rgba_get_type ()) gdk_rgba_get_type GType void gdk_rgba_copy GdkRGBA * const GdkRGBA *rgba gdk_rgba_free void GdkRGBA *rgba gdk_rgba_is_clear gboolean const GdkRGBA *rgba gdk_rgba_is_opaque gboolean const GdkRGBA *rgba gdk_rgba_hash guint gconstpointer p gdk_rgba_equal gboolean gconstpointer p1, gconstpointer p2 gdk_rgba_parse gboolean GdkRGBA *rgba, const char *spec gdk_rgba_to_string char * const GdkRGBA *rgba GDK_TYPE_SEAT #define GDK_TYPE_SEAT (gdk_seat_get_type ()) GDK_SEAT #define GDK_SEAT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_SEAT, GdkSeat)) GDK_IS_SEAT #define GDK_IS_SEAT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_SEAT)) GdkSeatCapabilities typedef enum { GDK_SEAT_CAPABILITY_NONE = 0, GDK_SEAT_CAPABILITY_POINTER = 1 << 0, GDK_SEAT_CAPABILITY_TOUCH = 1 << 1, GDK_SEAT_CAPABILITY_TABLET_STYLUS = 1 << 2, GDK_SEAT_CAPABILITY_KEYBOARD = 1 << 3, GDK_SEAT_CAPABILITY_TABLET_PAD = 1 << 4, GDK_SEAT_CAPABILITY_ALL_POINTING = (GDK_SEAT_CAPABILITY_POINTER | GDK_SEAT_CAPABILITY_TOUCH | GDK_SEAT_CAPABILITY_TABLET_STYLUS), GDK_SEAT_CAPABILITY_ALL = (GDK_SEAT_CAPABILITY_ALL_POINTING | GDK_SEAT_CAPABILITY_KEYBOARD) } GdkSeatCapabilities; GdkSeat struct _GdkSeat { GObject parent_instance; }; gdk_seat_get_type GType void gdk_seat_get_display GdkDisplay * GdkSeat *seat gdk_seat_get_capabilities GdkSeatCapabilities GdkSeat *seat gdk_seat_get_devices GList * GdkSeat *seat, GdkSeatCapabilities capabilities gdk_seat_get_tools GList * GdkSeat *seat gdk_seat_get_pointer GdkDevice * GdkSeat *seat gdk_seat_get_keyboard GdkDevice * GdkSeat *seat GDK_TYPE_SNAPSHOT #define GDK_TYPE_SNAPSHOT (gdk_snapshot_get_type ()) GDK_SNAPSHOT #define GDK_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_SNAPSHOT, GdkSnapshot)) GDK_IS_SNAPSHOT #define GDK_IS_SNAPSHOT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_SNAPSHOT)) gdk_snapshot_get_type GType void GdkSnapshotClass GDK_TYPE_SURFACE #define GDK_TYPE_SURFACE (gdk_surface_get_type ()) GDK_SURFACE #define GDK_SURFACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_SURFACE, GdkSurface)) GDK_SURFACE_CLASS #define GDK_SURFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_SURFACE, GdkSurfaceClass)) GDK_IS_SURFACE #define GDK_IS_SURFACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_SURFACE)) GDK_IS_SURFACE_CLASS #define GDK_IS_SURFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_SURFACE)) GDK_SURFACE_GET_CLASS #define GDK_SURFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_SURFACE, GdkSurfaceClass)) gdk_surface_get_type GType void gdk_surface_new_toplevel GdkSurface * GdkDisplay *display gdk_surface_new_popup GdkSurface * GdkSurface *parent, gboolean autohide gdk_surface_destroy void GdkSurface *surface gdk_surface_is_destroyed gboolean GdkSurface *surface gdk_surface_get_display GdkDisplay * GdkSurface *surface gdk_surface_hide void GdkSurface *surface gdk_surface_set_input_region void GdkSurface *surface, cairo_region_t *region gdk_surface_get_mapped gboolean GdkSurface *surface gdk_surface_set_cursor void GdkSurface *surface, GdkCursor *cursor gdk_surface_get_cursor GdkCursor * GdkSurface *surface gdk_surface_set_device_cursor void GdkSurface *surface, GdkDevice *device, GdkCursor *cursor gdk_surface_get_device_cursor GdkCursor * GdkSurface *surface, GdkDevice *device gdk_surface_get_width int GdkSurface *surface gdk_surface_get_height int GdkSurface *surface gdk_surface_translate_coordinates gboolean GdkSurface *from, GdkSurface *to, double *x, double *y gdk_surface_get_scale_factor int GdkSurface *surface gdk_surface_get_device_position gboolean GdkSurface *surface, GdkDevice *device, double *x, double *y, GdkModifierType *mask gdk_surface_create_similar_surface cairo_surface_t * GdkSurface *surface, cairo_content_t content, int width, int height gdk_surface_beep void GdkSurface *surface gdk_surface_queue_render void GdkSurface *surface gdk_surface_request_layout void GdkSurface *surface gdk_surface_get_frame_clock GdkFrameClock * GdkSurface *surface gdk_surface_set_opaque_region void GdkSurface *surface, cairo_region_t *region gdk_surface_create_cairo_context GdkCairoContext * GdkSurface *surface gdk_surface_create_gl_context GdkGLContext * GdkSurface *surface, GError **error gdk_surface_create_vulkan_context GdkVulkanContext * GdkSurface *surface, GError **error GdkSurfaceClass GDK_TYPE_TEXTURE #define GDK_TYPE_TEXTURE (gdk_texture_get_type ()) GDK_TEXTURE #define GDK_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_TEXTURE, GdkTexture)) GDK_IS_TEXTURE #define GDK_IS_TEXTURE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_TEXTURE)) gdk_texture_get_type GType void gdk_texture_new_for_pixbuf GdkTexture * GdkPixbuf *pixbuf gdk_texture_new_from_resource GdkTexture * const char *resource_path gdk_texture_new_from_file GdkTexture * GFile *file, GError **error gdk_texture_get_width int GdkTexture *texture gdk_texture_get_height int GdkTexture *texture gdk_texture_download void GdkTexture *texture, guchar *data, gsize stride gdk_texture_save_to_png gboolean GdkTexture *texture, const char *filename GdkTextureClass GdkSurfaceEdge typedef enum { GDK_SURFACE_EDGE_NORTH_WEST, GDK_SURFACE_EDGE_NORTH, GDK_SURFACE_EDGE_NORTH_EAST, GDK_SURFACE_EDGE_WEST, GDK_SURFACE_EDGE_EAST, GDK_SURFACE_EDGE_SOUTH_WEST, GDK_SURFACE_EDGE_SOUTH, GDK_SURFACE_EDGE_SOUTH_EAST } GdkSurfaceEdge; GdkFullscreenMode typedef enum { GDK_FULLSCREEN_ON_CURRENT_MONITOR, GDK_FULLSCREEN_ON_ALL_MONITORS } GdkFullscreenMode; GdkToplevelState typedef enum { GDK_TOPLEVEL_STATE_MINIMIZED = 1 << 0, GDK_TOPLEVEL_STATE_MAXIMIZED = 1 << 1, GDK_TOPLEVEL_STATE_STICKY = 1 << 2, GDK_TOPLEVEL_STATE_FULLSCREEN = 1 << 3, GDK_TOPLEVEL_STATE_ABOVE = 1 << 4, GDK_TOPLEVEL_STATE_BELOW = 1 << 5, GDK_TOPLEVEL_STATE_FOCUSED = 1 << 6, GDK_TOPLEVEL_STATE_TILED = 1 << 7, GDK_TOPLEVEL_STATE_TOP_TILED = 1 << 8, GDK_TOPLEVEL_STATE_TOP_RESIZABLE = 1 << 9, GDK_TOPLEVEL_STATE_RIGHT_TILED = 1 << 10, GDK_TOPLEVEL_STATE_RIGHT_RESIZABLE = 1 << 11, GDK_TOPLEVEL_STATE_BOTTOM_TILED = 1 << 12, GDK_TOPLEVEL_STATE_BOTTOM_RESIZABLE = 1 << 13, GDK_TOPLEVEL_STATE_LEFT_TILED = 1 << 14, GDK_TOPLEVEL_STATE_LEFT_RESIZABLE = 1 << 15 } GdkToplevelState; GDK_TYPE_TOPLEVEL #define GDK_TYPE_TOPLEVEL (gdk_toplevel_get_type ()) gdk_toplevel_present void GdkToplevel *toplevel, GdkToplevelLayout *layout gdk_toplevel_minimize gboolean GdkToplevel *toplevel gdk_toplevel_lower gboolean GdkToplevel *toplevel gdk_toplevel_focus void GdkToplevel *toplevel, guint32 timestamp gdk_toplevel_get_state GdkToplevelState GdkToplevel *toplevel gdk_toplevel_set_title void GdkToplevel *toplevel, const char *title gdk_toplevel_set_startup_id void GdkToplevel *toplevel, const char *startup_id gdk_toplevel_set_transient_for void GdkToplevel *toplevel, GdkSurface *parent gdk_toplevel_set_modal void GdkToplevel *toplevel, gboolean modal gdk_toplevel_set_icon_list void GdkToplevel *toplevel, GList *surfaces gdk_toplevel_show_window_menu gboolean GdkToplevel *toplevel, GdkEvent *event gdk_toplevel_set_decorated void GdkToplevel *toplevel, gboolean decorated gdk_toplevel_set_deletable void GdkToplevel *toplevel, gboolean deletable gdk_toplevel_supports_edge_constraints gboolean GdkToplevel *toplevel gdk_toplevel_inhibit_system_shortcuts void GdkToplevel *toplevel, GdkEvent *event gdk_toplevel_restore_system_shortcuts void GdkToplevel *toplevel gdk_toplevel_begin_resize void GdkToplevel *toplevel, GdkSurfaceEdge edge, GdkDevice *device, int button, double x, double y, guint32 timestamp gdk_toplevel_begin_move void GdkToplevel *toplevel, GdkDevice *device, int button, double x, double y, guint32 timestamp GdkToplevel GdkToplevelInterface GDK_TYPE_TOPLEVEL_LAYOUT #define GDK_TYPE_TOPLEVEL_LAYOUT (gdk_toplevel_layout_get_type ()) gdk_toplevel_layout_get_type GType void gdk_toplevel_layout_new GdkToplevelLayout * void gdk_toplevel_layout_ref GdkToplevelLayout * GdkToplevelLayout *layout gdk_toplevel_layout_unref void GdkToplevelLayout *layout gdk_toplevel_layout_copy GdkToplevelLayout * GdkToplevelLayout *layout gdk_toplevel_layout_equal gboolean GdkToplevelLayout *layout, GdkToplevelLayout *other gdk_toplevel_layout_set_maximized void GdkToplevelLayout *layout, gboolean maximized gdk_toplevel_layout_set_fullscreen void GdkToplevelLayout *layout, gboolean fullscreen, GdkMonitor *monitor gdk_toplevel_layout_get_maximized gboolean GdkToplevelLayout *layout, gboolean *maximized gdk_toplevel_layout_get_fullscreen gboolean GdkToplevelLayout *layout, gboolean *fullscreen gdk_toplevel_layout_get_fullscreen_monitor GdkMonitor * GdkToplevelLayout *layout gdk_toplevel_layout_set_resizable void GdkToplevelLayout *layout, gboolean resizable gdk_toplevel_layout_get_resizable gboolean GdkToplevelLayout *layout GdkToplevelLayout GDK_TYPE_TOPLEVEL_SIZE #define GDK_TYPE_TOPLEVEL_SIZE (gdk_toplevel_size_get_type ()) gdk_toplevel_size_get_type GType void gdk_toplevel_size_get_bounds void GdkToplevelSize *size, int *bounds_width, int *bounds_height gdk_toplevel_size_set_size void GdkToplevelSize *size, int width, int height gdk_toplevel_size_set_min_size void GdkToplevelSize *size, int min_width, int min_height gdk_toplevel_size_set_shadow_width void GdkToplevelSize *size, int left, int right, int top, int bottom GdkToplevelSize GDK_CURRENT_TIME #define GDK_CURRENT_TIME 0L GdkRectangle struct _GdkRectangle { int x, y; int width, height; }; GdkGravity typedef enum { GDK_GRAVITY_NORTH_WEST = 1, GDK_GRAVITY_NORTH, GDK_GRAVITY_NORTH_EAST, GDK_GRAVITY_WEST, GDK_GRAVITY_CENTER, GDK_GRAVITY_EAST, GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_SOUTH, GDK_GRAVITY_SOUTH_EAST, GDK_GRAVITY_STATIC } GdkGravity; GdkModifierType typedef enum { GDK_SHIFT_MASK = 1 << 0, GDK_LOCK_MASK = 1 << 1, GDK_CONTROL_MASK = 1 << 2, GDK_ALT_MASK = 1 << 3, GDK_BUTTON1_MASK = 1 << 8, GDK_BUTTON2_MASK = 1 << 9, GDK_BUTTON3_MASK = 1 << 10, GDK_BUTTON4_MASK = 1 << 11, GDK_BUTTON5_MASK = 1 << 12, GDK_SUPER_MASK = 1 << 26, GDK_HYPER_MASK = 1 << 27, GDK_META_MASK = 1 << 28, } GdkModifierType; GDK_MODIFIER_MASK #define GDK_MODIFIER_MASK (GDK_SHIFT_MASK|GDK_LOCK_MASK|GDK_CONTROL_MASK| \ GDK_ALT_MASK|GDK_SUPER_MASK|GDK_HYPER_MASK|GDK_META_MASK| \ GDK_BUTTON1_MASK|GDK_BUTTON2_MASK|GDK_BUTTON3_MASK| \ GDK_BUTTON4_MASK|GDK_BUTTON5_MASK) GdkGLError typedef enum { GDK_GL_ERROR_NOT_AVAILABLE, GDK_GL_ERROR_UNSUPPORTED_FORMAT, GDK_GL_ERROR_UNSUPPORTED_PROFILE, GDK_GL_ERROR_COMPILATION_FAILED, GDK_GL_ERROR_LINK_FAILED } GdkGLError; GdkVulkanError typedef enum { GDK_VULKAN_ERROR_UNSUPPORTED, GDK_VULKAN_ERROR_NOT_AVAILABLE, } GdkVulkanError; GdkAxisUse typedef enum { GDK_AXIS_IGNORE, GDK_AXIS_X, GDK_AXIS_Y, GDK_AXIS_DELTA_X, GDK_AXIS_DELTA_Y, GDK_AXIS_PRESSURE, GDK_AXIS_XTILT, GDK_AXIS_YTILT, GDK_AXIS_WHEEL, GDK_AXIS_DISTANCE, GDK_AXIS_ROTATION, GDK_AXIS_SLIDER, GDK_AXIS_LAST } GdkAxisUse; GdkAxisFlags typedef enum { GDK_AXIS_FLAG_X = 1 << GDK_AXIS_X, GDK_AXIS_FLAG_Y = 1 << GDK_AXIS_Y, GDK_AXIS_FLAG_DELTA_X = 1 << GDK_AXIS_DELTA_X, GDK_AXIS_FLAG_DELTA_Y = 1 << GDK_AXIS_DELTA_Y, GDK_AXIS_FLAG_PRESSURE = 1 << GDK_AXIS_PRESSURE, GDK_AXIS_FLAG_XTILT = 1 << GDK_AXIS_XTILT, GDK_AXIS_FLAG_YTILT = 1 << GDK_AXIS_YTILT, GDK_AXIS_FLAG_WHEEL = 1 << GDK_AXIS_WHEEL, GDK_AXIS_FLAG_DISTANCE = 1 << GDK_AXIS_DISTANCE, GDK_AXIS_FLAG_ROTATION = 1 << GDK_AXIS_ROTATION, GDK_AXIS_FLAG_SLIDER = 1 << GDK_AXIS_SLIDER, } GdkAxisFlags; GdkDragAction typedef enum { GDK_ACTION_COPY = 1 << 0, GDK_ACTION_MOVE = 1 << 1, GDK_ACTION_LINK = 1 << 2, GDK_ACTION_ASK = 1 << 3 } GdkDragAction; GDK_ACTION_ALL #define GDK_ACTION_ALL (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK) GDK_DECLARE_INTERNAL_TYPE #define GDK_DECLARE_INTERNAL_TYPE(ModuleObjName, module_obj_name, MODULE, OBJ_NAME, ParentName) \ GType module_obj_name##_get_type (void); \ G_GNUC_BEGIN_IGNORE_DEPRECATIONS \ typedef struct _##ModuleObjName ModuleObjName; \ typedef struct _##ModuleObjName##Class ModuleObjName##Class; \ \ _GLIB_DEFINE_AUTOPTR_CHAINUP (ModuleObjName, ParentName) \ G_DEFINE_AUTOPTR_CLEANUP_FUNC (ModuleObjName##Class, g_type_class_unref) \ \ G_GNUC_UNUSED static inline ModuleObjName * MODULE##_##OBJ_NAME (gpointer ptr) { \ return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \ G_GNUC_UNUSED static inline ModuleObjName##Class * MODULE##_##OBJ_NAME##_CLASS (gpointer ptr) { \ return G_TYPE_CHECK_CLASS_CAST (ptr, module_obj_name##_get_type (), ModuleObjName##Class); } \ G_GNUC_UNUSED static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) { \ return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \ G_GNUC_UNUSED static inline gboolean MODULE##_IS_##OBJ_NAME##_CLASS (gpointer ptr) { \ return G_TYPE_CHECK_CLASS_TYPE (ptr, module_obj_name##_get_type ()); } \ G_GNUC_UNUSED static inline ModuleObjName##Class * MODULE##_##OBJ_NAME##_GET_CLASS (gpointer ptr) { \ return G_TYPE_INSTANCE_GET_CLASS (ptr, module_obj_name##_get_type (), ModuleObjName##Class); } \ G_GNUC_END_IGNORE_DEPRECATIONS GdkKeymapKey struct _GdkKeymapKey { guint keycode; int group; int level; }; GDK_EXTERN_VAR # define GDK_EXTERN_VAR __declspec(dllexport) GdkAppLaunchContext GdkCairoContext GdkClipboard GdkContentFormats GdkContentProvider GdkCursor GdkDevice GdkDisplay GdkDisplayManager GdkDrag GdkDrawContext GdkDrawingContext GdkDrop GdkGLContext GdkRGBA GdkRectangle GdkSeat GdkSnapshot GdkSurface GdkTexture GdkVulkanContext GDK_TYPE_VULKAN_CONTEXT #define GDK_TYPE_VULKAN_CONTEXT (gdk_vulkan_context_get_type ()) GDK_VULKAN_CONTEXT #define GDK_VULKAN_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_VULKAN_CONTEXT, GdkVulkanContext)) GDK_IS_VULKAN_CONTEXT #define GDK_IS_VULKAN_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_VULKAN_CONTEXT)) GDK_VULKAN_ERROR #define GDK_VULKAN_ERROR (gdk_vulkan_error_quark ()) gdk_vulkan_error_quark GQuark void gdk_vulkan_context_get_type GType void gdk_vulkan_strerror const char * VkResult result gdk_vulkan_context_get_instance VkInstance GdkVulkanContext *context gdk_vulkan_context_get_physical_device VkPhysicalDevice GdkVulkanContext *context gdk_vulkan_context_get_device VkDevice GdkVulkanContext *context gdk_vulkan_context_get_queue VkQueue GdkVulkanContext *context gdk_vulkan_context_get_queue_family_index uint32_t GdkVulkanContext *context gdk_vulkan_context_get_image_format VkFormat GdkVulkanContext *context gdk_vulkan_context_get_n_images uint32_t GdkVulkanContext *context gdk_vulkan_context_get_image VkImage GdkVulkanContext *context, guint id gdk_vulkan_context_get_draw_index uint32_t GdkVulkanContext *context gdk_vulkan_context_get_draw_semaphore VkSemaphore GdkVulkanContext *context GdkWaylandDevice typedef GdkDevice GdkWaylandDevice; GDK_TYPE_WAYLAND_DEVICE #define GDK_TYPE_WAYLAND_DEVICE (gdk_wayland_device_get_type ()) GDK_WAYLAND_DEVICE #define GDK_WAYLAND_DEVICE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_WAYLAND_DEVICE, GdkWaylandDevice)) GDK_WAYLAND_DEVICE_CLASS #define GDK_WAYLAND_DEVICE_CLASS(c) (G_TYPE_CHECK_CLASS_CAST ((c), GDK_TYPE_WAYLAND_DEVICE, GdkWaylandDeviceClass)) GDK_IS_WAYLAND_DEVICE #define GDK_IS_WAYLAND_DEVICE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_WAYLAND_DEVICE)) GDK_IS_WAYLAND_DEVICE_CLASS #define GDK_IS_WAYLAND_DEVICE_CLASS(c) (G_TYPE_CHECK_CLASS_TYPE ((c), GDK_TYPE_WAYLAND_DEVICE)) GDK_WAYLAND_DEVICE_GET_CLASS #define GDK_WAYLAND_DEVICE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GDK_TYPE_WAYLAND_DEVICE, GdkWaylandDeviceClass)) gdk_wayland_device_get_type GType void gdk_wayland_device_get_wl_seat struct wl_seat * GdkDevice *device gdk_wayland_device_get_wl_pointer struct wl_pointer * GdkDevice *device gdk_wayland_device_get_wl_keyboard struct wl_keyboard * GdkDevice *device gdk_wayland_device_get_node_path const char * GdkDevice *device GdkWaylandDevice GdkWaylandDeviceClass GdkWaylandDisplay typedef GdkDisplay GdkWaylandDisplay; GDK_TYPE_WAYLAND_DISPLAY #define GDK_TYPE_WAYLAND_DISPLAY (gdk_wayland_display_get_type()) GDK_WAYLAND_DISPLAY #define GDK_WAYLAND_DISPLAY(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_DISPLAY, GdkWaylandDisplay)) GDK_WAYLAND_DISPLAY_CLASS #define GDK_WAYLAND_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_WAYLAND_DISPLAY, GdkWaylandDisplayClass)) GDK_IS_WAYLAND_DISPLAY #define GDK_IS_WAYLAND_DISPLAY(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_DISPLAY)) GDK_IS_WAYLAND_DISPLAY_CLASS #define GDK_IS_WAYLAND_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_WAYLAND_DISPLAY)) GDK_WAYLAND_DISPLAY_GET_CLASS #define GDK_WAYLAND_DISPLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_WAYLAND_DISPLAY, GdkWaylandDisplayClass)) gdk_wayland_display_get_type GType void gdk_wayland_display_get_wl_display struct wl_display * GdkDisplay *display gdk_wayland_display_get_wl_compositor struct wl_compositor * GdkDisplay *display gdk_wayland_display_set_cursor_theme void GdkDisplay *display, const char *name, int size gdk_wayland_display_get_startup_notification_id const char * GdkDisplay *display gdk_wayland_display_set_startup_notification_id void GdkDisplay *display, const char *startup_id gdk_wayland_display_query_registry gboolean GdkDisplay *display, const char *global GdkWaylandDisplay GdkWaylandDisplayClass GDK_TYPE_WAYLAND_GL_CONTEXT #define GDK_TYPE_WAYLAND_GL_CONTEXT (gdk_wayland_gl_context_get_type ()) GDK_WAYLAND_GL_CONTEXT #define GDK_WAYLAND_GL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_WAYLAND_GL_CONTEXT, GdkWaylandGLContext)) GDK_WAYLAND_IS_GL_CONTEXT #define GDK_WAYLAND_IS_GL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_WAYLAND_GL_CONTEXT)) gdk_wayland_gl_context_get_type GType void GdkWaylandGLContext GdkWaylandGLContextClass GDK_TYPE_WAYLAND_MONITOR #define GDK_TYPE_WAYLAND_MONITOR (gdk_wayland_monitor_get_type ()) GDK_WAYLAND_MONITOR #define GDK_WAYLAND_MONITOR(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_MONITOR, GdkWaylandMonitor)) GDK_IS_WAYLAND_MONITOR #define GDK_IS_WAYLAND_MONITOR(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_MONITOR)) gdk_wayland_monitor_get_type GType void gdk_wayland_monitor_get_wl_output struct wl_output * GdkMonitor *monitor GdkWaylandMonitor GdkWaylandMonitorClass GdkWaylandSeat typedef GdkSeat GdkWaylandSeat; GDK_TYPE_WAYLAND_SEAT #define GDK_TYPE_WAYLAND_SEAT (gdk_wayland_seat_get_type ()) GDK_WAYLAND_SEAT #define GDK_WAYLAND_SEAT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_WAYLAND_SEAT, GdkWaylandSeat)) GDK_IS_WAYLAND_SEAT #define GDK_IS_WAYLAND_SEAT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_WAYLAND_SEAT)) gdk_wayland_seat_get_type GType void gdk_wayland_seat_get_wl_seat struct wl_seat * GdkSeat *seat GdkWaylandSeat GdkWaylandSeatClass GdkWaylandSurface typedef GdkSurface GdkWaylandSurface; GdkWaylandToplevel typedef GdkToplevel GdkWaylandToplevel; GdkWaylandPopup typedef GdkPopup GdkWaylandPopup; GDK_TYPE_WAYLAND_SURFACE #define GDK_TYPE_WAYLAND_SURFACE (gdk_wayland_surface_get_type()) GDK_WAYLAND_SURFACE #define GDK_WAYLAND_SURFACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_SURFACE, GdkWaylandSurface)) GDK_IS_WAYLAND_SURFACE #define GDK_IS_WAYLAND_SURFACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_SURFACE)) GDK_TYPE_WAYLAND_TOPLEVEL #define GDK_TYPE_WAYLAND_TOPLEVEL (gdk_wayland_toplevel_get_type()) GDK_WAYLAND_TOPLEVEL #define GDK_WAYLAND_TOPLEVEL(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_TOPLEVEL, GdkWaylandToplevel)) GDK_IS_WAYLAND_TOPLEVEL #define GDK_IS_WAYLAND_TOPLEVEL(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_TOPLEVEL)) GDK_TYPE_WAYLAND_POPUP #define GDK_TYPE_WAYLAND_POPUP (gdk_wayland_popup_get_type()) GDK_WAYLAND_POPUP #define GDK_WAYLAND_POPUP(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_WAYLAND_POPUP, GdkWaylandPopup)) GDK_IS_WAYLAND_POPUP #define GDK_IS_WAYLAND_POPUP(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_POPUP)) gdk_wayland_surface_get_type GType void gdk_wayland_toplevel_get_type GType void gdk_wayland_popup_get_type GType void gdk_wayland_surface_get_wl_surface struct wl_surface * GdkSurface *surface GdkWaylandToplevelExported void GdkToplevel *toplevel, const char *handle, gpointer user_data gdk_wayland_toplevel_export_handle gboolean GdkToplevel *toplevel, GdkWaylandToplevelExported callback, gpointer user_data, GDestroyNotify destroy_func gdk_wayland_toplevel_unexport_handle void GdkToplevel *toplevel gdk_wayland_toplevel_set_transient_for_exported gboolean GdkToplevel *toplevel, const char *parent_handle_str gdk_wayland_toplevel_set_application_id void GdkToplevel *toplevel, const char *application_id GdkWaylandPopup GdkWaylandSurface GdkWaylandToplevel GDK_TYPE_X11_APP_LAUNCH_CONTEXT #define GDK_TYPE_X11_APP_LAUNCH_CONTEXT (gdk_x11_app_launch_context_get_type ()) GDK_X11_APP_LAUNCH_CONTEXT #define GDK_X11_APP_LAUNCH_CONTEXT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_X11_APP_LAUNCH_CONTEXT, GdkX11AppLaunchContext)) GDK_X11_APP_LAUNCH_CONTEXT_CLASS #define GDK_X11_APP_LAUNCH_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_X11_APP_LAUNCH_CONTEXT, GdkX11AppLaunchContextClass)) GDK_IS_X11_APP_LAUNCH_CONTEXT #define GDK_IS_X11_APP_LAUNCH_CONTEXT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_X11_APP_LAUNCH_CONTEXT)) GDK_IS_X11_APP_LAUNCH_CONTEXT_CLASS #define GDK_IS_X11_APP_LAUNCH_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_X11_APP_LAUNCH_CONTEXT)) GDK_X11_APP_LAUNCH_CONTEXT_GET_CLASS #define GDK_X11_APP_LAUNCH_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_X11_APP_LAUNCH_CONTEXT, GdkX11AppLaunchContextClass)) GdkX11AppLaunchContext typedef GdkAppLaunchContext GdkX11AppLaunchContext; gdk_x11_app_launch_context_get_type GType void GdkX11AppLaunchContext GdkX11AppLaunchContextClass GDK_TYPE_X11_DEVICE_XI2 #define GDK_TYPE_X11_DEVICE_XI2 (gdk_x11_device_xi2_get_type ()) GDK_X11_DEVICE_XI2 #define GDK_X11_DEVICE_XI2(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_X11_DEVICE_XI2, GdkX11DeviceXI2)) GDK_X11_DEVICE_XI2_CLASS #define GDK_X11_DEVICE_XI2_CLASS(c) (G_TYPE_CHECK_CLASS_CAST ((c), GDK_TYPE_X11_DEVICE_XI2, GdkX11DeviceXI2Class)) GDK_IS_X11_DEVICE_XI2 #define GDK_IS_X11_DEVICE_XI2(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_X11_DEVICE_XI2)) GDK_IS_X11_DEVICE_XI2_CLASS #define GDK_IS_X11_DEVICE_XI2_CLASS(c) (G_TYPE_CHECK_CLASS_TYPE ((c), GDK_TYPE_X11_DEVICE_XI2)) GDK_X11_DEVICE_XI2_GET_CLASS #define GDK_X11_DEVICE_XI2_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GDK_TYPE_X11_DEVICE_XI2, GdkX11DeviceXI2Class)) GdkX11DeviceType typedef enum { GDK_X11_DEVICE_TYPE_LOGICAL, GDK_X11_DEVICE_TYPE_PHYSICAL, GDK_X11_DEVICE_TYPE_FLOATING } GdkX11DeviceType; gdk_x11_device_xi2_get_type GType void GdkX11DeviceXI2 GdkX11DeviceXI2Class gdk_x11_device_get_id int GdkDevice *device GDK_TYPE_X11_DEVICE_MANAGER_XI2 #define GDK_TYPE_X11_DEVICE_MANAGER_XI2 (gdk_x11_device_manager_xi2_get_type ()) GDK_X11_DEVICE_MANAGER_XI2 #define GDK_X11_DEVICE_MANAGER_XI2(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GDK_TYPE_X11_DEVICE_MANAGER_XI2, GdkX11DeviceManagerXI2)) GDK_X11_DEVICE_MANAGER_XI2_CLASS #define GDK_X11_DEVICE_MANAGER_XI2_CLASS(c) (G_TYPE_CHECK_CLASS_CAST ((c), GDK_TYPE_X11_DEVICE_MANAGER_XI2, GdkX11DeviceManagerXI2Class)) GDK_IS_X11_DEVICE_MANAGER_XI2 #define GDK_IS_X11_DEVICE_MANAGER_XI2(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GDK_TYPE_X11_DEVICE_MANAGER_XI2)) GDK_IS_X11_DEVICE_MANAGER_XI2_CLASS #define GDK_IS_X11_DEVICE_MANAGER_XI2_CLASS(c) (G_TYPE_CHECK_CLASS_TYPE ((c), GDK_TYPE_X11_DEVICE_MANAGER_XI2)) GDK_X11_DEVICE_MANAGER_XI2_GET_CLASS #define GDK_X11_DEVICE_MANAGER_XI2_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GDK_TYPE_X11_DEVICE_MANAGER_XI2, GdkX11DeviceManagerXI2Class)) gdk_x11_device_manager_xi2_get_type GType void GdkX11DeviceManagerXI2 GdkX11DeviceManagerXI2Class gdk_x11_device_manager_lookup GdkDevice * GdkX11DeviceManagerXI2 *device_manager, int device_id GdkX11Display typedef GdkDisplay GdkX11Display; GDK_TYPE_X11_DISPLAY #define GDK_TYPE_X11_DISPLAY (gdk_x11_display_get_type()) GDK_X11_DISPLAY #define GDK_X11_DISPLAY(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_X11_DISPLAY, GdkX11Display)) GDK_X11_DISPLAY_CLASS #define GDK_X11_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_X11_DISPLAY, GdkX11DisplayClass)) GDK_IS_X11_DISPLAY #define GDK_IS_X11_DISPLAY(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_X11_DISPLAY)) GDK_IS_X11_DISPLAY_CLASS #define GDK_IS_X11_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_X11_DISPLAY)) GDK_X11_DISPLAY_GET_CLASS #define GDK_X11_DISPLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_X11_DISPLAY, GdkX11DisplayClass)) gdk_x11_display_get_type GType void gdk_x11_display_open GdkDisplay * const char *display_name gdk_x11_display_get_xdisplay Display * GdkDisplay *display gdk_x11_display_get_xscreen Screen * GdkDisplay *display gdk_x11_display_get_xrootwindow Window GdkDisplay *display gdk_x11_display_get_xcursor Cursor GdkDisplay *display, GdkCursor *cursor GDK_DISPLAY_XDISPLAY #define GDK_DISPLAY_XDISPLAY(display) (gdk_x11_display_get_xdisplay (display)) gdk_x11_display_get_user_time guint32 GdkDisplay *display gdk_x11_display_get_startup_notification_id const char * GdkDisplay *display gdk_x11_display_set_startup_notification_id void GdkDisplay *display, const char *startup_id gdk_x11_display_set_program_class void GdkDisplay *display, const char *program_class gdk_x11_display_set_cursor_theme void GdkDisplay *display, const char *theme, const int size gdk_x11_display_broadcast_startup_message void GdkDisplay *display, const char *message_type, ... gdk_x11_lookup_xdisplay GdkDisplay * Display *xdisplay gdk_x11_display_get_screen GdkX11Screen * GdkDisplay *display gdk_x11_display_get_primary_monitor GdkMonitor * GdkDisplay *display gdk_x11_display_grab void GdkDisplay *display gdk_x11_display_ungrab void GdkDisplay *display gdk_x11_display_set_surface_scale void GdkDisplay *display, int scale gdk_x11_display_error_trap_push void GdkDisplay *display gdk_x11_display_error_trap_pop int GdkDisplay *display gdk_x11_display_error_trap_pop_ignored void GdkDisplay *display gdk_x11_set_sm_client_id void const char *sm_client_id gdk_x11_display_get_default_group GdkSurface * GdkDisplay *display GdkX11Display GdkX11DisplayClass GDK_TYPE_X11_DRAG #define GDK_TYPE_X11_DRAG (gdk_x11_drag_get_type ()) GDK_X11_DRAG #define GDK_X11_DRAG(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_X11_DRAG, GdkX11Drag)) GDK_X11_DRAG_CLASS #define GDK_X11_DRAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_X11_DRAG, GdkX11DragClass)) GDK_IS_X11_DRAG #define GDK_IS_X11_DRAG(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_X11_DRAG)) GDK_IS_X11_DRAG_CLASS #define GDK_IS_X11_DRAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_X11_DRAG)) GDK_X11_DRAG_GET_CLASS #define GDK_X11_DRAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_X11_DRAG, GdkX11DragClass)) GdkX11Drag typedef GdkDrag GdkX11Drag; gdk_x11_drag_get_type GType void GdkX11Drag GdkX11DragClass GDK_TYPE_X11_GL_CONTEXT #define GDK_TYPE_X11_GL_CONTEXT (gdk_x11_gl_context_get_type ()) GDK_X11_GL_CONTEXT #define GDK_X11_GL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GDK_TYPE_X11_GL_CONTEXT, GdkX11GLContext)) GDK_X11_IS_GL_CONTEXT #define GDK_X11_IS_GL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GDK_TYPE_X11_GL_CONTEXT)) gdk_x11_gl_context_get_type GType void gdk_x11_display_get_glx_version gboolean GdkDisplay *display, int *major, int *minor GdkX11GLContext GdkX11GLContextClass GDK_TYPE_X11_MONITOR #define GDK_TYPE_X11_MONITOR (gdk_x11_monitor_get_type ()) GDK_X11_MONITOR #define GDK_X11_MONITOR(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_X11_MONITOR, GdkX11Monitor)) GDK_IS_X11_MONITOR #define GDK_IS_X11_MONITOR(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_X11_MONITOR)) gdk_x11_monitor_get_type GType void gdk_x11_monitor_get_output XID GdkMonitor *monitor gdk_x11_monitor_get_workarea void GdkMonitor *monitor, GdkRectangle *workarea GdkX11Monitor GdkX11MonitorClass gdk_x11_get_xatom_by_name_for_display Atom GdkDisplay *display, const char *atom_name gdk_x11_get_xatom_name_for_display const char * GdkDisplay *display, Atom xatom GDK_TYPE_X11_SCREEN #define GDK_TYPE_X11_SCREEN (gdk_x11_screen_get_type ()) GDK_X11_SCREEN #define GDK_X11_SCREEN(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_X11_SCREEN, GdkX11Screen)) GDK_X11_SCREEN_CLASS #define GDK_X11_SCREEN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_X11_SCREEN, GdkX11ScreenClass)) GDK_IS_X11_SCREEN #define GDK_IS_X11_SCREEN(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_X11_SCREEN)) GDK_IS_X11_SCREEN_CLASS #define GDK_IS_X11_SCREEN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_X11_SCREEN)) GDK_X11_SCREEN_GET_CLASS #define GDK_X11_SCREEN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_X11_SCREEN, GdkX11ScreenClass)) gdk_x11_screen_get_type GType void gdk_x11_screen_get_xscreen Screen * GdkX11Screen *screen gdk_x11_screen_get_screen_number int GdkX11Screen *screen gdk_x11_screen_get_window_manager_name const char * GdkX11Screen *screen gdk_x11_screen_supports_net_wm_hint gboolean GdkX11Screen *screen, const char *property_name gdk_x11_screen_get_monitor_output XID GdkX11Screen *screen, int monitor_num gdk_x11_screen_get_number_of_desktops guint32 GdkX11Screen *screen gdk_x11_screen_get_current_desktop guint32 GdkX11Screen *screen GdkX11Screen GdkX11ScreenClass gdk_x11_display_text_property_to_text_list int GdkDisplay *display, const char *encoding, int format, const guchar *text, int length, char ***list gdk_x11_free_text_list void char **list gdk_x11_display_string_to_compound_text int GdkDisplay *display, const char *str, const char **encoding, int *format, guchar **ctext, int *length gdk_x11_display_utf8_to_compound_text gboolean GdkDisplay *display, const char *str, const char **encoding, int *format, guchar **ctext, int *length gdk_x11_free_compound_text void guchar *ctext GDK_TYPE_X11_SURFACE #define GDK_TYPE_X11_SURFACE (gdk_x11_surface_get_type ()) GDK_X11_SURFACE #define GDK_X11_SURFACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_X11_SURFACE, GdkX11Surface)) GDK_X11_SURFACE_CLASS #define GDK_X11_SURFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_X11_SURFACE, GdkX11SurfaceClass)) GDK_IS_X11_SURFACE #define GDK_IS_X11_SURFACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_X11_SURFACE)) GDK_IS_X11_SURFACE_CLASS #define GDK_IS_X11_SURFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_X11_SURFACE)) GDK_X11_SURFACE_GET_CLASS #define GDK_X11_SURFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_X11_SURFACE, GdkX11SurfaceClass)) GdkX11Surface typedef GdkSurface GdkX11Surface; gdk_x11_surface_get_type GType void gdk_x11_surface_get_xid Window GdkSurface *surface gdk_x11_surface_set_user_time void GdkSurface *surface, guint32 timestamp gdk_x11_surface_set_utf8_property void GdkSurface *surface, const char *name, const char *value gdk_x11_surface_set_theme_variant void GdkSurface *surface, const char *variant gdk_x11_surface_move_to_current_desktop void GdkSurface *surface gdk_x11_surface_get_desktop guint32 GdkSurface *surface gdk_x11_surface_move_to_desktop void GdkSurface *surface, guint32 desktop gdk_x11_surface_set_frame_sync_enabled void GdkSurface *surface, gboolean frame_sync_enabled GDK_SURFACE_XDISPLAY #define GDK_SURFACE_XDISPLAY(win) (GDK_DISPLAY_XDISPLAY (gdk_surface_get_display (win))) GDK_SURFACE_XID #define GDK_SURFACE_XID(win) (gdk_x11_surface_get_xid (win)) gdk_x11_get_server_time guint32 GdkSurface *surface gdk_x11_surface_lookup_for_display GdkSurface * GdkDisplay *display, Window window gdk_x11_surface_set_skip_taskbar_hint void GdkSurface *surface, gboolean skips_taskbar gdk_x11_surface_set_skip_pager_hint void GdkSurface *surface, gboolean skips_pager gdk_x11_surface_set_urgency_hint void GdkSurface *surface, gboolean urgent gdk_x11_surface_set_group void GdkSurface *surface, GdkSurface *leader gdk_x11_surface_get_group GdkSurface * GdkSurface *surface GdkX11Surface GdkX11SurfaceClass GDK_XID_TO_POINTER #define GDK_XID_TO_POINTER(xid) GUINT_TO_POINTER(xid) GDK_POINTER_TO_XID #define GDK_POINTER_TO_XID(pointer) GPOINTER_TO_UINT(pointer) GDK_WINDOWING_X11 #define GDK_WINDOWING_X11 GDK_WINDOWING_WAYLAND #define GDK_WINDOWING_WAYLAND GDK_RENDERING_VULKAN #define GDK_RENDERING_VULKAN GDK_TYPE_INPUT_SOURCE #define GDK_TYPE_INPUT_SOURCE (gdk_input_source_get_type ()) GDK_TYPE_DEVICE_PAD_FEATURE #define GDK_TYPE_DEVICE_PAD_FEATURE (gdk_device_pad_feature_get_type ()) GDK_TYPE_DEVICE_TOOL_TYPE #define GDK_TYPE_DEVICE_TOOL_TYPE (gdk_device_tool_type_get_type ()) GDK_TYPE_DRAG_CANCEL_REASON #define GDK_TYPE_DRAG_CANCEL_REASON (gdk_drag_cancel_reason_get_type ()) GDK_TYPE_EVENT_TYPE #define GDK_TYPE_EVENT_TYPE (gdk_event_type_get_type ()) GDK_TYPE_TOUCHPAD_GESTURE_PHASE #define GDK_TYPE_TOUCHPAD_GESTURE_PHASE (gdk_touchpad_gesture_phase_get_type ()) GDK_TYPE_SCROLL_DIRECTION #define GDK_TYPE_SCROLL_DIRECTION (gdk_scroll_direction_get_type ()) GDK_TYPE_NOTIFY_TYPE #define GDK_TYPE_NOTIFY_TYPE (gdk_notify_type_get_type ()) GDK_TYPE_CROSSING_MODE #define GDK_TYPE_CROSSING_MODE (gdk_crossing_mode_get_type ()) GDK_TYPE_KEY_MATCH #define GDK_TYPE_KEY_MATCH (gdk_key_match_get_type ()) GDK_TYPE_FRAME_CLOCK_PHASE #define GDK_TYPE_FRAME_CLOCK_PHASE (gdk_frame_clock_phase_get_type ()) GDK_TYPE_MEMORY_FORMAT #define GDK_TYPE_MEMORY_FORMAT (gdk_memory_format_get_type ()) GDK_TYPE_SUBPIXEL_LAYOUT #define GDK_TYPE_SUBPIXEL_LAYOUT (gdk_subpixel_layout_get_type ()) GDK_TYPE_PAINTABLE_FLAGS #define GDK_TYPE_PAINTABLE_FLAGS (gdk_paintable_flags_get_type ()) GDK_TYPE_ANCHOR_HINTS #define GDK_TYPE_ANCHOR_HINTS (gdk_anchor_hints_get_type ()) GDK_TYPE_SEAT_CAPABILITIES #define GDK_TYPE_SEAT_CAPABILITIES (gdk_seat_capabilities_get_type ()) GDK_TYPE_SURFACE_EDGE #define GDK_TYPE_SURFACE_EDGE (gdk_surface_edge_get_type ()) GDK_TYPE_FULLSCREEN_MODE #define GDK_TYPE_FULLSCREEN_MODE (gdk_fullscreen_mode_get_type ()) GDK_TYPE_TOPLEVEL_STATE #define GDK_TYPE_TOPLEVEL_STATE (gdk_toplevel_state_get_type ()) GDK_TYPE_GRAVITY #define GDK_TYPE_GRAVITY (gdk_gravity_get_type ()) GDK_TYPE_MODIFIER_TYPE #define GDK_TYPE_MODIFIER_TYPE (gdk_modifier_type_get_type ()) GDK_TYPE_GL_ERROR #define GDK_TYPE_GL_ERROR (gdk_gl_error_get_type ()) GDK_TYPE_VULKAN_ERROR #define GDK_TYPE_VULKAN_ERROR (gdk_vulkan_error_get_type ()) GDK_TYPE_AXIS_USE #define GDK_TYPE_AXIS_USE (gdk_axis_use_get_type ()) GDK_TYPE_AXIS_FLAGS #define GDK_TYPE_AXIS_FLAGS (gdk_axis_flags_get_type ()) GDK_TYPE_DRAG_ACTION #define GDK_TYPE_DRAG_ACTION (gdk_drag_action_get_type ()) GDK_MAJOR_VERSION #define GDK_MAJOR_VERSION (4) GDK_MINOR_VERSION #define GDK_MINOR_VERSION (0) GDK_MICRO_VERSION #define GDK_MICRO_VERSION (3) GDK_DEPRECATED #define GDK_DEPRECATED _GDK_EXTERN GDK_DEPRECATED_FOR #define GDK_DEPRECATED_FOR(f) _GDK_EXTERN GDK_UNAVAILABLE #define GDK_UNAVAILABLE(maj,min) _GDK_EXTERN GDK_VERSION_4_0 #define GDK_VERSION_4_0 (G_ENCODE_VERSION (4, 0)) GDK_VERSION_CUR_STABLE # define GDK_VERSION_CUR_STABLE (G_ENCODE_VERSION (GDK_MAJOR_VERSION, GDK_MINOR_VERSION + 1)) GDK_VERSION_PREV_STABLE # define GDK_VERSION_PREV_STABLE (G_ENCODE_VERSION (GDK_MAJOR_VERSION, GDK_MINOR_VERSION - 1)) GDK_VERSION_MIN_REQUIRED # define GDK_VERSION_MIN_REQUIRED (GDK_VERSION_CUR_STABLE) GDK_VERSION_MAX_ALLOWED # define GDK_VERSION_MAX_ALLOWED GDK_VERSION_MIN_REQUIRED GDK_AVAILABLE_IN_ALL #define GDK_AVAILABLE_IN_ALL _GDK_EXTERN GDK_AVAILABLE_IN_4_0 # define GDK_AVAILABLE_IN_4_0 GDK_UNAVAILABLE(4, 0) GDK_DEPRECATED_IN_4_0 # define GDK_DEPRECATED_IN_4_0 GDK_DEPRECATED GDK_DEPRECATED_IN_4_0_FOR # define GDK_DEPRECATED_IN_4_0_FOR(f) GDK_DEPRECATED_FOR(f) docs/reference/gdk/gdk4.signals0000664000175000017500000001060614010071746016557 0ustar mclasenmclasen GdkClipboard::changed void l GdkClipboard *gdkclipboard GdkContentProvider::content-changed void l GdkContentProvider *gdkcontentprovider GdkDevice::changed void l GdkDevice *gdkdevice GdkDevice::tool-changed void l GdkDevice *gdkdevice GdkDeviceTool *arg1 GdkDisplay::closed void l GdkDisplay *gdkdisplay gboolean arg1 GdkDisplay::opened void l GdkDisplay *gdkdisplay GdkDisplay::seat-added void l GdkDisplay *gdkdisplay GdkSeat *arg1 GdkDisplay::seat-removed void l GdkDisplay *gdkdisplay GdkSeat *arg1 GdkDisplay::setting-changed void l GdkDisplay *gdkdisplay char *arg1 GdkDisplayManager::display-opened void l GdkDisplayManager *gdkdisplaymanager GdkDisplay *arg1 GdkDrag::cancel void l GdkDrag *gdkdrag GdkDragCancelReason arg1 GdkDrag::dnd-finished void l GdkDrag *gdkdrag GdkDrag::drop-performed void l GdkDrag *gdkdrag GdkFrameClock::after-paint void l GdkFrameClock *gdkframeclock GdkFrameClock::before-paint void l GdkFrameClock *gdkframeclock GdkFrameClock::flush-events void l GdkFrameClock *gdkframeclock GdkFrameClock::layout void l GdkFrameClock *gdkframeclock GdkFrameClock::paint void l GdkFrameClock *gdkframeclock GdkFrameClock::resume-events void l GdkFrameClock *gdkframeclock GdkFrameClock::update void l GdkFrameClock *gdkframeclock GdkMonitor::invalidate void f GdkMonitor *gdkmonitor GdkPaintable::invalidate-contents void l GdkPaintable *gdkpaintable GdkPaintable::invalidate-size void l GdkPaintable *gdkpaintable GdkSeat::device-added void l GdkSeat *gdkseat GdkDevice *arg1 GdkSeat::device-removed void l GdkSeat *gdkseat GdkDevice *arg1 GdkSeat::tool-added void l GdkSeat *gdkseat GdkDeviceTool *arg1 GdkSeat::tool-removed void l GdkSeat *gdkseat GdkDeviceTool *arg1 GdkSurface::enter-monitor void f GdkSurface *gdksurface GdkMonitor *arg1 GdkSurface::event gboolean l GdkSurface *gdksurface gpointer arg1 GdkSurface::layout void f GdkSurface *gdksurface int arg1 int arg2 GdkSurface::leave-monitor void f GdkSurface *gdksurface GdkMonitor *arg1 GdkSurface::render gboolean l GdkSurface *gdksurface CairoRegion *arg1 GdkToplevel::compute-size void l GdkToplevel *gdktoplevel GdkToplevelSize *arg1 GdkVulkanContext::images-updated void l GdkVulkanContext *gdkvulkancontext docs/reference/gdk/gdk4.hierarchy0000664000175000017500000000126214010071746017073 0ustar mclasenmclasenGObject GAppLaunchContext GdkAppLaunchContext GdkClipboard GdkContentDeserializer GdkContentProvider GdkContentSerializer GdkCursor GdkDevice GdkDeviceTool GdkDisplay GdkDisplayManager GdkDrag GdkSurface GdkDrop GdkFrameClock GdkDrawContext GdkGLContext GdkVulkanContext GdkTexture GdkGLTexture GdkMemoryTexture GdkMonitor GdkSeat GdkSnapshot GInterface GTypePlugin GAsyncResult GdkDevicePad GdkDragSurface GdkPaintable GdkPopup GdkToplevel GInitable GAppInfo GBoxed GValueArray GdkContentFormats GdkPopupLayout GdkRGBA GdkToplevelLayout GdkRectangle CairoRectangleInt CairoRegion GStrv GdkEvent docs/reference/gdk/gdk4.interfaces0000664000175000017500000000026114010071746017236 0ustar mclasenmclasenGdkContentDeserializer GAsyncResult GdkContentSerializer GAsyncResult GdkVulkanContext GInitable GdkTexture GdkPaintable GdkGLTexture GdkPaintable GdkMemoryTexture GdkPaintable docs/reference/gdk/gdk4.prerequisites0000664000175000017500000000025114010071746020016 0ustar mclasenmclasenGAsyncResult GObject GdkDevicePad GdkDevice GdkDragSurface GdkSurface GdkPaintable GObject GdkPopup GdkSurface GdkToplevel GdkSurface GInitable GObject GAppInfo GObject docs/reference/gdk/gdk4.args0000664000175000017500000003763014010071746016061 0ustar mclasenmclasen GdkAppLaunchContext::display GdkDisplay* rwX Display Display. GdkClipboard::content GdkContentProvider* r Content Provider of the clipboard's content. GdkClipboard::display GdkDisplay* rwX Display Display owning this clipboard. GdkClipboard::formats GdkContentFormats* r Formats The possible formats for data. GdkClipboard::local gboolean r Local If the contents are owned by this process. TRUE GdkContentProvider::formats GdkContentFormats* r Formats The possible formats for data. GdkContentProvider::storable-formats GdkContentFormats* r Storable formats The formats that data should be stored in. GdkCursor::fallback GdkCursor* rwX Fallback Cursor image to fall back to if this cursor cannot be displayed. GdkCursor::hotspot-x int >= 0 rwX Hotspot X Horizontal offset of the cursor hotspot. 0 GdkCursor::hotspot-y int >= 0 rwX Hotspot Y Vertical offset of the cursor hotspot. 0 GdkCursor::name char* rwX Name Name of this cursor. NULL GdkCursor::texture GdkTexture* rwX Texture The texture displayed by this cursor. GdkDevice::caps-lock-state gboolean r Caps lock state Whether the keyboard caps lock is on. FALSE GdkDevice::direction PangoDirection r Direction The direction of the current layout of the keyboard. PANGO_DIRECTION_NEUTRAL GdkDevice::display GdkDisplay* rwX Device Display Display which the device belongs to. GdkDevice::has-bidi-layouts gboolean r Has bidi layouts Whether the keyboard has bidi layouts. FALSE GdkDevice::has-cursor gboolean rwX Whether the device has a cursor Whether there is a visible cursor following device motion. FALSE GdkDevice::modifier-state GdkModifierType r Modifier state The modifier state of the keyboard. GdkDevice::n-axes guint r Number of axes in the device Number of axes in the device. 0 GdkDevice::name char* rwX Device name Device name. NULL GdkDevice::num-lock-state gboolean r Num lock state Whether the keyboard num lock is on. FALSE GdkDevice::num-touches guint rwX Number of concurrent touches Number of concurrent touches. 0 GdkDevice::product-id char* rwX Product ID Product ID. NULL GdkDevice::scroll-lock-state gboolean r Scroll lock state Whether the keyboard scroll lock is on. FALSE GdkDevice::seat GdkSeat* rw Seat Seat. GdkDevice::source GdkInputSource rwX Input source Source type for the device. GDK_SOURCE_MOUSE GdkDevice::tool GdkDeviceTool* r Tool The tool that is currently used with this device. GdkDevice::vendor-id char* rwX Vendor ID Vendor ID. NULL GdkDeviceTool::axes GdkAxisFlags rwX Axes Tool axes. GdkDeviceTool::hardware-id guint64 rwX Hardware ID Hardware ID. 0 GdkDeviceTool::serial guint64 rwX Serial Serial number. 0 GdkDeviceTool::tool-type GdkDeviceToolType rwX Tool type Tool type. GDK_DEVICE_TOOL_TYPE_UNKNOWN GdkDisplay::composited gboolean r Composited Composited. TRUE GdkDisplay::input-shapes gboolean r Input shapes Input shapes. TRUE GdkDisplay::rgba gboolean r RGBA RGBA. TRUE GdkDisplayManager::default-display GdkDisplay* rw Default Display The default display for GDK. GdkDrag::actions GdkDragAction rw Actions The possible actions. GdkDrag::content GdkContentProvider* rwX Content The content being dragged. GdkDrag::device GdkDevice* rwX Device The device performing the drag. GdkDrag::display GdkDisplay* r Display Display this drag belongs to. GdkDrag::formats GdkContentFormats* rwX Formats The possible formats for data. GdkDrag::selected-action GdkDragAction rw Selected action The currently selected action. GdkDrag::surface GdkSurface* rwX Surface The surface where the drag originates. GdkDrop::actions GdkDragAction rwX Actions The possible actions for this drop. GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK GdkDrop::device GdkDevice* rwX Device The device performing the drop. GdkDrop::display GdkDisplay* r Display Display this drag belongs to. GdkDrop::drag GdkDrag* rwX Drag The drag that initiated this drop. GdkDrop::formats GdkContentFormats* rwX Formats The possible formats for data. GdkDrop::surface GdkSurface* rwX Surface The surface the drop is happening on. GdkGLContext::shared-context GdkGLContext* rwX Shared context The GL context this context shares data with. GdkMonitor::connector char* r Connector The connector name. NULL GdkMonitor::display GdkDisplay* rwX Display The display of the monitor. GdkMonitor::geometry GdkRectangle* r Geometry The geometry of the monitor. GdkMonitor::height-mm int >= 0 r Physical height The height of the monitor, in millimeters. 0 GdkMonitor::manufacturer char* r Manufacturer The manufacturer name. NULL GdkMonitor::model char* r Model The model name. NULL GdkMonitor::refresh-rate int >= 0 r Refresh rate The refresh rate, in millihertz. 0 GdkMonitor::scale-factor int >= 0 r Scale factor The scale factor. 1 GdkMonitor::subpixel-layout GdkSubpixelLayout r Subpixel layout The subpixel layout. GDK_SUBPIXEL_LAYOUT_UNKNOWN GdkMonitor::valid gboolean r Valid Whether the monitor is still valid. TRUE GdkMonitor::width-mm int >= 0 r Physical width The width of the monitor, in millimeters. 0 GdkPopup::autohide gboolean rwX Autohide Whether to hide on outside clicks. FALSE GdkPopup::parent GdkSurface* rwX Parent The parent surface. GdkSeat::display GdkDisplay* rwX Display Display. GdkSurface::cursor GdkCursor* rw Cursor Cursor. GdkSurface::display GdkDisplay* rwX Display Display. GdkSurface::frame-clock GdkFrameClock* rwX Frame Clock Frame Clock. GdkSurface::height int >= 0 r Height Height. 0 GdkSurface::mapped gboolean r Mapped Mapped. FALSE GdkSurface::scale-factor int >= 1 r Scale factor Scale factor. 1 GdkSurface::width int >= 0 r Width Width. 0 GdkTexture::height int >= 1 rwX Height The height of the texture. 1 GdkTexture::width int >= 1 rwX Width The width of the texture. 1 GdkToplevel::decorated gboolean rw Decorated Decorated. FALSE GdkToplevel::deletable gboolean rw Deletable Deletable. FALSE GdkToplevel::fullscreen-mode GdkFullscreenMode rw Fullscreen mode Fullscreen mode. GDK_FULLSCREEN_ON_CURRENT_MONITOR GdkToplevel::icon-list gpointer rw Icon List The list of icon textures. GdkToplevel::modal gboolean rw Modal Whether the surface is modal. FALSE GdkToplevel::shortcuts-inhibited gboolean r Shortcuts inhibited Whether keyboard shortcuts are inhibited. FALSE GdkToplevel::startup-id char* rw Startup ID The startup ID of the surface. NULL GdkToplevel::state GdkToplevelState r State State. GdkToplevel::title char* rw Title The title of the surface. NULL GdkToplevel::transient-for GdkSurface* rw Transient For The transient parent of the surface. docs/reference/gdk/gdk4.actions0000664000175000017500000000000014010071746016542 0ustar mclasenmclasendocs/reference/gdk/xml/0000775000175000017500000000000014010071747015142 5ustar mclasenmclasendocs/reference/gdk/xml/general.xml0000664000175000017500000002351314010071747017305 0ustar mclasenmclasen ]> General 3 GDK4 Library General Library initialization and versioning Types and Values #defineGDK_WINDOWING_X11 #defineGDK_WINDOWING_WIN32 #defineGDK_WINDOWING_MACOS #defineGDK_WINDOWING_WAYLAND #defineGDK_MAJOR_VERSION #defineGDK_MICRO_VERSION #defineGDK_MINOR_VERSION #defineGDK_VERSION_4_0 #defineGDK_VERSION_MIN_REQUIRED #defineGDK_VERSION_MAX_ALLOWED #defineGDK_DISABLE_DEPRECATION_WARNINGS Includes#include <gdk/gdk.h> Description This section describes miscellaneous macros and utility functions related to library versioning, as well as deprecation facilities. The GDK and GTK headers annotate deprecated APIs in a way that produces compiler warnings if these deprecated APIs are used. The warnings can be turned off by defining the macro GDK_DISABLE_DEPRECATION_WARNINGS before including the glib.h header. GDK and GTK also provide support for building applications against defined subsets of deprecated or new APIs. Define the macro GDK_VERSION_MIN_REQUIRED to specify up to what version you want to receive warnings about deprecated APIs. Define the macro GDK_VERSION_MAX_ALLOWED to specify the newest version whose API you want to use. Functions Types and Values GDK_WINDOWING_X11 GDK_WINDOWING_X11 #define GDK_WINDOWING_X11 The GDK_WINDOWING_X11 macro is defined if the X11 backend is supported. Use this macro to guard code that is specific to the X11 backend. GDK_WINDOWING_WIN32 GDK_WINDOWING_WIN32 #define GDK_WINDOWING_WIN32 The GDK_WINDOWING_WIN32 macro is defined if the Win32 backend is supported. Use this macro to guard code that is specific to the Win32 backend. GDK_WINDOWING_MACOS GDK_WINDOWING_MACOS #define GDK_WINDOWING_MACOS The GDK_WINDOWING_MACOS macro is defined if the MacOS backend is supported. Use this macro to guard code that is specific to the MacOS backend. GDK_WINDOWING_WAYLAND GDK_WINDOWING_WAYLAND #define GDK_WINDOWING_WAYLAND The GDK_WINDOWING_WAYLAND macro is defined if the Wayland backend is supported. Use this macro to guard code that is specific to the Wayland backend. GDK_MAJOR_VERSION GDK_MAJOR_VERSION #define GDK_MAJOR_VERSION (4) The major version component of the library's version, e.g. "1" for "1.2.3". GDK_MICRO_VERSION GDK_MICRO_VERSION #define GDK_MICRO_VERSION (3) The micro version component of the library's version, e.g. "3" for "1.2.3". GDK_MINOR_VERSION GDK_MINOR_VERSION #define GDK_MINOR_VERSION (0) The minor version component of the library's version, e.g. "2" for "1.2.3". GDK_VERSION_4_0 GDK_VERSION_4_0 #define GDK_VERSION_4_0 (G_ENCODE_VERSION (4, 0)) A macro that evaluates to the 4.0 version of GDK, in a format that can be used by the C pre-processor. GDK_VERSION_MIN_REQUIRED GDK_VERSION_MIN_REQUIRED # define GDK_VERSION_MIN_REQUIRED (GDK_VERSION_CUR_STABLE) A macro that should be defined by the user prior to including the gdk.h header. The definition should be one of the predefined GDK version macros: GDK_VERSION_4_0, GDK_VERSION_4_2,... This macro defines the lower bound for the GDK API to use. If a function has been deprecated in a newer version of GDK, it is possible to use this symbol to avoid the compiler warnings without disabling warning for every deprecated function. GDK_VERSION_MAX_ALLOWED GDK_VERSION_MAX_ALLOWED # define GDK_VERSION_MAX_ALLOWED GDK_VERSION_MIN_REQUIRED A macro that should be defined by the user prior to including the gdk.h header. The definition should be one of the predefined GDK version macros: GDK_VERSION_4_0, GDK_VERSION_4_2,... This macro defines the upper bound for the GDK API to use. If a function has been introduced in a newer version of GDK, it is possible to use this symbol to get compiler warnings when trying to use that function. GDK_DISABLE_DEPRECATION_WARNINGS GDK_DISABLE_DEPRECATION_WARNINGS #define GDK_DISABLE_DEPRECATION_WARNINGS A macro that should be defined before including the gdk.h header. If this symbol is defined, no compiler warnings will be produced for uses of deprecated GDK and GTK APIs. docs/reference/gdk/xml/gdkdisplay.xml0000664000175000017500000022016714010071747020027 0ustar mclasenmclasen ]> GdkDisplay 3 GDK4 Library GdkDisplay Controls a set of monitors and their associated input devices Functions GdkDisplay * gdk_display_open () GdkDisplay * gdk_display_get_default () const char * gdk_display_get_name () gboolean gdk_display_device_is_grabbed () void gdk_display_beep () void gdk_display_sync () void gdk_display_flush () void gdk_display_close () gboolean gdk_display_is_closed () gboolean gdk_display_is_rgba () gboolean gdk_display_is_composited () gboolean gdk_display_supports_input_shapes () GdkAppLaunchContext * gdk_display_get_app_launch_context () void gdk_display_notify_startup_complete () GdkSeat * gdk_display_get_default_seat () GList * gdk_display_list_seats () GListModel * gdk_display_get_monitors () GdkMonitor * gdk_display_get_monitor_at_surface () GdkClipboard * gdk_display_get_clipboard () GdkClipboard * gdk_display_get_primary_clipboard () gboolean gdk_display_get_setting () const char * gdk_display_get_startup_notification_id () void gdk_display_put_event () gboolean gdk_display_map_keyval () gboolean gdk_display_map_keycode () gboolean gdk_display_translate_key () Properties gbooleancompositedRead gbooleaninput-shapesRead gbooleanrgbaRead Signals voidclosedRun Last voidopenedRun Last voidseat-addedRun Last voidseat-removedRun Last voidsetting-changedRun Last Types and Values GdkDisplay Object Hierarchy GObject ╰── GdkDisplay Includes#include <gdk/gdk.h> Description GdkDisplay objects are the GDK representation of a workstation. Their purpose are two-fold: To manage and provide information about input devices (pointers, keyboards, etc) To manage and provide information about output devices (monitors, projectors, etc) Most of the input device handling has been factored out into separate GdkSeat objects. Every display has a one or more seats, which can be accessed with gdk_display_get_default_seat() and gdk_display_list_seats(). Output devices are represented by GdkMonitor objects, which can be accessed with gdk_display_get_monitor_at_surface() and similar APIs. Functions gdk_display_open () gdk_display_open GdkDisplay * gdk_display_open (const char *display_name); Opens a display. Parameters display_name the name of the display to open Returns a GdkDisplay, or NULL if the display could not be opened. [nullable][transfer none] gdk_display_get_default () gdk_display_get_default GdkDisplay * gdk_display_get_default (void); Gets the default GdkDisplay. This is a convenience function for: gdk_display_manager_get_default_display (gdk_display_manager_get()). Returns a GdkDisplay, or NULL if there is no default display. [nullable][transfer none] gdk_display_get_name () gdk_display_get_name const char * gdk_display_get_name (GdkDisplay *display); Gets the name of the display. Parameters display a GdkDisplay Returns a string representing the display name. This string is owned by GDK and should not be modified or freed. gdk_display_device_is_grabbed () gdk_display_device_is_grabbed gboolean gdk_display_device_is_grabbed (GdkDisplay *display, GdkDevice *device); Returns TRUE if there is an ongoing grab on device for display . Parameters display a GdkDisplay device a GdkDevice Returns TRUE if there is a grab in effect for device . gdk_display_beep () gdk_display_beep void gdk_display_beep (GdkDisplay *display); Emits a short beep on display Parameters display a GdkDisplay gdk_display_sync () gdk_display_sync void gdk_display_sync (GdkDisplay *display); Flushes any requests queued for the windowing system and waits until all requests have been handled. This is often used for making sure that the display is synchronized with the current state of the program. Calling gdk_display_sync() before gdk_x11_display_error_trap_pop() makes sure that any errors generated from earlier requests are handled before the error trap is removed. This is most useful for X11. On windowing systems where requests are handled synchronously, this function will do nothing. Parameters display a GdkDisplay gdk_display_flush () gdk_display_flush void gdk_display_flush (GdkDisplay *display); Flushes any requests queued for the windowing system; this happens automatically when the main loop blocks waiting for new events, but if your application is drawing without returning control to the main loop, you may need to call this function explicitly. A common case where this function needs to be called is when an application is executing drawing commands from a thread other than the thread where the main loop is running. This is most useful for X11. On windowing systems where requests are handled synchronously, this function will do nothing. Parameters display a GdkDisplay gdk_display_close () gdk_display_close void gdk_display_close (GdkDisplay *display); Closes the connection to the windowing system for the given display, and cleans up associated resources. Parameters display a GdkDisplay gdk_display_is_closed () gdk_display_is_closed gboolean gdk_display_is_closed (GdkDisplay *display); Finds out if the display has been closed. Parameters display a GdkDisplay Returns TRUE if the display is closed. gdk_display_is_rgba () gdk_display_is_rgba gboolean gdk_display_is_rgba (GdkDisplay *display); Returns whether surfaces on this display are created with an alpha channel. Even if a TRUE is returned, it is possible that the surface’s alpha channel won’t be honored when displaying the surface on the screen: in particular, for X an appropriate windowing manager and compositing manager must be running to provide appropriate display. Use gdk_display_is_composited() to check if that is the case. On modern displays, this value is always TRUE. Parameters display a GdkDisplay Returns TRUE if surfaces are created with an alpha channel or FALSE if the display does not support this functionality. gdk_display_is_composited () gdk_display_is_composited gboolean gdk_display_is_composited (GdkDisplay *display); Returns whether surfaces can reasonably be expected to have their alpha channel drawn correctly on the screen. Check gdk_display_is_rgba() for whether the display supports an alpha channel. On X11 this function returns whether a compositing manager is compositing on display . On modern displays, this value is always TRUE. Parameters display a GdkDisplay Returns Whether surfaces with RGBA visuals can reasonably be expected to have their alpha channels drawn correctly on the screen. gdk_display_supports_input_shapes () gdk_display_supports_input_shapes gboolean gdk_display_supports_input_shapes (GdkDisplay *display); Returns TRUE if gdk_surface_set_input_region() can be used to modify the input shape of surfaces on display . On modern displays, this value is always TRUE. Parameters display a GdkDisplay Returns TRUE if surfaces with modified input shape are supported gdk_display_get_app_launch_context () gdk_display_get_app_launch_context GdkAppLaunchContext * gdk_display_get_app_launch_context (GdkDisplay *display); Returns a GdkAppLaunchContext suitable for launching applications on the given display. Parameters display a GdkDisplay Returns a new GdkAppLaunchContext for display . Free with g_object_unref() when done. [transfer full] gdk_display_notify_startup_complete () gdk_display_notify_startup_complete void gdk_display_notify_startup_complete (GdkDisplay *display, const char *startup_id); Indicates to the GUI environment that the application has finished loading, using a given identifier. GTK will call this function automatically for GtkWindow with custom startup-notification identifier unless gtk_window_set_auto_startup_notification() is called to disable that feature. Parameters display a GdkDisplay startup_id a startup-notification identifier, for which notification process should be completed gdk_display_get_default_seat () gdk_display_get_default_seat GdkSeat * gdk_display_get_default_seat (GdkDisplay *display); Returns the default GdkSeat for this display. Note that a display may not have a seat. In this case, this function will return NULL. Parameters display a GdkDisplay Returns the default seat. [transfer none][nullable] gdk_display_list_seats () gdk_display_list_seats GList * gdk_display_list_seats (GdkDisplay *display); Returns the list of seats known to display . Parameters display a GdkDisplay Returns the list of seats known to the GdkDisplay. [transfer container][element-type GdkSeat] gdk_display_get_monitors () gdk_display_get_monitors GListModel * gdk_display_get_monitors (GdkDisplay *self); Gets the list of monitors associated with this display. Subsequent calls to this function will always return the same list for the same display. You can listen to the GListModel::items-changed signal on this list to monitor changes to the monitor of this display. Parameters self a GdkDisplay Returns a GListModel of GdkMonitor. [transfer none] gdk_display_get_monitor_at_surface () gdk_display_get_monitor_at_surface GdkMonitor * gdk_display_get_monitor_at_surface (GdkDisplay *display, GdkSurface *surface); Gets the monitor in which the largest area of surface resides, or a monitor close to surface if it is outside of all monitors. Parameters display a GdkDisplay surface a GdkSurface Returns the monitor with the largest overlap with surface . [transfer none] gdk_display_get_clipboard () gdk_display_get_clipboard GdkClipboard * gdk_display_get_clipboard (GdkDisplay *display); Gets the clipboard used for copy/paste operations. Parameters display a GdkDisplay Returns the display's clipboard. [transfer none] gdk_display_get_primary_clipboard () gdk_display_get_primary_clipboard GdkClipboard * gdk_display_get_primary_clipboard (GdkDisplay *display); Gets the clipboard used for the primary selection. On backends where the primary clipboard is not supported natively, GDK emulates this clipboard locally. Parameters display a GdkDisplay Returns the primary clipboard. [transfer none] gdk_display_get_setting () gdk_display_get_setting gboolean gdk_display_get_setting (GdkDisplay *display, const char *name, GValue *value); Retrieves a desktop-wide setting such as double-click time for the display . Parameters display a GdkDisplay name the name of the setting value location to store the value of the setting Returns TRUE if the setting existed and a value was stored in value , FALSE otherwise gdk_display_get_startup_notification_id () gdk_display_get_startup_notification_id const char * gdk_display_get_startup_notification_id (GdkDisplay *display); Gets the startup notification ID for a Wayland display, or NULL if no ID has been defined. Parameters display a GdkDisplay Returns the startup notification ID for display , or NULL. [nullable] gdk_display_put_event () gdk_display_put_event void gdk_display_put_event (GdkDisplay *display, GdkEvent *event); Appends the given event onto the front of the event queue for display . This function is only useful in very special situations and should not be used by applications. Parameters display a GdkDisplay event a GdkEvent. [transfer none] gdk_display_map_keyval () gdk_display_map_keyval gboolean gdk_display_map_keyval (GdkDisplay *display, guint keyval, GdkKeymapKey **keys, int *n_keys); Obtains a list of keycode/group/level combinations that will generate keyval . Groups and levels are two kinds of keyboard mode; in general, the level determines whether the top or bottom symbol on a key is used, and the group determines whether the left or right symbol is used. On US keyboards, the shift key changes the keyboard level, and there are no groups. A group switch key might convert a keyboard between Hebrew to English modes, for example. GdkEventKey contains a group field that indicates the active keyboard group. The level is computed from the modifier mask. The returned array should be freed with g_free(). Parameters display a GdkDisplay keyval a keyval, such as GDK_KEY_a, GDK_KEY_Up, GDK_KEY_Return, etc. keys return location for an array of GdkKeymapKey. [out][array length=n_keys][transfer full] n_keys return location for number of elements in returned array Returns TRUE if keys were found and returned gdk_display_map_keycode () gdk_display_map_keycode gboolean gdk_display_map_keycode (GdkDisplay *display, guint keycode, GdkKeymapKey **keys, guint **keyvals, int *n_entries); Returns the keyvals bound to keycode . The Nth GdkKeymapKey in keys is bound to the Nth keyval in keyvals . When a keycode is pressed by the user, the keyval from this list of entries is selected by considering the effective keyboard group and level. Free the returned arrays with g_free(). Parameters display a GdkDisplay keycode a keycode keys return location for array of GdkKeymapKey, or NULL. [out][array length=n_entries][transfer full][optional] keyvals return location for array of keyvals, or NULL. [out][array length=n_entries][transfer full][optional] n_entries length of keys and keyvals Returns TRUE if there were any entries gdk_display_translate_key () gdk_display_translate_key gboolean gdk_display_translate_key (GdkDisplay *display, guint keycode, GdkModifierType state, int group, guint *keyval, int *effective_group, int *level, GdkModifierType *consumed); Translates the contents of a GdkEventKey (ie keycode , state , and group ) into a keyval, effective group, and level. Modifiers that affected the translation and are thus unavailable for application use are returned in consumed_modifiers . The effective_group is the group that was actually used for the translation; some keys such as Enter are not affected by the active keyboard group. The level is derived from state . consumed_modifiers gives modifiers that should be masked outfrom state when comparing this key press to a keyboard shortcut. For instance, on a US keyboard, the plus symbol is shifted, so when comparing a key press to a <Control>plus accelerator <Shift> should be masked out. This function should rarely be needed, since GdkEventKey already contains the translated keyval. It is exported for the benefit of virtualized test environments. Parameters display a GdkDisplay keycode a keycode state a modifier state group active keyboard group keyval return location for keyval, or NULL. [out][optional] effective_group return location for effective group, or NULL. [out][optional] level return location for level, or NULL. [out][optional] consumed return location for modifiers that were used to determine the group or level, or NULL. [out][optional] Returns TRUE if there was a keyval bound to keycode/state/group. Types and Values GdkDisplay GdkDisplay typedef struct _GdkDisplay GdkDisplay; The GdkDisplay struct contains only private fields and should not be accessed directly. Property Details The <literal>“composited”</literal> property GdkDisplay:composited “composited” gboolean TRUE if the display properly composites the alpha channel. See gdk_display_is_composited() for details. Owner: GdkDisplay Flags: Read Default value: TRUE The <literal>“input-shapes”</literal> property GdkDisplay:input-shapes “input-shapes” gboolean TRUE if the display supports input shapes. See gdk_display_supports_input_shapes() for details. Owner: GdkDisplay Flags: Read Default value: TRUE The <literal>“rgba”</literal> property GdkDisplay:rgba “rgba” gboolean TRUE if the display supports an alpha channel. See gdk_display_is_rgba() for details. Owner: GdkDisplay Flags: Read Default value: TRUE Signal Details The <literal>“closed”</literal> signal GdkDisplay::closed void user_function (GdkDisplay *display, gboolean is_error, gpointer user_data) The ::closed signal is emitted when the connection to the windowing system for display is closed. Parameters display the object on which the signal is emitted is_error TRUE if the display was closed due to an error user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“opened”</literal> signal GdkDisplay::opened void user_function (GdkDisplay *display, gpointer user_data) The ::opened signal is emitted when the connection to the windowing system for display is opened. Parameters display the object on which the signal is emitted user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“seat-added”</literal> signal GdkDisplay::seat-added void user_function (GdkDisplay *display, GdkSeat *seat, gpointer user_data) The ::seat-added signal is emitted whenever a new seat is made known to the windowing system. Parameters display the object on which the signal is emitted seat the seat that was just added user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“seat-removed”</literal> signal GdkDisplay::seat-removed void user_function (GdkDisplay *display, GdkSeat *seat, gpointer user_data) The ::seat-removed signal is emitted whenever a seat is removed by the windowing system. Parameters display the object on which the signal is emitted seat the seat that was just removed user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“setting-changed”</literal> signal GdkDisplay::setting-changed void user_function (GdkDisplay *display, char *setting, gpointer user_data) The ::setting-changed signal is emitted whenever a setting changes its value. Parameters display the object on which the signal is emitted setting the name of the setting that changed user_data user data set when the signal handler was connected. Flags: Run Last docs/reference/gdk/xml/gdkdisplaymanager.xml0000664000175000017500000005025614010071747021362 0ustar mclasenmclasen ]> GdkDisplayManager 3 GDK4 Library GdkDisplayManager Maintains a list of all open GdkDisplays Functions GdkDisplayManager * gdk_display_manager_get () GdkDisplay * gdk_display_manager_get_default_display () void gdk_display_manager_set_default_display () GSList * gdk_display_manager_list_displays () GdkDisplay * gdk_display_manager_open_display () void gdk_set_allowed_backends () Properties GdkDisplay *default-displayRead / Write Signals voiddisplay-openedRun Last Types and Values GdkDisplayManager Object Hierarchy GObject ╰── GdkDisplayManager Includes#include <gdk/gdk.h> Description The purpose of the GdkDisplayManager singleton object is to offer notification when displays appear or disappear or the default display changes. You can use gdk_display_manager_get() to obtain the GdkDisplayManager singleton, but that should be rarely necessary. Typically, initializing GTK opens a display that you can work with without ever accessing the GdkDisplayManager. The GDK library can be built with support for multiple backends. The GdkDisplayManager object determines which backend is used at runtime. When writing backend-specific code that is supposed to work with multiple GDK backends, you have to consider both compile time and runtime. At compile time, use the GDK_WINDOWING_X11, GDK_WINDOWING_WIN32 macros, etc. to find out which backends are present in the GDK library you are building your application against. At runtime, use type-check macros like GDK_IS_X11_DISPLAY() to find out which backend is in use: Backend-specific code Functions gdk_display_manager_get () gdk_display_manager_get GdkDisplayManager * gdk_display_manager_get (void); Gets the singleton GdkDisplayManager object. When called for the first time, this function consults the GDK_BACKEND environment variable to find out which of the supported GDK backends to use (in case GDK has been compiled with multiple backends). Applications can use gdk_set_allowed_backends() to limit what backends can be used. Returns The global GdkDisplayManager singleton. [transfer none] gdk_display_manager_get_default_display () gdk_display_manager_get_default_display GdkDisplay * gdk_display_manager_get_default_display (GdkDisplayManager *manager); Gets the default GdkDisplay. Parameters manager a GdkDisplayManager Returns a GdkDisplay, or NULL if there is no default display. [nullable][transfer none] gdk_display_manager_set_default_display () gdk_display_manager_set_default_display void gdk_display_manager_set_default_display (GdkDisplayManager *manager, GdkDisplay *display); Sets display as the default display. Parameters manager a GdkDisplayManager display a GdkDisplay gdk_display_manager_list_displays () gdk_display_manager_list_displays GSList * gdk_display_manager_list_displays (GdkDisplayManager *manager); List all currently open displays. Parameters manager a GdkDisplayManager Returns a newly allocated GSList of GdkDisplay objects. Free with g_slist_free() when you are done with it. [transfer container][element-type GdkDisplay] gdk_display_manager_open_display () gdk_display_manager_open_display GdkDisplay * gdk_display_manager_open_display (GdkDisplayManager *manager, const char *name); Opens a display. Parameters manager a GdkDisplayManager name the name of the display to open Returns a GdkDisplay, or NULL if the display could not be opened. [nullable][transfer none] gdk_set_allowed_backends () gdk_set_allowed_backends void gdk_set_allowed_backends (const char *backends); Sets a list of backends that GDK should try to use. This can be useful if your application does not work with certain GDK backends. By default, GDK tries all included backends. For example, instructs GDK to try the Wayland backend first, followed by the Quartz backend, and then all others. If the GDK_BACKEND environment variable is set, it determines what backends are tried in what order, while still respecting the set of allowed backends that are specified by this function. The possible backend names are x11, win32, quartz, broadway, wayland. You can also include a * in the list to try all remaining backends. This call must happen prior to gdk_display_open(), gtk_init(), or gtk_init_check() in order to take effect. Parameters backends a comma-separated list of backends Types and Values GdkDisplayManager GdkDisplayManager typedef struct _GdkDisplayManager GdkDisplayManager; The GdkDisplayManager struct contains only private fields and should not be accessed directly. Property Details The <literal>“default-display”</literal> property GdkDisplayManager:default-display “default-display” GdkDisplay * The default display for GDK.Owner: GdkDisplayManager Flags: Read / Write Signal Details The <literal>“display-opened”</literal> signal GdkDisplayManager::display-opened void user_function (GdkDisplayManager *manager, GdkDisplay *display, gpointer user_data) The ::display-opened signal is emitted when a display is opened. Parameters manager the object on which the signal is emitted display the opened display user_data user data set when the signal handler was connected. Flags: Run Last docs/reference/gdk/xml/pixbufs.xml0000664000175000017500000001566714010071747017363 0ustar mclasenmclasen ]> GdkPixbuf Interaction 3 GDK4 Library GdkPixbuf Interaction Functions for obtaining pixbufs Functions GdkPixbuf * gdk_pixbuf_get_from_surface () GdkPixbuf * gdk_pixbuf_get_from_texture () Includes#include <gdk/gdk.h> Description Pixbufs are client-side images. For details on how to create and manipulate pixbufs, see the GdkPixbuf API documentation. The functions described here allow to obtain pixbufs from GdkSurfaces and cairo surfaces. Functions gdk_pixbuf_get_from_surface () gdk_pixbuf_get_from_surface GdkPixbuf * gdk_pixbuf_get_from_surface (cairo_surface_t *surface, int src_x, int src_y, int width, int height); Transfers image data from a cairo_surface_t and converts it to an RGB(A) representation inside a GdkPixbuf. This allows you to efficiently read individual pixels from cairo surfaces. This function will create an RGB pixbuf with 8 bits per channel. The pixbuf will contain an alpha channel if the surface contains one. Parameters surface surface to copy from src_x Source X coordinate within surface src_y Source Y coordinate within surface width Width in pixels of region to get height Height in pixels of region to get Returns A newly-created pixbuf with a reference count of 1, or NULL on error. [nullable][transfer full] gdk_pixbuf_get_from_texture () gdk_pixbuf_get_from_texture GdkPixbuf * gdk_pixbuf_get_from_texture (GdkTexture *texture); Creates a new pixbuf from texture . This should generally not be used in newly written code as later stages will almost certainly convert the pixbuf back into a texture to draw it on screen. Parameters texture a GdkTexture Returns a new GdkPixbuf or NULL in case of an error. [transfer full][nullable] docs/reference/gdk/xml/rgba_colors.xml0000664000175000017500000004701414010071747020166 0ustar mclasenmclasen ]> GdkRGBA 3 GDK4 Library GdkRGBA RGBA colors Functions GdkRGBA * gdk_rgba_copy () void gdk_rgba_free () gboolean gdk_rgba_is_clear () gboolean gdk_rgba_is_opaque () gboolean gdk_rgba_parse () gboolean gdk_rgba_equal () guint gdk_rgba_hash () char * gdk_rgba_to_string () Types and Values GdkRGBA Object Hierarchy GBoxed ╰── GdkRGBA Includes#include <gdk/gdk.h> Description GdkRGBA is a convenient way to pass colors around. It’s based on cairo’s way to deal with colors and mirrors its behavior. All values are in the range from 0.0 to 1.0 inclusive. So the color (0.0, 0.0, 0.0, 0.0) represents transparent black and (1.0, 1.0, 1.0, 1.0) is opaque white. Other values will be clamped to this range when drawing. Functions gdk_rgba_copy () gdk_rgba_copy GdkRGBA * gdk_rgba_copy (const GdkRGBA *rgba); Makes a copy of a GdkRGBA. The result must be freed through gdk_rgba_free(). Parameters rgba a GdkRGBA Returns A newly allocated GdkRGBA, with the same contents as rgba gdk_rgba_free () gdk_rgba_free void gdk_rgba_free (GdkRGBA *rgba); Frees a GdkRGBA created with gdk_rgba_copy() Parameters rgba a GdkRGBA gdk_rgba_is_clear () gdk_rgba_is_clear gboolean gdk_rgba_is_clear (const GdkRGBA *rgba); Checks if an rgba value is transparent. That is, drawing with the value would not produce any change. Parameters rgba a GdkRGBA Returns TRUE if the rgba is clear gdk_rgba_is_opaque () gdk_rgba_is_opaque gboolean gdk_rgba_is_opaque (const GdkRGBA *rgba); Checks if an rgba value is opaque. That is, drawing with the value will not retain any results from previous contents. Parameters rgba a GdkRGBA Returns TRUE if the rgba is opaque gdk_rgba_parse () gdk_rgba_parse gboolean gdk_rgba_parse (GdkRGBA *rgba, const char *spec); Parses a textual representation of a color, filling in the red , green , blue and alpha fields of the rgba GdkRGBA. The string can be either one of: A standard name (Taken from the X11 rgb.txt file). A hexadecimal value in the form “#rgb”, “#rrggbb”, “#rrrgggbbb” or ”#rrrrggggbbbb” A hexadecimal value in the form “#rgba”, “#rrggbbaa”, or ”#rrrrggggbbbbaaaa” A RGB color in the form “rgb(r,g,b)” (In this case the color will have full opacity) A RGBA color in the form “rgba(r,g,b,a)” Where “r”, “g”, “b” and “a” are respectively the red, green, blue and alpha color values. In the last two cases, “r”, “g”, and “b” are either integers in the range 0 to 255 or percentage values in the range 0% to 100%, and a is a floating point value in the range 0 to 1. Parameters rgba the GdkRGBA to fill in spec the string specifying the color Returns TRUE if the parsing succeeded gdk_rgba_equal () gdk_rgba_equal gboolean gdk_rgba_equal (gconstpointer p1, gconstpointer p2); Compares two RGBA colors. Parameters p1 a GdkRGBA pointer. [type GdkRGBA] p2 another GdkRGBA pointer. [type GdkRGBA] Returns TRUE if the two colors compare equal gdk_rgba_hash () gdk_rgba_hash guint gdk_rgba_hash (gconstpointer p); A hash function suitable for using for a hash table that stores GdkRGBAs. Parameters p a GdkRGBA pointer. [type GdkRGBA] Returns The hash value for p gdk_rgba_to_string () gdk_rgba_to_string char * gdk_rgba_to_string (const GdkRGBA *rgba); Returns a textual specification of rgba in the form rgb(r,g,b) or rgba(r,g,b,a), where “r”, “g”, “b” and “a” represent the red, green, blue and alpha values respectively. “r”, “g”, and “b” are represented as integers in the range 0 to 255, and “a” is represented as a floating point value in the range 0 to 1. These string forms are string forms that are supported by the CSS3 colors module, and can be parsed by gdk_rgba_parse(). Note that this string representation may lose some precision, since “r”, “g” and “b” are represented as 8-bit integers. If this is a concern, you should use a different representation. Parameters rgba a GdkRGBA Returns A newly allocated text string Types and Values GdkRGBA GdkRGBA typedef struct { float red; float green; float blue; float alpha; } GdkRGBA; A GdkRGBA is used to represent a (possibly translucent) color, in a way that is compatible with cairo’s notion of color. Members float red; The intensity of the red channel from 0.0 to 1.0 inclusive float green; The intensity of the green channel from 0.0 to 1.0 inclusive float blue; The intensity of the blue channel from 0.0 to 1.0 inclusive float alpha; The opacity of the color from 0.0 for completely translucent to 1.0 for opaque docs/reference/gdk/xml/gdksurface.xml0000664000175000017500000024344514010071747020016 0ustar mclasenmclasen ]> Surfaces 3 GDK4 Library Surfaces Onscreen display areas in the target window system Functions GdkSurface * gdk_surface_new_toplevel () GdkSurface * gdk_surface_new_popup () void gdk_surface_destroy () gboolean gdk_surface_is_destroyed () GdkDisplay * gdk_surface_get_display () void gdk_surface_hide () gboolean gdk_surface_get_mapped () gboolean gdk_surface_translate_coordinates () void gdk_surface_beep () int gdk_surface_get_scale_factor () void gdk_surface_set_opaque_region () GdkGLContext * gdk_surface_create_gl_context () GdkVulkanContext * gdk_surface_create_vulkan_context () GdkCairoContext * gdk_surface_create_cairo_context () void gdk_surface_queue_render () GdkFrameClock * gdk_surface_get_frame_clock () void gdk_surface_request_layout () void gdk_surface_set_cursor () GdkCursor * gdk_surface_get_cursor () void gdk_surface_set_input_region () int gdk_surface_get_width () int gdk_surface_get_height () gboolean gdk_surface_get_device_position () GdkCursor * gdk_surface_get_device_cursor () void gdk_surface_set_device_cursor () Properties GdkCursor *cursorRead / Write GdkDisplay *displayRead / Write / Construct Only GdkFrameClock *frame-clockRead / Write / Construct Only intheightRead gbooleanmappedRead intscale-factorRead intwidthRead Signals voidenter-monitorRun First gbooleaneventRun Last voidlayoutRun First voidleave-monitorRun First gbooleanrenderRun Last Types and Values GdkSurface enumGdkGravity enumGdkModifierType #defineGDK_MODIFIER_MASK Object Hierarchy GObject ╰── GdkSurface Known Derived Interfaces GdkSurface is required by GdkDragSurface, GdkPopup and GdkToplevel. Includes#include <gdk/gdk.h> Description A GdkSurface is a (usually) rectangular region on the screen. It’s a low-level object, used to implement high-level objects such as GtkWindow or GtkDialog in GTK. The surfaces you see in practice are either GdkToplevel or GdkPopup, and those interfaces provide much of the required API to interact with these surfaces. Other, more specialized surface types exist, but you will rarely interact with them directly. Functions gdk_surface_new_toplevel () gdk_surface_new_toplevel GdkSurface * gdk_surface_new_toplevel (GdkDisplay *display); Creates a new toplevel surface. [constructor] Parameters display the display to create the surface on Returns the new GdkSurface. [transfer full] gdk_surface_new_popup () gdk_surface_new_popup GdkSurface * gdk_surface_new_popup (GdkSurface *parent, gboolean autohide); Create a new popup surface. The surface will be attached to parent and can be positioned relative to it using gdk_popup_present(). [constructor] Parameters parent the parent surface to attach the surface to autohide whether to hide the surface on outside clicks Returns a new GdkSurface. [transfer full] gdk_surface_destroy () gdk_surface_destroy void gdk_surface_destroy (GdkSurface *surface); Destroys the window system resources associated with surface and decrements surface 's reference count. The window system resources for all children of surface are also destroyed, but the children’s reference counts are not decremented. Note that a surface will not be destroyed automatically when its reference count reaches zero. You must call this function yourself before that happens. Parameters surface a GdkSurface gdk_surface_is_destroyed () gdk_surface_is_destroyed gboolean gdk_surface_is_destroyed (GdkSurface *surface); Check to see if a surface is destroyed.. Parameters surface a GdkSurface Returns TRUE if the surface is destroyed gdk_surface_get_display () gdk_surface_get_display GdkDisplay * gdk_surface_get_display (GdkSurface *surface); Gets the GdkDisplay associated with a GdkSurface. Parameters surface a GdkSurface Returns the GdkDisplay associated with surface . [transfer none] gdk_surface_hide () gdk_surface_hide void gdk_surface_hide (GdkSurface *surface); For toplevel surfaces, withdraws them, so they will no longer be known to the window manager; for all surfaces, unmaps them, so they won’t be displayed. Normally done automatically as part of gtk_widget_hide(). Parameters surface a GdkSurface gdk_surface_get_mapped () gdk_surface_get_mapped gboolean gdk_surface_get_mapped (GdkSurface *surface); Checks whether the surface has been mapped (with gdk_toplevel_present() or gdk_popup_present()). Parameters surface a GdkSurface Returns TRUE if the surface is mapped gdk_surface_translate_coordinates () gdk_surface_translate_coordinates gboolean gdk_surface_translate_coordinates (GdkSurface *from, GdkSurface *to, double *x, double *y); Translates the given coordinates from being relative to the from surface to being relative to the to surface. Note that this only works if to and from are popups or transient-for to the same toplevel (directly or indirectly). Parameters from the origin surface to the target surface x coordinates to translate y coordinates to translate Returns TRUE if the coordinates were successfully translated gdk_surface_beep () gdk_surface_beep void gdk_surface_beep (GdkSurface *surface); Emits a short beep associated to surface in the appropriate display, if supported. Otherwise, emits a short beep on the display just as gdk_display_beep(). Parameters surface a toplevel GdkSurface gdk_surface_get_scale_factor () gdk_surface_get_scale_factor int gdk_surface_get_scale_factor (GdkSurface *surface); Returns the internal scale factor that maps from surface coordinates to the actual device pixels. On traditional systems this is 1, but on very high density outputs this can be a higher value (often 2). A higher value means that drawing is automatically scaled up to a higher resolution, so any code doing drawing will automatically look nicer. However, if you are supplying pixel-based data the scale value can be used to determine whether to use a pixel resource with higher resolution data. The scale of a surface may change during runtime. Parameters surface surface to get scale factor for Returns the scale factor gdk_surface_set_opaque_region () gdk_surface_set_opaque_region void gdk_surface_set_opaque_region (GdkSurface *surface, cairo_region_t *region); For optimisation purposes, compositing window managers may like to not draw obscured regions of surfaces, or turn off blending during for these regions. With RGB windows with no transparency, this is just the shape of the window, but with ARGB32 windows, the compositor does not know what regions of the window are transparent or not. This function only works for toplevel surfaces. GTK will update this property automatically if the surface background is opaque, as we know where the opaque regions are. If your surface background is not opaque, please update this property in your GtkWidgetClass.css_changed() handler. Parameters surface a top-level or non-native GdkSurface region a region, or NULL. [allow-none] gdk_surface_create_gl_context () gdk_surface_create_gl_context GdkGLContext * gdk_surface_create_gl_context (GdkSurface *surface, GError **error); Creates a new GdkGLContext matching the framebuffer format to the visual of the GdkSurface. The context is disconnected from any particular surface or surface. If the creation of the GdkGLContext failed, error will be set. Before using the returned GdkGLContext, you will need to call gdk_gl_context_make_current() or gdk_gl_context_realize(). Parameters surface a GdkSurface error return location for an error Returns the newly created GdkGLContext, or NULL on error. [transfer full] gdk_surface_create_vulkan_context () gdk_surface_create_vulkan_context GdkVulkanContext * gdk_surface_create_vulkan_context (GdkSurface *surface, GError **error); Creates a new GdkVulkanContext for rendering on surface . If the creation of the GdkVulkanContext failed, error will be set. Parameters surface a GdkSurface error return location for an error Returns the newly created GdkVulkanContext, or NULL on error. [transfer full] gdk_surface_create_cairo_context () gdk_surface_create_cairo_context GdkCairoContext * gdk_surface_create_cairo_context (GdkSurface *surface); Creates a new GdkCairoContext for rendering on surface . Parameters surface a GdkSurface Returns the newly created GdkCairoContext. [transfer full] gdk_surface_queue_render () gdk_surface_queue_render void gdk_surface_queue_render (GdkSurface *surface); Forces a “render” signal emission for surface to be scheduled. This function is useful for implementations that track invalid regions on their own. Parameters surface a GdkSurface gdk_surface_get_frame_clock () gdk_surface_get_frame_clock GdkFrameClock * gdk_surface_get_frame_clock (GdkSurface *surface); Gets the frame clock for the surface. The frame clock for a surface never changes unless the surface is reparented to a new toplevel surface. Parameters surface surface to get frame clock for Returns the frame clock. [transfer none] gdk_surface_request_layout () gdk_surface_request_layout void gdk_surface_request_layout (GdkSurface *surface); Request a GDK_FRAME_CLOCK_PHASE_LAYOUT from the surface's frame clock. See gdk_frame_clock_request_phase(). Parameters surface a GdkSurface gdk_surface_set_cursor () gdk_surface_set_cursor void gdk_surface_set_cursor (GdkSurface *surface, GdkCursor *cursor); Sets the default mouse pointer for a GdkSurface. Note that cursor must be for the same display as surface . Use gdk_cursor_new_from_name() or gdk_cursor_new_from_texture() to create the cursor. To make the cursor invisible, use GDK_BLANK_CURSOR. Passing NULL for the cursor argument to gdk_surface_set_cursor() means that surface will use the cursor of its parent surface. Most surfaces should use this default. Parameters surface a GdkSurface cursor a cursor. [allow-none] gdk_surface_get_cursor () gdk_surface_get_cursor GdkCursor * gdk_surface_get_cursor (GdkSurface *surface); Retrieves a GdkCursor pointer for the cursor currently set on the specified GdkSurface, or NULL. If the return value is NULL then there is no custom cursor set on the specified surface, and it is using the cursor for its parent surface. Parameters surface a GdkSurface Returns a GdkCursor, or NULL. The returned object is owned by the GdkSurface and should not be unreferenced directly. Use gdk_surface_set_cursor() to unset the cursor of the surface. [nullable][transfer none] gdk_surface_set_input_region () gdk_surface_set_input_region void gdk_surface_set_input_region (GdkSurface *surface, cairo_region_t *region); Apply the region to the surface for the purpose of event handling. Mouse events which happen while the pointer position corresponds to an unset bit in the mask will be passed on the surface below surface . An input region is typically used with RGBA surfaces. The alpha channel of the surface defines which pixels are invisible and allows for nicely antialiased borders, and the input region controls where the surface is “clickable”. Use gdk_display_supports_input_shapes() to find out if a particular backend supports input regions. Parameters surface a GdkSurface region region of surface to be reactive gdk_surface_get_width () gdk_surface_get_width int gdk_surface_get_width (GdkSurface *surface); Returns the width of the given surface . Surface size is reported in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()). Parameters surface a GdkSurface Returns The width of surface gdk_surface_get_height () gdk_surface_get_height int gdk_surface_get_height (GdkSurface *surface); Returns the height of the given surface . Surface size is reported in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()). Parameters surface a GdkSurface Returns The height of surface gdk_surface_get_device_position () gdk_surface_get_device_position gboolean gdk_surface_get_device_position (GdkSurface *surface, GdkDevice *device, double *x, double *y, GdkModifierType *mask); Obtains the current device position in doubles and modifier state. The position is given in coordinates relative to the upper left corner of surface . Return: TRUE if the device is over the surface Parameters surface a GdkSurface. device pointer GdkDevice to query to. x return location for the X coordinate of device , or NULL. [out][allow-none] y return location for the Y coordinate of device , or NULL. [out][allow-none] mask return location for the modifier mask, or NULL. [out][allow-none] gdk_surface_get_device_cursor () gdk_surface_get_device_cursor GdkCursor * gdk_surface_get_device_cursor (GdkSurface *surface, GdkDevice *device); Retrieves a GdkCursor pointer for the device currently set on the specified GdkSurface, or NULL. If the return value is NULL then there is no custom cursor set on the specified surface, and it is using the cursor for its parent surface. Parameters surface a GdkSurface. device a logical, pointer GdkDevice. Returns a GdkCursor, or NULL. The returned object is owned by the GdkSurface and should not be unreferenced directly. Use gdk_surface_set_cursor() to unset the cursor of the surface. [nullable][transfer none] gdk_surface_set_device_cursor () gdk_surface_set_device_cursor void gdk_surface_set_device_cursor (GdkSurface *surface, GdkDevice *device, GdkCursor *cursor); Sets a specific GdkCursor for a given device when it gets inside surface . Use gdk_cursor_new_from_name() or gdk_cursor_new_from_texture() to create the cursor. To make the cursor invisible, use GDK_BLANK_CURSOR. Passing NULL for the cursor argument to gdk_surface_set_cursor() means that surface will use the cursor of its parent surface. Most surfaces should use this default. Parameters surface a GdkSurface device a logical, pointer GdkDevice cursor a GdkCursor Types and Values GdkSurface GdkSurface typedef struct _GdkSurface GdkSurface; The GdkSurface struct contains only private fields and should not be accessed directly. enum GdkGravity GdkGravity Defines the reference point of a surface and is used in GdkPopupLayout. Members GDK_GRAVITY_NORTH_WEST the reference point is at the top left corner. GDK_GRAVITY_NORTH the reference point is in the middle of the top edge. GDK_GRAVITY_NORTH_EAST the reference point is at the top right corner. GDK_GRAVITY_WEST the reference point is at the middle of the left edge. GDK_GRAVITY_CENTER the reference point is at the center of the surface. GDK_GRAVITY_EAST the reference point is at the middle of the right edge. GDK_GRAVITY_SOUTH_WEST the reference point is at the lower left corner. GDK_GRAVITY_SOUTH the reference point is at the middle of the lower edge. GDK_GRAVITY_SOUTH_EAST the reference point is at the lower right corner. GDK_GRAVITY_STATIC the reference point is at the top left corner of the surface itself, ignoring window manager decorations. enum GdkModifierType GdkModifierType A set of bit-flags to indicate the state of modifier keys and mouse buttons in various event types. Typical modifier keys are Shift, Control, Meta, Super, Hyper, Alt, Compose, Apple, CapsLock or ShiftLock. Note that GDK may add internal values to events which include values outside of this enumeration. Your code should preserve and ignore them. You can use GDK_MODIFIER_MASK to remove all private values. Members GDK_SHIFT_MASK the Shift key. GDK_LOCK_MASK a Lock key (depending on the modifier mapping of the X server this may either be CapsLock or ShiftLock). GDK_CONTROL_MASK the Control key. GDK_ALT_MASK the fourth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier, but normally it is the Alt key). GDK_BUTTON1_MASK the first mouse button. GDK_BUTTON2_MASK the second mouse button. GDK_BUTTON3_MASK the third mouse button. GDK_BUTTON4_MASK the fourth mouse button. GDK_BUTTON5_MASK the fifth mouse button. GDK_SUPER_MASK the Super modifier GDK_HYPER_MASK the Hyper modifier GDK_META_MASK the Meta modifier GDK_MODIFIER_MASK GDK_MODIFIER_MASK #define GDK_MODIFIER_MASK A mask covering all entries in GdkModifierType. Property Details The <literal>“cursor”</literal> property GdkSurface:cursor “cursor” GdkCursor * The mouse pointer for a GdkSurface. See gdk_surface_set_cursor() and gdk_surface_get_cursor() for details. Owner: GdkSurface Flags: Read / Write The <literal>“display”</literal> property GdkSurface:display “display” GdkDisplay * The GdkDisplay connection of the surface. See gdk_surface_get_display() for details. Owner: GdkSurface Flags: Read / Write / Construct Only The <literal>“frame-clock”</literal> property GdkSurface:frame-clock “frame-clock” GdkFrameClock * Frame Clock.Owner: GdkSurface Flags: Read / Write / Construct Only The <literal>“height”</literal> property GdkSurface:height “height” int Height.Owner: GdkSurface Flags: Read Allowed values: >= 0 Default value: 0 The <literal>“mapped”</literal> property GdkSurface:mapped “mapped” gboolean Mapped.Owner: GdkSurface Flags: Read Default value: FALSE The <literal>“scale-factor”</literal> property GdkSurface:scale-factor “scale-factor” int Scale factor.Owner: GdkSurface Flags: Read Allowed values: >= 1 Default value: 1 The <literal>“width”</literal> property GdkSurface:width “width” int Width.Owner: GdkSurface Flags: Read Allowed values: >= 0 Default value: 0 Signal Details The <literal>“enter-monitor”</literal> signal GdkSurface::enter-monitor void user_function (GdkSurface *surface, GdkMonitor *monitor, gpointer user_data) Emitted when surface starts being present on the monitor. Parameters surface the GdkSurface monitor the monitor user_data user data set when the signal handler was connected. Flags: Run First The <literal>“event”</literal> signal GdkSurface::event gboolean user_function (GdkSurface *surface, gpointer event, gpointer user_data) Emitted when GDK receives an input event for surface . Parameters surface the GdkSurface event an input event. [type Gdk.Event] user_data user data set when the signal handler was connected. Returns TRUE to indicate that the event has been handled Flags: Run Last The <literal>“layout”</literal> signal GdkSurface::layout void user_function (GdkSurface *surface, int width, int height, gpointer user_data) Emitted when the size of surface is changed, or when relayout should be performed. Surface size is reported in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()). Parameters surface the GdkSurface width the current width height the current height user_data user data set when the signal handler was connected. Flags: Run First The <literal>“leave-monitor”</literal> signal GdkSurface::leave-monitor void user_function (GdkSurface *surface, GdkMonitor *monitor, gpointer user_data) Emitted when surface stops being present on the monitor. Parameters surface the GdkSurface monitor the monitor user_data user data set when the signal handler was connected. Flags: Run First The <literal>“render”</literal> signal GdkSurface::render gboolean user_function (GdkSurface *surface, CairoRegion *region, gpointer user_data) Emitted when part of the surface needs to be redrawn. Parameters surface the GdkSurface region the region that needs to be redrawn user_data user data set when the signal handler was connected. Returns TRUE to indicate that the signal has been handled Flags: Run Last See Also GdkToplevel, GdkPopup docs/reference/gdk/xml/gdkcontentformats.xml0000664000175000017500000017027714010071747021436 0ustar mclasenmclasen ]> Content Formats 3 GDK4 Library Content Formats Advertising and negotiating of content exchange formats Functions const char * gdk_intern_mime_type () GdkContentFormats * gdk_content_formats_new () GdkContentFormats * gdk_content_formats_new_for_gtype () GdkContentFormats * gdk_content_formats_ref () void gdk_content_formats_unref () void gdk_content_formats_print () char * gdk_content_formats_to_string () const GType * gdk_content_formats_get_gtypes () const char * const * gdk_content_formats_get_mime_types () GdkContentFormats * gdk_content_formats_union () gboolean gdk_content_formats_match () GType gdk_content_formats_match_gtype () const char * gdk_content_formats_match_mime_type () gboolean gdk_content_formats_contain_gtype () gboolean gdk_content_formats_contain_mime_type () GdkContentFormats * gdk_content_formats_union_serialize_gtypes () GdkContentFormats * gdk_content_formats_union_deserialize_gtypes () GdkContentFormats * gdk_content_formats_union_serialize_mime_types () GdkContentFormats * gdk_content_formats_union_deserialize_mime_types () GdkContentFormatsBuilder * gdk_content_formats_builder_new () GdkContentFormats * gdk_content_formats_builder_free_to_formats () void gdk_content_formats_builder_add_formats () void gdk_content_formats_builder_add_gtype () void gdk_content_formats_builder_add_mime_type () GdkContentFormatsBuilder * gdk_content_formats_builder_ref () void gdk_content_formats_builder_unref () GdkContentFormats * gdk_content_formats_builder_to_formats () Types and Values GdkContentFormats GdkContentFormatsBuilder Object Hierarchy GBoxed ╰── GdkContentFormats Includes#include <gdk/gdk.h> Description This section describes the GdkContentFormats structure that is used to advertise and negotiate the format of content passed between different widgets, windows or applications using for example the clipboard or drag'n'drop. GDK supports content in 2 forms: GType and mime type. Using GTypes is meant only for in-process content transfers. Mime types are meant to be used for data passing both in-process and out-of-process. The details of how data is passed is described in the documentation of the actual implementations. A GdkContentFormats describes a set of possible formats content can be exchanged in. It is assumed that this set is ordered. GTypes are more important than mime types. Order between different GTypes or mime types is the order they were added in, most important first. Functions that care about order, such as gdk_content_formats_union() will describe in their documentation how they interpret that order, though in general the order of the first argument is considered the primary order of the result, followed by the order of further arguments. For debugging purposes, the function gdk_content_formats_to_string() exists. It will print a comma-seperated formats of formats from most important to least important. GdkContentFormats is an immutable struct. After creation, you cannot change the types it represents. Instead, new GdkContentFormats have to be created. The GdkContentFormatsBuilder structure is meant to help in this endeavor. Functions gdk_intern_mime_type () gdk_intern_mime_type const char * gdk_intern_mime_type (const char *string); Canonicalizes the given mime type and interns the result. If string is not a valid mime type, NULL is returned instead. See RFC 2048 for the syntax if mime types. Parameters string string of a potential mime type. [transfer none] Returns An interned string for the canonicalized mime type or NULL if the string wasn't a valid mime type gdk_content_formats_new () gdk_content_formats_new GdkContentFormats * gdk_content_formats_new (const char **mime_types, guint n_mime_types); Creates a new GdkContentFormats from an array of mime types. The mime types must be valid and different from each other or the behavior of the return value is undefined. If you cannot guarantee this, use GdkContentFormatsBuilder instead. Parameters mime_types Pointer to an array of mime types. [array length=n_mime_types][allow-none] n_mime_types number of entries in mime_types . Returns the new GdkContentFormats. [transfer full] gdk_content_formats_new_for_gtype () gdk_content_formats_new_for_gtype GdkContentFormats * gdk_content_formats_new_for_gtype (GType type); Creates a new GdkContentFormats for a given GType. Parameters type a $GType Returns a new GdkContentFormats gdk_content_formats_ref () gdk_content_formats_ref GdkContentFormats * gdk_content_formats_ref (GdkContentFormats *formats); Increases the reference count of a GdkContentFormats by one. Parameters formats a GdkContentFormats Returns the passed in GdkContentFormats. gdk_content_formats_unref () gdk_content_formats_unref void gdk_content_formats_unref (GdkContentFormats *formats); Decreases the reference count of a GdkContentFormats by one. If the resulting reference count is zero, frees the formats. Parameters formats a GdkContentFormats gdk_content_formats_print () gdk_content_formats_print void gdk_content_formats_print (GdkContentFormats *formats, GString *string); Prints the given formats into a string for human consumption. This is meant for debugging and logging. The form of the representation may change at any time and is not guaranteed to stay identical. Parameters formats a GdkContentFormats string a GString to print into gdk_content_formats_to_string () gdk_content_formats_to_string char * gdk_content_formats_to_string (GdkContentFormats *formats); Prints the given formats into a human-readable string. This is a small wrapper around gdk_content_formats_print() to help when debugging. Parameters formats a GdkContentFormats Returns a new string. [transfer full] gdk_content_formats_get_gtypes () gdk_content_formats_get_gtypes const GType * gdk_content_formats_get_gtypes (const GdkContentFormats *formats, gsize *n_gtypes); Gets the GTypes included in formats . Note that formats may not contain any GTypes, in particular when they are empty. In that case NULL will be returned. Parameters formats a GdkContentFormats n_gtypes optional pointer to take the number of GTypes contained in the return value. [out][optional] Returns G_TYPE_INVALID-terminated array of types included in formats or NULL if none. [transfer none][nullable][array length=n_gtypes] gdk_content_formats_get_mime_types () gdk_content_formats_get_mime_types const char * const * gdk_content_formats_get_mime_types (const GdkContentFormats *formats, gsize *n_mime_types); Gets the mime types included in formats . Note that formats may not contain any mime types, in particular when they are empty. In that case NULL will be returned. Parameters formats a GdkContentFormats n_mime_types optional pointer to take the number of mime types contained in the return value. [out][allow-none] Returns NULL-terminated array of interned strings of mime types included in formats or NULL if none. [transfer none][nullable] gdk_content_formats_union () gdk_content_formats_union GdkContentFormats * gdk_content_formats_union (GdkContentFormats *first, const GdkContentFormats *second); Append all missing types from second to first , in the order they had in second . Parameters first the GdkContentFormats to merge into. [transfer full] second the GdkContentFormats to merge from. [transfer none] Returns a new GdkContentFormats gdk_content_formats_match () gdk_content_formats_match gboolean gdk_content_formats_match (const GdkContentFormats *first, const GdkContentFormats *second); Checks if first and second have any matching formats. Parameters first the primary GdkContentFormats to intersect second the GdkContentFormats to intersect with Returns TRUE if a matching format was found. gdk_content_formats_match_gtype () gdk_content_formats_match_gtype GType gdk_content_formats_match_gtype (const GdkContentFormats *first, const GdkContentFormats *second); Finds the first GType from first that is also contained in second . If no matching GType is found, G_TYPE_INVALID is returned. Parameters first the primary GdkContentFormats to intersect second the GdkContentFormats to intersect with Returns The first common GType or G_TYPE_INVALID if none. gdk_content_formats_match_mime_type () gdk_content_formats_match_mime_type const char * gdk_content_formats_match_mime_type (const GdkContentFormats *first, const GdkContentFormats *second); Finds the first mime type from first that is also contained in second . If no matching mime type is found, NULL is returned. Parameters first the primary GdkContentFormats to intersect second the GdkContentFormats to intersect with Returns The first common mime type or NULL if none. [nullable] gdk_content_formats_contain_gtype () gdk_content_formats_contain_gtype gboolean gdk_content_formats_contain_gtype (const GdkContentFormats *formats, GType type); Checks if a given GType is part of the given formats . Parameters formats a GdkContentFormats type the GType to search for Returns TRUE if the GType was found gdk_content_formats_contain_mime_type () gdk_content_formats_contain_mime_type gboolean gdk_content_formats_contain_mime_type (const GdkContentFormats *formats, const char *mime_type); Checks if a given mime type is part of the given formats . Parameters formats a GdkContentFormats mime_type the mime type to search for Returns TRUE if the mime_type was found gdk_content_formats_union_serialize_gtypes () gdk_content_formats_union_serialize_gtypes GdkContentFormats * gdk_content_formats_union_serialize_gtypes (GdkContentFormats *formats); Add GTypes for the mime types in formats for which serializers are registered. Return: a new GdkContentFormats Parameters formats a GdkContentFormats. [transfer full] gdk_content_formats_union_deserialize_gtypes () gdk_content_formats_union_deserialize_gtypes GdkContentFormats * gdk_content_formats_union_deserialize_gtypes (GdkContentFormats *formats); Add GTypes for mime types in formats for which deserializers are registered. Return: a new GdkContentFormats Parameters formats a GdkContentFormats. [transfer full] gdk_content_formats_union_serialize_mime_types () gdk_content_formats_union_serialize_mime_types GdkContentFormats * gdk_content_formats_union_serialize_mime_types (GdkContentFormats *formats); Add mime types for GTypes in formats for which serializers are registered. Return: a new GdkContentFormats Parameters formats a GdkContentFormats. [transfer full] gdk_content_formats_union_deserialize_mime_types () gdk_content_formats_union_deserialize_mime_types GdkContentFormats * gdk_content_formats_union_deserialize_mime_types (GdkContentFormats *formats); Add mime types for GTypes in formats for which deserializers are registered. Return: a new GdkContentFormats Parameters formats a GdkContentFormats. [transfer full] gdk_content_formats_builder_new () gdk_content_formats_builder_new GdkContentFormatsBuilder * gdk_content_formats_builder_new (void); Create a new GdkContentFormatsBuilder object. The resulting builder would create an empty GdkContentFormats. Use addition functions to add types to it. Returns a new GdkContentFormatsBuilder gdk_content_formats_builder_free_to_formats () gdk_content_formats_builder_free_to_formats GdkContentFormats * gdk_content_formats_builder_free_to_formats (GdkContentFormatsBuilder *builder); Creates a new GdkContentFormats from the current state of the given builder , and frees the builder instance. [skip] Parameters builder a GdkContentFormatsBuilder Returns the newly created GdkContentFormats with all the formats added to builder . [transfer full] gdk_content_formats_builder_add_formats () gdk_content_formats_builder_add_formats void gdk_content_formats_builder_add_formats (GdkContentFormatsBuilder *builder, const GdkContentFormats *formats); Appends all formats from formats to builder , skipping those that already exist. Parameters builder a GdkContentFormatsBuilder formats the formats to add gdk_content_formats_builder_add_gtype () gdk_content_formats_builder_add_gtype void gdk_content_formats_builder_add_gtype (GdkContentFormatsBuilder *builder, GType type); Appends gtype to builder if it has not already been added. Parameters builder a GdkContentFormatsBuilder type a GType gdk_content_formats_builder_add_mime_type () gdk_content_formats_builder_add_mime_type void gdk_content_formats_builder_add_mime_type (GdkContentFormatsBuilder *builder, const char *mime_type); Appends mime_type to builder if it has not already been added. Parameters builder a GdkContentFormatsBuilder mime_type a mime type gdk_content_formats_builder_ref () gdk_content_formats_builder_ref GdkContentFormatsBuilder * gdk_content_formats_builder_ref (GdkContentFormatsBuilder *builder); Acquires a reference on the given builder . This function is intended primarily for bindings. GdkContentFormatsBuilder objects should not be kept around. Parameters builder a GdkContentFormatsBuilder Returns the given GdkContentFormatsBuilder with its reference count increased. [transfer none] gdk_content_formats_builder_unref () gdk_content_formats_builder_unref void gdk_content_formats_builder_unref (GdkContentFormatsBuilder *builder); Releases a reference on the given builder . Parameters builder a GdkContentFormatsBuilder gdk_content_formats_builder_to_formats () gdk_content_formats_builder_to_formats GdkContentFormats * gdk_content_formats_builder_to_formats (GdkContentFormatsBuilder *builder); Creates a new GdkContentFormats from the given builder . The given GdkContentFormatsBuilder is reset once this function returns; you cannot call this function multiple times on the same builder instance. This function is intended primarily for bindings. C code should use gdk_content_formats_builder_free_to_formats(). Parameters builder a GdkContentFormatsBuilder Returns the newly created GdkContentFormats with all the formats added to builder . [transfer full] Types and Values GdkContentFormats GdkContentFormats typedef struct _GdkContentFormats GdkContentFormats; A GdkContentFormats struct is a reference counted struct and should be treated as opaque. GdkContentFormatsBuilder GdkContentFormatsBuilder typedef struct _GdkContentFormatsBuilder GdkContentFormatsBuilder; A GdkContentFormatsBuilder struct is an opaque struct. It is meant to not be kept around and only be used to create new GdkContentFormats objects. See Also GdkDrag, GdkDrop, GdkClipboard, GdkContentProvider docs/reference/gdk/xml/pango_interaction.xml0000664000175000017500000003204214010071747021370 0ustar mclasenmclasen ]> Pango Interaction 3 GDK4 Library Pango Interaction Using Pango in GDK Functions cairo_region_t * gdk_pango_layout_get_clip_region () cairo_region_t * gdk_pango_layout_line_get_clip_region () Includes#include <gdk/gdk.h> Description Pango is the text layout system used by GDK and GTK. The functions and types in this section are used to obtain clip regions for PangoLayouts, and to get PangoContexts that can be used with GDK. Creating a PangoLayout object is the first step in rendering text, and requires getting a handle to a PangoContext. For GTK programs, you’ll usually want to use gtk_widget_get_pango_context(), or gtk_widget_create_pango_layout(). Once you have a PangoLayout, you can set the text and attributes of it with Pango functions like pango_layout_set_text() and get its size with pango_layout_get_size(). (Note that Pango uses a fixed point system internally, so converting between Pango units and pixels using PANGO_SCALE or the PANGO_PIXELS() macro.) Rendering a Pango layout is done most simply with pango_cairo_show_layout(); you can also draw pieces of the layout with pango_cairo_show_layout_line(). Draw transformed text with Pango and cairo Output of the <link linkend="rotated-example">example</link> above. Functions gdk_pango_layout_get_clip_region () gdk_pango_layout_get_clip_region cairo_region_t * gdk_pango_layout_get_clip_region (PangoLayout *layout, int x_origin, int y_origin, const int *index_ranges, int n_ranges); Obtains a clip region which contains the areas where the given ranges of text would be drawn. x_origin and y_origin are the top left point to center the layout. index_ranges should contain ranges of bytes in the layout’s text. Note that the regions returned correspond to logical extents of the text ranges, not ink extents. So the drawn layout may in fact touch areas out of the clip region. The clip region is mainly useful for highlightling parts of text, such as when text is selected. [skip] Parameters layout a PangoLayout x_origin X pixel where you intend to draw the layout with this clip y_origin Y pixel where you intend to draw the layout with this clip index_ranges array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes n_ranges number of ranges in index_ranges , i.e. half the size of index_ranges Returns a clip region containing the given ranges gdk_pango_layout_line_get_clip_region () gdk_pango_layout_line_get_clip_region cairo_region_t * gdk_pango_layout_line_get_clip_region (PangoLayoutLine *line, int x_origin, int y_origin, const int *index_ranges, int n_ranges); Obtains a clip region which contains the areas where the given ranges of text would be drawn. x_origin and y_origin are the top left position of the layout. index_ranges should contain ranges of bytes in the layout’s text. The clip region will include space to the left or right of the line (to the layout bounding box) if you have indexes above or below the indexes contained inside the line. This is to draw the selection all the way to the side of the layout. However, the clip region is in line coordinates, not layout coordinates. Note that the regions returned correspond to logical extents of the text ranges, not ink extents. So the drawn line may in fact touch areas out of the clip region. The clip region is mainly useful for highlightling parts of text, such as when text is selected. [skip] Parameters line a PangoLayoutLine x_origin X pixel where you intend to draw the layout line with this clip y_origin baseline pixel where you intend to draw the layout line with this clip index_ranges array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes. [array] n_ranges number of ranges in index_ranges , i.e. half the size of index_ranges Returns a clip region containing the given ranges docs/reference/gdk/xml/cairo_interaction.xml0000664000175000017500000005034014010071747021362 0ustar mclasenmclasen ]> Cairo Interaction 3 GDK4 Library Cairo Interaction Functions to support using cairo Functions cairo_surface_t * gdk_surface_create_similar_surface () void gdk_cairo_set_source_rgba () void gdk_cairo_set_source_pixbuf () void gdk_cairo_rectangle () void gdk_cairo_region () cairo_region_t * gdk_cairo_region_create_from_surface () void gdk_cairo_draw_from_gl () Includes#include <gdk/gdk.h> Description Cairo is a graphics library that supports vector graphics and image compositing that can be used with GDK and GTK. GDK does not wrap the cairo API, instead it allows to create cairo contexts which can be used to draw on GdkSurfaces. Additional functions allow use GdkRectangles with cairo and to use GdkRGBAs, GdkPixbufs and GdkSurfaces as sources for drawing operations. Functions gdk_surface_create_similar_surface () gdk_surface_create_similar_surface cairo_surface_t * gdk_surface_create_similar_surface (GdkSurface *surface, cairo_content_t content, int width, int height); Create a new surface that is as compatible as possible with the given surface . For example the new surface will have the same fallback resolution and font options as surface . Generally, the new surface will also use the same backend as surface , unless that is not possible for some reason. The type of the returned surface may be examined with cairo_surface_get_type(). Initially the surface contents are all 0 (transparent if contents have transparency, black otherwise.) Parameters surface surface to make new surface similar to content the content for the new surface width width of the new surface height height of the new surface Returns a pointer to the newly allocated surface. The caller owns the surface and should call cairo_surface_destroy() when done with it. This function always returns a valid pointer, but it will return a pointer to a “nil” surface if other is already in an error state or any other error occurs. gdk_cairo_set_source_rgba () gdk_cairo_set_source_rgba void gdk_cairo_set_source_rgba (cairo_t *cr, const GdkRGBA *rgba); Sets the specified GdkRGBA as the source color of cr . Parameters cr a cairo context rgba a GdkRGBA gdk_cairo_set_source_pixbuf () gdk_cairo_set_source_pixbuf void gdk_cairo_set_source_pixbuf (cairo_t *cr, const GdkPixbuf *pixbuf, double pixbuf_x, double pixbuf_y); Sets the given pixbuf as the source pattern for cr . The pattern has an extend mode of CAIRO_EXTEND_NONE and is aligned so that the origin of pixbuf is pixbuf_x , pixbuf_y . Parameters cr a cairo context pixbuf a GdkPixbuf pixbuf_x X coordinate of location to place upper left corner of pixbuf pixbuf_y Y coordinate of location to place upper left corner of pixbuf gdk_cairo_rectangle () gdk_cairo_rectangle void gdk_cairo_rectangle (cairo_t *cr, const GdkRectangle *rectangle); Adds the given rectangle to the current path of cr . Parameters cr a cairo context rectangle a GdkRectangle gdk_cairo_region () gdk_cairo_region void gdk_cairo_region (cairo_t *cr, const cairo_region_t *region); Adds the given region to the current path of cr . Parameters cr a cairo context region a cairo_region_t gdk_cairo_region_create_from_surface () gdk_cairo_region_create_from_surface cairo_region_t * gdk_cairo_region_create_from_surface (cairo_surface_t *surface); Creates region that describes covers the area where the given surface is more than 50% opaque. This function takes into account device offsets that might be set with cairo_surface_set_device_offset(). Parameters surface a cairo surface Returns A cairo_region_t; must be freed with cairo_region_destroy() gdk_cairo_draw_from_gl () gdk_cairo_draw_from_gl void gdk_cairo_draw_from_gl (cairo_t *cr, GdkSurface *surface, int source, int source_type, int buffer_scale, int x, int y, int width, int height); This is the main way to draw GL content in GTK. It takes a render buffer ID (source_type == GL_RENDERBUFFER) or a texture id (source_type == GL_TEXTURE) and draws it onto cr with an OVER operation, respecting the current clip. The top left corner of the rectangle specified by x , y , width and height will be drawn at the current (0,0) position of the cairo_t. This will work for *all* cairo_t, as long as surface is realized, but the fallback implementation that reads back the pixels from the buffer may be used in the general case. In the case of direct drawing to a surface with no special effects applied to cr it will however use a more efficient approach. For GL_RENDERBUFFER the code will always fall back to software for buffers with alpha components, so make sure you use GL_TEXTURE if using alpha. Calling this may change the current GL context. Parameters cr a cairo context surface The surface we're rendering for (not necessarily into) source The GL ID of the source buffer source_type The type of the source buffer_scale The scale-factor that the source buffer is allocated for x The source x position in source to start copying from in GL coordinates y The source y position in source to start copying from in GL coordinates width The width of the region to draw height The height of the region to draw docs/reference/gdk/xml/regions.xml0000664000175000017500000003565314010071747017346 0ustar mclasenmclasen ]> GdkRectangle 3 GDK4 Library GdkRectangle Simple graphical data type Functions gboolean gdk_rectangle_intersect () void gdk_rectangle_union () gboolean gdk_rectangle_equal () gboolean gdk_rectangle_contains_point () Types and Values GdkRectangle Object Hierarchy GBoxed ╰── GdkRectangle Includes#include <gdk/gdk.h> Description GDK provides a GdkRectangle data type for representing rectangles. Together with Cairo’s cairo_region_t data type, these are the central types for representing sets of pixels. A GdkRectangle represents the position and size of a rectangle. The intersection of two rectangles can be computed with gdk_rectangle_intersect(). To find the union of two rectangles use gdk_rectangle_union(). cairo_region_t is usually used for managing clipping of graphical operations. The graphene library has a number of other data types for regions and volumes in 2D and 3D. Functions gdk_rectangle_intersect () gdk_rectangle_intersect gboolean gdk_rectangle_intersect (const GdkRectangle *src1, const GdkRectangle *src2, GdkRectangle *dest); Calculates the intersection of two rectangles. It is allowed for dest to be the same as either src1 or src2 . If the rectangles do not intersect, dest ’s width and height is set to 0 and its x and y values are undefined. If you are only interested in whether the rectangles intersect, but not in the intersecting area itself, pass NULL for dest . Parameters src1 a GdkRectangle src2 a GdkRectangle dest return location for the intersection of src1 and src2 , or NULL. [out caller-allocates][allow-none] Returns TRUE if the rectangles intersect. gdk_rectangle_union () gdk_rectangle_union void gdk_rectangle_union (const GdkRectangle *src1, const GdkRectangle *src2, GdkRectangle *dest); Calculates the union of two rectangles. The union of rectangles src1 and src2 is the smallest rectangle which includes both src1 and src2 within it. It is allowed for dest to be the same as either src1 or src2 . Note that this function does not ignore 'empty' rectangles (ie. with zero width or height). Parameters src1 a GdkRectangle src2 a GdkRectangle dest return location for the union of src1 and src2 . [out] gdk_rectangle_equal () gdk_rectangle_equal gboolean gdk_rectangle_equal (const GdkRectangle *rect1, const GdkRectangle *rect2); Checks if the two given rectangles are equal. Parameters rect1 a GdkRectangle rect2 a GdkRectangle Returns TRUE if the rectangles are equal. gdk_rectangle_contains_point () gdk_rectangle_contains_point gboolean gdk_rectangle_contains_point (const GdkRectangle *rect, int x, int y); Returns TRUE if rect contains the point described by x and y . Parameters rect a GdkRectangle x X coordinate y Y coordinate Returns TRUE if rect contains the point Types and Values GdkRectangle GdkRectangle typedef struct { int x, y; int width, height; } GdkRectangle; Defines the position and size of a rectangle. It is identical to cairo_rectangle_int_t. Members int x; the x coordinate of the top left corner int y; the y coordinate of the top left corner int width; the width of the rectangle int height; the height of the rectangle docs/reference/gdk/xml/keys.xml0000664000175000017500000005705714010071747016655 0ustar mclasenmclasen ]> Key Values 3 GDK4 Library Key Values Functions for manipulating keyboard codes Functions const char * gdk_keyval_name () guint gdk_keyval_from_name () void gdk_keyval_convert_case () guint gdk_keyval_to_upper () guint gdk_keyval_to_lower () gboolean gdk_keyval_is_upper () gboolean gdk_keyval_is_lower () guint32 gdk_keyval_to_unicode () guint gdk_unicode_to_keyval () Includes#include <gdk/gdk.h> Description Key values are the codes which are sent whenever a key is pressed or released. They are included in the data contained in a key press or release GdkEvent. The complete list of key values can be found in the gdk/gdkkeysyms.h header file. Key values are regularly updated from the upstream X.org X11 implementation, so new values are added regularly. They will be prefixed with GDK_KEY_ rather than XF86XK_ or XK_ (for older symbols). Key values can be converted into a string representation using gdk_keyval_name(). The reverse function, converting a string to a key value, is provided by gdk_keyval_from_name(). The case of key values can be determined using gdk_keyval_is_upper() and gdk_keyval_is_lower(). Key values can be converted to upper or lower case using gdk_keyval_to_upper() and gdk_keyval_to_lower(). When it makes sense, key values can be converted to and from Unicode characters with gdk_keyval_to_unicode() and gdk_unicode_to_keyval(). GroupsAt the lowest level, physical keys on the keyboard are represented by numeric keycodes, and GDK knows how to translate these keycodes into key values according to the configured keyboard layout and the current state of the keyboard. In the GDK api, the mapping from keycodes to key values is available via gdk_display_map_keycode(), and the reverse mapping is available via gdk_display_map_keyval(). The results of these functions are returned in GdkKeymapKey structs. You can think of a GdkKeymapKey as a representation of a symbol printed on a physical keyboard key. That is, it contains three pieces of information. First, it contains the hardware keycode; this is an identifying number for a physical key. Second, it contains the “level” of the key. The level indicates which symbol on the key will be used, in a vertical direction. So on a standard US keyboard, the key with the number “1“ on it also has the exclamation point (”!”) character on it. The level indicates whether to use the “1” or the “!” symbol. The letter keys are considered to have a lowercase letter at level 0, and an uppercase letter at level 1, though normally only the uppercase letter is printed on the key. Third, the GdkKeymapKey contains a group; groups are not used on standard US keyboards, but are used in many other countries. On a keyboard with groups, there can be 3 or 4 symbols printed on a single key. The group indicates movement in a horizontal direction. Usually groups are used for two different languages. In group 0, a key might have two English characters, and in group 1 it might have two Hebrew characters. The Hebrew characters will be printed on the key next to the English characters. When GDK creates a key event in order to deliver a key press or release, it first converts the current keyboard state into an effective group and level. This is done via a set of rules that varies widely according to type of keyboard and user configuration. The input to this translation consists of the hardware keycode pressed, the active modifiers, and the active group. It then applies the appropriate rules, and returns the group/level to be used to index the keymap, along with the modifiers which did not affect the group and level. i.e. it returns “unconsumed modifiers.” The keyboard group may differ from the effective group used for lookups because some keys don't have multiple groups - e.g. the Enter key is always in group 0 regardless of keyboard state. The results of the translation, including the keyval, are all included in the key event and can be obtained via GdkEvent getters. Consumed modifiersThe consumed_modifiers in a key event are modifiers that should be masked out from state when comparing this key press to a hot key. For instance, on a US keyboard, the plus symbol is shifted, so when comparing a key press to a <Control>plus accelerator <Shift> should be masked out. An older interpretation consumed_modifiers was that it contained all modifiers that might affect the translation of the key; this allowed accelerators to be stored with irrelevant consumed modifiers, by doing: However, this did not work if multi-modifier combinations were used in the keymap, since, for instance, <Control> would be masked out even if only <Control>&lt;Alt> was used in the keymap. To support this usage as well as well as possible, all single modifier combinations that could affect the key for any combination of modifiers will be returned in consumed_modifiers ; multi-modifier combinations are returned only when actually found in state . When you store accelerators, you should always store them with consumed modifiers removed. Store <Control>plus, not <Control>&lt;Shift>plus. Functions gdk_keyval_name () gdk_keyval_name const char * gdk_keyval_name (guint keyval); Converts a key value into a symbolic name. The names are the same as those in the gdk/gdkkeysyms.h header file but without the leading “GDK_KEY_”. Parameters keyval a key value Returns a string containing the name of the key, or NULL if keyval is not a valid key. The string should not be modified. [nullable][transfer none] gdk_keyval_from_name () gdk_keyval_from_name guint gdk_keyval_from_name (const char *keyval_name); Converts a key name to a key value. The names are the same as those in the gdk/gdkkeysyms.h header file but without the leading “GDK_KEY_”. Parameters keyval_name a key name Returns the corresponding key value, or GDK_KEY_VoidSymbol if the key name is not a valid key gdk_keyval_convert_case () gdk_keyval_convert_case void gdk_keyval_convert_case (guint symbol, guint *lower, guint *upper); Obtains the upper- and lower-case versions of the keyval symbol . Examples of keyvals are GDK_KEY_a, GDK_KEY_Enter, GDK_KEY_F1, etc. Parameters symbol a keyval lower return location for lowercase version of symbol . [out] upper return location for uppercase version of symbol . [out] gdk_keyval_to_upper () gdk_keyval_to_upper guint gdk_keyval_to_upper (guint keyval); Converts a key value to upper case, if applicable. Parameters keyval a key value. Returns the upper case form of keyval , or keyval itself if it is already in upper case or it is not subject to case conversion. gdk_keyval_to_lower () gdk_keyval_to_lower guint gdk_keyval_to_lower (guint keyval); Converts a key value to lower case, if applicable. Parameters keyval a key value. Returns the lower case form of keyval , or keyval itself if it is already in lower case or it is not subject to case conversion. gdk_keyval_is_upper () gdk_keyval_is_upper gboolean gdk_keyval_is_upper (guint keyval); Returns TRUE if the given key value is in upper case. Parameters keyval a key value. Returns TRUE if keyval is in upper case, or if keyval is not subject to case conversion. gdk_keyval_is_lower () gdk_keyval_is_lower gboolean gdk_keyval_is_lower (guint keyval); Returns TRUE if the given key value is in lower case. Parameters keyval a key value. Returns TRUE if keyval is in lower case, or if keyval is not subject to case conversion. gdk_keyval_to_unicode () gdk_keyval_to_unicode guint32 gdk_keyval_to_unicode (guint keyval); Convert from a GDK key symbol to the corresponding ISO10646 (Unicode) character. Note that the conversion does not take the current locale into consideration, which might be expected for particular keyvals, such as GDK_KEY_KP_Decimal. Parameters keyval a GDK key symbol Returns the corresponding unicode character, or 0 if there is no corresponding character. gdk_unicode_to_keyval () gdk_unicode_to_keyval guint gdk_unicode_to_keyval (guint32 wc); Convert from a ISO10646 character to a key symbol. Parameters wc a ISO10646 encoded character Returns the corresponding GDK key symbol, if one exists. or, if there is no corresponding symbol, wc | 0x01000000 docs/reference/gdk/xml/gdkdevice.xml0000664000175000017500000023063614010071747017623 0ustar mclasenmclasen ]> GdkDevice 3 GDK4 Library GdkDevice Object representing an input device Functions const char * gdk_device_get_name () const char * gdk_device_get_vendor_id () const char * gdk_device_get_product_id () GdkInputSource gdk_device_get_source () GdkDisplay * gdk_device_get_display () gboolean gdk_device_get_has_cursor () GdkSeat * gdk_device_get_seat () guint gdk_device_get_num_touches () GdkDeviceTool * gdk_device_get_device_tool () gboolean gdk_device_get_caps_lock_state () PangoDirection gdk_device_get_direction () GdkModifierType gdk_device_get_modifier_state () gboolean gdk_device_get_num_lock_state () gboolean gdk_device_get_scroll_lock_state () gboolean gdk_device_has_bidi_layouts () GdkSurface * gdk_device_get_surface_at_position () guint64 gdk_device_tool_get_serial () GdkDeviceToolType gdk_device_tool_get_tool_type () guint64 gdk_device_tool_get_hardware_id () GdkAxisFlags gdk_device_tool_get_axes () Properties gbooleancaps-lock-stateRead PangoDirectiondirectionRead GdkDisplay *displayRead / Write / Construct Only gbooleanhas-bidi-layoutsRead gbooleanhas-cursorRead / Write / Construct Only GdkModifierTypemodifier-stateRead guintn-axesRead char *nameRead / Write / Construct Only gbooleannum-lock-stateRead guintnum-touchesRead / Write / Construct Only char *product-idRead / Write / Construct Only gbooleanscroll-lock-stateRead GdkSeat *seatRead / Write GdkInputSourcesourceRead / Write / Construct Only GdkDeviceTool *toolRead char *vendor-idRead / Write / Construct Only GdkAxisFlagsaxesRead / Write / Construct Only guint64hardware-idRead / Write / Construct Only guint64serialRead / Write / Construct Only GdkDeviceToolTypetool-typeRead / Write / Construct Only Signals voidchangedRun Last voidtool-changedRun Last Types and Values GdkDevice enumGdkInputSource enumGdkAxisUse enumGdkAxisFlags GdkDeviceTool enumGdkDeviceToolType structGdkTimeCoord Object Hierarchy GObject ├── GdkDevice ╰── GdkDeviceTool Known Derived Interfaces GdkDevice is required by GdkDevicePad. Includes#include <gdk/gdk.h> Description The GdkDevice object represents a single input device, such as a keyboard, a mouse, a touchpad, etc. See the GdkSeat documentation for more information about the various kinds of devices, and their relationships. Functions gdk_device_get_name () gdk_device_get_name const char * gdk_device_get_name (GdkDevice *device); Determines the name of the device, suitable for showing in a user interface. Parameters device a GdkDevice Returns a name gdk_device_get_vendor_id () gdk_device_get_vendor_id const char * gdk_device_get_vendor_id (GdkDevice *device); Returns the vendor ID of this device, or NULL if this information couldn't be obtained. This ID is retrieved from the device, and is thus constant for it. This function, together with gdk_device_get_product_id(), can be used to eg. compose GSettings paths to store settings for this device. Parameters device a physical GdkDevice Returns the vendor ID, or NULL. [nullable] gdk_device_get_product_id () gdk_device_get_product_id const char * gdk_device_get_product_id (GdkDevice *device); Returns the product ID of this device, or NULL if this information couldn't be obtained. This ID is retrieved from the device, and is thus constant for it. See gdk_device_get_vendor_id() for more information. Parameters device a physical GdkDevice Returns the product ID, or NULL. [nullable] gdk_device_get_source () gdk_device_get_source GdkInputSource gdk_device_get_source (GdkDevice *device); Determines the type of the device. Parameters device a GdkDevice Returns a GdkInputSource gdk_device_get_display () gdk_device_get_display GdkDisplay * gdk_device_get_display (GdkDevice *device); Returns the GdkDisplay to which device pertains. Parameters device a GdkDevice Returns a GdkDisplay. This memory is owned by GTK, and must not be freed or unreffed. [transfer none] gdk_device_get_has_cursor () gdk_device_get_has_cursor gboolean gdk_device_get_has_cursor (GdkDevice *device); Determines whether the pointer follows device motion. This is not meaningful for keyboard devices, which don't have a pointer. Parameters device a GdkDevice Returns TRUE if the pointer follows device motion gdk_device_get_seat () gdk_device_get_seat GdkSeat * gdk_device_get_seat (GdkDevice *device); Returns the GdkSeat the device belongs to. Parameters device A GdkDevice Returns a GdkSeat. [transfer none] gdk_device_get_num_touches () gdk_device_get_num_touches guint gdk_device_get_num_touches (GdkDevice *device); Retrieves the number of touch points associated to device . Parameters device a GdkDevice Returns the number of touch points gdk_device_get_device_tool () gdk_device_get_device_tool GdkDeviceTool * gdk_device_get_device_tool (GdkDevice *device); Retrieves the GdkDeviceTool associated to device . Parameters device a GdkDevice Returns the GdkDeviceTool. [transfer none] gdk_device_get_caps_lock_state () gdk_device_get_caps_lock_state gboolean gdk_device_get_caps_lock_state (GdkDevice *device); Retrieves whether the Caps Lock modifier of the keyboard is locked, if device is a keyboard device. Parameters device a GdkDevice Returns TRUE if Caps Lock is on for device gdk_device_get_direction () gdk_device_get_direction PangoDirection gdk_device_get_direction (GdkDevice *device); Returns the direction of effective layout of the keyboard, if device is a keyboard device. The direction of a layout is the direction of the majority of its symbols. See pango_unichar_direction(). Parameters device a GdkDevice Returns PANGO_DIRECTION_LTR or PANGO_DIRECTION_RTL if it can determine the direction. PANGO_DIRECTION_NEUTRAL otherwise gdk_device_get_modifier_state () gdk_device_get_modifier_state GdkModifierType gdk_device_get_modifier_state (GdkDevice *device); Retrieves the current modifier state of the keyboard, if device is a keyboard device. Parameters device a GdkDevice Returns the current modifier state gdk_device_get_num_lock_state () gdk_device_get_num_lock_state gboolean gdk_device_get_num_lock_state (GdkDevice *device); Retrieves whether the Num Lock modifier of the keyboard is locked, if device is a keyboard device. Parameters device a GdkDevice Returns TRUE if Num Lock is on for device gdk_device_get_scroll_lock_state () gdk_device_get_scroll_lock_state gboolean gdk_device_get_scroll_lock_state (GdkDevice *device); Retrieves whether the Scroll Lock modifier of the keyboard is locked, if device is a keyboard device. Parameters device a GdkDevice Returns TRUE if Scroll Lock is on for device gdk_device_has_bidi_layouts () gdk_device_has_bidi_layouts gboolean gdk_device_has_bidi_layouts (GdkDevice *device); Determines if keyboard layouts for both right-to-left and left-to-right languages are in use on the keyboard, if device is a keyboard device. Parameters device a GdkDevice Returns TRUE if there are layouts with both directions, FALSE otherwise gdk_device_get_surface_at_position () gdk_device_get_surface_at_position GdkSurface * gdk_device_get_surface_at_position (GdkDevice *device, double *win_x, double *win_y); Obtains the surface underneath device , returning the location of the device in win_x and win_y in double precision. Returns NULL if the surface tree under device is not known to GDK (for example, belongs to another application). Parameters device pointer GdkDevice to query info to. win_x return location for the X coordinate of the device location, relative to the surface origin, or NULL. [out][allow-none] win_y return location for the Y coordinate of the device location, relative to the surface origin, or NULL. [out][allow-none] Returns the GdkSurface under the device position, or NULL. [nullable][transfer none] gdk_device_tool_get_serial () gdk_device_tool_get_serial guint64 gdk_device_tool_get_serial (GdkDeviceTool *tool); Gets the serial of this tool, this value can be used to identify a physical tool (eg. a tablet pen) across program executions. Parameters tool a GdkDeviceTool Returns The serial ID for this tool gdk_device_tool_get_tool_type () gdk_device_tool_get_tool_type GdkDeviceToolType gdk_device_tool_get_tool_type (GdkDeviceTool *tool); Gets the GdkDeviceToolType of the tool. Parameters tool a GdkDeviceTool Returns The physical type for this tool. This can be used to figure out what sort of pen is being used, such as an airbrush or a pencil. gdk_device_tool_get_hardware_id () gdk_device_tool_get_hardware_id guint64 gdk_device_tool_get_hardware_id (GdkDeviceTool *tool); Gets the hardware ID of this tool, or 0 if it's not known. When non-zero, the identificator is unique for the given tool model, meaning that two identical tools will share the same hardware_id , but will have different serial numbers (see gdk_device_tool_get_serial()). This is a more concrete (and device specific) method to identify a GdkDeviceTool than gdk_device_tool_get_tool_type(), as a tablet may support multiple devices with the same GdkDeviceToolType, but having different hardware identificators. Parameters tool a GdkDeviceTool Returns The hardware identificator of this tool. gdk_device_tool_get_axes () gdk_device_tool_get_axes GdkAxisFlags gdk_device_tool_get_axes (GdkDeviceTool *tool); Gets the axes of the tool. Parameters tool a GdkDeviceTool Returns the axes of tool Types and Values GdkDevice GdkDevice typedef struct _GdkDevice GdkDevice; The GdkDevice struct contains only private fields and should not be accessed directly. enum GdkInputSource GdkInputSource An enumeration describing the type of an input device in general terms. Members GDK_SOURCE_MOUSE the device is a mouse. (This will be reported for the core pointer, even if it is something else, such as a trackball.) GDK_SOURCE_PEN the device is a stylus of a graphics tablet or similar device. GDK_SOURCE_KEYBOARD the device is a keyboard. GDK_SOURCE_TOUCHSCREEN the device is a direct-input touch device, such as a touchscreen or tablet GDK_SOURCE_TOUCHPAD the device is an indirect touch device, such as a touchpad GDK_SOURCE_TRACKPOINT the device is a trackpoint GDK_SOURCE_TABLET_PAD the device is a "pad", a collection of buttons, rings and strips found in drawing tablets enum GdkAxisUse GdkAxisUse An enumeration describing the way in which a device axis (valuator) maps onto the predefined valuator types that GTK understands. Note that the X and Y axes are not really needed; pointer devices report their location via the x/y members of events regardless. Whether X and Y are present as axes depends on the GDK backend. Members GDK_AXIS_IGNORE the axis is ignored. GDK_AXIS_X the axis is used as the x axis. GDK_AXIS_Y the axis is used as the y axis. GDK_AXIS_DELTA_X the axis is used as the scroll x delta GDK_AXIS_DELTA_Y the axis is used as the scroll y delta GDK_AXIS_PRESSURE the axis is used for pressure information. GDK_AXIS_XTILT the axis is used for x tilt information. GDK_AXIS_YTILT the axis is used for y tilt information. GDK_AXIS_WHEEL the axis is used for wheel information. GDK_AXIS_DISTANCE the axis is used for pen/tablet distance information GDK_AXIS_ROTATION the axis is used for pen rotation information GDK_AXIS_SLIDER the axis is used for pen slider information GDK_AXIS_LAST a constant equal to the numerically highest axis value. enum GdkAxisFlags GdkAxisFlags Flags describing the current capabilities of a device/tool. Members GDK_AXIS_FLAG_X X axis is present GDK_AXIS_FLAG_Y Y axis is present GDK_AXIS_FLAG_DELTA_X Scroll X delta axis is present GDK_AXIS_FLAG_DELTA_Y Scroll Y delta axis is present GDK_AXIS_FLAG_PRESSURE Pressure axis is present GDK_AXIS_FLAG_XTILT X tilt axis is present GDK_AXIS_FLAG_YTILT Y tilt axis is present GDK_AXIS_FLAG_WHEEL Wheel axis is present GDK_AXIS_FLAG_DISTANCE Distance axis is present GDK_AXIS_FLAG_ROTATION Z-axis rotation is present GDK_AXIS_FLAG_SLIDER Slider axis is present GdkDeviceTool GdkDeviceTool typedef struct _GdkDeviceTool GdkDeviceTool; A physical tool associated to a GdkDevice. enum GdkDeviceToolType GdkDeviceToolType Indicates the specific type of tool being used being a tablet. Such as an airbrush, pencil, etc. Members GDK_DEVICE_TOOL_TYPE_UNKNOWN Tool is of an unknown type. GDK_DEVICE_TOOL_TYPE_PEN Tool is a standard tablet stylus. GDK_DEVICE_TOOL_TYPE_ERASER Tool is standard tablet eraser. GDK_DEVICE_TOOL_TYPE_BRUSH Tool is a brush stylus. GDK_DEVICE_TOOL_TYPE_PENCIL Tool is a pencil stylus. GDK_DEVICE_TOOL_TYPE_AIRBRUSH Tool is an airbrush stylus. GDK_DEVICE_TOOL_TYPE_MOUSE Tool is a mouse. GDK_DEVICE_TOOL_TYPE_LENS Tool is a lens cursor. struct GdkTimeCoord GdkTimeCoord struct GdkTimeCoord { guint32 time; GdkAxisFlags flags; double axes[GDK_AXIS_LAST]; }; A GdkTimeCoord stores a single event in a motion history. Members guint32 time; The timestamp for this event. GdkAxisFlags flags; Flags indicating what axes are present double axes[GDK_AXIS_LAST]; axis values. [array fixed-size=12] Property Details The <literal>“caps-lock-state”</literal> property GdkDevice:caps-lock-state “caps-lock-state” gboolean Whether the keyboard caps lock is on.Owner: GdkDevice Flags: Read Default value: FALSE The <literal>“direction”</literal> property GdkDevice:direction “direction” PangoDirection The direction of the current layout of the keyboard.Owner: GdkDevice Flags: Read Default value: PANGO_DIRECTION_NEUTRAL The <literal>“display”</literal> property GdkDevice:display “display” GdkDisplay * The GdkDisplay the GdkDevice pertains to. Owner: GdkDevice Flags: Read / Write / Construct Only The <literal>“has-bidi-layouts”</literal> property GdkDevice:has-bidi-layouts “has-bidi-layouts” gboolean Whether the keyboard has bidi layouts.Owner: GdkDevice Flags: Read Default value: FALSE The <literal>“has-cursor”</literal> property GdkDevice:has-cursor “has-cursor” gboolean Whether the device is represented by a cursor on the screen. Owner: GdkDevice Flags: Read / Write / Construct Only Default value: FALSE The <literal>“modifier-state”</literal> property GdkDevice:modifier-state “modifier-state” GdkModifierType The modifier state of the keyboard.Owner: GdkDevice Flags: Read The <literal>“n-axes”</literal> property GdkDevice:n-axes “n-axes” guint Number of axes in the device. Owner: GdkDevice Flags: Read Default value: 0 The <literal>“name”</literal> property GdkDevice:name “name” char * The device name. Owner: GdkDevice Flags: Read / Write / Construct Only Default value: NULL The <literal>“num-lock-state”</literal> property GdkDevice:num-lock-state “num-lock-state” gboolean Whether the keyboard num lock is on.Owner: GdkDevice Flags: Read Default value: FALSE The <literal>“num-touches”</literal> property GdkDevice:num-touches “num-touches” guint The maximal number of concurrent touches on a touch device. Will be 0 if the device is not a touch device or if the number of touches is unknown. Owner: GdkDevice Flags: Read / Write / Construct Only Default value: 0 The <literal>“product-id”</literal> property GdkDevice:product-id “product-id” char * Product ID of this device, see gdk_device_get_product_id(). Owner: GdkDevice Flags: Read / Write / Construct Only Default value: NULL The <literal>“scroll-lock-state”</literal> property GdkDevice:scroll-lock-state “scroll-lock-state” gboolean Whether the keyboard scroll lock is on.Owner: GdkDevice Flags: Read Default value: FALSE The <literal>“seat”</literal> property GdkDevice:seat “seat” GdkSeat * GdkSeat of this device. Owner: GdkDevice Flags: Read / Write The <literal>“source”</literal> property GdkDevice:source “source” GdkInputSource Source type for the device. Owner: GdkDevice Flags: Read / Write / Construct Only Default value: GDK_SOURCE_MOUSE The <literal>“tool”</literal> property GdkDevice:tool “tool” GdkDeviceTool * The tool that is currently used with this device.Owner: GdkDevice Flags: Read The <literal>“vendor-id”</literal> property GdkDevice:vendor-id “vendor-id” char * Vendor ID of this device, see gdk_device_get_vendor_id(). Owner: GdkDevice Flags: Read / Write / Construct Only Default value: NULL The <literal>“axes”</literal> property GdkDeviceTool:axes “axes” GdkAxisFlags Tool axes.Owner: GdkDeviceTool Flags: Read / Write / Construct Only The <literal>“hardware-id”</literal> property GdkDeviceTool:hardware-id “hardware-id” guint64 Hardware ID.Owner: GdkDeviceTool Flags: Read / Write / Construct Only Default value: 0 The <literal>“serial”</literal> property GdkDeviceTool:serial “serial” guint64 Serial number.Owner: GdkDeviceTool Flags: Read / Write / Construct Only Default value: 0 The <literal>“tool-type”</literal> property GdkDeviceTool:tool-type “tool-type” GdkDeviceToolType Tool type.Owner: GdkDeviceTool Flags: Read / Write / Construct Only Default value: GDK_DEVICE_TOOL_TYPE_UNKNOWN Signal Details The <literal>“changed”</literal> signal GdkDevice::changed void user_function (GdkDevice *device, gpointer user_data) The ::changed signal is emitted either when the GdkDevice has changed the number of either axes or keys. For example on X11 this will normally happen when the physical device routing events through the logical device changes (for example, user switches from the USB mouse to a tablet); in that case the logical device will change to reflect the axes and keys on the new physical device. Parameters device the GdkDevice that changed. user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“tool-changed”</literal> signal GdkDevice::tool-changed void user_function (GdkDevice *device, GdkDeviceTool *tool, gpointer user_data) The ::tool-changed signal is emitted on pen/eraser GdkDevices whenever tools enter or leave proximity. Parameters device the GdkDevice that changed. tool The new current tool user_data user data set when the signal handler was connected. Flags: Run Last See Also GdkSeat docs/reference/gdk/xml/gdkdevicepad.xml0000664000175000017500000003303014010071747020275 0ustar mclasenmclasen ]> GtkDevicePad 3 GDK4 Library GtkDevicePad Pad device interface Functions int gdk_device_pad_get_n_groups () int gdk_device_pad_get_group_n_modes () int gdk_device_pad_get_n_features () int gdk_device_pad_get_feature_group () Types and Values GdkDevicePad enumGdkDevicePadFeature Object Hierarchy GInterface ╰── GdkDevicePad Prerequisites GdkDevicePad requires GdkDevice. Includes#include <gdk/gdk.h> Description GdkDevicePad is an interface implemented by devices of type GDK_SOURCE_TABLET_PAD, it allows querying the features provided by the pad device. Tablet pads may contain one or more groups, each containing a subset of the buttons/rings/strips available. gdk_device_pad_get_n_groups() can be used to obtain the number of groups, gdk_device_pad_get_n_features() and gdk_device_pad_get_feature_group() can be combined to find out the number of buttons/rings/strips the device has, and how are they grouped. Each of those groups have different modes, which may be used to map each individual pad feature to multiple actions. Only one mode is effective (current) for each given group, different groups may have different current modes. The number of available modes in a group can be found out through gdk_device_pad_get_group_n_modes(), and the current mode for a given group will be notified through events of type GDK_PAD_GROUP_MODE. Functions gdk_device_pad_get_n_groups () gdk_device_pad_get_n_groups int gdk_device_pad_get_n_groups (GdkDevicePad *pad); Returns the number of groups this pad device has. Pads have at least one group. A pad group is a subcollection of buttons/strip/rings that is affected collectively by a same current mode. Parameters pad a GdkDevicePad Returns The number of button/ring/strip groups in the pad. gdk_device_pad_get_group_n_modes () gdk_device_pad_get_group_n_modes int gdk_device_pad_get_group_n_modes (GdkDevicePad *pad, int group_idx); Returns the number of modes that group may have. Parameters pad a GdkDevicePad group_idx group to get the number of available modes from Returns The number of modes available in group . gdk_device_pad_get_n_features () gdk_device_pad_get_n_features int gdk_device_pad_get_n_features (GdkDevicePad *pad, GdkDevicePadFeature feature); Returns the number of features a tablet pad has. Parameters pad a GdkDevicePad feature a pad feature Returns The amount of elements of type feature that this pad has. gdk_device_pad_get_feature_group () gdk_device_pad_get_feature_group int gdk_device_pad_get_feature_group (GdkDevicePad *pad, GdkDevicePadFeature feature, int feature_idx); Returns the group the given feature and idx belong to, or -1 if feature/index do not exist in pad . Parameters pad a GdkDevicePad feature the feature type to get the group from feature_idx the index of the feature to get the group from Returns The group number of the queried pad feature. Types and Values GdkDevicePad GdkDevicePad typedef struct _GdkDevicePad GdkDevicePad; The GdkDevicePad struct contains only private fields and should not be accessed directly. enum GdkDevicePadFeature GdkDevicePadFeature A pad feature. Members GDK_DEVICE_PAD_FEATURE_BUTTON a button GDK_DEVICE_PAD_FEATURE_RING a ring-shaped interactive area GDK_DEVICE_PAD_FEATURE_STRIP a straight interactive area docs/reference/gdk/xml/gdkseat.xml0000664000175000017500000006467114010071747017324 0ustar mclasenmclasen ]> GdkSeat 3 GDK4 Library GdkSeat Object representing a user seat Functions GdkDisplay * gdk_seat_get_display () GdkSeatCapabilities gdk_seat_get_capabilities () GdkDevice * gdk_seat_get_pointer () GdkDevice * gdk_seat_get_keyboard () GList * gdk_seat_get_devices () GList * gdk_seat_get_tools () Properties GdkDisplay *displayRead / Write / Construct Only Signals voiddevice-addedRun Last voiddevice-removedRun Last voidtool-addedRun Last voidtool-removedRun Last Types and Values GdkSeat enumGdkSeatCapabilities Object Hierarchy GObject ╰── GdkSeat Includes#include <gdk/gdk.h> Description The GdkSeat object represents a collection of input devices that belong to a user. Functions gdk_seat_get_display () gdk_seat_get_display GdkDisplay * gdk_seat_get_display (GdkSeat *seat); Returns the GdkDisplay this seat belongs to. Parameters seat a GdkSeat Returns a GdkDisplay. This object is owned by GTK and must not be freed. [transfer none] gdk_seat_get_capabilities () gdk_seat_get_capabilities GdkSeatCapabilities gdk_seat_get_capabilities (GdkSeat *seat); Returns the capabilities this GdkSeat currently has. Parameters seat a GdkSeat Returns the seat capabilities gdk_seat_get_pointer () gdk_seat_get_pointer GdkDevice * gdk_seat_get_pointer (GdkSeat *seat); Returns the device that routes pointer events. Parameters seat a GdkSeat Returns a GdkDevice with pointer capabilities. This object is owned by GTK and must not be freed. [transfer none][nullable] gdk_seat_get_keyboard () gdk_seat_get_keyboard GdkDevice * gdk_seat_get_keyboard (GdkSeat *seat); Returns the device that routes keyboard events. Parameters seat a GdkSeat Returns a GdkDevice with keyboard capabilities. This object is owned by GTK and must not be freed. [transfer none][nullable] gdk_seat_get_devices () gdk_seat_get_devices GList * gdk_seat_get_devices (GdkSeat *seat, GdkSeatCapabilities capabilities); Returns the devices that match the given capabilities. Parameters seat a GdkSeat capabilities capabilities to get devices for Returns A list of GdkDevices. The list must be freed with g_list_free(), the elements are owned by GTK and must not be freed. [transfer container][element-type GdkDevice] gdk_seat_get_tools () gdk_seat_get_tools GList * gdk_seat_get_tools (GdkSeat *seat); Returns all GdkDeviceTools that are known to the application. Parameters seat A GdkSeat Returns A list of tools. Free with g_list_free(). [transfer container][element-type Gdk.DeviceTool] Types and Values GdkSeat GdkSeat typedef struct _GdkSeat GdkSeat; The GdkSeat struct contains only private fields and should not be accessed directly. enum GdkSeatCapabilities GdkSeatCapabilities Flags describing the seat capabilities. Members GDK_SEAT_CAPABILITY_NONE No input capabilities GDK_SEAT_CAPABILITY_POINTER The seat has a pointer (e.g. mouse) GDK_SEAT_CAPABILITY_TOUCH The seat has touchscreen(s) attached GDK_SEAT_CAPABILITY_TABLET_STYLUS The seat has drawing tablet(s) attached GDK_SEAT_CAPABILITY_KEYBOARD The seat has keyboard(s) attached GDK_SEAT_CAPABILITY_TABLET_PAD The seat has drawing tablet pad(s) attached GDK_SEAT_CAPABILITY_ALL_POINTING The union of all pointing capabilities GDK_SEAT_CAPABILITY_ALL The union of all capabilities Property Details The <literal>“display”</literal> property GdkSeat:display “display” GdkDisplay * GdkDisplay of this seat. Owner: GdkSeat Flags: Read / Write / Construct Only Signal Details The <literal>“device-added”</literal> signal GdkSeat::device-added void user_function (GdkSeat *seat, GdkDevice *device, gpointer user_data) The ::device-added signal is emitted when a new input device is related to this seat. Parameters seat the object on which the signal is emitted device the newly added GdkDevice. user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“device-removed”</literal> signal GdkSeat::device-removed void user_function (GdkSeat *seat, GdkDevice *device, gpointer user_data) The ::device-removed signal is emitted when an input device is removed (e.g. unplugged). Parameters seat the object on which the signal is emitted device the just removed GdkDevice. user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“tool-added”</literal> signal GdkSeat::tool-added void user_function (GdkSeat *seat, GdkDeviceTool *tool, gpointer user_data) The ::tool-added signal is emitted whenever a new tool is made known to the seat. The tool may later be assigned to a device (i.e. on proximity with a tablet). The device will emit the “tool-changed” signal accordingly. A same tool may be used by several devices. Parameters seat the object on which the signal is emitted tool the new GdkDeviceTool known to the seat user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“tool-removed”</literal> signal GdkSeat::tool-removed void user_function (GdkSeat *seat, GdkDeviceTool *tool, gpointer user_data) This signal is emitted whenever a tool is no longer known to this seat . Parameters seat the object on which the signal is emitted tool the just removed GdkDeviceTool user_data user data set when the signal handler was connected. Flags: Run Last See Also GdkDisplay, GdkDevice docs/reference/gdk/xml/events.xml0000664000175000017500000037440514010071747017205 0ustar mclasenmclasen ]> Events 3 GDK4 Library Events Functions for handling events from the window system Functions GdkEvent * gdk_event_ref () void gdk_event_unref () GdkEventType gdk_event_get_event_type () GdkSurface * gdk_event_get_surface () GdkDevice * gdk_event_get_device () GdkDeviceTool * gdk_event_get_device_tool () guint32 gdk_event_get_time () GdkDisplay * gdk_event_get_display () GdkSeat * gdk_event_get_seat () GdkEventSequence * gdk_event_get_event_sequence () GdkModifierType gdk_event_get_modifier_state () gboolean gdk_event_get_position () gboolean gdk_event_get_axes () gboolean gdk_event_get_axis () GdkTimeCoord * gdk_event_get_history () gboolean gdk_event_get_pointer_emulated () gboolean gdk_event_triggers_context_menu () guint gdk_button_event_get_button () GdkScrollDirection gdk_scroll_event_get_direction () void gdk_scroll_event_get_deltas () gboolean gdk_scroll_event_is_stop () guint gdk_key_event_get_keyval () guint gdk_key_event_get_keycode () GdkModifierType gdk_key_event_get_consumed_modifiers () guint gdk_key_event_get_layout () guint gdk_key_event_get_level () gboolean gdk_key_event_is_modifier () GdkKeyMatch gdk_key_event_matches () gboolean gdk_key_event_get_match () gboolean gdk_focus_event_get_in () gboolean gdk_touch_event_get_emulating_pointer () GdkCrossingMode gdk_crossing_event_get_mode () GdkNotifyType gdk_crossing_event_get_detail () gboolean gdk_crossing_event_get_focus () GdkSurface * gdk_grab_broken_event_get_grab_surface () gboolean gdk_grab_broken_event_get_implicit () GdkDrop * gdk_dnd_event_get_drop () GdkTouchpadGesturePhase gdk_touchpad_event_get_gesture_phase () guint gdk_touchpad_event_get_n_fingers () void gdk_touchpad_event_get_deltas () double gdk_touchpad_event_get_pinch_angle_delta () double gdk_touchpad_event_get_pinch_scale () void gdk_pad_event_get_axis_value () guint gdk_pad_event_get_button () void gdk_pad_event_get_group_mode () gboolean gdk_events_get_angle () gboolean gdk_events_get_center () gboolean gdk_events_get_distance () Types and Values GdkEvent enumGdkEventType structGdkKeymapKey enumGdkKeyMatch enumGdkTouchpadGesturePhase enumGdkScrollDirection enumGdkCrossingMode enumGdkNotifyType #defineGDK_CURRENT_TIME #defineGDK_PRIORITY_EVENTS #defineGDK_PRIORITY_REDRAW #defineGDK_EVENT_PROPAGATE #defineGDK_EVENT_STOP #defineGDK_BUTTON_PRIMARY #defineGDK_BUTTON_MIDDLE #defineGDK_BUTTON_SECONDARY GdkEventSequence GdkButtonEvent GdkScrollEvent GdkMotionEvent GdkKeyEvent GdkFocusEvent GdkCrossingEvent GdkGrabBrokenEvent GdkDeleteEvent GdkDNDEvent GdkTouchEvent GdkTouchpadEvent GdkPadEvent GdkProximityEvent Object Hierarchy GdkEvent Includes#include <gdk/gdk.h> Description This section describes functions dealing with events from the window system. In GTK applications the events are handled automatically by toplevel widgets and passed on to the event controllers of appropriate widgets, so these functions are rarely needed. Functions gdk_event_ref () gdk_event_ref GdkEvent * gdk_event_ref (GdkEvent *event); Increase the ref count of event . Parameters event a GdkEvent Returns event . [transfer full] gdk_event_unref () gdk_event_unref void gdk_event_unref (GdkEvent *event); Decrease the ref count of event , and free it if the last reference is dropped. Parameters event a GdkEvent. [transfer full] gdk_event_get_event_type () gdk_event_get_event_type GdkEventType gdk_event_get_event_type (GdkEvent *event); Retrieves the type of the event. Parameters event a GdkEvent Returns a GdkEventType gdk_event_get_surface () gdk_event_get_surface GdkSurface * gdk_event_get_surface (GdkEvent *event); Extracts the GdkSurface associated with an event. Parameters event a GdkEvent Returns The GdkSurface associated with the event. [transfer none] gdk_event_get_device () gdk_event_get_device GdkDevice * gdk_event_get_device (GdkEvent *event); Returns the device of an event. Parameters event a GdkEvent. Returns a GdkDevice. [nullable][transfer none] gdk_event_get_device_tool () gdk_event_get_device_tool GdkDeviceTool * gdk_event_get_device_tool (GdkEvent *event); If the event was generated by a device that supports different tools (eg. a tablet), this function will return a GdkDeviceTool representing the tool that caused the event. Otherwise, NULL will be returned. Note: the GdkDeviceTools will be constant during the application lifetime, if settings must be stored persistently across runs, see gdk_device_tool_get_serial() Parameters event a GdkEvent Returns The current device tool, or NULL. [transfer none][nullable] gdk_event_get_time () gdk_event_get_time guint32 gdk_event_get_time (GdkEvent *event); Returns the time stamp from event , if there is one; otherwise returns GDK_CURRENT_TIME. Parameters event a GdkEvent Returns time stamp field from event gdk_event_get_display () gdk_event_get_display GdkDisplay * gdk_event_get_display (GdkEvent *event); Retrieves the GdkDisplay associated to the event . Parameters event a GdkEvent Returns a GdkDisplay. [transfer none][nullable] gdk_event_get_seat () gdk_event_get_seat GdkSeat * gdk_event_get_seat (GdkEvent *event); Returns the seat that originated the event. Parameters event a GdkEvent Returns a GdkSeat. [nullable][transfer none] gdk_event_get_event_sequence () gdk_event_get_event_sequence GdkEventSequence * gdk_event_get_event_sequence (GdkEvent *event); If event is a touch event, returns the GdkEventSequence to which the event belongs. Otherwise, return NULL. Parameters event a GdkEvent Returns the event sequence that the event belongs to. [transfer none] gdk_event_get_modifier_state () gdk_event_get_modifier_state GdkModifierType gdk_event_get_modifier_state (GdkEvent *event); Returns the modifier state field of an event. Parameters event a GdkEvent Returns the modifier state of event gdk_event_get_position () gdk_event_get_position gboolean gdk_event_get_position (GdkEvent *event, double *x, double *y); Extract the event surface relative x/y coordinates from an event. Parameters event a GdkEvent x location to put event surface x coordinate. [out] y location to put event surface y coordinate. [out] gdk_event_get_axes () gdk_event_get_axes gboolean gdk_event_get_axes (GdkEvent *event, double **axes, guint *n_axes); Extracts all axis values from an event. Parameters event a GdkEvent axes the array of values for all axes. [transfer none][out][array length=n_axes] n_axes the length of array. [out] Returns TRUE on success, otherwise FALSE gdk_event_get_axis () gdk_event_get_axis gboolean gdk_event_get_axis (GdkEvent *event, GdkAxisUse axis_use, double *value); Extract the axis value for a particular axis use from an event structure. Parameters event a GdkEvent axis_use the axis use to look for value location to store the value found. [out] Returns TRUE if the specified axis was found, otherwise FALSE gdk_event_get_history () gdk_event_get_history GdkTimeCoord * gdk_event_get_history (GdkEvent *event, guint *out_n_coords); Retrieves the history of the event , as a list of time and coordinates. The history includes events that are not delivered to the application because they occurred in the same frame as event . Note that only motion and scroll events record history, and motion events only if one of the mouse buttons is down. Parameters event a motion or scroll GdkEvent out_n_coords Return location for the length of the returned array. [out] Returns an array of time and coordinates. [transfer container][array length=out_n_coords][nullable] gdk_event_get_pointer_emulated () gdk_event_get_pointer_emulated gboolean gdk_event_get_pointer_emulated (GdkEvent *event); Returns whether this event is an 'emulated' pointer event (typically from a touch event), as opposed to a real one. Parameters event a GdkEvent Returns TRUE if this event is emulated gdk_event_triggers_context_menu () gdk_event_triggers_context_menu gboolean gdk_event_triggers_context_menu (GdkEvent *event); This function returns whether a GdkEvent should trigger a context menu, according to platform conventions. The right mouse button always triggers context menus. This function should always be used instead of simply checking for event->button == GDK_BUTTON_SECONDARY. Parameters event a GdkEvent, currently only button events are meaningful values Returns TRUE if the event should trigger a context menu. gdk_button_event_get_button () gdk_button_event_get_button guint gdk_button_event_get_button (GdkEvent *event); Extract the button number from a button event. Parameters event a button event. [type GdkButtonEvent] Returns the button of event gdk_scroll_event_get_direction () gdk_scroll_event_get_direction GdkScrollDirection gdk_scroll_event_get_direction (GdkEvent *event); Extracts the direction of a scroll event. Parameters event a scroll event. [type GdkScrollEvent] Returns the scroll direction of event gdk_scroll_event_get_deltas () gdk_scroll_event_get_deltas void gdk_scroll_event_get_deltas (GdkEvent *event, double *delta_x, double *delta_y); Extracts the scroll deltas of a scroll event. The deltas will be zero unless the scroll direction is GDK_SCROLL_SMOOTH. Parameters event a scroll event. [type GdkScrollEvent] delta_x return location for x scroll delta. [out] delta_y return location for y scroll delta. [out] gdk_scroll_event_is_stop () gdk_scroll_event_is_stop gboolean gdk_scroll_event_is_stop (GdkEvent *event); Check whether a scroll event is a stop scroll event. Scroll sequences with smooth scroll information may provide a stop scroll event once the interaction with the device finishes, e.g. by lifting a finger. This stop scroll event is the signal that a widget may trigger kinetic scrolling based on the current velocity. Stop scroll events always have a delta of 0/0. Parameters event a scroll event. [type GdkScrollEvent] Returns TRUE if the event is a scroll stop event gdk_key_event_get_keyval () gdk_key_event_get_keyval guint gdk_key_event_get_keyval (GdkEvent *event); Extracts the keyval from a key event. Parameters event a key event. [type GdkKeyEvent] Returns the keyval of event gdk_key_event_get_keycode () gdk_key_event_get_keycode guint gdk_key_event_get_keycode (GdkEvent *event); Extracts the keycode from a key event. Parameters event a key event. [type GdkKeyEvent] Returns the keycode of event gdk_key_event_get_consumed_modifiers () gdk_key_event_get_consumed_modifiers GdkModifierType gdk_key_event_get_consumed_modifiers (GdkEvent *event); Extracts the consumed modifiers from a key event. Parameters event a key event. [type GdkKeyEvent] Returns the consumed modifiers or event gdk_key_event_get_layout () gdk_key_event_get_layout guint gdk_key_event_get_layout (GdkEvent *event); Extracts the layout from a key event. Parameters event a key event. [type GdkKeyEvent] Returns the layout of event gdk_key_event_get_level () gdk_key_event_get_level guint gdk_key_event_get_level (GdkEvent *event); Extracts the shift level from a key event. Parameters event a key event. [type GdkKeyEvent] Returns the shift level of event gdk_key_event_is_modifier () gdk_key_event_is_modifier gboolean gdk_key_event_is_modifier (GdkEvent *event); Extracts whether the key event is for a modifier key. Parameters event a key event. [type GdkKeyEvent] Returns TRUE if the event is for a modifier key gdk_key_event_matches () gdk_key_event_matches GdkKeyMatch gdk_key_event_matches (GdkEvent *event, guint keyval, GdkModifierType modifiers); Matches a key event against a keyboard shortcut that is specified as a keyval and modifiers. Partial matches are possible where the combination matches if the currently active group is ignored. Note that we ignore Caps Lock for matching. Parameters event a key GdkEvent. [type GdkKeyEvent] keyval the keyval to match modifiers the modifiers to match Returns a GdkKeyMatch value describing whether event matches gdk_key_event_get_match () gdk_key_event_get_match gboolean gdk_key_event_get_match (GdkEvent *event, guint *keyval, GdkModifierType *modifiers); Gets a keyval and modifier combination that will cause gdk_key_event_matches() to successfully match the given event. Parameters event a key GdkEvent. [type GdkKeyEvent] keyval return location for a keyval. [out] modifiers return location for modifiers. [out] Returns TRUE on success gdk_focus_event_get_in () gdk_focus_event_get_in gboolean gdk_focus_event_get_in (GdkEvent *event); Extracts whether this event is about focus entering or leaving the surface. Parameters event a focus change event. [type GdkFocusEvent] Returns TRUE of the focus is entering gdk_touch_event_get_emulating_pointer () gdk_touch_event_get_emulating_pointer gboolean gdk_touch_event_get_emulating_pointer (GdkEvent *event); Extracts whether a touch event is emulating a pointer event. Parameters event a touch event. [type GdkTouchEvent] Returns TRUE if event is emulating gdk_crossing_event_get_mode () gdk_crossing_event_get_mode GdkCrossingMode gdk_crossing_event_get_mode (GdkEvent *event); Extracts the crossing mode from a crossing event. Parameters event a crossing event. [type GdkCrossingEvent] Returns the mode of event gdk_crossing_event_get_detail () gdk_crossing_event_get_detail GdkNotifyType gdk_crossing_event_get_detail (GdkEvent *event); Extracts the notify detail from a crossing event. Parameters event a crossing event. [type GdkCrossingEvent] Returns the notify detail of event gdk_crossing_event_get_focus () gdk_crossing_event_get_focus gboolean gdk_crossing_event_get_focus (GdkEvent *event); Checks if the event surface is the focus surface. Parameters event a crossing event. [type GdkCrossingEvent] Returns TRUE if the surface is the focus surface gdk_grab_broken_event_get_grab_surface () gdk_grab_broken_event_get_grab_surface GdkSurface * gdk_grab_broken_event_get_grab_surface (GdkEvent *event); Extracts the grab surface from a grab broken event. Parameters event a grab broken event. [type GdkGrabBrokenEvent] Returns the grab surface of event . [transfer none] gdk_grab_broken_event_get_implicit () gdk_grab_broken_event_get_implicit gboolean gdk_grab_broken_event_get_implicit (GdkEvent *event); Checks whether the grab broken event is for an implicit grab. Parameters event a grab broken event. [type GdkGrabBrokenEvent] Returns TRUE if the an implicit grab was broken gdk_dnd_event_get_drop () gdk_dnd_event_get_drop GdkDrop * gdk_dnd_event_get_drop (GdkEvent *event); Gets the GdkDrop from a DND event. Parameters event a DND event. [type GdkDNDEvent] Returns the drop. [transfer none][nullable] gdk_touchpad_event_get_gesture_phase () gdk_touchpad_event_get_gesture_phase GdkTouchpadGesturePhase gdk_touchpad_event_get_gesture_phase (GdkEvent *event); Extracts the touchpad gesture phase from a touchpad event. Parameters event a touchpad GdkEvent. [type GdkTouchpadEvent] Returns the gesture phase of event gdk_touchpad_event_get_n_fingers () gdk_touchpad_event_get_n_fingers guint gdk_touchpad_event_get_n_fingers (GdkEvent *event); Extracts the number of fingers from a touchpad event. Parameters event a touchpad event. [type GdkTouchpadEvent] Returns the number of fingers for event gdk_touchpad_event_get_deltas () gdk_touchpad_event_get_deltas void gdk_touchpad_event_get_deltas (GdkEvent *event, double *dx, double *dy); Extracts delta information from a touchpad event. Parameters event a touchpad event. [type GdkTouchpadEvent] dx return location for x. [out] dy return location for y. [out] gdk_touchpad_event_get_pinch_angle_delta () gdk_touchpad_event_get_pinch_angle_delta double gdk_touchpad_event_get_pinch_angle_delta (GdkEvent *event); Extracts the angle delta from a touchpad pinch event. Parameters event a touchpad pinch event. [type GdkTouchpadEvent] Returns the angle delta of event gdk_touchpad_event_get_pinch_scale () gdk_touchpad_event_get_pinch_scale double gdk_touchpad_event_get_pinch_scale (GdkEvent *event); Extracts the scale from a touchpad pinch event. Parameters event a touchpad pinch event. [type GdkTouchpadEvent] Returns the scale of event gdk_pad_event_get_axis_value () gdk_pad_event_get_axis_value void gdk_pad_event_get_axis_value (GdkEvent *event, guint *index, double *value); Extracts the information from a pad strip or ring event. Parameters event a pad strip or ring event. [type GdkPadEvent] index Return location for the axis index. [out] value Return location for the axis value. [out] gdk_pad_event_get_button () gdk_pad_event_get_button guint gdk_pad_event_get_button (GdkEvent *event); Extracts information about the pressed button from a pad event. Parameters event a pad button event. [type GdkPadEvent] Returns the button of event gdk_pad_event_get_group_mode () gdk_pad_event_get_group_mode void gdk_pad_event_get_group_mode (GdkEvent *event, guint *group, guint *mode); Extracts group and mode information from a pad event. Parameters event a pad event. [type GdkPadEvent] group return location for the group. [out] mode return location for the mode. [out] gdk_events_get_angle () gdk_events_get_angle gboolean gdk_events_get_angle (GdkEvent *event1, GdkEvent *event2, double *angle); If both events contain X/Y information, this function will return TRUE and return in angle the relative angle from event1 to event2 . The rotation direction for positive angles is from the positive X axis towards the positive Y axis. Parameters event1 first GdkEvent event2 second GdkEvent angle return location for the relative angle between both events. [out] Returns TRUE if the angle could be calculated. gdk_events_get_center () gdk_events_get_center gboolean gdk_events_get_center (GdkEvent *event1, GdkEvent *event2, double *x, double *y); If both events contain X/Y information, the center of both coordinates will be returned in x and y . Parameters event1 first GdkEvent event2 second GdkEvent x return location for the X coordinate of the center. [out] y return location for the Y coordinate of the center. [out] Returns TRUE if the center could be calculated. gdk_events_get_distance () gdk_events_get_distance gboolean gdk_events_get_distance (GdkEvent *event1, GdkEvent *event2, double *distance); If both events have X/Y information, the distance between both coordinates (as in a straight line going from event1 to event2 ) will be returned. Parameters event1 first GdkEvent event2 second GdkEvent distance return location for the distance. [out] Returns TRUE if the distance could be calculated. Types and Values GdkEvent GdkEvent typedef struct _GdkEvent GdkEvent; The GdkEvent struct contains only private fields and should not be accessed directly. enum GdkEventType GdkEventType Specifies the type of the event. Members GDK_DELETE the window manager has requested that the toplevel surface be hidden or destroyed, usually when the user clicks on a special icon in the title bar. GDK_MOTION_NOTIFY the pointer (usually a mouse) has moved. GDK_BUTTON_PRESS a mouse button has been pressed. GDK_BUTTON_RELEASE a mouse button has been released. GDK_KEY_PRESS a key has been pressed. GDK_KEY_RELEASE a key has been released. GDK_ENTER_NOTIFY the pointer has entered the surface. GDK_LEAVE_NOTIFY the pointer has left the surface. GDK_FOCUS_CHANGE the keyboard focus has entered or left the surface. GDK_PROXIMITY_IN an input device has moved into contact with a sensing surface (e.g. a touchscreen or graphics tablet). GDK_PROXIMITY_OUT an input device has moved out of contact with a sensing surface. GDK_DRAG_ENTER the mouse has entered the surface while a drag is in progress. GDK_DRAG_LEAVE the mouse has left the surface while a drag is in progress. GDK_DRAG_MOTION the mouse has moved in the surface while a drag is in progress. GDK_DROP_START a drop operation onto the surface has started. GDK_SCROLL the scroll wheel was turned GDK_GRAB_BROKEN a pointer or keyboard grab was broken. GDK_TOUCH_BEGIN A new touch event sequence has just started. GDK_TOUCH_UPDATE A touch event sequence has been updated. GDK_TOUCH_END A touch event sequence has finished. GDK_TOUCH_CANCEL A touch event sequence has been canceled. GDK_TOUCHPAD_SWIPE A touchpad swipe gesture event, the current state is determined by its phase field. GDK_TOUCHPAD_PINCH A touchpad pinch gesture event, the current state is determined by its phase field. GDK_PAD_BUTTON_PRESS A tablet pad button press event. GDK_PAD_BUTTON_RELEASE A tablet pad button release event. GDK_PAD_RING A tablet pad axis event from a "ring". GDK_PAD_STRIP A tablet pad axis event from a "strip". GDK_PAD_GROUP_MODE A tablet pad group mode change. GDK_EVENT_LAST marks the end of the GdkEventType enumeration. struct GdkKeymapKey GdkKeymapKey struct GdkKeymapKey { guint keycode; int group; int level; }; A GdkKeymapKey is a hardware key that can be mapped to a keyval. Members guint keycode; the hardware keycode. This is an identifying number for a physical key. int group; indicates movement in a horizontal direction. Usually groups are used for two different languages. In group 0, a key might have two English characters, and in group 1 it might have two Hebrew characters. The Hebrew characters will be printed on the key next to the English characters. int level; indicates which symbol on the key will be used, in a vertical direction. So on a standard US keyboard, the key with the number “1” on it also has the exclamation point ("!") character on it. The level indicates whether to use the “1” or the “!” symbol. The letter keys are considered to have a lowercase letter at level 0, and an uppercase letter at level 1, though only the uppercase letter is printed. enum GdkKeyMatch GdkKeyMatch The possible return values from gdk_key_event_matches() describe how well an event matches a given keyval and modifiers. Members GDK_KEY_MATCH_NONE The key event does not match GDK_KEY_MATCH_PARTIAL The key event matches if keyboard state (specifically, the currently active group) is ignored GDK_KEY_MATCH_EXACT The key event matches enum GdkTouchpadGesturePhase GdkTouchpadGesturePhase Specifies the current state of a touchpad gesture. All gestures are guaranteed to begin with an event with phase GDK_TOUCHPAD_GESTURE_PHASE_BEGIN, followed by 0 or several events with phase GDK_TOUCHPAD_GESTURE_PHASE_UPDATE. A finished gesture may have 2 possible outcomes, an event with phase GDK_TOUCHPAD_GESTURE_PHASE_END will be emitted when the gesture is considered successful, this should be used as the hint to perform any permanent changes. Cancelled gestures may be so for a variety of reasons, due to hardware or the compositor, or due to the gesture recognition layers hinting the gesture did not finish resolutely (eg. a 3rd finger being added during a pinch gesture). In these cases, the last event will report the phase GDK_TOUCHPAD_GESTURE_PHASE_CANCEL, this should be used as a hint to undo any visible/permanent changes that were done throughout the progress of the gesture. Members GDK_TOUCHPAD_GESTURE_PHASE_BEGIN The gesture has begun. GDK_TOUCHPAD_GESTURE_PHASE_UPDATE The gesture has been updated. GDK_TOUCHPAD_GESTURE_PHASE_END The gesture was finished, changes should be permanently applied. GDK_TOUCHPAD_GESTURE_PHASE_CANCEL The gesture was cancelled, all changes should be undone. enum GdkScrollDirection GdkScrollDirection Specifies the direction for scroll events. Members GDK_SCROLL_UP the surface is scrolled up. GDK_SCROLL_DOWN the surface is scrolled down. GDK_SCROLL_LEFT the surface is scrolled to the left. GDK_SCROLL_RIGHT the surface is scrolled to the right. GDK_SCROLL_SMOOTH the scrolling is determined by the delta values in scroll events. See gdk_scroll_event_get_deltas() enum GdkCrossingMode GdkCrossingMode Specifies the crossing mode for enter and leave events. Members GDK_CROSSING_NORMAL crossing because of pointer motion. GDK_CROSSING_GRAB crossing because a grab is activated. GDK_CROSSING_UNGRAB crossing because a grab is deactivated. GDK_CROSSING_GTK_GRAB crossing because a GTK grab is activated. GDK_CROSSING_GTK_UNGRAB crossing because a GTK grab is deactivated. GDK_CROSSING_STATE_CHANGED crossing because a GTK widget changed state (e.g. sensitivity). GDK_CROSSING_TOUCH_BEGIN crossing because a touch sequence has begun, this event is synthetic as the pointer might have not left the surface. GDK_CROSSING_TOUCH_END crossing because a touch sequence has ended, this event is synthetic as the pointer might have not left the surface. GDK_CROSSING_DEVICE_SWITCH crossing because of a device switch (i.e. a mouse taking control of the pointer after a touch device), this event is synthetic as the pointer didn’t leave the surface. enum GdkNotifyType GdkNotifyType Specifies the kind of crossing for enter and leave events. See the X11 protocol specification of LeaveNotify for full details of crossing event generation. Members GDK_NOTIFY_ANCESTOR the surface is entered from an ancestor or left towards an ancestor. GDK_NOTIFY_VIRTUAL the pointer moves between an ancestor and an inferior of the surface. GDK_NOTIFY_INFERIOR the surface is entered from an inferior or left towards an inferior. GDK_NOTIFY_NONLINEAR the surface is entered from or left towards a surface which is neither an ancestor nor an inferior. GDK_NOTIFY_NONLINEAR_VIRTUAL the pointer moves between two surfaces which are not ancestors of each other and the surface is part of the ancestor chain between one of these surfaces and their least common ancestor. GDK_NOTIFY_UNKNOWN an unknown type of enter/leave event occurred. GDK_CURRENT_TIME GDK_CURRENT_TIME #define GDK_CURRENT_TIME 0L Represents the current time, and can be used anywhere a time is expected. GDK_PRIORITY_EVENTS GDK_PRIORITY_EVENTS #define GDK_PRIORITY_EVENTS (G_PRIORITY_DEFAULT) This is the priority that events from the X server are given in the GLib Main Loop. GDK_PRIORITY_REDRAW GDK_PRIORITY_REDRAW #define GDK_PRIORITY_REDRAW (G_PRIORITY_HIGH_IDLE + 20) This is the priority that the idle handler processing surface updates is given in the GLib Main Loop. GDK_EVENT_PROPAGATE GDK_EVENT_PROPAGATE #define GDK_EVENT_PROPAGATE (FALSE) Use this macro as the return value for continuing the propagation of an event handler. GDK_EVENT_STOP GDK_EVENT_STOP #define GDK_EVENT_STOP (TRUE) Use this macro as the return value for stopping the propagation of an event handler. GDK_BUTTON_PRIMARY GDK_BUTTON_PRIMARY #define GDK_BUTTON_PRIMARY (1) The primary button. This is typically the left mouse button, or the right button in a left-handed setup. GDK_BUTTON_MIDDLE GDK_BUTTON_MIDDLE #define GDK_BUTTON_MIDDLE (2) The middle button. GDK_BUTTON_SECONDARY GDK_BUTTON_SECONDARY #define GDK_BUTTON_SECONDARY (3) The secondary button. This is typically the right mouse button, or the left button in a left-handed setup. GdkEventSequence GdkEventSequence typedef struct _GdkEventSequence GdkEventSequence; GdkEventSequence is an opaque type representing a sequence of related touch events. GdkButtonEvent GdkButtonEvent typedef struct _GdkButtonEvent GdkButtonEvent; An event related to a button on a pointer device/ GdkScrollEvent GdkScrollEvent typedef struct _GdkScrollEvent GdkScrollEvent; An event related to a scrolling motion. GdkMotionEvent GdkMotionEvent typedef struct _GdkMotionEvent GdkMotionEvent; An event related to a pointer or touch device motion. GdkKeyEvent GdkKeyEvent typedef struct _GdkKeyEvent GdkKeyEvent; An event related to a key-based device. GdkFocusEvent GdkFocusEvent typedef struct _GdkFocusEvent GdkFocusEvent; An event related to a focus change. GdkCrossingEvent GdkCrossingEvent typedef struct _GdkCrossingEvent GdkCrossingEvent; An event caused by a pointing device moving between surfaces. GdkGrabBrokenEvent GdkGrabBrokenEvent typedef struct _GdkGrabBrokenEvent GdkGrabBrokenEvent; An event related to a broken windowing system grab. GdkDeleteEvent GdkDeleteEvent typedef struct _GdkDeleteEvent GdkDeleteEvent; An event related to closing a top-level surface. GdkDNDEvent GdkDNDEvent typedef struct _GdkDNDEvent GdkDNDEvent; An event related to drag and drop operations. GdkTouchEvent GdkTouchEvent typedef struct _GdkTouchEvent GdkTouchEvent; An event related to a touch-based device. GdkTouchpadEvent GdkTouchpadEvent typedef struct _GdkTouchpadEvent GdkTouchpadEvent; An event related to a touchpad device. GdkPadEvent GdkPadEvent typedef struct _GdkPadEvent GdkPadEvent; An event related to a pad-based device. GdkProximityEvent GdkProximityEvent typedef struct _GdkProximityEvent GdkProximityEvent; An event related to the proximity of a tool to a device. docs/reference/gdk/xml/gdkpaintable.xml0000664000175000017500000012706014010071747020317 0ustar mclasenmclasen ]> GdkPaintable 3 GDK4 Library GdkPaintable An interface for a paintable region Functions GdkPaintable * gdk_paintable_get_current_image () void gdk_paintable_snapshot () GdkPaintableFlags gdk_paintable_get_flags () int gdk_paintable_get_intrinsic_width () int gdk_paintable_get_intrinsic_height () double gdk_paintable_get_intrinsic_aspect_ratio () void gdk_paintable_compute_concrete_size () void gdk_paintable_invalidate_contents () void gdk_paintable_invalidate_size () GdkPaintable * gdk_paintable_new_empty () Signals voidinvalidate-contentsRun Last voidinvalidate-sizeRun Last Types and Values GdkPaintable structGdkPaintableInterface enumGdkPaintableFlags GdkSnapshot Object Hierarchy GInterface ╰── GdkPaintable GObject ╰── GdkSnapshot Prerequisites GdkPaintable requires GObject. Known Implementations GdkPaintable is implemented by GdkGLTexture, GdkMemoryTexture and GdkTexture. Includes#include <gdk/gdk.h> Description GdkPaintable is a simple interface used by GDK and GTK to represent objects that can be painted anywhere at any size without requiring any sort of layout. The interface is inspired by similar concepts elsewhere, such as ClutterContent, HTML/CSS Paint Sources, or SVG Paint Servers. A GdkPaintable can be snapshot at any time and size using gdk_paintable_snapshot(). How the paintable interprets that size and if it scales or centers itself into the given rectangle is implementation defined, though if you are implementing a GdkPaintable and don't know what to do, it is suggested that you scale your paintable ignoring any potential aspect ratio. The contents that a GdkPaintable produces may depend on the GdkSnapshot passed to it. For example, paintables may decide to use more detailed images on higher resolution screens or when OpenGL is available. A GdkPaintable will however always produce the same output for the same snapshot. A GdkPaintable may change its contents, meaning that it will now produce a different output with the same snapshot. Once that happens, it will call gdk_paintable_invalidate_contents() which will emit the “invalidate-contents” signal. If a paintable is known to never change its contents, it will set the GDK_PAINTABLE_STATIC_CONTENTS flag. If a consumer cannot deal with changing contents, it may call gdk_paintable_get_current_image() which will return a static paintable and use that. A paintable can report an intrinsic (or preferred) size or aspect ratio it wishes to be rendered at, though it doesn't have to. Consumers of the interface can use this information to layout thepaintable appropriately. Just like the contents, the size of a paintable can change. A paintable will indicate this by calling gdk_paintable_invalidate_size() which will emit the “invalidate-size” signal. And just like for contents, if a paintable is known to never change its size, it will set the GDK_PAINTABLE_STATIC_SIZE flag. Besides API for applications, there are some functions that are only useful for implementing subclasses and should not be used by applications: gdk_paintable_invalidate_contents(), gdk_paintable_invalidate_size(), gdk_paintable_new_empty(). Functions gdk_paintable_get_current_image () gdk_paintable_get_current_image GdkPaintable * gdk_paintable_get_current_image (GdkPaintable *paintable); Gets an immutable paintable for the current contents displayed by paintable . This is useful when you want to retain the current state of an animation, for example to take a screenshot of a running animation. If the paintable is already immutable, it will return itself. Parameters paintable a GdkPaintable Returns An immutable paintable for the current contents of paintable . [transfer full] gdk_paintable_snapshot () gdk_paintable_snapshot void gdk_paintable_snapshot (GdkPaintable *paintable, GdkSnapshot *snapshot, double width, double height); Snapshots the given paintable with the given width and height at the current (0,0) offset of the snapshot . If width and height are not larger than zero, this function will do nothing. Parameters paintable a GdkPaintable snapshot a GdkSnapshot to snapshot to width width to snapshot in height height to snapshot in gdk_paintable_get_flags () gdk_paintable_get_flags GdkPaintableFlags gdk_paintable_get_flags (GdkPaintable *paintable); Get flags for the paintable. This is oftentimes useful for optimizations. See GdkPaintableFlags for the flags and what they mean. Parameters paintable a GdkPaintable Returns The GdkPaintableFlags for this paintable. gdk_paintable_get_intrinsic_width () gdk_paintable_get_intrinsic_width int gdk_paintable_get_intrinsic_width (GdkPaintable *paintable); Gets the preferred width the paintable would like to be displayed at. Consumers of this interface can use this to reserve enough space to draw the paintable. This is a purely informational value and does not in any way limit the values that may be passed to gdk_paintable_snapshot(). If the paintable does not have a preferred width, it returns 0. Negative values are never returned. Parameters paintable a GdkPaintable Returns the intrinsic width of paintable or 0 if none. gdk_paintable_get_intrinsic_height () gdk_paintable_get_intrinsic_height int gdk_paintable_get_intrinsic_height (GdkPaintable *paintable); Gets the preferred height the paintable would like to be displayed at. Consumers of this interface can use this to reserve enough space to draw the paintable. This is a purely informational value and does not in any way limit the values that may be passed to gdk_paintable_snapshot(). If the paintable does not have a preferred height, it returns 0. Negative values are never returned. Parameters paintable a GdkPaintable Returns the intrinsic height of paintable or 0 if none. gdk_paintable_get_intrinsic_aspect_ratio () gdk_paintable_get_intrinsic_aspect_ratio double gdk_paintable_get_intrinsic_aspect_ratio (GdkPaintable *paintable); Gets the preferred aspect ratio the paintable would like to be displayed at. The aspect ratio is the width divided by the height, so a value of 0.5 means that the paintable prefers to be displayed twice as high as it is wide. Consumers of this interface can use this to preserve aspect ratio when displaying the paintable. This is a purely informational value and does not in any way limit the values that may be passed to gdk_paintable_snapshot(). Usually when a paintable returns nonzero values from gdk_paintable_get_intrinsic_width() and gdk_paintable_get_intrinsic_height() the aspect ratio should conform to those values, though that is not required. If the paintable does not have a preferred aspect ratio, it returns 0. Negative values are never returned. Parameters paintable a GdkPaintable Returns the intrinsic aspect ratio of paintable or 0 if none. gdk_paintable_compute_concrete_size () gdk_paintable_compute_concrete_size void gdk_paintable_compute_concrete_size (GdkPaintable *paintable, double specified_width, double specified_height, double default_width, double default_height, double *concrete_width, double *concrete_height); Applies the sizing algorithm outlined in https://drafts.csswg.org/css-images-3/default-sizing to the given paintable . See that link for more details. It is not necessary to call this function when both specified_width and specified_height are known, but it is useful to call this function in GtkWidget:measure implementations to compute the other dimension when only one dimension is given. Parameters paintable a GdkPaintable specified_width the width paintable could be drawn into or 0.0 if unknown specified_height the height paintable could be drawn into or 0.0 if unknown default_width the width paintable would be drawn into if no other constraints were given default_height the height paintable would be drawn into if no other constraints were given concrete_width will be set to the concrete width computed. [out] concrete_height will be set to the concrete height computed. [out] gdk_paintable_invalidate_contents () gdk_paintable_invalidate_contents void gdk_paintable_invalidate_contents (GdkPaintable *paintable); Called by implementations of GdkPaintable to invalidate their contents. Unless the contents are invalidated, implementations must guarantee that multiple calls of gdk_paintable_snapshot() produce the same output. This function will emit the “invalidate-contents” signal. If a paintable reports the GDK_PAINTABLE_STATIC_CONTENTS flag, it must not call this function. Parameters paintable a GdkPaintable gdk_paintable_invalidate_size () gdk_paintable_invalidate_size void gdk_paintable_invalidate_size (GdkPaintable *paintable); Called by implementations of GdkPaintable to invalidate their size. As long as the size is not invalidated, paintable must return the same values for its intrinsic width, height and aspect ratio. This function will emit the “invalidate-size” signal. If a paintable reports the GDK_PAINTABLE_STATIC_SIZE flag, it must not call this function. Parameters paintable a GdkPaintable gdk_paintable_new_empty () gdk_paintable_new_empty GdkPaintable * gdk_paintable_new_empty (int intrinsic_width, int intrinsic_height); Returns a paintable that has the given intrinsic size and draws nothing. This is often useful for implementing the GdkPaintableInterface.get_current_image() virtual function when the paintable is in an incomplete state (like a GtkMediaStream before receiving the first frame). Parameters intrinsic_width The intrinsic width to report. Can be 0 for no width. intrinsic_height The intrinsic height to report. Can be 0 for no height. Returns a GdkPaintable. [transfer full] Types and Values GdkPaintable GdkPaintable typedef struct _GdkPaintable GdkPaintable; Interface for paintable objects. struct GdkPaintableInterface GdkPaintableInterface struct GdkPaintableInterface { /* draw to 0,0 with the given width and height */ void (* snapshot) (GdkPaintable *paintable, GdkSnapshot *snapshot, double width, double height); /* get the current contents in an immutable form (optional) */ GdkPaintable * (* get_current_image) (GdkPaintable *paintable); /* get flags for potential optimizations (optional) */ GdkPaintableFlags (* get_flags) (GdkPaintable *paintable); /* preferred width of paintable or 0 if it has no width (optional) */ int (* get_intrinsic_width) (GdkPaintable *paintable); /* preferred height of paintable or 0 if it has no height (optional) */ int (* get_intrinsic_height) (GdkPaintable *paintable); /* aspect ratio (width / height) of paintable or 0 if it has no aspect ratio (optional) */ double (* get_intrinsic_aspect_ratio) (GdkPaintable *paintable); }; The list of functions that can be implemented for the GdkPaintable interface. Note that apart from the GdkPaintableInterface.snapshot() function, no virtual function of this interface is mandatory to implement, though it is a good idea to implement GdkPaintableInterface.get_current_image() for non-static paintables and GdkPaintableInterface.get_flags() if the image is not dynamic as the default implementation returns no flags and that will make the implementation likely quite slow. Members snapshot () Snapshot the paintable. The given width and height are guaranteed to be larger than 0.0. The resulting snapshot must modify only the area in the rectangle from (0,0) to (width, height). This is the only function that must be implemented for this interface. get_current_image () return a GdkPaintable that does not change over time. This means the GDK_PAINTABLE_STATIC_SIZE and GDK_PAINTABLE_STATIC_CONTENTS flag are set. get_flags () Get the flags for this instance. See GdkPaintableFlags for details. get_intrinsic_width () The preferred width for this object to be snapshot at or 0 if none. This is purely a hint. The object must still be able to render at any size. get_intrinsic_height () The preferred height for this object to be snapshot at or 0 if none. This is purely a hint. The object must still be able to render at any size. get_intrinsic_aspect_ratio () The preferred aspect ratio for this object or 0 if none. If both GdkPaintableInterface.get_intrinsic_width() and GdkPaintableInterface.get_intrinsic_height() return non-zero values, this function should return the aspect ratio computed from those. enum GdkPaintableFlags GdkPaintableFlags Flags about this object. Implementations use these for optimizations such as caching. Members GDK_PAINTABLE_STATIC_SIZE The size is immutable. The “invalidate-size” signal will never be emitted. GDK_PAINTABLE_STATIC_CONTENTS The content is immutable. The “invalidate-contents” signal will never be emitted. GdkSnapshot GdkSnapshot typedef struct _GdkSnapshot GdkSnapshot; Base type for snapshot operations. Signal Details The <literal>“invalidate-contents”</literal> signal GdkPaintable::invalidate-contents void user_function (GdkPaintable *paintable, gpointer user_data) Emitted when the contents of the paintable change. Examples for such an event would be videos changing to the next frame or the icon theme for an icon changing. Parameters paintable a GdkPaintable user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“invalidate-size”</literal> signal GdkPaintable::invalidate-size void user_function (GdkPaintable *paintable, gpointer user_data) Emitted when the intrinsic size of the paintable changes. This means the values reported by at least one of gdk_paintable_get_intrinsic_width(), gdk_paintable_get_intrinsic_height() or gdk_paintable_get_intrinsic_aspect_ratio() has changed. Examples for such an event would be a paintable displaying the contents of a toplevel surface being resized. Parameters paintable a GdkPaintable user_data user data set when the signal handler was connected. Flags: Run Last See Also ClutterContent, GtkImage, GdkTexture, GtkSnapshot docs/reference/gdk/xml/gdkpopuplayout.xml0000664000175000017500000011223214010071747020754 0ustar mclasenmclasen ]> GdkPopupLayout 3 GDK4 Library GdkPopupLayout Information for presenting popups Functions GdkPopupLayout * gdk_popup_layout_new () GdkPopupLayout * gdk_popup_layout_ref () void gdk_popup_layout_unref () GdkPopupLayout * gdk_popup_layout_copy () gboolean gdk_popup_layout_equal () void gdk_popup_layout_set_anchor_rect () const GdkRectangle * gdk_popup_layout_get_anchor_rect () void gdk_popup_layout_set_rect_anchor () GdkGravity gdk_popup_layout_get_rect_anchor () void gdk_popup_layout_set_surface_anchor () GdkGravity gdk_popup_layout_get_surface_anchor () void gdk_popup_layout_set_anchor_hints () GdkAnchorHints gdk_popup_layout_get_anchor_hints () void gdk_popup_layout_set_offset () void gdk_popup_layout_get_offset () Types and Values GdkPopupLayout enumGdkAnchorHints Object Hierarchy GBoxed ╰── GdkPopupLayout Includes#include <gdk/gdk.h> Description Popups are positioned relative to their parent surface. The GdkPopupLayout struct contains information that is necessary to do so. The positioning requires a negotiation with the windowing system, since it depends on external constraints, such as the position of the parent surface, and the screen dimensions. The basic ingredients are a rectangle on the parent surface, and the anchor on both that rectangle and the popup. The anchors specify a side or corner to place next to each other. Popup anchors For cases where placing the anchors next to each other would make the popup extend offscreen, the layout includes some hints for how to resolve this problem. The hints may suggest to flip the anchor position to the other side, or to 'slide' the popup along a side, or to resize it. Flipping popups Sliding popups These hints may be combined. Ultimatively, it is up to the windowing system to determine the position and size of the popup. You can learn about the result by calling gdk_popup_get_position_x(), gdk_popup_get_position_y(), gdk_popup_get_rect_anchor() and gdk_popup_get_surface_anchor() after the popup has been presented. This can be used to adjust the rendering. For example, GtkPopover changes its arrow position accordingly. But you have to be careful avoid changing the size of the popover, or it has to be presented again. Functions gdk_popup_layout_new () gdk_popup_layout_new GdkPopupLayout * gdk_popup_layout_new (const GdkRectangle *anchor_rect, GdkGravity rect_anchor, GdkGravity surface_anchor); Create a popup layout description. Used together with gdk_popup_present() to describe how a popup surface should be placed and behave on-screen. anchor_rect is relative to the top-left corner of the surface's parent. rect_anchor and surface_anchor determine anchor points on anchor_rect and surface to pin together. The position of anchor_rect 's anchor point can optionally be offset using gdk_popup_layout_set_offset(), which is equivalent to offsetting the position of surface. [constructor] Parameters anchor_rect the anchor GdkRectangle to align surface with. [not nullable] rect_anchor the point on anchor_rect to align with surface 's anchor point surface_anchor the point on surface to align with rect 's anchor point Returns newly created instance of GdkPopupLayout. [transfer full] gdk_popup_layout_ref () gdk_popup_layout_ref GdkPopupLayout * gdk_popup_layout_ref (GdkPopupLayout *layout); Increases the reference count of value . Parameters layout a GdkPopupLayout Returns the same layout gdk_popup_layout_unref () gdk_popup_layout_unref void gdk_popup_layout_unref (GdkPopupLayout *layout); Decreases the reference count of value . Parameters layout a GdkPopupLayout gdk_popup_layout_copy () gdk_popup_layout_copy GdkPopupLayout * gdk_popup_layout_copy (GdkPopupLayout *layout); Create a new GdkPopupLayout and copy the contents of layout into it. Parameters layout a GdkPopupLayout Returns a copy of layout . [transfer full] gdk_popup_layout_equal () gdk_popup_layout_equal gboolean gdk_popup_layout_equal (GdkPopupLayout *layout, GdkPopupLayout *other); Check whether layout and other has identical layout properties. Parameters layout a GdkPopupLayout other another GdkPopupLayout Returns TRUE if layout and other have identical layout properties, otherwise FALSE. gdk_popup_layout_set_anchor_rect () gdk_popup_layout_set_anchor_rect void gdk_popup_layout_set_anchor_rect (GdkPopupLayout *layout, const GdkRectangle *anchor_rect); Set the anchor rectangle. Parameters layout a GdkPopupLayout anchor_rect the new anchor rectangle gdk_popup_layout_get_anchor_rect () gdk_popup_layout_get_anchor_rect const GdkRectangle * gdk_popup_layout_get_anchor_rect (GdkPopupLayout *layout); Get the anchor rectangle. Parameters layout a GdkPopupLayout Returns The anchor rectangle. gdk_popup_layout_set_rect_anchor () gdk_popup_layout_set_rect_anchor void gdk_popup_layout_set_rect_anchor (GdkPopupLayout *layout, GdkGravity anchor); Set the anchor on the anchor rectangle. Parameters layout a GdkPopupLayout anchor the new rect anchor gdk_popup_layout_get_rect_anchor () gdk_popup_layout_get_rect_anchor GdkGravity gdk_popup_layout_get_rect_anchor (GdkPopupLayout *layout); Returns the anchor position on the anchor rectangle. Parameters layout a GdkPopupLayout Returns the anchor on the anchor rectangle. gdk_popup_layout_set_surface_anchor () gdk_popup_layout_set_surface_anchor void gdk_popup_layout_set_surface_anchor (GdkPopupLayout *layout, GdkGravity anchor); Set the anchor on the popup surface. Parameters layout a GdkPopupLayout anchor the new popup surface anchor gdk_popup_layout_get_surface_anchor () gdk_popup_layout_get_surface_anchor GdkGravity gdk_popup_layout_get_surface_anchor (GdkPopupLayout *layout); Returns the anchor position on the popup surface. Parameters layout a GdkPopupLayout Returns the anchor on the popup surface. gdk_popup_layout_set_anchor_hints () gdk_popup_layout_set_anchor_hints void gdk_popup_layout_set_anchor_hints (GdkPopupLayout *layout, GdkAnchorHints anchor_hints); Set new anchor hints. The set anchor_hints determines how surface will be moved if the anchor points cause it to move off-screen. For example, GDK_ANCHOR_FLIP_X will replace GDK_GRAVITY_NORTH_WEST with GDK_GRAVITY_NORTH_EAST and vice versa if surface extends beyond the left or right edges of the monitor. Parameters layout a GdkPopupLayout anchor_hints the new GdkAnchorHints gdk_popup_layout_get_anchor_hints () gdk_popup_layout_get_anchor_hints GdkAnchorHints gdk_popup_layout_get_anchor_hints (GdkPopupLayout *layout); Get the GdkAnchorHints. Parameters layout a GdkPopupLayout Returns the GdkAnchorHints. gdk_popup_layout_set_offset () gdk_popup_layout_set_offset void gdk_popup_layout_set_offset (GdkPopupLayout *layout, int dx, int dy); Offset the position of the anchor rectangle with the given delta. Parameters layout a GdkPopupLayout dx x delta to offset the anchor rectangle with dy y delta to offset the anchor rectangle with gdk_popup_layout_get_offset () gdk_popup_layout_get_offset void gdk_popup_layout_get_offset (GdkPopupLayout *layout, int *dx, int *dy); Retrieves the offset for the anchor rectangle. Parameters layout a GdkPopupLayout dx return location for the delta X coordinate. [out] dy return location for the delta Y coordinate. [out] Types and Values GdkPopupLayout GdkPopupLayout typedef struct _GdkPopupLayout GdkPopupLayout; Struct containing information for gdk_popup_present() enum GdkAnchorHints GdkAnchorHints Positioning hints for aligning a surface relative to a rectangle. These hints determine how the surface should be positioned in the case that the surface would fall off-screen if placed in its ideal position. For example, GDK_ANCHOR_FLIP_X will replace GDK_GRAVITY_NORTH_WEST with GDK_GRAVITY_NORTH_EAST and vice versa if the surface extends beyond the left or right edges of the monitor. If GDK_ANCHOR_SLIDE_X is set, the surface can be shifted horizontally to fit on-screen. If GDK_ANCHOR_RESIZE_X is set, the surface can be shrunken horizontally to fit. In general, when multiple flags are set, flipping should take precedence over sliding, which should take precedence over resizing. Members GDK_ANCHOR_FLIP_X allow flipping anchors horizontally GDK_ANCHOR_FLIP_Y allow flipping anchors vertically GDK_ANCHOR_SLIDE_X allow sliding surface horizontally GDK_ANCHOR_SLIDE_Y allow sliding surface vertically GDK_ANCHOR_RESIZE_X allow resizing surface horizontally GDK_ANCHOR_RESIZE_Y allow resizing surface vertically GDK_ANCHOR_FLIP allow flipping anchors on both axes GDK_ANCHOR_SLIDE allow sliding surface on both axes GDK_ANCHOR_RESIZE allow resizing surface on both axes docs/reference/gdk/xml/gdkpopup.xml0000664000175000017500000004513214010071747017522 0ustar mclasenmclasen ]> Popups 3 GDK4 Library Popups Interface for popup surfaces Functions gboolean gdk_popup_present () GdkGravity gdk_popup_get_surface_anchor () GdkGravity gdk_popup_get_rect_anchor () GdkSurface * gdk_popup_get_parent () int gdk_popup_get_position_x () int gdk_popup_get_position_y () gboolean gdk_popup_get_autohide () Properties gbooleanautohideRead / Write / Construct Only GdkSurface *parentRead / Write / Construct Only Types and Values GdkPopup Object Hierarchy GInterface ╰── GdkPopup Prerequisites GdkPopup requires GdkSurface. Includes#include <gdk/gdk.h> Description A GdkPopup is a surface that is attached to another surface, called its “parent”, and is positioned relative to it. GdkPopups are typically used to implement menus and similar popups. They can be modal, which is indicated by the “autohide” property. Functions gdk_popup_present () gdk_popup_present gboolean gdk_popup_present (GdkPopup *popup, int width, int height, GdkPopupLayout *layout); Present popup after having processed the GdkPopupLayout rules. If the popup was previously now showing, it will be showed, otherwise it will change position according to layout . After calling this function, the result should be handled in response to the “layout” signal being emitted. The resulting popup position can be queried using gdk_popup_get_position_x(), gdk_popup_get_position_y(), and the resulting size will be sent as parameters in the layout signal. Use gdk_popup_get_rect_anchor() and gdk_popup_get_surface_anchor() to get the resulting anchors. Presenting may fail, for example if the popup is set to autohide and is immediately hidden upon being presented. If presenting failed, the “layout” signal will not me emitted. Parameters popup the GdkPopup to show width the unconstrained popup width to layout height the unconstrained popup height to layout layout the GdkPopupLayout object used to layout Returns FALSE if it failed to be presented, otherwise TRUE. gdk_popup_get_surface_anchor () gdk_popup_get_surface_anchor GdkGravity gdk_popup_get_surface_anchor (GdkPopup *popup); Gets the current popup surface anchor. The value returned may change after calling gdk_popup_present(), or after the “layout” signal is emitted. Parameters popup a GdkPopup Returns the current surface anchor value of popup gdk_popup_get_rect_anchor () gdk_popup_get_rect_anchor GdkGravity gdk_popup_get_rect_anchor (GdkPopup *popup); Gets the current popup rectangle anchor. The value returned may change after calling gdk_popup_present(), or after the “layout” signal is emitted. Parameters popup a GdkPopup Returns the current rectangle anchor value of popup gdk_popup_get_parent () gdk_popup_get_parent GdkSurface * gdk_popup_get_parent (GdkPopup *popup); Returns the parent surface of a popup. Parameters popup a GdkPopup Returns the parent surface. [transfer none] gdk_popup_get_position_x () gdk_popup_get_position_x int gdk_popup_get_position_x (GdkPopup *popup); Obtains the position of the popup relative to its parent. Parameters popup a GdkPopup Returns the X coordinate of popup position gdk_popup_get_position_y () gdk_popup_get_position_y int gdk_popup_get_position_y (GdkPopup *popup); Obtains the position of the popup relative to its parent. Parameters popup a GdkPopup Returns the Y coordinate of popup position gdk_popup_get_autohide () gdk_popup_get_autohide gboolean gdk_popup_get_autohide (GdkPopup *popup); Returns whether this popup is set to hide on outside clicks. Parameters popup a GdkPopup Returns TRUE if popup will autohide Types and Values GdkPopup GdkPopup typedef struct _GdkPopup GdkPopup; Interface for popup surfaces. Property Details The <literal>“autohide”</literal> property GdkPopup:autohide “autohide” gboolean Whether to hide on outside clicks.Owner: GdkPopup Flags: Read / Write / Construct Only Default value: FALSE The <literal>“parent”</literal> property GdkPopup:parent “parent” GdkSurface * The parent surface.Owner: GdkPopup Flags: Read / Write / Construct Only See Also GdkToplevel, GdkSurface docs/reference/gdk/xml/gdktoplevellayout.xml0000664000175000017500000006323114010071747021447 0ustar mclasenmclasen ]> GdkToplevelLayout 3 GDK4 Library GdkToplevelLayout Information for presenting toplevels Functions GdkToplevelLayout * gdk_toplevel_layout_new () GdkToplevelLayout * gdk_toplevel_layout_ref () void gdk_toplevel_layout_unref () GdkToplevelLayout * gdk_toplevel_layout_copy () gboolean gdk_toplevel_layout_equal () void gdk_toplevel_layout_set_maximized () gboolean gdk_toplevel_layout_get_maximized () void gdk_toplevel_layout_set_fullscreen () gboolean gdk_toplevel_layout_get_fullscreen () GdkMonitor * gdk_toplevel_layout_get_fullscreen_monitor () void gdk_toplevel_layout_set_resizable () gboolean gdk_toplevel_layout_get_resizable () Types and Values GdkToplevelLayout Object Hierarchy GBoxed ╰── GdkToplevelLayout Includes#include <gdk/gdk.h> Description Toplevel surfaces are sovereign windows that can be presented to the user in various states (maximized, on all workspaces, etc). The GdkToplevelLayout struct contains information that is necessary to do so, and is passed to gdk_toplevel_present(). Functions gdk_toplevel_layout_new () gdk_toplevel_layout_new GdkToplevelLayout * gdk_toplevel_layout_new (void); Create a toplevel layout description. Used together with gdk_toplevel_present() to describe how a toplevel surface should be placed and behave on-screen. The size is in ”application pixels”, not ”device pixels” (see gdk_surface_get_scale_factor()). [constructor] Returns newly created instance of GdkToplevelLayout. [transfer full] gdk_toplevel_layout_ref () gdk_toplevel_layout_ref GdkToplevelLayout * gdk_toplevel_layout_ref (GdkToplevelLayout *layout); Increases the reference count of layout . Parameters layout a GdkToplevelLayout Returns the same layout gdk_toplevel_layout_unref () gdk_toplevel_layout_unref void gdk_toplevel_layout_unref (GdkToplevelLayout *layout); Decreases the reference count of layout . Parameters layout a GdkToplevelLayout gdk_toplevel_layout_copy () gdk_toplevel_layout_copy GdkToplevelLayout * gdk_toplevel_layout_copy (GdkToplevelLayout *layout); Create a new GdkToplevelLayout and copy the contents of layout into it. Parameters layout a GdkToplevelLayout Returns a copy of layout . [transfer full] gdk_toplevel_layout_equal () gdk_toplevel_layout_equal gboolean gdk_toplevel_layout_equal (GdkToplevelLayout *layout, GdkToplevelLayout *other); Check whether layout and other has identical layout properties. Parameters layout a GdkToplevelLayout other another GdkToplevelLayout Returns TRUE if layout and other have identical layout properties, otherwise FALSE. gdk_toplevel_layout_set_maximized () gdk_toplevel_layout_set_maximized void gdk_toplevel_layout_set_maximized (GdkToplevelLayout *layout, gboolean maximized); Sets whether the layout should cause the surface to be maximized when presented. Parameters layout a GdkToplevelLayout maximized TRUE to maximize gdk_toplevel_layout_get_maximized () gdk_toplevel_layout_get_maximized gboolean gdk_toplevel_layout_get_maximized (GdkToplevelLayout *layout, gboolean *maximized); If the layout specifies whether to the toplevel should go maximized, the value pointed to by maximized is set to TRUE if it should go fullscreen, or FALSE, if it should go unmaximized. Parameters layout a GdkToplevelLayout maximized set to TRUE if the toplevel should be maximized. [out] Returns whether the layout specifies the maximized state for the toplevel gdk_toplevel_layout_set_fullscreen () gdk_toplevel_layout_set_fullscreen void gdk_toplevel_layout_set_fullscreen (GdkToplevelLayout *layout, gboolean fullscreen, GdkMonitor *monitor); Sets whether the layout should cause the surface to be fullscreen when presented. Parameters layout a GdkToplevelLayout fullscreen TRUE to fullscreen the surface monitor the monitor to fullscreen on. [nullable] gdk_toplevel_layout_get_fullscreen () gdk_toplevel_layout_get_fullscreen gboolean gdk_toplevel_layout_get_fullscreen (GdkToplevelLayout *layout, gboolean *fullscreen); If the layout specifies whether to the toplevel should go fullscreen, the value pointed to by fullscreen is set to TRUE if it should go fullscreen, or FALSE, if it should go unfullscreen. Parameters layout a GdkToplevelLayout fullscreen location to store whether the toplevel should be fullscreen. [out] Returns whether the layout specifies the fullscreen state for the toplevel gdk_toplevel_layout_get_fullscreen_monitor () gdk_toplevel_layout_get_fullscreen_monitor GdkMonitor * gdk_toplevel_layout_get_fullscreen_monitor (GdkToplevelLayout *layout); Returns the monitor that the layout is fullscreening the surface on. Parameters layout a GdkToplevelLayout Returns the monitor on which layout fullscreens. [nullable][transfer none] gdk_toplevel_layout_set_resizable () gdk_toplevel_layout_set_resizable void gdk_toplevel_layout_set_resizable (GdkToplevelLayout *layout, gboolean resizable); Sets whether the layout should allow the user to resize the surface after it has been presented. Parameters layout a GdkToplevelLayout resizable TRUE to allow resizing gdk_toplevel_layout_get_resizable () gdk_toplevel_layout_get_resizable gboolean gdk_toplevel_layout_get_resizable (GdkToplevelLayout *layout); Returns whether the layout should allow the user to resize the surface. Parameters layout a GdkToplevelLayout Returns TRUE if the layout is resizable Types and Values GdkToplevelLayout GdkToplevelLayout typedef struct _GdkToplevelLayout GdkToplevelLayout; Struct containing information for gdk_toplevel_present() docs/reference/gdk/xml/gdktoplevelsize.xml0000664000175000017500000003070214010071747021101 0ustar mclasenmclasen ]> GdkToplevelSize 3 GDK4 Library GdkToplevelSize Information for computing toplevel size Functions void gdk_toplevel_size_get_bounds () void gdk_toplevel_size_set_size () void gdk_toplevel_size_set_min_size () void gdk_toplevel_size_set_shadow_width () Types and Values GdkToplevelSize Includes#include <gdk/gdk.h> Description The GdkToplevelSIze struct contains information that may be useful for users of GdkToplevel to compute a surface size. It also carries information back with the computational result. Functions gdk_toplevel_size_get_bounds () gdk_toplevel_size_get_bounds void gdk_toplevel_size_get_bounds (GdkToplevelSize *size, int *bounds_width, int *bounds_height); Retrieves the bounds the toplevel is placed within. The bounds represent the largest size a toplevel may have while still being able to fit within some type of boundary. Depending on the backend, this may be equivalent to the dimensions of the work area or the monitor on which the window is being presented on, or something else that limits the way a toplevel can be presented. Parameters size a GdkToplevelSize bounds_width return location for width. [out] bounds_height return location for height. [out] gdk_toplevel_size_set_size () gdk_toplevel_size_set_size void gdk_toplevel_size_set_size (GdkToplevelSize *size, int width, int height); Sets the size the toplevel prefers to be resized to. The size should be within the bounds (see gdk_toplevel_size_get_bounds()). The set size should be considered as a hint, and should not be assumed to be respected by the windowing system, or backend. Parameters size a GdkToplevelSize width the width height the height gdk_toplevel_size_set_min_size () gdk_toplevel_size_set_min_size void gdk_toplevel_size_set_min_size (GdkToplevelSize *size, int min_width, int min_height); The minimum size corresponds to the limitations the toplevel can be shrunk to, without resulting in incorrect painting. A user of a GdkToplevel should calculate these given both the existing size, and the bounds retrieved from the GdkToplevelSize object. The minimum size should be within the bounds (see gdk_toplevel_size_get_bounds()). Parameters size a GdkToplevelSize min_width the minimum width min_height the minimum height gdk_toplevel_size_set_shadow_width () gdk_toplevel_size_set_shadow_width void gdk_toplevel_size_set_shadow_width (GdkToplevelSize *size, int left, int right, int top, int bottom); The shadow width corresponds to the part of the computed surface size that would consist of the shadow margin surrounding the window, would there be any. Parameters size a GdkToplevelSize left width of the left part of the shadow right width of the right part of the shadow top height of the top part of the shadow bottom height of the bottom part of the shadow Types and Values GdkToplevelSize GdkToplevelSize typedef struct _GdkToplevelSize GdkToplevelSize; Struct containing information for computing the size of a GdkToplevel. docs/reference/gdk/xml/gdktoplevel.xml0000664000175000017500000017404214010071747020214 0ustar mclasenmclasen ]> Toplevels 3 GDK4 Library Toplevels Interface for toplevel surfaces Functions void gdk_toplevel_present () gboolean gdk_toplevel_minimize () gboolean gdk_toplevel_lower () void gdk_toplevel_focus () GdkToplevelState gdk_toplevel_get_state () void gdk_toplevel_set_title () void gdk_toplevel_set_startup_id () void gdk_toplevel_set_transient_for () void gdk_toplevel_set_modal () void gdk_toplevel_set_icon_list () gboolean gdk_toplevel_show_window_menu () void gdk_toplevel_set_decorated () void gdk_toplevel_set_deletable () gboolean gdk_toplevel_supports_edge_constraints () void gdk_toplevel_inhibit_system_shortcuts () void gdk_toplevel_restore_system_shortcuts () void gdk_toplevel_begin_resize () void gdk_toplevel_begin_move () Properties gbooleandecoratedRead / Write gbooleandeletableRead / Write GdkFullscreenModefullscreen-modeRead / Write gpointericon-listRead / Write gbooleanmodalRead / Write gbooleanshortcuts-inhibitedRead char *startup-idRead / Write GdkToplevelStatestateRead char *titleRead / Write GdkSurface *transient-forRead / Write Signals voidcompute-sizeRun Last Types and Values GdkToplevel enumGdkToplevelState enumGdkFullscreenMode enumGdkSurfaceEdge Object Hierarchy GInterface ╰── GdkToplevel Prerequisites GdkToplevel requires GdkSurface. Includes#include <gdk/gdk.h> Description A GdkToplevel is a freestanding toplevel surface. The GdkToplevel interface provides useful APIs for interacting with the windowing system, such as controlling maximization and size of the surface, setting icons and transient parents for dialogs. Functions gdk_toplevel_present () gdk_toplevel_present void gdk_toplevel_present (GdkToplevel *toplevel, GdkToplevelLayout *layout); Present toplevel after having processed the GdkToplevelLayout rules. If the toplevel was previously not showing, it will be showed, otherwise it will change layout according to layout . GDK may emit the 'compute-size' signal to let the user of this toplevel compute the preferred size of the toplevel surface. See “compute-size” for details. Presenting is asynchronous and the specified layout parameters are not guaranteed to be respected. Parameters toplevel the GdkToplevel to show layout the GdkToplevelLayout object used to layout gdk_toplevel_minimize () gdk_toplevel_minimize gboolean gdk_toplevel_minimize (GdkToplevel *toplevel); Asks to minimize the toplevel . The windowing system may choose to ignore the request. Parameters toplevel a GdkToplevel Returns TRUE if the surface was minimized gdk_toplevel_lower () gdk_toplevel_lower gboolean gdk_toplevel_lower (GdkToplevel *toplevel); Asks to lower the toplevel below other windows. The windowing system may choose to ignore the request. Parameters toplevel a GdkToplevel Returns TRUE if the surface was lowered gdk_toplevel_focus () gdk_toplevel_focus void gdk_toplevel_focus (GdkToplevel *toplevel, guint32 timestamp); Sets keyboard focus to surface . In most cases, gtk_window_present_with_time() should be used on a GtkWindow, rather than calling this function. Parameters toplevel a GdkToplevel timestamp timestamp of the event triggering the surface focus gdk_toplevel_get_state () gdk_toplevel_get_state GdkToplevelState gdk_toplevel_get_state (GdkToplevel *toplevel); Gets the bitwise OR of the currently active surface state flags, from the GdkToplevelState enumeration. Parameters toplevel a GdkToplevel Returns surface state bitfield gdk_toplevel_set_title () gdk_toplevel_set_title void gdk_toplevel_set_title (GdkToplevel *toplevel, const char *title); Sets the title of a toplevel surface, to be displayed in the titlebar, in lists of windows, etc. Parameters toplevel a GdkToplevel title title of surface gdk_toplevel_set_startup_id () gdk_toplevel_set_startup_id void gdk_toplevel_set_startup_id (GdkToplevel *toplevel, const char *startup_id); When using GTK, typically you should use gtk_window_set_startup_id() instead of this low-level function. Parameters toplevel a GdkToplevel startup_id a string with startup-notification identifier gdk_toplevel_set_transient_for () gdk_toplevel_set_transient_for void gdk_toplevel_set_transient_for (GdkToplevel *toplevel, GdkSurface *parent); Indicates to the window manager that surface is a transient dialog associated with the application surface parent . This allows the window manager to do things like center surface on parent and keep surface above parent . See gtk_window_set_transient_for() if you’re using GtkWindow or GtkDialog. Parameters toplevel a GdkToplevel parent another toplevel GdkSurface gdk_toplevel_set_modal () gdk_toplevel_set_modal void gdk_toplevel_set_modal (GdkToplevel *toplevel, gboolean modal); The application can use this hint to tell the window manager that a certain surface has modal behaviour. The window manager can use this information to handle modal surfaces in a special way. You should only use this on surfaces for which you have previously called gdk_toplevel_set_transient_for(). Parameters toplevel A toplevel surface modal TRUE if the surface is modal, FALSE otherwise. gdk_toplevel_set_icon_list () gdk_toplevel_set_icon_list void gdk_toplevel_set_icon_list (GdkToplevel *toplevel, GList *surfaces); Sets a list of icons for the surface. One of these will be used to represent the surface in iconic form. The icon may be shown in window lists or task bars. Which icon size is shown depends on the window manager. The window manager can scale the icon but setting several size icons can give better image quality. Note that some platforms don't support surface icons. Parameters toplevel a GdkToplevel surfaces A list of textures to use as icon, of different sizes. [transfer none][element-type GdkTexture] gdk_toplevel_show_window_menu () gdk_toplevel_show_window_menu gboolean gdk_toplevel_show_window_menu (GdkToplevel *toplevel, GdkEvent *event); Asks the windowing system to show the window menu. The window menu is the menu shown when right-clicking the titlebar on traditional windows managed by the window manager. This is useful for windows using client-side decorations, activating it with a right-click on the window decorations. Parameters toplevel a GdkToplevel event a GdkEvent to show the menu for Returns TRUE if the window menu was shown and FALSE otherwise. gdk_toplevel_set_decorated () gdk_toplevel_set_decorated void gdk_toplevel_set_decorated (GdkToplevel *toplevel, gboolean decorated); Setting decorated to FALSE hints the desktop environment that the surface has its own, client-side decorations and does not need to have window decorations added. Parameters toplevel a GdkToplevel decorated TRUE to request decorations gdk_toplevel_set_deletable () gdk_toplevel_set_deletable void gdk_toplevel_set_deletable (GdkToplevel *toplevel, gboolean deletable); Setting deletable to TRUE hints the desktop environment that it should offer the user a way to close the surface. Parameters toplevel a GdkToplevel deletable TRUE to request a delete button gdk_toplevel_supports_edge_constraints () gdk_toplevel_supports_edge_constraints gboolean gdk_toplevel_supports_edge_constraints (GdkToplevel *toplevel); Returns whether the desktop environment supports tiled window states. Parameters toplevel a GdkToplevel Returns TRUE if the desktop environment supports tiled window states gdk_toplevel_inhibit_system_shortcuts () gdk_toplevel_inhibit_system_shortcuts void gdk_toplevel_inhibit_system_shortcuts (GdkToplevel *toplevel, GdkEvent *event); Requests that the toplevel inhibit the system shortcuts, asking the desktop environment/windowing system to let all keyboard events reach the surface, as long as it is focused, instead of triggering system actions. If granted, the rerouting remains active until the default shortcuts processing is restored with gdk_toplevel_restore_system_shortcuts(), or the request is revoked by the desktop environment, windowing system or the user. A typical use case for this API is remote desktop or virtual machine viewers which need to inhibit the default system keyboard shortcuts so that the remote session or virtual host gets those instead of the local environment. The windowing system or desktop environment may ask the user to grant or deny the request or even choose to ignore the request entirely. The caller can be notified whenever the request is granted or revoked by listening to the GdkToplevel::shortcuts-inhibited property. Parameters toplevel the GdkToplevel requesting system keyboard shortcuts event the GdkEvent that is triggering the inhibit request, or NULL if none is available. [nullable] gdk_toplevel_restore_system_shortcuts () gdk_toplevel_restore_system_shortcuts void gdk_toplevel_restore_system_shortcuts (GdkToplevel *toplevel); Restore default system keyboard shortcuts which were previously requested to be inhibited by gdk_toplevel_inhibit_system_shortcuts(). Parameters toplevel a GdkToplevel gdk_toplevel_begin_resize () gdk_toplevel_begin_resize void gdk_toplevel_begin_resize (GdkToplevel *toplevel, GdkSurfaceEdge edge, GdkDevice *device, int button, double x, double y, guint32 timestamp); Begins an interactive resize operation (for a toplevel surface). You might use this function to implement a “window resize grip.” Parameters toplevel a GdkToplevel edge the edge or corner from which the drag is started device the device used for the operation. [nullable] button the button being used to drag, or 0 for a keyboard-initiated drag x surface X coordinate of mouse click that began the drag y surface Y coordinate of mouse click that began the drag timestamp timestamp of mouse click that began the drag (use gdk_event_get_time()) gdk_toplevel_begin_move () gdk_toplevel_begin_move void gdk_toplevel_begin_move (GdkToplevel *toplevel, GdkDevice *device, int button, double x, double y, guint32 timestamp); Begins an interactive move operation (for a toplevel surface). You might use this function to implement draggable titlebars. Parameters toplevel a GdkToplevel device the device used for the operation button the button being used to drag, or 0 for a keyboard-initiated drag x surface X coordinate of mouse click that began the drag y surface Y coordinate of mouse click that began the drag timestamp timestamp of mouse click that began the drag Types and Values GdkToplevel GdkToplevel typedef struct _GdkToplevel GdkToplevel; An interface for top level surfaces. enum GdkToplevelState GdkToplevelState Specifies the state of a toplevel surface. On platforms that support information about individual edges, the GDK_TOPLEVEL_STATE_TILED state will be set whenever any of the individual tiled states is set. On platforms that lack that support, the tiled state will give an indication of tiledness without any of the per-edge states being set. Members GDK_TOPLEVEL_STATE_MINIMIZED the surface is minimized GDK_TOPLEVEL_STATE_MAXIMIZED the surface is maximized GDK_TOPLEVEL_STATE_STICKY the surface is sticky GDK_TOPLEVEL_STATE_FULLSCREEN the surface is maximized without decorations GDK_TOPLEVEL_STATE_ABOVE the surface is kept above other surfaces GDK_TOPLEVEL_STATE_BELOW the surface is kept below other surfaces GDK_TOPLEVEL_STATE_FOCUSED the surface is presented as focused (with active decorations) GDK_TOPLEVEL_STATE_TILED the surface is in a tiled state GDK_TOPLEVEL_STATE_TOP_TILED whether the top edge is tiled GDK_TOPLEVEL_STATE_TOP_RESIZABLE whether the top edge is resizable GDK_TOPLEVEL_STATE_RIGHT_TILED whether the right edge is tiled GDK_TOPLEVEL_STATE_RIGHT_RESIZABLE whether the right edge is resizable GDK_TOPLEVEL_STATE_BOTTOM_TILED whether the bottom edge is tiled GDK_TOPLEVEL_STATE_BOTTOM_RESIZABLE whether the bottom edge is resizable GDK_TOPLEVEL_STATE_LEFT_TILED whether the left edge is tiled GDK_TOPLEVEL_STATE_LEFT_RESIZABLE whether the left edge is resizable enum GdkFullscreenMode GdkFullscreenMode Indicates which monitor (in a multi-head setup) a surface should span over when in fullscreen mode. Members GDK_FULLSCREEN_ON_CURRENT_MONITOR Fullscreen on current monitor only. GDK_FULLSCREEN_ON_ALL_MONITORS Span across all monitors when fullscreen. enum GdkSurfaceEdge GdkSurfaceEdge Determines a surface edge or corner. Members GDK_SURFACE_EDGE_NORTH_WEST the top left corner. GDK_SURFACE_EDGE_NORTH the top edge. GDK_SURFACE_EDGE_NORTH_EAST the top right corner. GDK_SURFACE_EDGE_WEST the left edge. GDK_SURFACE_EDGE_EAST the right edge. GDK_SURFACE_EDGE_SOUTH_WEST the lower left corner. GDK_SURFACE_EDGE_SOUTH the lower edge. GDK_SURFACE_EDGE_SOUTH_EAST the lower right corner. Property Details The <literal>“decorated”</literal> property GdkToplevel:decorated “decorated” gboolean Decorated.Owner: GdkToplevel Flags: Read / Write Default value: FALSE The <literal>“deletable”</literal> property GdkToplevel:deletable “deletable” gboolean Deletable.Owner: GdkToplevel Flags: Read / Write Default value: FALSE The <literal>“fullscreen-mode”</literal> property GdkToplevel:fullscreen-mode “fullscreen-mode” GdkFullscreenMode Fullscreen mode.Owner: GdkToplevel Flags: Read / Write Default value: GDK_FULLSCREEN_ON_CURRENT_MONITOR The <literal>“icon-list”</literal> property GdkToplevel:icon-list “icon-list” gpointer The list of icon textures.Owner: GdkToplevel Flags: Read / Write The <literal>“modal”</literal> property GdkToplevel:modal “modal” gboolean Whether the surface is modal.Owner: GdkToplevel Flags: Read / Write Default value: FALSE The <literal>“shortcuts-inhibited”</literal> property GdkToplevel:shortcuts-inhibited “shortcuts-inhibited” gboolean Whether keyboard shortcuts are inhibited.Owner: GdkToplevel Flags: Read Default value: FALSE The <literal>“startup-id”</literal> property GdkToplevel:startup-id “startup-id” char * The startup ID of the surface.Owner: GdkToplevel Flags: Read / Write Default value: NULL The <literal>“state”</literal> property GdkToplevel:state “state” GdkToplevelState State.Owner: GdkToplevel Flags: Read The <literal>“title”</literal> property GdkToplevel:title “title” char * The title of the surface.Owner: GdkToplevel Flags: Read / Write Default value: NULL The <literal>“transient-for”</literal> property GdkToplevel:transient-for “transient-for” GdkSurface * The transient parent of the surface.Owner: GdkToplevel Flags: Read / Write Signal Details The <literal>“compute-size”</literal> signal GdkToplevel::compute-size void user_function (GdkToplevel *toplevel, GdkToplevelSize *size, gpointer user_data) Compute the desired size of the toplevel, given the information passed via the GdkToplevelSize object. It will normally be emitted during or after gdk_toplevel_present(), depending on the configuration received by the windowing system. It may also be emitted at any other point in time, in response to the windowing system spontaneously changing the configuration. It is the responsibility of the GdkToplevel user to handle this signal; failing to do so will result in an arbitrary size being used as a result. Parameters toplevel a GdkToplevel size a GdkToplevelSize. [type Gdk.ToplevelSize][out caller-allocates] user_data user data set when the signal handler was connected. Flags: Run Last See Also GdkSurface, GdkPopup docs/reference/gdk/xml/textures.xml0000664000175000017500000010470414010071747017555 0ustar mclasenmclasen ]> GdkTexture 3 GDK4 Library GdkTexture Pixel data Functions GdkTexture * gdk_texture_new_for_pixbuf () GdkTexture * gdk_texture_new_from_resource () GdkTexture * gdk_texture_new_from_file () int gdk_texture_get_width () int gdk_texture_get_height () void gdk_texture_download () gboolean gdk_texture_save_to_png () GdkTexture * gdk_memory_texture_new () GdkTexture * gdk_gl_texture_new () void gdk_gl_texture_release () Properties intheightRead / Write / Construct Only intwidthRead / Write / Construct Only Types and Values GdkTexture GdkMemoryTexture GdkGLTexture enumGdkMemoryFormat #defineGDK_MEMORY_DEFAULT Object Hierarchy GObject ╰── GdkTexture ├── GdkGLTexture ╰── GdkMemoryTexture Implemented Interfaces GdkTexture implements GdkPaintable. GdkMemoryTexture implements GdkPaintable. GdkGLTexture implements GdkPaintable. Includes#include <gdk/gdk.h> Description GdkTexture is the basic element used to refer to pixel data. It is primarily mean for pixel data that will not change over multiple frames, and will be used for a long time. There are various ways to create GdkTexture objects from a GdkPixbuf, or a Cairo surface, or other pixel data. The ownership of the pixel data is transferred to the GdkTexture instance; you can only make a copy of it, via gdk_texture_download(). GdkTexture is an immutable object: That means you cannot change anything about it other than increasing the reference count via g_object_ref(). Functions gdk_texture_new_for_pixbuf () gdk_texture_new_for_pixbuf GdkTexture * gdk_texture_new_for_pixbuf (GdkPixbuf *pixbuf); Creates a new texture object representing the GdkPixbuf. Parameters pixbuf a GdkPixbuf Returns a new GdkTexture gdk_texture_new_from_resource () gdk_texture_new_from_resource GdkTexture * gdk_texture_new_from_resource (const char *resource_path); Creates a new texture by loading an image from a resource. The file format is detected automatically. The supported formats are PNG and JPEG, though more formats might be available. It is a fatal error if resource_path does not specify a valid image resource and the program will abort if that happens. If you are unsure about the validity of a resource, use gdk_texture_new_from_file() to load it. Parameters resource_path the path of the resource file Returns A newly-created texture gdk_texture_new_from_file () gdk_texture_new_from_file GdkTexture * gdk_texture_new_from_file (GFile *file, GError **error); Creates a new texture by loading an image from a file. The file format is detected automatically. The supported formats are PNG and JPEG, though more formats might be available. If NULL is returned, then error will be set. Parameters file GFile to load error Return location for an error Returns A newly-created GdkTexture or NULL if an error occurred. gdk_texture_get_width () gdk_texture_get_width int gdk_texture_get_width (GdkTexture *texture); Returns the width of texture , in pixels. Parameters texture a GdkTexture Returns the width of the GdkTexture gdk_texture_get_height () gdk_texture_get_height int gdk_texture_get_height (GdkTexture *texture); Returns the height of the texture , in pixels. Parameters texture a GdkTexture Returns the height of the GdkTexture gdk_texture_download () gdk_texture_download void gdk_texture_download (GdkTexture *texture, guchar *data, gsize stride); Downloads the texture into local memory. This may be an expensive operation, as the actual texture data may reside on a GPU or on a remote display server. The data format of the downloaded data is equivalent to CAIRO_FORMAT_ARGB32, so every downloaded pixel requires 4 bytes of memory. Downloading a texture into a Cairo image surface: Parameters texture a GdkTexture data pointer to enough memory to be filled with the downloaded data of texture . [array] stride rowstride in bytes gdk_texture_save_to_png () gdk_texture_save_to_png gboolean gdk_texture_save_to_png (GdkTexture *texture, const char *filename); Store the given texture to the filename as a PNG file. This is a utility function intended for debugging and testing. If you want more control over formats, proper error handling or want to store to a GFile or other location, you might want to look into using the gdk-pixbuf library. Parameters texture a GdkTexture filename the filename to store to Returns TRUE if saving succeeded, FALSE on failure. gdk_memory_texture_new () gdk_memory_texture_new GdkTexture * gdk_memory_texture_new (int width, int height, GdkMemoryFormat format, GBytes *bytes, gsize stride); Creates a new texture for a blob of image data. The GBytes must contain stride x height pixels in the given format. Parameters width the width of the texture height the height of the texture format the format of the data bytes the GBytes containing the pixel data stride rowstride for the data Returns A newly-created GdkTexture gdk_gl_texture_new () gdk_gl_texture_new GdkTexture * gdk_gl_texture_new (GdkGLContext *context, guint id, int width, int height, GDestroyNotify destroy, gpointer data); Creates a new texture for an existing GL texture. Note that the GL texture must not be modified until destroy is called, which will happen when the GdkTexture object is finalized, or due to an explicit call of gdk_gl_texture_release(). Parameters context a GdkGLContext id the ID of a texture that was created with context width the nominal width of the texture height the nominal height of the texture destroy a destroy notify that will be called when the GL resources are released data data that gets passed to destroy Returns A newly-created GdkTexture. [transfer full] gdk_gl_texture_release () gdk_gl_texture_release void gdk_gl_texture_release (GdkGLTexture *self); Releases the GL resources held by a GdkGLTexture that was created with gdk_gl_texture_new(). The texture contents are still available via the gdk_texture_download() function, after this function has been called. Parameters self a GdkTexture wrapping a GL texture Types and Values GdkTexture GdkTexture typedef struct _GdkTexture GdkTexture; The GdkTexture structure contains only private data. GdkMemoryTexture GdkMemoryTexture typedef struct _GdkMemoryTexture GdkMemoryTexture; A GdkTexture representing image data in memory. GdkGLTexture GdkGLTexture typedef struct _GdkGLTexture GdkGLTexture; A GdkTexture representing a GL texture object. enum GdkMemoryFormat GdkMemoryFormat GdkMemoryFormat describes a format that bytes can have in memory. It describes formats by listing the contents of the memory passed to it. So GDK_MEMORY_A8R8G8B8 will be 1 byte (8 bits) of alpha, followed by a byte each of red, green and blue. It is not endian-dependent, so CAIRO_FORMAT_ARGB32 is represented by different GdkMemoryFormats on architectures with different endiannesses. Its naming is modelled after VkFormat (see https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.htmlVkFormat for details). Members GDK_MEMORY_B8G8R8A8_PREMULTIPLIED 4 bytes; for blue, green, red, alpha. The color values are premultiplied with the alpha value. GDK_MEMORY_A8R8G8B8_PREMULTIPLIED 4 bytes; for alpha, red, green, blue. The color values are premultiplied with the alpha value. GDK_MEMORY_R8G8B8A8_PREMULTIPLIED 4 bytes; for red, green, blue, alpha The color values are premultiplied with the alpha value. GDK_MEMORY_B8G8R8A8 4 bytes; for blue, green, red, alpha. GDK_MEMORY_A8R8G8B8 4 bytes; for alpha, red, green, blue. GDK_MEMORY_R8G8B8A8 4 bytes; for red, green, blue, alpha. GDK_MEMORY_A8B8G8R8 4 bytes; for alpha, blue, green, red. GDK_MEMORY_R8G8B8 3 bytes; for red, green, blue. The data is opaque. GDK_MEMORY_B8G8R8 3 bytes; for blue, green, red. The data is opaque. GDK_MEMORY_N_FORMATS The number of formats. This value will change as more formats get added, so do not rely on its concrete integer. GDK_MEMORY_DEFAULT GDK_MEMORY_DEFAULT #define GDK_MEMORY_DEFAULT GDK_MEMORY_B8G8R8A8_PREMULTIPLIED This is the default memory format used by GTK and is the format provided by gdk_texture_download(). It is equal to CAIRO_FORMAT_ARGB32. Be aware that unlike the GdkMemoryFormat values, this format is different for different endianness. Property Details The <literal>“height”</literal> property GdkTexture:height “height” int The height of the texture, in pixels. Owner: GdkTexture Flags: Read / Write / Construct Only Allowed values: >= 1 Default value: 1 The <literal>“width”</literal> property GdkTexture:width “width” int The width of the texture, in pixels. Owner: GdkTexture Flags: Read / Write / Construct Only Allowed values: >= 1 Default value: 1 docs/reference/gdk/xml/cursors.xml0000664000175000017500000007437014010071747017377 0ustar mclasenmclasen ]> Cursors 3 GDK4 Library Cursors Named and texture cursors Functions GdkCursor * gdk_cursor_new_from_texture () GdkCursor * gdk_cursor_new_from_name () GdkCursor * gdk_cursor_get_fallback () const char * gdk_cursor_get_name () GdkTexture * gdk_cursor_get_texture () int gdk_cursor_get_hotspot_x () int gdk_cursor_get_hotspot_y () Properties GdkCursor *fallbackRead / Write / Construct Only inthotspot-xRead / Write / Construct Only inthotspot-yRead / Write / Construct Only char *nameRead / Write / Construct Only GdkTexture *textureRead / Write / Construct Only Types and Values GdkCursor Object Hierarchy GObject ╰── GdkCursor Includes#include <gdk/gdk.h> Description These functions are used to create and destroy cursors. Cursors are immutable objects, so once you created them, there is no way to modify them later. Create a new cursor when you want to change something about it. Cursors by themselves are not very interesting, they must be bound to a window for users to see them. This is done with gdk_surface_set_cursor() or gdk_surface_set_device_cursor(). Applications will typically use higher-level GTK functions such as gtk_widget_set_cursor() instead. Cursors are not bound to a given GdkDisplay, so they can be shared. However, the appearance of cursors may vary when used on different platforms. There are multiple ways to create cursors. The platform's own cursors can be created with gdk_cursor_new_from_name(). That function lists the commonly available names that are shared with the CSS specification. Other names may be available, depending on the platform in use. On some platforms, what images are used for named cursors may be influenced by the cursor theme. Another option to create a cursor is to use gdk_cursor_new_from_texture() and provide an image to use for the cursor. To ease work with unsupported cursors, a fallback cursor can be provided. If a GdkSurface cannot use a cursor because of the reasons mentioned above, it will try the fallback cursor. Fallback cursors can themselves have fallback cursors again, so it is possible to provide a chain of progressively easier to support cursors. If none of the provided cursors can be supported, the default cursor will be the ultimate fallback. Functions gdk_cursor_new_from_texture () gdk_cursor_new_from_texture GdkCursor * gdk_cursor_new_from_texture (GdkTexture *texture, int hotspot_x, int hotspot_y, GdkCursor *fallback); Creates a new cursor from a GdkTexture. Parameters texture the texture providing the pixel data hotspot_x the horizontal offset of the “hotspot” of the cursor hotspot_y the vertical offset of the “hotspot” of the cursor fallback NULL or the GdkCursor to fall back to when this one cannot be supported. [allow-none] Returns a new GdkCursor. gdk_cursor_new_from_name () gdk_cursor_new_from_name GdkCursor * gdk_cursor_new_from_name (const char *name, GdkCursor *fallback); Creates a new cursor by looking up name in the current cursor theme. A recommended set of cursor names that will work across different platforms can be found in the CSS specification: "none" "default" "help" "pointer" "context-menu" "progress" "wait" "cell" "crosshair" "text" "vertical-text" "alias" "copy" "no-drop" "move" "not-allowed" "grab" "grabbing" "all-scroll" "col-resize" "row-resize" "n-resize" "e-resize" "s-resize" "w-resize" "ne-resize" "nw-resize" "sw-resize" "se-resize" "ew-resize" "ns-resize" "nesw-resize" "nwse-resize" "zoom-in" "zoom-out" Parameters name the name of the cursor fallback NULL or the GdkCursor to fall back to when this one cannot be supported. [allow-none] Returns a new GdkCursor, or NULL if there is no cursor with the given name. [nullable] gdk_cursor_get_fallback () gdk_cursor_get_fallback GdkCursor * gdk_cursor_get_fallback (GdkCursor *cursor); Returns the fallback for this cursor . The fallback will be used if this cursor is not available on a given GdkDisplay. For named cursors, this can happen when using nonstandard names or when using an incomplete cursor theme. For textured cursors, this can happen when the texture is too large or when the GdkDisplay it is used on does not support textured cursors. Parameters cursor a GdkCursor. Returns the fallback of the cursor or NULL to use the default cursor as fallback. [transfer none][nullable] gdk_cursor_get_name () gdk_cursor_get_name const char * gdk_cursor_get_name (GdkCursor *cursor); Returns the name of the cursor. If the cursor is not a named cursor, NULL will be returned. Parameters cursor a GdkCursor. Returns the name of the cursor or NULL if it is not a named cursor. [transfer none][nullable] gdk_cursor_get_texture () gdk_cursor_get_texture GdkTexture * gdk_cursor_get_texture (GdkCursor *cursor); Returns the texture for the cursor. If the cursor is a named cursor, NULL will be returned. Parameters cursor a GdkCursor. Returns the texture for cursor or NULL if it is a named cursor. [transfer none][nullable] gdk_cursor_get_hotspot_x () gdk_cursor_get_hotspot_x int gdk_cursor_get_hotspot_x (GdkCursor *cursor); Returns the horizontal offset of the hotspot. The hotspot indicates the pixel that will be directly above the cursor. Note that named cursors may have a nonzero hotspot, but this function will only return the hotspot position for cursors created with gdk_cursor_new_from_texture(). Parameters cursor a GdkCursor. Returns the horizontal offset of the hotspot or 0 for named cursors gdk_cursor_get_hotspot_y () gdk_cursor_get_hotspot_y int gdk_cursor_get_hotspot_y (GdkCursor *cursor); Returns the vertical offset of the hotspot. The hotspot indicates the pixel that will be directly above the cursor. Note that named cursors may have a nonzero hotspot, but this function will only return the hotspot position for cursors created with gdk_cursor_new_from_texture(). Parameters cursor a GdkCursor. Returns the vertical offset of the hotspot or 0 for named cursors Types and Values GdkCursor GdkCursor typedef struct _GdkCursor GdkCursor; A GdkCursor represents a cursor. Its contents are private. Cursors are immutable objects, so they can not change after they have been constructed. Property Details The <literal>“fallback”</literal> property GdkCursor:fallback “fallback” GdkCursor * Cursor image to fall back to if this cursor cannot be displayed.Owner: GdkCursor Flags: Read / Write / Construct Only The <literal>“hotspot-x”</literal> property GdkCursor:hotspot-x “hotspot-x” int Horizontal offset of the cursor hotspot.Owner: GdkCursor Flags: Read / Write / Construct Only Allowed values: >= 0 Default value: 0 The <literal>“hotspot-y”</literal> property GdkCursor:hotspot-y “hotspot-y” int Vertical offset of the cursor hotspot.Owner: GdkCursor Flags: Read / Write / Construct Only Allowed values: >= 0 Default value: 0 The <literal>“name”</literal> property GdkCursor:name “name” char * Name of this cursor.Owner: GdkCursor Flags: Read / Write / Construct Only Default value: NULL The <literal>“texture”</literal> property GdkCursor:texture “texture” GdkTexture * The texture displayed by this cursor.Owner: GdkCursor Flags: Read / Write / Construct Only docs/reference/gdk/xml/dnd.xml0000664000175000017500000024275214010071747016445 0ustar mclasenmclasen ]> Drag And Drop 3 GDK4 Library Drag And Drop Functions for controlling drag and drop handling Functions void gdk_drag_drop_done () GdkDrag * gdk_drag_begin () GdkDisplay * gdk_drag_get_display () GdkContentProvider * gdk_drag_get_content () GdkDragAction gdk_drag_get_actions () GdkDragAction gdk_drag_get_selected_action () GdkContentFormats * gdk_drag_get_formats () GdkDevice * gdk_drag_get_device () GdkSurface * gdk_drag_get_surface () GdkSurface * gdk_drag_get_drag_surface () void gdk_drag_set_hotspot () gboolean gdk_drag_action_is_unique () gboolean gdk_drag_surface_present () GdkDisplay * gdk_drop_get_display () GdkDevice * gdk_drop_get_device () GdkSurface * gdk_drop_get_surface () GdkContentFormats * gdk_drop_get_formats () GdkDragAction gdk_drop_get_actions () GdkDrag * gdk_drop_get_drag () void gdk_drop_status () void gdk_drop_finish () void gdk_drop_read_async () GInputStream * gdk_drop_read_finish () void gdk_drop_read_value_async () const GValue * gdk_drop_read_value_finish () Properties GdkDragActionactionsRead / Write GdkContentProvider *contentRead / Write / Construct Only GdkDevice *deviceRead / Write / Construct Only GdkDisplay *displayRead GdkContentFormats *formatsRead / Write / Construct Only GdkDragActionselected-actionRead / Write GdkSurface *surfaceRead / Write / Construct Only GdkDragActionactionsRead / Write / Construct Only GdkDevice *deviceRead / Write / Construct Only GdkDisplay *displayRead GdkDrag *dragRead / Write / Construct Only GdkContentFormats *formatsRead / Write / Construct Only GdkSurface *surfaceRead / Write / Construct Only Signals voidcancelRun Last voiddnd-finishedRun Last voiddrop-performedRun Last Types and Values GdkDrag GdkDrop enumGdkDragCancelReason enumGdkDragAction #defineGDK_ACTION_ALL GdkDragSurface GdkDragSurfaceInterface Object Hierarchy GInterface ╰── GdkDragSurface GObject ├── GdkDrag ╰── GdkDrop Prerequisites GdkDragSurface requires GdkSurface. Includes#include <gdk/gdk.h> Description These functions provide a low-level interface for drag and drop. The GdkDrag object represents the source side of an ongoing DND operation. It is created when a drag is started, and stays alive for duration of the DND operation. After a drag has been started with gdk_drag_begin(), the caller gets informed about the status of the ongoing drag operation with signals on the GdkDrag object. The GdkDrop object represents the target side of an ongoing DND operation. Possible drop sites get informed about the status of the ongoing drag operation with events of type GDK_DRAG_ENTER, GDK_DRAG_LEAVE, GDK_DRAG_MOTION and GDK_DROP_START. The GdkDrop object can be obtained from these GdkEvents using gdk_dnd_event_get_drop(). The actual data transfer is initiated from the target side via an async read, using one of the GdkDrop functions for this purpose: gdk_drop_read_async() or gdk_drop_read_value_async(). GTK provides a higher level abstraction based on top of these functions, and so they are not normally needed in GTK applications. See the Drag and Drop section of the GTK documentation for more information. Functions gdk_drag_drop_done () gdk_drag_drop_done void gdk_drag_drop_done (GdkDrag *drag, gboolean success); Inform GDK if the drop ended successfully. Passing FALSE for success may trigger a drag cancellation animation. This function is called by the drag source, and should be the last call before dropping the reference to the drag . The GdkDrag will only take the first gdk_drag_drop_done() call as effective, if this function is called multiple times, all subsequent calls will be ignored. Parameters drag a GdkDrag success whether the drag was ultimatively successful gdk_drag_begin () gdk_drag_begin GdkDrag * gdk_drag_begin (GdkSurface *surface, GdkDevice *device, GdkContentProvider *content, GdkDragAction actions, double dx, double dy); Starts a drag and creates a new drag context for it. This function is called by the drag source. After this call, you probably want to set up the drag icon using the surface returned by gdk_drag_get_drag_surface(). This function returns a reference to the GdkDrag object, but GTK keeps its own reference as well, as long as the DND operation is going on. Note: if actions include GDK_ACTION_MOVE, you need to listen for the “dnd-finished” signal and delete the data at the source if gdk_drag_get_selected_action() returns GDK_ACTION_MOVE. Parameters surface the source surface for this drag device the device that controls this drag content the offered content. [transfer none] actions the actions supported by this drag dx the x offset to device 's position where the drag nominally started dy the y offset to device 's position where the drag nominally started Returns a newly created GdkDrag or NULL on error. [transfer full][nullable] gdk_drag_get_display () gdk_drag_get_display GdkDisplay * gdk_drag_get_display (GdkDrag *drag); Gets the GdkDisplay that the drag object was created for. Parameters drag a GdkDrag Returns a GdkDisplay. [transfer none] gdk_drag_get_content () gdk_drag_get_content GdkContentProvider * gdk_drag_get_content (GdkDrag *drag); Returns the GdkContentProvider associated to the GdkDrag object. Parameters drag a GdkDrag Returns The GdkContentProvider associated to drag . [transfer none] gdk_drag_get_actions () gdk_drag_get_actions GdkDragAction gdk_drag_get_actions (GdkDrag *drag); Determines the bitmask of possible actions proposed by the source. Parameters drag a GdkDrag Returns the GdkDragAction flags gdk_drag_get_selected_action () gdk_drag_get_selected_action GdkDragAction gdk_drag_get_selected_action (GdkDrag *drag); Determines the action chosen by the drag destination. Parameters drag a GdkDrag Returns a GdkDragAction value gdk_drag_get_formats () gdk_drag_get_formats GdkContentFormats * gdk_drag_get_formats (GdkDrag *drag); Retrieves the formats supported by this GdkDrag object. Parameters drag a GdkDrag Returns a GdkContentFormats. [transfer none] gdk_drag_get_device () gdk_drag_get_device GdkDevice * gdk_drag_get_device (GdkDrag *drag); Returns the GdkDevice associated to the GdkDrag object. Parameters drag a GdkDrag Returns The GdkDevice associated to drag . [transfer none] gdk_drag_get_surface () gdk_drag_get_surface GdkSurface * gdk_drag_get_surface (GdkDrag *drag); Returns the GdkSurface where the drag originates. Parameters drag a GdkDrag Returns The GdkSurface where the drag originates. [transfer none] gdk_drag_get_drag_surface () gdk_drag_get_drag_surface GdkSurface * gdk_drag_get_drag_surface (GdkDrag *drag); Returns the surface on which the drag icon should be rendered during the drag operation. Note that the surface may not be available until the drag operation has begun. GDK will move the surface in accordance with the ongoing drag operation. The surface is owned by drag and will be destroyed when the drag operation is over. Parameters drag a GdkDrag Returns the drag surface, or NULL. [nullable][transfer none] gdk_drag_set_hotspot () gdk_drag_set_hotspot void gdk_drag_set_hotspot (GdkDrag *drag, int hot_x, int hot_y); Sets the position of the drag surface that will be kept under the cursor hotspot. Initially, the hotspot is at the top left corner of the drag surface. Parameters drag a GdkDrag hot_x x coordinate of the drag surface hotspot hot_y y coordinate of the drag surface hotspot gdk_drag_action_is_unique () gdk_drag_action_is_unique gboolean gdk_drag_action_is_unique (GdkDragAction action); Checks if action represents a single action or if it includes multiple flags that can be selected from. When action is 0 - ie no action was given, TRUE is returned. Parameters action a GdkDragAction Returns TRUE if exactly one action was given gdk_drag_surface_present () gdk_drag_surface_present gboolean gdk_drag_surface_present (GdkDragSurface *drag_surface, int width, int height); Present drag_surface . Parameters drag_surface the GdkDragSurface to show width the unconstrained drag_surface width to layout height the unconstrained drag_surface height to layout Returns FALSE if it failed to be presented, otherwise TRUE. gdk_drop_get_display () gdk_drop_get_display GdkDisplay * gdk_drop_get_display (GdkDrop *self); Gets the GdkDisplay that self was created for. Parameters self a GdkDrop Returns a GdkDisplay. [transfer none] gdk_drop_get_device () gdk_drop_get_device GdkDevice * gdk_drop_get_device (GdkDrop *self); Returns the GdkDevice performing the drop. Parameters self a GdkDrop Returns The GdkDevice performing the drop. [transfer none] gdk_drop_get_surface () gdk_drop_get_surface GdkSurface * gdk_drop_get_surface (GdkDrop *self); Returns the GdkSurface performing the drop. Parameters self a GdkDrop Returns The GdkSurface performing the drop. [transfer none] gdk_drop_get_formats () gdk_drop_get_formats GdkContentFormats * gdk_drop_get_formats (GdkDrop *self); Returns the GdkContentFormats that the drop offers the data to be read in. Parameters self a GdkDrop Returns The possible GdkContentFormats. [transfer none] gdk_drop_get_actions () gdk_drop_get_actions GdkDragAction gdk_drop_get_actions (GdkDrop *self); Returns the possible actions for this GdkDrop. If this value contains multiple actions - ie gdk_drag_action_is_unique() returns FALSE for the result - gdk_drop_finish() must choose the action to use when accepting the drop. This will only happen if you passed GDK_ACTION_ASK as one of the possible actions in gdk_drop_status(). GDK_ACTION_ASK itself will not be included in the actions returned by this function. This value may change over the lifetime of the GdkDrop both as a response to source side actions as well as to calls to gdk_drop_status() or gdk_drop_finish(). The source side will not change this value anymore once a drop has started. Parameters self a GdkDrop Returns The possible GdkDragActions gdk_drop_get_drag () gdk_drop_get_drag GdkDrag * gdk_drop_get_drag (GdkDrop *self); If this is an in-app drag-and-drop operation, returns the GdkDrag that corresponds to this drop. If it is not, NULL is returned. Parameters self a GdkDrop Returns the corresponding GdkDrag. [transfer none][nullable] gdk_drop_status () gdk_drop_status void gdk_drop_status (GdkDrop *self, GdkDragAction actions, GdkDragAction preferred); Selects all actions that are potentially supported by the destination. When calling this function, do not restrict the passed in actions to the ones provided by gdk_drop_get_actions(). Those actions may change in the future, even depending on the actions you provide here. The preferred action is a hint to the drag'n'drop mechanism about which action to use when multiple actions are possible. This function should be called by drag destinations in response to GDK_DRAG_ENTER or GDK_DRAG_MOTION events. If the destination does not yet know the exact actions it supports, it should set any possible actions first and then later call this function again. Parameters self a GdkDrop actions Supported actions of the destination, or 0 to indicate that a drop will not be accepted preferred A unique action that's a member of actions indicating the preferred action. gdk_drop_finish () gdk_drop_finish void gdk_drop_finish (GdkDrop *self, GdkDragAction action); Ends the drag operation after a drop. The action must be a single action selected from the actions available via gdk_drop_get_actions(). Parameters self a GdkDrop action the action performed by the destination or 0 if the drop failed gdk_drop_read_async () gdk_drop_read_async void gdk_drop_read_async (GdkDrop *self, const char **mime_types, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously read the dropped data from a GdkDrop in a format that complies with one of the mime types. Parameters self a GdkDrop mime_types pointer to an array of mime types. [array zero-terminated=1][element-type utf8] io_priority the io priority for the read operation cancellable optional GCancellable object, NULL to ignore. [allow-none] callback a GAsyncReadyCallback to call when the request is satisfied. [scope async] user_data the data to pass to callback . [closure] gdk_drop_read_finish () gdk_drop_read_finish GInputStream * gdk_drop_read_finish (GdkDrop *self, GAsyncResult *result, const char **out_mime_type, GError **error); Finishes an async drop read operation, see gdk_drop_read_async(). Parameters self a GdkDrop result a GAsyncResult out_mime_type return location for the used mime type. [out][type utf8] error location to store error information on failure, or NULL. [allow-none] Returns the GInputStream, or NULL. [nullable][transfer full] gdk_drop_read_value_async () gdk_drop_read_value_async void gdk_drop_read_value_async (GdkDrop *self, GType type, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously request the drag operation's contents converted to the given type . When the operation is finished callback will be called. You can then call gdk_drop_read_value_finish() to get the resulting GValue. For local drag'n'drop operations that are available in the given GType, the value will be copied directly. Otherwise, GDK will try to use gdk_content_deserialize_async() to convert the data. Parameters self a GdkDrop type a GType to read io_priority the I/O priority of the request. cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_drop_read_value_finish () gdk_drop_read_value_finish const GValue * gdk_drop_read_value_finish (GdkDrop *self, GAsyncResult *result, GError **error); Finishes an async drop read started with gdk_drop_read_value_async(). Parameters self a GdkDrop result a GAsyncResult error a GError location to store the error occurring, or NULL to ignore. Returns a GValue containing the result. [transfer none] Types and Values GdkDrag GdkDrag typedef struct _GdkDrag GdkDrag; The GdkDrag struct contains only private fields and should not be accessed directly. GdkDrop GdkDrop typedef struct _GdkDrop GdkDrop; The GdkDrop struct contains only private fields and should not be accessed directly. enum GdkDragCancelReason GdkDragCancelReason Used in GdkDrag to the reason of a cancelled DND operation. Members GDK_DRAG_CANCEL_NO_TARGET There is no suitable drop target. GDK_DRAG_CANCEL_USER_CANCELLED Drag cancelled by the user GDK_DRAG_CANCEL_ERROR Unspecified error. enum GdkDragAction GdkDragAction Used in GdkDrop and GdkDrag to indicate the actions that the destination can and should do with the dropped data. Members GDK_ACTION_COPY Copy the data. GDK_ACTION_MOVE Move the data, i.e. first copy it, then delete it from the source using the DELETE target of the X selection protocol. GDK_ACTION_LINK Add a link to the data. Note that this is only useful if source and destination agree on what it means, and is not supported on all platforms. GDK_ACTION_ASK Ask the user what to do with the data. GDK_ACTION_ALL GDK_ACTION_ALL #define GDK_ACTION_ALL (GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK) Defines all possible DND actions. This can be used in gdk_drop_status() messages when any drop can be accepted or a more specific drop method is not yet known. GdkDragSurface GdkDragSurface typedef struct _GdkDragSurface GdkDragSurface; A GdkDragSurface is an interface implemented by GdkSurfaces used during a DND operation. GdkDragSurfaceInterface GdkDragSurfaceInterface typedef struct _GdkDragSurfaceInterface GdkDragSurfaceInterface; The GdkDragSurfaceInterface implementation is private to GDK. Property Details The <literal>“actions”</literal> property GdkDrag:actions “actions” GdkDragAction The possible actions.Owner: GdkDrag Flags: Read / Write The <literal>“content”</literal> property GdkDrag:content “content” GdkContentProvider * The GdkContentProvider. Owner: GdkDrag Flags: Read / Write / Construct Only The <literal>“device”</literal> property GdkDrag:device “device” GdkDevice * The GdkDevice that is performing the drag. Owner: GdkDrag Flags: Read / Write / Construct Only The <literal>“display”</literal> property GdkDrag:display “display” GdkDisplay * The GdkDisplay that the drag belongs to. Owner: GdkDrag Flags: Read The <literal>“formats”</literal> property GdkDrag:formats “formats” GdkContentFormats * The possible formats that the drag can provide its data in. Owner: GdkDrag Flags: Read / Write / Construct Only The <literal>“selected-action”</literal> property GdkDrag:selected-action “selected-action” GdkDragAction The currently selected action.Owner: GdkDrag Flags: Read / Write The <literal>“surface”</literal> property GdkDrag:surface “surface” GdkSurface * The surface where the drag originates.Owner: GdkDrag Flags: Read / Write / Construct Only The <literal>“actions”</literal> property GdkDrop:actions “actions” GdkDragAction The possible actions for this drop Owner: GdkDrop Flags: Read / Write / Construct Only Default value: GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK The <literal>“device”</literal> property GdkDrop:device “device” GdkDevice * The GdkDevice performing the drop Owner: GdkDrop Flags: Read / Write / Construct Only The <literal>“display”</literal> property GdkDrop:display “display” GdkDisplay * The GdkDisplay that the drop belongs to. Owner: GdkDrop Flags: Read The <literal>“drag”</literal> property GdkDrop:drag “drag” GdkDrag * The GdkDrag that initiated this drop Owner: GdkDrop Flags: Read / Write / Construct Only The <literal>“formats”</literal> property GdkDrop:formats “formats” GdkContentFormats * The possible formats that the drop can provide its data in. Owner: GdkDrop Flags: Read / Write / Construct Only The <literal>“surface”</literal> property GdkDrop:surface “surface” GdkSurface * The GdkSurface the drop happens on Owner: GdkDrop Flags: Read / Write / Construct Only Signal Details The <literal>“cancel”</literal> signal GdkDrag::cancel void user_function (GdkDrag *drag, GdkDragCancelReason reason, gpointer user_data) The drag operation was cancelled. Parameters drag The object on which the signal is emitted reason The reason the drag was cancelled user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“dnd-finished”</literal> signal GdkDrag::dnd-finished void user_function (GdkDrag *drag, gpointer user_data) The drag operation was finished, the destination finished reading all data. The drag object can now free all miscellaneous data. Parameters drag The object on which the signal is emitted user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“drop-performed”</literal> signal GdkDrag::drop-performed void user_function (GdkDrag *drag, gpointer user_data) The drag operation was performed on an accepting client. Parameters drag The object on which the signal is emitted user_data user data set when the signal handler was connected. Flags: Run Last docs/reference/gdk/xml/x_interaction.xml0000664000175000017500000037056114010071747020546 0ustar mclasenmclasen ]> X Window System Interaction 3 GDK4 Library X Window System Interaction X backend-specific functions Functions #defineGDK_SURFACE_XID() #defineGDK_DISPLAY_XDISPLAY() #defineGDK_POINTER_TO_XID() #defineGDK_XID_TO_POINTER() GdkDisplay * gdk_x11_lookup_xdisplay () guint32 gdk_x11_get_server_time () int gdk_x11_device_get_id () GdkDevice * gdk_x11_device_manager_lookup () GdkDisplay * gdk_x11_display_open () void gdk_x11_display_set_program_class () guint32 gdk_x11_display_get_user_time () void gdk_x11_display_broadcast_startup_message () const char * gdk_x11_display_get_startup_notification_id () void gdk_x11_display_set_startup_notification_id () Display * gdk_x11_display_get_xdisplay () Screen * gdk_x11_display_get_xscreen () Window gdk_x11_display_get_xrootwindow () Cursor gdk_x11_display_get_xcursor () void gdk_x11_display_grab () void gdk_x11_display_ungrab () GdkSurface * gdk_x11_display_get_default_group () void gdk_x11_display_error_trap_push () int gdk_x11_display_error_trap_pop () void gdk_x11_display_error_trap_pop_ignored () void gdk_x11_display_set_cursor_theme () void gdk_x11_display_set_surface_scale () gboolean gdk_x11_display_get_glx_version () GdkMonitor * gdk_x11_display_get_primary_monitor () GdkX11Screen * gdk_x11_display_get_screen () XID gdk_x11_monitor_get_output () void gdk_x11_monitor_get_workarea () int gdk_x11_screen_get_screen_number () Screen * gdk_x11_screen_get_xscreen () const char * gdk_x11_screen_get_window_manager_name () XID gdk_x11_screen_get_monitor_output () gboolean gdk_x11_screen_supports_net_wm_hint () guint32 gdk_x11_screen_get_number_of_desktops () guint32 gdk_x11_screen_get_current_desktop () GdkSurface * gdk_x11_surface_lookup_for_display () Window gdk_x11_surface_get_xid () void gdk_x11_surface_set_theme_variant () void gdk_x11_surface_set_user_time () void gdk_x11_surface_move_to_current_desktop () void gdk_x11_surface_move_to_desktop () guint32 gdk_x11_surface_get_desktop () void gdk_x11_surface_set_utf8_property () void gdk_x11_surface_set_frame_sync_enabled () void gdk_x11_surface_set_group () GdkSurface * gdk_x11_surface_get_group () void gdk_x11_surface_set_skip_pager_hint () void gdk_x11_surface_set_skip_taskbar_hint () void gdk_x11_surface_set_urgency_hint () Atom gdk_x11_get_xatom_by_name_for_display () const char * gdk_x11_get_xatom_name_for_display () void gdk_x11_set_sm_client_id () int gdk_x11_display_text_property_to_text_list () void gdk_x11_free_text_list () int gdk_x11_display_string_to_compound_text () gboolean gdk_x11_display_utf8_to_compound_text () void gdk_x11_free_compound_text () Includes#include <gdk/x11/gdkx.h> Description The functions in this section are specific to the GDK X11 backend. To use them, you need to include the <gdk/x11/gdkx.h> header and use the X11-specific pkg-config file gtk4-x11 to build your application. To make your code compile with other GDK backends, guard backend-specific calls by an ifdef as follows. Since GDK may be built with multiple backends, you should also check for the backend that is in use (e.g. by using the GDK_IS_X11_DISPLAY() macro). Functions GDK_SURFACE_XID() GDK_SURFACE_XID #define GDK_SURFACE_XID(win) (gdk_x11_surface_get_xid (win)) Returns the X window belonging to a GdkSurface. Parameters win a GdkSurface. Returns the Xlib Window of win . GDK_DISPLAY_XDISPLAY() GDK_DISPLAY_XDISPLAY #define GDK_DISPLAY_XDISPLAY(display) (gdk_x11_display_get_xdisplay (display)) Returns the display of a GdkDisplay. Parameters display a GdkDisplay Returns an Xlib Display* GDK_POINTER_TO_XID() GDK_POINTER_TO_XID #define GDK_POINTER_TO_XID(pointer) GPOINTER_TO_UINT(pointer) Converts a gpointer back to an XID that was previously converted using GDK_XID_TO_POINTER(). Parameters pointer pointer to extract an XID from GDK_XID_TO_POINTER() GDK_XID_TO_POINTER #define GDK_XID_TO_POINTER(xid) GUINT_TO_POINTER(xid) Converts an XID into a gpointer . This is useful with data structures that use pointer arguments such as GHashTable. Use GDK_POINTER_TO_XID() to convert the argument back to an XID. Parameters xid XID to stuff into the pointer gdk_x11_lookup_xdisplay () gdk_x11_lookup_xdisplay GdkDisplay * gdk_x11_lookup_xdisplay (Display *xdisplay); Find the GdkDisplay corresponding to xdisplay , if any exists. Parameters xdisplay a pointer to an X Display Returns the GdkDisplay, if found, otherwise NULL. [transfer none][type GdkX11Display] gdk_x11_get_server_time () gdk_x11_get_server_time guint32 gdk_x11_get_server_time (GdkSurface *surface); Routine to get the current X server time stamp. Parameters surface a GdkSurface, used for communication with the server. The surface must have GDK_PROPERTY_CHANGE_MASK in its events mask or a hang will result. [type GdkX11Surface] Returns the time stamp. gdk_x11_device_get_id () gdk_x11_device_get_id int gdk_x11_device_get_id (GdkDevice *device); Returns the device ID as seen by XInput2. Parameters device a GdkDevice. [type GdkX11DeviceXI2] Returns the XInput2 device ID. gdk_x11_device_manager_lookup () gdk_x11_device_manager_lookup GdkDevice * gdk_x11_device_manager_lookup (GdkX11DeviceManagerXI2 *device_manager, int device_id); Returns the GdkDevice that wraps the given device ID. Parameters device_manager a GdkDeviceManager. [type GdkX11DeviceManagerXI2] device_id a device ID, as understood by the XInput2 protocol Returns The GdkDevice wrapping the device ID, or NULL if the given ID doesn’t currently represent a device. [transfer none][allow-none][type GdkX11DeviceXI2] gdk_x11_display_open () gdk_x11_display_open GdkDisplay * gdk_x11_display_open (const char *display_name); Tries to open a new display to the X server given by display_name . If opening the display fails, NULL is returned. Parameters display_name name of the X display. See the XOpenDisplay() for details. [allow-none] Returns The new display or NULL on error. [nullable][transfer full] gdk_x11_display_set_program_class () gdk_x11_display_set_program_class void gdk_x11_display_set_program_class (GdkDisplay *display, const char *program_class); Sets the program class. The X11 backend uses the program class to set the class name part of the WM_CLASS property on toplevel windows; see the ICCCM. Parameters display a GdkDisplay program_class a string gdk_x11_display_get_user_time () gdk_x11_display_get_user_time guint32 gdk_x11_display_get_user_time (GdkDisplay *display); Returns the timestamp of the last user interaction on display . The timestamp is taken from events caused by user interaction such as key presses or pointer movements. See gdk_x11_surface_set_user_time(). Parameters display a GdkDisplay. [type GdkX11Display] Returns the timestamp of the last user interaction gdk_x11_display_broadcast_startup_message () gdk_x11_display_broadcast_startup_message void gdk_x11_display_broadcast_startup_message (GdkDisplay *display, const char *message_type, ...); Sends a startup notification message of type message_type to display . This is a convenience function for use by code that implements the freedesktop startup notification specification. Applications should not normally need to call it directly. See the Startup Notification Protocol specification for definitions of the message types and keys that can be used. Parameters display a GdkDisplay. [type GdkX11Display] message_type startup notification message type ("new", "change", or "remove") ... a list of key/value pairs (as strings), terminated by a NULL key. (A NULL value for a key will cause that key to be skipped in the output.) gdk_x11_display_get_startup_notification_id () gdk_x11_display_get_startup_notification_id const char * gdk_x11_display_get_startup_notification_id (GdkDisplay *display); Gets the startup notification ID for a display. Parameters display a GdkDisplay. [type GdkX11Display] Returns the startup notification ID for display gdk_x11_display_set_startup_notification_id () gdk_x11_display_set_startup_notification_id void gdk_x11_display_set_startup_notification_id (GdkDisplay *display, const char *startup_id); Sets the startup notification ID for a display. This is usually taken from the value of the DESKTOP_STARTUP_ID environment variable, but in some cases (such as the application not being launched using exec()) it can come from other sources. If the ID contains the string "_TIME" then the portion following that string is taken to be the X11 timestamp of the event that triggered the application to be launched and the GDK current event time is set accordingly. The startup ID is also what is used to signal that the startup is complete (for example, when opening a window or when calling gdk_display_notify_startup_complete()). Parameters display a GdkDisplay. [type GdkX11Display] startup_id the startup notification ID (must be valid utf8) gdk_x11_display_get_xdisplay () gdk_x11_display_get_xdisplay Display * gdk_x11_display_get_xdisplay (GdkDisplay *display); Returns the X display of a GdkDisplay. Parameters display a GdkDisplay. [type GdkX11Display] Returns an X display. [transfer none] gdk_x11_display_get_xscreen () gdk_x11_display_get_xscreen Screen * gdk_x11_display_get_xscreen (GdkDisplay *display); Returns the X Screen used by GdkDisplay. Parameters display a GdkDisplay. [type GdkX11Display] Returns an X Screen. [transfer none] gdk_x11_display_get_xrootwindow () gdk_x11_display_get_xrootwindow Window gdk_x11_display_get_xrootwindow (GdkDisplay *display); Returns the root X window used by GdkDisplay. Parameters display a GdkDisplay. [type GdkX11Display] Returns an X Window gdk_x11_display_get_xcursor () gdk_x11_display_get_xcursor Cursor gdk_x11_display_get_xcursor (GdkDisplay *display, GdkCursor *cursor); Returns the X cursor belonging to a GdkCursor, potentially creating the cursor. Be aware that the returned cursor may not be unique to cursor . It may for example be shared with its fallback cursor. On old X servers that don't support the XCursor extension, all cursors may even fall back to a few default cursors. Parameters display a GdkDisplay. [type GdkX11Display] cursor a GdkCursor. Returns an Xlib Cursor. gdk_x11_display_grab () gdk_x11_display_grab void gdk_x11_display_grab (GdkDisplay *display); Call XGrabServer() on display . To ungrab the display again, use gdk_x11_display_ungrab(). gdk_x11_display_grab()/gdk_x11_display_ungrab() calls can be nested. Parameters display a GdkDisplay. [type GdkX11Display] gdk_x11_display_ungrab () gdk_x11_display_ungrab void gdk_x11_display_ungrab (GdkDisplay *display); Ungrab display after it has been grabbed with gdk_x11_display_grab(). Parameters display a GdkDisplay. [type GdkX11Display] gdk_x11_display_get_default_group () gdk_x11_display_get_default_group GdkSurface * gdk_x11_display_get_default_group (GdkDisplay *display); Returns the default group leader surface for all toplevel surfaces on display . This surface is implicitly created by GDK. See gdk_x11_surface_set_group(). Parameters display a GdkDisplay. [type GdkX11Display] Returns The default group leader surface for display . [transfer none] gdk_x11_display_error_trap_push () gdk_x11_display_error_trap_push void gdk_x11_display_error_trap_push (GdkDisplay *display); Begins a range of X requests on display for which X error events will be ignored. Unignored errors (when no trap is pushed) will abort the application. Use gdk_x11_display_error_trap_pop() or gdk_x11_display_error_trap_pop_ignored()to lift a trap pushed with this function. Parameters display a GdkDisplay. [type GdkX11Display] gdk_x11_display_error_trap_pop () gdk_x11_display_error_trap_pop int gdk_x11_display_error_trap_pop (GdkDisplay *display); Pops the error trap pushed by gdk_x11_display_error_trap_push(). Will XSync() if necessary and will always block until the error is known to have occurred or not occurred, so the error code can be returned. If you don’t need to use the return value, gdk_x11_display_error_trap_pop_ignored() would be more efficient. Parameters display the display. [type GdkX11Display] Returns X error code or 0 on success gdk_x11_display_error_trap_pop_ignored () gdk_x11_display_error_trap_pop_ignored void gdk_x11_display_error_trap_pop_ignored (GdkDisplay *display); Pops the error trap pushed by gdk_x11_display_error_trap_push(). Does not block to see if an error occurred; merely records the range of requests to ignore errors for, and ignores those errors if they arrive asynchronously. Parameters display the display. [type GdkX11Display] gdk_x11_display_set_cursor_theme () gdk_x11_display_set_cursor_theme void gdk_x11_display_set_cursor_theme (GdkDisplay *display, const char *theme, const int size); Sets the cursor theme from which the images for cursor should be taken. If the windowing system supports it, existing cursors created with gdk_cursor_new_from_name() are updated to reflect the theme change. Custom cursors constructed with gdk_cursor_new_from_texture() will have to be handled by the application (GTK applications can learn about cursor theme changes by listening for change notification for the corresponding GtkSetting). Parameters display a GdkDisplay. [type GdkX11Display] theme the name of the cursor theme to use, or NULL to unset a previously set value. [nullable] size the cursor size to use, or 0 to keep the previous size gdk_x11_display_set_surface_scale () gdk_x11_display_set_surface_scale void gdk_x11_display_set_surface_scale (GdkDisplay *display, int scale); Forces a specific window scale for all windows on this display, instead of using the default or user configured scale. This is can be used to disable scaling support by setting scale to 1, or to programmatically set the window scale. Once the scale is set by this call it will not change in response to later user configuration changes. Parameters display the display. [type GdkX11Display] scale The new scale value gdk_x11_display_get_glx_version () gdk_x11_display_get_glx_version gboolean gdk_x11_display_get_glx_version (GdkDisplay *display, int *major, int *minor); Retrieves the version of the GLX implementation. Parameters display a GdkDisplay. [type GdkX11Display] major return location for the GLX major version. [out] minor return location for the GLX minor version. [out] Returns TRUE if GLX is available gdk_x11_display_get_primary_monitor () gdk_x11_display_get_primary_monitor GdkMonitor * gdk_x11_display_get_primary_monitor (GdkDisplay *display); Gets the primary monitor for the display. The primary monitor is considered the monitor where the “main desktop” lives. While normal application surfaces typically allow the window manager to place the surfaces, specialized desktop applications such as panels should place themselves on the primary monitor. If no monitor is the designated primary monitor, any monitor (usually the first) may be returned. Parameters display a GdkDisplay. [type GdkX11Display] Returns the primary monitor, or any monitor if no primary monitor is configured by the user. [transfer none] gdk_x11_display_get_screen () gdk_x11_display_get_screen GdkX11Screen * gdk_x11_display_get_screen (GdkDisplay *display); Retrieves the GdkX11Screen of the display . Parameters display a GdkX11Display. [type GdkX11Display] Returns the GdkX11Screen. [transfer none] gdk_x11_monitor_get_output () gdk_x11_monitor_get_output XID gdk_x11_monitor_get_output (GdkMonitor *monitor); Returns the XID of the Output corresponding to monitor . Parameters monitor a GdkMonitor. [type GdkX11Monitor] Returns the XID of monitor gdk_x11_monitor_get_workarea () gdk_x11_monitor_get_workarea void gdk_x11_monitor_get_workarea (GdkMonitor *monitor, GdkRectangle *workarea); Retrieves the size and position of the “work area” on a monitor within the display coordinate space. The returned geometry is in ”application pixels”, not in ”device pixels” (see gdk_monitor_get_scale_factor()). Parameters monitor a GdkMonitor. [type GdkX11Monitor] workarea a GdkRectangle to be filled with the monitor workarea. [out] gdk_x11_screen_get_screen_number () gdk_x11_screen_get_screen_number int gdk_x11_screen_get_screen_number (GdkX11Screen *screen); Returns the index of a GdkX11Screen. Parameters screen a GdkX11Screen Returns the position of screen among the screens of its display gdk_x11_screen_get_xscreen () gdk_x11_screen_get_xscreen Screen * gdk_x11_screen_get_xscreen (GdkX11Screen *screen); Returns the screen of a GdkX11Screen. Parameters screen a GdkX11Screen Returns an Xlib Screen*. [transfer none] gdk_x11_screen_get_window_manager_name () gdk_x11_screen_get_window_manager_name const char * gdk_x11_screen_get_window_manager_name (GdkX11Screen *screen); Returns the name of the window manager for screen . Parameters screen a GdkX11Screen Returns the name of the window manager screen screen , or "unknown" if the window manager is unknown. The string is owned by GDK and should not be freed. gdk_x11_screen_get_monitor_output () gdk_x11_screen_get_monitor_output XID gdk_x11_screen_get_monitor_output (GdkX11Screen *screen, int monitor_num); Gets the XID of the specified output/monitor. If the X server does not support version 1.2 of the RANDR extension, 0 is returned. Parameters screen a GdkX11Screen monitor_num number of the monitor, between 0 and gdk_screen_get_n_monitors (screen) Returns the XID of the monitor gdk_x11_screen_supports_net_wm_hint () gdk_x11_screen_supports_net_wm_hint gboolean gdk_x11_screen_supports_net_wm_hint (GdkX11Screen *screen, const char *property_name); This function is specific to the X11 backend of GDK, and indicates whether the window manager supports a certain hint from the Extended Window Manager Hints specification. When using this function, keep in mind that the window manager can change over time; so you shouldn’t use this function in a way that impacts persistent application state. A common bug is that your application can start up before the window manager does when the user logs in, and before the window manager starts gdk_x11_screen_supports_net_wm_hint() will return FALSE for every property. You can monitor the window_manager_changed signal on GdkX11Screen to detect a window manager change. Parameters screen the relevant GdkX11Screen. property_name name of the WM property Returns TRUE if the window manager supports property gdk_x11_screen_get_number_of_desktops () gdk_x11_screen_get_number_of_desktops guint32 gdk_x11_screen_get_number_of_desktops (GdkX11Screen *screen); Returns the number of workspaces for screen when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification. Parameters screen a GdkX11Screen Returns the number of workspaces, or 0 if workspaces are not supported gdk_x11_screen_get_current_desktop () gdk_x11_screen_get_current_desktop guint32 gdk_x11_screen_get_current_desktop (GdkX11Screen *screen); Returns the current workspace for screen when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification. Parameters screen a GdkX11Screen Returns the current workspace, or 0 if workspaces are not supported gdk_x11_surface_lookup_for_display () gdk_x11_surface_lookup_for_display GdkSurface * gdk_x11_surface_lookup_for_display (GdkDisplay *display, Window window); Looks up the GdkSurface that wraps the given native window handle. Parameters display the GdkDisplay corresponding to the window handle. [type GdkX11Display] window an Xlib Window Returns the GdkSurface wrapper for the native window, or NULL if there is none. [transfer none][type GdkX11Surface] gdk_x11_surface_get_xid () gdk_x11_surface_get_xid Window gdk_x11_surface_get_xid (GdkSurface *surface); Returns the X resource (surface) belonging to a GdkSurface. Parameters surface a native GdkSurface. [type GdkX11Surface] Returns the ID of drawable ’s X resource. gdk_x11_surface_set_theme_variant () gdk_x11_surface_set_theme_variant void gdk_x11_surface_set_theme_variant (GdkSurface *surface, const char *variant); GTK applications can request a dark theme variant. In order to make other applications - namely window managers using GTK for themeing - aware of this choice, GTK uses this function to export the requested theme variant as _GTK_THEME_VARIANT property on toplevel surfaces. Note that this property is automatically updated by GTK, so this function should only be used by applications which do not use GTK to create toplevel surfaces. Parameters surface a GdkSurface. [type GdkX11Surface] variant the theme variant to export gdk_x11_surface_set_user_time () gdk_x11_surface_set_user_time void gdk_x11_surface_set_user_time (GdkSurface *surface, guint32 timestamp); The application can use this call to update the _NET_WM_USER_TIME property on a toplevel surface. This property stores an Xserver time which represents the time of the last user input event received for this surface. This property may be used by the window manager to alter the focus, stacking, and/or placement behavior of surfaces when they are mapped depending on whether the new surface was created by a user action or is a "pop-up" surface activated by a timer or some other event. Note that this property is automatically updated by GDK, so this function should only be used by applications which handle input events bypassing GDK. Parameters surface A toplevel GdkSurface. [type GdkX11Surface] timestamp An XServer timestamp to which the property should be set gdk_x11_surface_move_to_current_desktop () gdk_x11_surface_move_to_current_desktop void gdk_x11_surface_move_to_current_desktop (GdkSurface *surface); Moves the surface to the correct workspace when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification. Will not do anything if the surface is already on all workspaces. Parameters surface a GdkSurface. [type GdkX11Surface] gdk_x11_surface_move_to_desktop () gdk_x11_surface_move_to_desktop void gdk_x11_surface_move_to_desktop (GdkSurface *surface, guint32 desktop); Moves the surface to the given workspace when running unde a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints specification. Parameters surface a GdkSurface. [type GdkX11Surface] desktop the number of the workspace to move the surface to gdk_x11_surface_get_desktop () gdk_x11_surface_get_desktop guint32 gdk_x11_surface_get_desktop (GdkSurface *surface); Gets the number of the workspace surface is on. Parameters surface a GdkSurface. [type GdkX11Surface] Returns the current workspace of surface gdk_x11_surface_set_utf8_property () gdk_x11_surface_set_utf8_property void gdk_x11_surface_set_utf8_property (GdkSurface *surface, const char *name, const char *value); This function modifies or removes an arbitrary X11 window property of type UTF8_STRING. If the given surface is not a toplevel surface, it is ignored. Parameters surface a GdkSurface. [type GdkX11Surface] name Property name, will be interned as an X atom value Property value, or NULL to delete. [allow-none] gdk_x11_surface_set_frame_sync_enabled () gdk_x11_surface_set_frame_sync_enabled void gdk_x11_surface_set_frame_sync_enabled (GdkSurface *surface, gboolean frame_sync_enabled); This function can be used to disable frame synchronization for a surface. Normally frame synchronziation will be enabled or disabled based on whether the system has a compositor that supports frame synchronization, but if the surface is not directly managed by the window manager, then frame synchronziation may need to be disabled. This is the case for a surface embedded via the XEMBED protocol. Parameters surface a native GdkSurface. [type GdkX11Surface] frame_sync_enabled whether frame-synchronization should be enabled gdk_x11_surface_set_group () gdk_x11_surface_set_group void gdk_x11_surface_set_group (GdkSurface *surface, GdkSurface *leader); Sets the group leader of surface to be leader . See the ICCCM for details. Parameters surface a native GdkSurface. [type GdkX11Surface] leader a GdkSurface gdk_x11_surface_get_group () gdk_x11_surface_get_group GdkSurface * gdk_x11_surface_get_group (GdkSurface *surface); Returns the group this surface belongs to. Parameters surface The GdkSurface. [type GdkX11Surface] Returns The group of this surface;. [transfer none] gdk_x11_surface_set_skip_pager_hint () gdk_x11_surface_set_skip_pager_hint void gdk_x11_surface_set_skip_pager_hint (GdkSurface *surface, gboolean skips_pager); Sets a hint on surface that pagers should not display it. See the EWMH for details. Parameters surface a GdkSurface. [type GdkX11Surface] skips_pager TRUE to skip pagers gdk_x11_surface_set_skip_taskbar_hint () gdk_x11_surface_set_skip_taskbar_hint void gdk_x11_surface_set_skip_taskbar_hint (GdkSurface *surface, gboolean skips_taskbar); Sets a hint on surface that taskbars should not display it. See the EWMH for details. Parameters surface a native GdkSurface. [type GdkX11Surface] skips_taskbar TRUE to skip taskbars gdk_x11_surface_set_urgency_hint () gdk_x11_surface_set_urgency_hint void gdk_x11_surface_set_urgency_hint (GdkSurface *surface, gboolean urgent); Sets a hint on surface that it needs user attention. See the ICCCM for details. Parameters surface a native GdkSurface. [type GdkX11Surface] urgent TRUE to indicate urgenct attention needed gdk_x11_get_xatom_by_name_for_display () gdk_x11_get_xatom_by_name_for_display Atom gdk_x11_get_xatom_by_name_for_display (GdkDisplay *display, const char *atom_name); Returns the X atom for a GdkDisplay corresponding to atom_name . This function caches the result, so if called repeatedly it is much faster than XInternAtom(), which is a round trip to the server each time. Parameters display a GdkDisplay. [type GdkX11Display] atom_name a string Returns a X atom for a GdkDisplay gdk_x11_get_xatom_name_for_display () gdk_x11_get_xatom_name_for_display const char * gdk_x11_get_xatom_name_for_display (GdkDisplay *display, Atom xatom); Returns the name of an X atom for its display. This function is meant mainly for debugging, so for convenience, unlike XAtomName() and the result doesn’t need to be freed. Parameters display the GdkDisplay where xatom is defined. [type GdkX11Display] xatom an X atom Returns name of the X atom; this string is owned by GDK, so it shouldn’t be modified or freed. gdk_x11_set_sm_client_id () gdk_x11_set_sm_client_id void gdk_x11_set_sm_client_id (const char *sm_client_id); Sets the SM_CLIENT_ID property on the application’s leader window so that the window manager can save the application’s state using the X11R6 ICCCM session management protocol. See the X Session Management Library documentation for more information on session management and the Inter-Client Communication Conventions Manual Parameters sm_client_id the client id assigned by the session manager when the connection was opened, or NULL to remove the property. [nullable] gdk_x11_display_text_property_to_text_list () gdk_x11_display_text_property_to_text_list int gdk_x11_display_text_property_to_text_list (GdkDisplay *display, const char *encoding, int format, const guchar *text, int length, char ***list); Convert a text string from the encoding as it is stored in a property into an array of strings in the encoding of the current locale. (The elements of the array represent the nul-separated elements of the original text string.) Parameters display The GdkDisplay where the encoding is defined. [type GdkX11Display] encoding a string representing the encoding. The most common values for this are "STRING", or "COMPOUND_TEXT". This is value used as the type for the property format the format of the property text The text data length The number of items to transform list location to store an array of strings in the encoding of the current locale. This array should be freed using gdk_x11_free_text_list(). Returns the number of strings stored in list, or 0, if the conversion failed gdk_x11_free_text_list () gdk_x11_free_text_list void gdk_x11_free_text_list (char **list); Frees the array of strings created by gdk_x11_display_text_property_to_text_list(). Parameters list the value stored in the list parameter by a call to gdk_x11_display_text_property_to_text_list(). gdk_x11_display_string_to_compound_text () gdk_x11_display_string_to_compound_text int gdk_x11_display_string_to_compound_text (GdkDisplay *display, const char *str, const char **encoding, int *format, guchar **ctext, int *length); Convert a string from the encoding of the current locale into a form suitable for storing in a window property. Parameters display the GdkDisplay where the encoding is defined. [type GdkX11Display] str a nul-terminated string encoding location to store the encoding (to be used as the type for the property). [out][transfer none] format location to store the format of the property. [out] ctext location to store newly allocated data for the property. [out][array length=length] length the length of ctext , in bytes Returns 0 upon success, non-zero upon failure gdk_x11_display_utf8_to_compound_text () gdk_x11_display_utf8_to_compound_text gboolean gdk_x11_display_utf8_to_compound_text (GdkDisplay *display, const char *str, const char **encoding, int *format, guchar **ctext, int *length); Converts from UTF-8 to compound text. Parameters display a GdkDisplay. [type GdkX11Display] str a UTF-8 string encoding location to store resulting encoding. [out][transfer none] format location to store format of the result. [out] ctext location to store the data of the result. [out][array length=length] length location to store the length of the data stored in ctext Returns TRUE if the conversion succeeded, otherwise FALSE gdk_x11_free_compound_text () gdk_x11_free_compound_text void gdk_x11_free_compound_text (guchar *ctext); Frees the data returned from gdk_x11_display_string_to_compound_text(). Parameters ctext The pointer stored in ctext from a call to gdk_x11_display_string_to_compound_text(). docs/reference/gdk/xml/wayland_interaction.xml0000664000175000017500000012320614010071747021726 0ustar mclasenmclasen ]> Wayland Interaction 3 GDK4 Library Wayland Interaction Wayland backend-specific functions Functions struct wl_display * gdk_wayland_display_get_wl_display () struct wl_compositor * gdk_wayland_display_get_wl_compositor () gboolean gdk_wayland_display_query_registry () void gdk_wayland_display_set_cursor_theme () const char * gdk_wayland_display_get_startup_notification_id () void gdk_wayland_display_set_startup_notification_id () struct wl_seat * gdk_wayland_seat_get_wl_seat () struct wl_seat * gdk_wayland_device_get_wl_seat () struct wl_pointer * gdk_wayland_device_get_wl_pointer () struct wl_keyboard * gdk_wayland_device_get_wl_keyboard () const char * gdk_wayland_device_get_node_path () struct wl_output * gdk_wayland_monitor_get_wl_output () struct wl_surface * gdk_wayland_surface_get_wl_surface () void (*GdkWaylandToplevelExported) () gboolean gdk_wayland_toplevel_export_handle () void gdk_wayland_toplevel_unexport_handle () gboolean gdk_wayland_toplevel_set_transient_for_exported () void gdk_wayland_toplevel_set_application_id () Includes#include <gdk/wayland/gdkwayland.h> Description The functions in this section are specific to the GDK Wayland backend. To use them, you need to include the <gdk/wayland/gdkwayland.h> header and use the Wayland-specific pkg-config gtk4-wayland file to build your application. To make your code compile with other GDK backends, guard backend-specific calls by an ifdef as follows. Since GDK may be built with multiple backends, you should also check for the backend that is in use (e.g. by using the GDK_IS_WAYLAND_DISPLAY() macro). Functions gdk_wayland_display_get_wl_display () gdk_wayland_display_get_wl_display struct wl_display * gdk_wayland_display_get_wl_display (GdkDisplay *display); Returns the Wayland wl_display of a GdkDisplay. [skip] Parameters display a GdkDisplay. [type GdkWaylandDisplay] Returns a Wayland wl_display. [transfer none] gdk_wayland_display_get_wl_compositor () gdk_wayland_display_get_wl_compositor struct wl_compositor * gdk_wayland_display_get_wl_compositor (GdkDisplay *display); Returns the Wayland global singleton compositor of a GdkDisplay. [skip] Parameters display a GdkDisplay. [type GdkWaylandDisplay] Returns a Wayland wl_compositor. [transfer none] gdk_wayland_display_query_registry () gdk_wayland_display_query_registry gboolean gdk_wayland_display_query_registry (GdkDisplay *display, const char *global); Returns TRUE if the the interface was found in the display wl_registry.global handler. Parameters display a GdkDisplay. [type GdkWaylandDisplay] global global interface to query in the registry Returns TRUE if the global is offered by the compositor gdk_wayland_display_set_cursor_theme () gdk_wayland_display_set_cursor_theme void gdk_wayland_display_set_cursor_theme (GdkDisplay *display, const char *name, int size); Sets the cursor theme for the given display . Parameters display a GdkDisplay. [type GdkWaylandDisplay] name the new cursor theme size the size to use for cursors gdk_wayland_display_get_startup_notification_id () gdk_wayland_display_get_startup_notification_id const char * gdk_wayland_display_get_startup_notification_id (GdkDisplay *display); Gets the startup notification ID for a Wayland display, or NULL if no ID has been defined. Parameters display a GdkDisplay. [type GdkWaylandDisplay] Returns the startup notification ID for display , or NULL. [nullable] gdk_wayland_display_set_startup_notification_id () gdk_wayland_display_set_startup_notification_id void gdk_wayland_display_set_startup_notification_id (GdkDisplay *display, const char *startup_id); Sets the startup notification ID for a display. This is usually taken from the value of the DESKTOP_STARTUP_ID environment variable, but in some cases (such as the application not being launched using exec()) it can come from other sources. The startup ID is also what is used to signal that the startup is complete (for example, when opening a window or when calling gdk_display_notify_startup_complete()). Parameters display a GdkDisplay. [type GdkWaylandDisplay] startup_id the startup notification ID (must be valid utf8) gdk_wayland_seat_get_wl_seat () gdk_wayland_seat_get_wl_seat struct wl_seat * gdk_wayland_seat_get_wl_seat (GdkSeat *seat); Returns the Wayland wl_seat of a GdkSeat. [skip] Parameters seat a GdkSeat. [type GdkWaylandSeat] Returns a Wayland wl_seat. [transfer none] gdk_wayland_device_get_wl_seat () gdk_wayland_device_get_wl_seat struct wl_seat * gdk_wayland_device_get_wl_seat (GdkDevice *device); Returns the Wayland wl_seat of a GdkDevice. [skip] Parameters device a GdkDevice. [type GdkWaylandDevice] Returns a Wayland wl_seat. [transfer none] gdk_wayland_device_get_wl_pointer () gdk_wayland_device_get_wl_pointer struct wl_pointer * gdk_wayland_device_get_wl_pointer (GdkDevice *device); Returns the Wayland wl_pointer of a GdkDevice. [skip] Parameters device a GdkDevice. [type GdkWaylandDevice] Returns a Wayland wl_pointer. [transfer none] gdk_wayland_device_get_wl_keyboard () gdk_wayland_device_get_wl_keyboard struct wl_keyboard * gdk_wayland_device_get_wl_keyboard (GdkDevice *device); Returns the Wayland wl_keyboard of a GdkDevice. [skip] Parameters device a GdkDevice. [type GdkWaylandDevice] Returns a Wayland wl_keyboard. [transfer none] gdk_wayland_device_get_node_path () gdk_wayland_device_get_node_path const char * gdk_wayland_device_get_node_path (GdkDevice *device); Returns the /dev/input/event* path of this device. For GdkDevices that possibly coalesce multiple hardware devices (eg. mouse, keyboard, touch,...), this function will return NULL. This is most notably implemented for devices of type GDK_SOURCE_PEN, GDK_SOURCE_TABLET_PAD. Parameters device a GdkDevice. [type GdkWaylandDevice] Returns the /dev/input/event* path of this device. [nullable][transfer none] gdk_wayland_monitor_get_wl_output () gdk_wayland_monitor_get_wl_output struct wl_output * gdk_wayland_monitor_get_wl_output (GdkMonitor *monitor); Returns the Wayland wl_output of a GdkMonitor. [skip] Parameters monitor a GdkMonitor. [type GdkWaylandMonitor] Returns a Wayland wl_output. [transfer none] gdk_wayland_surface_get_wl_surface () gdk_wayland_surface_get_wl_surface struct wl_surface * gdk_wayland_surface_get_wl_surface (GdkSurface *surface); Returns the Wayland surface of a GdkSurface. [skip] Parameters surface a GdkSurface. [type GdkWaylandSurface] Returns a Wayland wl_surface. [transfer none] GdkWaylandToplevelExported () GdkWaylandToplevelExported void (*GdkWaylandToplevelExported) (GdkToplevel *toplevel, const char *handle, gpointer user_data); Callback that gets called when the handle for a surface has been obtained from the Wayland compositor. The handle can be passed to other processes, for the purpose of marking surfaces as transient for out-of-process surfaces. Parameters toplevel the GdkToplevel that is exported. [type GdkWaylandToplevel] handle the handle user_data user data that was passed to gdk_wayland_toplevel_export_handle() gdk_wayland_toplevel_export_handle () gdk_wayland_toplevel_export_handle gboolean gdk_wayland_toplevel_export_handle (GdkToplevel *toplevel, GdkWaylandToplevelExported callback, gpointer user_data, GDestroyNotify destroy_func); Asynchronously obtains a handle for a surface that can be passed to other processes. When the handle has been obtained, callback will be called. It is an error to call this function on a surface that is already exported. When the handle is no longer needed, gdk_wayland_toplevel_unexport_handle() should be called to clean up resources. The main purpose for obtaining a handle is to mark a surface from another surface as transient for this one, see gdk_wayland_toplevel_set_transient_for_exported(). Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future. Parameters toplevel the GdkToplevel to obtain a handle for. [type GdkWaylandToplevel] callback callback to call with the handle user_data user data for callback . [closure] destroy_func destroy notify for user_data Returns TRUE if the handle has been requested, FALSE if an error occurred. gdk_wayland_toplevel_unexport_handle () gdk_wayland_toplevel_unexport_handle void gdk_wayland_toplevel_unexport_handle (GdkToplevel *toplevel); Destroys the handle that was obtained with gdk_wayland_toplevel_export_handle(). It is an error to call this function on a surface that does not have a handle. Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future. Parameters toplevel the GdkToplevel to unexport. [type GdkWaylandToplevel] gdk_wayland_toplevel_set_transient_for_exported () gdk_wayland_toplevel_set_transient_for_exported gboolean gdk_wayland_toplevel_set_transient_for_exported (GdkToplevel *toplevel, const char *parent_handle_str); Marks toplevel as transient for the surface to which the given parent_handle_str refers. Typically, the handle will originate from a gdk_wayland_toplevel_export_handle() call in another process. Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future. Parameters toplevel the GdkToplevel to make as transient. [type GdkWaylandToplevel] parent_handle_str an exported handle for a surface Returns TRUE if the surface has been marked as transient, FALSE if an error occurred. gdk_wayland_toplevel_set_application_id () gdk_wayland_toplevel_set_application_id void gdk_wayland_toplevel_set_application_id (GdkToplevel *toplevel, const char *application_id); Sets the application id on a GdkToplevel. Parameters toplevel a GdkToplevel. [type GdkWaylandToplevel] application_id the application id for the toplevel docs/reference/gdk/xml/gdkapplaunchcontext.xml0000664000175000017500000003732714010071747021746 0ustar mclasenmclasen ]> Application launching 3 GDK4 Library Application launching Startup notification for applications Functions GdkDisplay * gdk_app_launch_context_get_display () void gdk_app_launch_context_set_desktop () void gdk_app_launch_context_set_timestamp () void gdk_app_launch_context_set_icon () void gdk_app_launch_context_set_icon_name () Properties GdkDisplay *displayRead / Write / Construct Only Types and Values GdkAppLaunchContext Object Hierarchy GObject ╰── GAppLaunchContext ╰── GdkAppLaunchContext Includes#include <gdk/gdk.h> Description GdkAppLaunchContext is an implementation of GAppLaunchContext that handles launching an application in a graphical context. It provides startup notification and allows to launch applications on a specific screen or workspace. Launching an applicationmessage); g_object_unref (context); ]]> Functions gdk_app_launch_context_get_display () gdk_app_launch_context_get_display GdkDisplay * gdk_app_launch_context_get_display (GdkAppLaunchContext *context); Gets the GdkDisplay that context is for. Parameters context a GdkAppLaunchContext Returns the display of context . [transfer none] gdk_app_launch_context_set_desktop () gdk_app_launch_context_set_desktop void gdk_app_launch_context_set_desktop (GdkAppLaunchContext *context, int desktop); Sets the workspace on which applications will be launched when using this context when running under a window manager that supports multiple workspaces, as described in the Extended Window Manager Hints. When the workspace is not specified or desktop is set to -1, it is up to the window manager to pick one, typically it will be the current workspace. Parameters context a GdkAppLaunchContext desktop the number of a workspace, or -1 gdk_app_launch_context_set_timestamp () gdk_app_launch_context_set_timestamp void gdk_app_launch_context_set_timestamp (GdkAppLaunchContext *context, guint32 timestamp); Sets the timestamp of context . The timestamp should ideally be taken from the event that triggered the launch. Window managers can use this information to avoid moving the focus to the newly launched application when the user is busy typing in another window. This is also known as 'focus stealing prevention'. Parameters context a GdkAppLaunchContext timestamp a timestamp gdk_app_launch_context_set_icon () gdk_app_launch_context_set_icon void gdk_app_launch_context_set_icon (GdkAppLaunchContext *context, GIcon *icon); Sets the icon for applications that are launched with this context. Window Managers can use this information when displaying startup notification. See also gdk_app_launch_context_set_icon_name(). Parameters context a GdkAppLaunchContext icon a GIcon, or NULL. [allow-none] gdk_app_launch_context_set_icon_name () gdk_app_launch_context_set_icon_name void gdk_app_launch_context_set_icon_name (GdkAppLaunchContext *context, const char *icon_name); Sets the icon for applications that are launched with this context. The icon_name will be interpreted in the same way as the Icon field in desktop files. See also gdk_app_launch_context_set_icon(). If both icon and icon_name are set, the icon_name takes priority. If neither icon or icon_name is set, the icon is taken from either the file that is passed to launched application or from the GAppInfo for the launched application itself. Parameters context a GdkAppLaunchContext icon_name an icon name, or NULL. [allow-none] Types and Values GdkAppLaunchContext GdkAppLaunchContext typedef struct _GdkAppLaunchContext GdkAppLaunchContext; The GdkAppLaunchContext struct contains only private fields and should not be accessed directly. Property Details The <literal>“display”</literal> property GdkAppLaunchContext:display “display” GdkDisplay * Display.Owner: GdkAppLaunchContext Flags: Read / Write / Construct Only docs/reference/gdk/xml/gdkframeclock.xml0000664000175000017500000012703114010071747020464 0ustar mclasenmclasen ]> GdkFrameClock 3 GDK4 Library GdkFrameClock Synchronizes painting to a surface Functions gint64 gdk_frame_clock_get_frame_time () void gdk_frame_clock_request_phase () void gdk_frame_clock_begin_updating () void gdk_frame_clock_end_updating () gint64 gdk_frame_clock_get_frame_counter () gint64 gdk_frame_clock_get_history_start () GdkFrameTimings * gdk_frame_clock_get_timings () GdkFrameTimings * gdk_frame_clock_get_current_timings () void gdk_frame_clock_get_refresh_info () double gdk_frame_clock_get_fps () Signals voidafter-paintRun Last voidbefore-paintRun Last voidflush-eventsRun Last voidlayoutRun Last voidpaintRun Last voidresume-eventsRun Last voidupdateRun Last Types and Values GdkFrameClock enumGdkFrameClockPhase Object Hierarchy GObject ╰── GdkFrameClock Includes#include <gdk/gdk.h> Description A GdkFrameClock tells the application when to update and repaint a surface. This may be synced to the vertical refresh rate of the monitor, for example. Even when the frame clock uses a simple timer rather than a hardware-based vertical sync, the frame clock helps because it ensures everything paints at the same time (reducing the total number of frames). The frame clock can also automatically stop painting when it knows the frames will not be visible, or scale back animation framerates. GdkFrameClock is designed to be compatible with an OpenGL-based implementation or with mozRequestAnimationFrame in Firefox, for example. A frame clock is idle until someone requests a frame with gdk_frame_clock_request_phase(). At some later point that makes sense for the synchronization being implemented, the clock will process a frame and emit signals for each phase that has been requested. (See the signals of the GdkFrameClock class for documentation of the phases. GDK_FRAME_CLOCK_PHASE_UPDATE and the “update” signal are most interesting for application writers, and are used to update the animations, using the frame time given by gdk_frame_clock_get_frame_time(). The frame time is reported in microseconds and generally in the same timescale as g_get_monotonic_time(), however, it is not the same as g_get_monotonic_time(). The frame time does not advance during the time a frame is being painted, and outside of a frame, an attempt is made so that all calls to gdk_frame_clock_get_frame_time() that are called at a “similar” time get the same value. This means that if different animations are timed by looking at the difference in time between an initial value from gdk_frame_clock_get_frame_time() and the value inside the “update” signal of the clock, they will stay exactly synchronized. Functions gdk_frame_clock_get_frame_time () gdk_frame_clock_get_frame_time gint64 gdk_frame_clock_get_frame_time (GdkFrameClock *frame_clock); Gets the time that should currently be used for animations. Inside the processing of a frame, it’s the time used to compute the animation position of everything in a frame. Outside of a frame, it's the time of the conceptual “previous frame,” which may be either the actual previous frame time, or if that’s too old, an updated time. Parameters frame_clock a GdkFrameClock Returns a timestamp in microseconds, in the timescale of of g_get_monotonic_time(). gdk_frame_clock_request_phase () gdk_frame_clock_request_phase void gdk_frame_clock_request_phase (GdkFrameClock *frame_clock, GdkFrameClockPhase phase); Asks the frame clock to run a particular phase. The signal corresponding the requested phase will be emitted the next time the frame clock processes. Multiple calls to gdk_frame_clock_request_phase() will be combined together and only one frame processed. If you are displaying animated content and want to continually request the GDK_FRAME_CLOCK_PHASE_UPDATE phase for a period of time, you should use gdk_frame_clock_begin_updating() instead, since this allows GTK to adjust system parameters to get maximally smooth animations. Parameters frame_clock a GdkFrameClock phase the phase that is requested gdk_frame_clock_begin_updating () gdk_frame_clock_begin_updating void gdk_frame_clock_begin_updating (GdkFrameClock *frame_clock); Starts updates for an animation. Until a matching call to gdk_frame_clock_end_updating() is made, the frame clock will continually request a new frame with the GDK_FRAME_CLOCK_PHASE_UPDATE phase. This function may be called multiple times and frames will be requested until gdk_frame_clock_end_updating() is called the same number of times. Parameters frame_clock a GdkFrameClock gdk_frame_clock_end_updating () gdk_frame_clock_end_updating void gdk_frame_clock_end_updating (GdkFrameClock *frame_clock); Stops updates for an animation. See the documentation for gdk_frame_clock_begin_updating(). Parameters frame_clock a GdkFrameClock gdk_frame_clock_get_frame_counter () gdk_frame_clock_get_frame_counter gint64 gdk_frame_clock_get_frame_counter (GdkFrameClock *frame_clock); A GdkFrameClock maintains a 64-bit counter that increments for each frame drawn. Parameters frame_clock a GdkFrameClock Returns inside frame processing, the value of the frame counter for the current frame. Outside of frame processing, the frame counter for the last frame. gdk_frame_clock_get_history_start () gdk_frame_clock_get_history_start gint64 gdk_frame_clock_get_history_start (GdkFrameClock *frame_clock); GdkFrameClock internally keeps a history of GdkFrameTimings objects for recent frames that can be retrieved with gdk_frame_clock_get_timings(). The set of stored frames is the set from the counter values given by gdk_frame_clock_get_history_start() and gdk_frame_clock_get_frame_counter(), inclusive. Parameters frame_clock a GdkFrameClock Returns the frame counter value for the oldest frame that is available in the internal frame history of the GdkFrameClock. gdk_frame_clock_get_timings () gdk_frame_clock_get_timings GdkFrameTimings * gdk_frame_clock_get_timings (GdkFrameClock *frame_clock, gint64 frame_counter); Retrieves a GdkFrameTimings object holding timing information for the current frame or a recent frame. The GdkFrameTimings object may not yet be complete: see gdk_frame_timings_get_complete(). Parameters frame_clock a GdkFrameClock frame_counter the frame counter value identifying the frame to be received. Returns the GdkFrameTimings object for the specified frame, or NULL if it is not available. See gdk_frame_clock_get_history_start(). [nullable][transfer none] gdk_frame_clock_get_current_timings () gdk_frame_clock_get_current_timings GdkFrameTimings * gdk_frame_clock_get_current_timings (GdkFrameClock *frame_clock); Gets the frame timings for the current frame. Parameters frame_clock a GdkFrameClock Returns the GdkFrameTimings for the frame currently being processed, or even no frame is being processed, for the previous frame. Before any frames have been processed, returns NULL. [nullable][transfer none] gdk_frame_clock_get_refresh_info () gdk_frame_clock_get_refresh_info void gdk_frame_clock_get_refresh_info (GdkFrameClock *frame_clock, gint64 base_time, gint64 *refresh_interval_return, gint64 *presentation_time_return); Using the frame history stored in the frame clock, finds the last known presentation time and refresh interval, and assuming that presentation times are separated by the refresh interval, predicts a presentation time that is a multiple of the refresh interval after the last presentation time, and later than base_time . Parameters frame_clock a GdkFrameClock base_time base time for determining a presentaton time refresh_interval_return a location to store the determined refresh interval, or NULL. A default refresh interval of 1/60th of a second will be stored if no history is present. [out][optional] presentation_time_return a location to store the next candidate presentation time after the given base time. 0 will be will be stored if no history is present. [out] gdk_frame_clock_get_fps () gdk_frame_clock_get_fps double gdk_frame_clock_get_fps (GdkFrameClock *frame_clock); Calculates the current frames-per-second, based on the frame timings of frame_clock . Parameters frame_clock a GdkFrameClock Returns the current fps, as a double Types and Values GdkFrameClock GdkFrameClock typedef struct _GdkFrameClock GdkFrameClock; The GdkFrameClock struct contains only private fields and should not be accessed directly. enum GdkFrameClockPhase GdkFrameClockPhase GdkFrameClockPhase is used to represent the different paint clock phases that can be requested. The elements of the enumeration correspond to the signals of GdkFrameClock. Members GDK_FRAME_CLOCK_PHASE_NONE no phase GDK_FRAME_CLOCK_PHASE_FLUSH_EVENTS corresponds to GdkFrameClock::flush-events. Should not be handled by applications. GDK_FRAME_CLOCK_PHASE_BEFORE_PAINT corresponds to GdkFrameClock::before-paint. Should not be handled by applications. GDK_FRAME_CLOCK_PHASE_UPDATE corresponds to GdkFrameClock::update. GDK_FRAME_CLOCK_PHASE_LAYOUT corresponds to GdkFrameClock::layout. Should not be handled by applicatiosn. GDK_FRAME_CLOCK_PHASE_PAINT corresponds to GdkFrameClock::paint. GDK_FRAME_CLOCK_PHASE_RESUME_EVENTS corresponds to GdkFrameClock::resume-events. Should not be handled by applications. GDK_FRAME_CLOCK_PHASE_AFTER_PAINT corresponds to GdkFrameClock::after-paint. Should not be handled by applications. Signal Details The <literal>“after-paint”</literal> signal GdkFrameClock::after-paint void user_function (GdkFrameClock *clock, gpointer user_data) This signal ends processing of the frame. Applications should generally not handle this signal. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“before-paint”</literal> signal GdkFrameClock::before-paint void user_function (GdkFrameClock *clock, gpointer user_data) This signal begins processing of the frame. Applications should generally not handle this signal. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“flush-events”</literal> signal GdkFrameClock::flush-events void user_function (GdkFrameClock *clock, gpointer user_data) This signal is used to flush pending motion events that are being batched up and compressed together. Applications should not handle this signal. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“layout”</literal> signal GdkFrameClock::layout void user_function (GdkFrameClock *clock, gpointer user_data) This signal is emitted as the second step of toolkit and application processing of the frame. Any work to update sizes and positions of application elements should be performed. GTK normally handles this internally. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“paint”</literal> signal GdkFrameClock::paint void user_function (GdkFrameClock *clock, gpointer user_data) This signal is emitted as the third step of toolkit and application processing of the frame. The frame is repainted. GDK normally handles this internally and emits “render” which are turned into “snapshot” signals by GTK. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“resume-events”</literal> signal GdkFrameClock::resume-events void user_function (GdkFrameClock *clock, gpointer user_data) This signal is emitted after processing of the frame is finished, and is handled internally by GTK to resume normal event processing. Applications should not handle this signal. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last The <literal>“update”</literal> signal GdkFrameClock::update void user_function (GdkFrameClock *clock, gpointer user_data) This signal is emitted as the first step of toolkit and application processing of the frame. Animations should be updated using gdk_frame_clock_get_frame_time(). Applications can connect directly to this signal, or use gtk_widget_add_tick_callback() as a more convenient interface. Parameters clock the frame clock emitting the signal user_data user data set when the signal handler was connected. Flags: Run Last docs/reference/gdk/xml/gdkframetimings.xml0000664000175000017500000004525714010071747021054 0ustar mclasenmclasen ]> Frame timings 3 GDK4 Library Frame timings Object holding timing information for a single frame Functions GdkFrameTimings * gdk_frame_timings_ref () void gdk_frame_timings_unref () gint64 gdk_frame_timings_get_frame_counter () gboolean gdk_frame_timings_get_complete () gint64 gdk_frame_timings_get_frame_time () gint64 gdk_frame_timings_get_presentation_time () gint64 gdk_frame_timings_get_refresh_interval () gint64 gdk_frame_timings_get_predicted_presentation_time () Types and Values GdkFrameTimings Includes#include <gdk/gdk.h> Description A GdkFrameTimings object holds timing information for a single frame of the application’s displays. To retrieve GdkFrameTimings objects, use gdk_frame_clock_get_timings() or gdk_frame_clock_get_current_timings(). The information in GdkFrameTimings is useful for precise synchronization of video with the event or audio streams, and for measuring quality metrics for the application’s display, such as latency and jitter. Functions gdk_frame_timings_ref () gdk_frame_timings_ref GdkFrameTimings * gdk_frame_timings_ref (GdkFrameTimings *timings); Increases the reference count of timings . Parameters timings a GdkFrameTimings Returns timings gdk_frame_timings_unref () gdk_frame_timings_unref void gdk_frame_timings_unref (GdkFrameTimings *timings); Decreases the reference count of timings . If timings is no longer referenced, it will be freed. Parameters timings a GdkFrameTimings gdk_frame_timings_get_frame_counter () gdk_frame_timings_get_frame_counter gint64 gdk_frame_timings_get_frame_counter (GdkFrameTimings *timings); Gets the frame counter value of the GdkFrameClock when this this frame was drawn. Parameters timings a GdkFrameTimings Returns the frame counter value for this frame gdk_frame_timings_get_complete () gdk_frame_timings_get_complete gboolean gdk_frame_timings_get_complete (GdkFrameTimings *timings); The timing information in a GdkFrameTimings is filled in incrementally as the frame as drawn and passed off to the window system for processing and display to the user. The accessor functions for GdkFrameTimings can return 0 to indicate an unavailable value for two reasons: either because the information is not yet available, or because it isn't available at all. Once gdk_frame_timings_get_complete() returns TRUE for a frame, you can be certain that no further values will become available and be stored in the GdkFrameTimings. Parameters timings a GdkFrameTimings Returns TRUE if all information that will be available for the frame has been filled in. gdk_frame_timings_get_frame_time () gdk_frame_timings_get_frame_time gint64 gdk_frame_timings_get_frame_time (GdkFrameTimings *timings); Returns the frame time for the frame. This is the time value that is typically used to time animations for the frame. See gdk_frame_clock_get_frame_time(). Parameters timings A GdkFrameTimings Returns the frame time for the frame, in the timescale of g_get_monotonic_time() gdk_frame_timings_get_presentation_time () gdk_frame_timings_get_presentation_time gint64 gdk_frame_timings_get_presentation_time (GdkFrameTimings *timings); Reurns the presentation time. This is the time at which the frame became visible to the user. Parameters timings a GdkFrameTimings Returns the time the frame was displayed to the user, in the timescale of g_get_monotonic_time(), or 0 if no presentation time is available. See gdk_frame_timings_get_complete() gdk_frame_timings_get_refresh_interval () gdk_frame_timings_get_refresh_interval gint64 gdk_frame_timings_get_refresh_interval (GdkFrameTimings *timings); Gets the natural interval between presentation times for the display that this frame was displayed on. Frame presentation usually happens during the “vertical blanking interval”. Parameters timings a GdkFrameTimings Returns the refresh interval of the display, in microseconds, or 0 if the refresh interval is not available. See gdk_frame_timings_get_complete(). gdk_frame_timings_get_predicted_presentation_time () gdk_frame_timings_get_predicted_presentation_time gint64 gdk_frame_timings_get_predicted_presentation_time (GdkFrameTimings *timings); Gets the predicted time at which this frame will be displayed. Although no predicted time may be available, if one is available, it will be available while the frame is being generated, in contrast to gdk_frame_timings_get_presentation_time(), which is only available after the frame has been presented. In general, if you are simply animating, you should use gdk_frame_clock_get_frame_time() rather than this function, but this function is useful for applications that want exact control over latency. For example, a movie player may want this information for Audio/Video synchronization. Parameters timings a GdkFrameTimings Returns The predicted time at which the frame will be presented, in the timescale of g_get_monotonic_time(), or 0 if no predicted presentation time is available. Types and Values GdkFrameTimings GdkFrameTimings typedef struct _GdkFrameTimings GdkFrameTimings; The GdkFrameTimings struct contains only private fields and should not be accessed directly. docs/reference/gdk/xml/gdkdrawcontext.xml0000664000175000017500000004200714010071747020717 0ustar mclasenmclasen ]> GdkDrawContext 3 GDK4 Library GdkDrawContext Base class for draw contexts Functions GdkDisplay * gdk_draw_context_get_display () GdkSurface * gdk_draw_context_get_surface () void gdk_draw_context_begin_frame () void gdk_draw_context_end_frame () gboolean gdk_draw_context_is_in_frame () const cairo_region_t * gdk_draw_context_get_frame_region () Types and Values GdkDrawContext Object Hierarchy GObject ╰── GdkDrawContext ├── GdkGLContext ╰── GdkVulkanContext Includes#include <gdk/gdk.h> Description GdkDrawContext is the base object used by contexts implementing different rendering methods, such as GdkGLContext or GdkVulkanContext. It provides shared functionality between those contexts. You will always interact with one of those subclasses. A GdkDrawContext is always associated with a single toplevel surface. Functions gdk_draw_context_get_display () gdk_draw_context_get_display GdkDisplay * gdk_draw_context_get_display (GdkDrawContext *context); Retrieves the GdkDisplay the context is created for Parameters context a GdkDrawContext Returns a GdkDisplay or NULL. [nullable][transfer none] gdk_draw_context_get_surface () gdk_draw_context_get_surface GdkSurface * gdk_draw_context_get_surface (GdkDrawContext *context); Retrieves the GdkSurface used by the context . Parameters context a GdkDrawContext Returns a GdkSurface or NULL. [nullable][transfer none] gdk_draw_context_begin_frame () gdk_draw_context_begin_frame void gdk_draw_context_begin_frame (GdkDrawContext *context, const cairo_region_t *region); Indicates that you are beginning the process of redrawing region on the context 's surface. Calling this function begins a drawing operation using context on the surface that context was created from. The actual requirements and guarantees for the drawing operation vary for different implementations of drawing, so a GdkCairoContext and a GdkGLContext need to be treated differently. A call to this function is a requirement for drawing and must be followed by a call to gdk_draw_context_end_frame(), which will complete the drawing operation and ensure the contents become visible on screen. Note that the region passed to this function is the minimum region that needs to be drawn and depending on implementation, windowing system and hardware in use, it might be necessary to draw a larger region. Drawing implementation must use gdk_draw_context_get_frame_region() to query the region that must be drawn. When using GTK, the widget system automatically places calls to gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() via the use of GskRenderers, so application code does not need to call these functions explicitly. Parameters context the context used to draw the frame region minimum region that should be drawn gdk_draw_context_end_frame () gdk_draw_context_end_frame void gdk_draw_context_end_frame (GdkDrawContext *context); Ends a drawing operation started with gdk_draw_context_begin_frame() and makes the drawing available on screen. See that function for more details about drawing. When using a GdkGLContext, this function may call glFlush() implicitly before returning; it is not recommended to call glFlush() explicitly before calling this function. Parameters context a GdkDrawContext gdk_draw_context_is_in_frame () gdk_draw_context_is_in_frame gboolean gdk_draw_context_is_in_frame (GdkDrawContext *context); Returns TRUE if context is in the process of drawing to its surface after a call to gdk_draw_context_begin_frame() and not yet having called gdk_draw_context_end_frame(). In this situation, drawing commands may be effecting the contents of a context 's surface. Parameters context a GdkDrawContext Returns TRUE if the context is between gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() calls. gdk_draw_context_get_frame_region () gdk_draw_context_get_frame_region const cairo_region_t * gdk_draw_context_get_frame_region (GdkDrawContext *context); Retrieves the region that is currently in the process of being repainted. After a call to gdk_draw_context_begin_frame() this function will return a union of the region passed to that function and the area of the surface that the context determined needs to be repainted. If context is not in between calls to gdk_draw_context_begin_frame() and gdk_draw_context_end_frame(), NULL will be returned. Parameters context a GdkDrawContext Returns a Cairo region or NULL if not drawing a frame. [transfer none][nullable] Types and Values GdkDrawContext GdkDrawContext typedef struct _GdkDrawContext GdkDrawContext; The GdkDrawContext struct contains only private fields and should not be accessed directly. docs/reference/gdk/xml/gdkglcontext.xml0000664000175000017500000012430014010071747020361 0ustar mclasenmclasen ]> GdkGLContext 3 GDK4 Library GdkGLContext OpenGL draw context Functions GdkDisplay * gdk_gl_context_get_display () GdkSurface * gdk_gl_context_get_surface () GdkGLContext * gdk_gl_context_get_shared_context () void gdk_gl_context_get_version () void gdk_gl_context_set_required_version () void gdk_gl_context_get_required_version () void gdk_gl_context_set_debug_enabled () gboolean gdk_gl_context_get_debug_enabled () void gdk_gl_context_set_forward_compatible () gboolean gdk_gl_context_get_forward_compatible () void gdk_gl_context_set_use_es () gboolean gdk_gl_context_get_use_es () gboolean gdk_gl_context_is_legacy () gboolean gdk_gl_context_realize () void gdk_gl_context_make_current () GdkGLContext * gdk_gl_context_get_current () void gdk_gl_context_clear_current () Properties GdkGLContext *shared-contextRead / Write / Construct Only Types and Values GdkGLContext enumGdkGLError Object Hierarchy GObject ╰── GdkDrawContext ╰── GdkGLContext Includes#include <gdk/gdk.h> Description GdkGLContext is an object representing the platform-specific OpenGL draw context. GdkGLContexts are created for a GdkSurface using gdk_surface_create_gl_context(), and the context will match the the characteristics of the surface. A GdkGLContext is not tied to any particular normal framebuffer. For instance, it cannot draw to the GdkSurface back buffer. The GDK repaint system is in full control of the painting to that. Instead, you can create render buffers or textures and use gdk_cairo_draw_from_gl() in the draw function of your widget to draw them. Then GDK will handle the integration of your rendering with that of other widgets. Support for GdkGLContext is platform-specific, context creation can fail, returning NULL context. A GdkGLContext has to be made "current" in order to start using it, otherwise any OpenGL call will be ignored. Creating a new OpenGL contextIn order to create a new GdkGLContext instance you need a GdkSurface, which you typically get during the realize call of a widget. A GdkGLContext is not realized until either gdk_gl_context_make_current(), or until it is realized using gdk_gl_context_realize(). It is possible to specify details of the GL context like the OpenGL version to be used, or whether the GL context should have extra state validation enabled after calling gdk_surface_create_gl_context() by calling gdk_gl_context_realize(). If the realization fails you have the option to change the settings of the GdkGLContext and try again. Using a GdkGLContextYou will need to make the GdkGLContext the current context before issuing OpenGL calls; the system sends OpenGL commands to whichever context is current. It is possible to have multiple contexts, so you always need to ensure that the one which you want to draw with is the current one before issuing commands: You can now perform your drawing using OpenGL commands. You can check which GdkGLContext is the current one by using gdk_gl_context_get_current(); you can also unset any GdkGLContext that is currently set by calling gdk_gl_context_clear_current(). Functions gdk_gl_context_get_display () gdk_gl_context_get_display GdkDisplay * gdk_gl_context_get_display (GdkGLContext *context); Retrieves the GdkDisplay the context is created for Parameters context a GdkGLContext Returns a GdkDisplay or NULL. [nullable][transfer none] gdk_gl_context_get_surface () gdk_gl_context_get_surface GdkSurface * gdk_gl_context_get_surface (GdkGLContext *context); Retrieves the GdkSurface used by the context . Parameters context a GdkGLContext Returns a GdkSurface or NULL. [nullable][transfer none] gdk_gl_context_get_shared_context () gdk_gl_context_get_shared_context GdkGLContext * gdk_gl_context_get_shared_context (GdkGLContext *context); Retrieves the GdkGLContext that this context share data with. Parameters context a GdkGLContext Returns a GdkGLContext or NULL. [nullable][transfer none] gdk_gl_context_get_version () gdk_gl_context_get_version void gdk_gl_context_get_version (GdkGLContext *context, int *major, int *minor); Retrieves the OpenGL version of the context . The context must be realized prior to calling this function. Parameters context a GdkGLContext major return location for the major version. [out] minor return location for the minor version. [out] gdk_gl_context_set_required_version () gdk_gl_context_set_required_version void gdk_gl_context_set_required_version (GdkGLContext *context, int major, int minor); Sets the major and minor version of OpenGL to request. Setting major and minor to zero will use the default values. The GdkGLContext must not be realized or made current prior to calling this function. Parameters context a GdkGLContext major the major version to request minor the minor version to request gdk_gl_context_get_required_version () gdk_gl_context_get_required_version void gdk_gl_context_get_required_version (GdkGLContext *context, int *major, int *minor); Retrieves the major and minor version requested by calling gdk_gl_context_set_required_version(). Parameters context a GdkGLContext major return location for the major version to request. [out][nullable] minor return location for the minor version to request. [out][nullable] gdk_gl_context_set_debug_enabled () gdk_gl_context_set_debug_enabled void gdk_gl_context_set_debug_enabled (GdkGLContext *context, gboolean enabled); Sets whether the GdkGLContext should perform extra validations and run time checking. This is useful during development, but has additional overhead. The GdkGLContext must not be realized or made current prior to calling this function. Parameters context a GdkGLContext enabled whether to enable debugging in the context gdk_gl_context_get_debug_enabled () gdk_gl_context_get_debug_enabled gboolean gdk_gl_context_get_debug_enabled (GdkGLContext *context); Retrieves the value set using gdk_gl_context_set_debug_enabled(). Parameters context a GdkGLContext Returns TRUE if debugging is enabled gdk_gl_context_set_forward_compatible () gdk_gl_context_set_forward_compatible void gdk_gl_context_set_forward_compatible (GdkGLContext *context, gboolean compatible); Sets whether the GdkGLContext should be forward compatible. Forward compatible contexts must not support OpenGL functionality that has been marked as deprecated in the requested version; non-forward compatible contexts, on the other hand, must support both deprecated and non deprecated functionality. The GdkGLContext must not be realized or made current prior to calling this function. Parameters context a GdkGLContext compatible whether the context should be forward compatible gdk_gl_context_get_forward_compatible () gdk_gl_context_get_forward_compatible gboolean gdk_gl_context_get_forward_compatible (GdkGLContext *context); Retrieves the value set using gdk_gl_context_set_forward_compatible(). Parameters context a GdkGLContext Returns TRUE if the context should be forward compatible gdk_gl_context_set_use_es () gdk_gl_context_set_use_es void gdk_gl_context_set_use_es (GdkGLContext *context, int use_es); Requests that GDK create an OpenGL ES context instead of an OpenGL one, if the platform and windowing system allows it. The context must not have been realized. By default, GDK will attempt to automatically detect whether the underlying GL implementation is OpenGL or OpenGL ES once the context is realized. You should check the return value of gdk_gl_context_get_use_es() after calling gdk_gl_context_realize() to decide whether to use the OpenGL or OpenGL ES API, extensions, or shaders. Parameters context a GdkGLContext: use_es whether the context should use OpenGL ES instead of OpenGL, or -1 to allow auto-detection gdk_gl_context_get_use_es () gdk_gl_context_get_use_es gboolean gdk_gl_context_get_use_es (GdkGLContext *context); Checks whether the context is using an OpenGL or OpenGL ES profile. Parameters context a GdkGLContext Returns TRUE if the GdkGLContext is using an OpenGL ES profile gdk_gl_context_is_legacy () gdk_gl_context_is_legacy gboolean gdk_gl_context_is_legacy (GdkGLContext *context); Whether the GdkGLContext is in legacy mode or not. The GdkGLContext must be realized before calling this function. When realizing a GL context, GDK will try to use the OpenGL 3.2 core profile; this profile removes all the OpenGL API that was deprecated prior to the 3.2 version of the specification. If the realization is successful, this function will return FALSE. If the underlying OpenGL implementation does not support core profiles, GDK will fall back to a pre-3.2 compatibility profile, and this function will return TRUE. You can use the value returned by this function to decide which kind of OpenGL API to use, or whether to do extension discovery, or what kind of shader programs to load. Parameters context a GdkGLContext Returns TRUE if the GL context is in legacy mode gdk_gl_context_realize () gdk_gl_context_realize gboolean gdk_gl_context_realize (GdkGLContext *context, GError **error); Realizes the given GdkGLContext. It is safe to call this function on a realized GdkGLContext. Parameters context a GdkGLContext error return location for a GError Returns TRUE if the context is realized gdk_gl_context_make_current () gdk_gl_context_make_current void gdk_gl_context_make_current (GdkGLContext *context); Makes the context the current one. Parameters context a GdkGLContext gdk_gl_context_get_current () gdk_gl_context_get_current GdkGLContext * gdk_gl_context_get_current (void); Retrieves the current GdkGLContext. Returns the current GdkGLContext, or NULL. [nullable][transfer none] gdk_gl_context_clear_current () gdk_gl_context_clear_current void gdk_gl_context_clear_current (void); Clears the current GdkGLContext. Any OpenGL call after this function returns will be ignored until gdk_gl_context_make_current() is called. Types and Values GdkGLContext GdkGLContext typedef struct _GdkGLContext GdkGLContext; The GdkGLContext struct contains only private fields and should not be accessed directly. enum GdkGLError GdkGLError Error enumeration for GdkGLContext. Members GDK_GL_ERROR_NOT_AVAILABLE OpenGL support is not available GDK_GL_ERROR_UNSUPPORTED_FORMAT The requested visual format is not supported GDK_GL_ERROR_UNSUPPORTED_PROFILE The requested profile is not supported GDK_GL_ERROR_COMPILATION_FAILED The shader compilation failed GDK_GL_ERROR_LINK_FAILED The shader linking failed Property Details The <literal>“shared-context”</literal> property GdkGLContext:shared-context “shared-context” GdkGLContext * The GdkGLContext that this context is sharing data with, or NULL Owner: GdkGLContext Flags: Read / Write / Construct Only docs/reference/gdk/xml/gdkmonitor.xml0000664000175000017500000010540714010071747020050 0ustar mclasenmclasen ]> GdkMonitor 3 GDK4 Library GdkMonitor Object representing an output Functions GdkDisplay * gdk_monitor_get_display () void gdk_monitor_get_geometry () int gdk_monitor_get_width_mm () int gdk_monitor_get_height_mm () const char * gdk_monitor_get_manufacturer () const char * gdk_monitor_get_model () const char * gdk_monitor_get_connector () int gdk_monitor_get_scale_factor () int gdk_monitor_get_refresh_rate () GdkSubpixelLayout gdk_monitor_get_subpixel_layout () gboolean gdk_monitor_is_valid () Properties char *connectorRead GdkDisplay *displayRead / Write / Construct Only GdkRectangle *geometryRead intheight-mmRead char *manufacturerRead char *modelRead intrefresh-rateRead intscale-factorRead GdkSubpixelLayoutsubpixel-layoutRead gbooleanvalidRead intwidth-mmRead Signals voidinvalidateRun First Types and Values GdkMonitor enumGdkSubpixelLayout Object Hierarchy GObject ╰── GdkMonitor Includes#include <gdk/gdk.h> Description GdkMonitor objects represent the individual outputs that are associated with a GdkDisplay. GdkDisplay keeps a GListModel to enumerate and monitor monitors with gdk_display_get_monitors(). You can use gdk_display_get_monitor_at_surface() to find a particular monitor. Functions gdk_monitor_get_display () gdk_monitor_get_display GdkDisplay * gdk_monitor_get_display (GdkMonitor *monitor); Gets the display that this monitor belongs to. Parameters monitor a GdkMonitor Returns the display. [transfer none] gdk_monitor_get_geometry () gdk_monitor_get_geometry void gdk_monitor_get_geometry (GdkMonitor *monitor, GdkRectangle *geometry); Retrieves the size and position of an individual monitor within the display coordinate space. The returned geometry is in ”application pixels”, not in ”device pixels” (see gdk_monitor_get_scale_factor()). Parameters monitor a GdkMonitor geometry a GdkRectangle to be filled with the monitor geometry. [out] gdk_monitor_get_width_mm () gdk_monitor_get_width_mm int gdk_monitor_get_width_mm (GdkMonitor *monitor); Gets the width in millimeters of the monitor. Parameters monitor a GdkMonitor Returns the physical width of the monitor gdk_monitor_get_height_mm () gdk_monitor_get_height_mm int gdk_monitor_get_height_mm (GdkMonitor *monitor); Gets the height in millimeters of the monitor. Parameters monitor a GdkMonitor Returns the physical height of the monitor gdk_monitor_get_manufacturer () gdk_monitor_get_manufacturer const char * gdk_monitor_get_manufacturer (GdkMonitor *monitor); Gets the name or PNP ID of the monitor's manufacturer, if available. Note that this value might also vary depending on actual display backend. PNP ID registry is located at https://uefi.org/pnp_id_list Parameters monitor a GdkMonitor Returns the name of the manufacturer, or NULL. [transfer none][nullable] gdk_monitor_get_model () gdk_monitor_get_model const char * gdk_monitor_get_model (GdkMonitor *monitor); Gets the string identifying the monitor model, if available. Parameters monitor a GdkMonitor Returns the monitor model, or NULL. [transfer none][nullable] gdk_monitor_get_connector () gdk_monitor_get_connector const char * gdk_monitor_get_connector (GdkMonitor *monitor); Gets the name of the monitor's connector, if available. Parameters monitor a GdkMonitor Returns the name of the connector. [transfer none][nullable] gdk_monitor_get_scale_factor () gdk_monitor_get_scale_factor int gdk_monitor_get_scale_factor (GdkMonitor *monitor); Gets the internal scale factor that maps from monitor coordinates to the actual device pixels. On traditional systems this is 1, but on very high density outputs this can be a higher value (often 2). This can be used if you want to create pixel based data for a particular monitor, but most of the time you’re drawing to a surface where it is better to use gdk_surface_get_scale_factor() instead. Parameters monitor a GdkMonitor Returns the scale factor gdk_monitor_get_refresh_rate () gdk_monitor_get_refresh_rate int gdk_monitor_get_refresh_rate (GdkMonitor *monitor); Gets the refresh rate of the monitor, if available. The value is in milli-Hertz, so a refresh rate of 60Hz is returned as 60000. Parameters monitor a GdkMonitor Returns the refresh rate in milli-Hertz, or 0 gdk_monitor_get_subpixel_layout () gdk_monitor_get_subpixel_layout GdkSubpixelLayout gdk_monitor_get_subpixel_layout (GdkMonitor *monitor); Gets information about the layout of red, green and blue primaries for each pixel in this monitor, if available. Parameters monitor a GdkMonitor Returns the subpixel layout gdk_monitor_is_valid () gdk_monitor_is_valid gboolean gdk_monitor_is_valid (GdkMonitor *monitor); Returns TRUE if the monitor object corresponds to a physical monitor. The monitor becomes invalid when the physical monitor is unplugged or removed. Parameters monitor a GdkMonitor Returns TRUE if the object corresponds to a physical monitor Types and Values GdkMonitor GdkMonitor typedef struct _GdkMonitor GdkMonitor; The GdkMonitor struct contains only private fields and should not be accessed directly. enum GdkSubpixelLayout GdkSubpixelLayout This enumeration describes how the red, green and blue components of physical pixels on an output device are laid out. Members GDK_SUBPIXEL_LAYOUT_UNKNOWN The layout is not known GDK_SUBPIXEL_LAYOUT_NONE Not organized in this way GDK_SUBPIXEL_LAYOUT_HORIZONTAL_RGB The layout is horizontal, the order is RGB GDK_SUBPIXEL_LAYOUT_HORIZONTAL_BGR The layout is horizontal, the order is BGR GDK_SUBPIXEL_LAYOUT_VERTICAL_RGB The layout is vertical, the order is RGB GDK_SUBPIXEL_LAYOUT_VERTICAL_BGR The layout is vertical, the order is BGR Property Details The <literal>“connector”</literal> property GdkMonitor:connector “connector” char * The connector name.Owner: GdkMonitor Flags: Read Default value: NULL The <literal>“display”</literal> property GdkMonitor:display “display” GdkDisplay * The display of the monitor.Owner: GdkMonitor Flags: Read / Write / Construct Only The <literal>“geometry”</literal> property GdkMonitor:geometry “geometry” GdkRectangle * The geometry of the monitor.Owner: GdkMonitor Flags: Read The <literal>“height-mm”</literal> property GdkMonitor:height-mm “height-mm” int The height of the monitor, in millimeters.Owner: GdkMonitor Flags: Read Allowed values: >= 0 Default value: 0 The <literal>“manufacturer”</literal> property GdkMonitor:manufacturer “manufacturer” char * The manufacturer name.Owner: GdkMonitor Flags: Read Default value: NULL The <literal>“model”</literal> property GdkMonitor:model “model” char * The model name.Owner: GdkMonitor Flags: Read Default value: NULL The <literal>“refresh-rate”</literal> property GdkMonitor:refresh-rate “refresh-rate” int The refresh rate, in millihertz.Owner: GdkMonitor Flags: Read Allowed values: >= 0 Default value: 0 The <literal>“scale-factor”</literal> property GdkMonitor:scale-factor “scale-factor” int The scale factor.Owner: GdkMonitor Flags: Read Allowed values: >= 0 Default value: 1 The <literal>“subpixel-layout”</literal> property GdkMonitor:subpixel-layout “subpixel-layout” GdkSubpixelLayout The subpixel layout.Owner: GdkMonitor Flags: Read Default value: GDK_SUBPIXEL_LAYOUT_UNKNOWN The <literal>“valid”</literal> property GdkMonitor:valid “valid” gboolean Whether the monitor is still valid.Owner: GdkMonitor Flags: Read Default value: TRUE The <literal>“width-mm”</literal> property GdkMonitor:width-mm “width-mm” int The width of the monitor, in millimeters.Owner: GdkMonitor Flags: Read Allowed values: >= 0 Default value: 0 Signal Details The <literal>“invalidate”</literal> signal GdkMonitor::invalidate void user_function (GdkMonitor *monitor, gpointer user_data) The ::invalidate signal gets emitted when the output represented by monitor gets disconnected. Parameters monitor the object on which this signal was emitted user_data user data set when the signal handler was connected. Flags: Run First docs/reference/gdk/xml/gdkcairocontext.xml0000664000175000017500000001236314010071747021061 0ustar mclasenmclasen ]> GdkCairoContext 3 GDK4 Library GdkCairoContext Cairo draw context Functions cairo_t * gdk_cairo_context_cairo_create () Types and Values GdkCairoContext Includes#include <gdk/gdk.h> Description GdkCairoContext is an object representing the platform-specific draw context. GdkCairoContexts are created for a GdkDisplay using gdk_surface_create_cairo_context(), and the context can then be used to draw on that GdkSurface. Functions gdk_cairo_context_cairo_create () gdk_cairo_context_cairo_create cairo_t * gdk_cairo_context_cairo_create (GdkCairoContext *self); Retrieves a Cairo context to be used to draw on the GdkSurface of context . A call to gdk_draw_context_begin_frame() with this context must have been done or this function will return NULL. The returned context is guaranteed to be valid until gdk_draw_context_end_frame() is called. Parameters self a GdkCairoContext that is currently drawing Returns a Cairo context to be used to draw the contents of the GdkSurface. NULL is returned when context is not drawing. [transfer full][nullable] Types and Values GdkCairoContext GdkCairoContext typedef struct _GdkCairoContext GdkCairoContext; The GdkCairoContext struct contains only private fields and should not be accessed directly. docs/reference/gdk/xml/gdkvulkancontext.xml0000664000175000017500000006235414010071747021271 0ustar mclasenmclasen ]> GdkVulkanContext 3 GDK4 Library GdkVulkanContext Vulkan draw context Functions VkDevice gdk_vulkan_context_get_device () uint32_t gdk_vulkan_context_get_draw_index () VkSemaphore gdk_vulkan_context_get_draw_semaphore () VkImage gdk_vulkan_context_get_image () VkFormat gdk_vulkan_context_get_image_format () VkInstance gdk_vulkan_context_get_instance () uint32_t gdk_vulkan_context_get_n_images () VkPhysicalDevice gdk_vulkan_context_get_physical_device () VkQueue gdk_vulkan_context_get_queue () uint32_t gdk_vulkan_context_get_queue_family_index () Signals voidimages-updatedRun Last Types and Values GdkVulkanContext enumGdkVulkanError Object Hierarchy GObject ╰── GdkDrawContext ╰── GdkVulkanContext Implemented Interfaces GdkVulkanContext implements GInitable. Includes#include <gdk/gdk.h> Description GdkVulkanContext is an object representing the platform-specific Vulkan draw context. GdkVulkanContexts are created for a GdkSurface using gdk_surface_create_vulkan_context(), and the context will match the the characteristics of the surface. Support for GdkVulkanContext is platform-specific, context creation can fail, returning NULL context. Functions gdk_vulkan_context_get_device () gdk_vulkan_context_get_device VkDevice gdk_vulkan_context_get_device (GdkVulkanContext *context); Gets the Vulkan device that this context is using. Parameters context a GdkVulkanContext Returns the VkDevice. [transfer none] gdk_vulkan_context_get_draw_index () gdk_vulkan_context_get_draw_index uint32_t gdk_vulkan_context_get_draw_index (GdkVulkanContext *context); Gets the index of the image that is currently being drawn. This function can only be used between gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() calls. Parameters context a GdkVulkanContext Returns the index of the images that is being drawn gdk_vulkan_context_get_draw_semaphore () gdk_vulkan_context_get_draw_semaphore VkSemaphore gdk_vulkan_context_get_draw_semaphore (GdkVulkanContext *context); Gets the Vulkan semaphore that protects access to the image that is currently being drawn. This function can only be used between gdk_draw_context_begin_frame() and gdk_draw_context_end_frame() calls. Parameters context a GdkVulkanContext Returns the VkSemaphore. [transfer none] gdk_vulkan_context_get_image () gdk_vulkan_context_get_image VkImage gdk_vulkan_context_get_image (GdkVulkanContext *context, guint id); Gets the image with index id that this context is using. Parameters context a GdkVulkanContext id the index of the image to return Returns the VkImage. [transfer none] gdk_vulkan_context_get_image_format () gdk_vulkan_context_get_image_format VkFormat gdk_vulkan_context_get_image_format (GdkVulkanContext *context); Gets the image format that this context is using. Parameters context a GdkVulkanContext Returns the VkFormat. [transfer none] gdk_vulkan_context_get_instance () gdk_vulkan_context_get_instance VkInstance gdk_vulkan_context_get_instance (GdkVulkanContext *context); Gets the Vulkan instance that is associated with context . Parameters context a GdkVulkanContext Returns the VkInstance. [transfer none] gdk_vulkan_context_get_n_images () gdk_vulkan_context_get_n_images uint32_t gdk_vulkan_context_get_n_images (GdkVulkanContext *context); Gets the number of images that this context is using in its swap chain. Parameters context a GdkVulkanContext Returns the number of images gdk_vulkan_context_get_physical_device () gdk_vulkan_context_get_physical_device VkPhysicalDevice gdk_vulkan_context_get_physical_device (GdkVulkanContext *context); Gets the Vulkan physical device that this context is using. Parameters context a GdkVulkanContext Returns the VkPhysicalDevice. [transfer none] gdk_vulkan_context_get_queue () gdk_vulkan_context_get_queue VkQueue gdk_vulkan_context_get_queue (GdkVulkanContext *context); Gets the Vulkan queue that this context is using. Parameters context a GdkVulkanContext Returns the VkQueue. [transfer none] gdk_vulkan_context_get_queue_family_index () gdk_vulkan_context_get_queue_family_index uint32_t gdk_vulkan_context_get_queue_family_index (GdkVulkanContext *context); Gets the family index for the queue that this context is using. See vkGetPhysicalDeviceQueueFamilyProperties(). Parameters context a GdkVulkanContext Returns the index Types and Values GdkVulkanContext GdkVulkanContext typedef struct _GdkVulkanContext GdkVulkanContext; The GdkVulkanContext struct contains only private fields and should not be accessed directly. enum GdkVulkanError GdkVulkanError Error enumeration for GdkVulkanContext. Members GDK_VULKAN_ERROR_UNSUPPORTED Vulkan is not supported on this backend or has not been compiled in. GDK_VULKAN_ERROR_NOT_AVAILABLE Vulkan support is not available on this Surface Signal Details The <literal>“images-updated”</literal> signal GdkVulkanContext::images-updated void user_function (GdkVulkanContext *context, gpointer user_data) This signal is emitted when the images managed by this context have changed. Usually this means that the swapchain had to be recreated, for example in response to a change of the surface size. Parameters context the object on which the signal is emitted user_data user data set when the signal handler was connected. Flags: Run Last docs/reference/gdk/xml/gdkclipboard.xml0000664000175000017500000017262214010071747020323 0ustar mclasenmclasen ]> Clipboards 3 GDK4 Library Clipboards Share data between applications for Copy-and-Paste Functions GdkDisplay * gdk_clipboard_get_display () GdkContentFormats * gdk_clipboard_get_formats () gboolean gdk_clipboard_is_local () GdkContentProvider * gdk_clipboard_get_content () void gdk_clipboard_store_async () gboolean gdk_clipboard_store_finish () void gdk_clipboard_read_async () GInputStream * gdk_clipboard_read_finish () void gdk_clipboard_read_value_async () const GValue * gdk_clipboard_read_value_finish () void gdk_clipboard_read_texture_async () GdkTexture * gdk_clipboard_read_texture_finish () void gdk_clipboard_read_text_async () char * gdk_clipboard_read_text_finish () gboolean gdk_clipboard_set_content () void gdk_clipboard_set () void gdk_clipboard_set_valist () void gdk_clipboard_set_value () void gdk_clipboard_set_text () void gdk_clipboard_set_texture () Properties GdkContentProvider *contentRead GdkDisplay *displayRead / Write / Construct Only GdkContentFormats *formatsRead gbooleanlocalRead Signals voidchangedRun Last Types and Values GdkClipboard Object Hierarchy GObject ╰── GdkClipboard Includes#include <gdk/gdk.h> Description The GdkClipboard object represents a clipboard of data shared between different applications or between different parts of the same application. To get a GdkClipboard object, use gdk_display_get_clipboard() or gdk_display_get_primary_clipboard(). You can find out about the data that is currently available in a clipboard using gdk_clipboard_get_formats(). To make text or image data available in a clipboard, use gdk_clipboard_set_text() or gdk_clipboard_set_texture(). For other data, you can use gdk_clipboard_set_content(), which takes a GdkContentProvider object. To read textual or image data from a clipboard, use gdk_clipboard_read_text_async() or gdk_clipboard_read_texture_async(). For other data, use gdk_clipboard_read_async(), which provides a GInputStream object. Functions gdk_clipboard_get_display () gdk_clipboard_get_display GdkDisplay * gdk_clipboard_get_display (GdkClipboard *clipboard); Gets the GdkDisplay that the clipboard was created for. Parameters clipboard a GdkClipboard Returns a GdkDisplay. [transfer none] gdk_clipboard_get_formats () gdk_clipboard_get_formats GdkContentFormats * gdk_clipboard_get_formats (GdkClipboard *clipboard); Gets the formats that the clipboard can provide its current contents in. Parameters clipboard a GdkClipboard Returns The formats of the clipboard. [transfer none] gdk_clipboard_is_local () gdk_clipboard_is_local gboolean gdk_clipboard_is_local (GdkClipboard *clipboard); Returns if the clipboard is local. A clipboard is considered local if it was last claimed by the running application. Note that gdk_clipboard_get_content() may return NULL even on a local clipboard. In this case the clipboard is empty. Parameters clipboard a GdkClipboard Returns TRUE if the clipboard is local gdk_clipboard_get_content () gdk_clipboard_get_content GdkContentProvider * gdk_clipboard_get_content (GdkClipboard *clipboard); Returns the GdkContentProvider currently set on clipboard . If the clipboard is empty or its contents are not owned by the current process, NULL will be returned. Parameters clipboard a GdkClipboard Returns The content of a clipboard or NULL if the clipboard does not maintain any content. [transfer none][nullable] gdk_clipboard_store_async () gdk_clipboard_store_async void gdk_clipboard_store_async (GdkClipboard *clipboard, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously instructs the clipboard to store its contents remotely to preserve them for later usage. If the clipboard is not local, this function does nothing but report success. This function is called automatically when gtk_main() or GtkApplication exit, so you likely don't need to call it. Parameters clipboard a GdkClipboard io_priority the I/O priority of the request. cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_clipboard_store_finish () gdk_clipboard_store_finish gboolean gdk_clipboard_store_finish (GdkClipboard *clipboard, GAsyncResult *result, GError **error); Finishes an asynchronous clipboard store started with gdk_clipboard_store_async(). Parameters clipboard a GdkClipboard result a GAsyncResult error a GError location to store the error occurring, or NULL to ignore. Returns TRUE if storing was successful. gdk_clipboard_read_async () gdk_clipboard_read_async void gdk_clipboard_read_async (GdkClipboard *clipboard, const char **mime_types, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously requests an input stream to read the clipboard 's contents from. When the operation is finished callback will be called. You can then call gdk_clipboard_read_finish() to get the result of the operation. The clipboard will choose the most suitable mime type from the given list to fulfill the request, preferring the ones listed first. Parameters clipboard a GdkClipboard mime_types a NULL-terminated array of mime types to choose from io_priority the I/O priority of the request. cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_clipboard_read_finish () gdk_clipboard_read_finish GInputStream * gdk_clipboard_read_finish (GdkClipboard *clipboard, GAsyncResult *result, const char **out_mime_type, GError **error); Finishes an asynchronous clipboard read started with gdk_clipboard_read_async(). Parameters clipboard a GdkClipboard result a GAsyncResult out_mime_type pointer to store the chosen mime type in or NULL. [out][allow-none][transfer none] error a GError location to store the error occurring, or NULL to ignore. Returns a GInputStream or NULL on error. [transfer full][nullable] gdk_clipboard_read_value_async () gdk_clipboard_read_value_async void gdk_clipboard_read_value_async (GdkClipboard *clipboard, GType type, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously request the clipboard contents converted to the given type . When the operation is finished callback will be called. You can then call gdk_clipboard_read_value_finish() to get the resulting GValue. For local clipboard contents that are available in the given GType, the value will be copied directly. Otherwise, GDK will try to use gdk_content_deserialize_async() to convert the clipboard's data. Parameters clipboard a GdkClipboard type a GType to read io_priority the I/O priority of the request. cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_clipboard_read_value_finish () gdk_clipboard_read_value_finish const GValue * gdk_clipboard_read_value_finish (GdkClipboard *clipboard, GAsyncResult *result, GError **error); Finishes an asynchronous clipboard read started with gdk_clipboard_read_value_async(). Parameters clipboard a GdkClipboard result a GAsyncResult error a GError location to store the error occurring, or NULL to ignore. Returns a GValue containing the result. [transfer none] gdk_clipboard_read_texture_async () gdk_clipboard_read_texture_async void gdk_clipboard_read_texture_async (GdkClipboard *clipboard, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously request the clipboard contents converted to a GdkPixbuf. When the operation is finished callback will be called. You can then call gdk_clipboard_read_texture_finish() to get the result. This is a simple wrapper around gdk_clipboard_read_value_async(). Use that function or gdk_clipboard_read_async() directly if you need more control over the operation. Parameters clipboard a GdkClipboard cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_clipboard_read_texture_finish () gdk_clipboard_read_texture_finish GdkTexture * gdk_clipboard_read_texture_finish (GdkClipboard *clipboard, GAsyncResult *result, GError **error); Finishes an asynchronous clipboard read started with gdk_clipboard_read_texture_async(). Parameters clipboard a GdkClipboard result a GAsyncResult error a GError location to store the error occurring, or NULL to ignore. Returns a new GdkTexture or NULL on error. [transfer full][nullable] gdk_clipboard_read_text_async () gdk_clipboard_read_text_async void gdk_clipboard_read_text_async (GdkClipboard *clipboard, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously request the clipboard contents converted to a string. When the operation is finished callback will be called. You can then call gdk_clipboard_read_text_finish() to get the result. This is a simple wrapper around gdk_clipboard_read_value_async(). Use that function or gdk_clipboard_read_async() directly if you need more control over the operation. Parameters clipboard a GdkClipboard cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_clipboard_read_text_finish () gdk_clipboard_read_text_finish char * gdk_clipboard_read_text_finish (GdkClipboard *clipboard, GAsyncResult *result, GError **error); Finishes an asynchronous clipboard read started with gdk_clipboard_read_text_async(). Parameters clipboard a GdkClipboard result a GAsyncResult error a GError location to store the error occurring, or NULL to ignore. Returns a new string or NULL on error. [transfer full][nullable] gdk_clipboard_set_content () gdk_clipboard_set_content gboolean gdk_clipboard_set_content (GdkClipboard *clipboard, GdkContentProvider *provider); Sets a new content provider on clipboard . The clipboard will claim the GdkDisplay's resources and advertise these new contents to other applications. In the rare case of a failure, this function will return FALSE. The clipboard will then continue reporting its old contents and ignore provider . If the contents are read by either an external application or the clipboard 's read functions, clipboard will select the best format to transfer the contents and then request that format from provider . Parameters clipboard a GdkClipboard provider the new contents of clipboard or NULL to clear the clipboard. [transfer none][allow-none] Returns TRUE if setting the clipboard succeeded gdk_clipboard_set () gdk_clipboard_set void gdk_clipboard_set (GdkClipboard *clipboard, GType type, ...); Sets the clipboard to contain the value collected from the given varargs. Parameters clipboard a GdkClipboard type type of value to set ... value contents conforming to type gdk_clipboard_set_valist () gdk_clipboard_set_valist void gdk_clipboard_set_valist (GdkClipboard *clipboard, GType type, va_list args); Sets the clipboard to contain the value collected from the given args . [skip] Parameters clipboard a GdkClipboard type type of value to set args varargs containing the value of type gdk_clipboard_set_value () gdk_clipboard_set_value void gdk_clipboard_set_value (GdkClipboard *clipboard, const GValue *value); Sets the clipboard to contain the given value . [rename-to gdk_clipboard_set] Parameters clipboard a GdkClipboard value a GValue to set gdk_clipboard_set_text () gdk_clipboard_set_text void gdk_clipboard_set_text (GdkClipboard *clipboard, const char *text); Puts the given text into the clipboard. [skip] Parameters clipboard a GdkClipboard text Text to put into the clipboard gdk_clipboard_set_texture () gdk_clipboard_set_texture void gdk_clipboard_set_texture (GdkClipboard *clipboard, GdkTexture *texture); Puts the given texture into the clipboard. [skip] Parameters clipboard a GdkClipboard texture a GdkTexture to put into the clipboard Types and Values GdkClipboard GdkClipboard typedef struct _GdkClipboard GdkClipboard; The GdkClipboard struct contains only private fields and should not be accessed directly. Property Details The <literal>“content”</literal> property GdkClipboard:content “content” GdkContentProvider * The GdkContentProvider or NULL if the clipboard is empty or contents are provided otherwise. Owner: GdkClipboard Flags: Read The <literal>“display”</literal> property GdkClipboard:display “display” GdkDisplay * The GdkDisplay that the clipboard belongs to. Owner: GdkClipboard Flags: Read / Write / Construct Only The <literal>“formats”</literal> property GdkClipboard:formats “formats” GdkContentFormats * The possible formats that the clipboard can provide its data in. Owner: GdkClipboard Flags: Read The <literal>“local”</literal> property GdkClipboard:local “local” gboolean TRUE if the contents of the clipboard are owned by this process. Owner: GdkClipboard Flags: Read Default value: TRUE Signal Details The <literal>“changed”</literal> signal GdkClipboard::changed void user_function (GdkClipboard *clipboard, gpointer user_data) The ::changed signal is emitted when the clipboard changes ownership. Parameters clipboard the object on which the signal was emitted user_data user data set when the signal handler was connected. Flags: Run Last See Also GdkContentProvider, GdkContentFormats docs/reference/gdk/xml/gdkcontentprovider.xml0000664000175000017500000010465714010071747021614 0ustar mclasenmclasen ]> GdkContentProvider 3 GDK4 Library GdkContentProvider Provides content for data transfer between applications Functions GdkContentProvider * gdk_content_provider_new_for_value () GdkContentProvider * gdk_content_provider_new_typed () GdkContentProvider * gdk_content_provider_new_for_bytes () GdkContentProvider * gdk_content_provider_new_union () GdkContentFormats * gdk_content_provider_ref_formats () GdkContentFormats * gdk_content_provider_ref_storable_formats () void gdk_content_provider_content_changed () void gdk_content_provider_write_mime_type_async () gboolean gdk_content_provider_write_mime_type_finish () gboolean gdk_content_provider_get_value () Properties GdkContentFormats *formatsRead GdkContentFormats *storable-formatsRead Signals voidcontent-changedRun Last Types and Values GdkContentProvider structGdkContentProviderClass Object Hierarchy GObject ╰── GdkContentProvider Includes#include <gdk/gdk.h> Description A GdkContentProvider is used to provide content for the clipboard in a number of formats. To create a GdkContentProvider, use gdk_content_provider_new_for_value() or gdk_content_provider_new_for_bytes(). GDK knows how to handle common text and image formats out-of-the-box. See GdkContentSerializer and GdkContentDeserializer if you want to add support for application-specific data formats. Functions gdk_content_provider_new_for_value () gdk_content_provider_new_for_value GdkContentProvider * gdk_content_provider_new_for_value (const GValue *value); Create a content provider that provides the given value . Parameters value a GValue Returns a new GdkContentProvider gdk_content_provider_new_typed () gdk_content_provider_new_typed GdkContentProvider * gdk_content_provider_new_typed (GType type, ...); Create a content provider that provides the value of the given type . The value is provided using G_VALUE_COLLECT(), so the same rules apply as when calling g_object_new() or g_object_set(). Parameters type Type of value to follow ... value Returns a new GdkContentProvider gdk_content_provider_new_for_bytes () gdk_content_provider_new_for_bytes GdkContentProvider * gdk_content_provider_new_for_bytes (const char *mime_type, GBytes *bytes); Create a content provider that provides the given bytes as data for the given mime_type . Parameters mime_type the mime type bytes a GBytes with the data for mime_type . [transfer none] Returns a new GdkContentProvider gdk_content_provider_new_union () gdk_content_provider_new_union GdkContentProvider * gdk_content_provider_new_union (GdkContentProvider **providers, gsize n_providers); Creates a content provider that represents all the given providers . Whenever data needs to be written, the union provider will try the given providers in the given order and the first one supporting a format will be chosen to provide it. This allows an easy way to support providing data in different formats. For example, an image may be provided by its file and by the image contents with a call such as Parameters providers The GdkContentProviders to present the union of. [nullable][array length=n_providers][transfer full] n_providers the number of providers Returns a new GdkContentProvider gdk_content_provider_ref_formats () gdk_content_provider_ref_formats GdkContentFormats * gdk_content_provider_ref_formats (GdkContentProvider *provider); Gets the formats that the provider can provide its current contents in. Parameters provider a GdkContentProvider Returns The formats of the provider. [transfer full] gdk_content_provider_ref_storable_formats () gdk_content_provider_ref_storable_formats GdkContentFormats * gdk_content_provider_ref_storable_formats (GdkContentProvider *provider); Gets the formats that the provider suggests other applications to store the data in. An example of such an application would be a clipboard manager. This can be assumed to be a subset of gdk_content_provider_ref_formats(). Parameters provider a GdkContentProvider Returns The storable formats of the provider. [transfer full] gdk_content_provider_content_changed () gdk_content_provider_content_changed void gdk_content_provider_content_changed (GdkContentProvider *provider); Emits the “content-changed” signal. Parameters provider a GdkContentProvider gdk_content_provider_write_mime_type_async () gdk_content_provider_write_mime_type_async void gdk_content_provider_write_mime_type_async (GdkContentProvider *provider, const char *mime_type, GOutputStream *stream, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Asynchronously writes the contents of provider to stream in the given mime_type . When the operation is finished callback will be called. You can then call gdk_content_provider_write_mime_type_finish() to get the result of the operation. The given mime type does not need to be listed in the formats returned by gdk_content_provider_ref_formats(). However, if the given GType is not supported, G_IO_ERROR_NOT_SUPPORTED will be reported. The given stream will not be closed. Parameters provider a GdkContentProvider mime_type the mime type to provide the data in stream the GOutputStream to write to io_priority the I/O priority of the request. cancellable optional GCancellable object, NULL to ignore. [nullable] callback callback to call when the request is satisfied. [scope async] user_data the data to pass to callback function. [closure] gdk_content_provider_write_mime_type_finish () gdk_content_provider_write_mime_type_finish gboolean gdk_content_provider_write_mime_type_finish (GdkContentProvider *provider, GAsyncResult *result, GError **error); Finishes an asynchronous write operation started with gdk_content_provider_write_mime_type_async(). Parameters provider a GdkContentProvider result a GAsyncResult error a GError location to store the error occurring, or NULL to ignore. Returns TRUE if the operation was completed successfully. Otherwise error will be set to describe the failure. gdk_content_provider_get_value () gdk_content_provider_get_value gboolean gdk_content_provider_get_value (GdkContentProvider *provider, GValue *value, GError **error); Gets the contents of provider stored in value . The value will have been initialized to the GType the value should be provided in. This given GType does not need to be listed in the formats returned by gdk_content_provider_ref_formats(). However, if the given GType is not supported, this operation can fail and G_IO_ERROR_NOT_SUPPORTED will be reported. Parameters provider a GdkContentProvider value the GValue to fill error a GError location to store the error occurring, or NULL to ignore. Returns TRUE if the value was set successfully. Otherwise error will be set to describe the failure. Types and Values GdkContentProvider GdkContentProvider typedef struct _GdkContentProvider GdkContentProvider; Should not be directly accessed. struct GdkContentProviderClass GdkContentProviderClass struct GdkContentProviderClass { GObjectClass parent_class; /* signals */ void (* content_changed) (GdkContentProvider *provider); }; Class structure for GdkContentProvider. Members content_changed () Signal class closure for “content-changed” Property Details The <literal>“formats”</literal> property GdkContentProvider:formats “formats” GdkContentFormats * The possible formats that the provider can provide its data in. Owner: GdkContentProvider Flags: Read The <literal>“storable-formats”</literal> property GdkContentProvider:storable-formats “storable-formats” GdkContentFormats * The subset of formats that clipboard managers should store this provider's data in. Owner: GdkContentProvider Flags: Read Signal Details The <literal>“content-changed”</literal> signal GdkContentProvider::content-changed void user_function (GdkContentProvider *gdkcontentprovider, gpointer user_data) Emitted whenever the content provided by this provider has changed. Parameters user_data user data set when the signal handler was connected. Flags: Run Last See Also GdkContentSerializer, GdkContentDeserializer docs/reference/gdk/xml/gdkcontentserializer.xml0000664000175000017500000010334514010071747022124 0ustar mclasenmclasen ]> GdkContentSerializer 3 GDK4 Library GdkContentSerializer Serialize content for transfer Functions void (*GdkContentSerializeFunc) () const char * gdk_content_serializer_get_mime_type () GType gdk_content_serializer_get_gtype () const GValue * gdk_content_serializer_get_value () GOutputStream * gdk_content_serializer_get_output_stream () int gdk_content_serializer_get_priority () GCancellable * gdk_content_serializer_get_cancellable () gpointer gdk_content_serializer_get_user_data () void gdk_content_serializer_set_task_data () gpointer gdk_content_serializer_get_task_data () void gdk_content_serializer_return_success () void gdk_content_serializer_return_error () void gdk_content_register_serializer () void gdk_content_serialize_async () gboolean gdk_content_serialize_finish () Types and Values GdkContentSerializer Object Hierarchy GObject ╰── GdkContentSerializer Implemented Interfaces GdkContentSerializer implements GAsyncResult. Includes#include <gdk/gdk.h> Description A GdkContentSerializer is used to serialize content for inter-application data transfers. Functions GdkContentSerializeFunc () GdkContentSerializeFunc void (*GdkContentSerializeFunc) (GdkContentSerializer *serializer); The type of a function that can be registered with gdk_content_register_serializer(). When the function gets called to operate on content, it can call functions on the serializer object to obtain the mime type, output stream, user data, etc. for its operation. Parameters serializer a GdkContentSerializer gdk_content_serializer_get_mime_type () gdk_content_serializer_get_mime_type const char * gdk_content_serializer_get_mime_type (GdkContentSerializer *serializer); Gets the mime type to serialize to. Parameters serializer a GdkContentSerializer Returns the mime type for the current operation. [transfer none] gdk_content_serializer_get_gtype () gdk_content_serializer_get_gtype GType gdk_content_serializer_get_gtype (GdkContentSerializer *serializer); Gets the GType to of the object to serialize. Parameters serializer a GdkContentSerializer Returns the GType for the current operation gdk_content_serializer_get_value () gdk_content_serializer_get_value const GValue * gdk_content_serializer_get_value (GdkContentSerializer *serializer); Gets the GValue to read the object to serialize from. Parameters serializer a GdkContentSerializer Returns the GValue for the current operation. [transfer none] gdk_content_serializer_get_output_stream () gdk_content_serializer_get_output_stream GOutputStream * gdk_content_serializer_get_output_stream (GdkContentSerializer *serializer); Gets the output stream that was passed to gdk_content_serialize_async(). Parameters serializer a GdkContentSerializer Returns the output stream for the current operation. [transfer none] gdk_content_serializer_get_priority () gdk_content_serializer_get_priority int gdk_content_serializer_get_priority (GdkContentSerializer *serializer); Gets the io priority that was passed to gdk_content_serialize_async(). Parameters serializer a GdkContentSerializer Returns the io priority for the current operation gdk_content_serializer_get_cancellable () gdk_content_serializer_get_cancellable GCancellable * gdk_content_serializer_get_cancellable (GdkContentSerializer *serializer); Gets the cancellable that was passed to gdk_content_serialize_async(). Parameters serializer a GdkContentSerializer Returns the cancellable for the current operation. [transfer none] gdk_content_serializer_get_user_data () gdk_content_serializer_get_user_data gpointer gdk_content_serializer_get_user_data (GdkContentSerializer *serializer); Gets the user data that was passed when the serializer was registered. Parameters serializer a GdkContentSerializer Returns the user data for this serializer. [transfer none] gdk_content_serializer_set_task_data () gdk_content_serializer_set_task_data void gdk_content_serializer_set_task_data (GdkContentSerializer *serializer, gpointer data, GDestroyNotify notify); Associate data with the current serialization operation. Parameters serializer a GdkContentSerializer data data to associate with this operation notify destroy notify for data gdk_content_serializer_get_task_data () gdk_content_serializer_get_task_data gpointer gdk_content_serializer_get_task_data (GdkContentSerializer *serializer); Gets the data that was associated with serializer via gdk_content_serializer_set_task_data(). Parameters serializer a GdkContentSerializer Returns the task data for serializer . [transfer none] gdk_content_serializer_return_success () gdk_content_serializer_return_success void gdk_content_serializer_return_success (GdkContentSerializer *serializer); Indicate that the serialization has been successfully completed. Parameters serializer a GdkContentSerializer gdk_content_serializer_return_error () gdk_content_serializer_return_error void gdk_content_serializer_return_error (GdkContentSerializer *serializer, GError *error); Indicate that the serialization has ended with an error. This function consumes error . Parameters serializer a GdkContentSerializer error a GError gdk_content_register_serializer () gdk_content_register_serializer void gdk_content_register_serializer (GType type, const char *mime_type, GdkContentSerializeFunc serialize, gpointer data, GDestroyNotify notify); Registers a function to convert objects of the given type to a serialized representation with the given mime type. Parameters type the type of objects that the function can serialize mime_type the mime type to serialize to serialize the callback data data that serialize can access notify destroy notify for data gdk_content_serialize_async () gdk_content_serialize_async void gdk_content_serialize_async (GOutputStream *stream, const char *mime_type, const GValue *value, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Serialize content and write it to the given output stream, asynchronously. When the operation is finished, callback will be called. You can then call gdk_content_serialize_finish() to get the result of the operation. Parameters stream a GOutputStream to write the serialized content to mime_type the mime type to serialize to value the content to serialize io_priority the io priority of the operation cancellable optional GCancellable object. [nullable] callback callback to call when the operation is done. [scope async] user_data data to pass to the callback function. [closure] gdk_content_serialize_finish () gdk_content_serialize_finish gboolean gdk_content_serialize_finish (GAsyncResult *result, GError **error); Finishes a content serialization operation. Parameters result the GAsyncResult error return location for an error Returns TRUE if the operation was successful, FALSE if an error occurred. In this case, error is set Types and Values GdkContentSerializer GdkContentSerializer typedef struct _GdkContentSerializer GdkContentSerializer; Should not be accessed directly. See Also GdkContentDeserializer, GdkContentProvider docs/reference/gdk/xml/gdkcontentdeserializer.xml0000664000175000017500000010525514010071747022437 0ustar mclasenmclasen ]> GdkContentDeserializer 3 GDK4 Library GdkContentDeserializer Deserialize content for transfer Functions void (*GdkContentDeserializeFunc) () const char * gdk_content_deserializer_get_mime_type () GType gdk_content_deserializer_get_gtype () GValue * gdk_content_deserializer_get_value () GInputStream * gdk_content_deserializer_get_input_stream () int gdk_content_deserializer_get_priority () GCancellable * gdk_content_deserializer_get_cancellable () gpointer gdk_content_deserializer_get_user_data () void gdk_content_deserializer_set_task_data () gpointer gdk_content_deserializer_get_task_data () void gdk_content_deserializer_return_success () void gdk_content_deserializer_return_error () void gdk_content_register_deserializer () void gdk_content_deserialize_async () gboolean gdk_content_deserialize_finish () Types and Values GdkContentDeserializer Object Hierarchy GObject ╰── GdkContentDeserializer Implemented Interfaces GdkContentDeserializer implements GAsyncResult. Includes#include <gdk/gdk.h> Description A GdkContentDeserializer is used to deserialize content received via inter-application data transfers. Functions GdkContentDeserializeFunc () GdkContentDeserializeFunc void (*GdkContentDeserializeFunc) (GdkContentDeserializer *deserializer); The type of a function that can be registered with gdk_content_register_deserializer(). When the function gets called to operate on content, it can call functions on the deserializer object to obtain the mime type, input stream, user data, etc. for its operation. Parameters deserializer a GdkContentDeserializer gdk_content_deserializer_get_mime_type () gdk_content_deserializer_get_mime_type const char * gdk_content_deserializer_get_mime_type (GdkContentDeserializer *deserializer); Gets the mime type to deserialize from. Parameters deserializer a GdkContentDeserializer Returns the mime type for the current operation. [transfer none] gdk_content_deserializer_get_gtype () gdk_content_deserializer_get_gtype GType gdk_content_deserializer_get_gtype (GdkContentDeserializer *deserializer); Gets the GType to create an instance of. Parameters deserializer a GdkContentDeserializer Returns the GType for the current operation gdk_content_deserializer_get_value () gdk_content_deserializer_get_value GValue * gdk_content_deserializer_get_value (GdkContentDeserializer *deserializer); Gets the GValue to store the deserialized object in. Parameters deserializer a GdkContentDeserializer Returns the GValue for the current operation. [transfer none] gdk_content_deserializer_get_input_stream () gdk_content_deserializer_get_input_stream GInputStream * gdk_content_deserializer_get_input_stream (GdkContentDeserializer *deserializer); Gets the input stream that was passed to gdk_content_deserialize_async(). Parameters deserializer a GdkContentDeserializer Returns the input stream for the current operation. [transfer none] gdk_content_deserializer_get_priority () gdk_content_deserializer_get_priority int gdk_content_deserializer_get_priority (GdkContentDeserializer *deserializer); Gets the io priority that was passed to gdk_content_deserialize_async(). Parameters deserializer a GdkContentDeserializer Returns the io priority for the current operation gdk_content_deserializer_get_cancellable () gdk_content_deserializer_get_cancellable GCancellable * gdk_content_deserializer_get_cancellable (GdkContentDeserializer *deserializer); Gets the cancellable that was passed to gdk_content_deserialize_async(). Parameters deserializer a GdkContentDeserializer Returns the cancellable for the current operation. [transfer none] gdk_content_deserializer_get_user_data () gdk_content_deserializer_get_user_data gpointer gdk_content_deserializer_get_user_data (GdkContentDeserializer *deserializer); Gets the user data that was passed when the deserializer was registered. Parameters deserializer a GdkContentDeserializer Returns the user data for this deserializer. [transfer none] gdk_content_deserializer_set_task_data () gdk_content_deserializer_set_task_data void gdk_content_deserializer_set_task_data (GdkContentDeserializer *deserializer, gpointer data, GDestroyNotify notify); Associate data with the current deserialization operation. Parameters deserializer a GdkContentDeserializer data data to associate with this operation notify destroy notify for data gdk_content_deserializer_get_task_data () gdk_content_deserializer_get_task_data gpointer gdk_content_deserializer_get_task_data (GdkContentDeserializer *deserializer); Gets the data that was associated with deserializer via gdk_content_deserializer_set_task_data(). Parameters deserializer a GdkContentDeserializer Returns the task data for deserializer . [transfer none] gdk_content_deserializer_return_success () gdk_content_deserializer_return_success void gdk_content_deserializer_return_success (GdkContentDeserializer *deserializer); Indicate that the deserialization has been successfully completed. Parameters deserializer a GdkContentDeserializer gdk_content_deserializer_return_error () gdk_content_deserializer_return_error void gdk_content_deserializer_return_error (GdkContentDeserializer *deserializer, GError *error); Indicate that the deserialization has ended with an error. This function consumes error . Parameters deserializer a GdkContentDeserializer error a GError gdk_content_register_deserializer () gdk_content_register_deserializer void gdk_content_register_deserializer (const char *mime_type, GType type, GdkContentDeserializeFunc deserialize, gpointer data, GDestroyNotify notify); Registers a function to create objects of a given type from a serialized representation with the given mime type. Parameters mime_type the mime type which the function can deserialize from type the type of objects that the function creates deserialize the callback data data that deserialize can access notify destroy notify for data gdk_content_deserialize_async () gdk_content_deserialize_async void gdk_content_deserialize_async (GInputStream *stream, const char *mime_type, GType type, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); Read content from the given input stream and deserialize it, asynchronously. When the operation is finished, callback will be called. You can then call gdk_content_deserialize_finish() to get the result of the operation. Parameters stream a GInputStream to read the serialized content from mime_type the mime type to deserialize from type the GType to deserialize from io_priority the io priority of the operation cancellable optional GCancellable object. [nullable] callback callback to call when the operation is done. [scope async] user_data data to pass to the callback function. [closure] gdk_content_deserialize_finish () gdk_content_deserialize_finish gboolean gdk_content_deserialize_finish (GAsyncResult *result, GValue *value, GError **error); Finishes a content deserialization operation. Parameters result the GAsyncResult value return location for the result of the operation error return location for an error Returns TRUE if the operation was successful. In this case, value is set. FALSE if an error occurred. In this case, error is set Types and Values GdkContentDeserializer GdkContentDeserializer typedef struct _GdkContentDeserializer GdkContentDeserializer; Should not be accessed directly. See Also GdkContentSerializer docs/reference/gdk/xml/gdk4-doc.top0000664000175000017500000000000014010071747017250 0ustar mclasenmclasendocs/reference/gdk/xml/gdk4-doc.bottom0000664000175000017500000000334314010071747017767 0ustar mclasenmclasen docs/reference/gdk/xml/tree_index.sgml0000664000175000017500000001044614010071747020161 0ustar mclasenmclasen ]> GObject ├── GAppLaunchContext ╰── GdkAppLaunchContext ├── GdkClipboard ├── GdkContentDeserializer ├── GdkContentProvider ├── GdkContentSerializer ├── GdkCursor ├── GdkDevice ├── GdkDeviceTool ├── GdkDisplay ├── GdkDisplayManager ├── GdkDrag ├── GdkSurface ├── GdkDrop ├── GdkFrameClock ├── GdkDrawContext ├── GdkGLContext ╰── GdkVulkanContext ├── GdkTexture ├── GdkGLTexture ╰── GdkMemoryTexture ├── GdkMonitor ├── GdkSeat ╰── GdkSnapshot GInterface ├── GdkDevicePad ├── GdkDragSurface ├── GdkPaintable ├── GdkPopup ╰── GdkToplevel GBoxed ├── GdkContentFormats ├── GdkPopupLayout ├── GdkRGBA ├── GdkToplevelLayout ╰── GdkRectangle GdkEvent docs/reference/gdk/xml/object_index.sgml0000664000175000017500000000602614010071747020467 0ustar mclasenmclasen ]> GAppLaunchContext GBoxed GInterface GObject GdkAppLaunchContext GdkClipboard GdkContentDeserializer GdkContentFormats GdkContentProvider GdkContentSerializer GdkCursor GdkDevice GdkDevicePad GdkDeviceTool GdkDisplay GdkDisplayManager GdkDrag GdkDragSurface GdkDrawContext GdkDrop GdkEvent GdkFrameClock GdkGLContext GdkGLTexture GdkMemoryTexture GdkMonitor GdkPaintable GdkPopup GdkPopupLayout GdkRGBA GdkRectangle GdkSeat GdkSnapshot GdkSurface GdkTexture GdkToplevel GdkToplevelLayout GdkVulkanContext docs/reference/gdk/xml/api-index-full.xml0000664000175000017500000050733114010071747020513 0ustar mclasenmclasen ]> A GDK_ACTION_ALL, macro in Drag and Drop GdkAnchorHints, enum in GdkPopupLayout GdkAppLaunchContext, struct in Application launching GdkAppLaunchContext:display, object property in Application launching gdk_app_launch_context_get_display, function in Application launching gdk_app_launch_context_set_desktop, function in Application launching gdk_app_launch_context_set_icon, function in Application launching gdk_app_launch_context_set_icon_name, function in Application launching gdk_app_launch_context_set_timestamp, function in Application launching GdkAxisFlags, enum in GdkDevice GdkAxisUse, enum in GdkDevice B GdkButtonEvent, struct in Events gdk_button_event_get_button, function in Events GDK_BUTTON_MIDDLE, macro in Events GDK_BUTTON_PRIMARY, macro in Events GDK_BUTTON_SECONDARY, macro in Events C GdkCairoContext, struct in GdkCairoContext gdk_cairo_context_cairo_create, function in GdkCairoContext gdk_cairo_draw_from_gl, function in Cairo Interaction gdk_cairo_rectangle, function in Cairo Interaction gdk_cairo_region, function in Cairo Interaction gdk_cairo_region_create_from_surface, function in Cairo Interaction gdk_cairo_set_source_pixbuf, function in Cairo Interaction gdk_cairo_set_source_rgba, function in Cairo Interaction GdkClipboard, struct in Clipboards GdkClipboard::changed, object signal in Clipboards GdkClipboard:content, object property in Clipboards GdkClipboard:display, object property in Clipboards GdkClipboard:formats, object property in Clipboards GdkClipboard:local, object property in Clipboards gdk_clipboard_get_content, function in Clipboards gdk_clipboard_get_display, function in Clipboards gdk_clipboard_get_formats, function in Clipboards gdk_clipboard_is_local, function in Clipboards gdk_clipboard_read_async, function in Clipboards gdk_clipboard_read_finish, function in Clipboards gdk_clipboard_read_texture_async, function in Clipboards gdk_clipboard_read_texture_finish, function in Clipboards gdk_clipboard_read_text_async, function in Clipboards gdk_clipboard_read_text_finish, function in Clipboards gdk_clipboard_read_value_async, function in Clipboards gdk_clipboard_read_value_finish, function in Clipboards gdk_clipboard_set, function in Clipboards gdk_clipboard_set_content, function in Clipboards gdk_clipboard_set_text, function in Clipboards gdk_clipboard_set_texture, function in Clipboards gdk_clipboard_set_valist, function in Clipboards gdk_clipboard_set_value, function in Clipboards gdk_clipboard_store_async, function in Clipboards gdk_clipboard_store_finish, function in Clipboards GdkContentDeserializeFunc, user_function in GdkContentDeserializer GdkContentDeserializer, struct in GdkContentDeserializer GdkContentFormats, struct in Content Formats GdkContentFormatsBuilder, struct in Content Formats GdkContentProvider, struct in GdkContentProvider GdkContentProvider::content-changed, object signal in GdkContentProvider GdkContentProvider:formats, object property in GdkContentProvider GdkContentProvider:storable-formats, object property in GdkContentProvider GdkContentProviderClass, struct in GdkContentProvider GdkContentSerializeFunc, user_function in GdkContentSerializer GdkContentSerializer, struct in GdkContentSerializer gdk_content_deserializer_get_cancellable, function in GdkContentDeserializer gdk_content_deserializer_get_gtype, function in GdkContentDeserializer gdk_content_deserializer_get_input_stream, function in GdkContentDeserializer gdk_content_deserializer_get_mime_type, function in GdkContentDeserializer gdk_content_deserializer_get_priority, function in GdkContentDeserializer gdk_content_deserializer_get_task_data, function in GdkContentDeserializer gdk_content_deserializer_get_user_data, function in GdkContentDeserializer gdk_content_deserializer_get_value, function in GdkContentDeserializer gdk_content_deserializer_return_error, function in GdkContentDeserializer gdk_content_deserializer_return_success, function in GdkContentDeserializer gdk_content_deserializer_set_task_data, function in GdkContentDeserializer gdk_content_deserialize_async, function in GdkContentDeserializer gdk_content_deserialize_finish, function in GdkContentDeserializer gdk_content_formats_builder_add_formats, function in Content Formats gdk_content_formats_builder_add_gtype, function in Content Formats gdk_content_formats_builder_add_mime_type, function in Content Formats gdk_content_formats_builder_free_to_formats, function in Content Formats gdk_content_formats_builder_new, function in Content Formats gdk_content_formats_builder_ref, function in Content Formats gdk_content_formats_builder_to_formats, function in Content Formats gdk_content_formats_builder_unref, function in Content Formats gdk_content_formats_contain_gtype, function in Content Formats gdk_content_formats_contain_mime_type, function in Content Formats gdk_content_formats_get_gtypes, function in Content Formats gdk_content_formats_get_mime_types, function in Content Formats gdk_content_formats_match, function in Content Formats gdk_content_formats_match_gtype, function in Content Formats gdk_content_formats_match_mime_type, function in Content Formats gdk_content_formats_new, function in Content Formats gdk_content_formats_new_for_gtype, function in Content Formats gdk_content_formats_print, function in Content Formats gdk_content_formats_ref, function in Content Formats gdk_content_formats_to_string, function in Content Formats gdk_content_formats_union, function in Content Formats gdk_content_formats_union_deserialize_gtypes, function in Content Formats gdk_content_formats_union_deserialize_mime_types, function in Content Formats gdk_content_formats_union_serialize_gtypes, function in Content Formats gdk_content_formats_union_serialize_mime_types, function in Content Formats gdk_content_formats_unref, function in Content Formats gdk_content_provider_content_changed, function in GdkContentProvider gdk_content_provider_get_value, function in GdkContentProvider gdk_content_provider_new_for_bytes, function in GdkContentProvider gdk_content_provider_new_for_value, function in GdkContentProvider gdk_content_provider_new_typed, function in GdkContentProvider gdk_content_provider_new_union, function in GdkContentProvider gdk_content_provider_ref_formats, function in GdkContentProvider gdk_content_provider_ref_storable_formats, function in GdkContentProvider gdk_content_provider_write_mime_type_async, function in GdkContentProvider gdk_content_provider_write_mime_type_finish, function in GdkContentProvider gdk_content_register_deserializer, function in GdkContentDeserializer gdk_content_register_serializer, function in GdkContentSerializer gdk_content_serializer_get_cancellable, function in GdkContentSerializer gdk_content_serializer_get_gtype, function in GdkContentSerializer gdk_content_serializer_get_mime_type, function in GdkContentSerializer gdk_content_serializer_get_output_stream, function in GdkContentSerializer gdk_content_serializer_get_priority, function in GdkContentSerializer gdk_content_serializer_get_task_data, function in GdkContentSerializer gdk_content_serializer_get_user_data, function in GdkContentSerializer gdk_content_serializer_get_value, function in GdkContentSerializer gdk_content_serializer_return_error, function in GdkContentSerializer gdk_content_serializer_return_success, function in GdkContentSerializer gdk_content_serializer_set_task_data, function in GdkContentSerializer gdk_content_serialize_async, function in GdkContentSerializer gdk_content_serialize_finish, function in GdkContentSerializer GdkCrossingEvent, struct in Events GdkCrossingMode, enum in Events gdk_crossing_event_get_detail, function in Events gdk_crossing_event_get_focus, function in Events gdk_crossing_event_get_mode, function in Events GDK_CURRENT_TIME, macro in Events GdkCursor, struct in Cursors GdkCursor:fallback, object property in Cursors GdkCursor:hotspot-x, object property in Cursors GdkCursor:hotspot-y, object property in Cursors GdkCursor:name, object property in Cursors GdkCursor:texture, object property in Cursors gdk_cursor_get_fallback, function in Cursors gdk_cursor_get_hotspot_x, function in Cursors gdk_cursor_get_hotspot_y, function in Cursors gdk_cursor_get_name, function in Cursors gdk_cursor_get_texture, function in Cursors gdk_cursor_new_from_name, function in Cursors gdk_cursor_new_from_texture, function in Cursors D GdkDeleteEvent, struct in Events GdkDevice, struct in GdkDevice GdkDevice::changed, object signal in GdkDevice GdkDevice::tool-changed, object signal in GdkDevice GdkDevice:caps-lock-state, object property in GdkDevice GdkDevice:direction, object property in GdkDevice GdkDevice:display, object property in GdkDevice GdkDevice:has-bidi-layouts, object property in GdkDevice GdkDevice:has-cursor, object property in GdkDevice GdkDevice:modifier-state, object property in GdkDevice GdkDevice:n-axes, object property in GdkDevice GdkDevice:name, object property in GdkDevice GdkDevice:num-lock-state, object property in GdkDevice GdkDevice:num-touches, object property in GdkDevice GdkDevice:product-id, object property in GdkDevice GdkDevice:scroll-lock-state, object property in GdkDevice GdkDevice:seat, object property in GdkDevice GdkDevice:source, object property in GdkDevice GdkDevice:tool, object property in GdkDevice GdkDevice:vendor-id, object property in GdkDevice GdkDevicePad, struct in GdkDevicePad GdkDevicePadFeature, enum in GdkDevicePad GdkDeviceTool, struct in GdkDevice GdkDeviceTool:axes, object property in GdkDevice GdkDeviceTool:hardware-id, object property in GdkDevice GdkDeviceTool:serial, object property in GdkDevice GdkDeviceTool:tool-type, object property in GdkDevice GdkDeviceToolType, enum in GdkDevice gdk_device_get_caps_lock_state, function in GdkDevice gdk_device_get_device_tool, function in GdkDevice gdk_device_get_direction, function in GdkDevice gdk_device_get_display, function in GdkDevice gdk_device_get_has_cursor, function in GdkDevice gdk_device_get_modifier_state, function in GdkDevice gdk_device_get_name, function in GdkDevice gdk_device_get_num_lock_state, function in GdkDevice gdk_device_get_num_touches, function in GdkDevice gdk_device_get_product_id, function in GdkDevice gdk_device_get_scroll_lock_state, function in GdkDevice gdk_device_get_seat, function in GdkDevice gdk_device_get_source, function in GdkDevice gdk_device_get_surface_at_position, function in GdkDevice gdk_device_get_vendor_id, function in GdkDevice gdk_device_has_bidi_layouts, function in GdkDevice gdk_device_pad_get_feature_group, function in GdkDevicePad gdk_device_pad_get_group_n_modes, function in GdkDevicePad gdk_device_pad_get_n_features, function in GdkDevicePad gdk_device_pad_get_n_groups, function in GdkDevicePad gdk_device_tool_get_axes, function in GdkDevice gdk_device_tool_get_hardware_id, function in GdkDevice gdk_device_tool_get_serial, function in GdkDevice gdk_device_tool_get_tool_type, function in GdkDevice GDK_DISABLE_DEPRECATION_WARNINGS, macro in General GdkDisplay, struct in GdkDisplay GdkDisplay::closed, object signal in GdkDisplay GdkDisplay::opened, object signal in GdkDisplay GdkDisplay::seat-added, object signal in GdkDisplay GdkDisplay::seat-removed, object signal in GdkDisplay GdkDisplay::setting-changed, object signal in GdkDisplay GdkDisplay:composited, object property in GdkDisplay GdkDisplay:input-shapes, object property in GdkDisplay GdkDisplay:rgba, object property in GdkDisplay GdkDisplayManager, struct in GdkDisplayManager GdkDisplayManager::display-opened, object signal in GdkDisplayManager GdkDisplayManager:default-display, object property in GdkDisplayManager gdk_display_beep, function in GdkDisplay gdk_display_close, function in GdkDisplay gdk_display_device_is_grabbed, function in GdkDisplay gdk_display_flush, function in GdkDisplay gdk_display_get_app_launch_context, function in GdkDisplay gdk_display_get_clipboard, function in GdkDisplay gdk_display_get_default, function in GdkDisplay gdk_display_get_default_seat, function in GdkDisplay gdk_display_get_monitors, function in GdkDisplay gdk_display_get_monitor_at_surface, function in GdkDisplay gdk_display_get_name, function in GdkDisplay gdk_display_get_primary_clipboard, function in GdkDisplay gdk_display_get_setting, function in GdkDisplay gdk_display_get_startup_notification_id, function in GdkDisplay gdk_display_is_closed, function in GdkDisplay gdk_display_is_composited, function in GdkDisplay gdk_display_is_rgba, function in GdkDisplay gdk_display_list_seats, function in GdkDisplay gdk_display_manager_get, function in GdkDisplayManager gdk_display_manager_get_default_display, function in GdkDisplayManager gdk_display_manager_list_displays, function in GdkDisplayManager gdk_display_manager_open_display, function in GdkDisplayManager gdk_display_manager_set_default_display, function in GdkDisplayManager gdk_display_map_keycode, function in GdkDisplay gdk_display_map_keyval, function in GdkDisplay gdk_display_notify_startup_complete, function in GdkDisplay gdk_display_open, function in GdkDisplay gdk_display_put_event, function in GdkDisplay gdk_display_supports_input_shapes, function in GdkDisplay gdk_display_sync, function in GdkDisplay gdk_display_translate_key, function in GdkDisplay GDK_DISPLAY_XDISPLAY, macro in X Window System Interaction GdkDNDEvent, struct in Events gdk_dnd_event_get_drop, function in Events GdkDrag, struct in Drag and Drop GdkDrag::cancel, object signal in Drag and Drop GdkDrag::dnd-finished, object signal in Drag and Drop GdkDrag::drop-performed, object signal in Drag and Drop GdkDrag:actions, object property in Drag and Drop GdkDrag:content, object property in Drag and Drop GdkDrag:device, object property in Drag and Drop GdkDrag:display, object property in Drag and Drop GdkDrag:formats, object property in Drag and Drop GdkDrag:selected-action, object property in Drag and Drop GdkDrag:surface, object property in Drag and Drop GdkDragAction, enum in Drag and Drop GdkDragCancelReason, enum in Drag and Drop GdkDragSurface, struct in Drag and Drop GdkDragSurfaceInterface, struct in Drag and Drop gdk_drag_action_is_unique, function in Drag and Drop gdk_drag_begin, function in Drag and Drop gdk_drag_drop_done, function in Drag and Drop gdk_drag_get_actions, function in Drag and Drop gdk_drag_get_content, function in Drag and Drop gdk_drag_get_device, function in Drag and Drop gdk_drag_get_display, function in Drag and Drop gdk_drag_get_drag_surface, function in Drag and Drop gdk_drag_get_formats, function in Drag and Drop gdk_drag_get_selected_action, function in Drag and Drop gdk_drag_get_surface, function in Drag and Drop gdk_drag_set_hotspot, function in Drag and Drop gdk_drag_surface_present, function in Drag and Drop GdkDrawContext, struct in GdkDrawContext gdk_draw_context_begin_frame, function in GdkDrawContext gdk_draw_context_end_frame, function in GdkDrawContext gdk_draw_context_get_display, function in GdkDrawContext gdk_draw_context_get_frame_region, function in GdkDrawContext gdk_draw_context_get_surface, function in GdkDrawContext gdk_draw_context_is_in_frame, function in GdkDrawContext GdkDrop, struct in Drag and Drop GdkDrop:actions, object property in Drag and Drop GdkDrop:device, object property in Drag and Drop GdkDrop:display, object property in Drag and Drop GdkDrop:drag, object property in Drag and Drop GdkDrop:formats, object property in Drag and Drop GdkDrop:surface, object property in Drag and Drop gdk_drop_finish, function in Drag and Drop gdk_drop_get_actions, function in Drag and Drop gdk_drop_get_device, function in Drag and Drop gdk_drop_get_display, function in Drag and Drop gdk_drop_get_drag, function in Drag and Drop gdk_drop_get_formats, function in Drag and Drop gdk_drop_get_surface, function in Drag and Drop gdk_drop_read_async, function in Drag and Drop gdk_drop_read_finish, function in Drag and Drop gdk_drop_read_value_async, function in Drag and Drop gdk_drop_read_value_finish, function in Drag and Drop gdk_drop_status, function in Drag and Drop E GdkEvent, struct in Events GdkEventSequence, struct in Events gdk_events_get_angle, function in Events gdk_events_get_center, function in Events gdk_events_get_distance, function in Events GdkEventType, enum in Events gdk_event_get_axes, function in Events gdk_event_get_axis, function in Events gdk_event_get_device, function in Events gdk_event_get_device_tool, function in Events gdk_event_get_display, function in Events gdk_event_get_event_sequence, function in Events gdk_event_get_event_type, function in Events gdk_event_get_history, function in Events gdk_event_get_modifier_state, function in Events gdk_event_get_pointer_emulated, function in Events gdk_event_get_position, function in Events gdk_event_get_seat, function in Events gdk_event_get_surface, function in Events gdk_event_get_time, function in Events GDK_EVENT_PROPAGATE, macro in Events gdk_event_ref, function in Events GDK_EVENT_STOP, macro in Events gdk_event_triggers_context_menu, function in Events gdk_event_unref, function in Events F GdkFocusEvent, struct in Events gdk_focus_event_get_in, function in Events GdkFrameClock, struct in GdkFrameClock GdkFrameClock::after-paint, object signal in GdkFrameClock GdkFrameClock::before-paint, object signal in GdkFrameClock GdkFrameClock::flush-events, object signal in GdkFrameClock GdkFrameClock::layout, object signal in GdkFrameClock GdkFrameClock::paint, object signal in GdkFrameClock GdkFrameClock::resume-events, object signal in GdkFrameClock GdkFrameClock::update, object signal in GdkFrameClock GdkFrameClockPhase, enum in GdkFrameClock GdkFrameTimings, struct in GdkFrameTimings gdk_frame_clock_begin_updating, function in GdkFrameClock gdk_frame_clock_end_updating, function in GdkFrameClock gdk_frame_clock_get_current_timings, function in GdkFrameClock gdk_frame_clock_get_fps, function in GdkFrameClock gdk_frame_clock_get_frame_counter, function in GdkFrameClock gdk_frame_clock_get_frame_time, function in GdkFrameClock gdk_frame_clock_get_history_start, function in GdkFrameClock gdk_frame_clock_get_refresh_info, function in GdkFrameClock gdk_frame_clock_get_timings, function in GdkFrameClock gdk_frame_clock_request_phase, function in GdkFrameClock gdk_frame_timings_get_complete, function in GdkFrameTimings gdk_frame_timings_get_frame_counter, function in GdkFrameTimings gdk_frame_timings_get_frame_time, function in GdkFrameTimings gdk_frame_timings_get_predicted_presentation_time, function in GdkFrameTimings gdk_frame_timings_get_presentation_time, function in GdkFrameTimings gdk_frame_timings_get_refresh_interval, function in GdkFrameTimings gdk_frame_timings_ref, function in GdkFrameTimings gdk_frame_timings_unref, function in GdkFrameTimings GdkFullscreenMode, enum in GdkToplevel G GdkGLContext, struct in GdkGLContext GdkGLContext:shared-context, object property in GdkGLContext GdkGLError, enum in GdkGLContext GdkGLTexture, struct in Textures gdk_gl_context_clear_current, function in GdkGLContext gdk_gl_context_get_current, function in GdkGLContext gdk_gl_context_get_debug_enabled, function in GdkGLContext gdk_gl_context_get_display, function in GdkGLContext gdk_gl_context_get_forward_compatible, function in GdkGLContext gdk_gl_context_get_required_version, function in GdkGLContext gdk_gl_context_get_shared_context, function in GdkGLContext gdk_gl_context_get_surface, function in GdkGLContext gdk_gl_context_get_use_es, function in GdkGLContext gdk_gl_context_get_version, function in GdkGLContext gdk_gl_context_is_legacy, function in GdkGLContext gdk_gl_context_make_current, function in GdkGLContext gdk_gl_context_realize, function in GdkGLContext gdk_gl_context_set_debug_enabled, function in GdkGLContext gdk_gl_context_set_forward_compatible, function in GdkGLContext gdk_gl_context_set_required_version, function in GdkGLContext gdk_gl_context_set_use_es, function in GdkGLContext gdk_gl_texture_new, function in Textures gdk_gl_texture_release, function in Textures GdkGrabBrokenEvent, struct in Events gdk_grab_broken_event_get_grab_surface, function in Events gdk_grab_broken_event_get_implicit, function in Events GdkGravity, enum in GdkSurface I GdkInputSource, enum in GdkDevice gdk_intern_mime_type, function in Content Formats K GdkKeyEvent, struct in Events GdkKeymapKey, struct in Events GdkKeyMatch, enum in Events gdk_keyval_convert_case, function in Keyboard Handling gdk_keyval_from_name, function in Keyboard Handling gdk_keyval_is_lower, function in Keyboard Handling gdk_keyval_is_upper, function in Keyboard Handling gdk_keyval_name, function in Keyboard Handling gdk_keyval_to_lower, function in Keyboard Handling gdk_keyval_to_unicode, function in Keyboard Handling gdk_keyval_to_upper, function in Keyboard Handling gdk_key_event_get_consumed_modifiers, function in Events gdk_key_event_get_keycode, function in Events gdk_key_event_get_keyval, function in Events gdk_key_event_get_layout, function in Events gdk_key_event_get_level, function in Events gdk_key_event_get_match, function in Events gdk_key_event_is_modifier, function in Events gdk_key_event_matches, function in Events M GDK_MAJOR_VERSION, macro in General GdkMemoryFormat, enum in Textures GdkMemoryTexture, struct in Textures GDK_MEMORY_DEFAULT, macro in Textures gdk_memory_texture_new, function in Textures GDK_MICRO_VERSION, macro in General GDK_MINOR_VERSION, macro in General GdkModifierType, enum in GdkSurface GDK_MODIFIER_MASK, macro in GdkSurface GdkMonitor, struct in GdkMonitor GdkMonitor::invalidate, object signal in GdkMonitor GdkMonitor:connector, object property in GdkMonitor GdkMonitor:display, object property in GdkMonitor GdkMonitor:geometry, object property in GdkMonitor GdkMonitor:height-mm, object property in GdkMonitor GdkMonitor:manufacturer, object property in GdkMonitor GdkMonitor:model, object property in GdkMonitor GdkMonitor:refresh-rate, object property in GdkMonitor GdkMonitor:scale-factor, object property in GdkMonitor GdkMonitor:subpixel-layout, object property in GdkMonitor GdkMonitor:valid, object property in GdkMonitor GdkMonitor:width-mm, object property in GdkMonitor gdk_monitor_get_connector, function in GdkMonitor gdk_monitor_get_display, function in GdkMonitor gdk_monitor_get_geometry, function in GdkMonitor gdk_monitor_get_height_mm, function in GdkMonitor gdk_monitor_get_manufacturer, function in GdkMonitor gdk_monitor_get_model, function in GdkMonitor gdk_monitor_get_refresh_rate, function in GdkMonitor gdk_monitor_get_scale_factor, function in GdkMonitor gdk_monitor_get_subpixel_layout, function in GdkMonitor gdk_monitor_get_width_mm, function in GdkMonitor gdk_monitor_is_valid, function in GdkMonitor GdkMotionEvent, struct in Events N GdkNotifyType, enum in Events P GdkPadEvent, struct in Events gdk_pad_event_get_axis_value, function in Events gdk_pad_event_get_button, function in Events gdk_pad_event_get_group_mode, function in Events GdkPaintable, struct in GdkPaintable GdkPaintable::invalidate-contents, object signal in GdkPaintable GdkPaintable::invalidate-size, object signal in GdkPaintable GdkPaintableFlags, enum in GdkPaintable GdkPaintableInterface, struct in GdkPaintable gdk_paintable_compute_concrete_size, function in GdkPaintable gdk_paintable_get_current_image, function in GdkPaintable gdk_paintable_get_flags, function in GdkPaintable gdk_paintable_get_intrinsic_aspect_ratio, function in GdkPaintable gdk_paintable_get_intrinsic_height, function in GdkPaintable gdk_paintable_get_intrinsic_width, function in GdkPaintable gdk_paintable_invalidate_contents, function in GdkPaintable gdk_paintable_invalidate_size, function in GdkPaintable gdk_paintable_new_empty, function in GdkPaintable gdk_paintable_snapshot, function in GdkPaintable gdk_pango_layout_get_clip_region, function in Pango Interaction gdk_pango_layout_line_get_clip_region, function in Pango Interaction gdk_pixbuf_get_from_surface, function in Pixbufs gdk_pixbuf_get_from_texture, function in Pixbufs GDK_POINTER_TO_XID, macro in X Window System Interaction GdkPopup, struct in GdkPopup GdkPopup:autohide, object property in GdkPopup GdkPopup:parent, object property in GdkPopup GdkPopupLayout, struct in GdkPopupLayout gdk_popup_get_autohide, function in GdkPopup gdk_popup_get_parent, function in GdkPopup gdk_popup_get_position_x, function in GdkPopup gdk_popup_get_position_y, function in GdkPopup gdk_popup_get_rect_anchor, function in GdkPopup gdk_popup_get_surface_anchor, function in GdkPopup gdk_popup_layout_copy, function in GdkPopupLayout gdk_popup_layout_equal, function in GdkPopupLayout gdk_popup_layout_get_anchor_hints, function in GdkPopupLayout gdk_popup_layout_get_anchor_rect, function in GdkPopupLayout gdk_popup_layout_get_offset, function in GdkPopupLayout gdk_popup_layout_get_rect_anchor, function in GdkPopupLayout gdk_popup_layout_get_surface_anchor, function in GdkPopupLayout gdk_popup_layout_new, function in GdkPopupLayout gdk_popup_layout_ref, function in GdkPopupLayout gdk_popup_layout_set_anchor_hints, function in GdkPopupLayout gdk_popup_layout_set_anchor_rect, function in GdkPopupLayout gdk_popup_layout_set_offset, function in GdkPopupLayout gdk_popup_layout_set_rect_anchor, function in GdkPopupLayout gdk_popup_layout_set_surface_anchor, function in GdkPopupLayout gdk_popup_layout_unref, function in GdkPopupLayout gdk_popup_present, function in GdkPopup GDK_PRIORITY_EVENTS, macro in Events GDK_PRIORITY_REDRAW, macro in Events GdkProximityEvent, struct in Events R GdkRectangle, struct in Rectangles and Regions gdk_rectangle_contains_point, function in Rectangles and Regions gdk_rectangle_equal, function in Rectangles and Regions gdk_rectangle_intersect, function in Rectangles and Regions gdk_rectangle_union, function in Rectangles and Regions GdkRGBA, struct in RGBA Colors gdk_rgba_copy, function in RGBA Colors gdk_rgba_equal, function in RGBA Colors gdk_rgba_free, function in RGBA Colors gdk_rgba_hash, function in RGBA Colors gdk_rgba_is_clear, function in RGBA Colors gdk_rgba_is_opaque, function in RGBA Colors gdk_rgba_parse, function in RGBA Colors gdk_rgba_to_string, function in RGBA Colors S GdkScrollDirection, enum in Events GdkScrollEvent, struct in Events gdk_scroll_event_get_deltas, function in Events gdk_scroll_event_get_direction, function in Events gdk_scroll_event_is_stop, function in Events GdkSeat, struct in GdkSeat GdkSeat::device-added, object signal in GdkSeat GdkSeat::device-removed, object signal in GdkSeat GdkSeat::tool-added, object signal in GdkSeat GdkSeat::tool-removed, object signal in GdkSeat GdkSeat:display, object property in GdkSeat GdkSeatCapabilities, enum in GdkSeat gdk_seat_get_capabilities, function in GdkSeat gdk_seat_get_devices, function in GdkSeat gdk_seat_get_display, function in GdkSeat gdk_seat_get_keyboard, function in GdkSeat gdk_seat_get_pointer, function in GdkSeat gdk_seat_get_tools, function in GdkSeat gdk_set_allowed_backends, function in GdkDisplayManager GdkSnapshot, struct in GdkPaintable GdkSubpixelLayout, enum in GdkMonitor GdkSurface, struct in GdkSurface GdkSurface::enter-monitor, object signal in GdkSurface GdkSurface::event, object signal in GdkSurface GdkSurface::layout, object signal in GdkSurface GdkSurface::leave-monitor, object signal in GdkSurface GdkSurface::render, object signal in GdkSurface GdkSurface:cursor, object property in GdkSurface GdkSurface:display, object property in GdkSurface GdkSurface:frame-clock, object property in GdkSurface GdkSurface:height, object property in GdkSurface GdkSurface:mapped, object property in GdkSurface GdkSurface:scale-factor, object property in GdkSurface GdkSurface:width, object property in GdkSurface GdkSurfaceEdge, enum in GdkToplevel gdk_surface_beep, function in GdkSurface gdk_surface_create_cairo_context, function in GdkSurface gdk_surface_create_gl_context, function in GdkSurface gdk_surface_create_similar_surface, function in Cairo Interaction gdk_surface_create_vulkan_context, function in GdkSurface gdk_surface_destroy, function in GdkSurface gdk_surface_get_cursor, function in GdkSurface gdk_surface_get_device_cursor, function in GdkSurface gdk_surface_get_device_position, function in GdkSurface gdk_surface_get_display, function in GdkSurface gdk_surface_get_frame_clock, function in GdkSurface gdk_surface_get_height, function in GdkSurface gdk_surface_get_mapped, function in GdkSurface gdk_surface_get_scale_factor, function in GdkSurface gdk_surface_get_width, function in GdkSurface gdk_surface_hide, function in GdkSurface gdk_surface_is_destroyed, function in GdkSurface gdk_surface_new_popup, function in GdkSurface gdk_surface_new_toplevel, function in GdkSurface gdk_surface_queue_render, function in GdkSurface gdk_surface_request_layout, function in GdkSurface gdk_surface_set_cursor, function in GdkSurface gdk_surface_set_device_cursor, function in GdkSurface gdk_surface_set_input_region, function in GdkSurface gdk_surface_set_opaque_region, function in GdkSurface gdk_surface_translate_coordinates, function in GdkSurface GDK_SURFACE_XID, macro in X Window System Interaction T GdkTexture, struct in Textures GdkTexture:height, object property in Textures GdkTexture:width, object property in Textures gdk_texture_download, function in Textures gdk_texture_get_height, function in Textures gdk_texture_get_width, function in Textures gdk_texture_new_for_pixbuf, function in Textures gdk_texture_new_from_file, function in Textures gdk_texture_new_from_resource, function in Textures gdk_texture_save_to_png, function in Textures GdkTimeCoord, struct in GdkDevice GdkToplevel, struct in GdkToplevel GdkToplevel::compute-size, object signal in GdkToplevel GdkToplevel:decorated, object property in GdkToplevel GdkToplevel:deletable, object property in GdkToplevel GdkToplevel:fullscreen-mode, object property in GdkToplevel GdkToplevel:icon-list, object property in GdkToplevel GdkToplevel:modal, object property in GdkToplevel GdkToplevel:shortcuts-inhibited, object property in GdkToplevel GdkToplevel:startup-id, object property in GdkToplevel GdkToplevel:state, object property in GdkToplevel GdkToplevel:title, object property in GdkToplevel GdkToplevel:transient-for, object property in GdkToplevel GdkToplevelLayout, struct in GdkToplevelLayout GdkToplevelSize, struct in GdkToplevelSize GdkToplevelState, enum in GdkToplevel gdk_toplevel_begin_move, function in GdkToplevel gdk_toplevel_begin_resize, function in GdkToplevel gdk_toplevel_focus, function in GdkToplevel gdk_toplevel_get_state, function in GdkToplevel gdk_toplevel_inhibit_system_shortcuts, function in GdkToplevel gdk_toplevel_layout_copy, function in GdkToplevelLayout gdk_toplevel_layout_equal, function in GdkToplevelLayout gdk_toplevel_layout_get_fullscreen, function in GdkToplevelLayout gdk_toplevel_layout_get_fullscreen_monitor, function in GdkToplevelLayout gdk_toplevel_layout_get_maximized, function in GdkToplevelLayout gdk_toplevel_layout_get_resizable, function in GdkToplevelLayout gdk_toplevel_layout_new, function in GdkToplevelLayout gdk_toplevel_layout_ref, function in GdkToplevelLayout gdk_toplevel_layout_set_fullscreen, function in GdkToplevelLayout gdk_toplevel_layout_set_maximized, function in GdkToplevelLayout gdk_toplevel_layout_set_resizable, function in GdkToplevelLayout gdk_toplevel_layout_unref, function in GdkToplevelLayout gdk_toplevel_lower, function in GdkToplevel gdk_toplevel_minimize, function in GdkToplevel gdk_toplevel_present, function in GdkToplevel gdk_toplevel_restore_system_shortcuts, function in GdkToplevel gdk_toplevel_set_decorated, function in GdkToplevel gdk_toplevel_set_deletable, function in GdkToplevel gdk_toplevel_set_icon_list, function in GdkToplevel gdk_toplevel_set_modal, function in GdkToplevel gdk_toplevel_set_startup_id, function in GdkToplevel gdk_toplevel_set_title, function in GdkToplevel gdk_toplevel_set_transient_for, function in GdkToplevel gdk_toplevel_show_window_menu, function in GdkToplevel gdk_toplevel_size_get_bounds, function in GdkToplevelSize gdk_toplevel_size_set_min_size, function in GdkToplevelSize gdk_toplevel_size_set_shadow_width, function in GdkToplevelSize gdk_toplevel_size_set_size, function in GdkToplevelSize gdk_toplevel_supports_edge_constraints, function in GdkToplevel GdkTouchEvent, struct in Events GdkTouchpadEvent, struct in Events GdkTouchpadGesturePhase, enum in Events gdk_touchpad_event_get_deltas, function in Events gdk_touchpad_event_get_gesture_phase, function in Events gdk_touchpad_event_get_n_fingers, function in Events gdk_touchpad_event_get_pinch_angle_delta, function in Events gdk_touchpad_event_get_pinch_scale, function in Events gdk_touch_event_get_emulating_pointer, function in Events U gdk_unicode_to_keyval, function in Keyboard Handling V GDK_VERSION_4_0, macro in General GDK_VERSION_MAX_ALLOWED, macro in General GDK_VERSION_MIN_REQUIRED, macro in General GdkVulkanContext, struct in GdkVulkanContext GdkVulkanContext::images-updated, object signal in GdkVulkanContext GdkVulkanError, enum in GdkVulkanContext gdk_vulkan_context_get_device, function in GdkVulkanContext gdk_vulkan_context_get_draw_index, function in GdkVulkanContext gdk_vulkan_context_get_draw_semaphore, function in GdkVulkanContext gdk_vulkan_context_get_image, function in GdkVulkanContext gdk_vulkan_context_get_image_format, function in GdkVulkanContext gdk_vulkan_context_get_instance, function in GdkVulkanContext gdk_vulkan_context_get_n_images, function in GdkVulkanContext gdk_vulkan_context_get_physical_device, function in GdkVulkanContext gdk_vulkan_context_get_queue, function in GdkVulkanContext gdk_vulkan_context_get_queue_family_index, function in GdkVulkanContext W GdkWaylandToplevelExported, user_function in Wayland Interaction gdk_wayland_device_get_node_path, function in Wayland Interaction gdk_wayland_device_get_wl_keyboard, function in Wayland Interaction gdk_wayland_device_get_wl_pointer, function in Wayland Interaction gdk_wayland_device_get_wl_seat, function in Wayland Interaction gdk_wayland_display_get_startup_notification_id, function in Wayland Interaction gdk_wayland_display_get_wl_compositor, function in Wayland Interaction gdk_wayland_display_get_wl_display, function in Wayland Interaction gdk_wayland_display_query_registry, function in Wayland Interaction gdk_wayland_display_set_cursor_theme, function in Wayland Interaction gdk_wayland_display_set_startup_notification_id, function in Wayland Interaction gdk_wayland_monitor_get_wl_output, function in Wayland Interaction gdk_wayland_seat_get_wl_seat, function in Wayland Interaction gdk_wayland_surface_get_wl_surface, function in Wayland Interaction gdk_wayland_toplevel_export_handle, function in Wayland Interaction gdk_wayland_toplevel_set_application_id, function in Wayland Interaction gdk_wayland_toplevel_set_transient_for_exported, function in Wayland Interaction gdk_wayland_toplevel_unexport_handle, function in Wayland Interaction GDK_WINDOWING_MACOS, macro in General GDK_WINDOWING_WAYLAND, macro in General GDK_WINDOWING_WIN32, macro in General GDK_WINDOWING_X11, macro in General X gdk_x11_device_get_id, function in X Window System Interaction gdk_x11_device_manager_lookup, function in X Window System Interaction gdk_x11_display_broadcast_startup_message, function in X Window System Interaction gdk_x11_display_error_trap_pop, function in X Window System Interaction gdk_x11_display_error_trap_pop_ignored, function in X Window System Interaction gdk_x11_display_error_trap_push, function in X Window System Interaction gdk_x11_display_get_default_group, function in X Window System Interaction gdk_x11_display_get_glx_version, function in X Window System Interaction gdk_x11_display_get_primary_monitor, function in X Window System Interaction gdk_x11_display_get_screen, function in X Window System Interaction gdk_x11_display_get_startup_notification_id, function in X Window System Interaction gdk_x11_display_get_user_time, function in X Window System Interaction gdk_x11_display_get_xcursor, function in X Window System Interaction gdk_x11_display_get_xdisplay, function in X Window System Interaction gdk_x11_display_get_xrootwindow, function in X Window System Interaction gdk_x11_display_get_xscreen, function in X Window System Interaction gdk_x11_display_grab, function in X Window System Interaction gdk_x11_display_open, function in X Window System Interaction gdk_x11_display_set_cursor_theme, function in X Window System Interaction gdk_x11_display_set_program_class, function in X Window System Interaction gdk_x11_display_set_startup_notification_id, function in X Window System Interaction gdk_x11_display_set_surface_scale, function in X Window System Interaction gdk_x11_display_string_to_compound_text, function in X Window System Interaction gdk_x11_display_text_property_to_text_list, function in X Window System Interaction gdk_x11_display_ungrab, function in X Window System Interaction gdk_x11_display_utf8_to_compound_text, function in X Window System Interaction gdk_x11_free_compound_text, function in X Window System Interaction gdk_x11_free_text_list, function in X Window System Interaction gdk_x11_get_server_time, function in X Window System Interaction gdk_x11_get_xatom_by_name_for_display, function in X Window System Interaction gdk_x11_get_xatom_name_for_display, function in X Window System Interaction gdk_x11_lookup_xdisplay, function in X Window System Interaction gdk_x11_monitor_get_output, function in X Window System Interaction gdk_x11_monitor_get_workarea, function in X Window System Interaction gdk_x11_screen_get_current_desktop, function in X Window System Interaction gdk_x11_screen_get_monitor_output, function in X Window System Interaction gdk_x11_screen_get_number_of_desktops, function in X Window System Interaction gdk_x11_screen_get_screen_number, function in X Window System Interaction gdk_x11_screen_get_window_manager_name, function in X Window System Interaction gdk_x11_screen_get_xscreen, function in X Window System Interaction gdk_x11_screen_supports_net_wm_hint, function in X Window System Interaction gdk_x11_set_sm_client_id, function in X Window System Interaction gdk_x11_surface_get_desktop, function in X Window System Interaction gdk_x11_surface_get_group, function in X Window System Interaction gdk_x11_surface_get_xid, function in X Window System Interaction gdk_x11_surface_lookup_for_display, function in X Window System Interaction gdk_x11_surface_move_to_current_desktop, function in X Window System Interaction gdk_x11_surface_move_to_desktop, function in X Window System Interaction gdk_x11_surface_set_frame_sync_enabled, function in X Window System Interaction gdk_x11_surface_set_group, function in X Window System Interaction gdk_x11_surface_set_skip_pager_hint, function in X Window System Interaction gdk_x11_surface_set_skip_taskbar_hint, function in X Window System Interaction gdk_x11_surface_set_theme_variant, function in X Window System Interaction gdk_x11_surface_set_urgency_hint, function in X Window System Interaction gdk_x11_surface_set_user_time, function in X Window System Interaction gdk_x11_surface_set_utf8_property, function in X Window System Interaction GDK_XID_TO_POINTER, macro in X Window System Interaction docs/reference/gdk/xml/api-index-deprecated.xml0000664000175000017500000000052614010071747021643 0ustar mclasenmclasen ]> docs/reference/gdk/xml/annotation-glossary.xml0000664000175000017500000001101114010071747021671 0ustar mclasenmclasen ]> Annotation Glossary A allow-none NULL is OK, both for passing and for returning. array Parameter points to an array of items. C closure This parameter is a 'user_data', for callbacks; many bindings can pass NULL here. constructor This symbol is a constructor, not a static method. E element-type Generics and defining elements of containers and arrays. N not nullable NULL must not be passed as the value in, out, in-out; or as a return value. nullable NULL may be passed as the value in, out, in-out; or as a return value. O optional NULL may be passed instead of a pointer to a location. out Parameter for returning results. Default is transfer full. out caller-allocates Out parameter, where caller must allocate storage. R rename-to Rename the original symbol's name to SYMBOL. S scope async The callback is valid until first called. skip Exposed in C code, not necessarily available in other languages. T transfer container Free data container after the code is done. transfer full Free data after the code is done. transfer none Don't free data after the code is done. type Override the parsed C type with given type. docs/reference/gdk/gdk4-undocumented.txt0000664000175000017500000000013314010071747020421 0ustar mclasenmclasen100% symbol docs coverage. 834 symbols documented. 0 symbols incomplete. 0 not documented. docs/reference/gdk/gdk4-undeclared.txt0000664000175000017500000000000014010071747020026 0ustar mclasenmclasendocs/reference/gdk/gdk4-unused.txt0000664000175000017500000000314614010071747017241 0ustar mclasenmclasenGDK_IS_WAYLAND_MONITOR GDK_IS_WAYLAND_POPUP GDK_IS_WAYLAND_SEAT GDK_IS_WAYLAND_TOPLEVEL GDK_IS_X11_SCREEN GDK_IS_X11_SCREEN_CLASS GDK_SURFACE_XDISPLAY GDK_TYPE_ANCHOR_HINTS GDK_TYPE_CONTENT_FORMATS GDK_TYPE_CONTENT_FORMATS_BUILDER GDK_TYPE_CONTENT_PROVIDER GDK_TYPE_DEVICE_PAD_FEATURE GDK_TYPE_DEVICE_TOOL GDK_TYPE_DEVICE_TOOL_TYPE GDK_TYPE_DRAG_CANCEL_REASON GDK_TYPE_EVENT_SEQUENCE GDK_TYPE_FRAME_CLOCK GDK_TYPE_FRAME_CLOCK_PHASE GDK_TYPE_FULLSCREEN_MODE GDK_TYPE_KEY_MATCH GDK_TYPE_MEMORY_FORMAT GDK_TYPE_PAINTABLE_FLAGS GDK_TYPE_RECTANGLE GDK_TYPE_SUBPIXEL_LAYOUT GDK_TYPE_TOUCHPAD_GESTURE_PHASE GDK_TYPE_VULKAN_ERROR GDK_TYPE_WAYLAND_GL_CONTEXT GDK_TYPE_WAYLAND_MONITOR GDK_TYPE_WAYLAND_POPUP GDK_TYPE_WAYLAND_SEAT GDK_TYPE_WAYLAND_TOPLEVEL GDK_TYPE_X11_SCREEN GDK_WAYLAND_GL_CONTEXT GDK_WAYLAND_IS_GL_CONTEXT GDK_WAYLAND_MONITOR GDK_WAYLAND_POPUP GDK_WAYLAND_SEAT GDK_WAYLAND_TOPLEVEL GDK_X11_DRAG_CLASS GDK_X11_DRAG_GET_CLASS GDK_X11_IS_GL_CONTEXT GDK_X11_SCREEN GDK_X11_SCREEN_CLASS GDK_X11_SCREEN_GET_CLASS GdkDrawingContext GdkWaylandDevice GdkWaylandDeviceClass GdkWaylandDisplay GdkWaylandDisplayClass GdkWaylandGLContext GdkWaylandGLContextClass GdkWaylandMonitor GdkWaylandMonitorClass GdkWaylandPopup GdkWaylandSeat GdkWaylandSeatClass GdkWaylandSurface GdkWaylandToplevel GdkX11AppLaunchContext GdkX11AppLaunchContextClass GdkX11DeviceManagerXI2 GdkX11DeviceManagerXI2Class GdkX11DeviceType GdkX11DeviceXI2 GdkX11DeviceXI2Class GdkX11Display GdkX11DisplayClass GdkX11Drag GdkX11DragClass GdkX11GLContext GdkX11GLContextClass GdkX11Monitor GdkX11MonitorClass GdkX11Screen GdkX11ScreenClass GdkX11Surface GdkX11SurfaceClass docs/reference/gdk/sgml.stamp0000664000175000017500000000001114010071747016342 0ustar mclasenmclasentimestampdocs/reference/gdk/html.stamp0000664000175000017500000000001114010071760016337 0ustar mclasenmclasentimestamp