All pastes #940073 Raw Edit

Untitled

public text v1 · immutable
·published 2008-03-12 19:20 UTC
rendered paste body
in newt.mli:

  type 'a component

  val form_add_component :
    [> `Form ] component -> [> `Component ] component -> unit
  val form_add_components :
    [> `Form ] component -> [> `Component ] component list -> unit

in newt.ml:

  type 'a component = {
    co : newtComponent;			(* The component. *)
    mutable in_form : bool;	        (* If added to a form, this is set. *)
  }

  let form_add_component form co =
    if co.in_form then failwith "component can only be added to a single form";
    newtFormAddComponent form.co co.co;
    co.in_form <- true

  let form_add_components form components =
    List.iter (fun co -> form_add_component form co) components

in 04_form.ml:

	let text = textbox 1 1 15 5 [WRAP; SCROLL] in
	textbox_set_text text "This is some text in a reflowed text box.  This is some text in a reflowed text box.";
	let b1 = button 5 8 "  OK  " in
	let b2 = button 5 13 "Cancel" in
	let form = form None None [] in
	form_add_components form [text; b1; b2];