View in color | License | Download script | History | Other scripts by: bohdan |
30-Apr 15:55 UTC
[0.042] 12.772k
[0.042] 12.772k
wild-buttons.rREBOL [
Title: "Wild Buttons"
Date: 7-Jun-2001
Version: 1.0.1
File: %wild-buttons.r
Author: "Bohdan Lechnowsky"
Purpose: {To demonstrate some easy visual button effects with REBOL/View.}
Comment: {
^-^-added center-face so title bar displays in Windows
^-^--Larry Palmiter
^-}
Email: %larry--ecotope--com
library: [
level: 'beginner
platform: none
type: 'Demo
domain: 'GUI
tested-under: none
support: none
license: none
see-also: none
]
]
button: make face [
edge: make edge [size: 10x10]
font: make font [
color: 255.255.255
size: 12
align: 'center
valign: 'center
]
para: make para []
feel: make feel []
]
pairs: [1x1 1x0 1x-1 0x-1 -1x-1 -1x0 -1x1 0x1]
epairs: pairs
button: make button [
feel: make feel [
engage: func [face act evt][
pairs: next pairs
epairs: back epairs
if tail? pairs [pairs: head pairs]
button/effect: reduce ['gradient to-pair first pairs 0.0.255]
button/edge/effect: reduce ['gradient to-pair first epairs 255.0.0]
if head? epairs [epairs: tail pairs]
switch act [up [unview/all]]
show button
]
]
rate: 10 ;10 frames per second
text: "Rotating gradient - Click me to continue"
]
view center-face make face [size: button/size pane: button edge: make edge [size: 0x0]]
button/text: "No title bar - Click me to continue"
view/options center-face make face [offset: 3x23 size: button/size pane: button edge: make edge [size: 0x0]] 'no-title
button/text: "No title bar or border - Click me to continue"
view/options center-face make face [size: button/size pane: button edge: make edge [size: 0x0]] [no-title no-border]
button/text: "Window is resizable - Click me to continue"
view/options center-face make face [size: button/size pane: button edge: make edge [size: 0x0]] [resize]
col: 90
dir: 40
stops: [255 155]
button: make button [
offset: 0x0
effect: none
image: none
edge: make edge [
effect: none
image: none
]
feel: make feel [
engage: func [face act evt][
button/edge/color: to-tuple reduce [col 0 0]
button/color: 255.0.0 - button/edge/color
col: col + dir
if any [col < 90 col > stops/1][
dir: negate dir
if col < 90 [
stops: next stops
if tail? stops [stops: head stops]
]
col: col + dir
]
switch act [up [unview/all]]
show button
]
]
rate: 20 ;20 frames per second
text: "Does REBOL/View make your heart race?"
]
view center-face make face [size: button/size pane: button edge: make edge [size: 0x0]] Notes
|