class Gdk::DrawContext
- Gdk::DrawContext
- GObject::Object
- Reference
- Object
Overview
Base class for objects implementing different rendering methods.
Gdk::DrawContext
is the base object used by contexts implementing different
rendering methods, such as Gdk::CairoContext
or Gdk::GLContext
.
It provides shared functionality between those contexts.
You will always interact with one of those subclasses.
A Gdk::DrawContext
is always associated with a single toplevel surface.
Direct Known Subclasses
Defined in:
lib/gi-crystal/src/auto/gdk-4.0/draw_context.crConstructors
-
.new
Initialize a new
DrawContext
. - .new(*, display : Gdk::Display | Nil = nil, surface : Gdk::Surface | Nil = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. -
#begin_frame(region : Cairo::Region) : Nil
Indicates that you are beginning the process of redrawing region on the context's surface.
-
#display : Gdk::Display | Nil
Retrieves the
Gdk::Display
the context is created for - #display=(value : Gdk::Display | Nil) : Gdk::Display | Nil
-
#end_frame : Nil
Ends a drawing operation started with gdk_draw_context_begin_frame().
-
#frame_region : Cairo::Region | Nil
Retrieves the region that is currently being repainted.
-
#hash(hasher)
See
Object#hash(hasher)
-
#is_in_frame : Bool
Returns
true
if context is in the process of drawing to its surface. -
#surface : Gdk::Surface | Nil
Retrieves the surface that context is bound to.
- #surface=(value : Gdk::Surface | Nil) : Gdk::Surface | Nil
Instance methods inherited from class GObject::Object
==(other : self)
==,
bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding
bind_property,
bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding
bind_property_full,
data(key : String) : Pointer(Void) | Nil
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
hash(hasher)
hash,
notify(property_name : String) : Nil
notify,
notify_by_pspec(pspec : GObject::ParamSpec) : Nil
notify_by_pspec,
notify_signal
notify_signal,
property(property_name : String, value : _) : Nil
property,
qdata(quark : UInt32) : Pointer(Void) | Nil
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void) | Nil) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void) | Nil
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void) | Nil
steal_qdata,
thaw_notify : Nil
thaw_notify,
to_unsafe : Pointer(Void)
to_unsafe,
watch_closure(closure : GObject::Closure) : Nil
watch_closure
Constructor methods inherited from class GObject::Object
cast(obj : GObject::Object) : self
cast,
new(pointer : Pointer(Void), transfer : GICrystal::Transfer)new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv
Class methods inherited from class GObject::Object
cast?(obj : GObject::Object) : self | Nil
cast?,
compat_control(what : UInt64, data : Pointer(Void) | Nil) : UInt64
compat_control,
g_type : UInt64
g_type,
interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec
interface_find_property,
interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec)
interface_list_properties
Macros inherited from class GObject::Object
previous_vfunc(*args)
previous_vfunc,
previous_vfunc!(*args)
previous_vfunc!,
signal(signature)
signal
Constructor Detail
Class Method Detail
Returns the type id (GType) registered in GLib type system.
Instance Method Detail
Returns true
if this reference is the same as other. Invokes same?
.
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 Gdk::CairoContext
and a Gdk::GLContext
need to be treated differently.
A call to this function is a requirement for drawing and must be
followed by a call to Gdk::DrawContext#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::DrawContext#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 Gsk::Renderer
s, so application code does not need to call
these functions explicitly.
Ends a drawing operation started with gdk_draw_context_begin_frame().
This makes the drawing available on screen.
See Gdk::DrawContext#begin_frame
for more details about drawing.
When using a Gdk::GLContext
, this function may call glFlush()
implicitly before returning; it is not recommended to call glFlush()
explicitly before calling this function.
Retrieves the region that is currently being repainted.
After a call to Gdk::DrawContext#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::DrawContext#begin_frame
and Gdk::DrawContext#end_frame
, nil
will be returned.
Returns true
if context is in the process of drawing to its surface.
This is the case between calls to Gdk::DrawContext#begin_frame
and Gdk::DrawContext#end_frame
. In this situation, drawing commands
may be effecting the contents of the context's surface.