Re: "Helper Application"?

2009-10-03 Thread Richard Gaskin

Bruce Robertson wrote:


Richard Gaskin wrote:

The RevTalk Dictionary entry for the "environment" function lists
"helper application" as one of the possible values the function can return:

   If the environment function returns "helper application",
   Revolution is running as a helper application, configured
   by a web browser to display web-based content.

...

I've used Rev standalones as helper apps before, but IIRC the app just
gets an odoc event when the browser hands it a stack, and the engine
doesm't bother to notice whether it was handed the stack from a browser
or the Finder.

I suspect this may be a holdover from the olden MC days when it was
Unix-only.  Would be nice if there was a way a standalone could
distinguish how it was launched, though.  There's a world of
opportunities still unexploited with helper apps


Yup. Take this technique, and point the custom URL to your Rev app. I'm
doing it with FileMaker.




Thanks vor the link.  That's a much better article than the one I got 
started with. :)  I've been using that plist method for OS X, but the 
the mention of "helper application" as a value returned by "the 
environment" in the Rev Dictionary mystified me, so I finally tested 
that function out and see what happens:


As I'd guessed, when a standalone is launched by a browser on both OS X 
and Windows, "the environment" returns "standalone application" and not 
"helper application".


This distinction was probably based on some Unix-specific oddity from 
the mid-90s when "the environment" was added to the engine.  In the 
modern world, apparently a standalone has no way of telling whether it 
was launched by the Finder/Explorer, or a browser.


Filed as RQCC #8322:


--
 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
___
use-revolution mailing list
use-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: Graphic text and border colour

2009-10-03 Thread Richmond Mathewson

Here's a "baby way" to get a graphic object with
a coloured text and a different coloured
'border' (note the single quotes):

1. Make a new Graphic Object.

2. Set its border width to 0 (yes, really),

3. Crack open my plug-in:

 http://mathewson.110mb.com/FILEZ/XPROPS.rev.zip

and set up a Label Text, set the showName to true

or, do it with code.

4. Select a colour for the label text.

5. Open up the Graphic Effects palette within
   the Properties Palette for your graphic object:

  Check "Outer Glow"

 Select the colour you want for your 'border'

 Massage the settings to get a border effect.

[I went for Opacity: 255, Spread: 119, Size: 5]

Not rocket science but a lot quicker and easier than
the extremely clever stuff with STROKE>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Scenario

2009-10-03 Thread Javier Miranda V.
Hi amigos, I would like to describe an scenario.  If you can, please  
outline how it can be resolved using Revolution:


I would like co-workers (initially in the LAN), fill a variety of  
forms, that later can be retrieved, searched, printed etc.  I believe  
that connecting Revolution with a database manager using ODBC is the  
way to go, but how stack will be opened in the LAN simultaneously by  
more than one user?.  In one machine I may have to put the stack  
connected to the database manager, and in each of the clients machine  
a stack connected to the RR stack in the server? or maybe each client  
should connect to the DB?.  Scale this to reach the data thru Internet  
would be fabulous but for now working in the LAN would be sufficient.


Hope all this make sense and you can give me a clue, you may have  
noticed that I´m really lost with this.


Saludos,




Javier___
use-revolution mailing list
use-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: Scenario

2009-10-03 Thread George C Brackett
One way to do this is to make your stack a standalone client  
application which you distribute to your co-workers. If the standalone  
connects to any of the standard databases -- MySQL, PostgreSQL, etc.  
-- the database will handle the multiple connections for you so that  
nobody overwrites someone else's data.  To communicate with the  
database you might use Trevor Devore's new SQL Yoga library ($ from  
RevSelect) or his earlier free libDatabase (http://www.bluemangolearning.com/revolution/software/libraries/libdatabase/ 
).  The client application could also use the database connection to  
retrieve and display the current data.


George

On Oct 3, 2009, at 10:22 AM, Javier Miranda V. wrote:

Hi amigos, I would like to describe an scenario.  If you can, please  
outline how it can be resolved using Revolution:


I would like co-workers (initially in the LAN), fill a variety of  
forms, that later can be retrieved, searched, printed etc.  I believe  
that connecting Revolution with a database manager using ODBC is the  
way to go, but how stack will be opened in the LAN simultaneously by  
more than one user?.  In one machine I may have to put the stack  
connected to the database manager, and in each of the clients machine  
a stack connected to the RR stack in the server? or maybe each client  
should connect to the DB?.  Scale this to reach the data thru Internet  
would be fabulous but for now working in the LAN would be sufficient.


Hope all this make sense and you can give me a clue, you may have  
noticed that I´m really lost with this.


Saludos,




Javier___
use-revolution mailing list
use-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: Smoothing a curve

2009-10-03 Thread Hugh Senior
Hello Francois,

I think we need a RevCoding mathematician! I struggle with elementary
mathematics, let alone polynomial tangent functions!

/H

Le 2 oct. 09 ` 19:15, Hugh Senior a icrit :

>
> I am also trying to plot a curved line through coordinate points, so a
> Bezier curve is not an appropriate route as it intentionally misses
> the
> coordinate point. Similarly, with potentially big distances between
> points,
> how 'smooth' is 'smooth'? A sharp, angular curve at each point or a
> more
> flattened, rounded curve? And this assumes that no curve is
> possible at all
> for the first and last points because there is no way of knowing
> the shape
> at all.
>
> One math guru I spoke to said it's not doable with coordinate data
> anyway,
> only statistical data. I hope he is incorrect.

IF the Bezier curve is a function y=f(x) of the horizontal pixel
number N, the the best you can on screen (or printer fror that
matter) do is draw a line (hopefully anti aliased) from each point
(x,integer((f(x))) to point (x+1,integer(f(x+1))). f is a polynomial.

To manage the general case, you can search for the mathematical (i.e.
maybe non integer) points at which the tangent of the curves is
vertical.

Best regards,
Frangois

___
use-revolution mailing list
use-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: Practical limits on object counts

2009-10-03 Thread Richard Gaskin

Paul Foraker wrote:

> On Fri, Oct 2, 2009 at 5:44 PM, Richard Gaskin
>  wrote:
>> Have any of you worked on stacks with an insane number of objects
>> on a card (>5,000)?
>>
>> What issues did you encounter?
>
> I have a bead pattern generator that dynamically clones a small
> graphic to produce 4,634 of them arranged according to dimensions and
> patterns set by the user. There are also some fields and buttons,
> bringing the total number of controls to 4,646. It takes about 2
> seconds to render on an iMac with the screen locked. When you mouse
> down on the inspection arrow in the Property Inspector, you get a
> disabled item: "Too many controls to display [4646]". There aren't too
> many fields or buttons to display, but it doesn't care. :)

Maybe it meant "Too many for the IDE to display", since it seems the 
engine is fine. :)


I wonder exactly what their threshold is for "too many", and how they 
arrived at it when they wrote their IDE.


The more I played around with my tests, the more I see a very dramatic 
difference in responsiveness beyond a certain threshold somewhere beyond 
6,000 objects.  I haven't yet pinned it down exactly, but definitely 
10,000 is beyond acceptable for most uses, so it's somewhere between 6k 
and 9k.


The difference between 6k and 9k objects is so dramatic that I have to 
wonder if there's some aspect of how the engine's memory mapping or 
object hashes were written that may play a role in the sharp performance 
degradation.


I dunno.  I just know not to try working with 9k objects. ;)

--
 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
___
use-revolution mailing list
use-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: set the textStyle to not bold

2009-10-03 Thread Beat Cornaz

> Craig wrote :
>The proffered scripts all necessitate that the original text,  
likely from a

>field, be manHandled word by word.

>This is because text in a variable does not retain the textStyle of  
the
>source. But don't I remember that there is a way, or a gadget, that  
holds the
>style along with the raw text? The only reason it might matter is  
speed; a
>lot of getting and setting goes on in the solutions offered. It  
might be worth

>it to put massive amounts of text in a variable and process there,
>returning the new styled text to the field in one put.

>Seems like I saw this somewhere...


>then Paul wrote :

>This would be a way to follow Craig's suggestion:

  > put the htmlText of fld 1 into temp
   >replace "" with "" in temp
>   replace "" with "" in temp
 >  set the htmlText of fld 1 to temp


I didn't really think in the HTML direction, because speed in my case  
is of absolutely no importance. I guess the little pitfall I pointed  
out above also applies to this script. I was originally thinking of  
checking and setting the textStyle of each char (like Devin and Paul  
did on words level). Then I hoped there would be a cleaner way.


Cheers, Beat
___
use-revolution mailing list
use-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: set the textStyle to not bold

2009-10-03 Thread Beat Cornaz

>Devin wrote :
>repeat with i = 1 to the number of words in fld "thefield"
>   get the textStyle of word i of fld "thefield"
>   if it contains "bold" then
>replace "bold" with empty in it
> replace ",bold" with empty in it
> replace "bold," with empty in it
> set the textStyle of word i of fld "thefield" to it
>   end if
>end repeat

Thanks Devin, it works partly.
 First I added 2 lines which actually do the same as yours intended,  
but did not work (maybe I should have set the wholematches to true).
Anyway, the principle works in so far that sometimes I get 'mixed' as  
TextStyle (in case of 'link' text). I also need to come up with  
something for the empty spaces between the words. Sometimes the 'box'  
style (which I actually use instead of bold) does not get removed  
between words.


repeat with i = 1 to the number of words in fld "A"
   get the textStyle of word i of fld "A"
   if it contains "bold" then
 replace "bold" with empty in it
 if char 1 of it = comma then delete char 1 of it
  if char -1 of it = comma then delete char -1 of it
 set the textStyle of word i of fld "A" to it
   end if
end repeat

>Paul wrote :

I replaced 'bold' with 'box' as it also shows better if it has not  
been removed from the spaces between words


>repeat with i = 1 to the number of words in fld "A"
> get the textStyle of word i of fld "A"
> if it contains "box" then
>   replace "box" with "plain" in it
>   set the textStyle of word i of fld "A" to it
> end if
>end repeat

Your script works as well as Devin's and also has the same  
'shortcoming' of not removing the style between words.


I tried it out with checking and setting on character level. That  
works for 'bold', but it does NOT work for 'box'. The reason is that  
the textStyle returned from a char which is box and bold and  
underline is only box. So replacing 'box' with plain throws away the  
bold and underline as well.


The solution Devin offered is better in this respect. By replacing  
the 'box' with empty leaves the other style settings untouched  
(although they do not show up in the variable it).


So for the moment I will go for Devin's solution, but on a character  
level.


Thanks,

Beat
___
use-revolution mailing list
use-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: set the textStyle to not bold

2009-10-03 Thread J. Landman Gay

Beat Cornaz wrote:

Your script works as well as Devin's and also has the same 'shortcoming' 
of not removing the style between words.


I haven't tested it, but it seems to me that you don't need to iterate 
through any chunks at all if you replace the entire htmltext as a whole. 
Try someothing like this:


  get the htmltext of fld "A"
  replace "" with empty in it
  replace "" with empty in it
  set the htmltext of fld "A" to it

That should catch all instances regardless of where they are, and would 
be faster than using a repeat loop.


--
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: set the textStyle to not bold

2009-10-03 Thread Paul Foraker
Beat,

The htmlText solution I proposed will also work for boxed text that is also
bold and underline:

Here is some text

You can simply replace the box tags with empty, leaving the underline and
bold. And, it will handle the spaces between words as well.

But, it sounds like you've got something that works for you.

Box is a little strange. Apparently, every style change results in a new,
additional box.

-- Paul
___
use-revolution mailing list
use-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: set the textStyle to not bold

2009-10-03 Thread Richard Gaskin

DunbarX wrote:
The proffered scripts all necessitate that the original text, likely from a 
field, be manHandled word by word.


This is because text in a variable does not retain the textStyle of the 
source. But don't I remember that there is a way, or a gadget, that holds the 
style along with the raw text? The only reason it might matter is speed; a 
lot of getting and setting goes on in the solutions offered. It might be worth 
it to put massive amounts of text in a variable and process there, 
returning the new styled text to the field in one put.


Seems like I saw this somewhere...


As Jacque and others here have pointed out, htmlText is the 
highest-fidelity representation of field contents modifiable by script.


Dr. Raney said that if you ever find a way to do anything in a field 
which is not transferable to another field via htmlText it would be a bug.


Extra bonus points that htmlText is just plain text in a language 
designed for working with text easily.


HtmlText is the with-the-grain solution for modifying style runs in Rev.

Coming from a HC/SuperCard background I was initially prone to habits 
acquired with those other tools, but other tools don't have htmlText 
which Raney added to overcome the limitations of alternatives.


--
 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
___
use-revolution mailing list
use-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: Smoothing a curve

2009-10-03 Thread capellan

Hi All,

Some time ago, i published this stack that shows two
algorithms for smoothing the straight sides of a polygon:

http://www.geocities.com/capellan2000/Two_smooth_polygon_algorithm.zip

This stack implements two polygon smoothing algorithms:
Chaikin and Shemanarev

Here is a screenshot:
http://www.geocities.com/capellan2000/Vector_algorithms.PNG

Hope it is useful.

alejandro


Hugh Senior-2 wrote:
> 
> Hello Francois,
> 
> I think we need a RevCoding mathematician! I struggle with elementary
> mathematics, let alone polynomial tangent functions!
> 
> /H
> 
> Le 2 oct. 09 ` 19:15, Hugh Senior a icrit :
> 
>>
>> I am also trying to plot a curved line through coordinate points, so a
>> Bezier curve is not an appropriate route as it intentionally misses
>> the
>> coordinate point. Similarly, with potentially big distances between
>> points,
>> how 'smooth' is 'smooth'? A sharp, angular curve at each point or a
>> more
>> flattened, rounded curve? And this assumes that no curve is
>> possible at all
>> for the first and last points because there is no way of knowing
>> the shape
>> at all.
>>
>> One math guru I spoke to said it's not doable with coordinate data
>> anyway,
>> only statistical data. I hope he is incorrect.
> 
> IF the Bezier curve is a function y=f(x) of the horizontal pixel
> number N, the the best you can on screen (or printer fror that
> matter) do is draw a line (hopefully anti aliased) from each point
> (x,integer((f(x))) to point (x+1,integer(f(x+1))). f is a polynomial.
> 
> To manage the general case, you can search for the mathematical (i.e.
> maybe non integer) points at which the tangent of the curves is
> vertical.
> 
> Best regards,
>   Frangois
> 
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Re%3A-Smoothing-a-curve-tp25729808p25731511.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: set the textStyle to not bold

2009-10-03 Thread Beat Cornaz

Jacqueline wrote :


Your script works as well as Devin's and also has the same  
'shortcoming'

of not removing the style between words.



>I haven't tested it, but it seems to me that you don't need to iterate
>through any chunks at all if you replace the entire htmltext as a  
whole.

>Try someothing like this:

>   get the htmltext of fld "A"
>   replace "" with empty in it
>   replace "" with empty in it
>   set the htmltext of fld "A" to it

>That should catch all instances regardless of where they are, and  
would

>be faster than using a repeat loop.


How I love this revTalk : there is always a smarter way to do it. I  
will test this out, only tomorrow I'll be out. So first thing monday  
morning.

Thanks, Jacqueline.

best, Beat Cornaz

___
use-revolution mailing list
use-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: Practical limits on object counts

2009-10-03 Thread Phil Davis

Hi Richard,

No time to experiment right now, but I wonder how things would work if 
you grouped the objects and removed the group (bg) from the card, 
letting it float in the netherworld of unplaced backgrounds within the 
stack. Naaahh... I guess you would have to place the group before you 
would have access to its objects, right? Or maybe not.


Just thinking out loud.

Phil


Richard Gaskin wrote:

Paul Foraker wrote:

> On Fri, Oct 2, 2009 at 5:44 PM, Richard Gaskin
>  wrote:
>> Have any of you worked on stacks with an insane number of objects
>> on a card (>5,000)?
>>
>> What issues did you encounter?
>
> I have a bead pattern generator that dynamically clones a small
> graphic to produce 4,634 of them arranged according to dimensions and
> patterns set by the user. There are also some fields and buttons,
> bringing the total number of controls to 4,646. It takes about 2
> seconds to render on an iMac with the screen locked. When you mouse
> down on the inspection arrow in the Property Inspector, you get a
> disabled item: "Too many controls to display [4646]". There aren't too
> many fields or buttons to display, but it doesn't care. :)

Maybe it meant "Too many for the IDE to display", since it seems the 
engine is fine. :)


I wonder exactly what their threshold is for "too many", and how they 
arrived at it when they wrote their IDE.


The more I played around with my tests, the more I see a very dramatic 
difference in responsiveness beyond a certain threshold somewhere 
beyond 6,000 objects.  I haven't yet pinned it down exactly, but 
definitely 10,000 is beyond acceptable for most uses, so it's 
somewhere between 6k and 9k.


The difference between 6k and 9k objects is so dramatic that I have to 
wonder if there's some aspect of how the engine's memory mapping or 
object hashes were written that may play a role in the sharp 
performance degradation.


I dunno.  I just know not to try working with 9k objects. ;)

--


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


Telnet Shell Help

2009-10-03 Thread RevList
I need to write a very small utility that uses Telnet so that I can
connect to a server on port 333 and login with credentials and issue a
specified command recognized by the server.
I can do this manually as follows from the command line on Windows or
Terminal on OS X

Telnet 192.168.168.19 333 
this returns +0 and waits for me to enter my userID, so I enter
MyLoginID 
this returns +0 again and waits for me to enter my password, so I enter
MyPassword 
and this again returns a +0 and another +0 on a new line indicating a
successful entry.  Now all I need to do is enter my command which looks
like this
Put User someuserID 1271 0 newpw 
and this confirms success with a +0
I then enter q 
and I am out of Telnet


So what I would like to do is write a simple Rev utility that will pass
all of the information, but all I can seem to do is to issue the first
line and have no opportunity to enter the login credentials and my special
script

As soon as I issue Shell("Telnet 192.168.168.19 333") it issues the telnet
command and opens the connection on port 333, but immediately after that
closes the connection and returns "Connection closed by foreign host"
Can anyone help me here?  How can I keep the telnet session open so that I
can issue the remaining commands?

Thanks in advance

Stewart


This message and any attachments are intended only for the use of the
individual to whom they are addressed and it may contain information that
is privileged or confidential. If you have received this communication by
mistake, please notify us immediately.


___
use-revolution mailing list
use-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: Practical limits on object counts

2009-10-03 Thread Phil Davis

OK, I lied - I made time to test. I just did this:

on mouseUp
  lock screen
  lock messages
 
  create group "test"

  repeat with x = 1 to 12000
 create btn ("test_" & x) in grp "test"
 if x mod 100 = 0 then put x
  end repeat
  remove grp "test" from this cd
 
  unlock messages

  unlock screen
  beep
end mouseUp


Then I did this in msg:

put the id of button  of bg "test"

... which returned this:
11212

So you CAN access those objects.

Phil




Phil Davis wrote:

Hi Richard,

No time to experiment right now, but I wonder how things would work if 
you grouped the objects and removed the group (bg) from the card, 
letting it float in the netherworld of unplaced backgrounds within the 
stack. Naaahh... I guess you would have to place the group before you 
would have access to its objects, right? Or maybe not.


Just thinking out loud.

Phil


Richard Gaskin wrote:

Paul Foraker wrote:

> On Fri, Oct 2, 2009 at 5:44 PM, Richard Gaskin
>  wrote:
>> Have any of you worked on stacks with an insane number of objects
>> on a card (>5,000)?
>>
>> What issues did you encounter?
>
> I have a bead pattern generator that dynamically clones a small
> graphic to produce 4,634 of them arranged according to dimensions and
> patterns set by the user. There are also some fields and buttons,
> bringing the total number of controls to 4,646. It takes about 2
> seconds to render on an iMac with the screen locked. When you mouse
> down on the inspection arrow in the Property Inspector, you get a
> disabled item: "Too many controls to display [4646]". There aren't too
> many fields or buttons to display, but it doesn't care. :)

Maybe it meant "Too many for the IDE to display", since it seems the 
engine is fine. :)


I wonder exactly what their threshold is for "too many", and how they 
arrived at it when they wrote their IDE.


The more I played around with my tests, the more I see a very 
dramatic difference in responsiveness beyond a certain threshold 
somewhere beyond 6,000 objects.  I haven't yet pinned it down 
exactly, but definitely 10,000 is beyond acceptable for most uses, so 
it's somewhere between 6k and 9k.


The difference between 6k and 9k objects is so dramatic that I have 
to wonder if there's some aspect of how the engine's memory mapping 
or object hashes were written that may play a role in the sharp 
performance degradation.


I dunno.  I just know not to try working with 9k objects. ;)

--




--
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: Practical limits on object counts

2009-10-03 Thread Wilhelm Sanke

On Sat Oct 3, 2009, Richard Gaskin ambassador at fourthworld.com wrote:


Maybe it meant "Too many for the IDE to display", since it seems the
engine is fine. :)

I wonder exactly what their threshold is for "too many", and how they
arrived at it when they wrote their IDE.

The more I played around with my tests, the more I see a very dramatic
difference in responsiveness beyond a certain threshold somewhere beyond
6,000 objects.  I haven't yet pinned it down exactly, but definitely
10,000 is beyond acceptable for most uses, so it's somewhere between 6k
and 9k.

The difference between 6k and 9k objects is so dramatic that I have to
wonder if there's some aspect of how the engine's memory mapping or
object hashes were written that may play a role in the sharp performance
degradation.

I dunno.  I just know not to try working with 9k objects. ;)

--
  Richard Gaskin



Richard,

Back in 2004 we had a discussion on the improve-list very much about the 
same problem. At that time The Rev-IDE was unable even to cope with 
cards that contained around of 3000 objects. The Metacard IDE had no 
problems with this. Creating a standalone in the Rev IDE lasted 
"forever", again , no problem in the Metacard IDE.


Here is some of the relevant text on my "RevTestPage" 
 from 2005:



Revolution Test Stacks

Following the recent discussion about the "RevTable bug" (Bugzilla 
2019) and Standalone Builder problems (Bugzilla 2217) on the 
improve-revolution list (August/September, 2004) I add two stacks




and a readme file for interested testers of the Revolution IDE that 
demonstrate the bugs and related problems with stacks that contain 
larger number number of controls, especially larger number of fields. 
Details - i.e. the complete bug reports of Bugzilla 2019 and 2217 - 
are to be found by clicking the "readme"-buttons of the test stacks, 
which however when opened in the Rev environment need some time to 
display the contents of the connected field in the larger 3300-fields 
stack that may bring down the Revolution IDE almost to freezing point 
on medium-fast computers.


Read below what has been fixed in the meantime:

All the described problems do not appear when the stacks are opened in 
the Metacard IDE. You can test this by downloading the Metacard IDE 
(1.4 MB zipped) from here.


Thanks to the continued efforts to improve Revolution some of the 
described problems have now been resolved with version 2.5.1. (March 
2005). The speed of the test stack is now almost identical in both 
environments with even a small advantage for Revolution - when run in 
the development environment..


However, the problem of building a standalone of this stack 
unfortunately has not dealt with successfully even with Revolution 
version 2.6 (June 2005). Building the standalone in the Rev IDE takes 
"forever", whereas building a standalone of the test stack with the 
Metacard "Standalone Builder" takes less than a second. (see comments 
in Bugzilla 2217).


Version 2.7-GM-1 of Revolution (February 2006) has also not yet 
resolved this standalone-building problem.
  


Responding to your post, I have expanded my test stack of 2004 to now 
containing 1 (ten thousand) fields.


I will post the URL of the new test stack in my next post to this list.

Preliminary results of testing with the 10,000 fields' test stack:

Creating the 1 fields takes around 200 seconds in the Rev IDE, 130 
seconds in the MC IDE.
Deleting the 1 fields in the Rev IDE takes 420 seconds in the Rev 
IDE, 6 seconds in the MC IDE


The three buttons for creating color patterns need about 2.3 seconds in 
the MC IDE, 3.5 seconds in the Rev IDE


When the 1 fields have been created, the Rev IDE is very much 
unresponsive, no Problems with the Metacard IDE (with the exception of 
the Metacard "Control Bowser" which needs also more time to respond when 
1 fields are present)


I did not yet test to build standalones.

So far for now.

Best regards,

Wilhelm Sanke
Prof. emeritus
University of Kassel, Germany
Education/Educational Technology


___
use-revolution mailing list
use-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: Practical limits on object counts

2009-10-03 Thread Richard Gaskin

Phil Davis wrote:


on mouseUp
   lock screen
   lock messages
  
   create group "test"

   repeat with x = 1 to 12000
  create btn ("test_" & x) in grp "test"
  if x mod 100 = 0 then put x
   end repeat
   remove grp "test" from this cd
  
   unlock messages

   unlock screen
   beep
end mouseUp


Then I did this in msg:

put the id of button  of bg "test"

... which returned this:
11212

So you CAN access those objects.


Oh, I can access them alright, at least in my own tests up to a modest 
11,000 buttons.


But here's the catch:  how long does it take for the button to hilite 
when you click on it?


Between the lag in hit testing and the lng save times and more, I'm 
using 7k objects as an upper threshold for getting work done.


--
 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
___
use-revolution mailing list
use-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: Telnet Shell Help

2009-10-03 Thread Mark Smith
Stewart, I think you could do telnet over a socket connection. See  
"open socket", "write to socket" and friends in the docs.


Best,

Mark Smith

On 3 Oct 2009, at 22:28, RevList wrote:


I need to write a very small utility that uses Telnet so that I can
connect to a server on port 333 and login with credentials and issue a
specified command recognized by the server.
I can do this manually as follows from the command line on Windows or
Terminal on OS X

Telnet 192.168.168.19 333 
this returns +0 and waits for me to enter my userID, so I enter
MyLoginID 
this returns +0 again and waits for me to enter my password, so I  
enter

MyPassword 
and this again returns a +0 and another +0 on a new line indicating a
successful entry.  Now all I need to do is enter my command which  
looks

like this
Put User someuserID 1271 0 newpw 
and this confirms success with a +0
I then enter q 
and I am out of Telnet


So what I would like to do is write a simple Rev utility that will  
pass

all of the information, but all I can seem to do is to issue the first
line and have no opportunity to enter the login credentials and my  
special

script

As soon as I issue Shell("Telnet 192.168.168.19 333") it issues the  
telnet
command and opens the connection on port 333, but immediately after  
that

closes the connection and returns "Connection closed by foreign host"
Can anyone help me here?  How can I keep the telnet session open so  
that I

can issue the remaining commands?

Thanks in advance

Stewart

-- 
--

This message and any attachments are intended only for the use of the
individual to whom they are addressed and it may contain  
information that
is privileged or confidential. If you have received this  
communication by

mistake, please notify us immediately.
-- 
--


___
use-revolution mailing list
use-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: Practical limits on object counts

2009-10-03 Thread Phil Davis
So all your 11 million buttons have to be clickable at any given time? 
You want it all, don't you?  ;-)


If you just want to change the hilite of one via script, that takes no 
time (0.000627 secs on my mini to invert the hilite of btn ). Can 
you tell us any more about the requirements without having to kill us 
afterward?


Phil


Richard Gaskin wrote:

Phil Davis wrote:


on mouseUp
   lock screen
   lock messages
 create group "test"
   repeat with x = 1 to 12000
  create btn ("test_" & x) in grp "test"
  if x mod 100 = 0 then put x
   end repeat
   remove grp "test" from this cd
 unlock messages
   unlock screen
   beep
end mouseUp


Then I did this in msg:

put the id of button  of bg "test"

... which returned this:
11212

So you CAN access those objects.


Oh, I can access them alright, at least in my own tests up to a modest 
11,000 buttons.


But here's the catch:  how long does it take for the button to hilite 
when you click on it?


Between the lag in hit testing and the lng save times and more, 
I'm using 7k objects as an upper threshold for getting work done.


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


--
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: Telnet Shell Help

2009-10-03 Thread Phil Davis
Maybe it wouldn't be as hard if you opened telnet with "open process for 
update" and interacted with it that way. Then the socket-handling 
business would be done by the OS. Recently Josh Mellicker showed me how 
to do that with 'curl' using 'open process for read' and it made it 
super easy.


Phil Davis


Mark Smith wrote:
Stewart, I think you could do telnet over a socket connection. See 
"open socket", "write to socket" and friends in the docs.


Best,

Mark Smith

On 3 Oct 2009, at 22:28, RevList wrote:


I need to write a very small utility that uses Telnet so that I can
connect to a server on port 333 and login with credentials and issue a
specified command recognized by the server.
I can do this manually as follows from the command line on Windows or
Terminal on OS X

Telnet 192.168.168.19 333 
this returns +0 and waits for me to enter my userID, so I enter
MyLoginID 
this returns +0 again and waits for me to enter my password, so I enter
MyPassword 
and this again returns a +0 and another +0 on a new line indicating a
successful entry.  Now all I need to do is enter my command which looks
like this
Put User someuserID 1271 0 newpw 
and this confirms success with a +0
I then enter q 
and I am out of Telnet


So what I would like to do is write a simple Rev utility that will pass
all of the information, but all I can seem to do is to issue the first
line and have no opportunity to enter the login credentials and my 
special

script

As soon as I issue Shell("Telnet 192.168.168.19 333") it issues the 
telnet

command and opens the connection on port 333, but immediately after that
closes the connection and returns "Connection closed by foreign host"
Can anyone help me here?  How can I keep the telnet session open so 
that I

can issue the remaining commands?

Thanks in advance

Stewart

 


This message and any attachments are intended only for the use of the
individual to whom they are addressed and it may contain information 
that
is privileged or confidential. If you have received this 
communication by

mistake, please notify us immediately.
 



___
use-revolution mailing list
use-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



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