Class: Gtk::GLArea
Overview
The GtkGLAreaClass structure contains only private data.
Instance Method Summary collapse
-
#allowed_apis ⇒ Gdk::GLAPI
The allowed APIs.
-
#allowed_apis=(allowed_apis) ⇒ Gdk::GLAPI
The allowed APIs.
-
#api ⇒ Gdk::GLAPI
The API currently in use.
-
#api=(api) ⇒ Gdk::GLAPI
The API currently in use.
-
#attach_buffers ⇒ nil
Binds buffers to the framebuffer.
-
#auto_render ⇒ Boolean
Returns whether the area is in auto render mode or not.
-
#auto_render=(auto_render) ⇒ Boolean
If set to true the ::render signal will be emitted every time the widget draws.
-
#auto_render? ⇒ Boolean
If set to true the ::render signal will be emitted every time the widget draws.
-
#context ⇒ Gdk::GLContext
The
GdkGLContextused by theGtkGLAreawidget. -
#context=(context) ⇒ Gdk::GLContext
The
GdkGLContextused by theGtkGLAreawidget. -
#error ⇒ GLib::Error
Gets the current error set on the area.
-
#error=(error) ⇒ nil
Sets an error on the area which will be shown instead of the GL rendering.
-
#get_required_version(major, minor) ⇒ nil
Retrieves the required version of OpenGL.
-
#has_depth_buffer ⇒ Boolean
Returns whether the area has a depth buffer.
-
#has_depth_buffer=(has_depth_buffer) ⇒ Boolean
If set to true the widget will allocate and enable a depth buffer for the target framebuffer.
-
#has_depth_buffer? ⇒ Boolean
If set to true the widget will allocate and enable a depth buffer for the target framebuffer.
-
#has_stencil_buffer ⇒ Boolean
Returns whether the area has a stencil buffer.
-
#has_stencil_buffer=(has_stencil_buffer) ⇒ Boolean
If set to true the widget will allocate and enable a stencil buffer for the target framebuffer.
-
#has_stencil_buffer? ⇒ Boolean
If set to true the widget will allocate and enable a stencil buffer for the target framebuffer.
-
#initialize ⇒ Gtk::Widget
constructor
Creates a new
GtkGLAreawidget. -
#make_current ⇒ nil
Ensures that the
GdkGLContextused by area is associated with theGtkGLArea. -
#queue_render ⇒ nil
Marks the currently rendered data (if any) as invalid, and queues a redraw of the widget.
-
#set_required_version(major, minor) ⇒ nil
Sets the required version of OpenGL to be used when creating the context for the widget.
-
#use_es ⇒ Boolean
Returns whether the
GtkGLAreashould use OpenGL ES. -
#use_es=(use_es) ⇒ Boolean
If set to true the widget will try to create a
GdkGLContextusing OpenGL ES instead of OpenGL. -
#use_es? ⇒ Boolean
If set to true the widget will try to create a
GdkGLContextusing OpenGL ES instead of OpenGL.
Methods inherited from Widget
#accessible_role, #accessible_role=, #action_set_enabled, #activate, #activate_action, #activate_action_variant, #activate_default, #activate_signal, #activate_signal=, #activate_signal_from_name=, #add_binding, #add_binding_action, #add_binding_signal, #add_controller, #add_css_class, #add_mnemonic_label, #add_shortcut, #add_tick_callback, #allocate, #allocated_baseline, #allocated_height, #allocated_width, #baseline, #bind_template_callback_full, #bind_template_child, #bind_template_child_full, #can_focus, #can_focus=, #can_focus?, #can_target, #can_target=, #can_target?, #child_focus, #child_visible, #child_visible=, #children, #clipboard, #compute_bounds, #compute_expand, #compute_point, #compute_transform, #contains, #create_pango_context, #create_pango_layout, #css_classes, #css_classes=, #css_name, #css_name=, #cursor, #cursor=, #cursor_from_name=, default_direction, default_direction=, #direction, #direction=, #display, #dispose_template, #drag_check_threshold, #error_bell, #first_child, #focus_child, #focus_child=, #focus_on_click, #focus_on_click=, #focus_on_click?, #focusable, #focusable=, #focusable?, #font_map, #font_map=, #font_options, #font_options=, #frame_clock, #get_allocation, #get_ancestor, #get_color, #get_preferred_size, #get_size, #get_size_request, #get_template_child, #grab_focus, #halign, #halign=, #has_css_class, #has_default, #has_default=, #has_default?, #has_focus, #has_focus=, #has_focus?, #has_tooltip, #has_tooltip=, #has_tooltip?, #has_visible_focus, have_template?, #height, #height_request, #height_request=, #hexpand, #hexpand=, #hexpand?, #hexpand_set, #hexpand_set=, #hexpand_set?, #hide, #in_destruction, #init_template, #insert_action_group, #insert_action_group_raw, #insert_after, #insert_before, #install_action, #install_property_action, #is_ancestor, #is_drawable, #is_focus, #is_sensitive, #is_visible, #keynav_failed, #last_child, #layout_manager, #layout_manager=, #layout_manager_type, #layout_manager_type=, #list_mnemonic_labels, #map, #mapped, #margin_bottom, #margin_bottom=, #margin_end, #margin_end=, #margin_start, #margin_start=, #margin_top, #margin_top=, #measure, #mnemonic_activate, #name, #name=, #native, #next_sibling, #observe_children, #observe_controllers, #opacity, #opacity=, #overflow, #overflow=, #pango_context, #parent, #parent=, #pick, #prev_sibling, #primary_clipboard, #query_action, #queue_allocate, #queue_draw, #queue_resize, #realize, #realized, #receives_default, #receives_default=, #receives_default?, #remove_controller, #remove_css_class, #remove_mnemonic_label, #remove_tick_callback, #request_mode, #root, #root=, #scale_factor, #scale_factor=, #sensitive, #sensitive=, #sensitive?, #set_size_request, #set_size_request_raw, #set_state_flags, #set_template, #set_template_raw, #settings, #should_layout, #show, #size_allocate, #snapshot_child, #state_flags, #style_context, #style_context_raw, #template=, template_children, #template_from_resource=, #template_scope=, #tooltip_markup, #tooltip_markup=, #tooltip_text, #tooltip_text=, #translate_coordinates, #translate_coordinates_raw, #trigger_tooltip_query, #unmap, #unparent, #unrealize, #unset_state_flags, #valign, #valign=, #vexpand, #vexpand=, #vexpand?, #vexpand_set, #vexpand_set=, #vexpand_set?, #visible, #visible=, #visible?, #width, #width_request, #width_request=
Constructor Details
#initialize ⇒ Gtk::Widget
Creates a new GtkGLArea widget.
Instance Method Details
#allowed_apis ⇒ Gdk::GLAPI
The allowed APIs.
#allowed_apis=(allowed_apis) ⇒ Gdk::GLAPI
The allowed APIs.
#api ⇒ Gdk::GLAPI
The API currently in use.
#api=(api) ⇒ Gdk::GLAPI
The API currently in use.
#attach_buffers ⇒ nil
Binds buffers to the framebuffer.
Ensures that the area framebuffer object is made the current draw and read target, and that all the required buffers for the area are created and bound to the framebuffer.
This function is automatically called before emitting the [signalGtk.GLArea::render] signal, and doesn't normally need to be called by application code.
#auto_render ⇒ Boolean
Returns whether the area is in auto render mode or not.
#auto_render=(auto_render) ⇒ Boolean
If set to true the ::render signal will be emitted every time the widget draws.
This is the default and is useful if drawing the widget is faster.
If set to false the data from previous rendering is kept around and will be used for drawing the widget the next time, unless the window is resized. In order to force a rendering [methodGtk.GLArea.queue_render] must be called. This mode is useful when the scene changes seldom, but takes a long time to redraw.
#auto_render? ⇒ Boolean
If set to true the ::render signal will be emitted every time the widget draws.
This is the default and is useful if drawing the widget is faster.
If set to false the data from previous rendering is kept around and will be used for drawing the widget the next time, unless the window is resized. In order to force a rendering [methodGtk.GLArea.queue_render] must be called. This mode is useful when the scene changes seldom, but takes a long time to redraw.
#context ⇒ Gdk::GLContext
The GdkGLContext used by the GtkGLArea widget.
The GtkGLArea widget is responsible for creating the GdkGLContext
instance. If you need to render with other kinds of buffers (stencil,
depth, etc), use render buffers.
#context=(context) ⇒ Gdk::GLContext
The GdkGLContext used by the GtkGLArea widget.
The GtkGLArea widget is responsible for creating the GdkGLContext
instance. If you need to render with other kinds of buffers (stencil,
depth, etc), use render buffers.
#error ⇒ GLib::Error
Gets the current error set on the area.
#error=(error) ⇒ nil
Sets an error on the area which will be shown instead of the GL rendering.
This is useful in the [signalGtk.GLArea::create-context] signal if GL context creation fails.
#get_required_version(major, minor) ⇒ nil
Retrieves the required version of OpenGL.
See [methodGtk.GLArea.set_required_version].
#has_depth_buffer ⇒ Boolean
Returns whether the area has a depth buffer.
#has_depth_buffer=(has_depth_buffer) ⇒ Boolean
If set to true the widget will allocate and enable a depth buffer for the target framebuffer.
Setting this property will enable GL's depth testing as a side effect. If
you don't need depth testing, you should call glDisable(GL_DEPTH_TEST)
in your GtkGLArea::render handler.
#has_depth_buffer? ⇒ Boolean
If set to true the widget will allocate and enable a depth buffer for the target framebuffer.
Setting this property will enable GL's depth testing as a side effect. If
you don't need depth testing, you should call glDisable(GL_DEPTH_TEST)
in your GtkGLArea::render handler.
#has_stencil_buffer ⇒ Boolean
Returns whether the area has a stencil buffer.
#has_stencil_buffer=(has_stencil_buffer) ⇒ Boolean
If set to true the widget will allocate and enable a stencil buffer for the target framebuffer.
#has_stencil_buffer? ⇒ Boolean
If set to true the widget will allocate and enable a stencil buffer for the target framebuffer.
#make_current ⇒ nil
Ensures that the GdkGLContext used by area is associated with
the GtkGLArea.
This function is automatically called before emitting the [signalGtk.GLArea::render] signal, and doesn't normally need to be called by application code.
#queue_render ⇒ nil
Marks the currently rendered data (if any) as invalid, and queues a redraw of the widget.
This ensures that the [signalGtk.GLArea::render] signal is emitted during the draw.
This is only needed when [methodGtk.GLArea.set_auto_render] has been called with a false value. The default behaviour is to emit [signalGtk.GLArea::render] on each draw.
#set_required_version(major, minor) ⇒ nil
Sets the required version of OpenGL to be used when creating the context for the widget.
This function must be called before the area has been realized.
#use_es ⇒ Boolean
Returns whether the GtkGLArea should use OpenGL ES.
See [methodGtk.GLArea.set_use_es].
#use_es=(use_es) ⇒ Boolean
If set to true the widget will try to create a GdkGLContext using
OpenGL ES instead of OpenGL.
#use_es? ⇒ Boolean
If set to true the widget will try to create a GdkGLContext using
OpenGL ES instead of OpenGL.