Search Results

Search found 52 results on 3 pages for 'rebol'.

Page 1/3 | 1 2 3  | Next Page >

  • Problem with Variable Scoping in Rebol's Object

    - by Rebol Tutorial
    I have modified the rebodex app so that it can be called from rebol's console any time by typing rebodex. To show the title of the app, I need to store it in app-title: system/script/header/title so tha it could be used later in view/new/title dex reform [self/app-title version] That works but as you can see I have named the var name "app-title", but if I use "title" instead, the window caption would show weird stuff (vid code). Why ? REBOL [ Title: "Rebodex" Date: 23-May-2010 Version: 2.1.1 File: %rebodex.r Author: "Carl Sassenrath" Modification: "Rebtut" Purpose: "A simple but useful address book contact database." Email: %carl--rebol--com library: [ level: 'intermediate platform: none type: 'tool domain: [file-handling DB GUI] tested-under: none support: none license: none see-also: none ] ] rebodex.context: context [ app-title: system/script/header/title version: system/script/header/version set 'rebodex func[][ names-path: %names.r ;data file name-list: none fields: [name company title work cell home car fax web email smail notes updat] names: either exists? names-path [load names-path][ [[name "Carl Sassenrath" title "Founder" company "REBOL Technologies" email "%carl--rebol--com" web "http://www.rebol.com"]] ] brws: [ if not empty? web/text [ if not find web/text "http://" [insert web/text "http://"] error? try [browse web/text] ] ] dial: [request [rejoin ["Dial number for " name/text "? (Not implemented.)"] "Dial" "Cancel"]] dex-styles: stylize [ lab: label 60x20 right bold middle font-size 11 btn: button 64x20 font-size 11 edge [size: 1x1] fld: field 200x20 font-size 11 middle edge [size: 1x1] inf: info font-size 11 middle edge [size: 1x1] ari: field wrap font-size 11 edge [size: 1x1] with [flags: [field tabbed]] ] dex-pane1: layout/offset [ origin 0 space 2x0 across styles dex-styles lab "Name" name: fld bold return lab "Title" title: fld return lab "Company" company: fld return lab "Email" email: fld return lab "Web" brws web: fld return lab "Address" smail: ari 200x72 return lab "Updated" updat: inf 200x20 return ] 0x0 updat/flags: none dex-pane2: layout/offset [ origin 0 space 2x0 across styles dex-styles lab "Work #" dial work: fld 140 return lab "Home #" dial home: fld 140 return lab "Cell #" dial cell: fld 140 return lab "Alt #" dial car: fld 140 return lab "Fax #" fax: fld 140 return lab "Notes" notes: ari 140x72 return pad 136x1 btn "Close" #"^q" [store-entry save-file unview] ] 0x0 dex: layout [ origin 8x8 space 0x1 styles dex-styles srch: fld 196x20 bold across rslt: list 180x150 [ nt: txt 178x15 middle font-size 11 [ store-entry curr: cnt find-name nt/text update-entry unfocus show dex ] ] supply [ cnt: count + scroll-off face/text: "" face/color: snow if not n: pick name-list cnt [exit] face/text: select n 'name face/font/color: black if curr = cnt [face/color: system/view/vid/vid-colors/field-select] ] sl: slider 16x150 [scroll-list] return return btn "New" #"^n" [new-name] btn "Del" #"^d" [delete-name unfocus update-entry search-all show dex] btn "Sort" [sort names sort name-list show rslt] return at srch/offset + (srch/size * 1x0) bx1: box dex-pane1/size bx2: box dex-pane2/size return ] bx1/pane: dex-pane1/pane bx2/pane: dex-pane2/pane rslt/data: [] this-name: first names name-list: copy names curr: none search-text: "" scroll-off: 0 srch/feel: make srch/feel [ redraw: func [face act pos][ face/color: pick face/colors face system/view/focal-face if all [face = system/view/focal-face face/text search-text] [ search-text: copy face/text search-all if 1 = length? name-list [this-name: first name-list update-entry show dex] ] ] ] update-file: func [data] [ set [path file] split-path names-path if not exists? path [make-dir/deep path] write names-path data ] save-file: has [buf] [ buf: reform [{REBOL [Title: "Name Database" Date:} now "]^/[^/"] foreach n names [repend buf [mold n newline]] update-file append buf "]" ] delete-name: does [ remove find/only names this-name if empty? names [append-empty] save-file new-name ] clean-names: function [][n][ forall names [ if any [empty? first names none? n: select first names 'name empty? n][ remove names ] ] names: head names ] search-all: function [] [ent flds] [ clean-names clear name-list flds: [name] either empty? search-text [insert name-list names][ foreach nam names [ foreach word flds [ if all [ent: select nam word find ent search-text][ append/only name-list nam break ] ] ] ] scroll-off: 0 sl/data: 0 resize-drag scroll-list curr: none show [rslt sl] ] new-name: does [ store-entry clear-entry search-all append-empty focus name ; update-entry ] append-empty: does [append/only names this-name: copy []] find-name: function [str][] [ foreach nam names [ if str = select nam 'name [ this-name: nam break ] ] ] store-entry: has [val ent flag] [ flag: 0 if not empty? trim name/text [ foreach word fields [ val: trim get in get word 'text either ent: select this-name word [ if ent val [insert clear ent val flag: flag + 1] ][ if not empty? val [repend this-name [word copy val] flag: flag + 1] ] if flag = 1 [flag: 2 updat/text: form now] ] if not zero? flag [save-file] ] ] update-entry: does [ foreach word fields [ insert clear get in get word 'text any [select this-name word ""] ] show rslt ] clear-entry: does [ clear-fields bx1 clear-fields bx2 updat/text: form now unfocus show dex ] show-names: does [ clear rslt/data foreach n name-list [ if n/name [append rslt/data n/name] ] show rslt ] scroll-list: does [ scroll-off: max 0 to-integer 1 + (length? name-list) - (100 / 16) * sl/data show rslt ] do resize-drag: does [sl/redrag 100 / max 1 (16 * length? name-list)] center-face dex new-name focus srch show-names view/new/title dex reform [app-title version] insert-event-func [ either all [event/type = 'close event/face = dex][ store-entry unview ][event] ] do-events ] ]

    Read the article

  • Rebol Multitasking with Async: why do I get Invalid port spec

    - by Rebol Tutorial
    I tried http://www.mail-archive.com/[email protected]/msg19437.html (I just changed to www.reboltutorial.com) : do http://www.rebol.it/giesse/async-protocol.r handler: func [port [port!] state [word! error!] /local tmp cmd] [ if error? :state [print mold disarm state return true] switch state [ connect [ ; do HTTP request insert port {GET /files/2009/10/word.png HTTP/1.0^M^JHost: www.reboltutorial.com^M^J^M^J} false ] read [false] write [false] close [ ; get data data: copy port close port ;print copy/part data find data "^M^J^M^J" data: to binary! find/tail data "^M^J^M^J" other/image: attempt [load data] other/text: "" show other false ] ] ] port: open async://www.reboltutorial.com:80 port/awake: :handler view layout [ across me: box 100x100 random 255.255.255 0:00:00.5 feel [ engage: func [f a e] [ if a = 'time [ me/color: random 255.255.255 show me ] ] ] other: box 100x100 255.255.255 "Downloading image..." Return Area 208x100 "You can type here while downloading." ] ] But I'm getting this error: >> port: open async://reboltutorial.com:80 ** Access Error: Invalid port spec: async://reboltutorial.com:80 ** Near: port: open async://reboltutorial.com:80 >> port/awake: :handler ** Script Error: port has no value ** Near: port/awake: :handler

    Read the article

  • Rebol MSAccess ODBC: works with DNS connection but not with DNSLess Connection

    - by Rebol Tutorial
    I have tested the new free Rebol ODBC with MS Access after reading the doc here http://www.rebol.com/docs/database.html It works with ODBC DNS connection but when I tested with this DNSLess connection (MSAccess2003 file with MSAccess2007 installed): connect-name: open [ scheme: 'odbc target: join "{DRIVER=Microsoft Access Driver (*.mdb)}; " "DBQ=c:\test\test.mdb" ] It shows this error: >> connect-name: open [ [ scheme: 'odbc [ target: join "{DRIVER=Microsoft Access Driver (*.mdb)}; " [ "DBQ=c:\test\test.mdb" [ ] ** Access Error: Invalid port spec: scheme odbc target join {DRIVER=Microsoft Access Driver (*.mdb)}; DBQ=c:\test\test.mdb ** Near: connect-name: open [ scheme: 'odbc target: join "{DRIVER=Microsoft Access Driver (*.mdb)}; " "DBQ=c:\test\... >> >> Do you know why ? Thanks.

    Read the article

  • Creating XML with Rebol and rebelxml

    - by Rebol Tutorial
    The example in doc http://www.rebol.org/documentation.r?script=rebelxml.r to create XML works >> clear-xml-data == "" >> set-xml-data/content 'test/test "test" == "<test><test>test</test></test>" >> but when I want to create some variants it doesn't seem to work: >> clear-xml-data == "" >> set-xml-data/content 'test "test" ** Script Error: foreach expected data argument of type: series ** Where: set-xml-data ** Near: foreach tag path [ sub-rule: copy [] append sub-rule reduce [ 'thru to-open-tag tag ] if all [... >> this one doesn't work either: >> clear-xml-data == "" >> set-xml-data/content/with-attribute 'test/test "test" 'id "500" == "" >> Is there something wrong in my syntax ?

    Read the article

  • Where to upload cgi script on Linux Debian VPS with Plesk ?

    - by Rebol Tutorial
    I'm newbie to Linux. I have uploaded rebol ( a script langage similar to perl from http://www.rebol.com/view-platforms.html ) the linux debian version to /usr/bin on my VPS Where do I upload this script : Code: #!/usr/bin/rebol -c REBOL [Title: "Cgi Test in Rebol"] print "content-type: text/html^/" print ["Date/time is:" now] as I have 2 domain names on this VPS, I can't find where the domain folder are to do so.

    Read the article

  • Problem with recursivity in rebol

    - by Rebol Tutorial
    I have a block on which I want to iterate recursively folders: [ Chrome [ content [ preferences prefpages ] ] icons [ default ] locale [ en-EN [ csbar ] ] skin ] with this function: iterate-folder: func [folders [block!]][ foreach folder folders [ either not block? folder [ probe folder temp: folder input ] [ print "folder" probe folder print "folders" probe folders probe select folders folder type-folder: type? select folders folder probe type-folder input iterate-folder select folders folder ] ] ] but for stupid reason I can't see, probe folder returns none above so it doesn't work.

    Read the article

  • How can I read this url in Rebol ?

    - by Rebol Tutorial
    when trying to read this kind of url URL: http://v4.lscache2.c.youtube.com/videoplayback?ip=0.0.0.0&sparams=id,expire,ip,ipbits,itag,algorithm,burst,factor,oc:U0dWSlhTVF9FSkNNNl9QTVhJ&algorithm=throttle-factor&itag=34&ipbits=0&burst=40&sver=3&expire=1275886800&key=yt1&signature=89195E808CB3FBBC7BDE7298A1DC0613D7987F00.D3064112E8F479C523F8DF4FBFDF392CE48167C2&factor=1.25&id=34e01ad39b34b5c9& I get this error read/binary url connecting to: v4.lscache2.c.youtube.com ** User Error: Error. Target url: http://v4.lscache2.c.youtube.com/videoplayback?ip=0.0.0.0&sparams=id,expire,ip,ipbits, itag,algorithm... ** Near: read/binary url

    Read the article

  • How to create newline in a rebol block ?

    - by Rebol Tutorial
    let's say I have a config.txt which contains: "param11" "param12" "param21" "param22" I'll load it in memory with config: load %config.txt I can save it back with save %config.txt config So far so good. Now the problem occurs for me when I want to add "param31" "param32" I have tried append config reduce [newline "param31" "param32"] save %config.txt config But that doesn't give the expected result "param11" "param12" "param21" "param22" "param31" "param32" but this instead "param11" "param12" "param21" "param22" #"^/" "param31" "param32" So how to ?

    Read the article

  • Changing the color of a Rebol button

    - by Dave Matuszek
    I want to ask multiple choice questions in Rebol. Possible answers will be on buttons. I want to turn a button red when it is clicked and it is the wrong answer. When the correct button is pressed, I want to proceed to the next question. I can change the color of a box (mybox/color: red show mybox). I can set up a toggle with two colors (but I can't change it based on the result of an arbitrary test (is the answer correct?). It seems like there is probably a simple way to change the color of a button, without having to create my own button-like face objects. Isn't there?

    Read the article

  • Where is rebol fill-pen documented (to get glow effect on a round rectangle) ?

    - by Rebol Tutorial
    There is some discussion here about fill-pen http://www.mail-archive.com/[email protected]/msg02019.html But I can't see documentation about cubic, diamond, etc... effect for fill-pen in rebol's official doc ? I'm trying to draw some round rectangle with glowing effect but don't really understand the parameters I'm playing with so I can't get exactly what I'd like (I'd like the glow effect starting from the center not from the dark left top corner): view layout [ box 278x185 effect [ ; default box face size is 100x100 draw [ anti-alias on ; information for the next draw element (not required) line-width 2.5 ; number of pixels in width of the border pen black ; color of the edge of the next draw element ; fill pen is a little complex: ;fill-pen 10x10 0 90 0 1 1 0.0.0 255.0.0 255.0.255 fill-pen radial 20x20 5 55 5 5 10 0.0.0 55.0.5 55.0.5 ; the draw element box ; another box drawn as an effect 15 ; size of rounding in pixels 0x0 ; upper left corner 278x170 ; lower right corner ] ] ]

    Read the article

  • Is it possible to get anti-alias for Font in Rebol Graphics VID ?

    - by Rebol Tutorial
    Anti-alias works for Draw but I can't see how to get anti-alias for font : is it possible anywhow (including hacking rebol vid ...) because font in the picture generated below is not nice: view layout [ box 278x185 effect [ ; default box face size is 100x100 draw [ anti-alias on ; information for the next draw element (not required) line-width 2.5 ; number of pixels in width of the border pen black ; color of the edge of the next draw element fill-pen radial 100x50 5 55 5 10 10 71.0.6 30.10.10 71.0.6 ; the draw element box ; another box drawn as an effect 15 ; size of rounding in pixels 0x0 ; upper left corner 278x170 ; lower right corner ] ] pad 30x-150 Text "Experiment" font [name: "Impact" size: 24 color: white] image http://www.rebol.com/graphics/reb-logo.gif ]

    Read the article

  • REBOL: How to do another task while waiting an alarm to trigger ?

    - by Rebol Tutorial
    So I have created an alarm function: alarm: func[seconds message [string! unset!]][ wav: load %attention.wav sound-port: open sound:// wait seconds do [ insert sound-port wav wait sound-port close sound-port if (value? 'message) [ print message ] ] ] which works like this: alarm 30 "Will trigger in 30 seconds" Now how can I for example show a timer which increments while waiting for the alarm since Rebol doesn't support thread ?

    Read the article

  • How to sort this rebol domain names block on date ?

    - by Rebol Tutorial
    I want to sort this block on date column: ["domain1.com" 18-Jan-2011 #"^/" "domain2.com" 20-Aug-2011 #"^/" "domain3.com" 23-Dec-2011 #"^/" "domain4.com" 22-Sep-2011 #"^/"] I can't see how to really do so with sort/skip function explained here, it's not crystal clear for me: http://www.rebol.com/docs/words/wsort.html

    Read the article

1 2 3  | Next Page >