IUP

Check-in [4596413016]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Additional constructors: background-box detach-box expander scroll-box
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 45964130162e08da57f6db3957f762ccc1953101
User & Date: murphy 2015-08-04 16:59:01
Context
2015-08-05
15:23
Somewhat more consistent names: background-box -> backgroundbox, detach-box -> detachbox, expander -> expandbox, scroll-box -> scrollbox check-in: a04b3fd0a4 user: murphy tags: trunk
2015-08-04
16:59
Additional constructors: background-box detach-box expander scroll-box check-in: 4596413016 user: murphy tags: trunk
2015-08-03
12:41
Improved callback handling and destructor safety check-in: 371a59c42d user: murphy tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to api/base.wiki.

314
315
316
317
318
319
320
321
322
323
324
325
326
















327
328
329
330
331
332
333

<h3><a id="sbox"><code><nowiki>(sbox [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a box that resizes its child dynamically.

<h3><a id="radio"><code><nowiki>(radio [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates the radio element for grouping mutual exclusive toggles.

<h3><a id="normalizer"><code><nowiki>(normalizer [child ihandle?] ... #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Normalizes all controls from a list so their natural size to be the biggest
natural size among them.

















<h3><a id="split"><code><nowiki>(split [child0 ihandle?] [child1 ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a container that splits its client area in two.

<h2>Image Resource Functions</h2>








|



|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349

<h3><a id="sbox"><code><nowiki>(sbox [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a box that resizes its child dynamically.

<h3><a id="radio"><code><nowiki>(radio [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates the radio element for grouping mutually exclusive toggles.

<h3><a id="normalizer"><code><nowiki>(normalizer [child ihandle?] ... #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Normalizes all controls from a list so their natural size is the
biggest natural size among them.

<h3><a id="background-box"><code><nowiki>(background-box [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a simple native container with no decorations.

<h3><a id="detach-box"><code><nowiki>(detach-box [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a detachable void container.

<h3><a id="expander"><code><nowiki>(expander [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a void container that can interactively show or hide its child.

<h3><a id="scroll-box"><code><nowiki>(scroll-box [child ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a native container that allows its child to be scrolled.

<h3><a id="split"><code><nowiki>(split [child0 ihandle?] [child1 ihandle?] #:<name> <value> ...) → ihandle?</nowiki></code></a></h3>

Creates a container that splits its client area in two.

<h2>Image Resource Functions</h2>

Changes to chicken/iup-base.scm.

567
568
569
570
571
572
573
















574
575
576
577
578
579
580
  	(foreign-lambda nonnull-ihandle "IupRadio" ihandle)))

(define normalizer
  (make-constructor-procedure
  	(foreign-lambda* nonnull-ihandle ([ihandle-list handles]) "C_return(IupNormalizerv((Ihandle **)handles));")
  	#:apply-args list))

















(define split
  (make-constructor-procedure
  	(foreign-lambda nonnull-ihandle "IupSplit" ihandle ihandle)))

;; }}}

;; {{{ Image resource functions







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
  	(foreign-lambda nonnull-ihandle "IupRadio" ihandle)))

(define normalizer
  (make-constructor-procedure
  	(foreign-lambda* nonnull-ihandle ([ihandle-list handles]) "C_return(IupNormalizerv((Ihandle **)handles));")
  	#:apply-args list))

(define background-box
  (make-constructor-procedure
  	(foreign-lambda nonnull-ihandle "IupBackgroundBox" ihandle)))

(define detach-box
  (make-constructor-procedure
  	(foreign-lambda nonnull-ihandle "IupDetachBox" ihandle)))

(define expander
  (make-constructor-procedure
  	(foreign-lambda nonnull-ihandle "IupExpander" ihandle)))

(define scroll-box
  (make-constructor-procedure
  	(foreign-lambda nonnull-ihandle "IupScrollBox" ihandle)))

(define split
  (make-constructor-procedure
  	(foreign-lambda nonnull-ihandle "IupSplit" ihandle ihandle)))

;; }}}

;; {{{ Image resource functions

Changes to chicken/iup.scm.

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
	 child-ref child-pos child-count
	 :children children
	 refresh redraw
	 child-x/y->pos
	 show hide
	 dialog
	 fill gridbox hbox vbox zbox cbox sbox
	 radio normalizer split
	 image/palette image/rgb image/rgba image/file image-save
	 current-focus focus-next focus-previous
	 menu menu-item menu-separator
	 clipboard timer send-url)
	(import
		scheme chicken foreign
		lolevel data-structures extras srfi-1 srfi-13 srfi-42 srfi-69 irregex







|







20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
	 child-ref child-pos child-count
	 :children children
	 refresh redraw
	 child-x/y->pos
	 show hide
	 dialog
	 fill gridbox hbox vbox zbox cbox sbox
	 radio normalizer background-box detach-box expander scroll-box split
	 image/palette image/rgb image/rgba image/file image-save
	 current-focus focus-next focus-previous
	 menu menu-item menu-separator
	 clipboard timer send-url)
	(import
		scheme chicken foreign
		lolevel data-structures extras srfi-1 srfi-13 srfi-42 srfi-69 irregex

Changes to racket/base.rkt.

585
586
587
588
589
590
591
























592
593
594
595
596
597
598
...
765
766
767
768
769
770
771
772
773
774
775
776
(define normalizer
  (make-constructor-procedure
   (get-ffi-obj
    "IupNormalizerv" libiup
    (_fun children :: [children : (_list i _ihandle/null) = (append children '(#f))]
          -> [handle : _ihandle]))))

























(define split
  (make-constructor-procedure
   (get-ffi-obj
    "IupSplit" libiup
    (_fun [child1 : _ihandle/null] [child2 : _ihandle/null] -> [handle : _ihandle]))))

;; Image resource functions
................................................................................
 child-ref child-pos child-count
 in-children children
 refresh redraw
 child-x/y->pos
 show hide
 dialog
 fill gridbox hbox vbox zbox cbox sbox
 radio normalizer split
 image/palette image/rgb image/rgba image/file image-save
 current-focus focus-next focus-previous
 menu menu-item menu-separator
 clipboard timer send-url)







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







|




585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
...
789
790
791
792
793
794
795
796
797
798
799
800
(define normalizer
  (make-constructor-procedure
   (get-ffi-obj
    "IupNormalizerv" libiup
    (_fun children :: [children : (_list i _ihandle/null) = (append children '(#f))]
          -> [handle : _ihandle]))))

(define background-box
  (make-constructor-procedure
   (get-ffi-obj
    "IupBackgroundBox" libiup
    (_fun [child : _ihandle/null] -> [handle : _ihandle]))))

(define detach-box
  (make-constructor-procedure
   (get-ffi-obj
    "IupDetachBox" libiup
    (_fun [child : _ihandle/null] -> [handle : _ihandle]))))

(define expander
  (make-constructor-procedure
   (get-ffi-obj
    "IupExpander" libiup
    (_fun [child : _ihandle/null] -> [handle : _ihandle]))))

(define scroll-box
  (make-constructor-procedure
   (get-ffi-obj
    "IupScrollBox" libiup
    (_fun [child : _ihandle/null] -> [handle : _ihandle]))))

(define split
  (make-constructor-procedure
   (get-ffi-obj
    "IupSplit" libiup
    (_fun [child1 : _ihandle/null] [child2 : _ihandle/null] -> [handle : _ihandle]))))

;; Image resource functions
................................................................................
 child-ref child-pos child-count
 in-children children
 refresh redraw
 child-x/y->pos
 show hide
 dialog
 fill gridbox hbox vbox zbox cbox sbox
 radio normalizer background-box detach-box expander scroll-box split
 image/palette image/rgb image/rgba image/file image-save
 current-focus focus-next focus-previous
 menu menu-item menu-separator
 clipboard timer send-url)