Re: wait for messages
Title: Re: wait for messages on 2/24/02 6:00 PM, Bob Rasmussen at [EMAIL PROTECTED] wrote: > Can anyone give me some insight about the "wait for messages" command? -- I'm still a long ways from understanding all the new stuff in MC/RR different from HC, but I'm betting if no pending messages exist, it will freeze until RR gets a message, which would explain why the simple handler you wrote continued only after you moved the mouse, which sent a message, of course. If anything sends any message, open a card, move the mouse, type something, any message except idle, the script will take off again as soon as RR gets it. This gives some more control to the user. Everything (but idle) stops right where it is, if they need to answer the phone, stop the coffemaker from boiling over, whatever, but if RR was in the middle of making computations, that would continue. It probably wouldn't suspend computing, but it would stop the rest of the script from running until the user hits a key or moves the mouse, like what happens with a screensaver. Just a hunch. Best regards, Ken N.
Re: Little generic arrows (id 201317)
Title: Re: Little generic arrows (id 201317) On 24/2/02 9:59 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> scribed: Hello, I am trying to associate the Little generic arrows (image ID 201317) with a field, to display a range in the set numbers (1-30) when clicked up or down. I have set the cTargetField to the field name, and I have set MInValue and MaxValue for the arrows button. However, when I click the arrows up or down the number displayed in the field does not change. Do I need to put something in for the script of either the button or the field? Thanks Steve Nothing is needed in the scripts. You should put the name of the target field in cTargetField, don’t put it in quotes or anything like that. Your destination field should have two custom properties, one called cMinValue and the other called cMaxValue. I notice you say you set the arrow buttons? No, that’s not where to put the cMinValue and cMaxValue, you put them on the field. -i-
Re: sort stack by short id of this card
> on 2/24/02 7:48 AM, [EMAIL PROTECTED] at [EMAIL PROTECTED] wrote: >> I have a stack I am scripting for work. For years I have been using this in >> Hypercard. It is a "Form" made of six cards (designed to print cards 1 &2 on >> one page, cards 3 & 4 on the next page and cards 5 &6, on the last page). I >> have rewriten it in transcript and am now setting it to copy itself, and sort >> so that I have each form in order by field "Order Number". (on mouseUpgo >> first repeat 6..new cardgo nextsort stack by short id of >> this card) >> >> Everything works fineuntill I got to Card ID 1. Now card id 1 has >> decided it wants to be first in the card order. on 2/24/02 8:24 AM, Rob Cozens at [EMAIL PROTECTED] wrote: > I frankly don't understand why this works at all. You say you want the > cards in order by field "Order Number" but sort the stack by the short id > of each card. ?? -- Rob, I'm with you. I'll be writing a new invoice form for my outdoor business, which will be similar to Mr. Stgecft's, which I'll start outlining in a day or two, but sorting by ID number is not a consideration at all. I don't know what the card limits are, or even if there are any limits, in RR, but sorting by cd ID number makes little sense to begin with. If you ever accidentally deleted or copied a card somewhere in the middle of the stack, you could fix the problem by inserting a new one in the correct position, but, if you tried to sort by ID, even in HC, the whole sequence would go to heck in a handbasket. I assume that in RR, like HC, card ID's are (or need to be, in RR?) unique, regardless of where the card is, so sequencing card ID's in a stack would HAVE to be totally intentional. That'd be cross-stack dedicated linear. Card ID's are mostly for revisiting (as in Back or Go Recent, but under script control) by storing ID numbers in a variable(s), so you can revisit any card, or selection of cards, from any other card in any stack. Are the cards grouped in any way? It's seems unwise to sort the cards in groups of 6 using their ID numbers, except by total dedication. Virtually ANY card additions or deletions in ANY stack could throw it all off. In this case, they should be sorted by order number. Each order number would automatically bring up the first card of the group with that order number (in the same stack), regardless of ID numbers. But in RR, might intentionally group them by order number as a name. That way, if ever a decision is made to have more thn 6 cards in a group, it wouldn't matter. Just a thought. As to the stack starting to renumber itself at card ID 1, I'm just not sure. Seems like it couldn't be coincidence with such an ID number, doesn't it? Could it be a memory problem? Maybe MC/RR allocates card ID memory allowances in blocks of 100 or something similar. Best regards, Ken N. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
wait for messages
Can anyone give me some insight about the "wait for messages" command? The first time I ever tried to use it, I put the following lines into a main stack script: . . . wait for messages put "done waiting" . . . I ran the script from the message box and lo and behold, nothing happened until I moved the mouse, when "done waiting" appeared in the window. "Okay. That works just as expected," I thought. The trouble is, it has never worked since! That is, "wait for messages" never waits, but proceeds immediately to the next line in the script. I've tried a number of variations (putting the wait in a button script, calling the script in a delayed send, and so on), but with no luck. My initial suspicion was that there are repeated messages similar to idle, causing "wait for messages" to proceed. I identified a small number of potential candidates, but putting in handlers in the stack script to signal if they were occurring showed nothing. By the way -- this was particularly surprising for the mouseWithin message, which seems not to follow the usual message path. That is, a mouseWithin handler in a control gets the message, but without a handler in the control, the message is not passed up the hierarchy as you would expect. I didn't find any documentation of this feature. In any event, these messages also apparently cease when the cursor is outside any window (unless that counts as within something else), but "wait for messages", nevertheless, does not wait. Do I have the wrong idea about how "wait for messages" ought to work? Why should it have worked the first time, but not subsequently? Are there messages a script can never see (or that bypass the usual message hierarchy) that, nevertheless, satisfy the wait condition of "wait for messages"? Is there a way to see what messages are causing "wait for messages" to stop waiting? Is there a way to get a message trace in general? That would be extremely useful. What does the following note in the "waitDepth" entry of the Transcript Dictionary mean? "The wait for messages form of the wait command allows Revolution to respond to messages and execute handlers while waiting." Shouldn't that be "... with messages form ..."? Otherwise, as near as I can tell, as soon as there are messages to respond to, "wait for messages" stops waiting, so how can you "execute handlers while waiting" when you're no longer waiting? The only way I can reconcile this is if Revolution always handle at least one message before resuming from "wait for messages". Is that how it works? If so, how many messages does it handle before resuming? Speaking of "waitDepth", if there are multiple waits pending, in what order to they resume? Last first? Last last? Unspecified? Does a message resume all waiting handlers, or just the next in line? I'm guessing all, if the documentation is correct, but the resumption order question still pertains. I've looked in the Revolution stacks for examples of "wait for messages". They all look something like this: . . . repeat while someStatus is empty wait for messages end repeat . . . Why wasn't the command "wait while someStatus is empty with messages" used instead? Are these equivalent? One potential difference I see is that the repeat loop won't pause for messages if the loop condition is false, while "wait while" might require at least one message to proceed, even if the condition is already false. Is that right? Sorry for being longwinded, but a detailed section in the documentation on execution order, in the presence of waits and sends, would be welcome, and I'm hoping all these questions prompt some of its contents.
Re: Return all paths, recursively to deepest level
David, Thanks for the optimizations. You're right, there were a few other things I was doing with the code. BTW: This was developed in MC, not Rev, and at the time MC's "main" function was "directories", with "folders" as a synonym. Ken Ray Sons of Thunder Software Email: [EMAIL PROTECTED] Web Site: http://www.sonsothunder.com/ - Original Message - From: "David Vaughan" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Sunday, February 24, 2002 3:03 AM Subject: Re: Return all paths, recursively to deepest level > Ken > > Coincidentally, I had just stared writing a recursive directory walker > when Siva asked for one and you supplied. Very timely, thanks. > I noticed, however, that you use the construct "the directories" which > proves to be a synonym for "the folders" which is the function returned > if you search the Transcript Dictionary for "directories" or "folders". > > What other synonyms exist in Transcript and where are they documented? > Are synonyms deprecated? > > Incidentally, below is my refinement of your code to remove redundancies > (presumably from something else you were doing) and increase speed. > > regards > David > > global gHierList > > on mouseUp >put empty into gHierList > -- put empty into field 1 >answer folder "Pick a folder you want to walk:" >if it is empty then exit mouseUp >-- put it into defFold >directoryWalk it >sort gHierList >put gHierList into field 1 >-- set the defaultFolder to defFold > end mouseUp > > on directoryWalk whatFolder >set the defaultFolder to whatFolder >put the files into temp >repeat for each line x in temp > put whatFolder & "/" & x & return after gHierList >end repeat >put the folders into tDirList >repeat with x = 2 to the number of lines of tDirList > directoryWalk (whatFolder & "/" & (line x of tDirList)) >end repeat > end directoryWalk > > On Saturday, February 23, 2002, at 06:11 , Ken Ray wrote: > > > Siva, here you go: > > > > global gHierList,gMainFolder,gBaseLevels > > > > on mouseUp > > put "" into gHierList > > answer folder "Pick a folder you want to walk:" > > if it = "" then exit mouseUp > > set the itemDel to "/" > > put it into gMainFolder > > put the number of items of gMainFolder into gBaseLevels > > directoryWalk gMainFolder > > put gHierList into field 1 > > end mouseUp > > > > on directoryWalk whatFolder > > set the itemDel to "/" > > if "(2)" is in pDel then put 2 into numSpcs > > else put 4 into numSpcs > > put "" into spcPad > > set the directory to whatFolder > > put the files into temp > > sort temp > > repeat with x = 1 to the number of lines of temp > > put whatFolder & "/" & (line x of temp) into line (the number of > > lines > > of gHierList)+1 of gHierList > > end repeat > > put the directories into tDirList > > sort tDirList > > repeat with x = 2 to the number of lines of tDirList > > directoryWalk (whatFolder & "/" & (line x of tDirList)) > > end repeat > > end directoryWalk > > > > > > Enjoy! > > > > Ken Ray > > Sons of Thunder Software > > Email: [EMAIL PROTECTED] > > Web Site: http://www.sonsothunder.com/ > > > > - Original Message - > > From: "Sivakatirswami" <[EMAIL PROTECTED]> > > To: "Metacard List" <[EMAIL PROTECTED]>; > > <[EMAIL PROTECTED]> > > Sent: Friday, February 22, 2002 11:38 PM > > Subject: Return all paths, recursively to deepest level > > > > > >> Aloha: > >> > >> I think about 2 years ago Kevin or Richard sent me a script that would > >> return the full path for all folders and files, recursively down from > >> the > >> current working directory... but I can't seem to find that script... > >> Also > > I > >> can't seem to find the archives any more for the metacard card list > > serve... > >> > >> Does anyone have such a script? One could use Rinaldi's getDir > >> external, > > and > >> just replace the ":" with "/" in the list returned but that would not > >> be > >> cross platform... the returned output from the function would look > >> like > >> this: > >> > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/Drums hi 2 > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/Drums hi > >> fidelity.aiff > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/images > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/images/0616001 > >> Ocean > > Sky > >> .pict > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/Dev Tools-Practice > >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/Dev Tools-Practice/heim2.mc > >> > >> > >> etc. down through to the deepest sub folder and it's files. > >> > >> TIA > >> > >> Hinduism Today > >> > >> Sivakatirswami > >> Editor's Assistant/Production Manager > >> [EMAIL PROTECTED] > >> www.HinduismToday.com, www.HimalayanAcademy.com, > >> www.Gurudeva.org, www.hindu.org > >> > >> Read The M
Re: Bug Reports go where?
> elsewhere), using the geometry manager, try to set the horizontal personally i find the geometry manager to be buggy and to really mess up after resizing a window a few times (it works then all of a sudden it'll send my controls flying out of the visible space).. ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Little generic arrows (id 201317)
Hello, I am trying to associate the Little generic arrows (image ID 201317) with a field, to display a range in the set numbers (1-30) when clicked up or down. I have set the cTargetField to the field name, and I have set MInValue and MaxValue for the arrows button. However, when I click the arrows up or down the number displayed in the field does not change. Do I need to put something in for the script of either the button or the field? Thanks Steve
Re: Creating a browser window
On Sonntag, Februar 24, 2002, at 09:01 , [EMAIL PROTECTED] wrote: Hello, I am trying to build a simple browser in RR. However, I cannot figure out how to create the browser window; there appears to be no such icon on the tools/component palette to do this. For instance, in Visual Basic there is a WebBrowser control represented by a globe icon that creates a browsing window. There is no "Browser window" like in VB. Note that both VB and iExplorer are from microsoft, and that VB uses the build in IE engine under Windows, such an approach would not work under any other OS, or when they would split them apart (only four years since the antitrust started!). What you can do however, is to show each html page in a simple textfield with the command: put URL "file:http://any.url.here.com" into field "myTextfield" BUT! this will not show anything then text. maybe even the raw source, im not shure bout that. If thats the case add the following to make rev show a styled version: put htmltext of field "myField" into text of field "myField" When you want to display pictures, tables or anything like that, you would have to get them from the html-source yourself and make a Stack which shows the mixed content (could get very complicated if you ask me). But maybe someone already did that? Another aproach would be to tell a browser to open the URL for your stack/app. view the acrobat/applescript topics in this list for input on that. hope this helps BvG
Creating a browser window
Hello, I am trying to build a simple browser in RR. However, I cannot figure out how to create the browser window; there appears to be no such icon on the tools/component palette to do this. For instance, in Visual Basic there is a WebBrowser control â represented by a globe icon that creates a browsing window. I had asked this question a few days ago, but never really got an answer. I am new to programming and RR, so sorry if this is a stupid question. Thanks Steve [EMAIL PROTECTED]
Re: sort stack by short id of this card
>I have a stack I am scripting for work. For years I have been using this in >Hypercard. It is a "Form" made of six cards (designed to print cards 1 &2 on >one page, cards 3 & 4 on the next page and cards 5 &6, on the last page). I >have rewriten it in transcript and am now setting it to copy itself, and sort >so that I have each form in order by field "Order Number". (on mouseUpgo >first repeat 6..new cardgo nextsort stack by short id of >this card) > >Everything works fineuntill I got to Card ID 1. Now card id 1 has >decided it wants to be first in the card order. I frankly don't understand why this works at all. You say you want the cards in order by field "Order Number" but sort the stack by the short id of each card. ?? Rob Cozens CCW, Serendipity Software Company "And I, which was two fooles, do so grow three; Who are a little wise, the best fooles bee." from "The Triple Foole" by John Donne (1572-1631) ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: avoid the standard find dialog?
>What is the equivalent in RR to the >HyperCard handler > >on doMenu what > if what is "new card" then > go last > pass doMenu > else > pass doMenu > end if >end doMenu Hi Till, A caution from the MetaCard User Guide, p 126: "The doMenu command is provided for compatibility with HyperCard. All of the functionality accessable with the HyperCard doMenu command have equivalent commands in MetaCard, therefore use of doMenu is discouraged." As I have mentioned in a previous post, my stacks are button-driven, not menu-driven; so I can't tell you what "equivalent" system message to trap. My guess is menuPick. Rob Cozens CCW, Serendipity Software Company "And I, which was two fooles, do so grow three; Who are a little wise, the best fooles bee." from "The Triple Foole" by John Donne (1572-1631) ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
sort stack by short id of this card
I have a stack I am scripting for work. For years I have been using this in Hypercard. It is a "Form" made of six cards (designed to print cards 1 &2 on one page, cards 3 & 4 on the next page and cards 5 &6, on the last page). I have rewriten it in transcript and am now setting it to copy itself, and sort so that I have each form in order by field "Order Number". (on mouseUpgo first repeat 6..new cardgo nextsort stack by short id of this card) Everything works fineuntill I got to Card ID 1. Now card id 1 has decided it wants to be first in the card order. Now the sort stops working and new cards are placed out of the order desired. I tried inserting "Numeric", --sort stack nurmaric by short id of this card-- with no effect. The number of forms in this stack (consisting of six cards) is at 2133. The duplication of these forms has malfuntioned at 1238 (card id 1). I still have many more to get to where I was with Hypercard. Any ideas? ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: reordering lists
>Has anybody scripted drag-reordering of lists? > >martin baxter > Martin, The following is my technique for reordering in HyperCard and also for moving from field to field on a single card. This is my to do list (in various categories), calendar and generally where I spend most of my life. It shows a btn "Outliner" that is just a grey line to show where the line will go after the mouse is released. I imagine this will work in Revolution, but no doubt it can be done much more easily. Redoing it is on my list. It has evolved over almost 15 years, so on looking at it I can see improvements even within HyperCard. However, on today's machines it moves at the right speed, so there was little incentive to improve it. I use several HyperCard windowscripts in the same stack, but was not aware of the functionality you referred to. on mousedown --major revision of card & this script June 16, 1997 --flds are 15 points per line --height of flds is multiple of 15 + 8 and 13 from top & 7 between flds -- major revision April 20, 1998 to use "is within" and to do heights auto -- change heights global activeFld,wdsTBmoved if hilite of bg btn "Re-order" is true then --set up initial values put empty into activeFld put 0 into ht put the clickLine into tbMoved if tbMoved is not empty then put value of tbMoved into wdsTBmoved set the loc of cd btn Outliner to the mouseloc show cd btn Outliner repeat until the mouse is "Up" --move around to determine where item is going if activeFld is 3 then put 10 into ht else put 15 into ht end if set the loc of cd btn Outliner to the mouseh,((trunc((the mouseV)/ht)) * ht +4) localize if activeFld is not empty then --scrolling if the mouseV < (top of bg fld activeFld + 10) then wait 2 ticks set scroll of bg fld activeFld to (scroll of bg fld activeFld - 15) else if the mouseV > (bottom of bg fld activeFld - 10) then wait 2 ticks set scroll of bg fld activeFld to (scroll of bg fld activeFld + 15) end if end if end repeat --final location has been fixed, therefore: -- subtract top of fld less 15 lock screen hide cd btn Outliner if activeFld is not empty --if it is empty nothing happens then put top of cd btn Outliner - top of background field activeFld + (2*ht) into extra --item 2 of the loc put trunc((scroll of bg fld activeFld + extra)/ht) into MoveToLine if the last word of tbMoved = activeFld then if MoveToLine > word 2 of tbMoved then put wdsTBmoved & return before line MoveToLine of bg fld activeFld do "delete tbMoved" put 1 into plainAdjustFactor else do "delete tbMoved" put wdsTBmoved & return before line MoveToLine of bg fld activeFld put 0 into plainAdjustFactor end if else put wdsTBmoved & return before line MoveToLine of bg fld activeFld put 0 into plainAdjustFactor if last word of tbMoved is not 3 and activeFld is not 3 --calendar then do "delete tbMoved" end if end if repeat while last char of bg fld activeFld is return delete last char of bg fld activeFld end repeat end if end if if activeFld is 3 --calendar then set textstyle of line (MoveToLine-plainAdjustFactor) of bg fld activeFld to plain end if set dontWrap of background field "Appointments" to false end if end mousedown on localize -- major revision April 20, 1998 to use "is within" global activeFld if the mouseloc is within the rect of bg fld list then put "1" into activeFld --list else if the mouseloc is within the rect of bg fld Av then put "10" into activeFld --Av else if the mouseloc is within the rect of bg fld phone then put "6" into activeFld --phone else if the mouseloc is within the rect of bg fld short then put "7" into activeFld --short else if the mouseloc is within the rect of bg fld sec then put "8" into activeFld --sec else if the mouseloc is within the rect of bg fld "Appointments" then put "3" into activeFld --Calendar set dontWrap of background field 3 to true else if the mouseloc is within the rect of bg fld Waiting then put "9" into activeFld --Waiting else put empty into activeFld end if end if end if end if end if end if end if -- put activeFld end localize -- Bruce Lewis Lewis & Collyer 160 John Street, Sui
reordering lists
I don't need to do this right now, but I know that in due course I'm going to need to arbitrarily reorder lines of a list field. My idea of how to do this is to drag the lines to where I want them, which is how I do it currently in hypercard, using windowscript ( - a type 2 xcmd that isn't compatible with RR). In windowscript it's easy, you just set the behaviour of a list field to drag, and the rest is automatic. Clicking up/down buttons to move a selected line is OK I suppose for a short list of a few items, but once there are 30-40 items in the list, I feel it's inappropriate. RR doesn't seem to have a built-in ability to do this, unless I missed it? Are there other interface techniques I could consider? Has anybody scripted drag-reordering of lists? martin baxter ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Return all paths, recursively to deepest level
At 1:03 AM -0800 2/24/2002, David Vaughan wrote: >What other synonyms exist in Transcript and where are they documented? In the entry for each term that has one or more synonyms. (Look below the term.) >Are synonyms deprecated? No. -- Jeanne A. E. DeVoto ~ [EMAIL PROTECTED] http://www.runrev.com/ Runtime Revolution Limited - Power to the Developer! ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: RR1.1 Animation Tutorial problem
At 6:29 PM -0800 2/22/2002, dave test wrote: >In the Animation Tutorial, if I follow all of the directions (double >checking all of my object and animation names) the script/button for Show Me >will only work once. Once the reset button is clicked, somehow the >animation breaks. I'm guessing that you still have the Animation Manager open, and frame 20 chosen in the Animation Manager, when you click Reset. What happens in this case is that the Animation Manager picks up on the position change, and sets the "reset" position as frame 20 as well as frame 1... and therefore the animation doesn't move the field anywhere. If this is what's happening, the fix is simple: just close the Animation Manager before you click the Reset button. I'm tweaking the tutorial wording a little to make this less likely. (It's something the original writer of the tutorial didn't run into, because in earlier versions, the Animation Manager wasn't quite so sensitive to changes in object position.) -- Jeanne A. E. DeVoto ~ [EMAIL PROTECTED] http://www.runrev.com/ Runtime Revolution Limited - Power to the Developer! ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Return all paths, recursively to deepest level
Sivakatirswami wrote/ schreef: > Aloha: > > I think about 2 years ago Kevin or Richard sent me a script that would > return the full path for all folders and files, recursively down from the > current working directory... but I can't seem to find that script... Also I > can't seem to find the archives any more for the metacard card list serve... > [snip] I made something myself, have a look below. Your list would be possible with: answer folder "Choose dir to dig..." if the result is "Cancel" the exit to top put relPath(deepFiles(it),it) into field "tFiles" Regards, / Groeten, Sjoerd --- SCRIPT --- function deepFiles startDir set the cursor to busy if it is "Cancel" then exit to top set the directory to startDir local tFiles repeat for each line tFile in the files put startDir & "/" & tFile into line (the number of lines in tFiles + 1) of tFiles end repeat repeat for each line tDir in line 2 to -1 of the directories put deepFiles(startDir & "/" & tDir) into line (the number of lines in tFiles + 1) of tFiles set the directory to startDir end repeat return tFiles end deepFiles function relPath absFiles,absDir repeat for each line tFile in absFiles put oneRelPath(tFile,absDir) into line (the number of lines in relFiles + 1) of relFiles end repeat return relFiles end relPath function oneRelPath absFile,absDir set itemDel to "/" repeat forever if item 1 of absDir = item 1 of absFile then delete item 1 of absFile delete item 1 of absDir else put repeatString("../",the number of items in absDir) before absFile exit repeat end if end repeat return absFile end oneRelPath function repeatString rString,rTimes local repeatedString repeat for rTimes times put rString after repeatedString end repeat return repeatedString end repeatString ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Return all paths, recursively to deepest level
Ken Coincidentally, I had just stared writing a recursive directory walker when Siva asked for one and you supplied. Very timely, thanks. I noticed, however, that you use the construct "the directories" which proves to be a synonym for "the folders" which is the function returned if you search the Transcript Dictionary for "directories" or "folders". What other synonyms exist in Transcript and where are they documented? Are synonyms deprecated? Incidentally, below is my refinement of your code to remove redundancies (presumably from something else you were doing) and increase speed. regards David global gHierList on mouseUp put empty into gHierList -- put empty into field 1 answer folder "Pick a folder you want to walk:" if it is empty then exit mouseUp -- put it into defFold directoryWalk it sort gHierList put gHierList into field 1 -- set the defaultFolder to defFold end mouseUp on directoryWalk whatFolder set the defaultFolder to whatFolder put the files into temp repeat for each line x in temp put whatFolder & "/" & x & return after gHierList end repeat put the folders into tDirList repeat with x = 2 to the number of lines of tDirList directoryWalk (whatFolder & "/" & (line x of tDirList)) end repeat end directoryWalk On Saturday, February 23, 2002, at 06:11 , Ken Ray wrote: > Siva, here you go: > > global gHierList,gMainFolder,gBaseLevels > > on mouseUp > put "" into gHierList > answer folder "Pick a folder you want to walk:" > if it = "" then exit mouseUp > set the itemDel to "/" > put it into gMainFolder > put the number of items of gMainFolder into gBaseLevels > directoryWalk gMainFolder > put gHierList into field 1 > end mouseUp > > on directoryWalk whatFolder > set the itemDel to "/" > if "(2)" is in pDel then put 2 into numSpcs > else put 4 into numSpcs > put "" into spcPad > set the directory to whatFolder > put the files into temp > sort temp > repeat with x = 1 to the number of lines of temp > put whatFolder & "/" & (line x of temp) into line (the number of > lines > of gHierList)+1 of gHierList > end repeat > put the directories into tDirList > sort tDirList > repeat with x = 2 to the number of lines of tDirList > directoryWalk (whatFolder & "/" & (line x of tDirList)) > end repeat > end directoryWalk > > > Enjoy! > > Ken Ray > Sons of Thunder Software > Email: [EMAIL PROTECTED] > Web Site: http://www.sonsothunder.com/ > > - Original Message - > From: "Sivakatirswami" <[EMAIL PROTECTED]> > To: "Metacard List" <[EMAIL PROTECTED]>; > <[EMAIL PROTECTED]> > Sent: Friday, February 22, 2002 11:38 PM > Subject: Return all paths, recursively to deepest level > > >> Aloha: >> >> I think about 2 years ago Kevin or Richard sent me a script that would >> return the full path for all folders and files, recursively down from >> the >> current working directory... but I can't seem to find that script... >> Also > I >> can't seem to find the archives any more for the metacard card list > serve... >> >> Does anyone have such a script? One could use Rinaldi's getDir >> external, > and >> just replace the ":" with "/" in the list returned but that would not >> be >> cross platform... the returned output from the function would look >> like >> this: >> >> MyHardDrive/MetaCard 2.3.1/ KT Stacks >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/Drums hi 2 >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/Drums hi >> fidelity.aiff >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/images >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/ INNERSEARCH/images/0616001 >> Ocean > Sky >> .pict >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/Dev Tools-Practice >> MyHardDrive/MetaCard 2.3.1/ KT Stacks/Dev Tools-Practice/heim2.mc >> >> >> etc. down through to the deepest sub folder and it's files. >> >> TIA >> >> Hinduism Today >> >> Sivakatirswami >> Editor's Assistant/Production Manager >> [EMAIL PROTECTED] >> www.HinduismToday.com, www.HimalayanAcademy.com, >> www.Gurudeva.org, www.hindu.org >> >> Read The Master Course Lesson of the Day at >> http://www.gurudeva.org/lesson.shtml >> >> ___ >> metacard mailing list >> [EMAIL PROTECTED] >> http://lists.runrev.com/mailman/listinfo/metacard >> ___ >> use-revolution mailing list >> [EMAIL PROTECTED] >> http://lists.runrev.com/mailman/listinfo/use-revolution >> > > ___ > use-revolution mailing list > [EMAIL PROTECTED] > http://lists.runrev.com/mailman/listinfo/use-revolution > ___ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution