Blank Page printed with RevPrintField command

2009-12-16 Thread Brent Summerton
Using a Mac 10.6.2  RevPrintField function prints page within application being 
design all okay - but not when exported as a standalone application and used on 
a PC running Vista.  It is only printing a BLANK page then.  

My Script is:
On Mouseup
RevShowPrintDialog true, false
RevPrintField the long id of field "Results"
End Mouseup

I am using the $500 Enterprise 4.0.0 Edition.  When instructed to placed the 
"answer the result" after the printing commands - It returns a blank dialogue 
box which does little to help make the cause of error clear.  By the way  I 
have checked under General that the print feature is selected to export with 
standalone windows application.

Is there any format to the field that I should be aware of? Locked/ Unlocked/ 
Disabled, Font? Is this a glitch when designing on Mac, exporting to Windows 
standalone?

Brent Summerton.___
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: Smoothly moving a jpeg

2009-12-16 Thread Shao Sean
Did you look at Animation Engine?  Might be overkill for what you need  
to do, but he does have some pretty slick smooth moving in there (even  
on this old machine)..

___
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 Tatty, Old Metacard icon.

2009-12-16 Thread Scott Rossi
Hey, I'd happy to take the credit, but I don't think it was me.  My brain
may have lost too many functioning cells, but I only recall creating a
splash screen for MC under Scott Raney and some answer dialog icons for MC
under Richard Gaskin.

I think it's about time Klaus Major changed the splash screen to a banana.

Regards,

Scott Rossi
Creative Director
Tactile Media, Multimedia & Design



Recently, Alejandro Tejada wrote:

> Actually, i like the more recent version of the
> MetaCard icon, created by Scott Rossi.
> 
> 
> Richmond Mathewson-2 wrote:
>> 
>> Now that RunRev has passed through its chrysalis stage and
>> emerged with shiny, new icons, maybe it is time that
>> Metacard did the same.
>> [snip]


___
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: Deriving an angle from three points

2009-12-16 Thread Mark Swindell
Thank you to all who provided code suggestions and insight into solving this 
problem (James, Colin, Mark W. gMc, Pierre, Jacques, Phil).

I'd have taken forever to figure this out without such a helpful (and clever) 
bunch of allies.  

Mark

On Dec 16, 2009, at 1:57 AM, gmccarthy wrote:

> 
> What about getting the angle from point B to A, then the angle from point B
> to C, then getting the difference:
> 
> on mouseUp
>   put cd fld "A" into pointA
>   put cd fld "B" into pointB -- assumed center of angle
>   put cd fld "C" into pointC
>   -- 
>   put fGetAngle(pointB, pointA) into angleA
>   put fGetAngle(pointB, pointC) into angleC
>   if angleC > angleA then
>  put angleC - angleA into cd fld "AngleABC"
>   else
>  put angleA - angleC into cd fld "AngleABC"
>   end if
> end mouseUp 
> 
> function fGetAngle pPoint1, pPoint2
>   --angle anticlockwise from X axis
>   return atan2(item 2 of pPoint2 - item 2 of pPoint1,item 1 of pPoint2 -
> item 1 of pPoint1) * 180 / pi
> end fGetAngle 
> 
> 
> See atan2 in the dictionary.
> By the way, this gives 66.209226 for the angle.
> 
> As a test for known angles, try
> 250,250
> 200,200
> 100,373
> This is for angles of 45 degrees and 120 degrees.
> you should get 75 degrees as your answer.
> -- 
> View this message in context: 
> http://n4.nabble.com/Deriving-an-angle-from-three-points-tp964930p965051.html
> Sent from the Revolution - User mailing list archive at Nabble.com.
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Deriving an angle from three points

2009-12-16 Thread Mark Swindell
Colin,
Thanks, this appears to be a very succinct solution.  Very much appreciated.
Mark

On Dec 16, 2009, at 8:01 AM, Colin Holgate wrote:

> 
> On Dec 16, 2009, at 1:21 AM, Mark Swindell wrote:
> 
>> 40,116
>> 98,186
>> 132,118
>> 
>> How would one determine the angle created from three points, such as those 
>> above?
> 
> 
> All of the suggested scripts seem quite long. Try putting this script into 
> three buttons. The script uses the Other Mark's way of dragging the button 
> around (and it doesn't hilite the button as he claims):
> 
> on mouseDown
>repeat until the mouse is up with messages
> set the loc of me to the mouseLoc
> wait 0 millisecs with messages
>  end repeat  
>   put 180 - angler(loc of btn 1,loc of btn 2,loc of btn 3)/pi*180
> end mouseDown
> function angler p1, p2, p3
>   put atan2(item 2 of p2-item 2 of p1,item 1 of p2 - item 1 of p1) into angle1
>   put atan2(item 2 of p3-item 2 of p2,item 1 of p3 - item 1 of p2) into angle2
>   return abs(angle2-angle1)
> end angler
> 
> The bit that calculates the angle could be done in a single line:
> 
> put 180 - (atan2(item 2 of p3-item 2 of p2,item 1 of p3 - item 1 of 
> p2)-atan2(item 2 of p2-item 2 of p1,item 1 of p2 - item 1 of p1))/pi*180
> 
> 
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: HTMLText question

2009-12-16 Thread Phil Davis

On 12/16/09 8:04 PM, Kay C Lan wrote:

On Thu, Dec 17, 2009 at 2:49 AM, Robert Brenstein  wrote:

   

A tad safer and more general technique is to

put "" before word 2 of tHtml
put "" after word 2 of tHtml

As other said, variable have htmltext property, just the content which can
be html, so you need to work with it directly. Html comes into effect when
such a content is put into a field and then displayed to user.

Robert

 

I'm totally confused. I am not aware that variables have a htmlText
property? When I try to access it I keep getting an error message.
   


You're right. Variables don't have an "htmlText" property, only fields 
do. This agrees with the Rev docs description and is the way it really 
works.


I think maybe Robert meant "variable DON'T have htmltext property", and 
was saying you can put the htmlText of a field into a variable, 
manipulate it, then set the htmlText of the field to the manipulated 
contents of the variable to display it in rendered form.



Secondly, using the keyword 'word' when dealing with htmlText doesn't seem
to be a safe option to me at all, in fact it would be the last option I'd
think of using. If a field contained multiple lines of words, formatted in
all sorts of weird and wonderful ways, and the htmlText of one of those
lines might look like this:

boink

If I were to use the keyword 'word', Rev considers

boink

putting "" and"" before and after any of these words will result
in ill formed HTML.

Granted, if you do a grep for>([^<]*)<  you can extract just the content
between the html tags and then using the 'word' keyword will work for you.
But now that I appreciate that this original post is related to another post
where I put forward the idea of using the 'token' keyword, I'll suggest it
again. Doing grep and trying to keep track of where in a line of html text
you are and what word needs to be replaced with what, plus needing to deal
with all the punctuation marks that get included inside what Rev considers
is a word, is very involved for this old brain and dare I say, unsafe or at
least fraught with possible errors. Using token, there are only a few
special characters you have to account for, you can then just run through
every token and when you get a match:

put ""&  token tTokenCounter of tHtmlText&  "" into token
tTokenCounter of tHtmlText

Probably not the fastest way, but relatively simple.

HTH
   


I'll take simple over snazzy any day of the week. That way, when I come 
back to it in six months I might be able to look at the code and 
immediately know what it's doing! I love it when that happens.


Another approach I've taken is to reformat the htmlText into something 
more given to processing, then process it, then restore the original 
format. Like this:


on mouseUp
   get withBoxTags(the htmlText of fld 1)
   put it -- so you can inspect the htmltext output
   set the htmlText of fld 1 to it
end mouseUp


function withBoxTags pHtmlText
   -- replace existing CRs with a char not found in pHtmlText
   replace cr with numToChar(250) in pHtmlText

   -- reformat the text for processing
   replace ">" with (">" & cr) in pHtmlText -- each ">" now ends a line
   replace "<" with (cr & "<") in pHtmlText -- each "<" now starts a line
   filter pHtmlText without empty -- remove blank lines

   -- insert "box" tags
   repeat for each line tLine in pHtmlText
  if char 1 of tLine = "<" -- not a 'data' line
  then put tLine & cr after tNewText
  else put "" & tLine & "" & cr after tNewText
   end repeat

   -- restore original format
   replace cr with empty in tNewText
   replace numToChar(250) with cr in tNewText

   -- return it to caller
   return tNewText
end withBoxTags



The above code may not accomplish exactly what you're trying to do, but 
it illustrates the idea.

--
Phil Davis

PDS Labs
Professional Software Development
http://pdslabs.net

___
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: Deriving an angle from three points

2009-12-16 Thread Mark Swindell
James,

Thanks for this, but starting the Turtle stack did not allow me to calculate 
the angle.  I got an error each time at "Start Turtle."  Is there a trick to 
making the library accessible to other stacks?

Mark

On Dec 16, 2009, at 8:08 AM, James Hurley wrote:

>> 
>> Message: 24
>> Date: Tue, 15 Dec 2009 22:21:47 -0800
>> From: Mark Swindell 
>> Subject: Deriving an angle from three points
>> To: How to use Revolution 
>> Message-ID: 
>> Content-Type: text/plain;charset=us-ascii
>> 
>> 40,116
>> 98,186
>> 132,118
>> 
>> How would one determine the angle created from three points, such as those 
>> above?
>> 
>> Thanks,
>> Mark
>> 
> 
> Mark,
> 
> Or even easier. Set the Turtle at the apex and get the angle of the other two 
> points.
> 
> 
> on mouseUp
>   startTurtle --Initiates the turtle graphics library
>   penup
>   setxy 98,186 --The vertex
>   put direction(40,116) into A
>   put direction(132,118) into B
>   put B-A into dA
>   put abs(dA) & cr & abs(180 - dA)  into msg box
>   choose the browse tool
> end mouseUP
> 
> (Assuming your middle point is the apex of the angle you want.)
> 
> To run this you will need the TG library. Run this in the msg box
> 
> go url "http://www.jamesphurley.com/jhurleyFolder/TurtleGraphics.rev";
> 
> Jim Hurley
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Saving standalone substacks

2009-12-16 Thread Kay C Lan
On Thu, Dec 17, 2009 at 11:22 AM, J. Landman Gay
wrote:

>
> Actually, I probably wasn't too clear. All that file path business was
> mostly for opening files, not for re-saving them. Once they're open from
> disk, the engine already knows the path, so "save this stack" is all you
> need.
>
> Is this true, the Dictionary says, under the save entry:

If you specify a name but not a location, Revolution assumes the file is in
the defaultFolder.

I've always worried, as I do tinker with the defaultFolder, that I might get
myself into a situation where the defaultFolder is not where I think it is
so I always specify the path when saving my app.

>
> You can get "the filename of this stack" to find out the path on disk
> without any parsing.
>
> Ah, I love this List. Another line of code eliminated.


> Anyway, this is what I use. It goes into the standalone's mainstack script:
>
>  function appPath -- path to application folder
>put the effective filename of me into tPath
>set the itemdel to slash
>return (item 1 to -2 of tPath) & slash -- on OS X this is INSIDE the app
> bundle
>  end appPath
>
> And then when I need to open a satellite stack:
>
>  go stack (appPath() & "stack1.rev")
>
>  Actually I see you use the 'effective filename' which I now appreciate
solves any file path issues regarding substacks.

Thanks.
___
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: Smoothly moving a jpeg

2009-12-16 Thread Scott Rossi
Recently, Tim Selander wrote:

> Thanks - shortening the changes in distance helped a lot. So it
> appears Rev doesn't visibly move an image, it jumps it to the
> next location.

Well, really any move is a jump to a new location.  In the case of Rev's
move command, a move is based on several factors: moveSpeed, duration, and
overall distance.  The host computer's processing power, and the power of
the graphics card, and monitor refresh can also be issues.  You'll need to
find a balance between the size of the jump and speed at which the jumps
take place.

 
> If I move the image a pixel at a time, but tighten the loop to 2
> or 3 milliseconds, things get pretty smooth. Now to test the
> reading speed with the on camera talent!

Great -- hope it works out for you.

Best Regards,

Scott Rossi
Creative Director
Tactile Media, Multimedia & Design


___
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: HTMLText question

2009-12-16 Thread Kay C Lan
On Thu, Dec 17, 2009 at 2:49 AM, Robert Brenstein  wrote:

>
> A tad safer and more general technique is to
>
> put "" before word 2 of tHtml
> put "" after word 2 of tHtml
>
> As other said, variable have htmltext property, just the content which can
> be html, so you need to work with it directly. Html comes into effect when
> such a content is put into a field and then displayed to user.
>
> Robert
>

I'm totally confused. I am not aware that variables have a htmlText
property? When I try to access it I keep getting an error message.

Secondly, using the keyword 'word' when dealing with htmlText doesn't seem
to be a safe option to me at all, in fact it would be the last option I'd
think of using. If a field contained multiple lines of words, formatted in
all sorts of weird and wonderful ways, and the htmlText of one of those
lines might look like this:

boink

If I were to use the keyword 'word', Rev considers

boink

putting "" and "" before and after any of these words will result
in ill formed HTML.

Granted, if you do a grep for >([^<]*)< you can extract just the content
between the html tags and then using the 'word' keyword will work for you.
But now that I appreciate that this original post is related to another post
where I put forward the idea of using the 'token' keyword, I'll suggest it
again. Doing grep and trying to keep track of where in a line of html text
you are and what word needs to be replaced with what, plus needing to deal
with all the punctuation marks that get included inside what Rev considers
is a word, is very involved for this old brain and dare I say, unsafe or at
least fraught with possible errors. Using token, there are only a few
special characters you have to account for, you can then just run through
every token and when you get a match:

put "" & token tTokenCounter of tHtmlText & "" into token
tTokenCounter of tHtmlText

Probably not the fastest way, but relatively simple.

HTH
___
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 Rev Web Project and On-Rev working together?

2009-12-16 Thread John Patten
Thanks Sarah and Bj?rnke!

I had a funny feeling about the ":" colon after URLhowever, I could of 
swore I lifted that script from one of the examples, and it had a colon in 
there...  In any case I removed it and it worked fine :-)

Bj?rnke, as for copying the sentence to the clipboard, is there a technical 
reason why this is a bad idea, it's not being written to the harddrive? Is it 
because the user might have been saving something else on the clipboard and 
that action replaces what they had previously saved?

I was using the copy to clipboard as a kind of cheat. 

I'm going to embed the rev project into Drupal web page.  Originally, I was 
hoping to figure out how to have the Rev app automatically post an anonymous 
comment to the Drupal page (the little rev app was embedded in.) But not sure 
how I actually would do it. Ultimately I was looking for a way the user would 
be able to share a sentence that they create by dragging a few words from some 
song lyrics I know it sounds a little lame, but I was just going to use it 
as example for some teachers as to what these tools can do all together. I was 
hoping to have the Rev project duplicate the process of the Drupal comment 
action, using the Rev interface instead of the Drupal interface...but still 
having the user's work show up in the comments section.

As an alternative I may just load a new Drupal Module that pulls a static html 
file, ...one like Rev creates in my example here. That might work to if I move 
a way from having the user just past their comment off the clipboard.

Thank you!

John Patten

On Dec 16, 2009, at 4:33 PM, use-revolution-requ...@lists.runrev.com wrote:

> 
> --
> 
> Message: 23
> Date: Thu, 17 Dec 2009 07:45:04 +1000
> From: Sarah Reichelt 
> Subject: Re: A Rev Web Project and On-Rev working together?
> To: How to use Revolution 
> Message-ID:
>   
> Content-Type: text/plain; charset=ISO-8859-1
> 
>> I have a little rev project that I will eventually turn into  a
>> webRevProject. I would like to have this little webRevProject project store
>> a line of text into an on-rev text file. I'm not quite getting it right...
>> 
>> Here are the three parts that I have:
>> 
>> 1. Rev Projects  Script
>> 
>> put theSentence & "  -created in " & totalTime & " seconds" into theSentence
>>   set the clipboardData["text"] to theSentence
>>   put "sentence" & "=" & urlEncode(theSentence) into tMyPostData
>>   post tMyPostData to URL "http://jpatten.on-rev.com/xmas/saveSentence.irev";
>> 
>> 2. SaveSentence.irev
>> 
>> 
>> > put $_POST["sentence"] & return after URL: "file:sentence.txt"
>> ?>
>> 
>> 
>> 3. sentence.txt  (a blank text file waiting to be written to)
> 
> 
> Basically, this should work fine, but there are a couple of things
> which may be typos in your email, or may be causing problems.
> 
> In Step 1, you post to saveSentence.irev, but in step 2, you say the
> irev file is called SaveSentence.irev. Servers are usually
> case-sensitive, so you need to make these 2 consistent.
> 
> In step 2, you have:
>  URL: "file:sentence.txt"
> but the colon after URL is not correct.
> 
> 
> For testing purposes, check "it" and "the result" after the "post"
> command to see if there is any error or returned value.
> 
> In your irev file, have it write a log file showing all the $_POST
> variables to check what is arriving.
> 
> HTH,
> Sarah
> 
> 
> --
> 
> Message: 24
> Date: Wed, 16 Dec 2009 22:45:14 +0100
> From: Bj?rnke von Gierke 
> Subject: Re: A Rev Web Project and On-Rev working together?
> To: How to use Revolution 
> Message-ID: <55466469-d402-4cfc-a032-def7dce2b...@mac.com>
> Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes
> 
> A http server (like on-rev) needs to always return something. making  
> that something (as in your case) be "" seems to be rather  
> unusual and nondescript, but should work. still you might want to  
> check "the result" in your rev stack, to make sure the script on the  
> server actually works as expected.
> 
> Also, you're missing validation and security. anyone can write  
> anything into your text file, if he or she wants to, and sooner or  
> later they will. If there are a lot of users  (hundrets per second),  
> you might also run into the problem of some text not being stored in  
> the file, because another user overwrites the first change (competing  
> file access).
> 
> Note that there's script errors in your supplied example, so i guess  
> you're missing those too. For example "URL:" in the irev file should  
> of course be "URL", and probably i'm missing some too :)
> 
> A file created by you might not be accessible to the process the web  
> server runs at (unix user handling and file access restrictions). But  
> this is more a "what if everything else is correct and it still fails  
> unexpectedly" scenario.
> 
> If things don't work, try to return stuff. for example putting the  
> d

Re: Saving standalone substacks

2009-12-16 Thread J. Landman Gay

Kay C Lan wrote:


Because I can never  figure out the differences between Windows set ups and
Mac set ups, to lazy to keep track of the defaultFolder or whether I should
be using a specialFolder, and am sure that someone (me most likely) is
inadvertantly going to move a data stack to another location other than
where my splash stack expects it to be, I've gone for a univeral, seems to
work everytime, calculate the file path exactly before you need it approach:


Actually, I probably wasn't too clear. All that file path business was 
mostly for opening files, not for re-saving them. Once they're open from 
disk, the engine already knows the path, so "save this stack" is all you 
need.





put the long name of stack "myDataStack" into tFilePath
--result is the full file path enclosed in quotes and preceded by the word
stack
--the first 7 char are: stack "
--the last char is: "
put char 8 to -2 of tFilePath into tFilePath --just the file path
save stack "myDataStack" as tFilePath


You can get "the filename of this stack" to find out the path on disk 
without any parsing.


That said, I do usually use your method (with the filename variation) to 
find stacks whose relative locations are already known. I have a 
function that returns filenames based on the standalone's location. I 
should probably use the stackfiles property more than I do, it's an 
automated way to do the same thing with less scripting.


Anyway, this is what I use. It goes into the standalone's mainstack script:

  function appPath -- path to application folder
put the effective filename of me into tPath
set the itemdel to slash
return (item 1 to -2 of tPath) & slash -- on OS X this is INSIDE 
the app bundle

  end appPath

And then when I need to open a satellite stack:

  go stack (appPath() & "stack1.rev")

--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Smoothly moving a jpeg

2009-12-16 Thread Tim Selander

Scott,

Thanks - shortening the changes in distance helped a lot. So it 
appears Rev doesn't visibly move an image, it jumps it to the 
next location.


If I move the image a pixel at a time, but tighten the loop to 2 
or 3 milliseconds, things get pretty smooth. Now to test the 
reading speed with the on camera talent!


Tim Selander
Tokyo, Japan


Scott Rossi wrote:
snip


well moving large images.  That said, I would try to repeatedly set the
position of the image with short changes in distance in a tight "send..."
loop.  Here's a simple example:

on mouseUp
   moveImage
end mouseUp

on moveImage
   if right of img 1 < 10 then exit moveImage
   set left of img 1 to (left of img 1 - 2)
   send "moveImage" to me in 5 millisecs
end moveImage

This makes for substantial processor use, but also makes for smoother move
effects.

Another option I would try is to move the physical position of the stack in
which the image appears across the desktop, instead of moving the image

snip
___
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: Saving standalone substacks

2009-12-16 Thread Kay C Lan
On Thu, Dec 17, 2009 at 2:20 AM, J. Landman Gay wrote:

>
> Assuming three stacks in the same folder as your standalone, with the
> defaultfolder set to that directory:
>
> on shutdownRequest
>  repeat for each item i in "stack1.rev,stack2.rev,stack3.rev"
>save stack i
>close stack i
>  end repeat
>  pass shutdownRequest
> end shutdownRequest
>
>
Jim,

Because I can never  figure out the differences between Windows set ups and
Mac set ups, to lazy to keep track of the defaultFolder or whether I should
be using a specialFolder, and am sure that someone (me most likely) is
inadvertantly going to move a data stack to another location other than
where my splash stack expects it to be, I've gone for a univeral, seems to
work everytime, calculate the file path exactly before you need it approach:


put the long name of stack "myDataStack" into tFilePath
--result is the full file path enclosed in quotes and preceded by the word
stack
--the first 7 char are: stack "
--the last char is: "
put char 8 to -2 of tFilePath into tFilePath --just the file path
save stack "myDataStack" as tFilePath

So if you have multiple data stacks, using Jacque's example above:

on shutdownRequest
 repeat for each item i in "stack1.rev,stack2.rev,stack3.rev"
  put the long name of stack i into tFilePath
  put char 8 to -2 of tFilePath into tFilePath
  save stack i as tFilePath
  close stack i
 end repeat
 pass shutdownRequest
end shutdownRequest

adds only two lines of code here but seems to save me a whole lot of
headscratching trying to deal with any other approach.

HTH
___
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


Web interface for executable software

2009-12-16 Thread Alejandro Tejada

Hi all,

Recently i saw a functional web interface
for a desktop application that runs as
a server.

Previously, i have seen the VLC player
interface running in a browser,
(Still think that an external for VLC could be
an excellent alternative to Quicktime)
also WinAmp and iTunes.

How difficult could be to create such
interface for our own apps?

Thanks in advance.

Alejandro

-- 
View this message in context: 
http://n4.nabble.com/Web-interface-for-executable-software-tp965693p965693.html
Sent from the Revolution - User mailing list archive at Nabble.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: Smoothly moving a jpeg

2009-12-16 Thread Scott Rossi
Recently, Tim Selander wrote:

> The next thing I'm trying to do is take a jpeg of vertical, right
> to left Japanese text and move it smoothly across the window at
> reading speed for a teleprompter app. I'm using the "move image"
> command. The result is a little to jerky and stuttery.
> 
> Does Rev have a smoother way to animate/move images on the screen?

If the image spans the entire width and/or height of the screen, you may be
hard pressed to move anything of that size smoothly -- Rev doesn't do so
well moving large images.  That said, I would try to repeatedly set the
position of the image with short changes in distance in a tight "send..."
loop.  Here's a simple example:

on mouseUp
   moveImage
end mouseUp

on moveImage
   if right of img 1 < 10 then exit moveImage
   set left of img 1 to (left of img 1 - 2)
   send "moveImage" to me in 5 millisecs
end moveImage

This makes for substantial processor use, but also makes for smoother move
effects.

Another option I would try is to move the physical position of the stack in
which the image appears across the desktop, instead of moving the image
within the stack.  Sometimes movement of a stack window can appear smooth,
perhaps because the system is responsible for blending the window with the
desktop, I'm not sure.  But if image movement doesn't work out well for you,
I'd try moving the stack.

Hope this helps.

Regards,

Scott Rossi
Creative Director
Tactile Media, Multimedia & Design


___
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


Smoothly moving a jpeg

2009-12-16 Thread Tim Selander
Thanks to all who replied to my question on interrupting a loop 
with keyboard input, that was an interesting thread.


The next thing I'm trying to do is take a jpeg of vertical, right 
to left Japanese text and move it smoothly across the window at 
reading speed for a teleprompter app. I'm using the "move image" 
command. The result is a little to jerky and stuttery.


Does Rev have a smoother way to animate/move images on the screen?

Tim Selander
Tokyo, Japan
___
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: Recording user actions in the RevMedia IDE

2009-12-16 Thread stephen barncard
Trevor Devore has a framework and some ideas for the implementation of
 multiple undo in his "Application Framework"

http://www.bluemangolearning.com/revolution/software/libraries/glx-application-framework/
-
Stephen Barncard
San Francisco
http://houseofcubes.com/disco.irev


2009/12/16 Alejandro Tejada 

>
> Hi all,
>
> Last Monday, i took three hours showing
> RevMedia to some teachers.
>
> Besides the interface shock and the unique
> need to name each object that you create,
> it was the lack of multiple undo that raised
> most eyebrows.
>
> If you want experiment, then how could you
> recover your work if you lose it?
>
> Other programs, make this is possible with
> multiple undo. In fact, many software allows
> you to choose how many undo you want.
>
> My question is: How could we record every
> user action in the IDE, to revert any destructive
> (or simply blocking) change that users could
> make? Does this strategy (storing every user
> action) could actually works as a multiple undo
> replacement?
>
> Thanks in advance.
>
> Alejandro
>
> --
> View this message in context:
> http://n4.nabble.com/Recording-user-actions-in-the-RevMedia-IDE-tp965668p965668.html
> Sent from the Revolution - User mailing list archive at Nabble.com.
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Deriving an angle from three points

2009-12-16 Thread Kay C Lan
On Wed, Dec 16, 2009 at 6:56 PM, Jacques Hausser wrote:

> I really should re-read my mails before sending them :-(
> I cannot copy and paste scripts directly into mails (I don't know why) so I
> rewrite them... with bugs !
>
> Now that Mark has his solution, this seems to be the next thing that needs
solving.

What platform are you on and which email client do you use? Are your scripts
in Rev or tRev?

Does it make a difference if you use your mouse and select Copy and Paste
rather than using keyboard shortcuts?

Can you Copy and Paste code from Rev into a text editor or other program, or
from one Rev script to another Rev script, ie is the problem you can't Copy
in Rev, you can Copy but it get's lost when going to some other programs, or
Paste just never works outside of Rev?

This was an intermitant problem with Rev way back and the usual cure was to
manually select the menu commands.

HTH
___
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 Tatty, Old Metacard icon.

2009-12-16 Thread Alejandro Tejada

Actually, i like the more recent version of the 
MetaCard icon, created by Scott Rossi.


Richmond Mathewson-2 wrote:
> 
> Now that RunRev has passed through its chrysalis stage and
> emerged with shiny, new icons, maybe it is time that
> Metacard did the same.
> [snip]
> 

-- 
View this message in context: 
http://n4.nabble.com/The-Tatty-Old-Metacard-icon-tp965553p965671.html
Sent from the Revolution - User mailing list archive at Nabble.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


Recording user actions in the RevMedia IDE

2009-12-16 Thread Alejandro Tejada

Hi all,

Last Monday, i took three hours showing
RevMedia to some teachers.

Besides the interface shock and the unique
need to name each object that you create,
it was the lack of multiple undo that raised
most eyebrows.

If you want experiment, then how could you
recover your work if you lose it?

Other programs, make this is possible with
multiple undo. In fact, many software allows
you to choose how many undo you want.

My question is: How could we record every
user action in the IDE, to revert any destructive
(or simply blocking) change that users could
make? Does this strategy (storing every user
action) could actually works as a multiple undo
replacement?

Thanks in advance.

Alejandro

-- 
View this message in context: 
http://n4.nabble.com/Recording-user-actions-in-the-RevMedia-IDE-tp965668p965668.html
Sent from the Revolution - User mailing list archive at Nabble.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: Shortcut for resizing a selected object ?

2009-12-16 Thread zryip theSlug
Hi Jacqueline,

In fact it's just a story about an anagram around my first name ;) A
nickname that followed me to the track for a long time. 8)
Finally I found it sticks well to the situation. I missed so many trains to
reach you that I'm a bit late! 8)

-Zryip TheSlug- wish you the best ! 8)

2009/12/16 J. Landman Gay 
>
>
> I don't think you should call yourself a slug any more.
>
> --
> Jacqueline Landman Gay | jac...@hyperactivesw.com
> HyperActive Software   | http://www.hyperactivesw.com
>
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Saving standalone substacks

2009-12-16 Thread J. Landman Gay

James Hurley wrote:


Things I didn't know:

1)  I thought I would be saving to a substack.


Substacks -- the ones embedded into a main stack -- become part of the 
standalone. Executables can't save data to themselves, no matter how 
many stacks they are composed of. So yeah, you need separate stacks on 
disk if you want to save them.



2)  I was unaware of the "shutDownRequest" handler.

Another question or two.

1)  How would  "StackRunner" differ from using my own splash screen?
2)  How would "Revolution Player" differ from using my own splash screen?


I don't think either of these would be much different. They are both 
basically splash standalones, though Rev's player has a few more 
restrictions I think. But with either of these, you'd need to put your 
saving instructions into each satellite stack, or else into a backscript 
that you insert when your first stack opens. That's because both of 
these are already built standalones, so to add any scripted behavior you 
have to use another stack to store the scripts in.


3)  If I use "save" verses "save as..." can I assume that the satellite 
stack will be saved and the user will not be asked  if he or she wants 
to overwrite the existing file?


Yes. Actually, you can use "save as" too without bothering the user. 
Both "save stack" and "save stack as " just write a file to 
disk. No dialog is presented unless your script puts one up.


--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: regex/HTMLText question

2009-12-16 Thread zryip theSlug
Okay, I'm back with the end of maybe a full solution.

To enclose a word without its punctuation you have to define also a list of
substitute strings like this :
-> the list of possible form
"  ",",",".",".",".."
-> the substitute list
" 
",",",".",".",".."

With this approach you'll be able to keep your punctuation alive. I'm sure
it'll thank us 8)

To create a list of possible form of whole word, you could:
1) Define the list of punctuation which could starts a word
i.e. : colon,space,nothing,comma 
2) Define the list of punctuation which could ends a word
i.e. : -,colon,dot,comma ...
3) Then mix all possibilities by two imbricated loops (okay it's like
cooking i'm presume 8))

So you'll obtain something like that :
put "colon,space,comma,nothing,quote" into startCharsList
put "colon,dot,comma,-" into endCharsList

put "" into keyWord
put "" into htmlTag
put "" into wholeWordList
put "" into substituteList

-- Create the list of whole words and its substitute list
repeat with startCharNum = 1 to number of items of startCharsList
repeat with endCharNum = 1 to number of items of endCharsList
put item startCharNum of startCharsList & keyWord & item endCharNum of
endCharsList&"," after wholeWordList
put item startCharNum of startCharsList & htmlTag & keyWord & htmlTag & item
endCharNum of endCharsList&"," after substituteList
end repeat
end repeat

-- Search and boxed one or a list of words
repeat with aWord in wordList
repeat with wholeWordForm in wholeWordList
put replaceText(aRegex,"",aWord) into wholeWordForm -- replace
the "" key in your pattern by the word that you need
get fld "yourField"
replace wholeWordForm with itSubstituteForm in it
end repeat
end repeat

See how it could work ?
However not sure of the time of processing...

Give it a try and keep up informed ;)


-Zryip TheSlug- wish you the best ! 8)
___
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 Rev Web Project and On-Rev working together?

2009-12-16 Thread Björnke von Gierke
A http server (like on-rev) needs to always return something. making  
that something (as in your case) be "" seems to be rather  
unusual and nondescript, but should work. still you might want to  
check "the result" in your rev stack, to make sure the script on the  
server actually works as expected.


Also, you're missing validation and security. anyone can write  
anything into your text file, if he or she wants to, and sooner or  
later they will. If there are a lot of users  (hundrets per second),  
you might also run into the problem of some text not being stored in  
the file, because another user overwrites the first change (competing  
file access).


Note that there's script errors in your supplied example, so i guess  
you're missing those too. For example "URL:" in the irev file should  
of course be "URL", and probably i'm missing some too :)


A file created by you might not be accessible to the process the web  
server runs at (unix user handling and file access restrictions). But  
this is more a "what if everything else is correct and it still fails  
unexpectedly" scenario.


If things don't work, try to return stuff. for example putting the  
data into the text field might fail, and then "the result" would  
contain useful information so you might want to return that:

put the result

i think that setting the clipboard, without the user demanding it, is  
evil, and should never be done (ever).


On 16 Dec 2009, at 22:06, John Patten wrote:


Hi All!

I have a little rev project that I will eventually turn into  a  
webRevProject. I would like to have this little webRevProject  
project store a line of text into an on-rev text file. I'm not quite  
getting it right...


Here are the three parts that I have:

1. Rev Projects  Script

put theSentence & "  -created in " & totalTime & " seconds" into  
theSentence

  set the clipboardData["text"] to theSentence
  put "sentence" & "=" & urlEncode(theSentence) into tMyPostData
  post tMyPostData to URL "http://jpatten.on-rev.com/xmas/saveSentence.irev 
"


2. SaveSentence.irev






3. sentence.txt  (a blank text file waiting to be written to)



Is there something I missed?

Thank you!

John Patten






___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your  
subscription preferences:

http://lists.runrev.com/mailman/listinfo/use-revolution


___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: A Rev Web Project and On-Rev working together?

2009-12-16 Thread Sarah Reichelt
> I have a little rev project that I will eventually turn into  a
> webRevProject. I would like to have this little webRevProject project store
> a line of text into an on-rev text file. I'm not quite getting it right...
>
> Here are the three parts that I have:
>
> 1. Rev Projects  Script
>
> put theSentence & "  -created in " & totalTime & " seconds" into theSentence
>   set the clipboardData["text"] to theSentence
>   put "sentence" & "=" & urlEncode(theSentence) into tMyPostData
>   post tMyPostData to URL "http://jpatten.on-rev.com/xmas/saveSentence.irev";
>
> 2. SaveSentence.irev
>
> 
>  put $_POST["sentence"] & return after URL: "file:sentence.txt"
> ?>
> 
>
> 3. sentence.txt  (a blank text file waiting to be written to)


Basically, this should work fine, but there are a couple of things
which may be typos in your email, or may be causing problems.

In Step 1, you post to saveSentence.irev, but in step 2, you say the
irev file is called SaveSentence.irev. Servers are usually
case-sensitive, so you need to make these 2 consistent.

In step 2, you have:
  URL: "file:sentence.txt"
but the colon after URL is not correct.


For testing purposes, check "it" and "the result" after the "post"
command to see if there is any error or returned value.

In your irev file, have it write a log file showing all the $_POST
variables to check what is arriving.

HTH,
Sarah
___
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: Shortcut for resizing a selected object ?

2009-12-16 Thread J. Landman Gay

zryip theSlug wrote:

Never thought when I wrote this script that
it could be integrated to a biggest project. I'm really honored, thank you.


I don't think you should call yourself a slug any more.

--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Shortcut for resizing a selected object ?

2009-12-16 Thread zryip theSlug
This little script is not only useful to resize controls like buttons or
fields, but also for graphics objects like lines, rectangles, etc that as
you know requires more accuracy. Never thought when I wrote this script that
it could be integrated to a biggest project. I'm really honored, thank you.
8) It's now yours and the property of all the community. You can make it
follow the destiny that you want. ;) Since, I have integrated a feature to
stop the resize when the bottom right corner is not within the limits of the
card. Just a line in fact. ;)

You're welcome 8)

- Zryip TheSlug - wish you the best 8)

2009/12/16 Richard Gaskin 

> Nicely done.  Limiting the resizing to the left and bottom removes the
> ambiguity I was wondering about in terms of which sides gets adjusted.
>
> I think I'll add this to my copy of the MC IDE, and have cc'd the MC
> discussion list here in hopes that the crew agrees it would be useful to add
> to the master version.
>
> It's a nice compliment to the Shift key modifier, which moves the objects
> by 10-pixel increments.  With Option added for resizing, it really rounds
> out the arrow key use quite well.
>
> Thanks for the script - useful stuff.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Saving standalone substacks

2009-12-16 Thread J. Landman Gay

Devin Asay wrote:

Do you know what the file permissions implications are if a user other 
than the one who installed the app is trying to save stacks to the app 
bundle?


I think it depends on the OS permissions assigned to the app, but maybe 
someone else knows more. Most of the apps in my Applications folder are 
Owner: read/write, group: read/write, anyone: read. I think you'd need 
to make sure that the permissions are set correctly for the people who 
would need to access it.


I notice that my Apple apps are mostly group = admin, where third party 
apps are mostly group = (unknown).


--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


The Tatty, Old Metacard icon.

2009-12-16 Thread Richmond Mathewson

Now that RunRev has passed through its chrysalis stage and
emerged with shiny, new icons, maybe it is time that
Metacard did the same.

I have popped a highly derivative icon here:

http://andregarzia.on-rev.com/richmond/STUFF/MC.png

not as a terribly serious suggestion, more as a way of getting
somebody else's digestive juices flowing.


___
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


A Rev Web Project and On-Rev working together?

2009-12-16 Thread John Patten

Hi All!

I have a little rev project that I will eventually turn into  a  
webRevProject. I would like to have this little webRevProject project  
store a line of text into an on-rev text file. I'm not quite getting  
it right...


Here are the three parts that I have:

1. Rev Projects  Script

put theSentence & "  -created in " & totalTime & " seconds" into  
theSentence

   set the clipboardData["text"] to theSentence
   put "sentence" & "=" & urlEncode(theSentence) into tMyPostData
   post tMyPostData to URL "http://jpatten.on-rev.com/xmas/saveSentence.irev 
"


2. SaveSentence.irev






3. sentence.txt  (a blank text file waiting to be written to)



Is there something I missed?

Thank you!

John Patten






___
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: Saving standalone substacks

2009-12-16 Thread James Hurley

James Hurley wrote:
Actually, I had recalled that the splash screen was the way to go.  
My question is really quite primitive. When the user quits, or just  
wants to save the substacks, what is the action plan, specifically,  
what is the code? Save.the substacks name. Is a file path  
required? Like I said, my question is quite primitive.


Jacqueline Landman Gay wrote:



Depends on what your stack does. If you've changed the  
defaultfolder, then you'll need to calculate a file path back to  
your satellite stacks I don't like the word "substacks" in this case  
because those are stacks embedded in the mainstack, and they can't  
save data. Separate stacks opened by a splash app need a different  
name.) The default location when your splash starts up is the same  
folder as the splash app is in. You can handle this several ways:
1. Reset the defaultfolder to the one where your splash exists, if  
you've changed it. Refer to satellite stacks by their relative path.


2. Calculate file paths to the satellite stacks and use those as  
stack references.


3. Set the stackfiles property of your splash so that it points to  
relative path locations for the satellite stacks. Then you can just  
refer to them by their short names and Rev can still find them. This  
is perhaps the easiest way to manage it.


However you determine the stack paths, the rest is the same. Loop  
through the names of your satellite stacks when the user requests to  
quit, and save each one. You can ask the user if they want to save  
each of them, if that fits your app better.


Assuming three stacks in the same folder as your standalone, with  
the defaultfolder set to that directory:
on shutdownRequest repeat for each item i in  
"stack1.rev,stack2.rev,stack3.rev" save stack i close stack i end  
repeat pass shutdownRequest end shutdownRequest

--

Jacqueline Landman Gay |  jacque at hyperactivesw.com HyperActive  
Software |  http://www.hyperactivesw.com


Thanks Jacque. That is VERY helpful.

Things I didn't know:

1)  I thought I would be saving to a substack.
2)  I was unaware of the "shutDownRequest" handler.

Another question or two.

1)  How would  "StackRunner" differ from using my own splash screen?
2)  How would "Revolution Player" differ from using my own splash  
screen?
3)  If I use "save" verses "save as..." can I assume that the  
satellite stack will be saved and the user will not be asked  if he or  
she wants to overwrite the existing file?



___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: "Funny" things happen when your internet cuts off.

2009-12-16 Thread Richmond Mathewson

On 16/12/2009 21:24, Mark Talluto wrote:

Hi Richmond,

I think this has to do with bug:  
http://quality.runrev.com/qacenter/show_bug.cgi?id=8409
Rev makes use of the internet in the Docs and Rev Online.  Because your 
computer was still connected to your router and your internet was not 
functioning at the time this bug may be affecting you.

   


Thanks, Mark.

Had I bothered to think a bit more it might have occurred to me
to try disconnecting the router. And, come to think of it, using
my wife's ancient iBook (recently seen in Edinburgh) up at
our villa in the country - RR 4 worked perfectly well at least
20 miles from any sort of internet service whatsoever.

___
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: VS: How do I construct a scroll bar for stack larger than screen

2009-12-16 Thread Scott Rossi
Thanks but the example is far from fantastic -- it was quickly put together
to illustrate what I perceived to be the desired arrangement.  And since
building it on OS X and looking at it on Windows, I see Rev has managed to
mess up the text, so I added a little fix to keep the textSize in place.  In
answer to your question, there is no significance to the label fields, they
are present purely as a large visual identifier for the windows and are
probably unnecessary.

Regards,

Scott Rossi
Creative Director
Tactile Media, Multimedia & Design



Recently, D.Coker wrote:

>> Kresten, if you need nine separate scrollable stacks, maybe this is what you
>> are trying to do.  Execute the following in your Rev message box:
>> 
>> go url "http://www.tactilemedia.com/download/nine_stacks.rev";
>> 
>> This is a small model of what I think you described.  When any stack is
>> resized, the group that is within the stack scales to fit the rect of that
>> stack.  These groups have hscrollbars which you can disable if you don't
>> need them.
> 
> Scott,
> I cannot speak for Kresten, but your example is really gonna be helpful to me
> if and when I get back to a project that I currently have on the back burner.
> To date, I've not done a lot with graphics -or- multi-stack configurations
> using Rev, so this will be a fantastic learning opportunity.
> 
> Question: 
> Is there any significance with the label field in each window?


___
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: Saving standalone substacks

2009-12-16 Thread Devin Asay


On Dec 16, 2009, at 11:20 AM, J. Landman Gay wrote:


James Hurley wrote:


Actually, I had recalled that the splash screen was the way to go.
My question is really quite primitive. When the user quits, or just
wants to save the substacks, what is the action plan, specifically,  
what
is the code? Save.the substacks name. Is a file path required?  
Like

I said, my question is quite primitive.


Depends on what your stack does. If you've changed the defaultfolder,
then you'll need to calculate a file path back to your satellite  
stacks
(I don't like the word "substacks" in this case because those are  
stacks

embedded in the mainstack, and they can't save data. Separate stacks
opened by a splash app need a different name.) The default location  
when

your splash starts up is the same folder as the splash app is in. You
can handle this several ways:

1. Reset the defaultfolder to the one where your splash exists, if
you've changed it. Refer to satellite stacks by their relative path.

2. Calculate file paths to the satellite stacks and use those as stack
references.

3. Set the stackfiles property of your splash so that it points to
relative path locations for the satellite stacks. Then you can just
refer to them by their short names and Rev can still find them. This  
is

perhaps the easiest way to manage it.

However you determine the stack paths, the rest is the same. Loop
through the names of your satellite stacks when the user requests to
quit, and save each one. You can ask the user if they want to save  
each

of them, if that fits your app better.

Assuming three stacks in the same folder as your standalone, with the
defaultfolder set to that directory:

on shutdownRequest
  repeat for each item i in "stack1.rev,stack2.rev,stack3.rev"
save stack i
close stack i
  end repeat
  pass shutdownRequest
end shutdownRequest


Jacque,

Do you know what the file permissions implications are if a user other  
than the one who installed the app is trying to save stacks to the app  
bundle?


Devin

Devin Asay
Humanities Technology and Research Support Center
Brigham Young University

___
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: Deriving an angle from three points

2009-12-16 Thread Phil Davis

On 12/16/09 10:57 AM, Bruce Robertson wrote:

No it didn't.

On Dec 16, 2009, at 10:44 AM, Colin Holgate wrote:

   

Well, of course it's a triangle, but describing it as a V helped explain
which angle was wanted.
 


I thought Mark S identified it well when he called it the 'internal 
angle' - at least that did it for me:

On Dec 15, 2009, at 10:35 PM, Mark Wieder wrote:

>  Mark-
>  
>  Tuesday, December 15, 2009, 10:21:47 PM, you wrote:
>  

>>  40,116
>>  98,186
>>  132,118
>  

>>  How would one determine the angle created from three points, such as those 
above?
>  
>  There are three angles. Which one are you interested in?
>  
>  ---

The above represents roughly a V shape with the center point the vertex.  I was 
trying to detemine the internal angle.

   


--
Phil Davis

PDS Labs
Professional Software Development
http://pdslabs.net

___
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: "Funny" things happen when your internet cuts off.

2009-12-16 Thread Mark Talluto
Hi Richmond,

I think this has to do with bug:  
http://quality.runrev.com/qacenter/show_bug.cgi?id=8409
Rev makes use of the internet in the Docs and Rev Online.  Because your 
computer was still connected to your router and your internet was not 
functioning at the time this bug may be affecting you. 

Best regards,

Mark Talluto
http://www.canelasoftware.com


On Dec 16, 2009, at 10:45 AM, Richmond Mathewson wrote:

> Lost internet today for about 6 hours (stupid self had forgotten
> to pay for it); and when I opened any stack in RevStudio the
> whole thing froze (PPC Mac).
> 
> Now I have internet restored (robbed a bank), all is quite
> alright again.
> 
> Does this mean that when I go to see Mum and Dad at New Year and
> drag the Tray-loading G3 iMac out of the attic (OS Panther) because it
> will not be connected to the internet RunRev is going to play
> "silly buggers" ?
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Deriving an angle from three points

2009-12-16 Thread Bruce Robertson
No it didn't.

On Dec 16, 2009, at 10:44 AM, Colin Holgate wrote:

> Well, of course it's a triangle, but describing it as a V helped explain
> which angle was wanted.

___
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: HTMLText question

2009-12-16 Thread Robert Brenstein

On 16.12.2009 at 11:51 Uhr +0800 Kay C Lan apparently wrote:

Craig,

one further observation. If the field already contains formatted text, ie
bold or coloured, doing what you are doing would set everything back to
plain text except for word 2 so in most cases (but I accept not all) you'd
want to do deal with htmlText exclusively:

put the htmlText of fld "myField" into tHtml --not the plain text
replace "" with "" in line 2 of  tHtml
replace "" with "" in line 2 of tHtml
set the htmlText of fld "myField to tHtml

Of course one case where you would one to swap from one to the other is if
you want to strip HTML tags. Set the htmlText of a field to a html file,
then put the field into a Var, most of the html is then nicely stripped for
you :-)

HTH


A tad safer and more general technique is to

put "" before word 2 of tHtml
put "" after word 2 of tHtml

As other said, variable have htmltext property, just the content 
which can be html, so you need to work with it directly. Html comes 
into effect when such a content is put into a field and then 
displayed to user.


Robert
___
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: VS: How do I construct a scroll bar for stack larger than screen

2009-12-16 Thread D.Coker
>Kresten, if you need nine separate scrollable stacks, maybe this is what you
>are trying to do.  Execute the following in your Rev message box:
>
> go url "http://www.tactilemedia.com/download/nine_stacks.rev";
>
>This is a small model of what I think you described.  When any stack is
>resized, the group that is within the stack scales to fit the rect of that
>stack.  These groups have hscrollbars which you can disable if you don't
>need them.

Scott,
I cannot speak for Kresten, but your example is really gonna be helpful to me 
if and when I get back to a project that I currently have on the back burner. 
To date, I've not done a lot with graphics -or- multi-stack configurations 
using Rev, so this will be a fantastic learning opportunity.

Question: 
Is there any significance with the label field in each window?

At any rate, I really appreciate this particular example!

Best regards,
David C.
___
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: Deriving an angle from three points

2009-12-16 Thread Colin Holgate

Well, of course it's a triangle, but describing it as a V helped explain
which angle was wanted.



On Dec 16, 2009, at 1:25 PM, Mark Wieder  wrote:



It doesn't. Three points in a plane represents a triangle

___
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: Deriving an angle from three points

2009-12-16 Thread Mark Wieder
gmccarthy-

Wednesday, December 16, 2009, 2:07:46 AM, you wrote:

> By the way again, Mark's method is also correct if you fix the variable names
> as shown below.
> Normally a triangle with points ABC have their sides named with side b
> between A and C so it is opposite angle B...etc.

Quite correct. In my defense, it was one in the morning here after a
long day...

-- 
-Mark Wieder
 mwie...@ahsoftware.net

___
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


"Funny" things happen when your internet cuts off.

2009-12-16 Thread Richmond Mathewson

Lost internet today for about 6 hours (stupid self had forgotten
to pay for it); and when I opened any stack in RevStudio the
whole thing froze (PPC Mac).

Now I have internet restored (robbed a bank), all is quite
alright again.

Does this mean that when I go to see Mum and Dad at New Year and
drag the Tray-loading G3 iMac out of the attic (OS Panther) because it
will not be connected to the internet RunRev is going to play
"silly buggers" ?
___
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: interrupting a repeat loop

2009-12-16 Thread Mark Wieder
Andre-

Wednesday, December 16, 2009, 5:56:34 AM, you wrote:

> Hi Alex,

> We all love tail recursion optimizations!
> Thanks for the code!

If a recursive routine can be refactored into a "repeat forever" loop
then it's probably a bad candidate for recursion. But it's hard to
resist recursive routines with finite bounds. There's something that
just looks so *right* about them.

-- 
-Mark Wieder
 mwie...@ahsoftware.net

___
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: Deriving an angle from three points

2009-12-16 Thread Mark Wieder
Mark-

Wednesday, December 16, 2009, 6:08:16 AM, you wrote:

> The above represents roughly a V shape with the center point the
> vertex.

It doesn't. Three points in a plane represents a triangle.

-- 
-Mark Wieder
 mwie...@ahsoftware.net

___
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 IDE vs MetaCard IDE

2009-12-16 Thread Shari
It's good to see the Metacard IDE mentioned here.  While someone 
accustomed to Rev might initially be underwhelmed by its simplicity, 
that same simplicity can make your programming so much more 
productive.


The Rev IDE has its honor points and I do occasionally launch it, but 
the MC IDE is where I get most of my work done.


Thank you, always, for keeping the MC IDE alive!

Shari
--
  Critters, humor, patriots and sports t-shirts
  http://www.villagetshirts.com
 WlND0WS and MAClNT0SH shareware
 http://www.gypsyware.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: Saving standalone substacks

2009-12-16 Thread J. Landman Gay

James Hurley wrote:


Actually, I had recalled that the splash screen was the way to go.
My question is really quite primitive. When the user quits, or just 
wants to save the substacks, what is the action plan, specifically, what 
is the code? Save.the substacks name. Is a file path required? Like 
I said, my question is quite primitive.


Depends on what your stack does. If you've changed the defaultfolder, 
then you'll need to calculate a file path back to your satellite stacks 
(I don't like the word "substacks" in this case because those are stacks 
embedded in the mainstack, and they can't save data. Separate stacks 
opened by a splash app need a different name.) The default location when 
your splash starts up is the same folder as the splash app is in. You 
can handle this several ways:


1. Reset the defaultfolder to the one where your splash exists, if 
you've changed it. Refer to satellite stacks by their relative path.


2. Calculate file paths to the satellite stacks and use those as stack 
references.


3. Set the stackfiles property of your splash so that it points to 
relative path locations for the satellite stacks. Then you can just 
refer to them by their short names and Rev can still find them. This is 
perhaps the easiest way to manage it.


However you determine the stack paths, the rest is the same. Loop 
through the names of your satellite stacks when the user requests to 
quit, and save each one. You can ask the user if they want to save each 
of them, if that fits your app better.


Assuming three stacks in the same folder as your standalone, with the 
defaultfolder set to that directory:


on shutdownRequest
  repeat for each item i in "stack1.rev,stack2.rev,stack3.rev"
save stack i
close stack i
  end repeat
  pass shutdownRequest
end shutdownRequest

--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Rev IDE vs MetaCard IDE

2009-12-16 Thread J. Landman Gay

Bernard Devlin wrote:

Jacqueline

Thanks for making this such an easy install.  I really am most
grateful to the people who've kept this alive.  I'd reached the end of
my tether trying to use Rev 3.5 and 4.0 on Linux.

At least the Metacard IDE works about 98% of the way.  There are still
some visual defects, but alas they seem to be in the engine.  I can at
least edit scripts and read what's written on the IDE's menus.

It's going to take a little getting used to, but at least I can use Rev.


You're welcome. Anyone trying out MC for the first time should note that 
none of the "rev"-prefixed calls will work, since those are all scripted 
into the Rev IDE; i.e., revPrintField, revGoURL, etc. If you need any of 
that, you'll have to pull the handlers out of Rev and move them into 
your own backscript. We're strictly bare-bones here. :)


--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Rev IDE vs MetaCard IDE

2009-12-16 Thread Bernard Devlin
Jacqueline

Thanks for making this such an easy install.  I really am most
grateful to the people who've kept this alive.  I'd reached the end of
my tether trying to use Rev 3.5 and 4.0 on Linux.

At least the Metacard IDE works about 98% of the way.  There are still
some visual defects, but alas they seem to be in the engine.  I can at
least edit scripts and read what's written on the IDE's menus.

It's going to take a little getting used to, but at least I can use Rev.

Bernard

On Tue, Dec 15, 2009 at 9:46 PM, J. Landman Gay
 wrote:

> In RevOnline (in Rev's toolbar) search for the "MetaCard Setup" stack. This
> will download the latest MC IDE and set it up with your (licensed) Rev
> engine, ready to go. It's all one click.
>
> --
> Jacqueline Landman Gay         |     jac...@hyperactivesw.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: VS: How do I construct a scroll bar for stack larger than screen

2009-12-16 Thread Scott Rossi
Kresten, if you need nine separate scrollable stacks, maybe this is what you
are trying to do.  Execute the following in your Rev message box:

 go url "http://www.tactilemedia.com/download/nine_stacks.rev";

This is a small model of what I think you described.  When any stack is
resized, the group that is within the stack scales to fit the rect of that
stack.  These groups have hscrollbars which you can disable if you don't
need them.

If this is not what you are looking for, please provide some additional
details.

Regards,

Scott Rossi
Creative Director
Tactile Media, Multimedia & Design


>>> I have tried to follow them, but am approaching the view, that it cannot
>>> be done.
>>> 
>>> Which is a shame, because the users of the cheap mini-notebooks would be
>>> a most relevant target group
>>> 
>>>  It is a most unusual context : A stack, where the stacksize is 3072 x
>>> 2304  =  9  different 1024x768 windows,
>>> 
>>> which ideally should each have a vscrollbar.
> 
>> Kresten, to clarify what you want, are you trying to create 9 separate
>> scrolling windows on the desktop, or do you want 9 separate scrolling regions
>> in one window?
> 
> 9 separate
> 
> scrolling windows on the desktop !


___
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: Shortcut for resizing a selected object ?

2009-12-16 Thread Richard Gaskin
Nicely done.  Limiting the resizing to the left and bottom removes the 
ambiguity I was wondering about in terms of which sides gets adjusted.


I think I'll add this to my copy of the MC IDE, and have cc'd the MC 
discussion list here in hopes that the crew agrees it would be useful to 
add to the master version.


It's a nice compliment to the Shift key modifier, which moves the 
objects by 10-pixel increments.  With Option added for resizing, it 
really rounds out the arrow key use quite well.


Thanks for the script - useful stuff.

--
 Richard Gaskin
 Fourth World
 Rev training and consulting: http://www.fourthworld.com
 Webzine for Rev developers: http://www.revjournal.com
 revJournal blog: http://revjournal.com/blog.irv

zryip wrote:



How ?
Try this 8) :

on rawkeyDown theKey
   if (the altKey is down) and (theKey >= 65361) and (theKey <= 65364)
then -- only if alt key is pressed when using arrow key
  put the selectedObjects into objectsList -- keep in memory the
list of objects to resize
  get number of lines of objectsList
  if it > 0 then
 repeat with x = 1 to it -- a loop to resize all the objects in the list
resizeObject line x of the selectedObjects,theKey
 end repeat
  end if
   else
  pass rawkeyDown
   end if
end rawkeyDown

on resizeObject theObject,theKey
   do "get rect of" && theObject
   put numKey2Const(theKey) into direction
   put getStep(direction,the shiftKey is down) into myStep -- step = 1
pixel or 5 pixels when the shift key is down
   add myStep to item numKey2rectItem(direction) of it
   do "set rect of" && (theObject) && "to it"
end resizeObject

function numKey2Const valueKey
   -- Not necessary but usefull to not keep in mind 65361 when I
search my left. 8)
  switch valueKey
  case 65361
 return "left"
  case 65362
 return "up"
  case 65363
 return "right"
  case 65364
 return "down"
  default
 return ""
   end switch
end numKey2Const

function numKey2rectItem direction
   if (direction is in "left,right") then
  return 3
   else
  return 4
   end if
end numKey2rectItem

function getStep direction,shiftFlag
   if (direction is in "left,up") then
  put -1 into myStep -- reduce the size of the object
   else
  put 1 into myStep -- grow up the size of the object
   end if
   if shiftFlag then put (myStep * 5) into myStep
   return myStep
end getStep

-Zryip TheSlug- wish you the best ! 8)

2009/12/16 Richard Gaskin 

I use this feature in Fireworks and other tools that let you
select a single bounds handle, but how would this work in Rev (or HC
for that matter, since it used the "marching ants" marquee to indicate
selection)?



___
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: Deriving an angle from three points

2009-12-16 Thread James Hurley


Message: 24
Date: Tue, 15 Dec 2009 22:21:47 -0800
From: Mark Swindell 
Subject: Deriving an angle from three points
To: How to use Revolution 
Message-ID: 
Content-Type: text/plain;   charset=us-ascii

40,116
98,186
132,118

How would one determine the angle created from three points, such as  
those above?


Thanks,
Mark



Mark,

Or even easier. Set the Turtle at the apex and get the angle of the  
other two points.



on mouseUp
   startTurtle --Initiates the turtle graphics library
   penup
   setxy 98,186 --The vertex
   put direction(40,116) into A
   put direction(132,118) into B
   put B-A into dA
   put abs(dA) & cr & abs(180 - dA)  into msg box
   choose the browse tool
end mouseUP

(Assuming your middle point is the apex of the angle you want.)

To run this you will need the TG library. Run this in the msg box

go url "http://www.jamesphurley.com/jhurleyFolder/TurtleGraphics.rev";

Jim Hurley
___
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: Deriving an angle from three points

2009-12-16 Thread Colin Holgate

On Dec 16, 2009, at 11:01 AM, Colin Holgate wrote:

> 
> All of the suggested scripts seem quite long.


Correction, gmc's solution was also using atan2, and was fairly short.


___
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: Bug

2009-12-16 Thread Colin Holgate

On Dec 16, 2009, at 10:05 AM, Scott Rossi wrote:

> Maybe I'm missing something.  Over here, using the above on OS X 10.6.2, the
> button doesn't hilite, using Rev 4 or Rev 3.5.  Tried buttons that are
> square and rectangular.  No difference.


No problem here either, with a rounded rect button. Again OSX, and using Rev 
Media.


___
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: Deriving an angle from three points

2009-12-16 Thread Colin Holgate

On Dec 16, 2009, at 1:21 AM, Mark Swindell wrote:

> 40,116
> 98,186
> 132,118
> 
> How would one determine the angle created from three points, such as those 
> above?


All of the suggested scripts seem quite long. Try putting this script into 
three buttons. The script uses the Other Mark's way of dragging the button 
around (and it doesn't hilite the button as he claims):

on mouseDown
repeat until the mouse is up with messages
 set the loc of me to the mouseLoc
 wait 0 millisecs with messages
  end repeat  
   put 180 - angler(loc of btn 1,loc of btn 2,loc of btn 3)/pi*180
end mouseDown
function angler p1, p2, p3
   put atan2(item 2 of p2-item 2 of p1,item 1 of p2 - item 1 of p1) into angle1
   put atan2(item 2 of p3-item 2 of p2,item 1 of p3 - item 1 of p2) into angle2
   return abs(angle2-angle1)
end angler

The bit that calculates the angle could be done in a single line:

put 180 - (atan2(item 2 of p3-item 2 of p2,item 1 of p3 - item 1 of 
p2)-atan2(item 2 of p2-item 2 of p1,item 1 of p2 - item 1 of p1))/pi*180


___
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: Deriving an angle from three points

2009-12-16 Thread James Hurley


Message: 24
Date: Tue, 15 Dec 2009 22:21:47 -0800
From: Mark Swindell 
Subject: Deriving an angle from three points
To: How to use Revolution 
Message-ID: 
Content-Type: text/plain;   charset=us-ascii

40,116
98,186
132,118

How would one determine the angle created from three points, such as  
those above?


Thanks,
Mark



Mark,

Here is how easy this is in Turtle Graphics:

on mouseUp
   startTurtle --Initiates the turtle graphics library
   penup
   setxy 40,116
   pendown
  put direction(98,186) into tStartAngle
  setxy 98,186
  put direction(132,118) into tEndAngle
  setxy 132,118  --Not necessary, but visually satisfying
  put tEndAngle - tStartAngle into dA
  put dA & cr & 360 - da  into msg box
  choose the browse tool
end mouseUP

(Assuming your middle point is the apex of the angle you want.)

To run this you will need the TG library. Run this in the msg box

go url "http://www.jamesphurley.com/jhurleyFolder/TurtleGraphics.rev";

Jim Hurley
___
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: Newbie Data Grid question

2009-12-16 Thread James Hurley

---

Message: 15
Date: Tue, 15 Dec 2009 18:52:52 -0800
From: Jim Ault 
Subject: Re: Newbie Data Grid question
To: How to use Revolution 
Message-ID: 
Content-Type: text/plain;   charset=ISO-8859-1; format=flowed;  
delsp=yes

One valuable technique for understanding the DataGrid inner workings.

In Rev, choose the pointer tool, click on a data grid, then go the
inspector, choose 'custom properties' from the drop down,

and now check out the property sets.  You should see dgProps and  
dgCache

Note all the properties that have been created when the data grid was
created.
Of course you can edit the values here, but you can also change them
in script lines.

One bit of confusion for me is that there is no dgText property set
visible here.  The syntax

set the dgText [ true ] of group "DataGrid"  to tHeaders

would logically mean that there would be a custom property set  
"dgText"


Interesting if you click on dgProps "row template" you will see:
group id 1011 of card id 1010 of stack "Data Grid Templates
1260751174078"

...at least in my version of Rev 3.5

Hope this helps in your travels.

Jim Ault
Las Vegas



Jim,

Thanks for this. I tried this, hoping for the same insight you  
discovered, but I don't see anything in the custom property set.


Are you looking at the dgProps of the data grid group?

Jim
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Saving standalone substacks

2009-12-16 Thread James Hurley


Message: 23
Date: Wed, 16 Dec 2009 13:53:00 +0800
From: Kay C Lan 
Subject: Re: Saving standalone substacks
To: How to use Revolution 
Message-ID:

Content-Type: text/plain; charset=ISO-8859-1

You might try here:

http://revjournal.com/tutorials/saving_data_in_revolution.html

HTH

On Wed, Dec 16, 2009 at 1:05 PM, James Hurley >wrote:


Is there a tutorial someplace on saving data in the standalone  
substacks?


Jim Hurley


Kay,

Thanks. As always, Sarah to the rescue.

Actually, I had recalled that the splash screen was the way to go.
My question is really quite primitive. When the user quits, or just  
wants to save the substacks, what is the action plan, specifically,  
what is the code? Save.the substacks name. Is a file path  
required? Like I said, my question is quite primitive.


Jim Hurley
___
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 IDE vs MetaCard IDE

2009-12-16 Thread Richmond Mathewson

On 16/12/2009 11:48, Ryno Swart wrote:
I seem to have the uncanny ability to break anything... the MIDA$ 
touch. I cannot download the MetaCard IDE successfully.


The message "Sorry, but this version of the IDE requires engine 
>=3.x!" appears. My version of Rev is 2.8.1 build 470. Any suggestions?




Yes, but probably not one you will like:

Upgrade your version of RunRev 4.
___
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: Bug

2009-12-16 Thread Scott Rossi
Recently, Mark Schonewille wrote:

> On any version of Mac OS X with any version of Revolution from 2.2 up
> to and including 4.0, create a new stack, with one square button, e.g.
> 70x70 pixels (size doesn't matter). Give this button the following
> script:
> 
> on mouseDown
>   repeat until the mouse is up with messages
>set the loc of me to the mouseLoc
>wait 0 millisecs with messages
>   end repeat
> end mouseDown
> 
> Turn off the autoHilite and, just to be sure, the sharedHilite. Click
> the button and move it around. The button will appear hilited, which I
> don't want, because I need to be able to control the hilite myself,
> while dragging around this button. That's also a reason why I can't
> use the locking-up drag command. All other solutions you and I can
> think of fail too.

Maybe I'm missing something.  Over here, using the above on OS X 10.6.2, the
button doesn't hilite, using Rev 4 or Rev 3.5.  Tried buttons that are
square and rectangular.  No difference.

Regards,

Scott Rossi
Creative Director
Tactile Media, Multimedia & Design


___
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: Deriving an angle from three points

2009-12-16 Thread Mark Swindell

On Dec 15, 2009, at 10:35 PM, Mark Wieder wrote:

> Mark-
> 
> Tuesday, December 15, 2009, 10:21:47 PM, you wrote:
> 
>> 40,116
>> 98,186
>> 132,118
> 
>> How would one determine the angle created from three points, such as those 
>> above?
> 
> There are three angles. Which one are you interested in?
> 
> — 

The above represents roughly a V shape with the center point the vertex.  I was 
trying to detemine the internal angle.

___
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: interrupting a repeat loop

2009-12-16 Thread Andre Garzia
Hi Alex,

We all love tail recursion optimizations!
Thanks for the code!

Cheers
andre

On Tue, Dec 15, 2009 at 10:09 PM, Alex Tweedly  wrote:

> Andre Garzia wrote:
>
>> Hi Folks,
>>
>> this been answered in many ways already but I thought I'd chime in and try
>> to answer it in a different way. The key is to think of reusable code,
>> every
>> now and them we keep rewritting the same pieces over and over again. How
>> do
>> we create a generic thing that will:
>>
>> 1) Run some code in a loop
>> 2) Enable us to stop this execution when something happen
>>
>> If speed is not the main issue here, then we can approach this with a more
>> flexible way by creating a group of functions that will enable a generic
>> handler to be executed until something else make it stop. We will use the
>> new dispatch calls for that.
>>
>> command iterate pHandlerToLoop, pHandlerThatInterrupts
>>   dispatch pHandlerThatInterrupts
>>   if the result is true then
>>  dispatch pHandlerToLoop
>>  if the result is true then
>> dispatch iterate with pHandlerToLoop, pHandlerThatInterrupts
>>  end if
>>   end if
>> end iterate
>>
>> This code will first call a command to check if the loop should be
>> executed,
>> this command should return true or false. If it is true then it will call
>> the loop command once and if the loop command returned true, it will call
>> itself again. This code will loop and will exit the loop if any of two
>> things happen, the command that interrupts return false or the command
>> that
>> loops return false, for example, let us count to ten using this code:
>>
>>
>>
> Nice. But as George said, you will hit recursion limits.
>
> And the dispatch to iterate (i.e. to itself) is a simple tail recursion -
> which you can eliminate easily.
>
> AFAICT, this is equivalent and has no recursion issues.
>
>> command iterate pHandlerToLoop, pHandlerThatInterrupts
>>   repeat forever
>>  dispatch pHandlerThatInterrupts
>>  if the result is false then exit iterate
>>  dispatch pHandlerToLoop
>>  if the result is false then exit iterate
>>   end repeat
>> end iterate
>>
>
>
> -- Alex.
>
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>



-- 
http://www.andregarzia.com All We Do Is Code.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: type font size in dictionary

2009-12-16 Thread Björnke von Gierke


On 16 Dec 2009, at 04:58, Kay C Lan wrote:



The easier way is, to use my bvg docu stack, where you can set text  
sizes

in the settings:

http://bjoernke.com/?target=bvgdocu


Does this incorporate the User Contributed Notes? - They're slowly  
growing

and important to an occasional programmer like me!


Short answer: No

Long Answer: Unfortunately, RunRev has still not given any public  
access to the user notes, despite promising such a feature when i  
asked in spring. Similar goes the online stored documentation. I could  
of course get them by looking trough the rev dictionary stack code,  
but currently bvg docu 2 is not the main focus of my available time,  
sorry.


Have fun (nonetheless)
Björnke

--

official ChatRev page:
http://bjoernke.com?target=chatrev

Chat with other RunRev developers:
go stack URL "http://bjoernke.com/chatrev/chatrev1.3b3.rev";

___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Bug

2009-12-16 Thread Mark Schonewille

Hi,

On any version of Mac OS X with any version of Revolution from 2.2 up  
to and including 4.0, create a new stack, with one square button, e.g.  
70x70 pixels (size doesn't matter). Give this button the following  
script:


on mouseDown
 repeat until the mouse is up with messages
  set the loc of me to the mouseLoc
  wait 0 millisecs with messages
 end repeat
end mouseDown

Turn off the autoHilite and, just to be sure, the sharedHilite. Click  
the button and move it around. The button will appear hilited, which I  
don't want, because I need to be able to control the hilite myself,  
while dragging around this button. That's also a reason why I can't  
use the locking-up drag command. All other solutions you and I can  
think of fail too.


For many years now, I keep running into this bug, whenever I try to  
quickly create a nice interface (something RunRev is supposed to be  
the ideal tool for).


When is this ridiculous and annoying bug finally going to be fixed?!

--
Best regards,

Mark Schonewille

Economy-x-Talk Consulting and Software Engineering
Homepage: http://economy-x-talk.com
Twitter: http://twitter.com/xtalkprogrammer

Full PayPal integration and automation in web site or (Revolution/ 
SuperCard/other) software. Contact me for a quote

http://economy-x-talk.com/contact.html

___
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: Datagrid: Edit a cell to update the rest of cells

2009-12-16 Thread JosepM

Reply to myself... :)

SetDataOfIndex the dgIndex of me, "Col X",  

Salut,
Josep
-- 
View this message in context: 
http://n4.nabble.com/Datagrid-Edit-a-cell-to-update-the-rest-of-cells-tp965161p965163.html
Sent from the Revolution - User mailing list archive at Nabble.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


Datagrid: Edit a cell to update the rest of cells

2009-12-16 Thread JosepM

Hi,

I have a problem. I need, after edit the value of a cell, update de values
of the rest of cells of the row. I enter one value, check the database and
fill other cells in the row.

It's posible? I have a "datagrid_behavior" with the CloseFieldEditor where I
can check the database and get the values, but how to put the values into
other cells?


Salut and Merry Xmas for all,
Josep  
-- 
View this message in context: 
http://n4.nabble.com/Datagrid-Edit-a-cell-to-update-the-rest-of-cells-tp965161p965161.html
Sent from the Revolution - User mailing list archive at Nabble.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: Deriving an angle from three points

2009-12-16 Thread Pierre Sahores

Hi Friends,

Did'nt follow all the present thread so don't know if this can help  
but in case, here is the general  way i would use to process such  
tasks :



on mouseUp
   set the style of the templateGraphic to "polygon"
   set the opaque of the templateGraphic to "true"
   set the filled of the templateGraphic to "true"
   set the backgroundcolor of templateGraphic to "blue" # or what  
ever color you choose instead
   set the textcolor of templateGraphic to "blue"  # or what ever  
color you choose instead


   if there is a grc "new_grc"
   then delete grc "new_grc"
   create grc "new_grc"
   ask "How many sectors do you want to display"
   if it is not "" then put it into secteurs_nb
   else exit to top

   # random example values you will have to replace with the real  
values you want to display


   put "" into les_valeurs33
   repeat with c = 1 to secteurs_nb
  put -1+random(2) & return & return after les_valeurs33
   end repeat
   put char 1 to -3 of les_valeurs33 into les_valeurs33

   put -40+the height of this cd into graph_diametre
   put graph_diametre div 2 into graph_rayon
   put the width of this cd div 2 into x1
   put the height of this cd div 2 into y1

   put 2*pi / secteurs_nb into langle
   put langle / 2 into langlecalcule
   repeat with c = 1 to secteurs_nb
  put cos((x1*2*pi) + langlecalcule)  & "," after the_cos_1
  put sin((y1*2*pi) + langlecalcule) & "," after the_sin_1
  add langle to langlecalcule
   end repeat
   put the_cos_1 after the_cos_1
   put the_sin_1 after the_sin_1

   put pi / secteurs_nb into langle
   put "0" into langlecalcule
   repeat with c = 1 to 2*secteurs_nb
  put cos((x1*2*pi) + langlecalcule)  & "," after the_cos_2
  put sin((y1*2*pi) + langlecalcule) & "," after the_sin_2
  add langle to langlecalcule
   end repeat
   put the_cos_2 after the_cos_2
   put the_sin_2 after the_sin_2

   # draw the graphic

   set the points of grc "new_grc" to  
points_cosin 
(secteurs_nb 
,les_valeurs33 
,x1,y1,the_cos_1,the_sin_1,the_cos_2,the_sin_2,graph_rayon)

end mouseUp

function points_cosin  
secteurs_nb 
,les_valeurs,x1,y1,the_cos_1,the_sin_1,the_cos_2,the_sin_2,graph_rayon

   put "" into points_nb
   put "0" into d
   repeat with c = 1 to 2*secteurs_nb
  put (1 / 11) + ((line c of les_valeurs*10) / 11) into  
active_rayon

  if c mod 2 = 1 then
 add 1 to d
 put x1 & "," & y1 & return & round(x1-(item c of  
the_cos_2*active_rayon*graph_rayon)),round(y1-(item c of  
the_sin_2*active_rayon*graph_rayon)) & return & \
 round(x1-(item d of  
the_cos_1*active_rayon*graph_rayon)),round(y1-(item d of  
the_sin_1*active_rayon*graph_rayon)) & return & \
 round(x1-(item 2+c of  
the_cos_2*active_rayon*graph_rayon)),round(y1-(item 2+c of  
the_sin_2*active_rayon*graph_rayon)) & return after points_nb
  else put x1 & "," & y1 & return & round(x1-(item c of  
the_cos_2*active_rayon*graph_rayon)),round(y1-(item c of  
the_sin_2*active_rayon*graph_rayon)) & return & \
  round(x1-(item 2+c of  
the_cos_2*active_rayon*graph_rayon)),round(y1-(item 2+c of  
the_sin_2*active_rayon*graph_rayon)) & return after points_nb

  add 1 to c
   end repeat
   return points_nb & line 1 of points_nb
end points_cosin


just put this script inside a new stack's button and run it to display  
the "new_graph" test graph. Just tested and seems to work fine there.


Have fun !

Pierre


Le 16 déc. 09 à 11:56, Jacques Hausser a écrit :


I really should re-read my mails before sending them :-(
I cannot copy and paste scripts directly into mails (I don't know  
why) so I rewrite them... with bugs !


in function calcangle the line

if SurfaceTriangle (a,c,b) then

should be

if SurfaceTriangle(a,c,b) > 0 then

... but you corrected it already !

Jacques-in-the-moon

**
Prof. Jacques Hausser
Department of Ecology and Evolution
Biophore / Sorge
University of Lausanne
CH 1015 Lausanne
please use my private address:
6 route de Burtigny
CH-1269 Bassins
tel/fax:++ 41 22 366 19 40
mobile: ++ 41 79 757 05 24
E-Mail: jacques.haus...@unil.ch
***

___
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



--
Pierre Sahores
mobile : (33) 6 03 95 77 70

www.wrds.com
www.sahores-conseil.com






___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


VS: How do I construct a scroll bar for stack larger than screen

2009-12-16 Thread Kresten Bjerg
9 separate

scrolling windows on the desktop !

Kresten

___
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: Deriving an angle from three points

2009-12-16 Thread Jacques Hausser
I really should re-read my mails before sending them :-(
I cannot copy and paste scripts directly into mails (I don't know why) so I 
rewrite them... with bugs !

in function calcangle the line

if SurfaceTriangle (a,c,b) then

should be

if SurfaceTriangle(a,c,b) > 0 then

... but you corrected it already !

Jacques-in-the-moon

**
Prof. Jacques Hausser
Department of Ecology and Evolution
Biophore / Sorge
University of Lausanne
CH 1015 Lausanne
please use my private address:
6 route de Burtigny
CH-1269 Bassins
tel/fax:++ 41 22 366 19 40
mobile: ++ 41 79 757 05 24
E-Mail: jacques.haus...@unil.ch
***

___
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: Newbie Data Grid question

2009-12-16 Thread Andre.Bisseret

Bonjour,

Le 16 déc. 09 à 06:12, Trevor DeVore a écrit :


On Dec 16, 2009, at 12:04 AM, James Hurley wrote:

It's okay, the Data Grid likes to be beta up on once and a while :-)


As long as this is still in Beta, may I make a suggestion?


Sorry, that was supposed to be "beat" not "beta".


:-o))


(Does anyone ever let the possibility of the answer be "no" stop  
them?)

I had assumed when I saw the following code in the guide:

 put field "data" into tData
 put true into pFirstLineContainsHeaders
 set the dgText [ pFirstLineContainsHeaders ] of group "DataGrid 2"  
to tData


I assumed that  the data grid would function in much the same way  
that FileMaker does when importing an Excel file, i.e. it allows  
one to assign the items in the first line of the file to field  
names and the rest of the llines to populate these fields. That  
would be a reasonable behavior of  
"dgText[pFirstLineContainsHeaders]" il.e. when the parameter is  
true, the column headings are taken from the first line of the text  
field and the rest go into filling the columns.


I must confess that I interpreted this code in the same way
in particular, I think, because this phrase "If true then the data  
grid will extract the first line of pText …"



The first line is only used to tell the data grid which columns to  
map the rest of the data to. If you want to create columns then you  
will need to set the dgProp["columns"] property.

That's OK for me now, Trevor :-)
Might be nice to elaborate a bit in this lesson to prevent from this  
misinterpretation.


Best regards from Grenoble

André



You can't really use multiple parameters when using setProp (which  
is what dgText is). I'm kind of fudging things a bit by treating  
dgText as a custom property set and pFirstLineContainsHeaders as the  
custom property. The truth is we still don't have access to a very  
expressive syntax when creating custom controls (which the Data Grid  
is one).


--
Trevor DeVore
Blue Mango Learning Systems
ScreenSteps: http://www.screensteps.com
Releasable Revolution Resources for Developers: 
http://revolution.bluemangolearning.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your  
subscription preferences:

http://lists.runrev.com/mailman/listinfo/use-revolution




___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Deriving an angle from three points

2009-12-16 Thread gmccarthy

By the way again, Mark's method is also correct if you fix the variable names
as shown below.
Normally a triangle with points ABC have their sides named with side b
between A and C so it is opposite angle B...etc.

on mouseUp
   put cd fld "A" into pointA
   put cd fld "B" into pointB -- assumed center of angle
   put cd fld "C" into pointC
   -- 
   -- get the lengths of the three sides of the triangle
   put SideLength(pointA, pointB) into lengthC
   put SideLength(pointB, pointC) into lengthA
   put SideLength(pointA, pointC) into lengthB
   
   --calculate the angle as arccos( (b2+c2-a2) / 2bc)
   --the other two angles are arccos( (a2+c2-b2) / 2ac)
   -- and arccos( (a2+b2-c2) / 2ab)
   put (lengthA * lengthA) + (lengthC * lengthC) - (lengthB * lengthB) into
tSub
   put acos(tSub / (2 * lengthA * lengthC))  into tRadians
   put (tRadians * 180 / pi) into cd fld "AngleABC"-- convert from radians
to degrees
end mouseUp

-- calculate (x2-x1)^2 + (y2-y1)^2
-- return the square root of that
function SideLength pPointA, pPointB
local lengthX, lengthY
   
set the itemdelimiter to comma
put item 1 of pPointB - item 1 of pPointA into lengthX
put lengthX * lengthX into lengthX -- x squared
put item 2 of pPointB - item 2 of pPointA into lengthY
put lengthY * lengthY into lengthY -- y squared
return sqrt(lengthX + lengthY) -- length of hypotenuse
end SideLength 
-- 
View this message in context: 
http://n4.nabble.com/Deriving-an-angle-from-three-points-tp964930p965059.html
Sent from the Revolution - User mailing list archive at Nabble.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: Deriving an angle from three points

2009-12-16 Thread gmccarthy

What about getting the angle from point B to A, then the angle from point B
to C, then getting the difference:

on mouseUp
   put cd fld "A" into pointA
   put cd fld "B" into pointB -- assumed center of angle
   put cd fld "C" into pointC
   -- 
   put fGetAngle(pointB, pointA) into angleA
   put fGetAngle(pointB, pointC) into angleC
   if angleC > angleA then
  put angleC - angleA into cd fld "AngleABC"
   else
  put angleA - angleC into cd fld "AngleABC"
   end if
end mouseUp 

function fGetAngle pPoint1, pPoint2
   --angle anticlockwise from X axis
   return atan2(item 2 of pPoint2 - item 2 of pPoint1,item 1 of pPoint2 -
item 1 of pPoint1) * 180 / pi
end fGetAngle 


See atan2 in the dictionary.
By the way, this gives 66.209226 for the angle.

As a test for known angles, try
250,250
200,200
100,373
This is for angles of 45 degrees and 120 degrees.
you should get 75 degrees as your answer.
-- 
View this message in context: 
http://n4.nabble.com/Deriving-an-angle-from-three-points-tp964930p965051.html
Sent from the Revolution - User mailing list archive at Nabble.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 IDE vs MetaCard IDE

2009-12-16 Thread Ryno Swart
I seem to have the uncanny ability to break anything... the MIDA$  
touch. I cannot download the MetaCard IDE successfully.


The message "Sorry, but this version of the IDE requires engine  
>=3.x!" appears. My version of Rev is 2.8.1 build 470. Any suggestions?


Ryno.
___
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: Shortcut for resizing a selected object ?

2009-12-16 Thread zryip theSlug
Hi Richard,

How ?
Try this 8) :

on rawkeyDown theKey
   if (the altKey is down) and (theKey >= 65361) and (theKey <= 65364)
then -- only if alt key is pressed when using arrow key
  put the selectedObjects into objectsList -- keep in memory the
list of objects to resize
  get number of lines of objectsList
  if it > 0 then
 repeat with x = 1 to it -- a loop to resize all the objects in the list
resizeObject line x of the selectedObjects,theKey
 end repeat
  end if
   else
  pass rawkeyDown
   end if
end rawkeyDown

on resizeObject theObject,theKey
   do "get rect of" && theObject
   put numKey2Const(theKey) into direction
   put getStep(direction,the shiftKey is down) into myStep -- step = 1
pixel or 5 pixels when the shift key is down
   add myStep to item numKey2rectItem(direction) of it
   do "set rect of" && (theObject) && "to it"
end resizeObject

function numKey2Const valueKey
   -- Not necessary but usefull to not keep in mind 65361 when I
search my left. 8)
  switch valueKey
  case 65361
 return "left"
  case 65362
 return "up"
  case 65363
 return "right"
  case 65364
 return "down"
  default
 return ""
   end switch
end numKey2Const

function numKey2rectItem direction
   if (direction is in "left,right") then
  return 3
   else
  return 4
   end if
end numKey2rectItem

function getStep direction,shiftFlag
   if (direction is in "left,up") then
  put -1 into myStep -- reduce the size of the object
   else
  put 1 into myStep -- grow up the size of the object
   end if
   if shiftFlag then put (myStep * 5) into myStep
   return myStep
end getStep

-Zryip TheSlug- wish you the best ! 8)

2009/12/16 Richard Gaskin 

I use this feature in Fireworks and other tools that let you
select a single bounds handle, but how would this work in Rev (or HC
for that matter, since it used the "marching ants" marquee to indicate
selection)?
___
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: Deriving an angle from three points

2009-12-16 Thread Mark Wieder
Mark-

Tuesday, December 15, 2009, 10:21:47 PM, you wrote:

> 40,116
> 98,186
> 132,118

> How would one determine the angle created from three points, such as those 
> above?

If I can assume that (98,186) is the center of the angle, then you can
calculate the angle (actually all three angles) from the lengths of
the three sides of the triangle:

on mouseUp
local pointA, pointB, pointC
local lengthA, lengthB, lengthC
local tSub
local tRadians

put "40,116" into pointA
put "98,186" into pointB -- assumed center of angle
put "132,118" into pointC

-- get the lengths of the three sides of the triangle
put SideLength(pointA, pointB) into lengthA
put SideLength(pointB, pointC) into lengthB
put SideLength(pointA, pointC) into lengthC

--calculate the angle as arccos( (b2+c2-a2) / 2bc)
--the other two angles are arccos( (a2+c2-b2) / 2ac)
-- and arccos( (a2+b2-c2) / 2ab)
put (lengthB * lengthB) + (lengthC * lengthC) - (lengthA * lengthA) into 
tSub
put acos(tSub / (2 * lengthB * lengthC))  into tRadians
put tRadians * 180 / pi -- convert from radians to degrees
end mouseUp

-- calculate (x2-x1)^2 + (y2-y1)^2
-- return the square root of that
function SideLength pPointA, pPointB
local lengthX, lengthY

set the itemdelimiter to comma
put item 1 of pPointB - item 1 of pPointA into lengthX
put lengthX * lengthX into lengthX -- x squared
put item 2 of pPointB - item 2 of pPointA into lengthY
put lengthY * lengthY into lengthY -- y squared
return sqrt(lengthX + lengthY) -- length of hypotenuse
end SideLength

...and I come up with 64.680313 degrees.

-- 
-Mark Wieder
 mwie...@ahsoftware.net

___
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: Deriving an angle from three points

2009-12-16 Thread Jacques Hausser
As usual, I forgot something... Distance is merely this brave old Pythagora:

function Distance a,b
   --
   -- a,b : points
   -- returns distance (real) between a and b
   --
   return sqrt((item 1 of a - item 1 of b)^2 + (item 2 of a - item 2 of b)^2)
end distance

Jacques


Le 16 déc. 2009 à 09:47, Jacques Hausser a écrit :

>> 
>> On 12/15/09 10:21 PM, Mark Swindell wrote:
>>> 40,116
>>> 98,186
>>> 132,118
>>> 
>>> How would one determine the angle created from three points, such as those 
>>> above?
> 
> Hi Mark,
> 
> I'm using the following handlers. SurfaceTriangle is used to determine if you 
> compute the outer (>180) or inner angle with summit c in calcangle.
> 
> HTH
> 
> Jacques
> 
> function SurfaceTriangle a,c,b
>   --
>   -- a,c,b: points
>   -- returns twice the surface of triangle a,c,b
>   -- the result is signed, positive if points follow each other clockwise,
>   -- negative otherwise.
>   -- aligned points return zero.
>   --
>   put ((item 1 of c - item 1 of a)*(item 2 of b - item 2 of a)\
>   - (item 1 of b - item 1 of a)*(item 2 of c - item 2 of a)) into aire
>   return aire
> end SurfaceTriangle
> 
> function calcAngle a,c,b
>   --
>   -- a,c,b : points. 
>   -- returns angle between ca and cb in degrees
>   --
>   put Distance(c,b) into da
>   put Distance(a,c) into db
>   put Distance(a,b) into dc
>   put (da + db + dc)/2 into p
>   put sqrt(p*(p-dc)/(db*da)) into lecos
>   if lecos > 1 then put 1 into lecos
>   if lecos < -1 then put -1 into lecos
>   put acos(lecos) * 180 / pi into alpha
>   put 2 * alpha into alpha
>   if SurfaceTriangle(a,c,b) then
>  return alpha
>   else
>  return 360-alpha
>   end if
> end calcAngle
> 
> ___
> 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

**
Prof. Jacques Hausser
Department of Ecology and Evolution
Biophore / Sorge
University of Lausanne
CH 1015 Lausanne
please use my private address:
6 route de Burtigny
CH-1269 Bassins
tel/fax:++ 41 22 366 19 40
mobile: ++ 41 79 757 05 24
E-Mail: jacques.haus...@unil.ch
***

___
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: Deriving an angle from three points

2009-12-16 Thread Jacques Hausser
> 
> On 12/15/09 10:21 PM, Mark Swindell wrote:
>> 40,116
>> 98,186
>> 132,118
>> 
>> How would one determine the angle created from three points, such as those 
>> above?

Hi Mark,

I'm using the following handlers. SurfaceTriangle is used to determine if you 
compute the outer (>180) or inner angle with summit c in calcangle.

HTH

Jacques

function SurfaceTriangle a,c,b
   --
   -- a,c,b: points
   -- returns twice the surface of triangle a,c,b
   -- the result is signed, positive if points follow each other clockwise,
   -- negative otherwise.
   -- aligned points return zero.
   --
   put ((item 1 of c - item 1 of a)*(item 2 of b - item 2 of a)\
   - (item 1 of b - item 1 of a)*(item 2 of c - item 2 of a)) into aire
   return aire
end SurfaceTriangle

function calcAngle a,c,b
   --
   -- a,c,b : points. 
   -- returns angle between ca and cb in degrees
   --
   put Distance(c,b) into da
   put Distance(a,c) into db
   put Distance(a,b) into dc
   put (da + db + dc)/2 into p
   put sqrt(p*(p-dc)/(db*da)) into lecos
   if lecos > 1 then put 1 into lecos
   if lecos < -1 then put -1 into lecos
   put acos(lecos) * 180 / pi into alpha
   put 2 * alpha into alpha
   if SurfaceTriangle(a,c,b) then
  return alpha
   else
  return 360-alpha
   end if
end calcAngle

___
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