View in color | License | Download script | History | Other scripts by: carl |
15-Sep 7:38 UTC
[0.044] 11.51k
[0.044] 11.51k
dual-col.rREBOL [
Title: "Dual Column Text"
Date: 5-Oct-2001/7:22-8:00
Version: 1.0.0
File: %dual-col.r
Author: "Carl Sassenrath"
Purpose: "Shows an easy way to make dual column text."
Email: %carl--pacific--net
Web: http://www.rebol.com
library: [
level: 'intermediate
platform: none
type: none
domain: [GUI]
tested-under: none
support: none
license: none
see-also: none
]
]
page-width: 600
size-lay: layout [sizer: text]
split-text: func [text width /local size] [
; Used for column sizing. Returns second column break and column height.
sizer/text: text
sizer/size/x: width
sizer/line-list: none
size: size-text sizer
offset-to-caret sizer size / 2 * 0x1
]
make-cols: func [content width /local where] [
; Returns a face that holds both columns
where: split-text content width
layout [
across origin 0 backcolor snow
text as-is width copy/part content where
text as-is width copy where
]
]
make-body: func [titl byline date content /local out bx] [
; Returns a face that has title, byline, date, and columns.
body: make-cols content page-width / 2
body/offset: 0x0
out: layout [
origin 15 space 4x10
backcolor snow
h1 titl
h4 reform ["By" byline "on" date]
box page-width * 1x0 + 4x3 edge [size: 1x1 color: gray effect: 'bevel]
bx: box body/size
]
bx/pane: body
out
]
view make-body "Dual Column Layout Example" "Carl Sassenrath"
system/script/header/date read %dual-col.r Notes
|