Re: Simple Arrays

2010-01-11 Thread Jeanne A. E. DeVoto

At 9:34 AM -0800 1/10/2010, Jim Ault wrote:

Yours is not the same syntax as the example in the docs

put  1 into myArray[1,1]
put  2 into myArray[1,2]
put  3 into myArray[2,1]
put  4 into myArray[2,2]

But theirs does not make sense to me, since "1,1" is like "1comma1"
or "1a1" if all keys are strings (except when they fall into a
special category of sequential integers)



The transpose function and its documentation are both pretty ancient, 
and date from before the time when Rev had true multidimensional 
arrays. Back in the olden days (cough), that style of key was how you 
emulated multidimensional arrays, and transpose was implemented to 
make that a little easier.

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
revolut...@jaedworks.com
http://www.jaedworks.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 things that are only supported on some platforms

2009-03-29 Thread Jeanne A. E. DeVoto

At 12:58 PM -0700 3/28/2009, Bill Vlahos wrote:

I have an application that uses revSpeak which works fine on Macs
and Windows as it should. This command isn't supported on Linux but
I thought I would try to see what happened if I tried anyway. I get
an error "can't find handler".

Is this the expected behavior for a command that isn't supported?


If I remember correctly, the text-to-speech capabilies are 
implemented as an external, rather than being part of the engine. 
Given that, this is expected behavior... although it's 
counterintuitive that a "built-in command" isn't actually built in.



I could either trap for platform or put the command in a try... statement.


Either one seems sensible. The try structure is probably a bit more 
robust, since it will work even if you've built a standalone and 
forgotten to include the speech library.

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
revolut...@jaedworks.com
http://www.jaedworks.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: commandNames

2009-03-29 Thread Jeanne A. E. DeVoto

At 12:44 PM -0700 3/29/2009, Richmond Mathewson wrote:

dunbarx wrote:

"And "commandNames" is a function."

indeed.

However it shows up on:

put the functionNames into fld "fFUNX"

the problem concerns 2 word functions, commands, properties, and so on.



As far as the engine is concerned, there is no such thing as a 
two-word command (or function, property name, etc). The parser keys 
off the first word of the command.


The docs sometimes separate out different forms of a function for 
clarity. (For example, "answer" and "answer file" are very different, 
and there is almost no overlap in what has to be documented about 
them, so it would make no sense to dump both onto the same 
documentation page.) But convenience of looking things up in 
documentation doesn't affect what the engine sees as a command - and 
the commandNames reports on the engine's view of the matter. ;-)

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
revolut...@jaedworks.com
http://www.jaedworks.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: the focusedObject

2009-01-11 Thread Jeanne A. E. DeVoto

At 7:51 PM -0400 1/11/2009, william humphrey wrote:

Simpler frustration. Please why doesn't this do what I'm expecting?

   *if*  field id 1045 of card id 1002 of stack "BLEdit" of stack "clients"
is the focusedObject *then*


It looks to me as though the problem is that you're using a field 
reference, expecting it to be interpreted as a literal string, and 
Rev is resolving the field reference instead. In other words, "the 
focusedObject" evaluates to the string

  field id 1045 of card id 1002 of stack "BLEdit" of stack "clients"
which is what you want, but your line of code doesn't give the field 
reference as a literal, in quotes - so Rev interprets it as the 
field's contents.


For example, if your field happens to contain the text "Foo", the 
line is interpreted as:

  if "Foo" is the focusedObject
which of course doesn't work.

To fix this, you'll need to express the field reference as a string, in quotes:

  if the focusedObject is "field id 1045 of card id 1002 of stack" \
 && quote & "BLEdit" & quote && "of stack" && quote & "clients" & quote
--
Jeanne A. E. DeVoto
revolut...@jaedworks.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: question about how to update an item in a field in batch mode

2008-01-21 Thread Jeanne A. E. DeVoto

At 5:46 PM + 1/21/2008, Peter Alcibiades wrote:

So what I am trying to do is go through the sales field using the number and
description from each line, one after the other, and match each line against
the record for that product in the stock field, then if there is a match,
knock down the no in inventory in the stock field, which is item 5,  by 1.

If I could make it work, the result of running it in the above instance would
just be that the no in stock would fall to 99 and 149.

The sticking point is how to do this match and decrement using repeat.

I can do it easily when dealing with it one record at a time - when there is
only one record in the field, so there is no repeat loop.  But I'm having
great trouble figuring out how you do it when you have to run through a
series of records from the first field one after the other against the second
field  Part of the difficulty may be the thing that was referred to earlier
on the list, that you cannot modify the repeat for variable.



Here's one way:

set the itemDelimiter to tab
put field "Sales" into mySales -- not strictly necessary but speeds things up
-- collect the info about how many of each thing were sold today:
repeat for each line thisSale in mySales
  add 1 to soldThings[item 2 of thisSale]
  -- this builds an array where the keys are the item descriptions
end repeat
-- now update the Stock list to account for all items sold:
put field "Stock" into myStock -- again, for speed
repeat for each key thisThing in soldThings
  -- figure out which line of the stock list is the record for this thing:
  put lineOffset(tab & thisThing & tab,myStock) into thisThingLineNumber
  -- and subtract the total sold today from the number of this thing in stock:
  subtract soldThings[thisThing] from item 5 of line 
thisThingLineNumber of myStock

end repeat
put myStock into field "Stock"
--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: importing a bunch of files

2008-01-16 Thread Jeanne A. E. DeVoto

At 10:18 AM -0800 1/16/2008, Richard Gaskin wrote:

Thierry wrote:


 Of course you have to replace spaces and slashes with some string
that will not break the name of the custom prop into several parts
:-)



I just ran this test:

on mouseUp
  put "some/thing" into v1
  put "some thing" into v2
  set the uTest[v1] of of this stack to "test"
  set the uTest[v2] of of this stack to "test"
end mouseUp

...and it worked well, with "some/thing" and "some thing" appearing
among the lines of the customKeys of property set uTest, and I can
also retrieve their values with the same notation.



Quoting the custom property name will also work:

  set the uTest["some\thing"] of this stack to "test"

But I seem to recall Mr. Raney cautioning against naming custom 
properties anything that wouldn't be legal for variables, on the 
grounds that it may work now but might not work forever. (Of course, 
Mark would be the one to ask at this point whether that's still true 
- I had the impression that it was a peculiarity of the way custom 
properties are parsed, but I don't know whether it might change at 
this point. But something to consider...)

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Many Cards Versus One Card and a List Field

2008-01-16 Thread Jeanne A. E. DeVoto

At 6:06 PM -0800 1/15/2008, Richard Gaskin wrote:

J. Downs wrote:

 What made it possible to use HC that way was its "hint bits", a
system for indexing field contents which is not only proprietary
but patented as well.  Hint bits made it ultra-fast for obtaining
data across the otherwise-complex structures that make up cards
and  fields.

 Certainly any such patent has expired by now.  Patents are
enforceable a maximum of 20 years past the filing date.


Cool.  Let us know what Apples says when you write to ask them for 
the code. ;)


If they'd patented it, we wouldn't have to ask for the code, since 
revealing the algorithm is required to obtain the patent. (Patents 
don't function as some sort of extension of trade secret, although 
some companies would like you to think so. ;-) The purpose of a 
patent is to get a new technique into the public domain; the tradeoff 
for the company is 1) you reveal how to do this to the public, in 
exchange for 2) a limited-time legally enforceable monopoly on the 
technique, which you get even if someone else discovers it 
independently. For Apple, this means they could go to court during 
the life of the patent against anyone who used the same method, but 
the price is that everyone knows the method - so once the patent 
expires, anyone can use it. In a real sense, a patented technique is 
the opposite of proprietary.


However, this may be moot as I don't think they actually patented the 
use of hint bits for searching. At least I can't find it at the 
Patent Office site, although there are a lot of patents that mention 
HyperCard and I haven't looked at most of 'em.

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: [TIP] Blank Option button

2008-01-16 Thread Jeanne A. E. DeVoto

At 4:35 AM -0500 1/16/2008, [EMAIL PROTECTED] wrote:

Here's one for your Scripter's Scrapbook:

How to blank the label of an option btn without resorting to SPACE...

set the label of btn "MyOptionBtn" to null

So far as I am aware, this is an undocumented feature.


No, it's documented. "null" is a synonym for the null character, ASCII zero.

I'm not sure I'd set a property to null. It may work fine now, but it 
strikes me as... dangerous. (cue ominous background music) Nulls are 
used to terminate strings in C, and it's possible to have unexpected 
results if some Rev routine handles a string containing a null 
without escaping it first.


What's the objection to setting it to space?
--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: New User Doc Whine & What?

2008-01-07 Thread Jeanne A. E. DeVoto

At 1:40 PM -0600 1/3/2008, Ken Ray wrote:

(Also, as a side note, the "Synonyms" for glossary items would make me
thing I could use these in code somewhere, and of course I can't use
button's or buttons' in script anywhere. BTW: What are the benefit of
the Synonyms to the user?)


The synonyms are there to allow the glossary to find variants (and 
typos) used in the docs text. (For example, you would want "button" 
and "buttons" and "button's" to all link to the glossary entry for 
"button".)


Why they are now exposed to the user, I have no idea. But that's why 
they were in there in the first place.


(As a side note, topics that answer this question ["How to find out 
the highlight state of a checkbox or button" and "How to change the 
highlight state of a checkbox or button"] used to be in the docs, 
linked to related topics. So was a list of object properties for each 
object type [hard to generate now because some of that information 
has been removed from the dictionary]. The separation of the User 
Guide lets people have a PDF - a highly desired/demanded change - but 
it can make it harder to find specific things because the docs are 
not all in one place and can't be linked together or searched for 
globally as easily.)

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Problems with Printer dialogues in Win XP

2008-01-02 Thread Jeanne A. E. DeVoto

At 1:42 PM + 1/2/2008, Stephen King wrote:

I am trying to print a single card only using
Print this Card.
This works fine, but I need to be able to set the active printer first and
possibly cancel if the printer is not available.

If I use Answer Printer, this gives me a windows dialogue box to select a
printer but even if cancel is selected Rev carries on and prints anyway
(Checking for Cancel in It doesn't work)

If I use revShowPrintDialog, this seems to do nothing at all on my XP


Here's a method that I think will work (although I'm not 100% siure 
it will work properly on Windows, and I'm not near a Windows system 
at the moment to check):


  on mouseUp
open printing with dialog -- displays the dialog, setting the 
result if user cancels

if the result is not empty then exit mouseUp
print this card
close printing
  end mouseUp

(revShowPrintDialog only works if your actual print command is either 
revPrintField or revPrintText; it doesn't do anything with print 
card.)

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Option controls on Windows

2007-11-04 Thread Jeanne A. E. DeVoto

At 9:20 AM -0700 11/3/2007, Richard Gaskin wrote:

Yes, the traversalOn is true (not sure how I'd be able to interact
with it via the keyboard without that).


For some reason, I was able to use the keyboard navigation even with 
traversalOn false (but menuPick wasn't getting sent when I pressed 
the Enter key in that configuration). The ways of Transcript are 
mysterious indeed, or something. ;-)

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Option controls on Windows

2007-11-03 Thread Jeanne A. E. DeVoto

At 2:38 PM -0700 11/2/2007, Richard Gaskin wrote:

If what I'm seeing is true, Rev does not send the menuPick message
when an option control has a new value selected via these keyboard
shortcuts.


I'm seeing menuPick here when using the keyboard-only method (Vista 
with Rev 2.8.1). Does the menu button have its traversalOn set to 
true? That might make a difference.

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Replacing a stack

2007-10-22 Thread Jeanne A. E. DeVoto

At 6:44 PM -0400 10/21/2007, Shari wrote:

When the app launches it checks the versions, and discovers that the
stack in the Prefs folder needs to be replaced.  So it deletes that
stack.  In testing I have it answer someMessage and with the answer
window open, can verify that the old stack is indeed deleted from
the prefs folder.

It then decompresses the stackData of the app and puts it into
binfile:prefsLocation.  I know beyond a doubt that the stackData has
the right version of 10.

But after it decompresses and creates the new Prefs stack, I check
the version and it's 7, the same version of the deleted stack.



Execute the revert command after you download the preferences stack:

  revert stack prefsLocation

What the revert command does is reload the stack from the copy on 
disk, replacing the copy in memory. Since the disk copy is the new 
version, this will suck the new version into memory, replacing the 
old one.

--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Doing in RR what we used to do in HC.

2007-10-17 Thread Jeanne A. E. DeVoto
It's always very frustrating when someone complains about something 
not being in the documentation that I know is actually there... and 
then I look in the current version's documentation and realize it was 
removed at some point. Case in point:


- About Revolution for HyperCard Developers (there in 1.0)
- About Porting HyperCard stacks (courtesy Jacque)

Sigh.
--
Jeanne A. E. DeVoto, Transcript Language Curmudgeon
[EMAIL PROTECTED]
http://www.jaedworks.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: Beautiful Transcript, er, Rev, ugly JavaScript?

2007-07-04 Thread Jeanne A. E. DeVoto

At 11:10 PM -0700 6/26/2007, Judy Perry wrote:

I can't recall if it was Kevin or Lynn who suggested that I compare some
beautifully simplistic Rev code with some really hairy, ugly-looking code
doing the same thing in, say, JavaScript, Java, etc., but, as I told
whichever one it was, that would necessitate *my* knowing those languages.


I once mocked up an ad for Rev comparing a one-liner (making an 
alias, I think) with code for doing it in RB, Java, and C. (Tuviah 
wrote the code.) The punch line was that the code in one or two of 
the other languages wouldn't fit on the page.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: [ANN} Writing (not drawing) with the pencil

2007-07-03 Thread Jeanne A. E. DeVoto

At 2:52 PM -0700 7/2/2007, James Hurley wrote:

I originally  thought it would be useful to see if Run Rev could
mimic ads I have seen on television in which an animated pencil is
used to write a signature at the bottom of a page of text.

Alas, it was not to be. Couldn't find a way to  convert the alphabet
to Run Rev graphic  objects.

Maybe someone has some ideas.


Hmmm. I'm not sure whether this would suit your needs, but one 
classic way to do this is to start with the complete signature, then 
erase it little by little while recording a frame every so often, and 
then run the animation backward so you see the signature appearing.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Database - quickest way to do this?

2007-06-10 Thread Jeanne A. E. DeVoto

At 4:26 PM +0300 6/10/2007, Ruslan Zasukhin wrote:

On 10/6/07 4:13 PM, "David Bovill" <[EMAIL PROTECTED]> wrote:

 NB - Ruslan what do you use to monitor emails - have you got a Valentina
 database searching for key words - or do you just use GMail :)


I use MS Entourage for MAC, and have setup for each list a rule,
So if letter contains e.g. word "Valentina" it play sounds and mark letter
by blue color.



Then we'd better hope we do not get a prolific list-member named 
"Valentina". ;-)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Custom property set

2007-05-29 Thread Jeanne A. E. DeVoto

At 12:05 PM +1000 5/30/2007, Sarah Reichelt wrote:

For the benefit of anyone else struggling with this, here is what I
ended up with:

   set the custompropertyset of this stack to "cStoredData"
   put the customkeys of this stack into tKeys
   set the custompropertyset of this stack to ""

Setting the customPropertySet to empty puts it back to the default.



There's actually an even easier way:

  put the customKeys["cStoredData"] of this stack into tKeys
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: New date stuff: am I doing something wrong?

2007-05-21 Thread Jeanne A. E. DeVoto

At 12:20 PM +0100 5/18/2007, David Bovill wrote:

Ah - so that definitely is a bug :) Should be american date no? So there is
no way of taking a date in english - lets say Scottish format and converting
it as we cannot assume the user settings... ok so I guess I have to script
it. Funny I thought those yanks would of objected to being called english :)



It's for historical reasons: HyperCard called that format the english 
date. (Probably because the engineers were thinking in terms of 
English versus other languages such as Spanish - that is, localized 
systems - instead of in terms of England versus the US.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Curse of the mystery tooltip...

2007-05-21 Thread Jeanne A. E. DeVoto

At 7:29 PM +0100 5/18/2007, Ian Wood wrote:
I was flipping between Mail, Safari and Rev 2.8.1, and saw a brief 
flash of a bizarre tooltip while the cursor was near the vertical 
scrollbar of a script window:


'Intelligent use of mouseControl' or something similar to that.

Did I just find an Easter egg?



Nope. You had your pointer over the third-from-right button in the 
message box, "Intelligence acts on mouseControl". What it does is 
make property names typed into the message box act on the object 
under the mouse. For example, if you type in "name" and hit 
Return/Enter, the message box tells you the name of the object the 
mouse pointer is over.


The other setting is "Intelligence acts on selectedObject", which 
does what you'd expect.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: [OT] Wonder if this guy can be programmed in Rev?

2007-04-27 Thread Jeanne A. E. DeVoto

At 12:39 PM -0400 4/27/2007, [EMAIL PROTECTED] wrote:

In a message dated 4/27/07 9:12:24 AM, [EMAIL PROTECTED] writes:


 http://www.youtube.com/watch?v=F759pkEl_xo


They called him "Jules", but wasn't that Kevin?


Kevin has more hair. ;-)
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Print question

2007-04-11 Thread Jeanne A. E. DeVoto

At 6:11 PM -0400 4/11/2007, Charles Szasz wrote:

I am using the Print Card to print three cards. I have only problem.
The first field on the first card where the user enters their name
has a blue high light around the person's name. It shows up in
Preview of OSX and prints out as blue background around the text in
the text field. I am using Rev. 2.7.4.  How can I fix this?


Hi, Charles. Try setting the field's showFocusBorder property to 
false before printing.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: imagedata

2007-04-11 Thread Jeanne A. E. DeVoto

At 12:34 PM +0300 4/11/2007, Viktoras Didziulis wrote:

So ppm/pgm/pbm is more compact than imageData and therefore processing may
be a bit faster. But be warned - I did not try this yet in Revolution, I
used to work with these formats in other languages before started playing
with Rev. However now using imageData mostly - but if ppm still is the same
real ppm in the text of image, then it is worth to try - performance gain
may be possible...


I don't think it is. The import command can import PPM/PBM/PGM files, 
but if I remember correctly, it turns them into RLE internally. 
Likewise with XWD and its variants, and BMP. (I haven't actually 
tested this lately, though.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: image data

2007-04-10 Thread Jeanne A. E. DeVoto

At 11:13 PM +0200 4/10/2007, Wilhelm Sanke wrote:

I would very much like to try out to come up with a routine to
manipulate pixels on the basis of the "text of image" property (to
compare it with the possibilities the imagedata format offers).
Where could I find background information for such an approach?


I warn you ahead of time that it will be ugly and you will probably 
pull out much of your hair. ;-) That being said, I think the best 
approach is to choose a format to work with, then consult the 
standards documentation for that format.


For example, you might choose to work with JPEG images. I think John 
Craig mentioned <http://www.jpeg.org> as a good URL to start with, 
although I think the Wikipedia page on JPEG is mmore informative 
<http://en.wikipedia.org/wiki/JPEG>. The text property of the image 
is in the format specified by the image's paintCompression, so for 
practical purposes you treat this property as though it were a JPEG 
file, decoding the data and then performing whatever transformation 
you need on it, then re-encoding it and putting the result into the 
image. (This is essentially what the engine is already doing when it 
displays a JPEG image, allows you to change it using paint tools or 
imageData, and saves the changed image.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: image data

2007-04-10 Thread Jeanne A. E. DeVoto

At 5:44 AM -0500 4/10/2007, Chipp Walters wrote:

Just to be clear. The imageData property is different from the text of
an image. You can manipulate the imageData, but AFAIK you cannot
manipulate the bytes of the text of an image (or at least last I heard
no one has figured out how to).


You can do it if you understand the format that particular image is 
in (JPEG, PNG, etc.) But it's a pain, since the image formats Rev 
supports are none of them as simple as the 4-bytes-per-pixel, 
uncompressed, no-headers format of the imageData.


If you want to manipulate pixels, you'd have to come up with a 
routine to translate the image contents into some format that's very 
like the imageData in any case. So in practice it just makes a lot 
more sense to manipulate the imageData if you are doing filtering or 
similar operations.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Automatically updating a stack - How Do I Do It?

2007-04-10 Thread Jeanne A. E. DeVoto

At 9:30 PM -0500 4/8/2007, Len Morgan wrote:

I'd like the app to check for newer versions on my server at
startup.  I've stored a custom property in each stack that has a
version and a build number but it occurs to me that I can't get that
information until I "start using" the stack.  Once that's done, if I
find (through a onPreOpenStack handler) that the server has a newer
version, how can I download the newer version?  Will I have to
notify the user that a new version has been downloaded and require
them to restart?  Can I change a running stack (reload the updated
version without reloading the OS cached version).



The easiest way to do this is probably to download the new version 
and save it to the old location, then use the "revert" command to 
reload the new stack. ("revert" actually reads from the disk file, so 
in this case, it will read in the version newly stored in the 
original location.)


This only works for separate stacks, however, not for the standalone 
itself. To replace the standalone, you need to download the new one 
and then prompt the user to quit and relaunch.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: image data

2007-04-09 Thread Jeanne A. E. DeVoto

At 10:19 PM -0700 4/8/2007, Mark Wieder wrote:

 the text property of an image is the actual image data. So:



 set the text of image "testImage" to tJPGData


This is one of those cases where I feel the language loses its
intuitiveness... I know you have to do this, but it makes absolutely
no sense to me.



It's historical. In HyperCard 1.0, only fields had settable contents, 
so the "text" property made perfect sense. When HyperCard 2.0 
introduced buttons with contents, it still used "the text", and of 
course with images we go completely off the rails.


For what it's worth, "put XXX into " does the same thing as 
"set the text of  to XXX", and is considerably more 
intuitive. But I wouldn't object at all to adding a synonymous 
"content" property or something similar.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: A string doesn't equal itself

2007-04-07 Thread Jeanne A. E. DeVoto

At 9:24 PM -0600 4/7/2007, Brent Anderson wrote:

It's very odd that revolution doesn't interpret the two strings the
same (and, therefore, as equal). It makes you wonder what's going on
under the hood.



I'm guessing it's an overflow problem, because it varies depending on 
the numbers used. For example, if the number on the left is 1, the 
comparison fails only if the number on the right is greater than 308. 
Increasing the number on the left decreases the critical number on 
the right.


Yeesh. It looks like all three of us are on Macs. Has anyone tried 
this on an Intel chip and/or Windows?

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Fwd: Help with random

2007-02-04 Thread Jeanne A. E. DeVoto
At 7:24 PM -0500 2/4/2007, Kevin J wrote:
>Ya that I can do. Sorry I should have been a little more clear. I have to
>input fields and a button, input field 1 in the number of dice field 2 is
>the dice type. So when a user enters the numbers ie: 3 die 6, 10 die 6. I
>need to to basically do the same thing but not have to use that many puts
>lol.


Try this:

put field 1 into numberOfDice
put field 2 into numberOfSides
repeat for numberOfDice times
  add random(numberOfSides) to rollTotal
end repeat

numberOfDice and numberOfSides are self-explanatory. (You don't really have to 
put the fields into variables, but it makes the rest easier to read. Also, 
reading from a variable is much faster than reading from a field - not likely 
to be a problem here, but it's a good habit to get into putting field contents 
into a variable if your routine uses the data several times.)

The repeat loop rolls the die whichever number of times you selected. For each 
roll, it adds the random number to the total. (You don't need to declare the 
variable rollTotal - the first time you put something into it, it will be 
created automatically as an empty variable. Adding a number to "empty" is like 
adding it to zero.)

Once you've finished the routine, the variable rollTotal contains the total 
rolled.
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Infinity Char on Windows

2007-01-29 Thread Jeanne A. E. DeVoto
At 3:14 PM -0700 1/28/2007, Mark Greenberg wrote:
>I am trying to port my math stacks from Mac to Windows.  Some of the 
>stacks use the infinity character (like a sideways 8), but in 
>Windows it displays as a box instead.  Does anyone know how I might 
>make that display properly in Windows?  If the solution involves 
>Unicode, be explicit because I've never tried to make Unicode work 
>for me in Rev.


Are these characters stored in a field or custom property?
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Printing question

2007-01-22 Thread Jeanne A. E. DeVoto
At 12:57 PM -0500 1/21/2007, Charles Szasz wrote:
>I have been using Dan Shafer's excellent book on printing has help 
>me a great deal iwith my project. But I have a question. I have 
>three cards that I want to print. Each card has a button that has to 
>be hidden and one card has a group three radio buttons that have to 
>be hidden. I am using lock screen and unlock screen with the hide 
>and show commands to hide the buttons and radio buttons. Here is my 
>question, how do I incorporate printing each card with different 
>elements to be hidden and shown in the printing script that is in 
>one print button?


If I understand your question right, you want to print all three cards (with 
the controls correctly hidden) in a single print job - is that right?

You can do this by using open printing and close printing:

  open printing -- optionally add "with dialog" if you want the print dialog box
  hide button "Unprintable" of card 1
  print card 1
  show button "Unprintable" of card 1
  hide button "Dont Print Me" of card 2
  print card 2
  show button "Dont Print Me" of card 2
  hide button "Please no pictures" of card 3
  hide group "Eek!" of card 3
  print card 3
  show group "Eek!" of card 3
  show button "Please no pictures" of card 3
  close printing -- prints all three cards
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: ejecting a disk after using "the files" funtion

2007-01-09 Thread Jeanne A. E. DeVoto
At 9:59 PM -0800 1/7/2007, Scott Rossi wrote:
>Recently, Rich Lague wrote:
>
>> When I try to eject
>> the CD I just cataloged so I can go to the next CD, I get this
>> message, "The disk (here it puts the name of the disk,) is in use and
>> could not be ejected."
>> 
>> I find that if I then use the function "the files" on a different
>> disk it allows me to eject the disk I just cataloged. How can I get
>> the function "the files" to let go of me CD so I can eject it and go
>> on to the next CD?
>
>I believe if you set the directory to another volume other than the CD you
>should be able to eject the CD.


Scott is right. Setting the defaultFolder to some folder that's not on the disk 
to be ejected will also let you eject it (a little simpler than using the files 
function).

(Basically, if an application is using a folder as its current working 
directory, the OS will mark that directory as being in use and won't allow you 
to eject the volume. It's the same as when you have a file on that disk open 
and therefore can't eject it.)
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Adding a Substack???

2007-01-07 Thread Jeanne A. E. DeVoto
At 10:44 AM -0800 1/5/2007, Jim Ault wrote:
>On 1/5/07 10:26 AM, "Dave" <[EMAIL PROTECTED]> wrote:
>> I have two .rev file, both contain one mainStack:
>> 
>> StackA.Rev StackA
>> StackB.Rev StackB
>> 
>> How can I move StackB so it's a substack of StackA?
>> 
>> Can't seem to figure out how to do it.
>
>Open both stacks
>Use the inspector for StackB, then the "Basic properties" panel, locate the
>drop down labeled "mainstack", and choose "StackA"


Or if you want to do this in a script, set the mainstack of the one that you 
want to be a substack:

  set the mainstack of stack "StackB" to "StackA"

and then save StackA.rev.
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: moving the cursor

2006-12-25 Thread Jeanne A. E. DeVoto
At 3:18 PM -0600 12/25/2006, Stephen Barncard wrote:
>how does one move the cursor character by character in a script? I'm using 
>2.7.4

select char 4 to 3 of field "x" -- puts it between 3 and 4

select char x to x-1 of field "x" -- puts it before char x

select char (word 2 of the selectedChunk + 1) \
 to (word 2 of the selectedChunk) of the selectedField -- advances 1 char
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Sort by the number of items of each

2006-12-24 Thread Jeanne A. E. DeVoto
At 7:10 AM +0100 12/22/2006, Ludovic Thébault wrote:
>In the documentation, i saw this :
>"To create a custom sort order, use the each keyword to pass each line
>or item to a custom function. The value returned by the function is
>used as the sort key for that line or item."
>
>but i don't know how do this.


Mark is of course right that you can do a sort by the number of items in a line 
as a one-liner.

But in answer to your second question: There used to be a cookbook recipe, 
illustrating how to use custom sort orders, linked to the sort item in the 
dictionary... but I'm not sure where it's migrated to now. Here's the example:


Solution:
function withoutLeadingArticle theTitle
  get word 1 of theTitle
  if it is "The" or it is "An" or it is "A" then
-- we don't want to use it for the sort:
delete word 1 of theTitle
  end if
  return theTitle
end withoutLeadingArticle

Discussion:
This custom function is called with a statement such as the following:

  sort lines of field "Titles" by withoutLeadingArticle(each)

The custom function works in tandem with the sort container command. When you 
sort the lines of a container, the each keyword serves as a placeholder for 
each line in the container. In the above statement, each line is passed to the 
"withoutLeadingArticle" function, and the returned value is used as the sort 
key for that line. The "withoutLeadingArticle" function simply removes any 
leading articles (the words "A", "An", and "The"), leaving the rest of the 
title to be used as the sort key.

---
It's one of the most powerful of the lesser-known features of Transcript, that 
ability to do a custom sort order. You can sort cards this way as well.
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Question on Value Function

2006-12-20 Thread Jeanne A. E. DeVoto
At 4:21 PM + 12/20/2006, Dave wrote:
>Hi All,
>
>I am calling a function in another stack using the value function. This code 
>work great:
>
>get value("Initialize(" & myEnableFlag & ")", myStackFileName)
>
>But how can I add another parameter to the call? The following gives an 
>execution error:
>
>get value("Initialize(" & myEnableFlag & "," & myString & ")", 
> myStackFileName)


Try wrapping it in "do":

  do "get value(" & quote & "Initialize(" & myEnableFlag,myString & ")" & 
quote,myStackFileName & ")"

Very strange-looking, but it works.
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Is "../foldername" a sufficient reference

2006-12-16 Thread Jeanne A. E. DeVoto
At 12:43 AM +0100 12/16/2006, Kresten Bjerg wrote:
>I wonder, whether there is a simple short way scripting for  a
>standalone in MacFAT & Linux ( where standalone consists of three
>files) to identify the parent folder, i.e. just naming it, without
>refering to grandparent and grandgrandparents etc -. We see  "
>../foldername".  often in the documentation, but I dont know, if
>that supposes the scripter to fill in series of parents above, or
>the "../" can be used literally?


Yes, it can be used literally. "../" means the parent of the defaultFolder, 
"../../" means the parent of that folder (the grandparent of the 
defaultFolder), and so on.

This actually is in the docs, in the article "About filename specifications and 
file paths" - but I'm not sure where what used to be the Encyclopedia has been 
placed in the current version of the docs...
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Limatations on List and Grid Fields?

2006-11-23 Thread Jeanne A. E. DeVoto
At 1:02 PM +0100 11/23/2006, Eric Chatonet wrote:
>Hi Scott,
>
>Maximum length of a line in a field : 65536 chars (should limit the number of 
>colons to a few thousands :-)
>Maximum total characters in a field : unlimited (should not limit the number 
>of rows :-)


Strictly speaking, actually it is not unlimited: it's 4 GB in a field.

For most applications, this limitation is not a problem. ;-)
-- 
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Parser

2006-11-15 Thread Jeanne A. E. DeVoto

At 5:21 PM -0500 11/15/2006, Mikey wrote:

  An expression such as "get
 hilite of me" is not correct HyperTalk. It's true that HyperTalk is
 looser about this particular mistake (and others) than Transcript -


Since HT was the original root of this tree, I think it's a little
unreasonable to say that it's incorrect or a mistake, unless Bill
Atkinson or Dan WInkler say so.  However for the sake of argument, I
would at least consider the same criticism from Danny Goodman.



From Danny Goodman, but not from me? Mikey, you're hurting my feelings. ;-)
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Parser

2006-11-15 Thread Jeanne A. E. DeVoto

At 9:54 AM -0600 11/14/2006, Ken Ray wrote:

 (and that "the" is anal-required)


For properties, yes, but most functions have a () alternative.



All functions, actually. (A few built-in functions won't take the 
"the" form; all of them have a "()" form. And of course custom 
functions require "()".)


As for properties: correct syntax for all xTalk variants I know of is 
to precede the property name with "the". An expression such as "get 
hilite of me" is not correct HyperTalk. It's true that HyperTalk is 
looser about this particular mistake (and others) than Transcript - 
I'm not sure about SuperTalk - but that doesn't mean it was "right" 
in HyperCard. HyperCard is forgiving about a number of syntax 
mistakes, which is good (because the script can be executed anyway) 
yet bad (because it promotes the development of bad habits).


You could develop an xTalk that drops "the" before properties, but 
then you have a serious name-collision problem shaping up, so I'm not 
sure that's such a hot idea. It's only four characters, and it makes 
the reference unambiguous.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Use of abbreviations in scripts

2006-10-16 Thread Jeanne A. E. DeVoto

At 11:16 AM -0500 10/16/2006, Ken Ray wrote:

On 10/16/06 11:09 AM, "Mark Wieder" <[EMAIL PROTECTED]> wrote:
 > There are many times when I wish I could define "funciton" as an alias

 for "function"...


Yeah, and "windwo" as an alias for "window"...



...and let us not forget the ever-popular "teh"... ;-)
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Forcing a variable to evaluate as an object reference

2006-09-11 Thread Jeanne A. E. DeVoto

At 4:39 PM +0100 9/11/2006, David Glasgow wrote:

"Inst3" of card "Ranking" of this Stack

The different language texts are stored in a custom property set 
'Language' in each of the respective objects.


When the script runs, the text is retrieved from the custom property 
set glanguage, but the "put it into field i" generates a 'no such 
object' error.


Try

  do "put" && quote & it & quote && "into field" && i
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: encode text to image

2006-09-02 Thread Jeanne A. E. DeVoto

At 11:24 PM +0200 9/1/2006, Wilhelm Sanke wrote:
The "text of image" property apparently does not work in the MC IDE, 
regardless of which engine is used, old or new ones - from 2.4 to 
2.7.3.


I strongly suspect a problem with the paintCompression property, in 
this case. I believe the Rev IDE sets it to "PNG", while the MC IDE 
(or the bare engine) sets it to "RLE". You might experiment with 
setting the paintCompression to "PNG" before transferring the image 
using the text property - the later engines might be making 
assumptions they shouldn't about the property value.


So what could be the benefits of using text-of-image data instead of 
"imagedata"?


They're different formats with different uses. The imageData is an 
expanded pixmap form (one pixel per four bytes - a byte of zeroes 
plus the R, G, and B channels) of the data currently presented on 
screen, while the text of the image (the content of the image 
container) is the base data of the image itself, in whatever format 
the image was created or imported in (PNG, GIF, etc.). The text 
property doesn't change if you change the image size, while the 
imageData does - it's recomputed from the content of the image every 
time you change the object size. The imageData form is more amenable 
to transformations such as changing the brightness or dropping out a 
channel. And so on.


There are various differences and which one is more useful depends on 
the circumstances.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Imagedata row order

2006-07-26 Thread Jeanne A. E. DeVoto

At 2:29 PM +1200 7/26/2006, Richard Gaskin wrote:

Jeanne A. E. DeVoto wrote:

 It looks like the IDE sets the default paintCompression
 to PNG instead of RLE, so I suspect it will actually be
 PNG unless you're using a standalone.


Is this user-settable in the IDE?


No, although I suppose one could put a script to reset it into a 
plugin and change the default that way automatically on startup.



If not, what is the benefit of concealing the engine's true behavior?


No idea. Maybe there was a thought about ensuring backward 
compatibility with the MetaCard or other IDEs, or backward 
compatibility with existing code that relied on the engine's behavior 
for use in standalones.


But I have noticed a tendency to put some settings and functionality 
into the IDE that I would think better in the engine itself - perhaps 
going back to the habits developed during the period that RunRev 
didn't own the engine.


Introducing differences between the engine's native behavior and the 
IDE's modifications of that should be done only with great care, and 
ideally with user-settable preferences which draw attention to these 
anomalies.


Differences between runtime and development make it harder to 
diagnose problem runtime problems from within the development 
environment, raising development costs unnecessarily.


I tend to agree with this general principle. Occasionally there may 
be a price to be paid in compatibility with existing code - that is, 
a developer might have to make a change to existing code before 
compiling a standalone with a new engine, as noted above - but I 
think it ends up better for everyone overall if behavior using the 
raw engine is as close as practical to the behavior with the IDE.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Imagedata row order

2006-07-25 Thread Jeanne A. E. DeVoto

At 11:35 AM -0700 7/25/2006, Rob Cozens wrote:
The text property is stored on disk?  Isn't that only if the image 
is referenced instead of imported?


Right. (But if it's referenced, the text property is always empty anyway.)


1.  I create a string of characters, 4 bytes per pixel  in imageData format .
2.  I set the imageData of an image to my string
3.  In what format is the image's text, if not rle?  GIF, JPEG, PNG, 
PICT, BMP, PBM/PGM/PPM, or XBM/XPM/XWD?  Perhaps rle compresses the 
data to 3 bytes per pixel by stripping the nulls?


It will be in RLE, unless you've set the format to something else - 
but RLE format isn't the same as the imageData. (It looks like the 
IDE sets the default paintCompression to PNG instead of RLE, so I 
suspect it will actually be PNG unless you're using a standalone.)


4.  What happens if I "put" my imageData-formatted string into an 
image?  Will the image not display correctly?  Does it throw an 
error?  Is the string reformatted before being placed in the text 
property?


You might get a crash, and you definitely won't get anything 
resembling the original image. Only by the rarest random chance would 
the imageData also be equivalent to valid RLE data - it's a 
structured format, and its structure isn't anything like the 
imageData pixmap structure.


Perhaps we are approaching "use" from different viewpoints; but then 
again it may all boil down to my misconception of what happens if I 
set the text of an image to an imageData-formatted string.  If you 
use "use" in the sense of "take the imageData as a starting point 
for your modifications", you'll get no argument from me.  And if 
setting the text of an image to an imageData-formatted string throws 
an error, I'm flat out wrong.  But if it doesn't throw an error, 
what does happen?


Well, as I say they're completely different formats. So setting the 
text of an image to an imageData-format set of data doesn't do 
anything sensible. It's just like setting the text of an image to the 
text of a field, or the contents of a random variable - it probably 
won't give a sensible result.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Imagedata row order

2006-07-25 Thread Jeanne A. E. DeVoto

At 12:32 PM -0600 7/25/2006, Dar Scott wrote:
No. It's run-length-encoded. Just as well, since the text property 
is what's stored on disk, and a 32-bit image with no compression 
whatever would take up a ton of room. Take a look at the length of 
the text versus the length of the imageData of a typical image 
object.


Wow, where is this in the dictionary?


I don't think it is ;-), except in a passing mention (RLE is expanded 
in the glossary).


Not that it would be a bad idea to document the internal format 
necessarily, but I don't think anyone ever thought in terms of people 
wanting to modify the text of an image on the fly - since you'd 
generally export it or use a referenced image, and do the 
modifications in an image editing program. (This was before anyone I 
know of had started thinking of doing image processing tasks in Rev.)


I have tried setting the text of an image to some PBM/PGM/PPM 
formats (P6 and P3 mostly, I think), but got no response to the 
image or size.  When I tried to subsequently export, I got an error.


Maybe something was wrong with my data.


Could be. I have successfully imported PBM and PGM files created by 
Graphic Converter, for what's it's worth. I don't think you can 
create a PBM/PPM/PGM by setting an image's text property - it looks 
like it's getting converted to PNG or RLE on the way in when it's 
imported, so there may not actually be such a thing as "a Rev image 
object in PBM/PGM/PPM format".

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Imagedata row order

2006-07-25 Thread Jeanne A. E. DeVoto

At 8:03 AM -0700 7/25/2006, Rob Cozens wrote:
* Rev. Dictionary:  "Revolution supports GIF, JPEG, PNG, PICT, BMP, 
PBM/PGM/PPM, and XBM/XPM/XWD formats, as well as its own internal 
format".  My presumption is (untested)  the "internal format", 
designated as "rle" in the image's paintCompression property, is the 
format used for imageData  [4 bytes per pixel:  null, red, green, 
blue].


No. It's run-length-encoded. Just as well, since the text property is 
what's stored on disk, and a 32-bit image with no compression 
whatever would take up a ton of room. Take a look at the length of 
the text versus the length of the imageData of a typical image object.


(Why would you assume that these are the same?)

*  Rev Dictionary: "Because most picture formats include 
compression, the content of an image is normally smaller than its 
imageData property."  My presumption is (untested) that if an image 
has never been resized since created in rle format, the image's text 
& imageData properties will be identical. [ I would also note the 
Dictionary is likely to be incorrect  if the image is displayed at 
less than full size.]


This is never the case. There is no situation in which the text and 
imageData properties are the same; they're in completely different 
formats.


*  Rev Dictionary: "To manipulate each pixel (for example, to 
brighten the image or remove the red channel), to examine the actual 
screen appearance of the image, or to work with the picture data in 
a format-independent way, use the imageData property."  I think this 
should read "use the rle format" instead of "use the imageData 
property."  [Though one could reference the imageData property to 
convert images in other formats to rle.]


No. It is possible to manipulate data by starting with the formatted 
text property of the image, of course - but the easiest way to do 
this is to write a routine that expands that text property so that 
each channel of each pixel is represented by a separate byte, and 
place that data in a variable to be worked with. Since what I've just 
described is the imageData property of the image, it seems 
considerably easier to use that instead of spending time reconverting 
the text picture data into that format.


If I had meant "use the text property of an image in RLE format" 
instead of "use the imageData property", that's what I would have 
written.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: mouse scrolling wheel

2006-07-25 Thread Jeanne A. E. DeVoto

At 8:48 AM -0700 7/24/2006, Scott Rossi wrote:

rawKeyDown is probably the message you want, but the docs also say: "Mouse
wheels do not send a rawKeyDown message on Mac OS systems."


(Note though that that's MacOS, not OS X. MacOS mousewheels need to 
use some hack whose details I don't remember that doesn't get picked 
up by the engine, but OS X doesn't share that limitation.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: "There Was a Problem Saving the Standalone Application"

2006-07-25 Thread Jeanne A. E. DeVoto

At 3:18 AM -0500 7/23/2006, Chipp Walters wrote:

Ctrl-click on a trackpad requires two fingers, one to press the
control-key, the other to hold-down the mouseKey at the bottom of the
trackpad, meanwhile the other hand works moving the cursor over the
trackpad to choose the correct menu item. I suppose for young large
hands, it would work just fine, but my fingers would get tired awful
fast trying to contort regularly that way.


We're wandering way off topic here, but most people who use a 
trackpad do one of these, to my observation:


1. Use the index finger to move the pointer, the thumb to press the 
trackpad button, and the left hand to press modifier keys (if they 
need one). The side of the thumb falls naturally over the button when 
your index finger is moving over the trackpad.


2. Turn on the clickable trackpad, and use the index finger to move 
the pointer and to click, drag, and double-click.


Using both hands just for ordinary clicking - one to move the pointer 
and the other to press the trackpad button - seems extremely 
difficult to me, and it wouldn't surprise me if someone who tried to 
use a trackpad that way gave up on it altogether and fled to the 
mouse in disgust. My right hand is cramping up just visualizing it. 
;-) You might, probably would, find one of the above methods easier.


(I myself use SideTrack and have the trackpad configured for 
clickability, and the trackpad button configured for control-click, 
which means I use only index finger and thumb. The corner I use the 
least is configured for command-click [which my browser uses for 
"open this link in a new tab", so I need it a lot].)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: [ANN] www.krugle.com --- xtalk not a real language

2006-07-20 Thread Jeanne A. E. DeVoto

At 4:51 PM -0700 7/20/2006, Lynn Fredricks wrote:

There is a thread in the support forum for it. If in the next newsletter we
set up some sort of automated petition to krugle include Revolution, would
you all be willing to participate?


An automated petition might be interpreted as spam - particularly if 
organized by the seller of a commercial product.


I would advise against this and suggest simply bringing the site to 
Revolution users' attention, as has already been done on the list.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Tip: Fadeout effect using blendLevel?

2006-07-19 Thread Jeanne A. E. DeVoto

At 10:58 AM -0500 7/18/2006, Peter T. Evensen wrote:
The dictionary entry for "visual effect" has a cross-reference to: 
"Tip: Fadeout effect using blendLevel"


Does anyone know where I can find this tip?



Here's the text of the tip (it's pretty simpleminded as you can see):

Fade out an image using the blendLevel
You can use the visual effect command to create a transition effect. 
For images, another way of creating such an effect is to use the 
blendLevel property:


  repeat with x = 100 down to zero
set the blendLevel of image 1 to x
  end repeat

Unlike visual effects, changing the blendLevel can be done during a 
move command. Other operations can also be performed inside the loop.




I'm not sure what happened to the Tips stack - I think it was dropped 
sometime around version 2.3 or so.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: longest word in a text

2006-07-14 Thread Jeanne A. E. DeVoto

At 8:46 PM +0200 7/14/2006, jbv wrote:

Does anyone have some very fast code to find the longest word
(number of chars) in a text ?


This one was the fastest of those I tested:

function longestWord myText
  repeat for each word thisWord in myText
put thisWord into myArray[the length of thisWord]
  end repeat
  get the keys of myArray
  replace return with comma in it
  return myArray[max(it)]
end longestWord

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Exporting sound from RR? - storing inside Custom Properties

2006-07-14 Thread Jeanne A. E. DeVoto

At 10:22 AM -0700 7/14/2006, Richmond Mathewson wrote:

Um? OK: How does one store something inside a custom property?



For a file, like this:

  answer file "Which file do you want to store?"
  set the myCustomProp of this stack to URL ("file:" & it)

To get it back out:

  ask file "Where do you want to put the file?"
  put the myCustomProp of this stack into URL ("file:" & it)
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Drag and Drop Data

2006-06-29 Thread Jeanne A. E. DeVoto

At 4:28 PM -0700 6/28/2006, Robert Sneidar wrote:
Here's a brain buster for you. Let's say I want to drag an email 
from Apple Mail and drop it onto a field. Normally nothing happens, 
even though the field gets focused. Is there any way to find out 
anything about the object being dropped onto the field? THAT would 
be cool. If you could create hot links to files or other drag and 
drop objects, like URL's and such, that would be mega cool. Can 
anyone say project manager with linked to-do's and contacts?


I don't know whether drag and drop supports anything interesting 
except files as yet, but try something like this:



on dragEnter
  beep 2
  set the acceptDrop to true
end dragEnter

on dragDrop
  put the dragData["files"] into myVariable
  answer "Dropped:" & return & myVariable -- list of files
end dragDrop
'
You'd probably want to store the filename(s) in a custom property, 
perhaps creating an icon or something to let the user click and open 
the file.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Viewing the size of stack elements (AKA, where have all the bytes gone?)

2006-05-24 Thread Jeanne A. E. DeVoto

At 6:33 PM +0100 5/23/2006, Ben Rubinstein wrote:
The origin of all this is that I'm preparing to move an app that's 
always been monolithic to a splashscreen-standalone, self-updating 
one - and I'm trying to see how an earth it got so big!  This is an 
app that I've been updating and refining for many years - it was 
actually the app that I purchased Metacard to create, many years ago 
before Revolution had been released, when I needed to move a 
primitive Hypercard version to Windows.  So it's a big old thing, 
there's a lot of history in it - and I think there's fat which can 
be stripped.  But I need some tools to go looking.


This isn't an answer to the more general question of how much space 
an object takes, but if I remember correctly, the only aspects of an 
object that are variably-sized are its script, text (for fields, 
images, and buttons), and custom properties. Devising a tool to scan 
the sizes of these would probably be simpler than doing the general 
case and trying to get the total size of the object, and it should 
pinpoint which objects might have gotten bloated over time.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Hue, Saturation and Value question

2006-05-20 Thread Jeanne A. E. DeVoto

At 11:29 AM -0700 5/20/2006, Garrett Hylltun wrote:
Does anyone know what the math equations are behind getting the 
Saturation and Value of a color?


H, maybe I should elaborate more.

I have sliders setup for RGB, and I actually have figured out how to 
setup a slider for Hue, but I can't figure out how to code some 
sliders for Saturation and Value.


Monte Goulding has a library for this: LibColor. It's at 
<http://www.sweattechnologies.com/rev/>.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Modeless application

2006-05-17 Thread Jeanne A. E. DeVoto

At 1:33 PM +1000 5/18/2006, Sarah Reichelt wrote:


However I'm not quite sure what you mean when you say the window is
not updating. A modeless stack is not editable, so no new data can be
typed in. Are you trying to display different information depending on
a click somewhere else? Is the stack appearing?


(Actually, you can type data into the fields of a modeless stack - 
you just can't edit its objects with the pointer tool.)


I too am puzzled about what Cat means when she says the window's not 
updating - Cat, could you tell us a little more about what you expect 
to have happen, and what you're seeing instead?

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Universal binaries from Revolution

2006-05-17 Thread Jeanne A. E. DeVoto

At 2:49 PM -0400 5/15/2006, Todd Higgins wrote:
I saw a press release today on Mac Observer that Ten Thumbs Typing 
Tutor is now a universal binary.


< http://www.macobserver.com/article/2006/05/15.9.shtml >

 I am under the impression that this application is built with 
Revolution.  I did not see the capability to generate a Universal 
Binary mentioned in the release notes for 2.7.1.  Was this in the 
2.7 release and I missed it?



Kevin said a while back that Universal Binary support would arrive 
during the 2.7.x cycle, although not in 2.7.


Ten Thumbs is a relatively simple app in terms of its demands on the 
engine, so it makes sense to use it as a test bed - it's much easier 
to rule out bugs that might affect Ten Thumbs, than to rule out bugs 
that might affect the much-more-complicated Rev IDE, to say nothing 
of all the variety of apps that people build with Rev. So it makes 
sense to me that Ten Thumbs Universal Binary would be released a bit 
ahead of the engine itself.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: More OSX Appearance Confusion

2006-05-04 Thread Jeanne A. E. DeVoto

At 3:46 AM -0700 5/1/2006, Jan Schenkel wrote:

--- Arthur Urban <[EMAIL PROTECTED]> wrote:

 All my controls appear correctly under OSX, but the
 window backdrop does
 not have that light horizontal striping that is
 typical of Aqua/Quartz

 > application windows. Instead it's just plain white.

- create a new rectangle graphic
- send it to the back
- set its border to 0
- set its rectangle to (0, 0,stack width, stack
height)
- set its backgroundPattern to 210091 (you can find it
in the 'Standard Icons' set in the Image Library)



Far easier, though, to simply set the stack's style to "modeless". 
Modeless dialog boxes inherit the striped background, but otherwise 
behave much like ordinary windows.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: mixing transcript and Perl

2006-04-22 Thread Jeanne A. E. DeVoto

At 12:25 PM +0300 4/21/2006, Viktoras Didziulis wrote:

Is there a way to do inlines (of Perl) in Transcript ? At the moment I am
more fluent in Perl, and some things just go faster this way :-).


Can you shell out to a Perl interpreter?  Try the "shell" function.
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Help with custom properties (or something like that)

2006-04-16 Thread Jeanne A. E. DeVoto

At 6:22 PM -0400 4/16/2006, [EMAIL PROTECTED] wrote:

   I'm working with MetaCard 2.4.1, running under MacOS 9.0.2 (it serves my
needs, what can I say?). I have a stack with a custom property called
"AdMailTemplate". This property contains a file. I know it's *in* 
there, because the
statement "answer the length of (the AdMailTemplate of this stack)" 
gives me the

length of the file... but "answer (the AdMailTemplate of this stack)" gives
me *nothing*.


The answer command will put that property into a field, so if it 
contains nulls it's certainly possible that it will screw up the 
display such that you won't see anything.


What format was the file to start with? What happens if you put the 
custom property into a file: or binfile: URL - does it reconstitute 
the file?

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: problems with find command

2006-04-14 Thread Jeanne A. E. DeVoto

At 12:55 PM +0200 4/14/2006, Martin Meili wrote:

I'm having problems with the find command.
I've got a a text field with a lot of names. Each name is on a 
single line and the data is clean, so, no spaces, no tabs and so onŠŠ
Using the find command the result is "not found" (!!), even though 
you can see in the text field that the result should be "empty" (the 
name is marked as found !!).


Have you previously used the find command on the same card, finding 
the same thing?


Can you post the script that's causing the problem? (Or are you using 
the command in the message box?


The field doesn't by any chance have its dontSearch property set to 
true, does it?

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Custom Properties

2006-04-13 Thread Jeanne A. E. DeVoto

At 11:01 AM -0400 4/13/2006, Thomas McGrath III wrote:

I wanted to have a custom prop for each line in a field as in:
set the isAFolder of line 1 of me to "true"
Of course it did not work but I thought 'Wow' that would be useful.



If you're not using it for anything else, it's possible to hijack the 
linkText property for such a purpose:


  set the linkText of line 1 of me to "true"
  if the linkText of line 7 of me is true then beep 2
  [etc]
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Runtime Revolution Ships Revolution Media

2006-04-13 Thread Jeanne A. E. DeVoto

At 4:44 PM -0500 4/12/2006, Chipp Walters wrote:
Sorry Jim, but I have to disagree with you here. I *used* to think 
the same. But, after I worked with Rev and their RevSelect program, 
I started seeing sales of Altuit products from names *never* 
mentioned on this list-- and lots of 'em! In fact Rev's list of 
users, IMO, is probably much greater (2X,4X,6X?) than the list 
subscribers, for all kinds of reasons.


Of course I could be wrong, and all those are just 'lurkers'! :-)



That's plausible, actually. If this list is typical, and I have no 
special reason to suspect it's not, 90% or so of the list subscribers 
never post!


(One mistake that remembering the usual high lurker-to-poster ratio 
keeps us from making is assuming that if we see a name we don't 
recognize, that person's not on the list. Another is assuming that 
posters are typical of either list-members or customers generally. 
The posters are all we actually see - like the tip of an iceberg - so 
it's difficult to internalize that they're not all that's there.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Loading image data from DB

2006-04-11 Thread Jeanne A. E. DeVoto

At 10:47 AM -0600 4/7/2006, Devin Asay wrote:
Which is essentially what I ended up doing, and it worked. Is it 
correct to assume that 'the text' is binary data expressed as ASCII 
text and data like 'the imageData' is "lower-level" code that can't 
be expressed visually in a meaningful way? Forgive my naive 
non-techie questions.


Not exactly - any binary data can be expressed in terms of ASCII (or 
extended ASCII) characters. Looking at an example:


A typical byte's worth of binary data (8 bits): 01101101
That same binary number, expressed in decimal (ordinary base-10 
numbers): 64 + 32 + 8 + 4 + 1, or 109
ASCII 109 is the character "m", so we could write that byte's worth 
of binary data as "m".


Any 8-bit segment of binary data can be expressed as a single ASCII 
character, in the same fashion, so we can always represent binary 
data as characters. The main fly in the ointment is that some of 
those characters are control characters, or characters that don't 
have a glyph to represent them, and some of those will cause real 
trouble if you try to e.g. display them in a field. (For example, the 
binary sequence "" is perfectly valid and may show up in the 
binary data of any picture, but the character it's equivalent to is 
the null character, ASCII 0 - which can't be displayed on screen.)


This is the basic difference between "binary data" and "text data" - 
you can represent either one of them as either strings of ones and 
zeroes, or as sequences of ASCII characters, but text is guaranteed 
to contain only characters in the subset that can be represented in a 
text file, whereas in binary data, anything goes, and a sequence of 8 
bits might translate into any character.



Am I correct in my understanding that these two statements are 
functionally identical:


put myData into image "myImage"
set the text of image "myImage" to myData

?

In other words, 'put' is simply shorthand for 'set the text of '?


Yes. The text property of a container object (an image, button, or 
field) is the same as a reference to that object. It works for images 
just like for fields.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Menu Item Question

2006-03-31 Thread Jeanne A. E. DeVoto

At 5:16 AM -0500 3/31/2006, John Miller wrote:
Is there a way to designate a keyboard shortcut in the menubar that 
requires the user to use "shift-ctrl" or "shift-cmd"?


The short answer is "no". (The request has been bugzilla'd - 
<http://support.runrev.com/bugdatabase/show_bug.cgi?id=3147> - in 
case you want to add your vote.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: preOpenStack, openStack in Card 1?? Rules conformation.

2006-03-30 Thread Jeanne A. E. DeVoto

At 11:23 PM +0200 3/30/2006, Francis Nugent Dixon wrote:

The doc clearly states "the destination card". As I often :

   "go to card "x" of (sub)stack "y"

I assume this means "the openStack script in whatever card
you FIRST go to in the stack" This could cause a problem if
you have an "openstack" in a sub-stack  !


It does cause problems, if the openStack handler in your main stack 
assumes that the main stack is the current stack when openStack is 
sent. In this case, when a substack is opened, the openStack message 
is sent to the current card of the substack, then to the substack 
itself, then to the main stack, so if the openStack message isn't 
intercepted first, the main stack's openStack handler will run in 
response to the substack opening.


There are three ways to avoid this:

1. Put the openStack handler in the main stack's first card, instead 
of in the stack script. This prevents the problem, since when the 
substack is opened, no message is sent to a card of the main stack - 
only the stack itself is in the substack's message path.


2. Put an empty handler in the substack's script, to stop the 
openStack message from going to the main stack:

  on openStack -- in substack's script
  end openStack

3. In the main stack's openStack handler, test which stack called it:
  on openStack
if the owner of the target is not me then pass openStack
-- do stuff for main stack opening
  end openStack
The target is a card, and the owner of the target is the stack that 
was opened. If the owner of the target is not "me" (the main stack, 
in this case), then this handler skips the rest of the instructions.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: What happen with function screenloc() and screenrect()?

2006-03-30 Thread Jeanne A. E. DeVoto

At 2:19 PM -0500 3/29/2006, Gilberto Cuba wrote:
I am found that functions screenloc() and screenrect() not work fine 
or I don't understanding the documentations.
Occur that I change the resolution when my application start and I 
tried to center the software with


set the loc of this stack to screenloc()

this not work fine. Why? I found that function screenloc() and 
screenrect() keep the values of the last resolution and not refresh 
with the new display resolution.


Yes, all of the screen functions behave like this (screenLoc, 
screenRect, windowBoundingRect, colorMap, colorWorld, screenType). 
They are set only when the application starts up, and they are not 
updated if you change the settings. As it says in the docs for 
screenRect: "The value returned by the screenRect function is updated 
only when you start up the application. If you change the screen 
settings after starting up the application, you must quit and restart 
to update the screenRect."


The best way is probably to create your own function. If you are 
setting the resolution, then you know what the new resolution is, and 
you can place the new value in a global variable. Then use that 
instead of the built-in screenLoc or screenRect.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Combined Events

2006-03-21 Thread Jeanne A. E. DeVoto

At 10:43 AM -0700 3/21/2006, Jeff Honken wrote:

  That's exactly what I'm looking for but why on a windows box doesn't
the left mouse click work.  Here's the code:


Does it work if you don't specify which mouse button?
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Button Label on graphic button

2006-03-15 Thread Jeanne A. E. DeVoto

At 1:48 PM -0600 3/15/2006, Peter T. Evensen wrote:
I was just setting the margin on the inspector.  I guess you have to 
manually set the top and bottom margins in the message box?  That 
seems to be working better. Thanks!


You can actually do this in the inspector palette, too - the margins 
property accepts either a single number (for all margins) or a list 
of four comma-separated numbers: left, top, right, and bottom. The 
user interface in the inspector doesn't make this obvious at all, but 
you can enter all four into the inspector as well. For example, you 
can enter

  4,20,4,30
to change the top and bottom margins.
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: The long answer on when to use a function vs command

2006-03-15 Thread Jeanne A. E. DeVoto

At 10:13 AM -0500 3/15/2006, Thomas McGrath III wrote:
I am curious as to any other unique aspects that could affect a 
decision on which to use in different situations.


Functions are normally used with a 'put' or 'get' -- Is this true?
Commands are normally used alone (with/without a parameter) but not 
usually with a get or put -- Is this true?


Not necessarily. I think an easier way to think of how functions are 
used is to consider that a function can be part of an expression, 
while a command is more of a thing unto itself. Consider:


  put myFunction(this,that,theotherThing) into field "Result"
  if myFunction(this,that) + 1 > 25 then beep
  wait until myFunction(that,theOtherThing) is true

In all these cases, the function call substitutes for a value (a 
number or string), and the line it's on uses that value. This is not 
possible with a command.



Is one more friendly with a lot of parameters? -- enough params that 
you would need a switch/case


Not really. You use the parameters in the same way, once you're in 
the custom handler.




If you have a function to get some info on an object like:
put getObjInfo("objName") into field "Info"


(I'd probably name it objectInfo, not getObjectInfo. No functional 
need, but I think it reads better that way. "getObjectInfo" reads 
like a command.)



Would you use a command to set that info like: -- or should this be 
a function too? -- (ignore the cust prop aspect for now)


Think about it like this: what's the routine's main purpose in life? 
Is it to do something, or to return a value? It sounds like setting 
the object info would mainly exist to do something - set a property, 
perhaps - so it ought to be a command.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Button Label on graphic button

2006-03-15 Thread Jeanne A. E. DeVoto

At 2:51 PM -0600 3/14/2006, Peter T. Evensen wrote:

At 02:35 PM 3/14/2006, Sarah wrote:

On 3/15/06, Peter T. Evensen <[EMAIL PROTECTED]> wrote:

 Is there any way to get Rev to center a button label on a graphical

 > button?   It seems to only want to display it under the icon.



Adjust the margins of the button. Normally the margins is a single
number, but it can also be 4 comma-separated numbers, specifiying the
left, top, right & bottom margins respectively. Play around with
altering these and see if you can get the result you want.


Actually I already did this.  It "work" per se, but then one winds 
up with a large empty area around the button that is clickable, 
which is kind of strange from a UI standpoint.



I'm not sure what you did, if you got a "large empty area around the 
button". You leave the button at the same size - usually just large 
enough to accommodate the icon - then adjust the top and bottom 
margins until both icon and text are centered. (If you just increase 
the bottom margin, the text moves up but so does the icon, so you 
also need to increase the top margin to move the icon back down.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: First color, second color third color, etc

2006-03-03 Thread Jeanne A. E. DeVoto

At 7:19 AM -0500 3/3/2006, [EMAIL PROTECTED] wrote:

I have been puzzled by the color feature in the object inspector for some of
the objects (e.g. images) which list the options of "First color, second
color, third color etc." What does this do?   If I check off a color, nothing
happens and the option disappears on leaving the object inspector.   Perhaps
someone can clarify this.   Thanks.


The short answer is that for images, the foregroundColor (aka 
firstColor), backgroundColor (aka secondColor), and the other six 
colors aren't especially useful and should probably be ignored. (They 
are the first eight colors in the image's color palette, and may very 
well not be used *in* the image to begin with.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: RGB to HEX

2006-03-02 Thread Jeanne A. E. DeVoto

At 9:44 AM -0800 3/1/2006, Garrett Hylltun wrote:
Is there a built-in function in Rev that will convert RGB color 
string to a HEX color string?  If no, does anyone know how to do 
this?  I knew how to do this in another language, but am at a loss 
as to how to work it out in Rev.


Here's a code snippet:

 put "#" into theWebColor -- leading "#"
 repeat for each item myItem in theColorNumber -- numeric triplet - R,G,B
get baseConvert(myItem,10,16)
if the length of it is 1 then put zero before it  -- each 
component must be 2-digit

put it after theWebColor
  end repeat

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: openStack Initialization Issues

2006-02-27 Thread Jeanne A. E. DeVoto

At 8:34 PM -0700 2/26/2006, Arthur Urban wrote:
Is there a way I can detect when my main stack receives the 
openStack message versus when my substacks receives the message and 
pass it all the way down to the mainstack? I do once only 
initialization in my mainstack, and I can't seem to reliably detect 
when a substack is triggering the openStack message and skip over 
the init code. I've tried using the target and the me function, 
nothing seems to work. Too bad there is no openMainStack handler. 
(even using on startUp doesn't help me) Ugh...what am i missing? 
thanx!


In the alternative to Richard's suggestion, you can also check the 
target function in the handler. The target is the object that 
originally received the message, so if openStack is responding to a 
substack, the opening card of the substack is the target:


  on openStack
-- do anything you need to do for all stacks here
if the owner of the target is not me then pass openStack
-- do main stack-specific things here
  end openStack
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Transcript and Dot Notation

2006-02-26 Thread Jeanne A. E. DeVoto

At 12:20 AM -0800 2/26/2006, Geoff Canyon wrote:

(g) co-routines
(h) anonymous functions


What are co-routines and anonymous functions? (Curious...)
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Transcript and Dot Notation

2006-02-25 Thread Jeanne A. E. DeVoto

At 4:25 PM -0600 2/24/2006, Peter T. Evensen wrote:

send "go" to traffic light...


That works for methods, but how about functions?

I have never liked the current transcript syntax of 
Value("GetCurrentColor()", TrafficLight).TrafficLight.GetColor() 
is much more readable, in my opinion.



Hmm.

  get the currentColor() of trafficLight

seems even more readable to me. Or, where trafficLight is actually a class,

  get the currentColor() of trafficLight "My Light"

(I agree that the value syntax for this is clumsy; I suspect it 
doesn't come up more often as a problem mostly because people tend to 
use getProp handlers for this sort of thing, rather than function 
calls, so the clumsiness is avoided.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Showing linkText on mouse over

2006-02-24 Thread Jeanne A. E. DeVoto

At 10:49 AM -0700 2/24/2006, Devin Asay wrote:

on mouseWithin
  if the mouse is down then exit mouseWithin ## interrupt this 
handler to pay attention to the mouse.

  if the textStyle of the mouseText contains "link" then
put the linkText of the mouseText into fld "status"
  else
put empty into fld "status"
  end if
end mouseWithin

It seems to be working reliably now. Anybody know of any reason why 
this approach might be a bad idea? Sort of like how we've been 
encouraged not to use things like 'wait until the mouseClick'?


It shouldn't be a problem the way you're using it here. The mouse 
function can eat CPU if it's being polled - called repeatedly, as in 
"wait until the mouse is down" or "repeat until the mouse is up" or 
similar - but here you're only calling it once per round of the 
handler. I think even Scott would approve. ;-)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Wow! It's starting to click now!

2006-02-19 Thread Jeanne A. E. DeVoto

At 7:04 PM -0800 2/18/2006, Scott Rossi wrote:

Why is it not possible to substitute 1 and 0 for true and false?  Is this
possible and I've just never seen it?  Has no one ever needed this option?


It goes back to the way xTalks handle values. True and false are 
strings, not numbers (the constant true has value "true", and 
likewise for false). This is how boolean values are reported 
throughout the language, as the strings "true" or "false".


I suppose xTalks could special-case equalities by making the string 
"true" equal the string "1", and "false" equal "0", but it would be 
kind of opaque to scripters, I think. (Handy, but hard to understand.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Retrieve List of Array Properties?

2006-02-18 Thread Jeanne A. E. DeVoto

At 11:59 AM -0800 2/18/2006, Scott Rossi wrote:

If I set some custom properties of an object via an array:

  set the specialData["cool"] of fld 1 to "hello"
  set the specialData["hot"] of fld 1 to "world"

...how do I retrieve a list of the custom property names (are these called
"indexes"?) of the object?  ("cool", "hot", etc)


There are a couple of ways. One is to use the customKeys to get the 
current set of custom properties, after first setting the current 
property set to the one you want:


  set the customPropertySet of field 1 to "specialData"
  put the customKeys of field 1 into myPropertyList

Alternately, grab the whole array of custom properties, then get the 
array's keys:


  get the customProperties["specialData"] of this stack
  put the keys of it into myPropertyList

The second way is probably cleaner: it doesn't change the current 
custom property set.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: F1 as the men shortcut?

2006-02-18 Thread Jeanne A. E. DeVoto

At 1:53 PM -0800 2/16/2006, Garrett Hylltun wrote:
But what about the shortcut on the menu itself?  That's what I'm 
trying to find out about.  I tried typing in "Help/F1", but Rev 
won't accept such a thing.


Not currently possible, I'm afraid - the only shortcuts you can make 
appear in a menu are simple Command/Control-plus-one-character. (As 
others have mentioned, you can use a functionKey handler to get the 
functionality, but not the appearance.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Contrib to old topics - why isn't Rev more popular?

2006-02-14 Thread Jeanne A. E. DeVoto

At 4:23 PM -0600 2/13/2006, J. Landman Gay wrote:
Good points. The docs need to clearly describe the conventions that 
are being used when documenting the dictionary entries. As you point 
out, many of us are so used to these conventions that we don't even 
think about it any more. What you are seeing is pretty standard for 
xtalk documentation, but of course if you are a newcomer there is no 
way you'd know that.



There used to be an "About the Documentation" item on the docs start 
page, which I think got dropped when the docs browser was changed - 
much of it was no longer relevant, but it did contain the syntax 
conventions:


"The Transcript Dictionary has some additional features:

* The icons near the top of the dictionary window for Mac OS, OS X, 
Unix, and Windows indicate which platforms each Transcript term is 
supported on.


* The syntax for each language term (other than keywords) is provided 
in boldface typewriter text. The syntax description uses the standard 
conventions to indicate parts of the syntax:


[]  Square brackets enclose optional portions.
{}  Curly braces enclose sets of alternatives from which you choose.
| Vertical bars separate different alternatives.

Italics indicate placeholders that you don't enter literally."

As far as I know, these syntax conventions still apply throughout the 
dictionary.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Multiple instances of open stacks?

2006-02-04 Thread Jeanne A. E. DeVoto

At 1:39 AM -1000 2/4/2006, Sivakatirswami wrote:

Is it normal to see multiple instances of open stack in the stack function?


Yes, it is normal if there are substacks - the stack's filename will 
appear once for each main stack or substack in the file. Quote: "The 
file paths of substacks are included, but the stack names themselves 
are not. This means that if more than one stack in a file is open, 
that file's path appears more than once in the list returned by the 
stacks function."


It really ought to be called the stackFiles function, except that 
name is already taken by the stackFiles property. ;-)


(You might want to look at the openStacks and revLoadedStacks 
functions also - they might come closer to what you need.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Format table cells with?

2006-02-02 Thread Jeanne A. E. DeVoto

At 8:09 AM -0800 2/2/2006, Bill Vlahos wrote:
Is there a way to have it flag when what was entered isn't a valid 
date? For example February 32, 2006 or Fuberry 2, 2006.


I don't think there's an easy way, no - you'd have to modify the 
revTable frontscript to add this. I think this modification will work 
(WARNING! NOT FULLY TESTED! ABANDON ALL HOPE YE WHO ENTER HERE! 
BACKUP! BACKUP! OK!):


In the revDateFormat handler, you'll see this:
  if (tValue is not empty) and (tValue is a date) then
   put revDateDisplay(pPrefixList,tValue,tgroup) into tFormattedValue
   revWriteCellValue pObject,txcell,tycell,tFormattedValue
 end if

Substitute this:
 if (tValue is not empty) then
   if (tValue is a date) then
 put revDateDisplay(pPrefixList,tValue,tgroup) into tFormattedValue
 revWriteCellValue pObject,txcell,tycell,tFormattedValue
   else -- not a valid date, and not empty
 revWriteCellValue pObject,txcell,tycell, \
"" & tValue & ""
   end if
 end if

If the value entered isn't a date, this leaves it unchanged but turns it red.
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Format table cells with?

2006-02-02 Thread Jeanne A. E. DeVoto

At 11:43 PM -0800 2/1/2006, Bill Vlahos wrote:
The table object has the ability to format cells several ways 
including Date. There is a field to the right of this choice in the 
Properties Palate but I don't know what information should go in 
there. I wasn't able to find any references to it in the Help.


What I want is to validate and format the cell information so that 
it is a correct date. Is this how it is supposed to work? If so, 
what do I put in the field?


It's a date modifier (short, abbrev, long, or system). For example, 
if you set the combobox to "Date" and enter "short" in the field, 
then if you enter "Feb 6, 2006" in a cell in the formatted column, 
then click out of it, the cell is changed to read "2/6/2006". From 
the (old) docs (this seems to have gotten dropped out of the docs at 
some point):


-
How to format numbers in a table field:

To control the format of numbers in a table field, you specify a 
format, along with the cells you want to apply the format to, in the 
field's property inspector. To choose a format, follow these steps:


1.  In the "Table" pane, check the "Cell formatting" box.

2.  Choose a column number from both menus labeled "Format Column".

3.  From the "Using" menu, choose the format you want to use. In the 
"With" box, enter a prefix or suffix, a number of decimal places,  a 
percentage value, or "short", "long", "internet", or "system" for a 
date.


4.  Press the Tab key, then click "Add" to apply the format.

  Note:  You can apply only one format to any particular cell.
-
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: (v)Scroll of stack

2006-02-01 Thread Jeanne A. E. DeVoto

At 3:33 PM -0600 2/1/2006, Peter T. Evensen wrote:
What is the use of the vScroll (or Scroll) for a stack?   It is 
read-only.  Stacks cannot have scroll bars, right?  What is it for?


See the green Docs button? ;-)

"On Mac OS and OS X systems, the menu bar appears at the top of the 
screen, rather than inside the stack window. If a stack's editMenus 
property is set to false and the stack contains a menu bar, the 
window is scrolled down and resized so that the menu bar group is not 
visible in the window. Because of this, on Mac OS and OS X systems, 
the vScroll of a stack reports the amount the stack has been scrolled 
down to hide a menu bar group."

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: How to find words and phrases as well

2006-01-28 Thread Jeanne A. E. DeVoto

At 10:18 PM +0100 1/27/2006, André.Bisseret wrote:
I would like to be able to find not only words but also phrases. For 
example, the users should be able to enter « user interface » as a 
whole, while now they only can enter the two words « user » and « 
interface ». (not sure I am clear enough ?!).
How to distinguish, for a find command, « user interface » as a 
phrase from « user interface » as two words.


How about the options to the find command? In particular,

- find string "user interface"
will find the entire phrase, even if it is embedded inside other 
words - for example, it will find "newuser interface".


- find whole "user interface"
will find the entire phrase, but only as whole words - it will find 
"user interface", but not "newuser interface".

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: importing graphic objects?

2006-01-13 Thread Jeanne A. E. DeVoto

At 2:08 PM -0800 1/12/2006, Timothy Miller wrote:

Speaking of documentation, I keep meaning to ask --

At many points in the onboard documentation, I read things such as this:

To see a list of messages that can be sent to an audio clip as a 
result of user actions or internal Revolution events, open the 
"Transcript Language Dictionary" page of the main Documentation 
window, and choose "Audio Clip Messages" from the Show menu at the 
top. To see a list of all the properties an audio clip can have, 
choose "Audio Clip Properties" from the Show menu.


Every time I try to follow those instructions, I fail and give up. 
Is this orphan documentation? If not, where the heck is the stuff 
they are talking about?



There's a similar list in the current docs: click the Objects icon at 
the top, then click Objects in the list, then click Audioclip below 
that, then click Message.


The diffference is that the Objects list provides only those messages 
that are received only by audio clips, not all messages an audio clip 
can receive. To get all of them, you need to check under "Any object" 
as well as under "Audioclip". (For controls such as buttons, you need 
to also check under "Control".)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: tab buttons and localisation

2005-12-11 Thread Jeanne A. E. DeVoto

At 10:56 AM -0500 12/11/2005, Bob Hutchison wrote:

on menuPick pNew,pOld
  get the properties of me
  put it["text"] into labels


You can do it that way, but it's easier to just
   put the text of me into labels

(In general, the text property of a menu - and tabs are menus - 
contains the list of choices for the menu.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: clickLine and field #

2005-12-09 Thread Jeanne A. E. DeVoto

At 6:11 PM -0400 12/9/2005, Steven Fernandez wrote:

I notice that the function clickLine return the line clicked on along
with the field number. What is the "fieldNumber"? I just spent a long
time debugging a script because I could not understand what "field 3"
was when I have no field called by that name. If I look at the stack
inspector is there some way of figuring out which field is #3. I was
expecting "line 3 of field myFieldName" Learning Transcript is a
challenge. I know there is going to come a moment when I'll feel like
I got it. That moment is not here yet.


All objects can be identified by name, ID, or number - they're three 
ways of specifying the same object.


Name you know about already:
   get the text of field "My Field" -- uses the name
You find (and change) the name in the "Basic Properties" pane of the 
property inspector.


ID is assigned by the engine when the object is created, and (except 
for the ID of a stack) never changes:

  get the text of field ID 923 -- does the same thing using the ID
The ID appears in the title bar of the property inspector.

Number is related to the back-to-front layer order of objects on a card:
  get the text of field 3 -- does the same thing again using the number
The number is in the "Size and Position" pane of the property inspector.

If you use "Send to Back", "Move Backward", "Move Forward", or "Bring 
to Front" in the Object menu, the object's number may change because 
its front-to-back ordering is changing. (For cards, the number of the 
card is the order in the stack. When you open a stack, you see card 
number 1. If you "go next card", you go to card number 2, and so on.)


All of these ways of referring to an object have advantages and 
disadvantages, so you may find yourself using different ones 
depending on the circumstances. Using the name makes code easy to 
read ('put x into field "Total Amount"); on the other hand, you can 
change the name, and there can be more than one object with the same 
name, which can cause hard-to-debug problems. The ID is 
incomprehensible but stable and unique. The number is changeable, but 
is good to use if you're looping through all the fields on a card.


You can find more by checking out the name, ID, and number properties 
in the docs.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Revolution Encyclopedia

2005-12-08 Thread Jeanne A. E. DeVoto

At 4:09 PM -0500 12/5/2005, Mathewson wrote:

I dug out the Revolution Encyclopedia and ported it as a
free-standing stack so that users of later editions of
DC/MC/RR can use it (popped in a couple of nav buttons).

HOWEVER . . . I noticed it is the work of Ms DeVoto . . .

I am perfectly happy to upload it to my website, BUT ONLY
if I can have Ms DeVoto's blessing first.


I don't have a problem with it. As Jacque says, though, I was working 
for RunRev at the time I wrote it, and they own the copyright - I 
don't have legal authority to authorize it, so you'll need to ask 
RunRev.


(I think most or all of the Encyclopedia material is still in the 
2.6.1 docs, actually. If you look under "Topics" and click a main 
topic heading, you'll see a topic from what used to be the 
encyclopedia. It's just not separated out into its own window.)

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Why isn't Rev more popular?

2005-12-02 Thread Jeanne A. E. DeVoto

At 1:06 PM -0500 12/2/2005, Bill Marriott wrote:
Well for reasons I may not be aware of, all the new commands seem to 
be in the format, "revDoSomething" followed by parameters. Example:


revAddXMLNode treeID, parentPath, nodeName, nodeContents

Why couldn't you say something like

add node "Balls" to the root path of XML tree id 9


Partly this is for historical reasons, partly practical ones, and 
partly because the syntax for custom commands and functions isn't 
very flexible.


These types of commands are in libraries. Instead of being built into 
the engine, they're implemented as script libraries (or as externals 
- which have the same calling syntax). The problem is that when you 
create a command with a handler, you're limited to a comma-delimited 
set of parameters:


  on doSomething thisParam,thatParam,theOtherParam
-- code here
  end doSomething

And you call the above with a line like:

  doSomething 2,"fox",the short name of me

This syntax limitation applies to all commands and functions that 
aren't actually built in.


(Why, you ask, aren't things like the XML and database commands built 
in? There are two reasons.


The historical reason is that RunRev did not originally own or 
control the MetaCard engine, so if RunRev wanted some feature that 
Scott Raney didn't want to put into the engine, it had to be 
implemented as a library. Since RunRev now owns the MetaCard engine, 
that's no longer a problem, but most of the libraries were added 
before that change in ownership. That's also the reason that the 
library commands and functions are all prefixed with "rev-".


he practical reason is that it's easier to tweak a library than the 
engine, so if a library's features are rapidly shifting, it makes 
more sense to keep it out of the engine. Also, there is the issue of 
space - if that code were added to the engine, it would cause some 
degree of bloat, while leaving a library out of a standalone is easy. 
You'll notice most of the libraries cover functionality that not all 
apps need, so leaving them in separate libraries is a way of getting 
some modularity.)




Personally, I think the root cause of the problem is the inflexible 
syntax for non-built-in commands and functions. What I'd like to see 
is the ability to separate parameters with spaces as well as commas, 
so you could do something like:


  on doSomething thisParam,null1,null2,thatParam,null3,null4,theOtherParam
-- code here
  end doSomething

called with:
  doSomething 2 times to "fox" in stack (the short name of me)

The comma-delimited syntax is fine for single-parameter and 
zero-parameter functions and commands, but with more parameters you 
need a little syntactic sugar. Particularly in libraries that many 
programmers use. If something like this were permitted, we could have 
complex commands in separate libraries or externals without their 
being quite so ugly.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: No backgroundcolor

2005-11-29 Thread Jeanne A. E. DeVoto

At 4:55 PM -0600 11/28/2005, J. Landman Gay wrote:
Before I responded I did a quick test and foregroundcolor didn't 
change the edges. Bordercolor did. But I had to turn off the threeD 
property to see it -- with threeD turned on, the border was always 
gray no matter what. In any case, the forecolor didn't change the 
border color of the field.


With the threeD turned on, the border is drawn in the topColor and 
bottomColor (for the part that "sticks out" of the screen and the 
part that "sinks in", respectively). So you don't see a change when 
the borderColor changes: the borderColor isn't used when threeD is 
true.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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 and User Accounts

2005-11-28 Thread Jeanne A. E. DeVoto

At 8:19 PM -0800 11/27/2005, Richard Gaskin wrote:

J. Landman Gay wrote:
Both DC and Rev Player use the same creator code, so it may be that 
OS X thinks they are duplicate apps.


Is there a benefit to having those apps use duplicate creator codes, 
or should we Bugzilla that?


Been zilla'd: <http://support.runrev.com/bugdatabase/show_bug.cgi?id=2814>.
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Char position of token...

2005-11-22 Thread Jeanne A. E. DeVoto

At 4:23 PM -0500 11/22/2005, Gilberto Cuba wrote:

How I can know the position of char of the determined token of the string?

Example:

put "a*sin(x+b)" into temp
put token 5 of temp   -- that return "x"
put char 7 of temp  -- that return "x"
...
now, well
...
put token 3 of temp  -- that return "sin"
put char 3 to 5 of temp  -- that return "sin"

then, i need any function that return the follow values:

token 5 of temp --->  char 7 of temp
token 3 of temp --->  char 3 to 5 of temp


Try something like this:

  put offset(token 5 of temp,temp) -- gives position of first char of token 5
  put offset(token 6 of temp,temp) - 1 -- gives position of last char 
of token 5

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: image on button

2005-11-14 Thread Jeanne A. E. DeVoto

At 12:31 PM -0500 11/14/2005, Preston Shea wrote:
RR lets me use a JPEG as icon on a button. The problem is that the 
image has a background that doesn't change when the button hilites. 
Is there a way around this? Do I have to convert the image to ICN 
format?


Create a second JPEG with the appearance you want for the hilited 
button. Then set the button's hilitedIcon property to use that JPEG.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: How can I print all parts of oversize cards !?

2005-11-12 Thread Jeanne A. E. DeVoto

At 8:41 PM +0100 11/12/2005, Kresten Bjerg wrote:
-   it is only the following, which dont work:- all 
experiments with alternative number

 values give the same result: an empty page coming out from the printer.
I shall mention, that the "window" to be printed is visible on the 
screen in all of the instances, which

I know is necessary precondition

  if phenowindow is gardenwindow then
Print this card from 1756,30 to 2200,632
  end if
  if phenowindow is homewindow then
print this card from 1756,550 to 2200,1560
  end if
  if phenowindow is workplacewindow then
print this card from 1756,1115 to 2200,2320
  end if
end printwindow


Have you tried using "into"?

  print this card from 1756,30 to 2200,632 into 100,100,444,602
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: pull down menu

2005-11-10 Thread Jeanne A. E. DeVoto

At 2:23 PM +0100 11/10/2005, Dominik Hruza wrote:
i just started working with the program designing the interface for 
an adressbook


i want to get rid of the 3D effect in the menu of a pull down 
button, but set a background color and so on to the menu that 
appears.


If you want to specify the appearance yourself, rather than accept 
the way the system draws the menu, you need to do one of two things:


- Set the lookAndFeel to something other than "Appearance Manager". 
(This may not be a good choice, unless you want to completely control 
every aspect of the application's appearance and not use the OS 
appearance for anything.)


- Create a stack menu instead of using a button menu. A stack menu is 
simply a stack that appears when you click a button, and that behaves 
like a menu. Since you design the menu directly in a stack, you can 
have complete control over its appearance, colors, fonts, etc.


There's some information about stack menus in the online docs, at the 
bottom of the section on "About menus and the menu bar". There is 
also an example in the "Menus" scripting conference stack, which you 
can download from <http://support.runrev.com/scriptingconferences/>.

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: previous card issue

2005-11-10 Thread Jeanne A. E. DeVoto

At 2:21 PM -0500 11/10/2005, Brian K. Maher wrote:
The problem is that the preOpenCard code shown above /always/ seems 
to believe that the previous card is 'Welcome' and not the card that 
I just came from.


Am I misunderstanding something here?  Does 'previous' not mean the 
previously viewed card?


"previous card" means the card previous in the stack - the card whose 
number is one less than that of the current card.


What you want is "recent card".
--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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: Table Fields

2005-11-04 Thread Jeanne A. E. DeVoto

At 1:08 PM -0800 11/4/2005, Timothy Miller wrote:
I've tried trial and error, and tried searching the documentation. I 
haven't gotten too far. This thing seems more or less undocumented. 
The various table properties perplex me. I've figured out "tab 
stops." That's about it.



Hmmm. There was never very much documentation of tables, but what 
there was seems to have gotten lost at some point - or at least I 
can't find it in the 2.61 docs. Here it is, for whatever it's worth:




How to create a spreadsheet-like table:

A table field is a field that is displayed as a grid, in the style of 
a spreadsheet. Each line of the field becomes a row, and the columns 
in a row are separated by tab characters. You control a table field's 
behavior using the Table pane of the field's property inspector.


To make a field into a table field, follow these steps:

1.  Open the field's property inspector and choose "Table" from the 
menu at the top of the inspector palette.


2.  Check the "Table object" box to make the field into a table.

3.  If you want, change the baselines, grid, and tab stops settings 
to change the appearance of the table field.



How to allow editing of individual cells in a table field:

Normally, a table field is edited like any other field, by entering 
text directly. You can specify that a table field's cells can be 
edited individually. When you click a cell, what you type goes into 
that cell.


To allow cell editing in a table field, in the "Table" pane of the 
field's property inspector, check the box labeled "Cell Editing". 
When you click a cell in the table field, a box appears to let you 
edit the cell's content.


  Tip:  To move between cells when cell editing is enabled, use the 
Tab key, Return key, and arrow keys.



How to format numbers in a table field:

To control the format of numbers in a table field, you specify a 
format, along with the cells you want to apply the format to, in the 
field's property inspector. To choose a format, follow these steps:


1.  In the "Table" pane, check the "Cell formatting" box.

2.  Choose a column number from both menus labeled "Format Column".

3.  From the "Using" menu, choose the format you want to use. In the 
"With" box, enter a prefix or suffix, a number of decimal places,  a 
percentage value, or "short", "long", "internet", or "system" for a 
date.


4.  Press the Tab key, then click "Add" to apply the format.

  Note:  You can apply only one format to any particular cell.
-

--
jeanne a. e. devoto ~ [EMAIL PROTECTED]
http://www.jaedworks.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


  1   2   3   4   5   6   7   8   9   >