package ocgtk

  1. Overview
  2. Docs
OCaml bindings for GTK 4

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v0.1-preview2.tar.gz
sha256=4e50fdb5093136a10fc8ffbe388e44cbcb70d52f8afdd48863ec7e22580ff054

doc/ocgtk.gdk/Ocgtk_gdk/Gdk/Wrappers/Frame_clock/index.html

Module Wrappers.Frame_clock

type t = [ `frame_clock | `object_ ] Gobject.obj
val request_phase : t -> Gdk_enums.frameclockphase -> unit

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 method@Gdk.FrameClock.begin_updating instead, since this allows GTK to adjust system parameters to get maximally smooth animations.

val get_timings : t -> int64 -> [ `frame_timings ] Gobject.obj option

Retrieves a `GdkFrameTimings` object holding timing information for the current frame or a recent frame.

The `GdkFrameTimings` object may not yet be complete: see method@Gdk.FrameTimings.get_complete and method@Gdk.FrameClock.get_history_start.

val get_refresh_info : t -> int64 -> int64 * int64

Predicts a presentation time, based on history.

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.

val get_history_start : t -> int64

Returns the frame counter for the oldest frame available in history.

`GdkFrameClock` internally keeps a history of `GdkFrameTimings` objects for recent frames that can be retrieved with method@Gdk.FrameClock.get_timings. The set of stored frames is the set from the counter values given by method@Gdk.FrameClock.get_history_start and method@Gdk.FrameClock.get_frame_counter, inclusive.

val get_frame_time : t -> int64

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.

val get_frame_counter : t -> int64

`GdkFrameClock` maintains a 64-bit counter that increments for each frame drawn.

val get_fps : t -> float

Calculates the current frames-per-second, based on the frame timings of @frame_clock.

val get_current_timings : t -> [ `frame_timings ] Gobject.obj option

Gets the frame timings for the current frame.

val end_updating : t -> unit

Stops updates for an animation.

See the documentation for method@Gdk.FrameClock.begin_updating.

val begin_updating : t -> unit

Starts updates for an animation.

Until a matching call to method@Gdk.FrameClock.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.

val on_after_paint : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id
val on_before_paint : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id
val on_flush_events : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id
val on_layout : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id
val on_paint : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id
val on_resume_events : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id
val on_update : ?after:bool -> t -> callback:(unit -> unit) -> Gobject.Signal.handler_id