Passing arrays, etc.
I have been trying to pass a variable which contains an array with no success. One button has a handler like this on mouseUp put empty into fld "thekeys" put fld "thelist" into xx-- a 100-line field, 2 items per line repeat with i = 1 to the number of lines of xx repeat with j = 1 to the number of items of line i of xx put item j of line i of xx into tl[i,j] end repeat end repeat put keys(tl) into fld "thekeys" call "getvar" tl of fld "getit" end mouseUp The keys() function correctly identifies the parts of the array that are filled. The call function in the above handler reaches this one (I put the beep in to be sure). on getvar x beep answer keys(x) end getvar But x is read as empty. So, why can't I pass associative arrays? I notice I can't pass fields either. One of the great strengths of Hypercard is its ability to pass fields and complex variables. Of course, it doesn't have the ability to do "call" statements or even create arrays. Ah, for the best of both ... Raymond
Re: MC 2.3
I love the announced feature set. However, I could not get this to run on my iMac 266 (Mac OS 8.6, 96 MB). It worked when I dragged a MC file onto it, but again, I could not test any of the features or interface that way. Hope to see a running copy soon! Raymond
A SpreadSheet Example
I would like to add a hearty "AMEN!" to the accolades being given Scott Raney and his product. In a message dated 13/9/99 1:04:54 am Richard Gaskin wrote: The MetaCard engine is cool enough for the money, but the support has been a mind-bending good time (how on earth does Raney stay on top of all his email?) I just want to chip in and support this. I started to play with the starter kit towards the end of last year. I still can't afford the full version yet, but as soon as I can The fact is, I haven't had so much fun with any product since Hypercard arrived with my first Mac. I'd also like to thank Kevin Miller at Cross Worlds Computing for his kind support and encouragement. He is a great guy to have put up with me as he has. The more I play with MetaCard, the better I like it. In fact, I work with MetaCard more than with HyperCard now. I haven't has so much fun doing scripting in ages. I have created a stack illustrating just how powerful even the Starter Kit can be. In the general theme of Jacqueline Gay's PseudoTable and Marni Centor's PseudoTable Plus, my SpreadSheets stack illustrates how to take a single MetaCard field and create a spreadsheet object. I've tried to give clear instructions on scripting, and hints as to how to get the most use out of a limited number of lines of programming. You can also create your own spreadsheet object, copy it, and paste it into your own stack! Kevin has graciously posted it on his site. You can download it from http://www.xworlds.com/metacard/contributorfiles/spreadsheet.zip By the way, if you can think of ways to make it better, please let me know. I am still learning. Like Richard Gaskin, I still can't afford the full version yet, but as soon as I can, I will! But in the mean time, I have learned that you can do some serious and amazing things with even the Starter Kit. Awesome product, people! Raymond Griffith
Re: Metacard Vs. ToolBook
From: "Barry Boepple" [EMAIL PROTECTED] Greetings, Currently I use ToolBook 6.5 for CBT development. There is a general sense of discontent among many ToolBook users related to it's web capabilities and the direction Asymetrix (Click2Learn) is taking. Our list serve has a lot of activity on it and recently a thread about Metacard appeared. I think there are a few other ToolBookers monitoring your list now to see what all of you have to say about Metacard. I, too, use ToolBook -- and because I have to, not because I want to. Toolbook is clumsy in its handling of graphics. I am interested in learning more about Metacard's Internet capabilities. What kind of real world experience all of you are having with it? There is so much hype these days regarding many products capabilities, but often in a real world setting, things are not as peachy as the hype would have it be. I deal with large numbers of graphics. When you link to a graphic, like a gif or jpg file in Toolbook, Toolbook converts the graphic to a bitmap and physically stores the bitmap in the book. This has the effect of severely inflating file sizes. I have lost work several times due to file corruption. MetaCard sees a link as a link. There is no physical storage of the graphic in the stack unless you "import" the graphic. Importing is largely unnecessary. While I do not know of a MetaCard Stack that serves to output HTML, no doubt one could be written fairly easily. Would any of you be willing to elaborate on web based projects as far as the pros and cons of Metacard for such projects? I am interested in knowing such things as: -Does your scripting language get converted to Java or some other native language that will run in current browsers? I doubt this, although some intrepid individual might try making a JavaScript/xTalk converter. But Java runs really slow, and the Java output that Toolbook provides is, well, junk. It hogs processor time. -Is the Metacard company responsive to your concerns and requests? Without a doubt, MetaCard and its associated individuals are the most responsive people I have ever met. They are really *good*. -How stable is Metacard in the development mode? VERY!!! (yes, I *am* shouting! I couldn't ask for better!) -Does it have a large overhead for CD distribution? -Is converting from PC to Mac, UNIX etc...reliable and easy? I work in both environments. Conversion is very easy -- usually no more than just making sure your fonts work right. I hope this is not an inappropriate request, but who better to ask than the people actually using the product in the field. Thanks Barry Boepple SUMMETRIC Interactive Software, Inc. http://www.summetric.com Cheers! Raymond E. Griffith
Re:Distant Finding
From: Nelson Zink [EMAIL PROTECTED] Subject: Distant Finding All, I want to know whether a particular number resides in a distant cd fld and am using the Find function to make the determination. However, I don't want to be transported to that card. Any clever combination of Find and Result? What I really want to say is: if the result of find "007" in cd fld Agents of cd Espionage is "not found" then MailThePackage Nelson Zink Use the "offset" function. Eg: offset("007",fld "Agents" of cd "Espionage") This will return 0 if not found. Good luck, Raymond --- END metacard.v003.n128 ---
Re: Going from PC to Mac
On Sun, 07 Nov 1999 18:47:12 Andrew Griffin[EMAIL PROTECTED] answered his own question: Hey, you idiot! The answer to your problem is simple. Just type: open "stack name" into the message box of metacard on the mac. Gosh, you're so stupid. I sent the message and then figured it out, so I had to answer it. Heh heh. --Andrew Come now, Andrew. No name calling -- even to yourself. After all, anyone who has the perspicacity to work with MetaCard can hardly be called an idiot. We *are* a pretty select and intelligent group here. You belong. ;-) Raymond
Re: Graphic Labels
I am working with the graphics in MetaCard, and would like to attach a label to a filled oval. Unfortunately, the label is placed inside the oval. Filling the oval obscures the label. Another problem is that the label is likely to be longer (in width) than the oval, but the oval's width is determined by the size of the graphic. Any chance in a future release that we can have 1) labels underneath the graphic? 2) label sizes independent of the graphic size? Just a thought. For now, I am going to have to go with a graphic and attach a field. Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: Digest metacard.v003.n183
I wrote: I am working with the graphics in MetaCard, and would like to attach a label to a filled oval. Unfortunately, the label is placed inside the oval. Filling the oval obscures the label. And Scott Raney replied: I can't reproduce this: the label is always drawn on top of the filled area here... I replied back: I am using the Mac version, MetaCard 2.3B2. The label is drawn in the middle on my iMac 266. I am using System 8.5.1. And Marni enlightened. Raymond, The label should appear within the graphic, but over whatever fill you are using. Perhaps the reason it's obscured is that the color of your label text is too close to the color of your fill, and so that's why you can't see it. Try choosing a contrasting text color. I think Scott meant "on top" in a layering context, not in a vertical context. Hope this helps! Marni Dim light appears over the head of our befuddled hero. "Ooo!" he says. He tries it out. Marni is right! Thank you, Marni and Scott! Now that I have *that* settled Happy Holidays to All! May the new year bring joy and success to all. Raymond Our hero now hears his wife saying, "Get off the internet and get the kids in the car! We have to go now if we are to get there in time!" So he goes! Talk to you all next week -- or next year! This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: Script references to objects in groups?
Oh, boy! Just what I was looking for, too! You could loop over all the buttons and set their hilites to false, but the easy way to do this is: set the hilitedButtonName of grp "mButtons" to empty Scott Thanks, Scott! Thanks David, for asking. I had done the loop bit, but I went back and changed it. Do I love this group, or what? Happy New Year! Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: line delimiter?
Nicolas R Cueto [EMAIL PROTECTED] asked. Hello. When a user clicks on a word in a sentence (not a cr-line but a grammatical sentence), how could I find out the number of that sentence? I'd like to create sound files for each of the sentences in a paragraph, and then label each sound file with a corresponding number. For example, I'd want sound file "2.au" to be played when the user clicks anywhere within the second sentence of this paragraph: This is the first sentence. "However this," she said, "is the second sentence." Is this, then, the third sentence? I've consulted clickChunk, clickChar, etc., and thought about playing with the itemDelimiter (there's no such thing as a lineDelimiter, is there?) but can't figure out anything, elegant or ugly. Thank you in advance. -- Nicolas R Cueto Takakura JHS/SHS Nagoya, Japan I have a suggestion. You can group the text. Here is a little handler I made up. on mouseUp put 1 into x repeat with i = 1 to -1+the number of words in char 1 to word 2 of clickcharchunk() of me if "group" is not in the textstyle of word i to i+1 of me then add 1 to x end repeat answer x end mouseUp This should allow you to get the group. Be sure you have a space after each sentence, even when you put in a different paragraph. Also be careful not to include that space in the grouped text. The next handler is admittedly messy, but it did the job in my field without resorting to grouped text. on mouseUp put 1 into x repeat with i = 1 to -1+the number of words in char 1 to word 2 of clickcharchunk() of me if char -1 of word i of me is in ".!" or (char -1 of word i of me is quote \ and (char -2 of word i of me is "." or (char -2 of word i of me is "!" and \ chartonum(char 1 of word(i+1) of me)97))) then add 1 to x end repeat answer x end mouseUp I may have forgotten some punctuation marks that delimit sentences, but I hope this helps. If you clean this up, please post it! Hope this helps, Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
And now for a MetaCard Moment
I would like to share a Metacard Moment with all of you. I am operating an internet Trigonometry course. For the course I have created dozens of gif files, each with several pages, each page timed to deliver one part of a concept. The time varied from 1 second to as long as 30 seconds, depending upon the complexity of the individual page. Some students wanted to be able to page through the files more quickly, so I converted the gifs to Quicktime files. That was OK for a while, but recently Tripod (where my course material sits) decided that QT files should not be allowed to operate. So today, I threw together a 1-card MetaCard stack, with a viewer and a button. The student downloads the gif to his disk, opens the MetaCard standalone, clicks the button, selects the file, and he or she is able to page through it at their own leisure with the controller. And it only took me about a half-hour to get it right! Now good people, where else are you going to get a cross-platform product that will let you do something like that, that quickly? Scott and company, I thank you very much! Raymond E. Griffith This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
And Now for Another MetaCard Moment
I have been working like crazy on an educational project. This set of mathematics exercises required some intricate programming -- particularly since I have the Starter Kit. Very heavy use of "do" and "send." These things worked quite well. I set up my problem set with a "Start" button, which contained a few handlers designed to allow problem checking and new problem generation. To keep the well-meaning student from clicking the "Start" button a second time, I disabled it upon clicking. The new problem set started up fine -- then froze. No, the program did not freeze, but the problem that should have been generated next wasn't found. I checked my code time and again, only to come up more and more frustrated. Then I realized I was trying to "send" to a handler in a disabled button. Not only does disabling a button keep it from receiving a mouseup message, it prevents it from receiving ANY messages! It took a while. But I found it, and it made sense. So I rerouted a couple of items. This set of exercises is complete, and I am ready to proceed to the next set. And it works great! By the way -- this is the first time I have essentially had more than one thing going on at the same time. A timer is counting down at the same time other actions are occurring! Scott, your instructions on using "send to ... in xxx milliseconds" was incredibly useful. Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: And Now for Another MetaCard Moment
It appears that on 2/11/00 3:12 AM, Raymond E. Griffith [EMAIL PROTECTED] said: I checked my code time and again, only to come up more and more frustrated. Then I realized I was trying to "send" to a handler in a disabled button. Not only does disabling a button keep it from receiving a mouseup message, it prevents it from receiving ANY messages! And Geoff Canyon [EMAIL PROTECTED] queried: What version of MetaCard are you using? I don't see that here, either with 2.2.5, or one of the 2.3 betas (on the Mac). I used the last beta available. I wrote two buttons. The first, "bob", had this script: on mouseUp disable me end mouseUp on doIt beep end doIt The second button's script was: on mouseUp send "doIt" to btn "bob" end mouseUp Both before and after clicking "bob" clicking the second button caused "bob" to beep. I know it sounds strange. But I had to move my "doIt" handler out of my disabled button in order to get a response. Once I moved my handler, the new problems were displayed as they should have been. It may be related to the fact that a good deal of my code resides in custom properties (remember, I have the Starter Kit). I had to call a "do" for a custom property with this handler. Just the fact that I was able to get this fairly complex page to work properly was a major victory for me. I had done it in Hypercard, with the advantages of having "unlimited" scripting space. Until my finances improve, I must explore the intricacies of MetaCard under the Starter Kit. Yet even with the disadvantages involved in script size limits, MetaCard allowed me to do things better -- with cross-platform capabilities to boot! gc Thanks for responding, Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Getting the textheight
Just a question about what ought to be a simple thing, but I seem to be missing the obvious. I am working with a field. I would like to make the font size resizable for the user's visual comfort. Certain functions related to data selection and input require the textHeight of the field. I created a field and tried to get the textHeight. The textHeight returned empty. I checked the font information. The information was empty -- which means that the text settings should be the same as the text settings for MetaCard (Helvetica 14). When I set the font information to something other than the default settings, (say, size = 13) I get the information (textheight = 17) . Setting the font information back to the default settings (Helvetica 14), the textheight returns empty. I then repeated the experiment with the textfont. Same results. Ok, then. It seems that for any field that has the default text characteristics (whether set at MetaCard's level, the stack's level, or the card's level), querying for those characteristics returns empty. Is there any easy way to obtain those characteristics via script? Or, as is so often the case, am I missing the obvious? Thanks, Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
NumberFormat
My apologies to Scott, since I have lost the address to the place I should send bug reports to: I am having difficulties with numberFormat. Here are the details. I set the numberFormat to 0.## (10 places to the right of the decimal point) for calculation, but all answers are returned as integers. I then set the numberFormat to 0.00 for calculation. The calculations were stored correctly. I then set the numberFormat to 0.##, added 0 to the calculated amounts for display. Again, the displayed amounts were integers. This is a pretty important issue for me. If I am doing something wrong, I would like to know. I would be willing to send Scott an example stack if needed. I am using the latest posted version of MetaCard for the Mac -- the fat version. Many thanks, Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: Getting the textheight
"Raymond E. Griffith" wrote: Just a question about what ought to be a simple thing, but I seem to be missing the obvious. I am working with a field. I would like to make the font size resizable for the user's visual comfort. Certain functions related to data selection and input require the textHeight of the field. I created a field and tried to get the textHeight. The textHeight returned empty. I checked the font information. The information was empty -- which means that the text settings should be the same as the text settings for MetaCard (Helvetica 14). When I set the font information to something other than the default settings, (say, size = 13) I get the information (textheight = 17) . Setting the font information back to the default settings (Helvetica 14), the textheight returns empty. I then repeated the experiment with the textfont. Same results. Ok, then. It seems that for any field that has the default text characteristics (whether set at MetaCard's level, the stack's level, or the card's level), querying for those characteristics returns empty. Is there any easy way to obtain those characteristics via script? Or, as is so often the case, am I missing the obvious? Thanks, Phil Davis [EMAIL PROTECTED] answered Please pardon the terse response - gotta go. Things to be aware of: - text properties of the field vs. text props of the selectedText - the effective textHeight vs. the textHeight (same for other text props) - the fixedLineHeight of the field FWIW - explore! Phil Phil, many thanks! The effective textHeight did the trick -- I will explore the other ideas as well. Again, thanks! Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: NumberFormat
Subject: Re: NumberFormat Date: Mon, 28 Feb 2000 17:50:22 +1100 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit References: [EMAIL PROTECTED] Raymond E. Griffith wrote: I set the numberFormat to 0.## (10 places to the right of the decimal point) for calculation, but all answers are returned as integers. "Steven D'Aprano" [EMAIL PROTECTED] graciously replied: As example calculation would be useful. You didn't state whether the answer actually is an integer. Eg: you want 10.00 but only get 10 with no decimal point. OK, I am taking the standard deviation of a set of 50 numbers. I am trying to recreate the precision of my TI-83 calculator. Under ten-decimal place accuracy I get it. I then set the numberFormat to 0.00 for calculation. The calculations were stored correctly. I then set the numberFormat to 0.##, added 0 to the calculated amounts for display. Again, the displayed amounts were integers. Hashes in the NumberFormat specify that only non-zero trailing figures are kept (eg 2.001000 - 2.001), so again we need to know the actual result of the calculation before we can tell if its a bug. Right: here goes. Calculations with numberFormat set to 0.00 µ = 74.364000 x = 3718.20 x^2 = 279382.46 Sx = 7.6694932382 x = 7.5924109478 n = 50.00 minX = 56.90 Q1 = 68.80 Med = 74.55 Q3 = 79.60 maxX = 88.60 As you can see, everything except for Std deviation and population deviation possess extra zeros. Definitely unneeded and unwanted. But I want the extra digits on Sx and x. So I use the following script to filter out the extra zeros set numberformat to 0.## repeat with i = 1 to 11 put item i of "pmean,psumx,psumxsq,pstddev,ppopdev,pn,pminX,pQ1,pmed,pQ3,pmaxX" into thatprop put line i of the StatSymb of me 0+the thatprop of me into line i of ans end repeat put ans into fld "Stats" Here is the result. µ = 74 x = 3718 x^2 = 279382 Sx = 8 x = 8 n = 50 minX = 57 Q1 = 69 Med = 75 Q3 = 80 maxX = 89 What I want -- and can't seem to get -- is µ = 74.364 x = 3718.2 x^2 = 279382.46 Sx = 7.6694932382 x = 7.5924109478 n = 50 minX = 56.9 Q1 = 68.8 Med = 74.55 Q3 = 79.6 maxX = 88.6 My apologies if you already knew this, but its been my experience that its always good to check the simple things first before firing off bug reports. There's nothing worse than paying for a service call on a television because it wasn't plugged in :-) I agree. Sorry for not being more specific, including calculations, etc. And since I tend to think that a service call may be needed here, I really should have provided more detail. This is a pretty important issue for me. Do you mind if I ask, what are you doing that requires 10 decimal places of accuracy? That's a lot. It is. But it is what I need for this project. Actually the TI-83 stores 14 digits with a 2-digit mantissa. I like the accuracy (after all, I am a math teacher), but again, it is needed if I am to imitate the Ti-83. I notice that for me, numberFormat always ignores the trailing #'s. If I use, set numberFormat to 0.00 the ending four digits are completely ignored, and everything winds up with six decimal places after zero. Of course, I could be doing something completely dumb. But this use of numberFormat works in Hypercard. -- Steven D'Aprano Thanks, Steve. I hope this clears up what is happening. Am I just missing or misusing something? This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: Blank Images from Disk (Mac MC2.3g)
From: Peter Reid [EMAIL PROTECTED] Subject: Blank Images from Disk (Mac MC2.3g)? Date: Mon, 14 Feb 2000 11:58:16 + MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" ; format="flowed" I'm trying to load various images that make up the screen design of my stack directly from disk files rather than have them embedded. However, if I use something like the following: set the fileName of image "MainTitle" to "/MacHD/Images/title.gif" I just get blank filled rectangles instead of the images themselves. If I select the same file from within the MetaCard development environment, it displays correctly. I've even looked at the source code in this part of the development environment and can't see where it's doing anything different to me, but my code simply doesn't work?! Any suggestions please, this is driving me nuts! Try this: (code this into a button) on mouseUp answer file "Which file do you want to use?" put it into x set the filename of image "backgfile" to x put x into fld "graphicLink" end mouseUp This will tell you whether you have set up your link correctly. My guess is that you have a space or something missing. In any event, you should be able to solve your problem this way. Cheers Peter Hope this helps. Raymond This is the MetaCard mailing list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm
Re: Sharing the Metacard Survey
From: Kevin Miller [EMAIL PROTECTED] Subject: Re: Sharing the Metacard Survey Date: Wed, 19 Apr 2000 17:53:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit In-Reply-To: [EMAIL PROTECTED] On 19/4/00 4:55 pm, Mark Lacy [EMAIL PROTECTED] wrote: I was wondering what Kevin Miller and the folks at Cross Worlds would think about sharing the results of the Metacard survey. It would be great to see what other Metacard users were asking for and interested in. And Kevin answered (reminding us of another posting)... Ah! Unfortunately, those results aren't going to be released - no need to give the competition any extra information. You'll have to wait to find out when the next release of MetaCard comes out... To which I reply ... Competition? What competition? Apple is doing nothing with Hypercard, despite the intense loyalty of its devotees (myself included). SuperCard is still Mac-only. Is there another cross-platform solution that even begins to touch what MetaCard is able to do? (squeakier, higher voice here) I don't think so! (normal voice mode) And is there another team which is so devoted to its product and so willing to make it better? Again (And no, Microsoft's Visual Basic doesn't count. Not cross platform, and not nearly so user-friendly to amateur programmers like me). So, if we can't get the results, OK. No harm done. At least if Scott and Kevin worry about the competition like they have been, they will ensure that there won't really be any! Cheers! It's late, and I am going to bed. Got classes to teach in the morning (and afternoon, and evening). Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Digest metacard.v003.n360
on 5/09/2000 1:02 AM, Scott Rossi wrote: I disagree -- the latter behavior would be fine. If I really needed to, I could lock and unlock the screen to update the outer card regions. For example: I have a series of cards in a stack that use the same header imagery at the top of each card (in a shared group). I'd like to use a localized visual effect on the lower portion of the cards, to update the content that appears in that region, without affecting the header images. Currently there's no way to do this except by placing all the images/data on a single card and hiding/showing the desired content. Why limit this effect to a single card? Why not allow the use of MC's card structure to organize content for transitions (visual effects)? OK, this is untested, untried, etc. Make your header another stack (say a substack). Show it as a palette with decorations set to empty so it can't move and set its loc on the stack where you want it. You should be able to use the visual effects on the card without affecting the image. At least try it and let me know! Raymond Regards, Scott _ Scott Rossi Tactile Media - Multimedia Design Creative Director Email: [EMAIL PROTECTED] Web: www.tactilemedia.com Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: The value
Jacque, I think you may have hit upon a bug. I put the following into the message box: answer value("This is my dog.") and it returned a "double binary operator" and flagged the word "is" as a bad token. Evidently it was trying to evaluate the trueness or falseness of the expression containing "is". However, you would think that the value of a string would be the string. However, I tried answer value(quote "This is my dog." quote) and it returned This is my dog. I admit I like HC's easy way of handling strings. However, even it is a bit arbitrary. For example, in HC answer value(3 = 2+1) and answer value("3 = 2+1") both return true even though I hoped to get a string back for the second. OK, Scott? Kevin? How do the rules work? Raymond From: Jacqueline Landman Gay [EMAIL PROTECTED] asked: In HyperCard, the value of any phrase in quotes returns the entire phrase. In MetaCard, this: the value of "my dog" returns "my". Is this right? What are the rules? -- Jacqueline Landman Gay| [EMAIL PROTECTED] HyperActive Software | [EMAIL PROTECTED] Custom hypermedia solutions | http://www.hyperactivesw.com 612.724.1596 | 612.724.1562 - fax Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: The value
"Steven D'Aprano" [EMAIL PROTECTED] reasonably corrected my view thusly: I wrote: I think you may have hit upon a bug. Steven replied: I don't think so. That seems like expected behaviour to me. I put the following into the message box: answer value("This is my dog.") and it returned a "double binary operator" and flagged the word "is" as a bad token. Evidently it was trying to evaluate the trueness or falseness of the expression containing "is". Well, the error message is a little less than user friendly, but value attempts to evaluate its arguments as a Metacard expression. So of course it tries to compare "This" with "my dog". I'm not sure why it fails instead of returning false. I suspect it may have something to do with missing quotes around each substring. However, you would think that the value of a string would be the string. Then what is value("1+1")? Should it be the string "1+1"? Or the expected result of 2? The value of a string being the same string pretty much defeats the purpose of having a value function. Why do you need a function that does nothing? Think of value() as stripping a single pair of quotes from a string and treating the result as a Metacard expression. Then: value(quote "green_eggs and ham" quote) will return the string "green_eggs and ham", but value("green_eggs and ham") will attempt to evaluate the variable green_eggs and do a Boolean AND with the variable ham. Why say answer value("3 = 2+1") when all you really need is answer "3 = 2+1" ? Stephen, you are right. Sometimes it is hard for us hypercarders to make the switch. MetaCard has so much more power in so many areas, but it takes time to get used to the new models. I had a horrible time with backgrounds and groups for about two weeks because I didn't completely understand the new model. Now I see MC's model as superior, and love it -- though there are a few unintended consequences now and again as models get mixed (wry grin). Value is one of the HC statements that gets used for strings because HC doesn't have some of MC's features. Thanks for the help. Raymond -- Steven D'Aprano Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Metacard replacing Toolbook and Director
on 5/27/2000 7:11 PM, Richard Gaskin [EMAIL PROTECTED] wrote: Yes! As I understand it, those people will need help. Asymetrix seems to be at least putting ToolBook on the back shelf: it's been two years and all they've come up with is a minor upgrade from 7.0 to 7.1. MetaCard is the closest thing they've got. Oh, and what a discovery it would be for them: - Great interpreter - All three operating systems families - Radically lower prices Two ToolBook programmers and three production staff cost a ToolBook shop: TB Instructor: $2495 x 2 = $4,990 TB Librarian:$995 x 3 = $2,985 __ Total Authoring Hit $7,975 Compare with a similarly-staffed MetaCard shop: MetaCard License: $995 x 2 = $1,990 MC Starter Kit: $0 x 2 = $0 __ Total Authoring Hit $1,990 "Save more than 75% -- go MetaCard!" :) AMEN, preach it! But there are some other issues. ToolBook is slow and clumsy. Every image imported is stored as a bitmap in a resources file, immensely inflating stack size. Its widgets are hard to manage. While ToolBook does have the advantage of being able to create HTML from its pages, the processes are still rather clumsy, and the output could be a lot better! I'm sure that this export process will make it into one of the future versions of MC. The version issue raises a question: Mr. Raney, I know we all deplore companies who jump major version numbers for mere bug fixes (we needn't mention names of course), but tell us: Why are you so conservative with MetaCard's version numbers? 2.3 could well have been called at least 2.5. With it's QT support, new tokens, and much better Mac support, it's anything but a _minor_ upgrade. We appreciate the modesty, but from a marketing perspective have you considered the perceptual value of upping your version numbers to better communicate the strength of what you're delivering? -- Richard Gaskin Fourth World Multimedia Design and Development for Mac, Windows, UNIX, and the Web Richard says it well. Scott, you have been giving us a great product. And while others have said something about you retiring early, I sincerely hope you make a ton of money, but stick with MC for a long time. With such support as you have given your product, you are a very rare person in the application world today. Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Subject: Images in memory
On 6/13/2000 11:05 PM Jacqueline Landman Gay [EMAIL PROTECTED] wrote: I've got a stack that repeatedly sets the filename property of various images. Is there a way to keep these in memory even after the image content changes so that, once loaded in, they are immediately available? Sort of a pre-buffer-and-store thing? I know I could store the images in the stack and set a button icon to use them instead, but there are almost a megabyte of images and the stack would get fairly bloated. Jacque, I'd suggest storing the filenames into a custom property. This would be instantly accessible. Something like "set the filename of image "myImage" to line k of the storedfilenames of image "myImage" Is this what you are looking for? Raymond -- Jacqueline Landman Gay| [EMAIL PROTECTED] HyperActive Software | [EMAIL PROTECTED] Custom hypermedia solutions | http://www.hyperactivesw.com 612.724.1596 | 612.724.1562 - fax Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Slicing and dicing tabular data
on 6/14/2000 5:01 AM, Ruediger zu Dohna [EMAIL PROTECTED] wrote: Richard Gaskin wrote: Or, if we wanted to entertain the concept of a "colulmn" chunk type, we could look at a broader set of language extensions. We have had an external for this for about 8 years now and I had proposed a different syntax on the xTalk list on March 20th, but I hardly got any response... maybe I too should post to the metaCard list instead ;-) The idea is essential, though! Regards Rüdiger A "column" chunk type would be good. But would it be implemented with items? For example, if you have a several lines, each a comma-delimited list, column(2) of mylist would return item 2 of each line, separated by returns. Yes, I'd like that! In fact, that would make life a *lot* easier in certain areas! Scott? Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
RE: Cutting and Pasting from One Field to Another
I have to say that I have also had this problem. I would copy from a word processor doc, and try to paste it into MC, but without success. I discovered that part of the problem one time was that I had installed the menu bar (which traps copy and paste commands without allowing them to pass). When I edited the menu so that cut and paste had the appropriate commands assigned in the menuButton, things got better. But there was one time I had not installed the menubar, and I still had trouble. I never found out what caused that one. Raymond on 6/29/2000 4:15 PM, LORI FRAIND [EMAIL PROTECTED] wrote: Thank you for this suggestion, but no, I did not make either of these modifications. The problem persists across several fields in a group. I am also unable to copy to or from Word. Lori -Original Message- At 12:58 PM -0400 6/28/00, LORI FRAIND wrote: The cut and paste functions between fields do not seem to be working, even though they were working earlier today. Is there a way of (inadvertently) setting fields to not allow cut and paste? The cut function does not even seem to be working if I switch over to Word and try to paste the text there. Thanks. Dave Cragg [SMTP:[EMAIL PROTECTED]] replied: Hi Have you introduced any handlers that might trap the cut or paste actions? rawKeyDown or commandKeyDown are the ones I can think of that would do this. Cheers Dave Cragg _ The LACS Centre (Business English Training Resources) mailto:[EMAIL PROTECTED] http://www.lacscentre.co.uk _ Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list. Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Fields and cursors
I am having a really *weird* problem lately. I have a field which I can switch from being locked and listbehavior = true to unlocked with listbehavior = false. The trouble is that when I click into the field, there is no indication in the field as to *where* the cursor is. Instead of a blinking cursor I have nothing visual to indicate my position. The problem has spread to other fields that never were locked this way (but are on the same card). I must have changed a property somehow. But when I How can I take care of this? Many thanks! Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Digest metacard.v003.n439
I am trying to send an attachment file with the mcmail.mc file. So far, this is what I have done: I put a field "theAttachment" into the card. The script is from the button "Send", with my addition clearly marked. It does something, but it doesn't place it as an attachment, but as a part of the body text. # construct email header put "" into mailraw put "From: " fld "mailfrom" crlf after mailraw put "Date: " mimedate() crlf after mailraw put "Content-Type: text/plain; charset=us-ascii" crlf after mailraw put "MIME-Version: 1.0" crlf after mailraw put "Message-Id: " the seconds "-" the ticks "@MetaCardSMTP" crlf after mailraw put "To: " fld "to" crlf after mailraw if fld "cc" "" then put "CC: " fld "cc" crlf after mailraw end if put "Subject: " fld "subject" crlf after mailraw put crlf fld "body" after mailraw -- ** MY ADDITION if fld "theAttachment" is not empty then put fld "theAttachment" into theAttachmentName put "binfile:" theAttachmentName into theattachment put crlf "Content-Type: application/base64; name=" quote theattachment quote after mailraw put crlf crlf base64Encode(url theAttachment) after mailraw end if -- # socket implementation, talking to smtp smtpsend fld "smtpserver",fld "mailfrom",validEmailList,mailraw end composemail -- I sent the file (a MetaCard file) to myself. I copied and pasted the encoded data in my email into a MC field. A button has the following script: on mouseUp ask file "What file to save to?" put it into thefileName put base64Decode(field "thebinfile") into URL thefileName end mouseUp But now, when I attempt to open the file (type into the message box "Answer file "?"; open it), I get the message "stack was corrupted by a non-binary file transfer" - So, any suggestions? I really *need* to be able to send file attachments with this MCmail protocol. I am building an app that will generate a MC stack, then email it to the appropriate person. Thanks for your help, Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Emailing an attachment
on 7/16/2000 1:11 PM, andu [EMAIL PROTECTED] tried to help me with my problem below: I am trying to send an attachment file with the mcmail.mc file. So far, this is what I have done: I put a field "theAttachment" into the card. The script is from the button "Send", with my addition clearly marked. It does something, but it doesn't place it as an attachment, but as a part of the body text. # construct email header put "" into mailraw put "From: " fld "mailfrom" crlf after mailraw put "Date: " mimedate() crlf after mailraw put "Content-Type: text/plain; charset=us-ascii" crlf after mailraw put "MIME-Version: 1.0" crlf after mailraw put "Message-Id: " the seconds "-" the ticks "@MetaCardSMTP" crlf after mailraw put "To: " fld "to" crlf after mailraw if fld "cc" "" then put "CC: " fld "cc" crlf after mailraw end if put "Subject: " fld "subject" crlf after mailraw put crlf fld "body" after mailraw -- ** MY ADDITION if fld "theAttachment" is not empty then put fld "theAttachment" into theAttachmentName Try put url "binfile:" theAttachmentName into theattachment put crlf "Content-Type: application/base64; name=" quote \ theAttachmentName quote after mailraw put crlf crlf base64Encode(theattachment) after mailraw I tried it. Still doesn't work. It does do something different, though (I'm not sure exactly why...). It seems to encode the name, but not the file. But thanks. Still working on it. Any other suggestions? put "binfile:" theAttachmentName into theattachment put crlf "Content-Type: application/base64; name=" quote theattachment quote after mailraw put crlf crlf base64Encode(url theAttachment) after mailraw end if -- # socket implementation, talking to smtp smtpsend fld "smtpserver",fld "mailfrom",validEmailList,mailraw end composemail -- I sent the file (a MetaCard file) to myself. I copied and pasted the encoded data in my email into a MC field. A button has the following script: on mouseUp ask file "What file to save to?" put it into thefileName put base64Decode(field "thebinfile") into URL thefileName end mouseUp But now, when I attempt to open the file (type into the message box "Answer file "?"; open it), I get the message "stack was corrupted by a non-binary file transfer" - So, any suggestions? I really *need* to be able to send file attachments with this MCmail protocol. I am building an app that will generate a MC stack, then email it to the appropriate person. Thanks for your help, Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Subject: mail with MC
on 8/10/2000 3:41 PM, andu [EMAIL PROTECTED] asked: Is there any interest in a more or less complete E-mail program I wrote ? I used it for the past several months (mostly without complains) and I think it would be most useful as a tutorial. I'm still not sure about the general concept of handling mail so it's work in progress. It should run on all platforms (how many software do that;-); I only checked it on Linux and Mac. It sends attachments too. Andu Certainly! I would be especially interested if the program described *why* things work! There are a *lot* of things in this area that I do not understand. Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: metacard, internet and security
on 8/13/2000 11:29 PM, Scott Raney [EMAIL PROTECTED] replied to "opus.species" [EMAIL PROTECTED]: But we have now to consider the security... A *.mc app can do anything : destroy all the data of a computer, use a computer to destroy all the data on a network, ... Just like any email message sent to a person using an unpatched version of Microsoft Outlook! Indeed, the latest exploits don't even require you to *read* the message, let alone open an attachment... 2) solution based on limiting the runtime The Navigator, MSIE or javascript have some internal limitations to forbid writing on the user's disk. Would it be possible to have in metatalk some internal flag forbiding a runtime to write on the user's disk but in the folder where the runtime is ? Something like this is already in there: Setting the "secureMode" property to true prevents accessing files or running subprocesses on the current system. You can set it to true in a startup handler (once set to true, it can never be set back to false for that session), or on Windows and UNIX, by passing "-f" on the command line. Regards, Scott But you can't set this for a standalone app you are running, can you? Some programs need a file access. MetaCard is a *very* powerful environment and can do things many other programs cannot. So we are back to the old warning, caveat emptor -- let the buyer beware! If you don't know what you are downloading and running, you are taking your computer's health into your own hands. So, be careful what you do! And keep backups! Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Animated GIFs (was Re: can't save stack?)
on 8/13/2000 11:29 PM, Scott Raney [EMAIL PROTECTED] wrote: The gifs are "optimized" but Windows MetaCard can display them.and the Mac MetaCard can't (properly). The gifs display properly on the Mac in the shareware program gifbuilder. Do I have to take apart the gifs and reassemble them as "unoptimized" to get them to play on the Mac in MetaCard? I'm talkin' 75-100 animations so that doesn't sound like something I want to do. Just a followup on this: He followed Kevin's advice and sent us the GIF files. The "optimization" technique used on these images is really a bastardization of the GIF format: it uses the transparency mask to store color information rather than what it was intended for. While this sometimes results in smaller files, the animations must always be rectangular and you can't move them while they're playing. We put a hack in the engine to deal with this type of image awhile back (set the "constantMask" property of the image to true), but I recommend avoiding this type of "optimization" unless file size is the #1 concern in your application. Regards, Scott What applications other than GifBuilder do this? I'd like to avoid trouble. Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Digest metacard.v003.n493
on 9/03/2000 2:10 PM, Andu wrote: Vertical tabs is not a bad idea but how do you write the names? Ahh, the problem of putting text at a 90 - degree angle! I have often wished for vertical tabs and the ability to put some fields at 90-degree angles to make labeling easier. Generally speaking, it would be a great thing to have the ability to curve text to a path, to rotate it, stretch it, etc. These would be killer features! Of course, with all the other stuff we have asked Scott to do, he has his hands full! Cheers, Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Apple has released Mac OS X Beta
on 9/13/2000 6:51 PM, "Geoff Canyon" [EMAIL PROTECTED] gloated: It's not downloadable--you have to buy the cd for $29. Does it make me a simpering MacFool that I already ordered mine? Don't answer that. :-) http://www.apple.com I can't order it. My iMac has only 96 MB of RAM. Sigh. Maybe they will get the memory requirements down. Then again, maybe not. At least MetaCard has a reasonable memory requirement! Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Problem with writing a patch stack
on 9/16/00 12:59 AM, Andy Bailey at [EMAIL PROTECTED] wrote: I am trying to write a patch to an existing application. and on 9/17/2000 5:10 AM, Geoff Canyon [EMAIL PROTECTED] suggested: Two other possible solutions, which may or may not violate your license, would be: 1. Instead of trying to copy the new stuff into the old stack, copy the user-customized stuff out of the old stack into the new stack. This doesn't really qualify as a "patch" in my book, but depending on your goals might do the trick. This should work. I think. There was a situation some time back that I had trouble with pasting an object created in a full version using an unlicensed one... 2. Edit the old stack as a pure text object. Obviously this is tricky, not recommended, perhaps not possible at all, possibly a violation of the license agreement, and in general Not A Good Idea. But it would certainly not produce the script limits problem your current method does. gc But this will not work for two reasons. First of all, the stack is binary, not text. Editing as text means also saving as text, thus destroying the stack. Even if your stack has a .txt ending, it is still written as a binfile. I tried opening a stack I had so edited. Kablooey. And even so, there are some things that should not be done wrg the license agreement. If changes in the stack's script need to be done so that the scriptlimits are not violated. And there *are* ways to legally handle scripting with the unlicensed version so that you are doing everything you want to do. I know. I have been doing it for some time. I never violate the scriptlimits, yet I can do a great deal. Basically it involves placing code in non-script places, as custom properties, and running them with do statements. There are also other techniques. If you want to know more, start a new thread and ask. One other suggestion. Create the stack with other stacks as plugins that your main stack accesses. You can upgrade the plug-in. Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: the owner is not always the owner - was best way to refer
on 9/21/2000 3:36 PM, Craig Spooner [EMAIL PROTECTED] replied to: Any objection to changing behavior of "the owner" property so that it returns the long id of the object instead of the name? Seems to me that this will eliminate the ambiguity problem with minimal backward compatibility problems... Regards, Scott Sounds very helpful to me, as I, too, ran into this problem a while back. Is it better to change the behavior of "the owner" or create a new "ownerID" property? Craig -- Hmmm, changing the behavior might cause some backwards incompatibility. But an "ownerID" property would be very nice. Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.
Re: Transposing sound clips?
On 22/9/00 9:03 pm, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: In hypercard, there is an option to transpose a single sound up and down a scale such as play "harpsichord" "c d e f g a b" is there a similar property in metacard instead of recording different notes for a single sound? And Kevin Miller replied: No - this isn't supported. Regards, Kevin Can we feature request it? This was a *neat* ability. I used this and HC's ability to deal with speech in my most important programs. I could really use these features! Raymond Archives: http://www.mail-archive.com/metacard%40lists.best.com/ Info: http://www.xworlds.com/metacard/mailinglist.htm Please send bug reports to [EMAIL PROTECTED], not this list.