Source

clutter-ocaml / src / clutterGroup.ml

open OclutterProps
open ClutterProps
open Clutter

class group_skel (obj:group obj) = object (self)
  inherit actor_props
  inherit ClutterContainer.container_skel (as_container obj)
  inherit ['a] ClutterActor.actor_skel (as_actor obj)
  method private obj : group Clutter.obj = obj
  (*method add_many : 'a. (#ClutterActor.actor_o as 'a) array -> unit =
    fun items ->
      Group.add_many obj (Array.map (fun x -> x#as_actor) items)*)
  method add_many : [> `actor] obj array -> unit = Group.add_many obj
end

class group_signals_impl obj = object
  inherit ['a] gobject_signals obj
  inherit group_sigs
  inherit actor_sigs
end

class type group_sigals = group_signals_impl
  
class group obj = object
  inherit group_skel (obj : [> `group] Clutter.obj)
  method connect = new group_signals_impl obj
end

let create ?(actors=[]) () =
  let obj = Group.create [] in
  let g = new group obj in
  List.iter g#add_actor actors;
  g
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.