[ALLY] vid-list-problems on my machine, need testers
From: agem::crosswinds::net at: 8-Sep-2000 22:24
Hi all!
have problems send to feedback, Bo could not recreate it.
maybe i have a strange system - who too?
i wrote the little editor with a filename-pad (you
have to enter the files by hand, but they are remembered
across edits). i don't know if it is official to use
lists to change strings directly, but most of the
times it works. have suse 6.4, kde, REBOL/View 0.10.31.4.2
6-Sep-2000, amd-k6.
problems:
1) if i enter text directly in the list-fields, and
klick around between fields, strange things happens.
2) sometimes after using the edi a while, opening
various files, all list-fields keeps blank. sometimes
it works. usually the first time all runs well, then
it is completely blank for the rest of the time, but
i had one or too recoverys too.
i described this to Bo this way, hm bit confusing? :
>bug: <lb> enter a file and open it. then re-open a file.
>1) the request-page is sometimes empty, sometimes it works.
>2) typing in the list-fields works sometimes half, sometimes breaks after firs
t char.
REBOL [
title: "simple edit"
version: 0.0.0.60
file: %/home/volker/alphas/simpledit.r
date: 5-Sep-2000/2:15:46+1:00
]
;protect-system
de: :do-events ;debug
se: make object! [
config: config-name: autosave: use-do: open-file: edit-text: none
my-launch: func [] [close-se
either use-do/data [do config/file] [
; hack-launch probe reform [config/file] print "simpledit back"
do %launch.r ; launches config/file
]
]
main: func [] [
config-default: [file %./unnamed files [] posis []]
config-name: %simpledit-config.r
config: copy config-default
;
error? try [if exists? config-name [do config-name]
config: system/words/config
]
a: config-default
forskip a 2 [if not find config first a [append config reduce [first a second a]]]
a: system/script/args
if a [config/file: clean-path to file! a]
view layout open-file
;print read config-name
]
close-se: func [] [
secured/except "save text?" config/file [
write config/file edit-text/text
a: config/posis
now-is a config/file edit-text/para/origin/y
] autosave/data
secured/except "save config?" config-name [
save/header config-name compose/deep [
config: [(config)]]
[title: "simpledit's config"]
] autosave/data
]
scroll-lines: func [lines] [
edit-text/para/origin/y: edit-text/para/origin/y + (lines * (edit-text/font/size + edit-text/font/offset/y))
show edit-text
]
comment { --- views: --- }
edit: [edit-title: title 640x30 join "" config/file
across
button "close" [close-se unview/all]
button "open" [close-se view layout open-file]
;button "launch" [close-se hack-launch probe reform[{-s --do "secure } mold secure query
{"} config/file]]
button #"^d" "launch" [my-launch]
label join "" (2) arrow down [scroll-lines -2]
label join "" ("p/2") arrow down [
edit-text/para/origin/y: edit-text/para/origin/y - (480 / 2) show edit-text]
label join "" ("p/2") arrow up [
edit-text/para/origin/y: edit-text/para/origin/y + (480 / 2) show edit-text]
label join "" (2) arrow up [scroll-lines 2]
label "autosave" autosave: check
below
do [error? try [a: read config/file] [a: "new"]]
edit-text: area 640x480 a
do [if a: select config/posis config/file [
edit-text/para/origin/y: a]]
]
open-file: [title "enter file "
do [dir&file: split-path config/file]
across label join "current directory: " (what-dir)
label "do/launch" use-do: check
return
dir: field form first dir&file
file: field form second dir&file
arrow down [insert/only config/files reduce [copy dir/text copy file/text] show xfiles]
button #"^m" "open" [
filename: clean-path join dirize to file! dir/text file/text
config/file: filename
view layout edit
]
return
xfiles: list 450x300 [across xdir: field xfile: field
arrow up [dir/text: copy xdir/text file/text: copy xfile/text show dir show file]
]
supply [face/text: either count > length? config/files ["-"] [
pick config/files/:count index
]]
text 75x300 join "" mold secure query
]
comment { --- tools --- }
now-is: function [
"change value after key, if it is present, otherwise append both"
series key value] [here]
[
here: find series key
either here [change/only next here value] [append series reduce [key value]]
]
ask-for: func [question about] [
request reduce [reform [
question to string! about "(on linux security on console!!)"]
"yes" "cancel"]
]
secured: func [title item todo /except -except] [
either not -except [
if ask-for title item [do todo]
] [do todo]
]
tests: func [] [
; a: [a 1 b 2] now-is a 'b 3 now-is a 'c 4 ? a
]
]
;error? try [main]
se/main