AW: AW: AW: AW: slown down of IDE 2.9 under windows
Bonjour Eric, thanks for your thoughts. Actually I didn't thought that 2300 lines of code could affect the IDE and as I posted before, the slowdown is already with only IDE open, without any stack open, very curious. A bit of hisrory: There is a competitive product of rev, Toolbook (which has the same Hypercard derivation as Rev) which has the 2^15 KB char limit per field still today :-) Tiemo I have many stacks with 5,000 lines of code. GLX2 Script Editor mainstack has over 15,000 lines of code. This is the script I use to test GLX2 Script Editor's performance. I don't think 2,300 lines is too many. A bit of history :-) Once upon a time was Hypercard. Its text engine was not able to handle more than 2^15 KB. About 30 000 chars. Then scripts were limited to this value *. Note that it is not lines but chars :-) In Rev, there is no limit; a single script may count millions of lines if needed ** As said Jerry and as for my experience, some thousands of lines are not a problem. May be Richard will chime in with his (useful) benchmarks but I never encountered any problem with scripts length or handlers number. - It makes me think about another subject: I'm an addict of modular code *** Does a modular code is able to slow down execution? As for me, I was not able to prove it in 'real' situations. Seems that computing is far more time consuming than code architecture: Good discussion subject ;-) - * The way to get around was of course to use stacks in use. ** But I would bet there is an architecture problem ;-) *** Readability, reusability, etc. Best regards from Paris, Eric Chatonet. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
AW: Can you realise a transparent hover color for buttons?
Hi Ken, that does almost the trick, beside the blendlevel does affect not only the backgroundcolor, but also the text. Thanks Tiemo -Ursprüngliche Nachricht- Von: [EMAIL PROTECTED] [mailto:use-revolution- [EMAIL PROTECTED] Im Auftrag von Ken Ray Gesendet: Mittwoch, 10. September 2008 23:08 An: Use Revolution List Betreff: Re: Can you realise a transparent hover color for buttons? Am I right that these are the two options for making a hover effect (icons or solid colors), or is there a trick with a workaround to create a 50% opacity hover effect? Try this: set the blendLevel of button MyButton to 50 This should affect the entire button. Ken Ray Sons of Thunder Software, Inc. Email: [EMAIL PROTECTED] Web Site: http://www.sonsothunder.com/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Rev 3.0 Cloning problem
Hi Bernard, When I copied the script from the 3.0 script editor and pasted it into the email all the spaces were somehow stripped out. I didn't notice until later. Regards John -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Bernard Devlin Sent: Wednesday, 10 September 2008 5:19 PM To: How to use Revolution Subject: Re: Rev 3.0 Cloning problem Just a quick question: is this really the line of code you have in the script editor: sendchoose browse tooltomein1tick Or have the spaces been stripped out somehow? Bernard On Wed, Sep 10, 2008 at 5:55 AM, John Tregea [EMAIL PROTECTED] wrote: Hi Fellow Rev'ers, I have been trying out Rev 3.0 across a number of iterations and recently came across a problem (3.0gm Build 750). I have a piece of code that makes a clone of a stack, renames it and then populates the new version of the stack with data from a database. This has worked fine in 2.8, 2.9 and earlier iterations of 3.0. The problem is that when the script gets to the clone command it performs that line then just exits as if there is no more code. No error is returned. Anyone seen this behaviour? The code looks like this. ifthereisnotastack tTheStack then clonestackresource_template sendchoose browse tooltomein1tick setthenameofstack it to tTheStack endif The variable tTheStack contains the name for the new stack. In debug mode the variable is correctly populated, the stack IS cloned, then the script just exits. Any help would be appreciated Regards John Tregea Technology Director Debraneys +61 (0) 4 0363 9367 Mobile www.debraneys.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Rev 3.0 Cloning problem
Dear Mark, Thanks for the guidance. Both your version and mine just stopped at the line clone stack resource_template That line is executed (and the resource_template stack is cloned), but the next line is not. I just tried inserting Lock messages before the clone stack command and now it is ok. It struck me that there may have been another window message handler being triggered that was interrupting the process. Hm. Regards John -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mark Schonewille Sent: Wednesday, 10 September 2008 7:57 PM To: How to use Revolution Subject: Re: Rev 3.0 Cloning problem Hi John, The correct procedure is: clone stack resouce_template put it into myTempStackID -- do other stuff here set the name of myTempStackID to myStackName You don't need the keyword stack before the variable containing the long ID of the new stack. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering http://economy-x-talk.com http://www.salery.biz http://facebook.economy-x-talk.com Benefit from our inexpensive hosting services. See http://economy-x-talk.com/server.html for more info. On 10 sep 2008, at 06:55, John Tregea wrote: Hi Fellow Rev'ers, I have been trying out Rev 3.0 across a number of iterations and recently came across a problem (3.0gm Build 750). I have a piece of code that makes a clone of a stack, renames it and then populates the new version of the stack with data from a database. This has worked fine in 2.8, 2.9 and earlier iterations of 3.0. The problem is that when the script gets to the clone command it performs that line then just exits as if there is no more code. No error is returned. Anyone seen this behaviour? The code looks like this. ifthereisnotastack tTheStack then clonestackresource_template sendchoose browse tooltomein1tick setthenameofstack it to tTheStack endif The variable tTheStack contains the name for the new stack. In debug mode the variable is correctly populated, the stack IS cloned, then the script just exits. Any help would be appreciated Regards John Tregea ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Zipping an application package by script
Is is possible that you reversed the parameters? The tar output file comes first, then the remaining parameters are files / folders to include. tar -cf MyApplication.app MyApplication.tar = tar: MyApplication.app: Cannot open: Is a directory tar: Error is not recoverable: exiting now tar -cf MyApplication.tar MyApplication.app = success! The problem is that it, being Linux doesn't seem to like mac .app packages. That's the rub. tar: /Users/...app/: Cannot open: Is a directory tar: Error is not recoverable: exiting now could someone try this with a standalone.app being tarred? Thanks for the tip on using tar to compress nested folders. I did the following on Mac OSX 10.5.4 = 3 folders containing two files with the same name --nestedFolder --folder01 --index.php --folder02 --index.php ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: linux: cannot load ssl library
I've added some details to the bug report. In addition to the distros I listed above, Ubuntu and Fedora do NOT have the symlink. Slackware, arch, gentoo are the only distros I could find that do have the symlink. My guess is that rev's support for SSL on Linux can only have been tested on one of the latter distributions. Yet looking at distrowatch, the three most popular distros are Ubuntu, Fedora, and OpenSuSe. Three years ago Fedora and Suse were still in the top three (along with mandrake). Very strange. Bernard On Wed, Sep 10, 2008 at 8:55 PM, Pierre Sahores [EMAIL PROTECTED] wrote: Thanks for the input, Bernard. Best Regards, -- Pierre Sahores mobile : 06 03 95 77 70 www.sahores-conseil.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Can you realise a transparent hover color for buttons?
Bonjour Tiemo, If I understand your problem correctly*, I don't think you can achieve your goal without building your own control. How to create custom controls using PNG images tutorial might help you: This stack shows how, using PNG images with transparency, you are able to create any nice custom control. Three examples are provided: a standard button, a progress bar and a sprite effect. You will access this tutorial through Tutorials Picker a free plugin that interfaces with the So Smart Software website in order to display all available tutorials stacks directly from the web. You will find it by going to http://www.sosmartsoftware.com/ Revolution/Plugins or Tutorials section. * I assume you don't want to 'blend level' the whole control (text and button's borders). Le 10 sept. 08 à 14:21, Tiemo Hollmann TB a écrit : I have some text buttons, where I would like to realise a hover effect (mouseover) with a (50%) opaque/transparent color of the button (like the menu items of MS Office products on Win). Up to now I can't see a solution for this. As standard properties I can only set icons for hover (which would only make sense with icon buttons, not with text buttons, no colors, nore transparent colors. If I would make my hover effect myself with mouseenter, I can't control the transparency of the button color, just solid colors. Am I right that these are the two options for making a hover effect (icons or solid colors), or is there a trick with a workaround to create a 50% opacity hover effect? Probably is a set of icons anyway the solution of choice. Best regards from Paris, Eric Chatonet. Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/ Email: [EMAIL PROTECTED]/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Play iTunes protected videos
Hiya, Insofar as I can recall, unless explicitly stated (especially in more recent documents) you ARE 'permitted' to make a BACKUP of any media you own, provided that is its sole purpose. Wether it is usable (DRM) that's another matter... Cheers, Luis. On 10 Sep 2008, at 21:24, Richmond Mathewson wrote: Hum! It never ceases to amaze me that this sort of questions are even asked. As quickly as people develop electronic protection schemes other people work out ways to get round them. I have just spent 2 minutes searching with Google and, could, should I wish (which I don't as I don't own any DRM or other-wise protected media files), undo the protection lickety-split. Presumably Apple, in their infinite wisdom, have protected their media files just exactly so that everybody, including RR programmers and end-users, cannot play them. However, as Runtime Revolution works with Quicktime, it should play any file that Quicktime can play. It is probably necessary to 'tell' Revolution to play DRM audio files using the Player object as if they were video files; i.e. define DRM audio files with videoClip rather than with audioClip. A few years ago I authored a CD-ROM for Scottish High Schools on music education; I converted all the original sound files into MOV files (using a blank image as a dummy video file); this allowed for a good level of end-user control via play videoClip at xx,xx. Personally I object to the following: I am legally not allowed to make a backup copy of a DVD I own (bl**dy silly when it gets damaged), similarly with music CDs, I am legally not allowed to transfer data from gramophone records I own to home made music CDs for my own use, I am legally not allowed to transfer data from cassette tapes I own to home made music CDs for my own use, I am legally not allowed to transfer data from VHS tapes I own to home made DVDs for my own use. As a result my home is full of gramophone players, cassette players, VHS players and so forth, taking up an awful lot of space. I am a child of the 1970s who grew up with a cheap cassette recorder and an even cheaper record-player: my friends and I cross- copied without being aware of doing anything 'naughty'. We all spent quite a lot of our parents' hard-earned money on records. So why on earth I should pay money for a DRM-protected piece of music I cannot pop onto a CD to listen to on a picnic, or, even, transfer to another of my machines so that I can listen to it in another room, I don't know. A Thorn in the flesh is better than a failed Systems Development Life Cycle. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
AW: Can you realise a transparent hover color for buttons?
Thank you Eric, yes I will go the approach with PNGs Tiemo -Ursprüngliche Nachricht- Von: [EMAIL PROTECTED] [mailto:use-revolution- [EMAIL PROTECTED] Im Auftrag von Eric Chatonet Gesendet: Donnerstag, 11. September 2008 09:33 An: How to use Revolution Betreff: Re: Can you realise a transparent hover color for buttons? Bonjour Tiemo, If I understand your problem correctly*, I don't think you can achieve your goal without building your own control. How to create custom controls using PNG images tutorial might help you: This stack shows how, using PNG images with transparency, you are able to create any nice custom control. Three examples are provided: a standard button, a progress bar and a sprite effect. You will access this tutorial through Tutorials Picker a free plugin that interfaces with the So Smart Software website in order to display all available tutorials stacks directly from the web. You will find it by going to http://www.sosmartsoftware.com/ Revolution/Plugins or Tutorials section. * I assume you don't want to 'blend level' the whole control (text and button's borders). Le 10 sept. 08 à 14:21, Tiemo Hollmann TB a écrit : I have some text buttons, where I would like to realise a hover effect (mouseover) with a (50%) opaque/transparent color of the button (like the menu items of MS Office products on Win). Up to now I can't see a solution for this. As standard properties I can only set icons for hover (which would only make sense with icon buttons, not with text buttons, no colors, nore transparent colors. If I would make my hover effect myself with mouseenter, I can't control the transparency of the button color, just solid colors. Am I right that these are the two options for making a hover effect (icons or solid colors), or is there a trick with a workaround to create a 50% opacity hover effect? Probably is a set of icons anyway the solution of choice. Best regards from Paris, Eric Chatonet. Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/ Email: [EMAIL PROTECTED]/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Play iTunes protected videos
Insofar as I can recall, unless explicitly stated (especially in more recent documents) you ARE 'permitted' to make a BACKUP of any media you own, provided that is its sole purpose. Wether it is usable (DRM) that's another matter... Cheers, Luis. Not in the EU! A Thorn in the flesh is better than a failed Systems Development Life Cycle. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
Hi Lynn, What would you say about starting your own mailing list rather than sending your newsletter to this list? If we all start sending our newsletters to this list, I think it'll get a bit cluttered. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering http://economy-x-talk.com http://www.salery.biz http://facebook.economy-x-talk.com Benefit from our inexpensive hosting services. See http://economy-x-talk.com/server.html for more info. On 11 sep 2008, at 00:33, Lynn Fredricks wrote: http://www.mirye.com/index.php/Latest/Mirye-RevCamp-Issue-809.html Hello all, We've posted our second monthly release, given it a different name and modified the format. Each month, we offer a goodie bag of additional materials of interest to Mirye Revolution customers who are eligible for upgrades. Since a number of months of updates are included when you order Revolution, we want to have every month count. This is our Back to School issue of RevCamp, which includes a nice replacement set of art-icons for HyperCard-Revolution porting and two weeks of Jerry Daniel's new Rev Mentor service. Qualified Mirye Revolution Studio and Enterprise customers are also receiving the full version of Animation Engine - now a $79 value. Limited time benefits are only available in the month they are released, so if you are eligible, its worth the effort to download them while they are available. Let me anticipate your first question - there are 168 unique icons/ images in the set :-) There are also some newsbytes on offers, pricing and some article reprints that are of interest to new customers. Over the next several months, we will be dramatically upgrading our website and form of RevCamp. If you've written some articles on Revolution, or would like to contribute, please follow up with me off-list. We are targeting a slightly different segment of customer than Runtime that is learning Revolution and scripting for the first time, but also bringing on more institutional customers, such as the US Department of Justice. Best regards, Lynn Fredricks Mirye Software Publishing http://www.mirye.com Mirye Community NING http://miryesoftware.ning.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Play iTunes protected videos
You CAN buy backup software in the EU... Cheers, Luis. On 11 Sep 2008, at 10:58, Richmond Mathewson wrote: Insofar as I can recall, unless explicitly stated (especially in more recent documents) you ARE 'permitted' to make a BACKUP of any media you own, provided that is its sole purpose. Wether it is usable (DRM) that's another matter... Cheers, Luis. Not in the EU! A Thorn in the flesh is better than a failed Systems Development Life Cycle. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: chat protocols
I'll be upgrading my Jabber / GoogleTalk library - once I've finished catching up with Rev 3.0. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: [FYI] WEBKIT
True - haven't done that - think it wouldn't distinguish between identical frameworks installed in different places. I guess my main interest is where the WebKit framework that Rev uses is. By looking in the bundles of Safari and the nightly WebKit.app builds - it is clear that Safari is using a system library framework, while the WebKitt.app bundles the frameworks inside the bundle - which makes sense. I assume Rev does the same thing as Safari, all though I have established that some Safari plugins do not take with Rev's WebKit. Apparently this is because plugins can be written in such a way as to depend on Safari specifics and not just WebKit? 2008/9/10 Ken Ray [EMAIL PROTECTED] I'm trying to figure out which WebKit framework revBrowser uses, and therefore how it interacts with upgrades, and installation of Safari plugins. Can you get the user agent? It should have the version and build number of WebKit that it uses in the result (or so I've been told). ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: AW: AW: AW: slown down of IDE 2.9 under windows
On Sep 10, 2008, at 4:09 PM, Richard Gaskin wrote: put the script of stack StackWithABunchOfcode That will dump the text of the script into the Message Box. If it takes about the same time as it does to open GLX2 with the same script, the issue lies elsewhere. I can tell you right now that GLX2 does NOT render a script as fast as you can put a script into a message box. Not even close. If the user is colorizing scripts and showing links to handlers in scripts, then this will take some millisecs, depending upon the machine, OS and processor. But I wouldn't think 2300 lines of code is much of a challenge for GLX2 Script Editor. When I open my large test script with the Rev 3.0 script editor it does not happen instantly, either. Best, Jerry Daniels Daniels Mara, Inc. Makers of GLX2 http://www.glx2.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Mirye Monthly Release: Mirye RevCamp Issue 809
What would you say about starting your own mailing list rather than sending your newsletter to this list? If we all start sending our newsletters to this list, I think it'll get a bit cluttered. Hi Mark, The majority of RevCamp is a unique, monthly package of free stuff - not really a newsletter but a sort of glue around several small releases. There are too many hooks in Runtime Revolution and in the license process for our customers not to end up here on this list. Runtime Revolution isnt developed with OEMing in mind and I wouldn't want to burden the developers with a request to do that. That said, anyone who makes a major release of their Revolution add-on should make sure they send us their press releases. It doesn't matter if you aren't in our online store, so long as you maintain your own presence on the internet. The Revolution community could use more organized clutter. A sure sign of a healthy development tool ecosystem is the size and viability of its third party tool supplier market, as well as the number of consulting companies that support it. We are very happy to support and be supported by developers like DerBrill and Jerry's new Rev Mentor service, because in the end, it means we all generate more revenue to in turn support and grow that ecosystem. Best regards, Lynn Fredricks Mirye Software Publishing http://www.mirye.com Mirye Community NING http://miryesoftware.ning.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Re: chat protocols
Andre: Thanks. It appears M$ changed their protocol, so I will need to get in touch with S. David: I am VERY interested to learn more about your library. All the best, Malte ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Walking Trees Backwards
No before anyone asks this isn't a new age thing :) It's about hierarchical (tree) data structures - not being a computer scientist its out of my league, and I feel that someone who knows a bit about these beasts can advise. *Task* I want to put an indented outline (more generally a tree structure) into an array. *Background* An outline is your regular tab indented outline you might have in a word processor or a rev field. I have a small library for these structures as I have to deal with them a lot - so I can turn them into XML and use paths (nodes) and get children and parent relationships etc. Quite a lot of them are recursive. *Problem* With XML I could add the bits as I walked down the tree. I think I can do the same with the new array structures in 3.0 - but for compatibility I was thinking of using a technique for marshaling arrays - that allows arrays to be arbitrarily nested - but for that I need to walk the trees backwards from leaf to trunk. This is getting complicated - I dislike recursion at the best of times - but backwards recursion with marshaling doesn't not sound good :) I am thinking of something roughly along the lines of: 1. working out the maximum depth of the outline and then repeating *down*from that 2. for each node finding its parent 3. for each parent finding its children 4. remove the children from the list of nodes at that level 5. putting the children into an array keyed on the parent 6. repeat through the remaining nodes of that level 7. marshaling the array 8. going up a level Others used to dealing with hierarchical tree structure using XML or similar may have a design pattern. Any suggestions? Alternatively might give up, and see if I can use forward tree walking and a more suitable data structure like XML or the new arrays. Is backward walking of tree structures ever necessary - or can the same thing generally be achieved with forward walking? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: AW: AW: AW: slown down of IDE 2.9 under windows
Jerry Daniels wrote: On Sep 10, 2008, at 4:09 PM, Richard Gaskin wrote: put the script of stack StackWithABunchOfcode That will dump the text of the script into the Message Box. If it takes about the same time as it does to open GLX2 with the same script, the issue lies elsewhere. I can tell you right now that GLX2 does NOT render a script as fast as you can put a script into a message box. Not even close. If the user is colorizing scripts and showing links to handlers in scripts, then this will take some millisecs, depending upon the machine, OS and processor. But I wouldn't think 2300 lines of code is much of a challenge for GLX2 Script Editor. When I open my large test script with the Rev 3.0 script editor it does not happen instantly, either. I think I would win Understatement of the Year if I referred to you as an experienced scripter. :) I understand you do some nifty processing of the script to put in the links etc., but I also understand you know what you're doing and suspect that any such difference would not be noticeable, at least not enough to cause the sort of slowdown noted here. That's why this subjective test is perhaps more useful than a formal benchmark: for a slowdown to be really noticeable it would have to be severe, likely more severe than any amount of processing GLX2 could be doing on a mere 2300-line script. I suggested this only as a first step in diagnosis, establishing some sort of baseline to hopefully lead us to the root cause. GLX2 users seem very happy with the editor, so I suspect the root cause will be found elsewhere. But to find that root cause it will be useful to remove variables from the equation, so testing raw script access seems a good starting point. -- Richard Gaskin Managing Editor, revJournal ___ Rev tips, tutorials and more: http://www.revJournal.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Rev 3.0 Cloning problem
John Tregea wrote: Thanks for the guidance. Both your version and mine just stopped at the line clone stack resource_template That line is executed (and the resource_template stack is cloned), but the next line is not. Try inserting this line immediately after the clone statement: put the result If that's empty, then move it down one line and see what it returns. -- Richard Gaskin Managing Editor, revJournal ___ Rev tips, tutorials and more: http://www.revJournal.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: semi-OT: can Rev pre-populate data on a web form?
Just wanted to write and say thanks to Trevor, Ben, and Jim. Using the web form is working great. I just needed a little push in the right direction, and I got it here. So thanks for the suggestions. Chris On Sep 5, 2008, at 3:28 AM, Ben Rubinstein wrote: Chris Sheffield wrote: So my main question is, can Rev send data to a web form like this in such a way that whatever fields we specify will be populated when the browser/form opens? Not sure if something like this is even possible. I haven't done enough web development to know. Is some special JavaScript required to accomplish this? In thinking this through a little more, if we have a web form that's already set up to send an email, can't I take advantage of that in Rev by creating my own form and then sending the data straight to the cgi behind the form? Once again, I haven't done much web dev, so I may not even know what I'm talking about. :-) If anyone can help or can offer any other suggestions for how to accomplish something similar, it'd be much appreciated. If I've understood your request correctly, you really want a Rev stack to collect some information from the user, and have it arrive at your server in the form of an email. There's a simple way to get what you want, I think. Using the SMTP libraries should make this possible, but has some issues, in particular your rev stack then needs to know the address of a mail server it can use from within the user's network to send email. But if you have a web form on your server that's successfully sending email where you want it, there's no need to open a user's browser to view it. Instead, Rev can effectively be that web form. (Apologies if what follows is teaching my granny to suck eggs.) If you look at the source of the web page, it will contain a form element with an action and a method. The action is the address of a server-side resource (a script etc) which receives the values entered into the form and processes it, in this case by sending an email. The method is either POST or GET. If it's GET, then the resource expects the values in the URL string, eg if I fill in this simple form form method=GET action=formmail.cgi input name=first type=text input name=last type=text input type=submit / /form my browser will next fetch a URL like this: ./formmail.cgi?first=Benlast=Rubinstein (the first part of the URL being constructed based on the URL of the page holding the form, adjusted by the 'action' of the form.) Lecture over; the point is that executing put ./formmail.cgi?first=Benlast=Rubinstein into tURL get URL tURL or perhaps more likely put ./formmail.cgi into tScriptURL put tScriptURL \ ?first= tFirstName \ last= tLastName \ into tURL get URL tURL in your Rev stack will have exactly* the same effect on the 'formmail.cgi' resource as the user entering those details into their browser. At this point Rev is acting like a browser, making a request of the web server. So no need to open an actual browser. If the form uses the POST method instead, then it's only slightly more complicated. Instead of get URL, you need to use the post command, which will look something more like this: put libURLformData(first, tFirstName, last, tLastName) into tData post tData to tScriptURL There will be a few complications along the way; you should read the (splending new in 3.0) docs, check out functions like URLencode, and above all, test. But either way, given that you have the web form already, this is probably the simplest route to achieve what you want. HTH, - Ben *pedants please leave now ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution -- Chris Sheffield Read Naturally, Inc. www.readnaturally.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: AW: AW: AW: slown down of IDE 2.9 under windows
Richard, 10-4, good buddy. Just setting expectations, here. Best, Jerry http://revmentor.com http://glx2.com IF YOU JUST TURN AROUND WHILE YOU'RE REMINISCING, YOU CAN SEE INTO THE FUTURE. On Sep 11, 2008, at 10:08 AM, Richard Gaskin wrote: Jerry Daniels wrote: On Sep 10, 2008, at 4:09 PM, Richard Gaskin wrote: put the script of stack StackWithABunchOfcode That will dump the text of the script into the Message Box. If it takes about the same time as it does to open GLX2 with the same script, the issue lies elsewhere. I can tell you right now that GLX2 does NOT render a script as fast as you can put a script into a message box. Not even close. If the user is colorizing scripts and showing links to handlers in scripts, then this will take some millisecs, depending upon the machine, OS and processor. But I wouldn't think 2300 lines of code is much of a challenge for GLX2 Script Editor. When I open my large test script with the Rev 3.0 script editor it does not happen instantly, either. I think I would win Understatement of the Year if I referred to you as an experienced scripter. :) I understand you do some nifty processing of the script to put in the links etc., but I also understand you know what you're doing and suspect that any such difference would not be noticeable, at least not enough to cause the sort of slowdown noted here. That's why this subjective test is perhaps more useful than a formal benchmark: for a slowdown to be really noticeable it would have to be severe, likely more severe than any amount of processing GLX2 could be doing on a mere 2300-line script. I suggested this only as a first step in diagnosis, establishing some sort of baseline to hopefully lead us to the root cause. GLX2 users seem very happy with the editor, so I suspect the root cause will be found elsewhere. But to find that root cause it will be useful to remove variables from the equation, so testing raw script access seems a good starting point. -- Richard Gaskin Managing Editor, revJournal ___ Rev tips, tutorials and more: http://www.revJournal.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Using arrow keys to move from card to card
I have a stack which functions just as I intend it except for one card. When run from a splash screen standalone, that arrow keys on my Mac can be used to go forward and backwards in the stack--UNTIL I get to cd 10. On Cd 10 the arrow keys do not navigate to the next or previous cd, they just seem to do nothing. If I get to CD 11 by using scripted buttons, then keyboard arrow keys work fine, as they do on every other card. For the life of me, I can't find the spot where keyboard navigation got toggled off on CD 10. Can anyone help me? TIA Marian ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: AW: AW: AW: AW: slown down of IDE 2.9 under windows
Tiemo Hollmann wrote: Actually I didn't thought that 2300 lines of code could affect the IDE and as I posted before, the slowdown is already with only IDE open, without any stack open, very curious. Definitely odd. This may not be necessary, but have you considered a fresh install? If nothing else it'll help ensure you're back to the default configuration, reducing the deltas between your experience and that of systems performing better. A bit of history: There is a competitive product of rev, Toolbook (which has the same Hypercard derivation as Rev) which has the 2^15 KB char limit per field still today :-) Nice to see another ToolBook refugee here. Before I jumped on the MetaCard/Rev bandwagon I did the programming on a CBT series for a major retail chain with ToolBook. I liked many things about it (esp. the direct script access to OS APIs), but alas my clients just can't afford to use platform-specific tools anymore. Is it still $2,495? I visited toolbook.com to check the prices, but when I clicked the Store link I got: Microsoft OLE DB Provider for SQL Server error '80040e14' Incorrect syntax near '='. /30094192/init.asp, line 41 Like I said, my clients can't afford to use platform-specific tools. ;) They're up to v9.5 and still have that text limit? Odd. Coupled with the multi-year span between v7 and v8, I gotta wonder what's up with that code base. TB's boot sequence (at least as of v7, the last I used) is very strange, with DLLs and script libraries in at least three different directories across the hard drive. I discussed this with their support staff while I was having a tough time tracking down a strange bug, and at the time they said they had no documentation on the boot sequence so I was left to my own devices to track it down. After I'd figured it out I submitted documentation on it to the team, and to the best of my knowledge that was the only support documentation on the boot sequence they had for some time. I was happy to help -- they were really nice people -- but it seemed an odd omission for a system that complex. That's one of the things I loved about the Rev engine the moment I started using it: it delivers a self-contained EXE, and a surprisingly small one at that. Even today, when I deliver products to Fortune 500 companies, their IT staff sometimes ask me what else is needed for installation and are surprised when I tell them the little EXE is all they need. What DLLs does it need? they ask. None, I say. They walk away confused but happy. :) Still, there are some very good ideas in ToolBook, some of which would benefit us here, like the new iPhone deployment option. PS: I found the issue with TB's Store: seems they require cookies, but don't provide a warning when they're turned off (love Firefox's privacy options). The current price is $2,795. Makes Rev Enterprise look like a steal, even more so when you consider the multi-platform deployment options. -- Richard Gaskin Managing Editor, revJournal ___ Rev tips, tutorials and more: http://www.revJournal.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Access to Rev User Interface Controls
Hello everyone, I'm interested in learning how to create and script some of the controls, such as the field expander and title bar in list fields, that appear in Revolution's Dictionary user interface. It used to be that if I checked Revolution UI elements appear in lists of stacks and the associated shortcut for editing scripts, then I could look at the scripts of these objects and copy the objects themselves. In version 3, I can still look at the scripts, most of which appear empty, but I can't select objects. Any way around this, or are there any examples that would help me learn to create them? Regards, Gregory ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Arrays: new and old keys
There were some unspecified limits on keys with the old array structures, and even more with the GUI's that displayed them :) Array values could always take binary values - so anything basically but the keys could not - so for instance UTF8 unicode keys won't work. Does anyone know what exactly is or isn't allowed for the old keys, and whether this still applies to the new arrays? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys
Oh - and anyone know where to find some documentation on the multidimensional arrays in Rev3.0? 2008/9/11 David Bovill [EMAIL PROTECTED] There were some unspecified limits on keys with the old array structures, and even more with the GUI's that displayed them :) Array values could always take binary values - so anything basically but the keys could not - so for instance UTF8 unicode keys won't work. Does anyone know what exactly is or isn't allowed for the old keys, and whether this still applies to the new arrays? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
PCWorld
Way to go RunRev. I may be wrong, but this is the first time in my memory that there has been an announcement on PCWorld. http://www.pcworld.com/article/150946/.html?tk=rss_news Congratulations! Chris -- Chris Sheffield Read Naturally, Inc. www.readnaturally.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: PCWorld
Chris Sheffield wrote: Way to go RunRev. I may be wrong, but this is the first time in my memory that there has been an announcement on PCWorld. http://www.pcworld.com/article/150946/.html?tk=rss_news Congratulations! Wow, that's great! I just clicked the thumbs up icon. :) -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
Me too! I am frustrated that once again Rev ships new features without full docs or full examples. Please anyone who deeply understands the new arrays teach all, thanks. :-) Better yet a small library of wrappers that finish them off. Just for the record, I did bug report the missing doc while testing. Shalom, Andrew {Choose Life, Create Hope, Nurture Love, Wrestle Faith...} On Sep 11, 2008, at 1:00 PM, [EMAIL PROTECTED] wrote: Oh - and anyone know where to find some documentation on the multidimensional arrays in Rev3.0? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Walking Trees Backwards
If you aren't a computer scientist then what kind of scientist are you? If you have code that builds trees as indented outlines then walking down them usually just means moving back up the text file line by line untill there are one less tabs in front of a line, etc. If you bracket your leading tabs with a special char then you can search for the correct number of tabs if you can use find or offset in reverse... Or on a flipped instance of the text. If you are constantly navigating and never pruning or adding to your trees it is sometimes more efficient to store complete ancestor pathes with each leaf or branc. If you learn to always keep the current complete path as you swim around your tree you can navigate far easer (or in this specific case you wouldnt have to... Just move backwards down your path). Does any of this help? -Original Message- From: David Bovill [EMAIL PROTECTED] To: How to use Revolution use-revolution@lists.runrev.com Sent: 9/11/2008 7:43 AM Subject: Walking Trees Backwards No before anyone asks this isn't a new age thing :) It's about hierarchical (tree) data structures - not being a computer scientist its out of my league, and I feel that someone who knows a bit about these beasts can advise. *Task* I want to put an indented outline (more generally a tree structure) into an array. *Background* An outline is your regular tab indented outline you might have in a word processor or a rev field. I have a small library for these structures as I have to deal with them a lot - so I can turn them into XML and use paths (nodes) and get children and parent relationships etc. Quite a lot of them are recursive. *Problem* With XML I could add the bits as I walked down the tree. I think I can do the same with the new array structures in 3.0 - but for compatibility I was thinking of using a technique for marshaling arrays - that allows arrays to be arbitrarily nested - but for that I need to walk the trees backwards from leaf to trunk. This is getting complicated - I dislike recursion at the best of times - but backwards recursion with marshaling doesn't not sound good :) I am thinking of something roughly along the lines of: 1. working out the maximum depth of the outline and then repeating *down*from that 2. for each node finding its parent 3. for each parent finding its children 4. remove the children from the list of nodes at that level 5. putting the children into an array keyed on the parent 6. repeat through the remaining nodes of that level 7. marshaling the array 8. going up a level Others used to dealing with hierarchical tree structure using XML or similar may have a design pattern. Any suggestions? Alternatively might give up, and see if I can use forward tree walking and a more suitable data structure like XML or the new arrays. Is backward walking of tree structures ever necessary - or can the same thing generally be achieved with forward walking? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: PCWorld
Me 2. Bob Sneidar IT Manager Logos Management Calvary Chapel CM On Sep 11, 2008, at 10:22 AM, J. Landman Gay wrote: Chris Sheffield wrote: Way to go RunRev. I may be wrong, but this is the first time in my memory that there has been an announcement on PCWorld. http://www.pcworld.com/article/150946/.html?tk=rss_news Congratulations! Wow, that's great! I just clicked the thumbs up icon. :) -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Access to Rev User Interface Controls
Bonsoir Gregory, Le 11 sept. 08 à 17:50, Gregory Lypny a écrit : I'm interested in learning how to create and script some of the controls, such as the field expander and title bar in list fields, that appear in Revolution's Dictionary user interface. It used to be that if I checked Revolution UI elements appear in lists of stacks and the associated shortcut for editing scripts, then I could look at the scripts of these objects and copy the objects themselves. In version 3, I can still look at the scripts, most of which appear empty, but I can't select objects. Any way around this, or are there any examples that would help me learn to create them? The best way to access IDE objects is: 1. In Preferences General pane check the 'Contextual menus work in Revolution windows' box. 2. Then use Shift/Control/Option (Alt) click to make the contextual menu showing up. 3. Do all you want. Best regards from Paris, Eric Chatonet. Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/ Email: [EMAIL PROTECTED]/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Walking Trees Backwards
2008/9/11 Randall Reetz [EMAIL PROTECTED] If you aren't a computer scientist then what kind of scientist are you? If you have code that builds trees as indented outlines then walking down them usually just means moving back up the text file line by line untill there are one less tabs in front of a line, etc. If you bracket your leading tabs with a special char then you can search for the correct number of tabs if you can use find or offset in reverse... Or on a flipped instance of the text. If you are constantly navigating and never pruning or adding to your trees it is sometimes more efficient to store complete ancestor pathes with each leaf or branc. If you learn to always keep the current complete path as you swim around your tree you can navigate far easer (or in this specific case you wouldnt have to... Just move backwards down your path). Does any of this help? Thanks Randal. Science was a while ago - lets just say I wasn't a dentist. Everything you say above gels with how the library works for outlines - so its good to know its the right sort of approach. But it does not help with backward walking from leaves to trunk - largely because of issues like where do you start? Which leaf? Does the order matter? Thinking again this is not going to be recursive, you just need to repeat through each leaf. Maybe its not so hard -Original Message- From: David Bovill [EMAIL PROTECTED] To: How to use Revolution use-revolution@lists.runrev.com Sent: 9/11/2008 7:43 AM Subject: Walking Trees Backwards No before anyone asks this isn't a new age thing :) It's about hierarchical (tree) data structures - not being a computer scientist its out of my league, and I feel that someone who knows a bit about these beasts can advise. *Task* I want to put an indented outline (more generally a tree structure) into an array. *Background* An outline is your regular tab indented outline you might have in a word processor or a rev field. I have a small library for these structures as I have to deal with them a lot - so I can turn them into XML and use paths (nodes) and get children and parent relationships etc. Quite a lot of them are recursive. *Problem* With XML I could add the bits as I walked down the tree. I think I can do the same with the new array structures in 3.0 - but for compatibility I was thinking of using a technique for marshaling arrays - that allows arrays to be arbitrarily nested - but for that I need to walk the trees backwards from leaf to trunk. This is getting complicated - I dislike recursion at the best of times - but backwards recursion with marshaling doesn't not sound good :) I am thinking of something roughly along the lines of: 1. working out the maximum depth of the outline and then repeating *down*from that 2. for each node finding its parent 3. for each parent finding its children 4. remove the children from the list of nodes at that level 5. putting the children into an array keyed on the parent 6. repeat through the remaining nodes of that level 7. marshaling the array 8. going up a level Others used to dealing with hierarchical tree structure using XML or similar may have a design pattern. Any suggestions? Alternatively might give up, and see if I can use forward tree walking and a more suitable data structure like XML or the new arrays. Is backward walking of tree structures ever necessary - or can the same thing generally be achieved with forward walking? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys
See the Engine Change Log.txt Though it's not really a tutorial ;-) Le 11 sept. 08 à 18:30, David Bovill a écrit : Oh - and anyone know where to find some documentation on the multidimensional arrays in Rev3.0? Best regards from Paris, Eric Chatonet. Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/ Email: [EMAIL PROTECTED]/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Access to Rev User Interface Controls
Isn't it great to be able to do this kind of stuff in your development tool? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Access to Rev User Interface Controls
Bonsoir Mickey, Le 11 sept. 08 à 20:16, Mikey a écrit : Isn't it great to be able to do this kind of stuff in your development tool? I'm not sure to understand: you are like a concise monk ;-) But if you want to say that Rev is the only IDE built with itself, I do agree. All features you find in the IDE, like Drag and Drop from the tool palette, tree views in app browser, etc. are scripted with Rev. Not to say that all this code is always neat :-) but it's able to get you started ;-) It's an old story: you learn from others work. I am always baffled with some questions on this list: It's asked how to do this or that that does exists yet in the IDE: just have a look! An IDE programmed with its own language is a real plus. Best regards from Paris, Eric Chatonet. Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/ Email: [EMAIL PROTECTED]/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 1:08 PM, Andrew Meit wrote: Me too! I am frustrated that once again Rev ships new features without full docs or full examples. Please anyone who deeply understands the new arrays teach all, thanks. :-) Better yet a small library of wrappers that finish them off. Just for the record, I did bug report the missing doc while testing. If you haven't read the newsletter article I wrote or taken a look at the included stack you could start there: http://runrev.com/newsletter/july/issue53/newsletter1.php Then come back and ask any additional questions you have. As for writing a wrapper, what sorts of routines are you looking for? There are three features I would really like to see but none of these can really be handled by a library. They need to be added to the engine. They are: 1) Ability to reference an multi-dimensional keys dynamically. Right now we have to build the array key reference and then use 'do'. 2) Ability to pass a key of an array by reference. Currently you can't do this: on mouseUp put Hi There into theArray[1][name] DoSomething theArray[1] end mouseUp command DoSomething @pArrayA end DoSomething 3) Ability to reference elements of an array in the order they were added to the array: put element 5 of theArrayA Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com-www.screensteps.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys
Message: 22 Date: Thu, 11 Sep 2008 17:30:09 +0100 From: David Bovill [EMAIL PROTECTED] Subject: Re: Arrays: new and old keys To: How to use Revolution use-revolution@lists.runrev.com Message-ID: [EMAIL PROTECTED] Content-Type: text/plain; charset=ISO-8859-1 Oh - and anyone know where to find some documentation on the multidimensional arrays in Rev3.0? I think that this is a bug fix requested. I got them working like this: put Hello World into zam put return I have a news after zam put return This test works with numerical keys after zam put return I sure would like these: [1][2][1][4] after zam put test level 1 into myArray[1] repeat with i = 1 to 4 put line i of zam into myArray[1][i] end repeat answer myArray[1][3] it works ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Walking Trees Backwards
In my experience, non-computer scientists often produce the biggest breakthroughs in CS. You know how math-heads have had to follow physicists in math! Anyway, you are correct, if you arent always linearly cralling your tree from its base, if you have to perform blind jumps to a discreet leafs or what have you, then you have to format you data for efficient scaleable search and locate. There are lots of ways to do this. I prefer methods that are well matched to the streangths of the language i am using. If you marry a good indexed list of tree parts (the proper nouns or objects) that make up your tree, then you can do fast finds or offsets on that index (which itself can be branching). Store your objects in this index with pointers to instances within your ontologies and there you are! The added upkeep is nothing compaired to the navigational performance gains. (talk about a generalist's advice). -Original Message- From: David Bovill [EMAIL PROTECTED] To: How to use Revolution use-revolution@lists.runrev.com Sent: 9/11/2008 11:08 AM Subject: Re: Walking Trees Backwards 2008/9/11 Randall Reetz [EMAIL PROTECTED] If you aren't a computer scientist then what kind of scientist are you? If you have code that builds trees as indented outlines then walking down them usually just means moving back up the text file line by line untill there are one less tabs in front of a line, etc. If you bracket your leading tabs with a special char then you can search for the correct number of tabs if you can use find or offset in reverse... Or on a flipped instance of the text. If you are constantly navigating and never pruning or adding to your trees it is sometimes more efficient to store complete ancestor pathes with each leaf or branc. If you learn to always keep the current complete path as you swim around your tree you can navigate far easer (or in this specific case you wouldnt have to... Just move backwards down your path). Does any of this help? Thanks Randal. Science was a while ago - lets just say I wasn't a dentist. Everything you say above gels with how the library works for outlines - so its good to know its the right sort of approach. But it does not help with backward walking from leaves to trunk - largely because of issues like where do you start? Which leaf? Does the order matter? Thinking again this is not going to be recursive, you just need to repeat through each leaf. Maybe its not so hard -Original Message- From: David Bovill [EMAIL PROTECTED] To: How to use Revolution use-revolution@lists.runrev.com Sent: 9/11/2008 7:43 AM Subject: Walking Trees Backwards No before anyone asks this isn't a new age thing :) It's about hierarchical (tree) data structures - not being a computer scientist its out of my league, and I feel that someone who knows a bit about these beasts can advise. *Task* I want to put an indented outline (more generally a tree structure) into an array. *Background* An outline is your regular tab indented outline you might have in a word processor or a rev field. I have a small library for these structures as I have to deal with them a lot - so I can turn them into XML and use paths (nodes) and get children and parent relationships etc. Quite a lot of them are recursive. *Problem* With XML I could add the bits as I walked down the tree. I think I can do the same with the new array structures in 3.0 - but for compatibility I was thinking of using a technique for marshaling arrays - that allows arrays to be arbitrarily nested - but for that I need to walk the trees backwards from leaf to trunk. This is getting complicated - I dislike recursion at the best of times - but backwards recursion with marshaling doesn't not sound good :) I am thinking of something roughly along the lines of: 1. working out the maximum depth of the outline and then repeating *down*from that 2. for each node finding its parent 3. for each parent finding its children 4. remove the children from the list of nodes at that level 5. putting the children into an array keyed on the parent 6. repeat through the remaining nodes of that level 7. marshaling the array 8. going up a level Others used to dealing with hierarchical tree structure using XML or similar may have a design pattern. Any suggestions? Alternatively might give up, and see if I can use forward tree walking and a more suitable data structure like XML or the new arrays. Is backward walking of tree structures ever necessary - or can the same thing generally be achieved with forward walking? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list
Re: Arrays: new and old keys, i
Great Trevor - was wandering where I'd read your article! 2008/9/11 Trevor DeVore [EMAIL PROTECTED] As for writing a wrapper, what sorts of routines are you looking for? There are three features I would really like to see but none of these can really be handled by a library. They need to be added to the engine. They are: 1) Ability to reference an multi-dimensional keys dynamically. Right now we have to build the array key reference and then use 'do'. Yes - that was the first problem I came across. I wanted to write a recursive function, and since you don't know how deep you will need to go you have to use do which destroys the reason to use arrays 9ie speed) in the first place. This makes it useless to use as a native data structure for things like arrays - or at least impossible to create generic libraries for tree / xml data structures. 2) Ability to pass a key of an array by reference. Currently you can't do this: on mouseUp put Hi There into theArray[1][name] DoSomething theArray[1] end mouseUp command DoSomething @pArrayA end DoSomething OK. But theArray[1] is just another array - so surely you can do this: on mouseUp put Hi There into theArray[1][name] put theArray[1] into firstArray DoSomething firstArray end mouseUp command DoSomething @pArrayA end DoSomething Which I almost prefer for legibility - so that's no biggy for me? 3) Ability to reference elements of an array in the order they were added to the array: put element 5 of theArrayA Totally. I posted about this earlier. I have to do a lot of scripting to get around this. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Walking Trees Backwards
I'm not sure if I've understood the problem properly, but given a delimited list where the number of delimiters = depth then a custom sort will provide you with the lines by depth: on mouseUp put fld outline into tx -- each line has 0 or more tabs to indicate outline depth sort tx descending by customSort(each) put tx end mouseUp function customSort pLine set the itemDel to tab return the number of items in pLine end customSort Assuming at least 1 line has 1 tab, then that line will be at the top of the list. Does this help you to find the starting point for the backwards search? Bernard ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
Hi Lynn, When you have a new product created with or for Revolution, please let us know. It is highly appreciated by all of us, I'm sure. I do the same when I finish a new product that is created with Revolution and I believe it is the right thing to do. A quick message announcing the new product or update will suffice. There is no need to send a newsletter to this mailing list. You can send your newsletters to your own customers. I receive offers from Runtime Revolution every now and then and I am not interested in offers from Mirye, unless you have a product that is not available from Runtime Revolution Ltd and your offer is either a product created with or for Revolution (see first paragraph). I really don't see how OEM is related to this discussion. I don't see any hooks. Just tell your customers to subscribe to this list for great community support and maintain your own mailing list aimed at your own customers in the mean time. As far as I know, Derbrill doesn't support you, whateve support means and I haven't seen any statement saying that Jerry's supports you but that might be because I am not on Jerry's mailing list. If you keep sending newsletters, you leave me no choice but sending my own newsletters to this list as well and I think Daniels and Mara, Derbrill, Altuit, Sons of Thunder, Tactile Media and of course Runtime Revolution Ltd should do the same. Yeah, that's right: even Runtime Revolution doesn't send newsletters to the use list, so why would you? (Lynn, I wrote you about this subject off-list, a month ago, twice, but you didn't care to reply. That's why I write on-list now. I apologise sincerely to all other list readers for the intrusion.) -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering http://economy-x-talk.com http://www.salery.biz http://facebook.economy-x-talk.com Benefit from our inexpensive hosting services. See http://economy-x-talk.com/server.html for more info. On 11 sep 2008, at 16:05, Lynn Fredricks wrote: What would you say about starting your own mailing list rather than sending your newsletter to this list? If we all start sending our newsletters to this list, I think it'll get a bit cluttered. Hi Mark, The majority of RevCamp is a unique, monthly package of free stuff - not really a newsletter but a sort of glue around several small releases. There are too many hooks in Runtime Revolution and in the license process for our customers not to end up here on this list. Runtime Revolution isnt developed with OEMing in mind and I wouldn't want to burden the developers with a request to do that. That said, anyone who makes a major release of their Revolution add-on should make sure they send us their press releases. It doesn't matter if you aren't in our online store, so long as you maintain your own presence on the internet. The Revolution community could use more organized clutter. A sure sign of a healthy development tool ecosystem is the size and viability of its third party tool supplier market, as well as the number of consulting companies that support it. We are very happy to support and be supported by developers like DerBrill and Jerry's new Rev Mentor service, because in the end, it means we all generate more revenue to in turn support and grow that ecosystem. Best regards, Lynn Fredricks ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Walking Trees Backwards
Oops, forgot to include an example input = task1 task1.a task1.b task1.b.1 task2 task2.a task2.a.1 task2.b task2.c task3 output = task1.b.1 task2.a.1 task1.a task1.b task2.a task2.b task2.c task1 task2 task3 Bernard ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Can you realise a transparent hover color for buttons?
The way we have done this, is: 1. make a cool button with the rounded rectangle (with Scott Rossi's awesome gradient tool) and name it btnBkgd 2. create text (use any font, and Rossi's tool to burn it into an image so it doesn't matter if the user has the font) and position it over the button 3. group the two, and name the group whateverRolloverButton 4. then, in the card script: on mouseEnter IF the short name of the owner of the target contains RolloverButton THEN set the blendlevel of img btnBkgd of grp (the owner of the target) to 50 -- or whatever end mouseEnter and a mouseLeave that is similar... That way, you can make as many buttons as you want without having to script each one. Also, the reason for detecting rollover on the group is that if you put the mouseEnter on the text or background or both, you get a weird flickering as the mouse goes from where the text is to the background image. I just wrote this from memory, sorry if it is unclear, if you want me to post the whole thing let me know. On Sep 10, 2008, at 5:21 AM, Tiemo Hollmann TB wrote: Hello, I have some text buttons, where I would like to realise a hover effect (mouseover) with a (50%) opaque/transparent color of the button (like the menu items of MS Office products on Win). Up to now I can't see a solution for this. As standard properties I can only set icons for hover (which would only make sense with icon buttons, not with text buttons, no colors, nore transparent colors. If I would make my hover effect myself with mouseenter, I can't control the transparency of the button color, just solid colors. Am I right that these are the two options for making a hover effect (icons or solid colors), or is there a trick with a workaround to create a 50% opacity hover effect? Probably is a set of icons anyway the solution of choice. Thanks for any hints Tiemo ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Walking Trees Backwards
Yes - thanks that's what I was thinking it does not work though as while the maximum depth are all leaves of a tree structure there are other leaves lower down the branches. So I think I'll have to use a technique I've done before which is to turn the tree into an index of paths. So in your example: task1 task1.a task1.b task1.b.1 task2 task2.a task2.a.1 task2.b task2.c task3 becomes task1 task1/task1.a task1/task1.b task1/task1.b/task1.b.1 task2 task2/task2.a task2/task2.a/task2.a.1 task2/task2.b task2/task2.c task3 No each line is a leaf, and yu can do what you want to the index, as it is easy to reconstruct the outline from the paths (order does not matter). Now the problem with the new arrays: What I really want to do with a line like task1/task1.b/task1.b.1 is stuff like: put task1.b into outlineArray [task1] put task1.b.1 into outlineArray [task1][task1.b] Things like: put keys(outlineArray [task1]) = task1.b Seem to work fine. And you can use vaiable keys - so: put task1 into someKey put task1.b.1 into outlineArray [someKey] [task1.b] put keys(outlineArray) = task1 Yet to be able to write a recursive function I need to be able to do this without knowing how deep I am in the recursion: I'm going to try doing that by defining a function to put a value into an array. I can't see how thats possible right now without do in which case I would give up and keep using XML as it will be faster. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Mirye Monthly Release: Mirye RevCamp Issue 809
Hi Mark, A quick message announcing the new product or update will suffice. There is no need to send a newsletter to this mailing list. You can send your newsletters to your own customers. Ill answer you off-list in detail. If you read my previous email, you'd see I didn't send the newsletter, but a quick message. Best regards, Lynn Fredricks Mirye Software Publishing http://www.mirye.com Mirye Community NING http://miryesoftware.ning.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
On 9/11/08 10:22 PM, Mark Schonewille [EMAIL PROTECTED] wrote: Hi Mark, I wonder on such people as you. I remember that during last 10 years, may be 5-7 other developers like you have try stop me and us from sending to REALbasic, Revolution, Director lists information about Valentina database. And it was nice to see that while ONE person say DO NOT send it, usually dozen have answer him -- I AM INTRESTED to read on this list any possible information related to REALbasic, Revolution, Director, ... You see point ? Many new vistors can be on this list, which did not hear yet about Mirey, or Valentina or may be about you product if it is target REV DEVELOPERS. But If you product target e.g. housewife then of course no sense to send your newsletter to this list. All is clear like a day :-) And this is one letter per month as I understand, it make your nervous??? I could understand if it was once per hours :-) When you have a new product created with or for Revolution, please let us know. It is highly appreciated by all of us, I'm sure. I do the same when I finish a new product that is created with Revolution and I believe it is the right thing to do. A quick message announcing the new product or update will suffice. There is no need to send a newsletter to this mailing list. You can send your newsletters to your own customers. I receive offers from Runtime Revolution every now and then and I am not interested in offers from Mirye, unless you have a product that is not available from Runtime Revolution Ltd and your offer is either a product created with or for Revolution (see first paragraph). I really don't see how OEM is related to this discussion. I don't see any hooks. Just tell your customers to subscribe to this list for great community support and maintain your own mailing list aimed at your own customers in the mean time. As far as I know, Derbrill doesn't support you, whateve support means and I haven't seen any statement saying that Jerry's supports you but that might be because I am not on Jerry's mailing list. If you keep sending newsletters, you leave me no choice but sending my own newsletters to this list as well and I think Daniels and Mara, Derbrill, Altuit, Sons of Thunder, Tactile Media and of course Runtime Revolution Ltd should do the same. Yeah, that's right: even Runtime Revolution doesn't send newsletters to the use list, so why would you? (Lynn, I wrote you about this subject off-list, a month ago, twice, but you didn't care to reply. That's why I write on-list now. I apologise sincerely to all other list readers for the intrusion.) -- Best regards, Ruslan Zasukhin VP Engineering and New Technology Paradigma Software, Inc Valentina - Joining Worlds of Information http://www.paradigmasoft.com [I feel the need: the need for speed] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 3:10 PM, David Bovill wrote: 1) Ability to reference an multi-dimensional keys dynamically. Right now we have to build the array key reference and then use 'do'. Yes - that was the first problem I came across. I wanted to write a recursive function, and since you don't know how deep you will need to go you have to use do which destroys the reason to use arrays 9ie speed) in the first place. This makes it useless to use as a native data structure for things like arrays - or at least impossible to create generic libraries for tree / xml data structures. Generic conversion of XML to Array and Array to XML is possible without dynamic keys once you have decided on a way to represent the XML as an array. The XML conversion routines in the stack I provide with the article can convert between XML and arrays and don't need dynamically generated keys. I'm using the XML to Array conversion routines extensively right now with web services and have been quite happy with them. I've attached latest version of these handlers at the bottom of this email for reference. The entry points are ConvertArrayToXML() and ConvertXMLToArray(). Look at ConvertXMLNodeToArray() for an example of the recursive call. I have another scenario where I had to resort to 'do' though. I'm converting SQL queries to a hierarchal array but unlike XML SQL results have no sense of hierarchy. So I have a couple of 'do' statements in the code which I will promptly replace when/if the engine is updated to support dynamic keys. 2) Ability to pass a key of an array by reference. Currently you can't do this: OK. But theArray[1] is just another array - so surely you can do this: on mouseUp put Hi There into theArray[1][name] put theArray[1] into firstArray DoSomething firstArray end mouseUp command DoSomething @pArrayA end DoSomething Which I almost prefer for legibility - so that's no biggy for me? Right, not a huge deal. But you hate to have to make an extra copy when dealing with large data sets and it is extra lines of code. You left off one line of the code though. You need to put firstArray back into theArray[1] after calling DoSomething in order to get a pass by ref equivalent: put theArray[1] into firstArray DoSomething firstArray put firstArray into theArray[1] 3) Ability to reference elements of an array in the order they were added to the array: Totally. I posted about this earlier. I have to do a lot of scripting to get around this Yes, it is unfortunate that we have to resort to custom sorts (see SortArrayKeysWithXMLOrdering in XML code) or numeric sorts in order to iterate through keys sequentially. Hopefully that will be addressed in the near future. Example of iterating sequentially through a numerically keyed array: put the keys of theArrayA into theKeys sort lines of theKeys numeric repeat for each line theIndex in theKeys end repeat All that being said the new arrays have been a huge productivity boost on my end. Code is running faster, is easier to read and easier to write. Regards, -- Trevor DeVore Blue Mango Learning Systems ScreenSteps: http://www.screensteps.com Developer Resources: http://revolution.bluemangolearning.com -- -- Converts an XML tree into a Revolution multi-dimensional array. -- A nodes attributes will be stored as an array of it's @attributes key. -- Node names will retain the sequence information (i.e. node[1], node[2], etc.). -- This information is necessary to determine order that keys should be processed in. Example: -- set the itemDelimiter to [ -- put the keys of theArray into theKeys -- sort theKeys numeric by the last item of each -- -- pUseValueKey: The default value is false. In this case you get an array that has an @attributes -- key for nodes that have attributes and either a) no value or b) only child nodes. Otherwise it contains the node contents. -- Set to true if you want to store a nodes value in the '@value' key. This will allow a key to have -- both attributes (in @attributes key) and a value (in @value key). -- function ConvertXMLToArray pXML, pStoreEncodedAs, pUseValueKey local theArray,theResult,theRootNode,theTreeID local theXMLEncoding ## Create an XML tree from XML text put revCreateXMLTree(pXML, true, true, false) into theTreeID if theTreeID is an integer then ## Determine the encoding of the XML, default to UTF-8 put matchtext(pXML, \?xml (.*)encoding= quote (.*) quote \?, versionMatch, theXMLEncoding) into theResult if theXMLEncoding is empty then put utf-8 into theXMLEncoding ## Now convert to array. ## The 1st dimension has one key which is the name of the root node. put revXMLRootNode(theTreeID) into theRootNode if theRootNode is not empty and not(theRootNode begins with xmlerr,) then put ConvertXMLNodeToArray(theTreeID,
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
Hi Ruslan, I am not trying to stop Lynn to send information about new Valentina updates for Revolution to this mail list and I am definitely not trying to stop you from doing anything. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering http://economy-x-talk.com http://www.salery.biz http://facebook.economy-x-talk.com Benefit from our inexpensive hosting services. See http://economy-x-talk.com/server.html for more info. On 11 sep 2008, at 21:57, Ruslan Zasukhin wrote: On 9/11/08 10:22 PM, Mark Schonewille [EMAIL PROTECTED] wrote: Hi Mark, I wonder on such people as you. I remember that during last 10 years, may be 5-7 other developers like you have try stop me and us from sending to REALbasic, Revolution, Director lists information about Valentina database. And it was nice to see that while ONE person say DO NOT send it, usually dozen have answer him -- I AM INTRESTED to read on this list any possible information related to REALbasic, Revolution, Director, ... You see point ? Many new vistors can be on this list, which did not hear yet about Mirey, or Valentina or may be about you product if it is target REV DEVELOPERS. But If you product target e.g. housewife then of course no sense to send your newsletter to this list. All is clear like a day :-) And this is one letter per month as I understand, it make your nervous??? I could understand if it was once per hours :-) ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
Looked like a newsletter to me anyway, Lynn, even though you call it a Monthly Release rather than a newsletter. -- Best regards, Mark Schonewille Economy-x-Talk Consulting and Software Engineering http://economy-x-talk.com http://www.salery.biz http://facebook.economy-x-talk.com Benefit from our inexpensive hosting services. See http://economy-x-talk.com/server.html for more info. On 11 sep 2008, at 21:57, Lynn Fredricks wrote: Hi Mark, A quick message announcing the new product or update will suffice. There is no need to send a newsletter to this mailing list. You can send your newsletters to your own customers. Ill answer you off-list in detail. If you read my previous email, you'd see I didn't send the newsletter, but a quick message. Best regards, Lynn Fredricks ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
2008/9/11 Trevor DeVore [EMAIL PROTECTED] On Sep 11, 2008, at 3:10 PM, David Bovill wrote: 1) Ability to reference an multi-dimensional keys dynamically. Right now we have to build the array key reference and then use 'do'. Yes - that was the first problem I came across. I wanted to write a recursive function, and since you don't know how deep you will need to go you have to use do which destroys the reason to use arrays 9ie speed) in the first place. This makes it useless to use as a native data structure for things like arrays - or at least impossible to create generic libraries for tree / xml data structures. Generic conversion of XML to Array and Array to XML is possible without dynamic keys once you have decided on a way to represent the XML as an array. The XML conversion routines in the stack I provide with the article can convert between XML and arrays and don't need dynamically generated keys. I'm using the XML to Array conversion routines extensively right now with web services and have been quite happy with them. I've attached latest version of these handlers at the bottom of this email for reference. The entry points are ConvertArrayToXML() and ConvertXMLToArray(). Look at ConvertXMLNodeToArray() for an example of the recursive call. Oh great! Just found your stack - just what I wanted. Your functions are almost identical to my outline_ToXML functions! And now we can do them with arrays - fab! I have another scenario where I had to resort to 'do' though. I'm converting SQL queries to a hierarchal array but unlike XML SQL results have no sense of hierarchy. So I have a couple of 'do' statements in the code which I will promptly replace when/if the engine is updated to support dynamic keys. I can't quite follow the details of this but I am sure it is a very powerful and important feature to add. I love the ability to have variable properties for instance. It is so powerful to be able to do this without speed penalties: put name into someProperty put the someProperty of btn 1 Yes, it is unfortunate that we have to resort to custom sorts (see SortArrayKeysWithXMLOrdering in XML code) or numeric sorts in order to iterate through keys sequentially. Hopefully that will be addressed in the near future. I really like the way lua does this - in particular their concept of meta(data)tables. You can define a default array in this metatable, and then if a vlaue in your array is not set it returns the default value. This is great for things like translations - and I've often use this data structure going back to Hypercard days. Maybe its not core - but I ffigure if you are going to implement a new datastructure why not learn from the best. Adding things like sorted indexes could be done to the metatable without affecting any backward compatability issues. Really no more than a suggestion / thought :) Great functions though Trevor - thanks. Looks like it will be worth using arrays for tree structures. Do you know by the way what the limits on keys are, and can we now pass arrays to seprop handlers? That would be very usefull for me as I often define getprop handlers that return arrays - but have to limit this as there is no way to implement a corresponding setprop. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Can you realise a transparent hover color for buttons?
Bonsoir Josh, I agree but... Here we always build multi-lingual applications (probably because we are a tiny market :-) then such a solution can't satisfy us. And I think that Tiemo is in the same situation... Le 11 sept. 08 à 21:47, Josh Mellicker a écrit : The way we have done this, is: 1. make a cool button with the rounded rectangle (with Scott Rossi's awesome gradient tool) and name it btnBkgd 2. create text (use any font, and Rossi's tool to burn it into an image so it doesn't matter if the user has the font) and position it over the button 3. group the two, and name the group whateverRolloverButton 4. then, in the card script: on mouseEnter IF the short name of the owner of the target contains RolloverButton THEN set the blendlevel of img btnBkgd of grp (the owner of the target) to 50 -- or whatever end mouseEnter and a mouseLeave that is similar... That way, you can make as many buttons as you want without having to script each one. Also, the reason for detecting rollover on the group is that if you put the mouseEnter on the text or background or both, you get a weird flickering as the mouse goes from where the text is to the background image. I just wrote this from memory, sorry if it is unclear, if you want me to post the whole thing let me know. Best regards from Paris, Eric Chatonet. Plugins and tutorials for Revolution: http://www.sosmartsoftware.com/ Email: [EMAIL PROTECTED]/ ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re-2: Mirye Monthly Release: Mirye RevCamp Issue 809
Hi, even if its only one letter per month. If everyone on this list would send only one newsletter a month, then it this would make me nervous. And how can you avoid that others will do the same ? I am allways interested in information/adverts about tools for revolution or things made with revolution. I also understand, that Mirye wants to inform about advantages, if one buys runrev products from them. And its okay for me, if they send an one time information about it (as they have already done), but not regulary, because this does not belong to a list which is called use-revolution. But thats only my two pennies (cents) worth. Regards, Matthias Original Message Subject: Re: Mirye Monthly Release: Mirye RevCamp Issue 809 (11-Sep-2008 22:00) From:Ruslan Zasukhin [EMAIL PROTECTED] To: [EMAIL PROTECTED] And this is one letter per month as I understand, it make your nervous??? I could understand if it was once per hours :-) ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
Hi gang :) My 2 cents worth. I personally would like to receive the information that Lynn, and other commercial developers have, that are related to Revolution. While the market is small - I think it is important for all potential developers that there is one place where all this information is collected - and this email list works for that. With that I agree with Lynn and Ruslan - it would be a pity if other developers were not encouraged to post information to the list - they are easy enough to not read, and splitting the list never works well - take a look at all those Yahoo groups. I do however share a sentiment that I suspect a lot of others hold - against the list becoming commercial and keeping tis focus on scripting and advice. Lynns post was pure marketing - so it clashed with this ethos - for some that is no big deal, for others it is. I suspect as the user base grows it will become less of an issue, and many of us will miss the old cuddly feely list. My suggestion to RunRev would be to help preserve the feel of this list by organising an official monthly or even weekly - product / marketing posts to the list. Developers could send in their section to be included - with links to their own stuff. Anyone not wanting to see the commercial stuff could easily recognise the post and not read it. Any shy developers out there would get encouragement to market theri stuff :) ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 4:27 PM, David Bovill wrote: I have another scenario where I had to resort to 'do' though. I'm converting SQL queries to a hierarchal array but unlike XML SQL results have no sense of hierarchy. So I have a couple of 'do' statements in the code which I will promptly replace when/if the engine is updated to support dynamic keys. I can't quite follow the details of this but I am sure it is a very powerful and important feature to add. I love the ability to have variable properties for instance. It is so powerful to be able to do this without speed penalties: put name into someProperty put the someProperty of btn 1 Same basic idea. You just want to be able to do something like: put [people][1][name] into theKey and then use theKey to target a specific key in the array somehow. Some pseudo code: put key theKey of theArrayA into theValue Right now we have to do something like this: put some string into theValue put [people][1][name] into theKey ## assume you didn't know the full path to the key in advance. put put theValue into theArrayA theKey into theDo do theDo I really like the way lua does this - in particular their concept of meta(data)tables. You can define a default array in this metatable, and then if a vlaue in your array is not set it returns the default value. This is great for things like translations - and I've often use this data structure going back to Hypercard days. Maybe its not core - but I ffigure if you are going to implement a new datastructure why not learn from the best. Adding things like sorted indexes could be done to the metatable without affecting any backward compatability issues. Really no more than a suggestion / thought :) Now that we have a new data structure it definitely makes you hungry for more. The easier it is to represent the data you are working with using built-in data structures the easier it is to code in that environment. Multi-dimensional arrays are a great addition and hopefully it is a sign of more things to come. Great functions though Trevor - thanks. Looks like it will be worth using arrays for tree structures. Do you know by the way what the limits on keys are, and can we now pass arrays to seprop handlers? That would be very usefull for me as I often define getprop handlers that return arrays - but have to limit this as there is no way to implement a corresponding setprop. I do not know what the limits are. I was unsuccessful in my attempt to pass multi-dimensional arrays in setProp handlers. But since you can 'send' arrays now you can define your setProp handlers using command and use 'send' instead. Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com-www.screensteps.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
Trevor- Thursday, September 11, 2008, 11:32:39 AM, you wrote: 3) Ability to reference elements of an array in the order they were added to the array: put element 5 of theArrayA I don't think this is properly the function of an array. If you're talking about adding engine support for LIFO or FIFO stacks or queues then that's a slightly different topic. But trying to access array elements in the order they were added is a bit like trying to do the same with database records - it's just not, strictly speaking, the way databases work. If you're using numeric arrays and you add elements in sequential order, then note that you can get what you want by saying put theArrayA[5] -- -Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On 11 Sep 2008, at 22:49, Trevor DeVore wrote: put some string into theValue put [people][1][name] into theKey ## assume you didn't know the full path to the key in advance. put put theValue into theArrayA theKey into theDo do theDo I'm not sure I understand the problem here, what prohibits the use of the following way to achieve the above? on mouseUp put people into theFirst put 1 into theSecond put Name into theThird put some string into theArrayA[theFirst][theSecond][theThird] end mouseUp Besides less readability, more lines of code, etc. of course. Still if you don't know what the keys will be beforehand, then you'll have them individually in vars anyway, right? Probably not understanding the problem correctly Bjoernke -- official ChatRev page: http://bjoernke.com/runrev/chatrev.php Chat with other RunRev developers: go stack URL http://bjoernke.com/stacks/chatrev/chatrev1.3b3.rev; ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 5:02 PM, Björnke von Gierke wrote: On 11 Sep 2008, at 22:49, Trevor DeVore wrote: put some string into theValue put [people][1][name] into theKey ## assume you didn't know the full path to the key in advance. put put theValue into theArrayA theKey into theDo do theDo I'm not sure I understand the problem here, what prohibits the use of the following way to achieve the above? on mouseUp put people into theFirst put 1 into theSecond put Name into theThird put some string into theArrayA[theFirst][theSecond][theThird] end mouseUp Besides less readability, more lines of code, etc. of course. Still if you don't know what the keys will be beforehand, then you'll have them individually in vars anyway, right? Probably not understanding the problem correctly Hi Björnke, In your example above you assume that you know there are three dimensions. But what if you do not know how many dimensions you will be referencing? When this is the case then your variable is going to have the full path (from 1 to x number of dimensions) but the engine does not have a means of using that variable to grab the keys value without resorting to 'do'. And yes, there are times when having this ability is very useful. Make sense? Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com- www.screensteps.com___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
On 11 Sep 2008, at 22:45, David Bovill wrote: I personally would like to receive the information that Lynn, and other commercial developers have, that are related to Revolution. I have an objection to this, as Lynn is not a Rev developer of third party tools, he just sells them as far as I know. Lynn should be disallowed from sending advertisement for his reseller thingy (Myrrh?) to the How to use Revolution list. But of course it's not in my power to enforce that. Of course I don't see a problem with Rev developers of third party tools announcing their new versions, as long as they're not too successful (which would allow them to make updates every other week). Jokes aside, It seems to me that there's enough updates of third party additions to enable a monthly mail to the use list. Meanwhile there's the RevUp mailing list and website combination, where all third party additions that do pertain to Rev released in the last one and a half years have been mentioned, as far as I know. Bjoernke -- official ChatRev page: http://bjoernke.com/runrev/chatrev.php Chat with other RunRev developers: go stack URL http://bjoernke.com/stacks/chatrev/chatrev1.3b3.rev; ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 4:59 PM, Mark Wieder wrote: I don't think this is properly the function of an array. If you're talking about adding engine support for LIFO or FIFO stacks or queues then that's a slightly different topic. But trying to access array elements in the order they were added is a bit like trying to do the same with database records - it's just not, strictly speaking, the way databases work. Hey Mark, I'm thinking of how PHP behaves. Arrays in PHP know the order that elements were added so that when you use foreach you get the elements in that same order. I always found this very useful when working with arrays in PHP. For a little more info on what PHP does take a look at the comment by php_man_resp on the foreach page in the docs: http://www.php.net/foreach If you're using numeric arrays and you add elements in sequential order, then note that you can get what you want by saying put theArrayA[5] This is what I currently do and it works fine in many cases. But some things could be simplified if foreach iterated in the order keys were added. Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com-www.screensteps.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
Now I understand, I didn't consider not to tell rev how many sub arrays there would be. I have no clue when this would be useful though, maybe you can explain that? At first I wanted to write an example function that uses the paramCount, so it would automatically fill the array in a switch (at some point you do know what the max subarray count would be). But that'd be way too complex, and you'd need one for putting, and one for getting, so they'd suddenly be a kind of strange cprops. Using do is certainly the simplest way, but if you really care for speed, maybe such a function could be useful, despite the complexity? This is a rather interesting topic to me :D On 11 Sep 2008, at 23:13, Trevor DeVore wrote: On Sep 11, 2008, at 5:02 PM, Björnke von Gierke wrote: On 11 Sep 2008, at 22:49, Trevor DeVore wrote: put some string into theValue put [people][1][name] into theKey ## assume you didn't know the full path to the key in advance. put put theValue into theArrayA theKey into theDo do theDo I'm not sure I understand the problem here, what prohibits the use of the following way to achieve the above? on mouseUp put people into theFirst put 1 into theSecond put Name into theThird put some string into theArrayA[theFirst][theSecond][theThird] end mouseUp Besides less readability, more lines of code, etc. of course. Still if you don't know what the keys will be beforehand, then you'll have them individually in vars anyway, right? Probably not understanding the problem correctly Hi Björnke, In your example above you assume that you know there are three dimensions. But what if you do not know how many dimensions you will be referencing? When this is the case then your variable is going to have the full path (from 1 to x number of dimensions) but the engine does not have a means of using that variable to grab the keys value without resorting to 'do'. And yes, there are times when having this ability is very useful. Make sense? -- official ChatRev page: http://bjoernke.com/runrev/chatrev.php Chat with other RunRev developers: go stack URL http://bjoernke.com/stacks/chatrev/chatrev1.3b3.rev; ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
is there a shell command on windows to unzip a file?
Is there a shell command built into windows (without installing anything extra) to unzip a file? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Possible bug in Revolution 3.0: merge command is missing array elements...
Folks, can anyone confirm that we can still use arrays inside the merge command, like: put andre into myvar[name] put the merge of format(hello [[ myVar[\name\]], welcome!) Before anyone says that there's a missing closing ] in the string, be aware that in previous revolution versions this is how it worked, if you put three ] like ]]] in the end, in the final result you got youself a nice ] in the string. Again, the point is, the myVar[name] is being replaced by empty value andre -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Possible bug in Revolution 3.0: merge command is missing array elements...
Friends, guess what, I think they fixed their parsing routine for merge the merge of: hello [[myVar[name]]] --- empty hello [[myVar[name]] --- empty (worked before) hello [[myVar[name] ]] --- works! So anyone working with merge commands and arrays, be sure to add a little space if you're using new revolution version. andre On Thu, Sep 11, 2008 at 7:39 PM, Andre Garzia [EMAIL PROTECTED] wrote: Folks, can anyone confirm that we can still use arrays inside the merge command, like: put andre into myvar[name] put the merge of format(hello [[ myVar[\name\]], welcome!) Before anyone says that there's a missing closing ] in the string, be aware that in previous revolution versions this is how it worked, if you put three ] like ]]] in the end, in the final result you got youself a nice ] in the string. Again, the point is, the myVar[name] is being replaced by empty value andre -- http://www.andregarzia.com All We Do Is Code. -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Zipping an application package by script
The winner isT A R in the shell() put /Users/sb/Desktop/200809070038/ into ToBeZippdFolder put /Users/sb/Desktop/testPlace/ archive.tar into tarredfolder put shell( tar -cf tarredfolder ToBeZippdFolder ) into fld output success! This works wonderfully. Thanks Brian Yennie and Jim Ault, Richard Gaskin, Thomas McGrath III, Mark Talluto and Terry Judd. This list rocks. Thanks for being around, guys when I get stupid. 1. I got the hack with Automator to work, kinda, but hated the way it looked. Cheesy. Automator is great if used alone, but ... and I couldn't figure out how to pass parameters to it. So what it does would change if its location would change - it was hard wired. Move the package and it breaks. 2. My problems with tar were about reversing the parameters AND fixing that and reversing the definitions. Got it right now plus fixed the typos. 3. Sorry, Trevor, I couldn't get your 'all in Rev' code to work yet in 3.0 as Rev crashed immediately* on calling it and have not gotten down to debugging it yet. Shouldn't be that hard to check out; it's all well written and self-documented. This would still be useful to me in creating an archive with a list or partial contents. I mean poof! all gone! 4. Zip from the shell is worthless to me, just checking again. It can't pack identical filenames, even ones with different paths. Which is one reason to use folders in the first place. put /Users/sb/Desktop/200809070038/ into ToBeZippdFolder put /Users/sb/Desktop/testPlace/ archive.zip into tarredfolder put shell( zip -r -jj tarredfolder ToBeZippdFolder ) into fld output zip warning: first full name: /Users/sb/Desktop/200809070038/55.app/Contents/MacOS/lib/.DS_Store zip warning: second full name: /Users/sb/Desktop/200809070038/.DS_Store zip warning: name in zip file repeated: .DS_Store zip error: Invalid command arguments (cannot repeat names in zip file) Is is possible that you reversed the parameters? The tar output file comes first, then the remaining parameters are files / folders to include. tar -cf MyApplication.app MyApplication.tar = tar: MyApplication.app: Cannot open: Is a directory tar: Error is not recoverable: exiting now tar -cf MyApplication.tar MyApplication.app = success! -- stephen barncard s a n f r a n c i s c o - - - - - - - - - - - - ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Zipping an application package by script
On Sep 11, 2008, at 6:55 PM, Stephen Barncard wrote: 3. Sorry, Trevor, I couldn't get your 'all in Rev' code to work yet in 3.0 as Rev crashed immediately* on calling it and have not gotten down to debugging it yet. Shouldn't be that hard to check out; it's all well written and self-documented. This would still be useful to me in creating an archive with a list or partial contents. If you find out what causes the crash let me know. I haven't had any problems with it in 2.9 or 3.0 but I've always used the handlers under controlled conditions. I would start by checking that revZipOpenArchive is working before you pass the archive folder to the functions. Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com-www.screensteps.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 5:55 PM, Björnke von Gierke wrote: Now I understand, I didn't consider not to tell rev how many sub arrays there would be. I have no clue when this would be useful though, maybe you can explain that? Sure. One thing that the ability to dynamically specify a key would do is open up additional algorithms. Let's take the XML for example. The XML conversion routines I posted earlier use recursion in order to create a multi-dimensional array from an XML document of unknown parent/child relationships. Every time the function finds children of a node the function calls itself recursively in order to process those children. If we could reference array dimensions dynamically then we could perform the conversion using an iterative algorithm instead. As we moved through each dimension in the XML tree we would keep track of the key specifying the location of that dimension in the array we are creating. Some example values: theDimensionKeys[1] = [root] theDimensionKeys[2] = [root][lessons[1]] theDimensionKeys[3] = [root][lessons[1]][steps][step[3]] As we processed child nodes we would add the child node to the array by using the multi-dimensional key for the parent node (child node dimension - 1). No recursion necessary. Perhaps you could get slightly better performance using the iterative vs. recursive approach. At first I wanted to write an example function that uses the paramCount, so it would automatically fill the array in a switch (at some point you do know what the max subarray count would be). But that'd be way too complex, and you'd need one for putting, and one for getting, so they'd suddenly be a kind of strange cprops. Using do is certainly the simplest way, but if you really care for speed, maybe such a function could be useful, despite the complexity? There are probably some scenarios where a switch statement would suffice. For now I get by with do (i.e. the slowness of 'do' isn't too bad). I'm confident that we won't always be subject to using known keys with multi-dimensional arrays though so I leave 'do' in in hopes that I can change the code to something fast and elegant someday :-) This is a rather interesting topic to me :D I think so too. New data structures are so much fun. Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com- www.screensteps.com___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Using arrow keys to move from card to card
Hi Marian, Since I often do such things with the on ArrowKeys handlers, check cd 10's script and any object on cd 10 that may have an ON ArrowKeys handler. Could also be on a stack handler that provides an exception. In which cases you may need to do a pass ArrowKeys statement in one of these. Good luck, Joe Wilkins On Sep 11, 2008, at 8:33 AM, Marian Petrides, MD wrote: I have a stack which functions just as I intend it except for one card. When run from a splash screen standalone, that arrow keys on my Mac can be used to go forward and backwards in the stack--UNTIL I get to cd 10. On Cd 10 the arrow keys do not navigate to the next or previous cd, they just seem to do nothing. If I get to CD 11 by using scripted buttons, then keyboard arrow keys work fine, as they do on every other card. For the life of me, I can't find the spot where keyboard navigation got toggled off on CD 10. Can anyone help me? TIA Marian ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution Joe Lewis Wilkins [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Zipping an application package by script
On Sep 10, 2008, at 12:30 PM, Stephen Barncard wrote: As I mentioned at the start of this thread, using zip in the shell for me has ended up in zip not digging identical filenames like .DS_store or info.plist (in different folders ) and stopping execution. Hi Stephen, Glad you found a solution. I am curious if the zip solution worked for you in terminal alone. I have been running some test and found the following to work just fine. zip -r archive.zip application.app Maybe the jj is the issue. Nevertheless you got it going. :) -Mark Talluto Canela Software ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
I see now, but I'm still thinking about alternatives that make you not use do. You say your script is recursively walking trough the XML. But that would allow to only use a one dimensional array assignment. I tried to look at your code, but it's too hard for me to understand, oh and I also hate XML, so I made a directory walker example instead :) Basically the code returns an array, which is put into the parent array, which is then put into the parent array, which is put into it's parent array, etc. Would this be applicable to your XML code? Also, I am not sure how to do the reverse, to make folders out of the array (creating XML). ---example script, do not use on your whole hard drive global theArray on mouseUp put into theArray answer folder if the result = and it then set the defaultfolder to it put it into currFolder put the files into theArray[files] put the folders into theNodes filter theNodes without .* repeat for each line theLine in theNodes put addChild(currFolder, theLine) into theArray[theLine] end repeat end if end mouseUp function addChild parentFolder theFolder put parentFolder / theFolder into currFolder set the defaultfolder to currFolder put the files into theParent[files] put the folders into theNodes filter theNodes without .* repeat for each line theLine in theNodes put addChild(currFolder, theLine) into theParent[theLine] end repeat return theParent end addChild ---end example script On 12 Sep 2008, at 01:20, Trevor DeVore wrote: On Sep 11, 2008, at 5:55 PM, Björnke von Gierke wrote: Now I understand, I didn't consider not to tell rev how many sub arrays there would be. I have no clue when this would be useful though, maybe you can explain that? Sure. One thing that the ability to dynamically specify a key would do is open up additional algorithms. Let's take the XML for example. The XML conversion routines I posted earlier use recursion in order to create a multi-dimensional array from an XML document of unknown parent/child relationships. Every time the function finds children of a node the function calls itself recursively in order to process those children. -- official ChatRev page: http://bjoernke.com/runrev/chatrev.php Chat with other RunRev developers: go stack URL http://bjoernke.com/stacks/chatrev/chatrev1.3b3.rev; ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Access to Rev User Interface Controls
Thanks, Eric. The Shift key is what I was missing! Good stuff. Gregory On Thu, Sep 11, 2008, at 4:10 PM, [EMAIL PROTECTED] wrote: The best way to access IDE objects is: 1. In Preferences General pane check the 'Contextual menus work in Revolution windows' box. 2. Then use Shift/Control/Option (Alt) click to make the contextual menu showing up. 3. Do all you want. Best regards from Paris, Eric Chatonet. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Using arrow keys to move from card to card
Thanks for the suggestion, Joe. Unfortunately, there's nothing in any of the handlers in the stack that uses ArrowKeys. I could swear I once found a check box in one of the object inspectors that solved the problem, but I can't find it now. I'm using 2.9 BTW. On Sep 11, 2008, at 6:43 PM, Joe Lewis Wilkins wrote: Since I often do such things with the on ArrowKeys handlers, check cd 10's script and any object on cd 10 that may have an ON ArrowKeys handler. Could also be on a stack handler that provides an exception. In which cases you may need to do a pass ArrowKeys statement in one of these. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Using arrow keys to move from card to card
Is there an unlocked field that has focus on this cd? It could be eating up your keystrokes. Terry... On 12/9/08 11:11 AM, Petrides, M.D. Marian [EMAIL PROTECTED] wrote: Thanks for the suggestion, Joe. Unfortunately, there's nothing in any of the handlers in the stack that uses ArrowKeys. I could swear I once found a check box in one of the object inspectors that solved the problem, but I can't find it now. I'm using 2.9 BTW. On Sep 11, 2008, at 6:43 PM, Joe Lewis Wilkins wrote: Since I often do such things with the on ArrowKeys handlers, check cd 10's script and any object on cd 10 that may have an ON ArrowKeys handler. Could also be on a stack handler that provides an exception. In which cases you may need to do a pass ArrowKeys statement in one of these. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution -- Dr Terry Judd Lecturer in Educational Technology (Design) Biomedical Multimedia Unit Faculty of Medicine, Dentistry Health Sciences The University of Melbourne Parkville VIC 3052 AUSTRALIA 61-3 8344 0187 ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Using arrow keys to move from card to card
Bingo. Problem solved! Field was locked but I inadvertently did not turn focusable off. Did that and all is well. Thanks, Terry. Oh, and for anyone else looking for the toggle to turn keyboard navigation on and off, it is in the Revs Preferences menu item. That wasn't the problem in this case, however. On Sep 11, 2008, at 8:16 PM, Terry Judd wrote: Is there an unlocked field that has focus on this cd? It could be eating up your keystrokes. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Walking Trees Backwards
David Bovill wrote: *Task* I want to put an indented outline (more generally a tree structure) into an array. I suspect I've mis-understood your problem my solution seems so straightforward that I may be missing some important part of the desired data structure. So I'll re-state the problem in my own words, and then give my attempt to solve it - and hopefully if there is something major missing, that should be clear. Input : an indented outline of text. Output : a data structure which allows easy (quick, efficient, ) access to parent and children nodes of an arbitrary node, thereby making it easy to write general (possibly recursive) functions and handlers. [Aside - often recursion is a good tool to *think* about a problem, but the implementation can be sequential ] Data structure : 3 arrays, indexed by the line number (node number): i, 'text' : the text of that node i, 'parent' : the line number of its parent i. 'children : a TAB-separated list of line numbers of its children. Given this, it is easy to write the base functions needed to build arbitrary tree-functions. function getParent pArray, pNode return pArray[pNode, 'Parent'] end getParent function getChildren pArray, pNode return pArray[pNode, 'Children'] end getChildren for example - print out all immediate children ... put getChildren(Data, thisnode) into tChildren repeat for each item tChild in tChildren put Data[tChild, 'Text'] CR after field 'Output' end repeat So - a very simple data structure to build code is straightforward if a little bit tricky [Sorry - I have a stack ready to put on RevOline but RevOnline has decided I need a new key to share stacks, so here is the code in-line ...] (note - only tested a little bit) function buildTree pInput # given indented outline of a 'forest' (i.e. multiple rooted trees) build the tree-like data structure set the itemDel to TAB put empty into lParents put 0 into lCurNode # the top-level pseudo-node put -1 into lCurDepth # -1 to allow for the top-level pseudo-node put 0 into lCount repeat for each line L in pInput put getDepth(L) into tDepth if tDepth lCurDepth then # we have popped back up 1 or more levels put tDepth into lCurDepth if tDepth = 0 then put 0 into lCurNode else #put item tDepth+2 of lParents into lCurNode put lCount into lCurNode end if else if tDepth = lCurDepth then # another node at the same level - no change needed put lCount into lCurNode else if tDepth lCurDepth+1 then # badly formed input !! # should probably do something more extreme here return empty end if # so we are here with a new increase in indent level put lCurNode TAB after lParents end if end if put L into Data[lCount, 'text'] put item -1 of lParents into tParent put tParent into Data[lCount, 'parent'] put lCount TAB after Data[tParent, 'children'] put tDepth into lCurDepth end repeat return Data end buildTree Hope that does something like what you wanted, -- Alex. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Using arrow keys to move from card to card
I figured as much, but no one else had responded today. If I had the same problem, I think I'd create a new cd 10 - just like 9 or 11 - and move everything from the existing 10 to the new one. I realize that may not be as easy as one might think, but it might be worth trying. What kind of stuff is on cd 10? Do this with HC would be much easier than with RR I suspect, but I'd be checking out the clone card command in RR. Good luck, Joe Wilkins On Sep 11, 2008, at 6:11 PM, Petrides, M.D. Marian wrote: Thanks for the suggestion, Joe. Unfortunately, there's nothing in any of the handlers in the stack that uses ArrowKeys. I could swear I once found a check box in one of the object inspectors that solved the problem, but I can't find it now. I'm using 2.9 BTW. On Sep 11, 2008, at 6:43 PM, Joe Lewis Wilkins wrote: Since I often do such things with the on ArrowKeys handlers, check cd 10's script and any object on cd 10 that may have an ON ArrowKeys handler. Could also be on a stack handler that provides an exception. In which cases you may need to do a pass ArrowKeys statement in one of these. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Access to Rev User Interface Controls
Yes. The fact that the IDE is bootstrapped is wonderful, because so much in RR is hackable. I've written several hacks to date to add features that I could have waited years for otherwise. It is a nice balance - the engine is compiled and out of the way, but the rest is interpreted so I don't have to edit, compile, debug, repeat before getting something useful. In addition, the interpreted nature means that it is trivial to drop in, read, debug, tweak, and get out. This is much better than doing it in many other tools that are just built for raw speed and to hide the details from you at the expense of being able to have the freedom to have at it. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Printing dilemma
I have a stack whose cards have a variety of pictures/graphics on them. I would like to be able to define the area to be printed for each card. I know this can be done in other languages, but can it be done with RR? Essentially I want to grab part of the screen and print only that area. TIA, Joe Wilkins ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Invisible volume slider on audio player
Using a visible audio player, I do not see the volume adjust slider when I click the little speaker icon on the player to adjust he volume. The player works fine and in fact the volume is getting adjusted as I drag the mouse up and down. But, the little indicator ball does not appear. FYI.I use XP Pro, Rev 3.0 If I move the player close to the left side of the card, I can see the slider on the desktop. I just can't see it on the card.weird. Any ideas? Jim. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Re: chat protocols
There is a jabber lib and I missed it? :-O Malte, another thing people are using are those micro blogging tools such as twitter, tumblr, pownce... twitter is the most popular and their api is dead easy (single line libURL call to post) Andre On Thu, Sep 11, 2008 at 11:06 AM, Malte Brill [EMAIL PROTECTED] wrote: Andre: Thanks. It appears M$ changed their protocol, so I will need to get in touch with S. David: I am VERY interested to learn more about your library. All the best, Malte ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution -- http://www.andregarzia.com All We Do Is Code. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On Sep 11, 2008, at 8:53 PM, Björnke von Gierke wrote: I see now, but I'm still thinking about alternatives that make you not use do. You say your script is recursively walking trough the XML. But that would allow to only use a one dimensional array assignment. I tried to look at your code, but it's too hard for me to understand, oh and I also hate XML, so I made a directory walker example instead :) The XML code works without using do. Since it is recursive there is no need for worrying about multi-dimensional keys. I actually chose the recursive technique because I would have had to use 'do' in order to use an iterative algorithm. Basically the code returns an array, which is put into the parent array, which is then put into the parent array, which is put into it's parent array, etc. Would this be applicable to your XML code? Also, I am not sure how to do the reverse, to make folders out of the array (creating XML). Your function is set up pretty much like the current XML converter. The code where I currently use 'do' deals with converting SQL columns and rows into a multi-dimensional array that mimics the parent/child relationships of the tables in the SQL query. This is slightly more complex then converting XML to an array since databases return flat results and you have to manually determine the hierarchy. I'm calling functions recursively but I am working on a reference to the array that I am generating so there is no copying of data. Using 'do' came about because you can't pass array keys by reference. So instead I pass a string representing the array element to act on instead (i.e. [1][table][2]) and use that in conjunction with 'do'. Once the engine allows variable references to be used with array keys then out comes the 'do' and I get a speed bump. Regards, -- Trevor DeVore Blue Mango Learning Systems www.bluemangolearning.com- www.screensteps.com___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Mirye Monthly Release: Mirye RevCamp Issue 809
We Rev'ers should be so lucky to have to have this discussion. Sheesh. Really-- how many commercial 3rd party add-ons are really available for Rev? As one who actually did the math, I can tell you building 3rd party products for Rev provides little in the way of a 'real' revenue return--and certainly not enough to keep a business sustainable. So, if you have information on commercial 3rd party products for us, I have ZERO problem with it taking up 0.5% of the noise level on this list. We all have our, how do I say, less pertinent (TO ME) issues like WebKit-- which btw, according to Chris is not a simple cut and paste to start using in Rev. So, just 'pass on by' if you're not interested. I seriously doubt our list risks inundation of Rev OEM and 3rd party announcements here. And Mark, if you have such a newsletter announcing products for us Rev users, than by all means, I'm interested in hearing about it. How about cutting Lynn a break on this one? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Printing dilemma
Hi Joe, Check out the print into pagerect command. It can print images at higher than screen resolution to your printer. HTH, Chipp ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Invisible volume slider on audio player
Do you have QuickTime installed? I am on XP and Rev 3.0 and don't see the problem--but then again I'm using QT. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Walking Trees Backwards
Man i am going to post a question to this list and start a company based on the code people submit as examples. You guys are impressive! -Original Message- From: Alex Tweedly [EMAIL PROTECTED] To: How to use Revolution use-revolution@lists.runrev.com Sent: 9/11/2008 6:21 PM Subject: Re: Walking Trees Backwards David Bovill wrote: *Task* I want to put an indented outline (more generally a tree structure) into an array. I suspect I've mis-understood your problem my solution seems so straightforward that I may be missing some important part of the desired data structure. So I'll re-state the problem in my own words, and then give my attempt to solve it - and hopefully if there is something major missing, that should be clear. Input : an indented outline of text. Output : a data structure which allows easy (quick, efficient, ) access to parent and children nodes of an arbitrary node, thereby making it easy to write general (possibly recursive) functions and handlers. [Aside - often recursion is a good tool to *think* about a problem, but the implementation can be sequential ] Data structure : 3 arrays, indexed by the line number (node number): i, 'text' : the text of that node i, 'parent' : the line number of its parent i. 'children : a TAB-separated list of line numbers of its children. Given this, it is easy to write the base functions needed to build arbitrary tree-functions. function getParent pArray, pNode return pArray[pNode, 'Parent'] end getParent function getChildren pArray, pNode return pArray[pNode, 'Children'] end getChildren for example - print out all immediate children ... put getChildren(Data, thisnode) into tChildren repeat for each item tChild in tChildren put Data[tChild, 'Text'] CR after field 'Output' end repeat So - a very simple data structure to build code is straightforward if a little bit tricky [Sorry - I have a stack ready to put on RevOline but RevOnline has decided I need a new key to share stacks, so here is the code in-line ...] (note - only tested a little bit) function buildTree pInput # given indented outline of a 'forest' (i.e. multiple rooted trees) build the tree-like data structure set the itemDel to TAB put empty into lParents put 0 into lCurNode # the top-level pseudo-node put -1 into lCurDepth # -1 to allow for the top-level pseudo-node put 0 into lCount repeat for each line L in pInput put getDepth(L) into tDepth if tDepth lCurDepth then # we have popped back up 1 or more levels put tDepth into lCurDepth if tDepth = 0 then put 0 into lCurNode else #put item tDepth+2 of lParents into lCurNode put lCount into lCurNode end if else if tDepth = lCurDepth then # another node at the same level - no change needed put lCount into lCurNode else if tDepth lCurDepth+1 then # badly formed input !! # should probably do something more extreme here return empty end if # so we are here with a new increase in indent level put lCurNode TAB after lParents end if end if put L into Data[lCount, 'text'] put item -1 of lParents into tParent put tParent into Data[lCount, 'parent'] put lCount TAB after Data[tParent, 'children'] put tDepth into lCurDepth end repeat return Data end buildTree Hope that does something like what you wanted, -- Alex. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Beta testers wanted
I'm looking for people to beta test my new consumer application called InfoWallet which is the program I demoed at RevLive. This application tracks your most important personal information including medical, financial, passwords, and license keys. If you are interested in helping test my application under Macintosh OS X, Windows, or Linux please email me at [EMAIL PROTECTED] Thanks, Bill Vlahos ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Zipping an application package by script
Coming late to this party..but thought I'd throw this in and see if anyone needs them...Thanks probably go to Sarah and perhaps Ken, too. Sorry I sometimes forget who helps :-( I don't have an altZip routine for Mac but I imagine one could be created using ditto as well? on altUnZip pFilePathToUnzip,pFolderPathToUnzipTo,pDeleteAllFirstBool -- MAKE FOLDER TO UNZIP TO if there is not a folder pFolderPathToUnzipTo then create folder pFolderPathToUnzipTo put the result into tResult if tResult is not empty then put Could Not Create ZIP folderpath: pFolderPathToUnzipTo into tError return Error!! tError cr tResult end if if there is not a file pFilePathToUnzip then put Error! Could not find ZIP file: pFilePathToUnzip into tError return tError end if -- CLEAR ALL OLD FILES if pDeleteAllFirstBool is true then put the defaultFolder into tOldDF set the defaultFolder to pFolderPathToUnzipTo put the files into tList repeat for each line L in tList delete file L put the result into tResult if tResult is not empty and the platform is Win32 then -- TRY UNLOCKING FILE get altUnlockWinFile(L) delete file L put the result into tResult if tResult is not empty then beep answer warning Cannot Delete file: L cr tResult end if end if end repeat set the defaultFolder to tOldDF end if switch the platform case MacOS -- NOW NEED TO UNZIP IT if altGoodMacSystemForUnzip() is true then -- NEED TO UNZIP IT -- ditto -x -k -rsrc /Users/sarah/Desktop/dbsqlitemac102.zip /Users/sarah/Desktop/ put pFolderPathToUnzipTo into tPathToUnZipTo put / after tPathToUnZipTo put pFilePathToUnzip into tPath put ditto -x -k -rsrc quote tPath quote space quote tPathToUnZipTo quote into tCMD put shell(tCMD) into tResult if tResult is not then put Error!! UnZip problem: cr tResult into tErr return tErr else -- UnZipped correctly, now cleaning up... return end if else -- SYSTEM NOT GOOD FOR UNZIPPING put Error!! This version of MacOS cannot unZip correctly. Please go to the website to download and install directly. into tErr return tErr end if break case Win32 put false into tPreserve replace / with \ in pFilePathToUnzip replace / with \ in pFolderPathToUnzipTo try unzip pFilePathToUnzip,pFolderPathToUnzipTo,tPreserve catch Err put Error!! Unsuccessful unZipped tFileName cr No revzipper.dll into tError return tError end try return break end switch end altUnZip function altGoodMacSystemForUnzip put systemVersion() into tNum set itemDel to . put item 1 of tNum into t1 put item 2 of tNum into t2 put item 3 of tNum into t3 if t1 10 then return false if t2 2 then return false if t2 = 2 and t3 8 then return true if t2 2 then return true return false end altGoodMacSystemForUnzip ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Printing dilemma
Hey Chipp, I was hoping there was something like this floating around in Rev. I'll get back with the details if it actually does what I'm hoping for. I still haven't been able to use Rev's documentation for searching stuff very well. It's got some bugs in the dictionary that makes searching problematic. Thanks for your timely response. Joe Wilkins On Sep 11, 2008, at 8:36 PM, Chipp Walters wrote: Hi Joe, Check out the print into pagerect command. It can print images at higher than screen resolution to your printer. HTH, Chipp ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Zipping an application package by script
OOPS, the previous routines depended on Altuit's revZipper.dll for windows. This one works with Rev's versions. I still use the altUnzip one above for Mac. This is a more dedicated one, but I'm sure the necessary bits can be used. Sorry if this has already been handled. on UnzipWxPythonZip put mgcTempPath() / wxPythonPC.zip into tZipPath if there is not a file tZipPath then answer information No file to Unzip! cr tZipPath exit to top end if put gVuePath into tFolderToUnzipTo if there is not a folder tFolderToUnzipTo then create folder tFolderToUnzipTo set the cursor to busy revUnZip tZipPath,tFolderToUnzipTo altBusy false if the result is not empty then answer warning the result exit to top end if answer information WxPython Installed Successfully! end UnzipWxPythonZip on UnzipWxPythonMacZip put mgcTempPath() / wxPythonMAC.zip into tZipPath if there is not a file tZipPath then wait 1 second with messages end if if there is not a file tZipPath then answer information No file to Unzip! cr tZipPath exit to top end if altBusy true,Installing Files... put gVuePath into tFolderToUnzipTo if there is not a folder tFolderToUnzipTo then create folder tFolderToUnzipTo set the cursor to busy altUnZip tZipPath,tFolderToUnzipTo altBusy false if the result is not empty then answer warning the result exit to top end if answer information WxPython Installed Successfully! end UnzipWxPythonMacZip I also forgot the WinXP unlock file function in the previous post: function altUnlockWinFile pFilePath if the platform is Win32 then put pFilePath into tfile replace / with \ in tfile put attrib quote tfile quote -R into DosCommand put DosCommand set the hideConsoleWindows to true put shell (DosCommand) return true end if end altUnlockWinFile ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: is there a shell command on windows to unzip a file?
Not that I'm aware of. See my reply on Steve's thread for unzipping using Rev's own zip.dll. On Thu, Sep 11, 2008 at 5:05 PM, Josh Mellicker [EMAIL PROTECTED] wrote: Is there a shell command built into windows (without installing anything extra) to unzip a file? ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Walking Trees Backwards
To make tab/space runs, this is the function I use function getIndentSpaces pLevel put space into line (pLevel*4) of tempp replace cr with space in tempp return tempp end getIndentSpaces put 1 into tDepth put Al, child of the first marriage into childString put getIndentSpaces(tDepth) childString cr after listing add 1 to tDepth put Betty, child of Al into childString put getIndentSpaces(tDepth) childString cr after listing put listing into msg - --the same technique will work with put space into item (pLevel*4) of tempp replace comma with space in tempp Of course you could use TAB instead of space. Jim Ault Las Vegas On 9/11/08 6:21 PM, Alex Tweedly [EMAIL PROTECTED] wrote: function buildTree pInput # given indented outline of a 'forest' (i.e. multiple rooted trees) build the tree-like data structure set the itemDel to TAB put empty into lParents put 0 into lCurNode # the top-level pseudo-node put -1 into lCurDepth # -1 to allow for the top-level pseudo-node put 0 into lCount repeat for each line L in pInput put getDepth(L) into tDepth if tDepth lCurDepth then # we have popped back up 1 or more levels put tDepth into lCurDepth if tDepth = 0 then put 0 into lCurNode else #put item tDepth+2 of lParents into lCurNode put lCount into lCurNode end if else if tDepth = lCurDepth then # another node at the same level - no change needed put lCount into lCurNode else if tDepth lCurDepth+1 then # badly formed input !! # should probably do something more extreme here return empty end if # so we are here with a new increase in indent level put lCurNode TAB after lParents end if end if put L into Data[lCount, 'text'] put item -1 of lParents into tParent put tParent into Data[lCount, 'parent'] put lCount TAB after Data[tParent, 'children'] put tDepth into lCurDepth end repeat return Data end buildTree ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Printing dilemma
Joe Lewis Wilkins wrote: Hey Chipp, I was hoping there was something like this floating around in Rev. I'll get back with the details if it actually does what I'm hoping for. Also look at print card from rect, which allow you to send only a portion of the card to the printer. -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
RE: Invisible volume slider on audio player
Thanks for the response Chipp, I have QT installed and I just upgraded to 7.5.5 to make sure. I still have the problem (if it helps, these are all wav files). However, I may not be *using* QT in runrev (I don't really know how I would find out) but I do have it and launched it successfully. This raises another question. How would it work on Linux systems without QT? I'm writing the runrev app with XP but I will deploy it on a ALIX 3c3 card with imedia Linux. I can live without the volume adjust as I can script that but I can't live without the audio players. They allow me to play more than one sound simultaneously. Jim... -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Chipp Walters Sent: Thursday, September 11, 2008 8:39 PM To: How to use Revolution Subject: Re: Invisible volume slider on audio player Do you have QuickTime installed? I am on XP and Rev 3.0 and don't see the problem--but then again I'm using QT. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Printing dilemma
Jacqi, Thank you too. Looks like one of these critters will do the job. Joe Wilkins On Sep 11, 2008, at 9:30 PM, J. Landman Gay wrote: Joe Lewis Wilkins wrote: Hey Chipp, I was hoping there was something like this floating around in Rev. I'll get back with the details if it actually does what I'm hoping for. Also look at print card from rect, which allow you to send only a portion of the card to the printer. -- Jacqueline Landman Gay | [EMAIL PROTECTED] HyperActive Software | http://www.hyperactivesw.com ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution Joe Lewis Wilkins [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: Arrays: new and old keys, i
On 11-Sep-08, at 7:24 PM, [EMAIL PROTECTED] wrote: On Sep 11, 2008, at 5:55 PM, Björnke von Gierke wrote: Now I understand, I didn't consider not to tell rev how many sub arrays there would be. I have no clue when this would be useful though, maybe you can explain that? Sure. One thing that the ability to dynamically specify a key would do is open up additional algorithms. Let's take the XML for example. T ... ellipsis intentional Can anybody explain what the new array format provides that the old did not? All these bizarre examples seem not so much as exemplifying the ``new'' features as to leave me baffled as to what added value they provide. In NONE of the supposed or alleged examples have I seen anything I could not do with old arrays. So, and I mean in really simple language (not OOP-speak), wtf is up with these new arrays? I see nothing but extra brackets. -- Please avoid sending me Word or PowerPoint attachments. See http://www.gnu.org/philosophy/no-word-attachments.html -Dr. John R. Vokey ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
HOT HOT HOT Need Of Solaris Administrator
*HOT HOT HOT Need Of Solaris Administrator* Job Title:*Solaris Administrator* Location:Columbus ,OH Duration:3-6 Months *SUN Solaris 8,9 10, SUN Servers(latest models) M8000 Server experience* Recent and excellent Veritas Cluster experience (With Oracle RAC environments a plus) The ability to apply patches to the SUN Systems. 10/10 communication is a MUST *Thanks Regards, Mujeeb K, Technical Recruiter Voice: 201 255 0319 x 254 Fax: 201 727 9296 Email : [EMAIL PROTECTED] [EMAIL PROTECTED] --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups SAPNEEDS group. To post to this group, send email to sapneeds@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sapneeds?hl=en -~--~~~~--~~--~--~---