Strange Datagrid Column Problem

2010-11-18 Thread Peter Haworth
I've customised a datagrid column to contain a checkbox.  Right after  
the customisation, the checkbox shows up in the column just fine.  I  
then added the following line of code in the FillInData handler for  
the column:


set the hilite of button 1 of the long ID of me to handleBoolean(pData)

.. and I get the message an error has occurred in behavior for the  
column template: Object: can't set this property.


I've used this same code in other datagrids to handle checking and  
unchecking check boxes and it works fine.


So I stuck an answer information right before that line of code to  
display the name of the control just to make sure I was looking at the  
correct control:


answer information the name of button 1 of the long ID of me

The display shows the correct name for the check box but it says it is  
a field, not a checkbox so no wonder it can't set the hilite property!


Any ideas as to how my checkbox got to be a field?  And even more  
puzzling, how does the display of the name of a button show it to be a  
field?



Pete Haworth

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


Re: Strange Datagrid Column Problem

2010-11-18 Thread Peter Haworth

That worked!

Are you familiar with the banana slug, native to the Santa Cruz area  
of California?


Pete Haworth

On Nov 18, 2010, at 2:54 PM, zryip theSlug wrote:


Pete,

Try:
set the hilite of btn 1 of me to handleBoolean(pData)


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


Stackrunner

2010-11-17 Thread Peter Haworth
Just started using this and very happy but have come across a problem  
regarding button icons.  I imported a set of icons into the image  
library in the IDE and refer to the icon numbers within the Image  
Library when specifying icons for buttons.  All works fine in the IDE  
and standalone but in Stackrunner the icons are not displayed and the  
buttons are invisible.  I can click on them OK (if I guess where they  
are!).  Any ideas as to why this might be happening?


Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








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

Re: Stackrunner

2010-11-17 Thread Peter Haworth
Thanks.  It will be a huge amount of work for me to change icon  
numbers everywhere so I guess Stackrunner won't work for me.  Oh well!


Pete Haworth

On Nov 17, 2010, at 11:02 AM, J. Landman Gay wrote:


On 11/17/10 11:45 AM, Peter Haworth wrote:

Just started using this and very happy but have come across a problem
regarding button icons. I imported a set of icons into the image  
library
in the IDE and refer to the icon numbers within the Image Library  
when
specifying icons for buttons. All works fine in the IDE and  
standalone

but in Stackrunner the icons are not displayed and the buttons are
invisible. I can click on them OK (if I guess where they are!). Any
ideas as to why this might be happening?


The IDE and the standalones it builds know about the image library,  
but StackRunner does not. The best way to make your images always  
available is to import them directly into your stack (the IDs will  
change) and refer to the embedded image IDs as your icons. Those  
will work anywhere.


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

2010-11-17 Thread Peter Haworth
I'm not 100% sure how to do this.  I guess it means finding where the  
image library stack is then issuing a command of some sort when my app  
starts up to bring that stack into my stack file?


Pete Haworth

On Nov 17, 2010, at 11:24 AM, Devin Asay wrote:



On Nov 17, 2010, at 12:22 PM, Peter Haworth wrote:


Thanks.  It will be a huge amount of work for me to change icon
numbers everywhere so I guess Stackrunner won't work for me.  Oh  
well!


Pete,

You could include the Image Library stack with your stack and start  
using it when it's opened by Stack Runner.


Devin




Pete Haworth

On Nov 17, 2010, at 11:02 AM, J. Landman Gay wrote:


On 11/17/10 11:45 AM, Peter Haworth wrote:
Just started using this and very happy but have come across a  
problem

regarding button icons. I imported a set of icons into the image
library
in the IDE and refer to the icon numbers within the Image Library
when
specifying icons for buttons. All works fine in the IDE and
standalone
but in Stackrunner the icons are not displayed and the buttons are
invisible. I can click on them OK (if I guess where they are!). Any
ideas as to why this might be happening?


The IDE and the standalones it builds know about the image library,
but StackRunner does not. The best way to make your images always
available is to import them directly into your stack (the IDs will
change) and refer to the embedded image IDs as your icons. Those
will work anywhere.

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


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



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


Re: Stackrunner

2010-11-17 Thread Peter Haworth

Thanks Devin and Richmond.

Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








On Nov 17, 2010, at 11:49 AM, Devin Asay wrote:



On Nov 17, 2010, at 12:36 PM, Peter Haworth wrote:


I'm not 100% sure how to do this.  I guess it means finding where the
image library stack is then issuing a command of some sort when my  
app

starts up to bring that stack into my stack file?


That's the general idea. You find the stack that contains the images  
you are using as button icons, make a copy of it, then include it  
with your mainstack. You could even make it a substack of your  
mainstack to keep it in the same stack file. Then, in the stack that  
uses the images, include the statement, probably in a preOpenStack  
handler:


 start using stack myIconStack --or whatever it's called.

Once you do that all images in the used stack are available to be  
used in the calling stack.


Devin



On Nov 17, 2010, at 11:24 AM, Devin Asay wrote:



On Nov 17, 2010, at 12:22 PM, Peter Haworth wrote:


Thanks.  It will be a huge amount of work for me to change icon
numbers everywhere so I guess Stackrunner won't work for me.  Oh
well!


Pete,

You could include the Image Library stack with your stack and start
using it when it's opened by Stack Runner.

Devin




Pete Haworth

On Nov 17, 2010, at 11:02 AM, J. Landman Gay wrote:


On 11/17/10 11:45 AM, Peter Haworth wrote:

Just started using this and very happy but have come across a
problem
regarding button icons. I imported a set of icons into the image
library
in the IDE and refer to the icon numbers within the Image Library
when
specifying icons for buttons. All works fine in the IDE and
standalone
but in Stackrunner the icons are not displayed and the buttons  
are
invisible. I can click on them OK (if I guess where they are!).  
Any

ideas as to why this might be happening?


The IDE and the standalones it builds know about the image  
library,

but StackRunner does not. The best way to make your images always
available is to import them directly into your stack (the IDs will
change) and refer to the embedded image IDs as your icons. Those
will work anywhere.

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


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



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

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


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



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

Re: LiveCode Personal Banner

2010-11-16 Thread Peter Haworth

I'd be happy with that too.

Pete Haworth

On Nov 16, 2010, at 6:06 AM, Richard Gaskin wrote:


Kevin Miller wrote:

I'm leaning towards shortening the banner time to 5 seconds.


That would be a very good option, IMO.

When SuperCard introduced a splash screen delay they originally went  
for 10 seconds, but I suggested they try the breath-holding test:
when the splash screen appears simply hold your breath until it goes  
away.


Sure, 10 seconds isn't a long time for most folks to hold their  
breath, but doing so it makes one very aware of how much time passes.


On paper or in a meeting, 10 second sounds like a short time.  But  
in actual use it feels like a very long time.


--
Richard Gaskin
Fourth World
LiveCode training and consulting: http://www.fourthworld.com
Webzine for LiveCode developers: http://www.LiveCodeJournal.com
LiveCode Journal blog: http://LiveCodejournal.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



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


Re: DOWNLOADING REV 4.0.0

2010-11-16 Thread Peter Haworth
I love how unconnected discussions come together!  I just downloaded  
stackrunner and it seems to solve all my issues regarding standalone  
startup banners/using test files versus live files.  I point it to my  
application .rev file and it runs it as if it were a standalone,  
opening the live application database instead of the test one, but  
with no banner of any sort.  The only downside is that the OSX menubar  
item for the aplication says StackRunner instead of my application's  
name.


So while I'm a happy camper, this seems to completely circumvent  
Revoution's plan to strongly discourage commercial distribution of  
LiveCode Personal applications via the startup banner or am I missing  
something?


Pete Haworth

On Nov 16, 2010, at 7:33 AM, Richmond wrote:


On 11/16/2010 01:28 PM, Matthias Rebbe wrote:

Hi Joseba,

you could use Ken Ray´s stackrunner  instead 
http://www.sonsothunder.com/devres/revolution/downloads/StackRunner.htm

Regards,

Matthia


Thanks: I have just downloaded all the versions of StackRunner (2.0  
and 1.3) to add to my special

RunRev resources external hard drive.

___
use-revolution mailing list
use-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: DOWNLOADING REV 4.0.0

2010-11-16 Thread Peter Haworth


On Nov 16, 2010, at 11:05 AM, Richmond wrote:


On 11/16/2010 08:04 PM, Peter Haworth wrote:
I love how unconnected discussions come together!  I just  
downloaded stackrunner and it seems to solve all my issues  
regarding standalone startup banners/using test files versus live  
files.  I point it to my application .rev file and it runs it as if  
it were a standalone, opening the live application database instead  
of the test one, but with no banner of any sort.  The only downside  
is that the OSX menubar item for the aplication says StackRunner  
instead of my application's name.


So while I'm a happy camper,


really? I am afraid that at present I feel that RunRev are camping  
things up a bit; so who is camper

than whom can be the next direction this discussion takes.


Sounds like we need to establish a scale of camp-ness


this seems to completely circumvent Revoution's plan to strongly  
discourage commercial distribution of LiveCode Personal  
applications via the startup banner or am I missing something?


Frankly, distributing a stack with a stackrunner as a commercial  
package doesn't look that good;
especially as anybody who can get their paws (sweaty or otherwise)  
on a copy of RR/LC can merrily

start mucking around with your stack.


Agree with that.  That's one of the reasons I've never liked using a  
secondary stack file as a solution to the problem of not being able to  
store data in a standalone.




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


Re: SQLite Problem in 4.5

2010-11-16 Thread Peter Haworth

Hi Bob,
I forgot one important fact in deciding whether this is a bug or not -  
the SELECT statement worked fine in 4.0 with exactly the same data,  
NULLs and all.  So something got changed in 4.5 that caused this to  
stop working.  I will enter this issue into the QCC this afternoon.


Pete Haworth

On Nov 15, 2010, at 3:49 PM, Bob Sneidar wrote:

I don't think it is a bug. Since the NULL's are embedded into the  
SQL result, when LiveCode sees them it thinks it's an EOF of some  
kind (help me out Jacque wasn't this discussed in an earlier thread)?


If you had queried each column as is, then concatenated them in  
LiveCode, I think you would have gotten all the data. I think the  
query IS working, but the NULL in the cursor is being interpreted by  
LiveCode as an end of data marker. Should it be? I will leave that  
to bigger minds than mine. I think this behavior is a backwards  
compatibility issue with Metacard stacks or something. I vaguely  
remember this being discussed a few months ago. But I could be  
wrong. Well... not really. ;-)


Bob


On Nov 15, 2010, at 3:12 PM, Peter Haworth wrote:

Avoiding NULLs is always good I think.  But since SQLite itself  
works fine with them and LiveCode doesn't, this feels like a bug to  
me.  Should I enter it at the QCC?


Pete Haworth

On Nov 15, 2010, at 3:06 PM, Bob Sneidar wrote:

Ah hah! Nice catch. I thought Rev was supposed to interpret NULL  
as empty string, but with the concatenation, I suppose the NULL's  
would be embedded in the returned pseudo column (probably not the  
right word for it). That is a nice little gotcha there for anyone  
running this kind of query. Moral to story: avoid NULL values in  
LiveCode SQL databases?


Bob


On Nov 15, 2010, at 2:58 PM, Peter Haworth wrote:

Thanks Bob.  I think the problem may have something to do with  
NULL values in some of the columns coming back from the SELECT.   
When I fixed them, the SELECT worked fine in LiveCode.  The  
Firefox plugin was one of the utilities I used to check this out  
and it returned all the data correctly, even when there were  
NULLs in the columns.


Pete Haworth


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

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



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

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


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

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



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


Re: LiveCode and the Mac App Store

2010-11-16 Thread Peter Haworth

Ron,
I don't develop for iPad/iPhone (yet) but it seems to me that  
Revolution owe all its developers who do develop on that platform an  
answer to your questions and any others that would make it easier to  
develop apps for the Apple Store.


Pete Haworth

On Nov 16, 2010, at 8:06 PM, ron barber wrote:


As a follow up to my earlier question _can_ we use LiveCode desktop to
make desktop apps to be sold through the Apple store (Kevin's answer
was a qualified 'yes') Is anyone _actually_ moving forward with an app
for the Apple store?

I have an app that I want to make available in the store but I'm
worried that current set up may not meet Apple guidelines.

If so could you comment on how you eliminated or modified the way you:

1. Save prefs: currently I spit out another stack from a customprop
stored in the startupstack.
2. Listing your homepage in the About or Help menus or anywhere else.
In other words, Are you providing a way for users to contact you in a
way that Apple likes?
3. Auto checking upgrade options: currently my app checks a file on
homepage on startup and informs users if there is a newer version.

Any other parts of your application that you have modified to conform
to Apple's (current) guidelines?

Thanks for your suggestions...
Ron
___
use-revolution mailing list
use-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: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth
I understand Kevin.  I just don't like the fact that a standalone  
application I create from code I have written myself on my own  
computer still has this delay in it when I run it on my own computer.


Pete Haworth

On Nov 15, 2010, at 9:32 AM, Kevin Miller wrote:


On 15/11/2010 16:07, Pete Haworth p...@mollysrevenge.com wrote:


Uh, no. There's a counter on the banner that counts down from 10.


Ah, I thought you were talking about the iOS platform where there is  
only a

5 second banner. You're correct, the desktop platform does do this.

Please bear in mind this is a $99 product. You can upgrade to  
commercial at
any time by paying the difference in price. There is no banner in  
any of the

commercial editions at all.

Kind regards,

Kevin

Kevin Miller ~ ke...@runrev.com ~ http://www.runrev.com/
LiveCode - Realize fast, compile-free coding


___
use-revolution mailing list
use-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: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth
I have a totally separate set of files and databases for testing in  
the IDE than I do for live running with the standalone.


Pete Haworth

On Nov 15, 2010, at 12:01 PM, Kevin Miller wrote:


On 15/11/2010 17:42, Peter Haworth p...@mollysrevenge.com wrote:


I understand Kevin.  I just don't like the fact that a standalone
application I create from code I have written myself on my own
computer still has this delay in it when I run it on my own computer.


Ah, I see. But why build a standalone for your own computer?

Kind regards,

Kevin

Kevin Miller ~ ke...@runrev.com ~ http://www.runrev.com/
LiveCode - Realize fast, compile-free coding


___
use-revolution mailing list
use-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: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth
If I want to install my application on my laptop as well as my desktop  
all for my own use, you're suggesting I install a pirate copy of the  
IDE on one of my computers (I think).


Pete Haworth

On Nov 15, 2010, at 12:33 PM, Kevin Miller wrote:


On 15/11/2010 20:23, Jeffrey Massung mass...@gmail.com wrote:


Ah, I see. But why build a standalone for your own computer?


Sorry to be blunt, but isn't that a bit of a silly question? If the  
personal
edition is for personal use, and RunRev's position is why build a  
standalone
for your own computer? then why offer it as a feature of the  
personal edition

at all?

I haven't looked at the personal edition, so maybe it's also used  
for academic
licenses or for distributing stacks among an academic institution  
(in which
case I understand the feature). But, I imagine that there's other  
ways that

could be done as well without the use of a banner.

For example, perhaps when the standalone is built there was an  
option to bind
the executable to a specific domain name or subdomain where any  
machine in

that range can run the application with no banner popup?


Well, if you're using stacks on your own computer, and you don't  
want to
wait for the banner to go away, and you don't want to pay more than  
$99, why
not run them in the IDE? You can create a standalone but you're  
going to
have to wait a short time while it loads. Its not exactly an  
eternity, I
have many applications that take longer than that to load. We might  
be open
to shortening it a little, but this is one of the differences  
between a

personal and commercial license.

Kind regards,

Kevin

Kevin Miller ~ ke...@runrev.com ~ http://www.runrev.com/
LiveCode - Realize fast, compile-free coding


___
use-revolution mailing list
use-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: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth
That's good to know.  But there are still good reasons to keep the IDE  
and standalone versions separate even for personal applications.


Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








On Nov 15, 2010, at 12:49 PM, Kevin Miller wrote:


On 15/11/2010 20:43, Peter Haworth p...@mollysrevenge.com wrote:

If I want to install my application on my laptop as well as my  
desktop

all for my own use, you're suggesting I install a pirate copy of the
IDE on one of my computers (I think).


No, we allow you to install the IDE on multiple machines provided it  
is for

your own personal use. Its a very generous license in that respect.
Standalones have to be marked because you *can* distribute them.

Kind regards,

Kevin

Kevin Miller ~ ke...@runrev.com ~ http://www.runrev.com/
LiveCode - Realize fast, compile-free coding


___
use-revolution mailing list
use-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: SQLite Problem in 4.5

2010-11-15 Thread Peter Haworth

Hi Bob,
The double bar is a concatenation operator, same as the  in LiveCode

Pete Haworth

On Nov 15, 2010, at 2:35 PM, Bob Sneidar wrote:

Peter, I do not know what the double bars are in an SQL statement.  
What do they do?


Bob


On Nov 13, 2010, at 9:59 AM, Peter Haworth wrote:

Just ran into a serious problem with and SQLite SELECT statement in  
4.5.


I'm selecting data from my database with the following SQLite  
statement


put revDataFromQuery(,,gDBID,myLine) after tdata

myline contains SELECT PlaceID, Name || ',' || City || ',' || State  
AS Location FROM Places ORDER BY Name


In 4.0, this successfully selects all the correct data.  In 4.5 is  
selects only 2 rows.  Same codebase, same database.  Executing the  
SELECT in 2 or 3 different SQLite query utilities returns the  
correct data


Has anyone run into this type of issue with 4.5?

Pete Haworth








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

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


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

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



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


Re: SQLite Problem in 4.5

2010-11-15 Thread Peter Haworth
Thanks Bob.  I think the problem may have something to do with NULL  
values in some of the columns coming back from the SELECT.  When I  
fixed them, the SELECT worked fine in LiveCode.  The Firefox plugin  
was one of the utilities I used to check this out and it returned all  
the data correctly, even when there were NULLs in the columns.


Pete Haworth

On Nov 15, 2010, at 2:52 PM, Bob Sneidar wrote:

OK just figured out what the syntax does. I ran this query against a  
Spiceworks sqLite database, substituting column and table names  
with  those in the Spiceworks database, and the query worked fine  
for me. At this point, what I would suggest is getting the sqLite  
plugin for Firefox and making queries directly against the sqLite  
database. See what you get then.


Bob


On Nov 13, 2010, at 9:59 AM, Peter Haworth wrote:

Just ran into a serious problem with and SQLite SELECT statement in  
4.5.


I'm selecting data from my database with the following SQLite  
statement


put revDataFromQuery(,,gDBID,myLine) after tdata

myline contains SELECT PlaceID, Name || ',' || City || ',' || State  
AS Location FROM Places ORDER BY Name


In 4.0, this successfully selects all the correct data.  In 4.5 is  
selects only 2 rows.  Same codebase, same database.  Executing the  
SELECT in 2 or 3 different SQLite query utilities returns the  
correct data


Has anyone run into this type of issue with 4.5?

Pete Haworth








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

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


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

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



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


Re: SQLite Problem in 4.5

2010-11-15 Thread Peter Haworth
Avoiding NULLs is always good I think.  But since SQLite itself works  
fine with them and LiveCode doesn't, this feels like a bug to me.   
Should I enter it at the QCC?


Pete Haworth

On Nov 15, 2010, at 3:06 PM, Bob Sneidar wrote:

Ah hah! Nice catch. I thought Rev was supposed to interpret NULL as  
empty string, but with the concatenation, I suppose the NULL's would  
be embedded in the returned pseudo column (probably not the right  
word for it). That is a nice little gotcha there for anyone running  
this kind of query. Moral to story: avoid NULL values in LiveCode  
SQL databases?


Bob


On Nov 15, 2010, at 2:58 PM, Peter Haworth wrote:

Thanks Bob.  I think the problem may have something to do with NULL  
values in some of the columns coming back from the SELECT.  When I  
fixed them, the SELECT worked fine in LiveCode.  The Firefox plugin  
was one of the utilities I used to check this out and it returned  
all the data correctly, even when there were NULLs in the columns.


Pete Haworth


___
use-revolution mailing list
use-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: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth

When I'm testing and fixing bugs - a lot!

Pete Haworth

On Nov 15, 2010, at 3:45 PM, zryip theSlug wrote:


Far of all these considerations, a simple question: how many times you
open your application a day?


Regards,
--  
-Zryip TheSlug- wish you the best! 8)

http://www.aslugontheroad.co.cc
___
use-revolution mailing list
use-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: SQLite Problem in 4.5

2010-11-15 Thread Peter Haworth
Thanks Bob, I understand the quandary!  I still think it's a bug when  
a program does strange things with valid data but it's not a big deal  
now that I'm aware of the problem.


Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








On Nov 15, 2010, at 3:49 PM, Bob Sneidar wrote:

I don't think it is a bug. Since the NULL's are embedded into the  
SQL result, when LiveCode sees them it thinks it's an EOF of some  
kind (help me out Jacque wasn't this discussed in an earlier thread)?


If you had queried each column as is, then concatenated them in  
LiveCode, I think you would have gotten all the data. I think the  
query IS working, but the NULL in the cursor is being interpreted by  
LiveCode as an end of data marker. Should it be? I will leave that  
to bigger minds than mine. I think this behavior is a backwards  
compatibility issue with Metacard stacks or something. I vaguely  
remember this being discussed a few months ago. But I could be  
wrong. Well... not really. ;-)


Bob


On Nov 15, 2010, at 3:12 PM, Peter Haworth wrote:

Avoiding NULLs is always good I think.  But since SQLite itself  
works fine with them and LiveCode doesn't, this feels like a bug to  
me.  Should I enter it at the QCC?


Pete Haworth

On Nov 15, 2010, at 3:06 PM, Bob Sneidar wrote:

Ah hah! Nice catch. I thought Rev was supposed to interpret NULL  
as empty string, but with the concatenation, I suppose the NULL's  
would be embedded in the returned pseudo column (probably not the  
right word for it). That is a nice little gotcha there for anyone  
running this kind of query. Moral to story: avoid NULL values in  
LiveCode SQL databases?


Bob


On Nov 15, 2010, at 2:58 PM, Peter Haworth wrote:

Thanks Bob.  I think the problem may have something to do with  
NULL values in some of the columns coming back from the SELECT.   
When I fixed them, the SELECT worked fine in LiveCode.  The  
Firefox plugin was one of the utilities I used to check this out  
and it returned all the data correctly, even when there were  
NULLs in the columns.


Pete Haworth


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

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



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

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


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

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



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

Re: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth
That's exactly what I would like to see.  Unfortunately, it seems as  
if Revolution has moved away from license keys so I doubt it will  
happen.


Pete Haworth

On Nov 15, 2010, at 3:31 PM, Alex Tweedly wrote:


On 15/11/2010 20:37, Andre Garzia wrote:
(2) There is no way to distinguish your standalone running on your  
own
machine from your standalone running somewhere else. Any way to  
detect that
it is running on the same machine as the one used to develop the  
given
standalone will not be tamper proof. You can't trust any metric  
given by a
computer to identify itself. You can't trust MAC Addresses, HD  
Serial or CPU

Serial, all those can be spoofed.



That's right, you can't have a reliable check for the machine. But  
what you can do, and I would argue you should do, is check for a  
valid IDE license. So the rule could be:


a standalone built with Personal Edition will check whether the  
machine  has a valid licensed copy of the IDE on it

If there is no IDE, then you get the 10 second start-up screen.
If there is a valid IDE, you get no start-up screen (or maybe a 1- 
second start-up)


That way, anyone with the Personal Edition can build and run on  
(all) their own machines without being bothered.


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

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



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


Re: LiveCode Personal Banner

2010-11-15 Thread Peter Haworth
Yes, matter of fact I did just recently.  Turned out to be a data  
problem in my application which didn't manifest itself in the IDE but  
caused big performance problems in the standalone.  The only way I  
could track it down was to keep trying things/writing messages to a  
debug log, re-building a standalone, and testing the standalone many  
times until I found the problem. I would have never have found the  
problem without building a standalone and testing it.  I guess the  
experience is what made me so conscious of the standalone startup  
delay.  (Terry - thanks for the player suggestion - that sounds good  
but wouldn't have helped in this situation


This whole suggestion of using only the IDE is very puzzling to me.   
Yes, I am writing apps for my own use but I'm a retired programmer and  
unless things have changed mightily since I was getting paid to write  
code, there's a strong need to separate development, QA, and live  
versions of code, not just for the integrity of the code but of the  
data as well.  Rightly or wrongly, I think of the IDE as my  
development environment and the standalone as my QA/live environment.   
My apps were written so they determine what files to use and whether  
to do certain things or not based on whether they are running in the  
IDE or as a standalone. I even have my own compile function that  
sets up various custom properties than enable the standalone to work  
more efficiently.


I'll repeat again what I said in one of my earlier posts - I love  
working with LiveCode, it;s a great development tool, but I just don;t  
think it's good practice to subject the user to arbitrary delays when  
running perfectly legal copies of software.


Pete Haworth

On Nov 15, 2010, at 4:17 PM, zryip theSlug wrote:


A naive question: have you find so many differences between a project
in the IDE and the resulting application?


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


Re: Getting the weekday name

2010-11-14 Thread Peter Haworth
Thanks.  I forgot that I have been using the SQLite strftime function  
to do all my date formatting/calculations so I think I'll just use that.


Pete Haworth

On Nov 14, 2010, at 12:35 PM, J. Landman Gay wrote:


On 11/13/10 4:55 PM, Peter Haworth wrote:

The dates are coming from an SQL database, so they are in -mm-dd
format - will that work or do I need to convert them to some other  
dat?

I already have a function that converts the SQL dates to the external
format mm/dd/yy if that would work better.


You need to use your conversion function to change the dates to mm/ 
dd/yy format. Then use the convert command to convert that to the  
long date, and lift out the first item which will be the weekday name.


--
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: LiveCode Personal Banner

2010-11-13 Thread Peter Haworth
I agree it wasn't a surprise, but sometimes the reality of things  
doesn't match expectations (there's no mention of the banner staying  
on the screen for 10 seconds).  At this point, I have no plans to  
offer my application for commercial use but I  ought to be able to run  
a standalone on my own computer without the banner appearing, or at  
least not for 10 seconds, every time I start the app.  Running my own  
app on my own computer is not commercial use, unless I charge myself  
for the app ( I don;t think I can afford it though!).


This whole commercial use thing is fraught with loopholes I think.   
For example, let's say I develop some killer utility code in the  
personal version that is generically useful for lots of LiveCode  
developers and I sell it in the form of a stack file.  The developers  
pay me money, incorporate the code into their apps, build a standalone  
in a Livecode version that allows commercial distribution, and sell it  
on to their customers.  Am I breaking my license agreement?


Personally, I think there should still be a license key that ties  
LiveCode Personal to a specific computer, both the IDE and any  
standalones built with it.  Then my standalones won't display the  
message when they run on my computer but they will on any other.


I'm pretty much going back to 4.0 for now, at least to build  
standalones.  I don't have a use for the new features on 4.5 and using  
4.0 allows me to build standalones that don't bug me.  Of course at  
some point, I won;t be able to continue doing that as more  
enhancements are incorporated into LiveCode, but for now it works fine  
for me.


In the generals scheme of things, this isn't a big deal, LiveCode is  
still a great way to develop applications, it's just that licensing  
methods have always been a pet peeve of mine.


Pete Haworth

On Nov 13, 2010, at 8:14 AM, Malte Brill wrote:

Even though I can understand splash screens feel annoying, I can not  
see this as a surprise, as this is clearly stated on the runrev.com  
homepage:


Applications created with this license will include a splash screen  
or watermark. The Server Deployment Pack comes with a limit on the  
number of connections with this license type.


http://runrev.com/products/livecode/license-types-overview

As that edition is much cheaper than previous studio licenses I can  
understand RRs decision in adding this. I don´t know about Director  
nowadays, but when I had to decide if it is RR or Director back in  
the day, each Projector built displayed a Made with Macromedia  
dialogue that could not be dismissed.


It is worth noting, that the commercial packs do not have this Banner.

Just my 2 € cents worth.

Cheers,

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

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



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


SQLite Problem in 4.5

2010-11-13 Thread Peter Haworth

Just ran into a serious problem with and SQLite SELECT statement in 4.5.

I'm selecting data from my database with the following SQLite statement

put revDataFromQuery(,,gDBID,myLine) after tdata

myline contains SELECT PlaceID, Name || ',' || City || ',' || State AS  
Location FROM Places ORDER BY Name


In 4.0, this successfully selects all the correct data.  In 4.5 is  
selects only 2 rows.  Same codebase, same database.  Executing the  
SELECT in 2 or 3 different SQLite query utilities returns the correct  
data


Has anyone run into this type of issue with 4.5?

Pete Haworth








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


Getting the weekday name

2010-11-13 Thread Peter Haworth
I'm using the datetimetoJulian function in Sarah's great datetime  
stack as part of a way to get the alpha weekday name.  The words in  
Sarah's stack say that it's possible to get the day number of the week  
by taking the remainder of dividing the Julian days by 7 but when I do  
that, I consistently get a day number that is 2 less than it should be  
- that's assuming of course that day 1 would be Sunday.


I can always just add 2 to the day number but wondering if anyone  
knows why this would happen?


Pete Haworth








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


Re: Getting the weekday name

2010-11-13 Thread Peter Haworth
That sounds simpler!  I've never used convert and dateitems - what  
format would tdate have to be in?


Pete Haworth

On Nov 13, 2010, at 2:42 PM, Dick Kriesel wrote:


On 11/13/10 1:44 PM, Peter Haworth p...@mollysrevenge.com wrote:


I'm using the datetimetoJulian function in Sarah's great datetime
stack as part of a way to get the alpha weekday name.  The words in
Sarah's stack say that it's possible to get the day number of the  
week
by taking the remainder of dividing the Julian days by 7 but when I  
do
that, I consistently get a day number that is 2 less than it should  
be

- that's assuming of course that day 1 would be Sunday.

I can always just add 2 to the day number but wondering if anyone
knows why this would happen?

Pete Haworth



Hi, Pete.  Might your task be easier using dateItems as this  
example does?


function dayOfWeek tDate
  convert tDate to dateItems
  return item last item of tDate of \
 Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
end dayOfWeek

-- Dick


___
use-revolution mailing list
use-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: Getting the weekday name

2010-11-13 Thread Peter Haworth
The dates are coming from an SQL database, so they are in -mm-dd  
format - will that work or do I need to convert them to some other  
dat?  I already have a function that converts the SQL dates to the  
external format mm/dd/yy if that would work better.


Pete Haworth

On Nov 13, 2010, at 2:46 PM, J. Landman Gay wrote:


On 11/13/10 3:44 PM, Peter Haworth wrote:
I'm using the datetimetoJulian function in Sarah's great datetime  
stack

as part of a way to get the alpha weekday name. The words in Sarah's
stack say that it's possible to get the day number of the week by  
taking

the remainder of dividing the Julian days by 7 but when I do that, I
consistently get a day number that is 2 less than it should be -  
that's

assuming of course that day 1 would be Sunday.

I can always just add 2 to the day number but wondering if anyone  
knows

why this would happen?


Just curious, do you really need Julian dates? If you already have  
an existing date in a valid format, it should convert to the long  
date successfully. That has the alpha day of the week as the first  
item.


--
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: Performance Mystery Solved - IT'S THE DATA STUPID!!

2010-11-12 Thread Peter Haworth
No problem Richard, fun tracking this stuff down.  After your last  
email, I now understand the exact reason for the slowdown.


I now plan to switch all my long name references over to use the  
control ID.  Everything in the doc says using the ID should be a safe  
way to uniquely identify a control but I've seen a few posts recently  
seeming to indicate that might not be the case (I know stack IDs  
change, just referring to control IDs).  There's a little trepidation  
on my part about that because I occasionally see posts that suggest  
that maybe there's issues with the uniqueness of IDs but hopefully I  
won;t run into them!


Pete Haworth

On Nov 12, 2010, at 6:27 AM, Richard Gaskin wrote:


I have to admit you guys left me behind a while ago.  But I'm glad I
may have created a platform for some knowledge that wasn't there
before, plus I've got a fix for my problem so yes, definitely a good
day!


Thanks again for not only bringing this up, but for diligently  
working it through to find the root cause.  Good work.


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

2010-11-12 Thread Peter Haworth
I've learned over the last few days how important it is to keep track  
of code changes in each release of an app.  I already have a LiveCode  
app that lets me catalog bugs/enhancements, prioritise them, write  
notes about how they were fixed and define which release they were  
fixed in.  What's missing is a way to keep a copy of the code base  
(i.e. the stack files) for each release so I can go back to it later  
if necessary.


My ideal solution would be to simply copy the stack files to a folder  
for the release and then somehow kick off a build of the standalone  
application.  Copying the files won;t be a problem but is there any  
way to automate the build of a standalone?  It's not a huge deal to do  
it manually but would be a nice touch to automate it.  And the real  
icing on the cake would be to the equivalent of a diff on the code  
bases to see what changed between releases.


Does anyone else have a bug/version tracking tool they use and like?

Thanks,

Pete Haworth








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

2010-11-12 Thread Peter Haworth
Thanks Andre.  I guess I've gone down the path of rolling my own so  
far.  I don;t think I need the more exotic features like branching,  
merging, etc so I think I'll just go ahead and add the logic to copy  
the necessary files to a version folder when I set up a release.


I will check out Magic Carpet as well though!

Pete Haworth

On Nov 12, 2010, at 10:16 AM, Andre Garzia wrote:


Peter,

This was a hot topic some months ago here. There are many  
alternatives and

many users have rolled their own as well. Your first choice is:

(a) To use a standard VCS/SCM software such as Git, Mercurial, Darcs,
Bazaar, Svn, Fossil...

(b) Roll your own

If you go with letter (a) then you should notice that LiveCode  
stacks are
binary files and most of these systems are designed to use text  
files. So
while you can still use the versioning system as an archival system,  
your
merge operations will be troublesome since IIRC none of these  
software is

able to do binary merges or unknown file types.

I've used Mercurial with LiveCode and am quite happy with dumping  
binaries
into it since I don't do merges, I just want the ability to rollback  
if

needed.

If you decide to go with option (b) then you can do pretty much  
whatever you
want. Chipp Walters has a wonderful tool in the form of Magic  
Carpet. It is
available and it served me and Sivaktirswami well on our HTDE  
project. It is
a very good program and for simple needs (no merging, simple  
archival, no

branching) it solves the problem.

I know developers here have rolled their own import/export routines to
create textual formats of stacks to better use tools such as Git. I  
haven't

gone that far.

Andre

my two Brazilian Real cents
___
use-revolution mailing list
use-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: Bug Tracking

2010-11-12 Thread Peter Haworth

Chipp - where can I get a copy of Magic Carpet?

Pete Haworth

On Nov 12, 2010, at 10:16 AM, Andre Garzia wrote:

f you decide to go with option (b) then you can do pretty much  
whatever you

want. Chipp Walters has a wonderful tool in the form of Magic Carpet.


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


LiveCode Personal Banner

2010-11-12 Thread Peter Haworth
I opted to go for the personal version of LiveCode when the name  
change happened.  I understand that I can't distribute apps with this  
version but I personally find it objectionable that I have to endure  
the banner announcing that for 10 seconds every time I start a  
standalone app - I'm running a legally licensed copy of the program on  
my own computer.  If it's not running on my computer, fine, tell me  
all about it and find a licensing scheme that deals with that  but let  
me run my licensed copy without bugging me please.


Pete Haworth








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


IDE/Standalone Performance Issues - A Light At The End of the Tunnel!

2010-11-11 Thread Peter Haworth
I think I have found  the cause of the performance problems I have  
been experiencing.  I had been referring to objects by their long name  
in various places in the offending code.  I started changing the code  
to refer to the same objects by their short ID and each line of code I  
changed resulted in quicker performance.  I haven't been able to  
change all the code yet but the evidence is that the performance  
issues will go away when I start using the object IDs everywhere.


Finding the problem is good of course but does anyone know why there  
are no performance issues referring to an object by it's long name in  
the IDE but it causes such a performance hit in a standalone?  Maybe  
I'm misunderstanding the process of building a standalone but I would  
have thought a standalone would function more efficiently than the  
same code executed in the IDE not less, kinda like in the old days of  
interpretive vs compiled BASIC?


Pete Haworth








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


Re: IDE/Standalone Performance Issues - A Light At The End of the Tunnel!

2010-11-11 Thread Peter Haworth

Thanks for delving into this Richard.

Here's a small example section of code which I've changed to use the  
ID where it used to use the long name.  The variables are:


myIDholds the short ID of the control
pselection  a parameter passed into the command

put the milliseconds into mymilliseconds
writeDebug Starting loadOneList   the abbrev name of control ID myID
if pselection is empty then
  if listValues is among the lines of the customKeys of control  
ID myID then

 put the listValues of control ID myID into tlistspec
  else
 put the text of control ID myID into tdata
  end if
   else
  put pselection into tlistspec
   end if
   if tlistspec is not empty then
  repeat for each line myLine in tlistspec
  writeDebug tab  (the milliseconds - mymilliseconds)  tab   
Start processing SELECT   myline


In the IDE, the 2nd writeDebug shows a value of 1 whether I use the  
long name or the ID of the control.  In the standalone, using the long  
name it shows a value of 731 and using the ID it shows 1 again.


It is puzzling why your tests don't reflect what Im experiencing.  
Maybe it's something to do with the operation that is carried out on  
the control.  In my case, most of the addressing of the controls  
consists of getting/setting their properties, both standard and  
custom.  Could it have anything to do with the fact that my code is  
executed in a script that is held in a separate code library stack and  
inserted as a front script?  The only other variable I can think of is  
the location of the debug log I'm writing to.  In the IDE, the debug  
log is in the same folder as the stack file but in the standalone it's  
in the users Library/Preferences/appname folder.  This is running on  
a Mac of course.


All I have to do now is find all the places in my code where controls  
are referenced by their long name - oh joy!


Bob - I want to hold off just a little longer before submitting a  
bug.  The fact that Richard's tests don;t reflect what I'm seeing make  
me nervous that it's something I'm doing wrong!


Pete

On Nov 11, 2010, at 11:04 AM, Richard Gaskin wrote:



Interesting.  I just ran this test:

on mouseUp
 put 10 into n
 --
 put the millisecs into t
 repeat n
   put the short id of this cd into tID
   put the name of cd id tID into r1
 end repeat
 put the millisecs - t into t1
 --
 put the millisecs into t
 repeat n
   put the long name of this cd into tName
   put the name of tName into r2
 end repeat
 put the millisecs - t into t2
 --
 put the millisecs into t
 repeat n
   put the number of this cd into tNum
   put the name of cd tNum into r3
 end repeat
 put the millisecs - t into t3
 --
 put t1  t2  t3  (r1=r3)
end mouseUp


The results were roughly the same in both the MC and Rev IDEs:

221 954 209 true

So addressing by ordinal number is slightly faster than by ID, which  
has been the case since the HC days.  But I'm surprised by how much  
faster both are compared to addressing by name.


This got me curious as to whether long ID would be faster than long  
name, so I ran this:


on mouseUp
 put 10 into n
 --
 put the millisecs into t
 repeat n
   put the long id of this cd into tID
   put the name of tID into r1
 end repeat
 put the millisecs - t into t1
 --
 put the millisecs into t
 repeat n
   put the long name of this cd into tName
   put the name of tName into r2
 end repeat
 put the millisecs - t into t2
 --
 put t1  t2  (r1=r2)
end mouseUp


...and got this:

955 957 true

So it seems that the overhead of resolving absolute object  
references (long form) is much higher than what the engine can do  
when you're able to hard-wire part of the reference (e.g., ...of  
card id tID...).


Historically I've often used long IDs for the convenience of having  
an absolute object reference without regard to the type, but after  
seeing these results I can see that there's a benefit to hard-wire  
the type in script where practical.


Thanks for bringing this up.  Learn sumpin' new every day. :)



Finding the problem is good of course but does anyone know why there
are no performance issues referring to an object by it's long name in
the IDE but it causes such a performance hit in a standalone?


Interesting as it was to test the different ways to reference  
objects, in practical terms I think the performance issue you  
encountered is due to something else.


The tests shown above were run in 100,000 iterations.  So while it  
seems impressive that one took only 25% as much time as another, in  
a given iteration the longest one took only 0.00954 ms.


Unless you're addressing several hundred thousand objects at a time,  
it's hard to imagine how the difference could product a noticeable  
effect.


I even built a standalone of the test stack, and while it was  
somewhat slower (why would that be?) the difference between the IDE  
and the standalone was less than 8% total, or about 0.0008 ms per  
call.


This is 

Re: IDE/Standalone Performance Issues - A Light At The End of the Tunnel!

2010-11-11 Thread Peter Haworth

See answers below.

Pete Haworth



What's interesting there is that the control is only being  
referenced three times:  once to write the debug string, a second  
time to check the customKeys, and a third time to obtain the prop  
values.


Given that it's just three object references and most of the work is  
done in the repeat look that works on the list, it's hard to believe  
those three object references could account for the speed difference  
by themselves.


What does writeDebug look like, and what does the other half of the  
repeat look like (there's no closing end repeat)?


Here's writeDebug and another function it calls getprefsFolderPath.

command writeDebug pText
   put getprefsFolderPath(BandTrak)  debuglog.txt into  
myPrefsFilePath

   write pText  return to file myPrefsFilePath
end writeDebug

function getPrefsFolderPath pSubFolder
   if the environment is development then
  put the effective filename of this stack into prefsFolder
  set the itemdelimiter to slash
  put item 1 to -2 of prefsFolder into prefsFolder
   else
  if the platform = MacOS then
 put specialFolderPath(Preferences) into prefsFolder
  else if the platform = Win32 then
 put specialFolderPath(26) into prefsFolder
  end if
   end if
   if last char of prefsFolder is not / then
  put slash after prefsFolder
   end if
   if the environment is not development then
  put pSubFolder  slash after prefsFolder
   end if
   return prefsFolder
end getPrefsFolderPath

I didn't put the rest of the repeat lop in the example because the  
timing ends at the top of the repeat loop.  I can give you the code  
but it's basically executing an SQLite SELECT statement.  There's  
another time measurement at the completion of the SELECT and it  
indicates there's no significant difference between the IDE and the  
standalone for the SELECT execution.





And what exactly is in myID?  Have you verified that it's an  
integer, and that the name was as you expected it in the earlier  
version?


A little background for you.  This code is part of a library routine I  
have to load values from an SQLite SELECT statement into controls on  
the form.  All the controls on the form that relate to columns in the  
selected row start with DB_ followed by the name of the column.  In  
the IDE, whenever a card is opened, I create a list of the DB_  
controls and store them in a custom property named fieldList, one per  
line.  I'm currently storing the long name of each control in  
fieldList and I can see that they are in the correct format in the  
custom property.  There's an outer loop that processes every line in  
fieldList to load the data into the controls and to help track this  
down, I put the following statement in that loop:


put the ID of myControl into myID

myControl is the variable that holds one line from the fieldList  
custom property.  I guess that's a long winded way of saying yes, the  
long name formats look correct.  I haven't checked myID to see if it  
holds an integer but unless the put statement is doing something  
weird, I'm pretty sure it does.




Also, do you have any getProp handlers in your stack?


I do have some getProp and setProp handlers but not for the properties  
used in this section of code.  I had wondered if there was something  
of that nature happening, so I stepped through every line of code in  
debug to make sure it wasn't dashing off into some hidden direction  
like that and I didn;t see anything of that nature.


Perhaps most importantly:  are there any other stacks or libraries  
used by the standalone that aren't present in the IDE?


I don;t think so, certainly not intentionally,but I'm not sure how to  
tell.  I used the Stacks tab of the Standalone Application Settings to  
set the stacks other than the main application stack that were to be  
included in the standalone.






It is puzzling why your tests don't reflect what Im experiencing.


Yeah, me too. :)


Maybe it's something to do with the operation that is carried out on
the control.  In my case, most of the addressing of the controls
consists of getting/setting their properties, both standard and
custom.  Could it have anything to do with the fact that my code is
executed in a script that is held in a separate code library stack  
and

inserted as a front script?


Possibly. It may be helpful to log the frontScripts, the  
backScripts, and the stacksInUse in both the IDE and the standalone  
to see what differences there may be.  Of course you'll see a lot  
more of those in the IDE, which should theoretically either have no  
effect or make it slower, but perhaps a script is both in a library  
and a frontScript in the standalone, causing it to execute more than  
once.


OK I did that.  Here's the output from the IDE

FrontScripts
card id 1004 of stack /Users/Dad/RevDev/Code Library.rev
card id 1003 of stack /Users/Dad/RevDev/Code Library.rev
card id 1002 of stack 

Performance Mystery Solved - IT'S THE DATA STUPID!!

2010-11-11 Thread Peter Haworth
Figured out the IDE/Standalone performance issue, it's nothing to do  
with the code.


I my last email I mentioned how I have a custom property holding the  
long names of all the controls on a card that need to have data loaded  
into them from my database.  On closer inspection, the long name  
includes the name of the stack file which - duh - is my .rev file!!!   
So when the standalone gets the long name of a control from the custom  
property, it is referencing the control in my.rev file, not the  
control in the standalone, and presumably has to go open the .rev file  
every time my code refers to a control.  No wonder everything took  
longer.  Using the ID removes that problem of course.


I still have to figure out what to about this.  I can either change my  
code to use the ID everywhere instead of the long name, or I can  
somehow parse out the the part of the long name that is the path to  
my .rev file.  Or I could build the list of controls in the standalone  
(currently it specifically doesn't do that on the grounds that it  
didn't need to).


Sorry for the false alarms!

Pete Haworth








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


Re: Performance Mystery Solved - IT'S THE DATA STUPID!!

2010-11-11 Thread Peter Haworth
Yes, that's what I'm seeing.  With the references to my .rev filepath  
in the control names, the card I'm using to test was taking around 35  
seconds to open.  I went through and manually removed the references  
to the filepath (that's the only thing I changed I swear!) and built  
the standalone again and now the card opens just about  
instantaneously.  So maybe there's a bug after all in that the .rev  
stack should only be loaded into memory at the first access to it but  
it's happening every time?


Whatever the issue, I have to change something because my standalone  
wouldn't run unless the .rev file was on the same computer and that  
doesn't make any sense.  I think I'm going to bite the bullet and  
change everything over to use control IDs instead of long names.


Pete Haworth

On Nov 11, 2010, at 5:12 PM, Monte Goulding wrote:

Unless you're explicitly purging the stacks, any access to a  
property of a stack file will load it into memory.  The first  
access will take a hit only if the stack isn't already in memory,  
but subsequent accesses should be about as fast whether referring  
to just the stack name or the stack file path, since they're  
interchangeable for mainstacks.


Hi Richard

I don't think this is entirely true. At least it wasn't when I was  
working on the standalone builder all those years ago. There was a  
massive difference in speed between looping over the controls of a  
stack if that stack was invisible toplevel compared to just  
referencing it as a filename. There was a user that was having  
extremely slow builds because they had so many controls.


Cheers

Monte___
use-revolution mailing list
use-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: Performance Mystery Solved - IT'S THE DATA STUPID!!

2010-11-11 Thread Peter Haworth
I have to admit you guys left me behind a while ago.  But I'm glad I  
may have created a platform for some knowledge that wasn't there  
before, plus I've got a fix for my problem so yes, definitely a good  
day!


Pete Haworth

On Nov 11, 2010, at 7:04 PM, Richard Gaskin wrote:


Great work, Monte!  Thanks for running that test.

So the difference is in addressing controls *within* a stack, but  
not with the stack itself.  Hard to anticipate, but very good to know.


So Peter has a solution, and I learned two new things today about  
performance.


A good day...


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


More on IDE vs Standalone Performance issues

2010-11-09 Thread Peter Haworth
Spent the last day or so trying to get some data to track this problem  
down by inserting code to write details of the time taken for various  
chunks of code to execute into a text file so I could see what was  
going on.  I narrowed it down to a command that loads the text  
property of an option button by executing an SQLite SELECT statement  
that is defined in a custom property for the button, then setting the  
text property of the button to the resulting data.


I executed the code using exactly the same data in the same database  
both in the IDE and the standalone.


Here's a snippet from the debug file relating to the loading of one  
option button in the IDE:


Starting loadOneList button DB_RcvblsAc
0   Start processing SELECT...
1   End processing SELECT ...
1   Start setting menu text
1   End setting menu text

The number at the start of each line is the number of milliseconds  
since the start of the loadOneList command.


Now here is a same snippet taken from the debug file created by the  
standalone for the same button:


Starting loadOneList button DB_RcvblsAc
731 Start processing SELECT...
976 End processing SELECT...
976 Start setting menu text
2196End setting menu text

As you can see, the time taken between each display is hundreds of  
times more than in the IDE in every case.  It's not limited to just  
one snippet of code, it's universal.  Getting through loadOneList  
takes roughly 1 millisecond in the IDE and more than 2 seconds in the  
standalone.


Here's the code that is executed between the Starting loadOneList  
message and the Start processing SELECT message:


if pselection is empty then
  if listValues is among the lines of the customKeys of  
myControl then

 put the listValues of myControl into tlistspec
  else
 put the text of myControl into tdata
  end if
   else
  put pselection into tlistspec
   end if
   if tlistspec is not empty then
  repeat for each line myLine in tlistspec

I stepped through the code in debug to make sure it didn't head off in  
unexpected directions (eg setProp/getProp handlers) and there was  
nothing of that nature. The writing of the debug information takes  
some time but that should be the same overhead in the IDE and the  
standalone.


Help!

Pete Haworth








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


Re: More on IDE vs Standalone Performance issues

2010-11-09 Thread Peter Haworth
Right now, it's all part of a pretty large application but I think I  
can create a simple test stack with one card in it, although you'll  
still need the SQLite database.


I haven't posted stack files before - how do I do that?

Pete Haworth


On Nov 9, 2010, at 12:10 PM, use-revolution-requ...@lists.runrev.com  
wrote:



Date: Tue, 9 Nov 2010 10:26:39 -0800
From: Bob Sneidar b...@twft.com
Subject: Re: More on IDE vs Standalone Performance issues
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 6f5b0f5e-e1a5-4c49-93af-bca8c73fc...@twft.com
Content-Type: text/plain; charset=us-ascii

I think you are on to something there Peter. This may be something  
for the bug reports. Is there a test stack with the debug written  
into it that you could post so we can try it on our end?


Bob


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


Re: Code for Database Transaction Processing

2010-11-09 Thread Peter Haworth
This isn't specific example including complete code but the general  
flow is:


revExecuteSQL gDBID,BEGIN TRANSACTION
.
revdbExecute your SQL command
if error
revRollBackDatabase gDBID
exit
end if
.
revdbExecute your SQL command
if error
revRollBackDatabase gDBID
exit
end if
.
repeat the above for whatever SQL commands you need.
.
revdb_Commit(gDBID)


Note that if you don't issue the BEGIN and COMMIT commands, SQLite  
automatically treats each individual db update command you give it as  
a separate transaction.


There's a good write up of the SQLite transaction details at http://www.sqlite.org/lang_transaction.html 
.


Pete Haworth








On Nov 9, 2010, at 7:32 PM, Wilde Electric wrote:


Hello,

I have been unable to find any reference to code examples for doing
Transaction Processing with SQLite DB

I have only found a note from Trevor revExecuteSQL to BEGIN  
TRANSACTION etc

without an example.

Could someone provide a code example that starts with the BEGIN  
TRANSACTION

and finishing with COMMIT TRANSACTION?

Thank You for your help,

David J. Lamp


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


Re: Painfully slow performance (Trevor DeVore)

2010-11-07 Thread Peter Haworth
Thanks for all the input.  I've pretty much ruled out SQLite as the  
cause of the problem because I'm using the same database in the IDE  
and the standalone so unless the standalone is using a different  
SQLite library than the IDE, there shouldn't be any difference in  
performance between the two.


Maybe it would help if I give a little more detail as to what is  
happening on the card.


The basic design of most of my cards involves a datagrid which  
displays summary information about selected table entries.  When the  
user clicks on a row in the datagrid, I get the single entry  
associated with that row from the SQLite table and load information  
from it into controls on the form.  I use naming conventions for the  
controls that allow the code to figure out which column in the table  
entry they are associated with.


The slow down in performance is directly related to the number of  
option buttons on the card - no option buttons, no slowdown.  For a  
card with several option buttons, when I click on a datagrid row in  
the IDE, the update of the controls on the card is instantaneous.   
When I do the same thing in the standalone, the update of the controls  
is painfully slow.  This is using exactly the same data from the same  
database.


The code to handle option buttons simply executes a SELECT statement  
to get data from the database, a simple set statement to set the text  
of the control to the data from the SELECT statement and another  
statement to set the menuhistory of the control using the lineoffset  
function to locate the value of the column in the current table row to  
the text of the control.


Help!


Pete Haworth









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


Painfully slow performance

2010-11-06 Thread Peter Haworth
I just built my first standalone with LiveCode 4.5 (on OSX) and I'm  
seeing painfully slow performance compared to the same application  
built with 4.0.


I'm using an SQLite database to populate all the data on the cards in  
the app, not sure if there's some problem with the SQLite side of  
things.  Only other thing I can think of is that I am using several  
front scripts.  Opening a card used to be almost instantaneous, now  
it's taking 30-45 seconds.  Bringing up the data for a different  
SQLite row used to be instantaneous, now takes 10 seconds or so.  This  
is consistant across all the cards that handle data fro any table in  
my SQLite database.


The 4.0 standalone still works just fine using the same database.

Any ideas?

Pete Haworth









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


Slow Performance - Update

2010-11-06 Thread Peter Haworth
I guess I was too hasty in accusing LiveCode 4.5 of performance  
issues!  I rebuilt my application using Rev Studio 4.0 using the same  
code base and the performance issues are still there in the standalone.


So the issue now is that the problem doesn't occur in the IDE, only in  
the standalone and I don't see any code that distinguishes between the  
two environments.  I've isolated the problem down to some code that  
loads entries into option menus by querying my SQLite database.  I've  
checked the timing of the SQLite query and nothing seems awry there.


Does anyone have any tips on how to debug something like this in a  
standalone without using a large number of answer information  
statements or any tips on things that work fine in the IDE but perform  
slowly in a standalone?  The only major code change I can think of is  
that I am using the long name of various controls and I used to use  
the unique ID, but once again why would that cause a problem in a  
standalone and not in the IDE.


Any suggestions most welcome!

Pete Haworth







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


Re: Livecode suffix is a pain

2010-10-08 Thread Peter Haworth

I'd like to know the answer to that question too.

Pete Haworth

On Oct 8, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



I see that when saving stacks, we have the possibility
of creating a legacy stack.

What difference does this make to the stack ?


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


Re: Image Library Disappeared in LiveCode

2010-10-05 Thread Peter Haworth
Hmmm, well I guess the answer's No but I'm not sure why they would  
show up in the App browser.  In case I didn't explain things properly,  
I'm referring to the  Image Library option on the Development menu.  I  
had used the Import File option on the Images tab to bring in some  
image files under Revolution 4.0.  They still show up in Rev 4.0 but  
aren't listed in LiveCode 4.5.


Pete Haworth

On Oct 5, 2010, at 9:22 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 5
Date: Mon, 04 Oct 2010 19:49:17 -0500
From: J. Landman Gay jac...@hyperactivesw.com
Subject: Re: Image Library Disappeared in LiveCode
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 4caa760d.1040...@hyperactivesw.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

On 10/4/10 7:05 PM, Peter Haworth wrote:
I had imported 3 or 4 image libraries into Revolution 4.0.  They  
don't
show up in LiveCode 4.5. I don't have the external sources of the  
image

files on my computer - any ideas on how I can get them back?


Do they show up in the application browser?

--
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: Datagrid Default Column Behavior

2010-10-05 Thread Peter Haworth

OK, got it, misunderstood what to clear out.  All works fine now.

Pete Haworth

On Oct 5, 2010, at 9:22 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 20
Date: Tue, 5 Oct 2010 08:37:07 -0400
From: Trevor DeVore li...@mangomultimedia.com
Subject: Re: Datagrid Default Column Behavior
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID:
aanlktimjlfqoz6eod_lbkxpqnjes2iz0c4gxrj5gu...@mail.gmail.com
Content-Type: text/plain; charset=ISO-8859-1

On Mon, Oct 4, 2010 at 3:44 PM, Peter Haworth  
p...@mollysrevenge.comwrote:


I guess I'm not understanding this correctly.  Here's what I did,  
assuming

the column with the option menu in it is named OptionColumn

On the Datagrid Templates card, I see a button named OptionColumn
Behavior.  I deleted all the lines from the script for that button  
then hit
Apply.  Then I opened the card containing my datagrid but still my  
default
column script is only executed for columns that have not been  
customised.




Deleting the script doesn't change the fact that the button is  
assigned as
the behavior for the OptionColumn column. You need to set the  
behavior

property of the OptionColumn group on you template card to empty.
Otherwise you have a column template with no script at all (because  
you

deleted the script in OptionColumn Behavior).

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


Re: Image Library Disappeared in LiveCode

2010-10-05 Thread Peter Haworth
Prowled around a bit more and found where the icons were stored in Rev  
4.0 (I'm running on OSX).  They are in the Documents/My Revolution  
Studio/Resources/Icon Libraries folder.  Each set of icons I imported  
is in a rev stack named revlib followed by the name of the icon  
library.  I'm hoping I can just move those stacks to somewhere in the  
new LiveCode hierarchy to have them show up.  Any ideas?


Pete Haworth

On Oct 5, 2010, at 9:22 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 5
Date: Mon, 04 Oct 2010 19:49:17 -0500
From: J. Landman Gay jac...@hyperactivesw.com
Subject: Re: Image Library Disappeared in LiveCode
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 4caa760d.1040...@hyperactivesw.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

On 10/4/10 7:05 PM, Peter Haworth wrote:
I had imported 3 or 4 image libraries into Revolution 4.0.  They  
don't
show up in LiveCode 4.5. I don't have the external sources of the  
image

files on my computer - any ideas on how I can get them back?


Do they show up in the application browser?

--
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: Image Library Disappeared in LiveCode

2010-10-05 Thread Peter Haworth
Thanks to all for the suggestions.  I pointed the LiveCode preferences  
to the old Revolution folder and all works fine again now.


I know that was a trivial issue in the general scheme of things but  
sure would have been nice to have some information about it in the  
release notes for LiveCode;  I'm now wondering how many other trivial  
but time-consuming problems I'm going to uncover in the coming months.


I also see in the release notes that neither the user documentation  
nor the dictionary have been updated to reflect the LiveCode changes  
and also notice that many messages from LiveCode still refer to  
Revolution.  And I see from posts on this forum that there are new  
datagrid library features included with LiveCode that I can't find any  
mention of in the release notes.  Maybe there are other undocumented  
changes in LiveCode?


Pete Haworth









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


Re: Drag drop reordering of a DataGrid form

2010-10-04 Thread Peter Haworth
Maybe I'm misunderstanding something but I don't see any code for  
handling drag/drop in the default datagrid behavior script I got when  
I installed LiveCode 4.5


Pete Haworth

On Oct 4, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 3
Date: Mon, 4 Oct 2010 09:40:47 -0400
From: Trevor DeVore li...@mangomultimedia.com
Subject: Re: Drag  drop reordering of a DataGrid form
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID:
aanlktiknk=kzhhcl5bbtpdecy1dpaexe37tww=r7q...@mail.gmail.com
Content-Type: text/plain; charset=ISO-8859-1

On Sat, Oct 2, 2010 at 9:32 AM, zryip theSlug  
zryip.thes...@gmail.comwrote:



Just to clarify, this is a change in the datagrid library itself not
in the LiveCode engine.
I have tried this by using the revdatagridlibrary stack from the
LiveCode 4.5 into my version of Revolution 4.5 dp2 and now I have to
set the dragAction to make the reorder perform.



In the dgDragMove handler update the code that sets the dragAction  
to this:


## Make sure data grid control will accept drop
if the dragSource contains the long ID of me and (the mouseControl  
is not
empty and the long id of the mouseControl contains the long ID of  
me) then

  set the dragAction to move
end if

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


Re: Datagrid option menu initialisation

2010-10-04 Thread Peter Haworth
Thanks Trevor, that works great.  Follow up question for you.  I have  
a datagrid table with two option menu columns in it.  It's OK to  
initialise the first one per your reply but the contents of the second  
one need to be set differently depending on the currently selected  
value in the first option menu.  Any recommendations as to how to do  
that?


Pete Haworth

On Oct 4, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 4
Date: Mon, 4 Oct 2010 09:42:59 -0400
From: Trevor DeVore li...@mangomultimedia.com
Subject: Re: Datagrid option menu initialisation
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID:
aanlktimob-tivaybneta-qqdoawv-ahkyoh0vec8f...@mail.gmail.com
Content-Type: text/plain; charset=ISO-8859-1

On Sat, Oct 2, 2010 at 12:22 PM, Peter Haworth  
p...@mollysrevenge.comwrote:



I have defined an option menu in a datagrid column whose contents are
created by reading data from an SQLite database - the contents will  
be the
same for each instance of the option menu and should be loaded when  
the card
containing the datagrid is opened.  Where should I put the code to  
create

the option menu contents?



In the card that contains the data grid :-)

In the preopencard or openCard message query the database, update  
the menu
button text in the data grid template and then load the data grid.  
Since the
template has the updated menu text all instances of your column will  
contain

the updated menu text.

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


Re: Datagrid Default Column Behavior

2010-10-04 Thread Peter Haworth
I guess I'm not understanding this correctly.  Here's what I did,  
assuming the column with the option menu in it is named OptionColumn


On the Datagrid Templates card, I see a button named OptionColumn  
Behavior.  I deleted all the lines from the script for that button  
then hit Apply.  Then I opened the card containing my datagrid but  
still my default column script is only executed for columns that have  
not been customised.


Any ideas?


Pete Haworth

On Oct 4, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 5
Date: Mon, 4 Oct 2010 09:45:02 -0400
From: Trevor DeVore li...@mangomultimedia.com
Subject: Re: Datagrid Default Column Behavior
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID:
aanlktimf1et1p5pfc_g-vpemmpd7hf2txg+-xsbq-...@mail.gmail.com
Content-Type: text/plain; charset=ISO-8859-1

On Sun, Oct 3, 2010 at 9:06 PM, Peter Haworth  
p...@mollysrevenge.comwrote:


What is the correct way to set the default column behavior of a  
datagrid so
that the script is entered for columns which have been customised  
to contain

option menus?

I have set the default column behavior property for the datagrid  
but suing
debug shows that the script is only executed for columns that hve  
not been

customised in some way.



When you create a custom column the behavior script of the column  
template
is assigned to the behavior that is created alongside the column  
template.
The default column behavior only applies to column templates that do  
not
have a behavior assigned. Just set the behavior of your new column  
template

to empty and then it will inherit the default behavior.

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


Image Library Disappeared in LiveCode

2010-10-04 Thread Peter Haworth
I had imported 3 or 4 image libraries into Revolution 4.0.  They don't  
show up in LiveCode 4.5.  I don't have the external sources of the  
image files on my computer - any ideas on how I can get them back?


Pete Haworth









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

2010-10-03 Thread Peter Haworth
What is the correct way to set the default column behavior of a  
datagrid so that the script is entered for columns which have been  
customised to contain option menus?


I have set the default column behavior property for the datagrid but  
suing debug shows that the script is only executed for columns that  
hve not been customised in some way.


This is with LiveCode 4.5

Pete Haworth








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


LiveCode Datagrid Questions

2010-10-02 Thread Peter Haworth
I'm having a number of issues with datagrids created in LiveCode 4.5.   
Datagrids created by Revolution 4.0 still work fine.


I am unable to create custom column behaviors for any columns using  
the recommended method.  I click the plus sign for the column, the  
card with the row template is displayed, I select the row template  
group but the Edit Group button in the toolbar or on the Object menu  
is greyed out and doesn't function.  If I select the card containing  
the template for the datagrid, then select the Row Template group,   
the Edit Group command is available to me.


I have a default column behavior script which I use for all my  
datagrids.  Those created under 4.0 correctly execute the various  
handlers in that script but any created under 4.5 never execute any of  
the handlers in that script (the default column behavior is set to the  
correct button).


I see two new handlers in the default column behavior supplied with  
LiveCode - PreFillinData and ResetData.  What are some uses for these  
handlers?


I also saw a recent post to this list regarding some new built in drag  
and drop reordering handlers in the default script - they don't appear  
in my default script.


I have been using the Data Group Handler plugin.  I have removed it  
from the Plugins folder in the Application bundle but these problems  
did not go away.


Any answers much appreciated.

Pete Haworth









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


Re: LiveCode Datagrid Questions (zryip theSlug)

2010-10-02 Thread Peter Haworth
I understand.  I wasn't placing any blame on DGH.  I always de-install  
any third party products when trying to troubleshoot weird issues like  
this and the problems still exist when DGH is not installed so no  
blame on DGH.


Pete Haworth

On Oct 2, 2010, at 7:09 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Peter,

To clarify things about DGH (Data Grid Helper):

1) About interaction with the IDE.
- DGH traps double click and click ONLY on datagrid groups.
- it interacts with the LiveCode's inspector ONLY for the objects in
its template area.

2) About scripts
- DGH build scripts to fill column behaviors but it is not able to
change how the datagrid library performs.

3) About templates
- DGH uses its own way to edit the templates of a datagrid in a
special area and never directly in the datagrid template it edits.
- DGH not uses the IDE to edit templates.


So DGH is not capable to generate the issues you describe:
- group capability disable in the IDE  (menu and toolbar)
- handlers not working in a behavior script


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

2010-10-02 Thread Peter Haworth
I have defined an option menu in a datagrid column whose contents are  
created by reading data from an SQLite database - the contents will be  
the same for each instance of the option menu and should be loaded  
when the card containing the datagrid is opened.  Where should I put  
the code to create the option menu contents?


Pete Haworth







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


Re: sqlite: foreign keys

2010-09-28 Thread Peter Haworth
I think the issue is whether the version of the sqlite drivers in  
LiveCode are up to date enough to include foreign key support at all.   
According to http://www.sqlite.org/foreignkeys.html, foreign keys were  
supported as of SQlite version 3.6.19 but I don;t know how to find out  
what version of sqlite is included with LiveCode.  If foreign key  
support is included, it's off by default so you do have to enable it  
as detailed by Trevor.


Pete Haworth

On Sep 28, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 14
Date: Tue, 28 Sep 2010 07:53:40 -0400
From: Trevor DeVore li...@mangomultimedia.com
Subject: Re: sqlite: foreign keys
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 3f385a2b-214c-4867-8af6-08887fe46...@mangomultimedia.com
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes

On Sep 25, 2010, at 3:42 PM, David Bovill wrote:


A quick geeky question: does anyone know if foreign key support has
been
turned on for the recent sqlite driver


I don't think you need to turn it on when compiling. It is a pragma
setting:

http://www.sqlite.org/pragma.html#pragma_foreign_keys

Untested but try this:

revExecuteSQL theConnectionID, PRAGMA foreign_keys = true

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


Re: Showing Invisible Fields

2010-09-20 Thread Peter Haworth
I do intercept several messages in front scripts (mouseUp, menuPick  
come to mind).  I tried to relayer the field in the size and position  
tab of the property inspector but the arrows to manipulate the layer  
are greyed out and if I type in a new layer number and tab, I get a  
beep and the layer goes back to the original value.


Pete Haworth

On Sep 20, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:


Oh just read your post more carefully. That is weird. I wonder if  
there is some message you are intercepting that is keeping the  
engine from showing everything. Just shooting in the dark here.


Bob


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

2010-09-20 Thread Peter Haworth
Thanks Zryip and Shadow Slash.  Looks like this will work fine.  I  
need to format the tooltip from data in an Sqlite database but the  
principal should be the same.


Pete Haworth

On Sep 20, 2010, at 9:24 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Hi Pete,

As pointed out by Shadow Slash you can associate a tooltip in each
field of a row by using the FillInData handler located in the default
column behavior script.

I have just uploaded a new experiment stack in my lab:
http://www.aslugontheroad.co.cc/index.php?option=com_phocadownloadview=categorydownload=14:experiment-016-tooltips-for-rows-in-a-dgid=7:data-gridItemid=63

This lab stack shows how using an invisible column to have a different
tooltip for each rows.


Regards,
--
-Zryip TheSlug- wish you the best! 8)
http://www.aslugontheroad.co.cc


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

2010-09-19 Thread Peter Haworth
I see there is a dgColumnTooltip property for datagrids that sets the  
tooltip displayed when the mouse is over the column header.  Is there  
a way to set the tooltip when the mouse is over a data row in the  
datagrid, not the column header?


Pete Haworth








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


Showing Invisible Fields

2010-09-18 Thread Peter Haworth
I'm having problems making invisible fields show up on a card.  I  
click the Show Invisible Objects option on the View menu and some  
invisible fields show up but not all.  In the Application Browser, I  
can open the property inspector for a field that does not show up,  
then check the Visible option and it shows up.  Uncheck it and it  
disappears again.


Pete Haworth








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


Re: Question about the debugger in Rev 4.0

2010-09-09 Thread Peter Haworth

I have a variation on this behaviour I've noticed.

My main stack inserts some front scripts from another stack.  I  
recent;y needed to debug a problem in one of the front scripts that  
was called in the preOpenCard event of my main stack so set a  
breakpoint in the fornt script, quit Revolution and re-opened my main  
stack.  The breakpoint was ignored.  The only way I could get the  
breakpoint to trigger was to open the front script stack first, then  
open my applications main stack.


Pete Haworth








___
use-revolution mailing list
use-revolution@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 Drag and Drop

2010-09-08 Thread Peter Haworth
Thanks!  That's weird, I searched the forum for drag and drop and  
my thread didn't appear in the results.  Got the latest version of DGH  
by the way, just haven't had time to test it more yet.


Pete Haworth

On Sep 8, 2010, at 7:45 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 13
Date: Tue, 7 Sep 2010 22:26:28 +0200
From: zryip theSlug zryip.thes...@gmail.com
Subject: Re: Datagrid Drag and Drop
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID:
aanlktikwkkh=7xszppvn7zbzgegl73wxctiy6=a2w...@mail.gmail.com
Content-Type: text/plain; charset=ISO-8859-1

On Tue, Sep 7, 2010 at 9:42 PM, Peter Haworth  
p...@mollysrevenge.com wrote:
Months ago, I got some guidance form Trevor on how to drag and drop  
into and
out of a datagrid.  I ended up not needing to do it at the time but  
now I do
and I can't find the notes I made on it.  I've searched the online  
datagrid
documentation and can't find anything on this subject.  Can anyone  
point me

in the right direction?
Thanks,

Pete Haworth


Hi Pete,

That is the thread you have opened months ago:
http://forums.runrev.com/phpBB2/viewtopic.php?p=17333.

For reorder lines in the same Data Grid, install the copy of the Data
Grid Helper I sent you today.
Select a Datagrid, then go to the Scripts topics of the properties
palette. You have a menu Reorder lines. Click on the Install
script button to fill the datagrid group with the code you need.

This is good opportunity to test this new DGH's feature. ;)


Regards,
--
-Zryip TheSlug- wish you the best! 8)
http://www.aslugontheroad.co.cc


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

2010-09-07 Thread Peter Haworth
Months ago, I got some guidance form Trevor on how to drag and drop  
into and out of a datagrid.  I ended up not needing to do it at the  
time but now I do and I can't find the notes I made on it.  I've  
searched the online datagrid documentation and can't find anything on  
this subject.  Can anyone point me in the right direction?

Thanks,

Pete Haworth









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


Re: use-revolution Digest, Vol 84, Issue 3

2010-09-02 Thread Peter Haworth

Thanks, that works perfectly!

Pete Haworth


On Sep 2, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



No no, ;)

I forgot to precise that you have to create the image first

A script like this should works to drag a field:

on dragStart
  if (there is not a image DragField of this cd) then
 lock screen
 create image DragField
 set the visible of it to false
 unlock screen
  end if

  export snapshot from field 1 to image DragField as PNG

  set the dragImage to the ID of image DragField
  put (the clickH - the left of me)  comma  (the clickV - the top
of me) into tImageOffset
  set the dragImageOffset to tImageOffset

  set the dragData[private] to text of field 1
end dragStart


Regards,
--
-Zryip TheSlug- wish you the best! 8)
http://www.aslugontheroad.co.cc


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


DragImage question

2010-09-01 Thread Peter Haworth
Just working on my first drag/drop code.  All seems to be working fine  
and a lot easier to implement than I thought it would be!


I'm dragging the contents of a field (text) into another field on the  
same card and would like to see a faint outline of the source field  
and it's text follow the cursor to the destination field.  I know I  
can set the dragImage property to an image number but in this case,  
the image would be different each time because of the text in the field.


Any ideas?

Pete Haworth









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


Re: DragImage question

2010-09-01 Thread Peter Haworth
Thanks, I can't quite get this to work.  If  I use your code, I get an  
error on the export command Chunk: No such object and the file is  
not created.


I changed the export command to .file DragImageField instead  
(file instead of image), then the file was created but my Mac says  
it's a simple text file.  Then the set command fails with the same  
error.


Any ideas?

Pete Haworth


On Sep 1, 2010, at 9:39 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 19
Date: Wed, 1 Sep 2010 10:38:53 +0200
From: zryip theSlug zryip.thes...@gmail.com
Subject: Re: DragImage question
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID:
aanlkti=c2sielcdgws4hwlp9_ctjkwhc7y0h0woy6...@mail.gmail.com
Content-Type: text/plain; charset=ISO-8859-1

On Wed, Sep 1, 2010 at 8:53 AM, Peter Haworth  
p...@mollysrevenge.com wrote:
Just working on my first drag/drop code.  All seems to be working  
fine and a

lot easier to implement than I thought it would be!

I'm dragging the contents of a field (text) into another field on  
the same
card and would like to see a faint outline of the source field and  
it's text
follow the cursor to the destination field.  I know I can set the  
dragImage
property to an image number but in this case, the image would be  
different

each time because of the text in the field.


Hi Pete,

A solution could consist to create an image of the field on the fly.
For doing that you can use the export snapshot command:

export snapshot from field myDataField \
to image DragImageField as PNG
 set the dragImage to the short id of image DragImageField


Regards,
--
-Zryip TheSlug- wish you the best! 8)
http://www.aslugontheroad.co.cc


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

2010-08-22 Thread Peter Haworth
It appears that datagrid column names cannot be numeric?  I have a  
datagrid that has alpha column names followed by some numeric ones. No  
matter what method I use for filling in the data, the columns with  
alpha names display correctly but the columns with numeric names are  
empty.  If I change the column names to be alpha and put the numeric  
value in the column label field, all works fine.


Pete Haworth









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


Re: Mouse Gestures

2010-08-22 Thread Peter Haworth
Thanks. I'll check out the library.  I've entered enhancement request  
8920 at the QCC related to this.


I also entered enhancement request 8921 to cover the ability to add/ 
remove objects from groups with drag and drop in the Application  
Browser which I suggested a few days ago to the list.  I like some of  
the tools that were suggested to do this but still think it should be  
incorporated into the IDE.


Pete Haworth








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


Mouse Gestures

2010-08-21 Thread Peter Haworth
I don;t see anything in the dictionary that looks like there are any  
built in features to handle mouse gestures.  Wouldn;t be the first  
time I've missed something in Rev but are there any such features or  
has anyone written code to implement gestures?


Thanks,

Pete Haworth








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


(data grid) is there a good workaround for obtaining other column values in FillInData for a Data Grid Table?

2010-08-18 Thread Peter Haworth
Not sure what the source of your data is but if it's coming from a  
database, maybe you could have the db do the calculation for you when  
it retrieves the data.  I'm using sqlite and have found it to be  
lightning fast at calculations while retrieving data, so maybe  
something like SELECT columnA + columnB as Total, columnA, columnB  
FROM ,tablename


Pete Haworth

On Aug 18, 2010, at 9:25 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 12
Date: Tue, 17 Aug 2010 19:15:40 -0700
From: Josh Mellicker j...@dvcreators.net
Subject: (data grid) is there a good workaround for obtaining other
column  values in FillInData for a Data Grid Table?
To: how to use Revolution use-revolution@lists.runrev.com
Message-ID: 9aaa4c70-8786-42d2-a901-f117d956c...@dvcreators.net
Content-Type: text/plain; charset=us-ascii

Let's say you had a data grid table with three columns, and you  
wanted the first column to be the sum of the other two, like this:


10  7   3
5   2   3
7   4   3

How would you calculate the first column while the table is filling  
in?


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


Re: [HELP] anyone have a simple handler to add a control to a group programatically?

2010-08-12 Thread Peter Haworth

I will put in an enhancement request and start my campaign for votes!

Can someone point me to how to do this in tRev?  I just got tRev and  
still finding my way around it.


Thanks for the tip on revNavigator, just tried it out and seems to  
work most of the time but I did find a few instances of the changes I  
made in it not being reflected in the Application Browser.


It's great that these 3rd-part tools and plugins are available but I'd  
still prefer to see it as aprt of the Rev IDE.


Pete Haworth

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


Re: Front scripts vs Behaviors

2010-08-12 Thread Peter Haworth
Yep, the group=table/control=column model seems to work really well.   
I'm considering making all the handlers for it available once I've  
resolved the front script/behavior issue and tidied up the code.


On the message path issue, I just meant ti wouldn't reach the target  
following the normal message path.  The model you showed using  
dispatch is just what I need.


Pete

On Aug 11, 2010, at 9:01 PM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 9
Date: Wed, 11 Aug 2010 11:43:23 -0700
From: Mark Wieder mwie...@ahsoftware.net
Subject: Re: Front scripts vs Behaviors
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 95697085765.2010084...@ahsoftware.net
Content-Type: text/plain; charset=us-ascii

Peter-

Wednesday, August 11, 2010, 10:01:05 AM, you wrote:

interface between controls on cards and my sqlite database.  Groups  
on

the card are tied to a db table and controls in the group are tied to
columns in the table related to the group.


Cool. I've thought of doing something like that.


If I switch over to behaviors (and I'm inclined to do that)  I need a
way to handle this local logic since, as you say, the messages  
wont;

ever make it to the actual control, but I still need the database


No, I did *not* say that (or at least didn't mean that). Messages
won't get passed farther down the path (card, stack, backscripts...)
*unless* you do something yourself. If you have a handler (e.g.,
mouseUp) in the behavior button and not in the target button you can
use the dispatch message in the behavior button to pass a message to
the target.

behavior:
on mouseUp
 doSomething
 dispatch doMouseUp to me
end mouseUp

target1:
on doMouseUp
-- change contents of another field
end doMouseUp

target2:
on doMouseUp
--  recalculate totals
end doMouseUp

target3:
on doMouseUp
--  stuff like that
end doMouseUp

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

2010-08-11 Thread Peter Haworth
Thanks for the replies and clarification.  I do normally check the  
result of each db call but came across a circumstance where  
revdb_connectionerr would have been useful.


I like the idea of using try/catch for all db operations and will  
implement that but I guess it relies on knowing what all the possible  
error messages can be.  Is that dependant on which sql implementation  
I'm using (I use sqlite).


However, that gives rise to another question.  I'm using try/catch in  
other places to execute rev commands that are built programmatically.   
All works fine but the error messages that are caught are full of  
sequences of three numbers separated by commas as well as the original  
statement and an English error message (sorry don't have any examples  
immediately to hand).  Does anyone know what those numbers indicate?


Pete Haworth








On Aug 11, 2010, at 8:12 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 9
Date: Tue, 10 Aug 2010 13:17:32 -0700
From: Bob Sneidar b...@twft.com
Subject: Re: revdb_connectionerr
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 13879e4d-8eae-45d6-95ac-25601c3df...@twft.com
Content-Type: text/plain; charset=us-ascii

Agreed. In fact, I put all database operations inside a try/catch  
structure so as not to assault the end user with error dialogs that  
they don't know what to do with. If you are making a TON of calls in  
your app, you may want to consider writing a special database error  
function which knows how to handle all the errors you want in a way  
that the end user (and your app) can work with.


For instance, a Database temporarily unavailable. Try again?  
dialog that gives the user a chance to call IT and have them get the  
DB back online without dumping your app mid transaction.


Bob


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


Re: Front scripts vs Behaviors

2010-08-11 Thread Peter Haworth

Thanks Mark.  I've read Richard's write up before, very useful.

Maybe if I explain a bit more what I'm trying to achieve.  I've  
written a development framework for my apps which serves as the  
interface between controls on cards and my sqlite database.  Groups on  
the card are tied to a db table and controls in the group are tied to  
columns in the table related to the group.  Every time the user  
modifies the content of a control, my frontscripts handle the updating  
of the database in handlers such as menuPick, closeField, etc.


Sometimes, a specific control may need some local logic to handle  
things it needs to do other than just updating the db (changing the  
contents of another field, recalculate totals, stuff like that).  The  
front script handlers pass their respective messages on so I can write  
that local logic as a handler for that specific instance of that  
type of control.


If I switch over to behaviors (and I'm inclined to do that)  I need a  
way to handle this local logic since, as you say, the messages wont;  
ever make it to the actual control, but I still need the database  
update to occur in the behavior.  I'm thinking perhaps if I have  
handlers in the controls themselves named something like  
localMenuPick or something similar then have the behavior menuPick  
handler send/dispatch a localMenuPick messge to the control, that  
might work?


Pete


On Aug 11, 2010, at 8:12 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 27
Date: Tue, 10 Aug 2010 22:10:09 -0700
From: Mark Wieder mwie...@ahsoftware.net
Subject: Re: Front scripts vs Behaviors
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 136648291062.20100810221...@ahsoftware.net
Content-Type: text/plain; charset=us-ascii

Peter-

Check out Richard Gaskin's writeup on the message path:

http://www.fourthworld.com/embassy/articles/revolution_message_path.html

Behavior objects are not at all like frontscripts, but are more like
local backscripts. That said, it sounds from your description that
behaviors fit your purposes more than the use of frontscripts does.

You wouldn't normally pass a message on after a behavior button has
handled it (or not) because it would be at the end of the message
path. Behavior objects also allow you to override a default behavior
when desired.

--
-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: [HELP] anyone have a simple handler to add a control to a group programatically?

2010-08-11 Thread Peter Haworth
I would love to see the ability to drag/drop controls into or out of a  
group in the Application Browser window.  Sometimes ungrouping, select/ 
deselect control, group can be really error prone if nested groups/ 
hidden fields are involved.


Pete

On Aug 11, 2010, at 8:12 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 20
Date: Tue, 10 Aug 2010 20:10:09 -0500
From: J. Landman Gay jac...@hyperactivesw.com
Subject: Re: [HELP] anyone have a simple handler to add a control to a
group programatically?
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 4c61f871.9020...@hyperactivesw.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

On 8/10/10 8:04 PM, Andre Garzia wrote:

Folks,

Trying not to reinvent the wheel here. I am working with some  
runtime group

creations but I like to be able to add controls to an existing group.
Checked the docs and did not found anything like that. Did anyone  
here

created such command?

Thanks in advance
Andre groups inside groups inside groups inside... Garzia



Use: create obj in grp grpname. For example:
  create btn newBtn in group groupTwo

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


revdb_connectionerr

2010-08-10 Thread Peter Haworth
Does this function return the result of the last db operation or the  
last db operation that failed?  The dictionary entry seems to suggest  
the latter...


Pete Haworth








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


Front scripts vs Behaviors

2010-08-10 Thread Peter Haworth
I'm currently using front scripts to handle common events for  
different types of controls.  For example, I have menuPick, mouseDown,  
and mouseUp front script handlers that deal with what I want do in  
those events for option menu buttons.  They all pass the event on so  
the real controls can have their own local logic in addition to the  
common logic in the front scripts.


I guess I'm wondering if it might be better to use behaviors instead  
of front scripts.  The front scripts seem to work just fine but I had  
to jump through several hoops to prevent them from intercepting  
controls I didn't want them to handle, for example everything in the  
rev IDE, and I think some of the occasional hangs I get in Rev might  
be because of these front scripts.  It feels like the behavior  
approach might be tidier since it keeps the logic closer to the  
objects themselves.


If I do switch to behaviors,  I'm not quite sure how to deal with the  
local logic I mentioned earlier.  If the behavior handlers pass the  
event, will it end up going to the instance of the object that  
initiated the event or will I have to use a different approach for that?


Seems like it might be a matter of programming style as much as  
anything else but I'm wondering what guidance there might be out there  
from people who've been using Rev for a lot longer than I have.


Thanks,

Pete Haworth









___
use-revolution mailing list
use-revolution@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 data in List Magic tables

2010-08-05 Thread Peter Haworth
Probably worth mentioning that, as pointed out to me by the good folks  
on this list, it's NOT a good idea to put any of your application's  
data files in the Applications folder if you plan on writing to them.   
Unless the Mac user is an administrator, he/she won't have write  
access to the Applications folder. I ended up creating a folder in the  
user's Documents folder to hold my data files (sqlite db, etc).  And  
also a folder in the user's Library/Preferences folder to hold that  
user's preferences information.


Pete Haworth

On Aug 5, 2010, at 9:24 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 24
Date: Thu, 5 Aug 2010 17:27:12 +0200
From: Klaus on-rev kl...@major.on-rev.com
Subject: Re: Saving data in List Magic tables
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: dc038219-5b8b-4542-b7e9-a1f2d797d...@major.on-rev.com
Content-Type: text/plain; charset=us-ascii

Hi Charles,


Richard,

What is the best location for an app to be installed on OSX?


The Application folder. Get it with:
specialfolderpath(apps)


Charles Szasz
csz...@mac.com



Best

Klaus


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


Re: [OT-Rodeo] Still waiting for the aha moment

2010-07-21 Thread Peter Haworth
I downloaded Rodeo a couple of days ago and have spent a little time  
using Transfer and playing around with it.


I guess I'm struggling with the definition of what an app is.  To  
me, an app is a fully functional program that provides an interface  
for the user to interact with, logic to manipulate user input, the  
ability to store and retrieve data, etc but all I see in Rodeo is a  
way to lay out web pages and perform a few basic actions, certainly no  
data retrieval/storage functionality. Do I have to learn another  
language to implement the logic and data storage behind the web pages?


I hope I'm missing something or that it's early days yet and there's a  
lot more to come in Rodeo because right now it doesn't come close to  
providing me with the ability to implement an app by my definition  
and I really want to  experience that aha moment!


Pete Haworth

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


Re: [OT-Rodeo] Still waiting for the aha moment

2010-07-21 Thread Peter Haworth
Thanks Jerry.  Just so you know, I already purchased Rodeo for it's  
potential!


I guess your answer falls into the category mentioned in my original  
email of it's early days yet and that's fine.  I looked at the  
countdown to release link and I'l wait with bated breath for July  
27th when the data objects are scheduled for release, that's one of my  
major concerns right now although I'm guessing there won;t be any  
sqlite connectivity.


I agree with your philosophy of trying to keep things simpler and also  
agree that Revolution can be phenomenally difficult to comprehend,  
especially for new users, but sometimes complexity is the price you  
have to pay for power - a delicate balance!


Pete Haworth





Message: 14
Date: Wed, 21 Jul 2010 17:03:25 -0500
From: Jerry Daniels jerry.dani...@me.com
Subject: Re: [OT-Rodeo] Still waiting for the aha moment
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 2c8551a8-422f-4e2e-a491-de8e9552c...@me.com
Content-Type: text/plain; charset=us-ascii

Hey, Pete!

Taking a look at our countdown to release list in this post may help  
some:


http://rodeoapps.com/limited-pre-release-offer

The a-ha will come in increments. The biggest one we are working on  
now is data. The ability to handle records--edit, delete, create,  
list, etc. it a big step toward app status. The wrapper around the  
app is not as important right now to us as having a quality delivery  
of data / content. But the wrappers are coming along on the target  
platforms.


I think it's pretty clear when you look at the schedule and our  
history, we're making progress and will continue to do so. We are  
discounting our prices heavily to encourage users to get their feet  
wet with the overall framework, syntax and workflow. We also use  
this to fund development. We are not using borrowed or venture  
capital money to do this.




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


Re: Saving Changes in a Standalone

2010-07-01 Thread Peter Haworth
You're not doing anything wrong - Revolution does not allow data,  
custom props, etc to be saved in a standalone application.  I was just  
bitten by this a couple of weeks ago.  I'm using a database to store  
all my data so that wasn't an issue, but I also use custom props whose  
settings have to survive across runs of the application.  I ended up  
writing getProp and setProp handlers for the custom props I cared  
about to store them in an external preferences file.



Pete Haworth








On Jul 1, 2010, at 2:46 PM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 24
Date: Thu, 01 Jul 2010 17:43:48 -0400
From: Gregory Lypny gregory.ly...@videotron.ca
Subject: Saving Changes in a Standalone
To: Revolution use-revolution@lists.runrev.com
Message-ID: d8dd99d7-d3ff-4a81-9968-bcc0ecfa7...@videotron.ca
Content-Type: text/plain; charset=us-ascii

Hi everyone,

I suspect this has come up before.  I just built a standalone  
version of a stack that allows users to import data into fields.   
Custom props are set during a user's session and various other  
changes occur.  I have the following save handler in the stack  
script, but when I quit the standalone and reopen it, none of the  
changes has been kept!


on closeStack
save this stack
end closeStack

What am I doing wrong?  I thought that the contents of fields,  
changes to button menus, and custom props would be saved.


Regards,

Gregory


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


Re: Saving Data in Standalones

2010-06-07 Thread Peter Haworth

Thanks for all the suggestions folks.

I've already set up a preferences file and rewritten the code that  
opens my db to get it's path from there and store the path there if a  
different db is opened and all works well.  Thanks to Sarah Reicheldt  
for the function that returns the user's Preferences folder on OSX or  
Windows.  I have a bunch of other preferences that I'm currently  
storing in custom properties and plan to convert the handling of them  
to use the preferences file also.


As an aside, I did come across a couple of other gotchas in the course  
of implementing that.  I read that opening a file for write access  
will create it if it doesn't already exist.  Perfect I thought, then  
was mystified that it wasn't happening until I scrolled down the  
dictionary entry and found a user comment that files are NOT created  
if their enclosing folder does not exist.


Mark, thanks for the idea of passwording my stack to avoid the  
possible unauthorised modification of it.  I'm thinking I'm probably  
being somewhat paranoid on that front but it could happen.  I also  
like your idea of keeping the substacks in separate files right from  
the development stage for the reason you mention - that it avoids the  
standalone being run/tested in a different environment than in  
development.


Kay, thanks for the suggestion of saving things in my sqlite  
database.  I had indeed thought of that and I may still go ahead with  
that approach.  The main reason I haven't just jumped in and done it  
already is the one you referred to which is the considerable amount of  
coding changes I'd need to make.  Plus the db designer in me is  
baulking at the idea of storing real application data and internal  
data in the same db but I guess I could overcome that or even use a  
separate db.


The only thing I'm still unsure of is this whole issue of the  
Applications folder not being enabled for write access.  On my Mac  
(OSX 10.5), i have read and write access to the Applications folder  
but this keeps coming up which makes me wonder if my Mac is not  
configured in the standard way.  I don;t recall ever changing the  
permissions on the Applications folder, but it is possible.  Don't  
want to assume my Applications folder is set up normally and then find  
that everything falls down when other people try to run the app.


Pete Haworth



___
use-revolution mailing list
use-revolution@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 Data in Standalones

2010-06-07 Thread Peter Haworth
Thanks Mark, it is indeed the case that I'm logging in with admin  
privileges.


After vacillating back and forth on the best solution to this issue,  
here's what I think I'm going to do.


It turns out there are only three custom property names that I need to  
preserve between runs, although they exist in a large number of  
objects.  I think I can write a setProp handler for each of the three  
custom properties that will store their values in either my sqlite db  
or a preferences file of some sort (haven't decided on that yet).   
Each entry will consist of the object's ID as a key, plus it's value.   
I'll put the setProp handlers in my main stack's stack script so it  
will be called for any object that has those properties.


When my application starts up, I'll retrieve all these property values  
and set them into the objects that own them.  I'll have to find a  
mechanism to prevent the setProp handler from updating them again  
during that process but some sort of global variable should take care  
of that.  Alternatively, I could write a getProp handler for each of  
them I guess.


All that's left at that point is to run a one-off script that will  
locate all the instances of these custom properties and put them into  
my sqlite db/preferences file.  I already have code that locates all  
objects with a given custom property so should be a simple matter to  
add the update of the sqlite db/preferences file.


With this approach, I don;t have to worry about splitting up my  
application into two or more stack files, write access to them or the  
issue of preventing users from changing the stack files, which I think  
would probably involve a lot more work than the above solution


Be grateful for any input on this idea..

Pete Haworth

On Jun 7, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 8
Date: Mon, 7 Jun 2010 18:06:27 +0200
From: Mark Schonewille m.schonewi...@economy-x-talk.com
Subject: Re: Saving Data in Standalones
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 4d63dbd4-4428-40e3-9953-b35c3d157...@economy-x-talk.com
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes

Pete,

Probably, you log in on your Mac with admin privileges. That gives you
write access to the applications folder. The guest account (Mac OS X
10.5 and later) and limited accounts don't have write access for the
applications folder and several other folders. That's why you should
avoid writing to those folders.

--
Best regards,

Mark Schonewille


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


Re: REALBasic vs Revolution (Michael Kann)

2010-06-06 Thread Peter Haworth
Thanks for all the input.  As usual, sounds like it comes down to a  
matter of the application and personal preferences.  I've spent  
perhaps 30 minutes looking over Real Studio and what has caught my eye  
so far is the report writer, as previously mentioned, what looks like  
very well organised documentation (which for me is a major problem  
area in Revolution), and IDE that feels more comfortable to me, and at  
first glance, functionality that is at least equivalent to  
Revolution.  Small things catch my eye, like placing controls on a  
tabbed control automatically makes them visible/invisible when a tab  
is clicked on without having to mess with groups as in Revolution.


Lynn, you mentioned several third party report writers for Rev.  I'm  
aware of Quartum but could you point me to any others?  The lack of  
built-in report writing capabilities in Rev is a major issue for me.


Once again, thanks to all for the valuable input.  I'm probably not  
going to switch to Real Studio at this point, I've got too many  
development hours invested in my Revolution app, but when I start my  
next app I think I will try Real Studio out to see what it can do.



Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








On Jun 6, 2010, at 6:42 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Re: REALBasic vs Revolution (Michael Kann)


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

Saving Data in Standalones

2010-06-06 Thread Peter Haworth

Not again, I can hear some people saying!

I've just run into this long standing issue in the context of needing  
to save the filepath to my database across runs of Revolution and also  
various other settings I need to save which are currently in custom  
properties.


I'm not concerned about saving my applications data across runs  
because I'm using an sqlite database for that.  The stuff I need to  
preserve is more in the way of internal settings.  I'd prefer to leave  
them in custom properties if I can because storing them elsewhere will  
entail a substantial amount of work to find all the places in my code  
where I set and get custom properties and replace the logic with  
something else.


I've searched the list archives and the discussion forums and also  
read Sarah Reicheldt's revJournal article and Mark Wieders Conference  
presentation and still somewhat confused by the solutions to this.


The most common solution seems to be to create a single stack .rev  
file that does nothing except invoke the real .rev file and use it as  
the basis for the build of the standalone app.  But then I see  
mentions of that being a problem because of the lack of write access  
to the Applications folder (I'm primarily concerned with Macs) so I  
look at the permission on my Applications folder and I have full read  
and write access to it and the standalone Rev app so am I missing  
something?


Then there's the issue of how to implement that solution.  I see that  
Sarah's article recommends using the Move substacks into individual  
files option which Mark also describes but then advises against  
because of message passing hierarchy problems.  So should use that  
option or not?  And if I do, how do I open the mainstack of my  
real .rev file?  go stack URL or can I just go stack?


I'm also concerned about what seems to be a huge support issue.  If I  
understand this method correctly, the .rev file containing the real  
application will be just that, a .rev file not a compiled  
application.  If that's true what's to stop a user of my application  
who owns Revolution from changing my application code?


And then I ran across a post on the forum concerning a complication  
with this approach related to how to get the datagrid library included  
in the app.  There's a fairly simple workaround for it but now I'm  
wondering what other issues of that nature there might be.  How about  
the database library for example?  And right now, I insert a couple of  
front scripts into my app - should that logic stay in the real  
application or be moved to the single stack application?


So pity this poor unsuspecting user that thought the IDE might perhaps  
warn him if he tried to do something that absolutely would not work in  
a standalone application, or perhaps expected that an attempt to save  
something that couldn't be saved would at least throw an error in a  
standalone application, and believed the user guide section on  
building standalones which states All of Revolution's feature set is  
available in a standalone application, followed by a couple of  
exceptions which don't include the fact that you can't save data in  
them, and the section on global variables that notes that you can't  
save them across runs and recommends, amongst other things, saving  
them in a custom property if you need to do that.


Help!

Pete Haworth








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


REALBasic vs Revolution

2010-06-05 Thread Peter Haworth
Wondering if anyone has personal experience using REAL Basic and  
Revolution?  I did see some discussions on this list but they're all  
pretty old.  At first glance, REAL Basic appears to provide very  
similar functionality to Revolution and a few things (like a report  
writer) that aren't in Revolution, at least without an extra cost  
third party add-on.


Also possible that this isn't an appropriate place for such  
discussions, and I'm fine with that.


Thanks,

Pete Haworth







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


Re: RTF documents as templates

2010-06-01 Thread Peter Haworth
I've been trying to figure out how to use an RTF document as a  
template using pretty much this same methodology.  The problem I ran  
into is that sometimes, for reasons I don;t understand,  the token  
names I put into the document get interspersed with RTF commands, so  
something that looks like [myToken] when displayed in Word ends up  
looking like [myRTF commandstoken].  That stops my search for  
tokens dead in it's tracks.


Another method I've tried is to set up a Word document with merge  
fields in it and have my application write out a comma delimited file  
that is the source for the merge data.  That works well if you have a  
predictable number of lines you want to print, not so good for  
variable number of lines.


Right now, I've settled on writing out html code from templates that  
are defined within my Application.  I have some conventions to deal  
with repeating lines.  For example, if I was printing an invoice,  
I'd define one html line in the format of an invoice line and its  
definition would include a code that tells me I need to repeat that  
line for each invoice line I'm printing.  That works quite well  
although so far I haven't figured out how to deal with printing a  
heading at the top of each page.


I guess I should break down and spend some money on a real report  
writer, especially since all my data is stored in an sqlite database  
but it's a fun challenge to figure this stuff out sometimes!


Pete Haworth

On Jun 1, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 16
Date: Tue, 1 Jun 2010 14:38:10 +0200
From: Robert Brenstein r...@robelko.com
Subject: Re: RTF documents as templates
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: p06240805c82aae204...@[192.168.1.94]
Content-Type: text/plain; charset=us-ascii ; format=flowed

On 31.05.10 at 10:50 -0700 JosepM apparently wrote:
Nop. My solution was store the entire document and search and  
replace before
to build the document, and then out as PDF using Quartam PDF  
Library and

Quartam Reports, but also you can print from a card.



If you need to just print, producing PDF files might be a way to go.
Using RTF works as well. I used RTF documents as templates to produce
Word docs. Basically, I created a full blown, properly formatted Word
doc as template, then replaced variable elements with tokens, in my
case things like [title], [description]. Rev stack read RTF directly
into a variable and replaced the tokens, then saved new file. One
needs to use RTF commands for marking new paragraphs, styles, and
code non-English characters. I even used to produce Word table with
varying numbers of rows by marking a repeating code for row in RTF
and replicating it as many times as needed. Some sleuthing required,
though, to decipher blocks in RTF.

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: use-revolution Digest, Vol 80, Issue 81

2010-05-25 Thread Peter Haworth
I'm glad to gear such a simple solution!  My concerns were all based  
on the following in the dictionary entry for behavior:


The behavior property is a reference to a button containing the  
script to use. It is in the format of a long ID.


I guess I need to be more careful about believing what the dictionary  
says!


Pete Haworth


On May 25, 2010, at 12:57 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Hi Peter,

No, you don't need to include the operating system's path to the stack
file. For example, the following is a correct reference for a
behavior: button id 1015 of stack Untitled 1

You can keep one copy of your stack with parent objects on your hard
disk and add this stack to the stackfiles property of the mainstack of
your project. When you build the standalone, the stack will be copied
into your standalone and above reference will still work.

--
Best regards,

Mark Schonewille

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

Economy-x-Talk is always looking for new projects. Contact me for a
quote http://economy-x-talk.com/contact.html
Download Clipboard Link http://clipboardlink.economy-x-talk.com and
share the clipboard of your computer over the local network.

On 24 mei 2010, at 22:03, Peter Haworth wrote:


I'm trying to figure out the best way to make a library of behavior
buttons available to multiple applications.

I originally developed the library as a substack of my application
but would now like to move it to a separate .rev file and refer to
it from other applications.  Seems like that gives me a single
maintenance point - fix any behavior problems in the library and
it's automatically fixed in all applications.

However, it's feeling like this isn't a practical solution.  As I
understand it, the behavior property of an object uses the long id
of the button it refers to and I think the long id includes the
operating system path to the .rev file that the button is in.

Just for development purposes, I have three different folders I use
- one for code and test, another for QA, and anther for the final
application.  SO if I set the behavior to point to my library of
behaviors in the code and test folder, then move the app's .rev file
to the QA folder, the behavior properties will still point to the
behavior library of in the code and test folder.  And so on.

I'm sure there much more experienced users than me out there who
have run into this problem and hoping they can share how they dealt
with it.  Only thing I can think of is a script that runs during
installtion to go find all controls with a behavior property set and
change it to the correct one.

Pete Haworth




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


Re: Implementing a library of behavior buttons across multiple applications

2010-05-25 Thread Peter Haworth
Thanks for the explanation Richard.  This stuff isn't made any easier  
by the fact that there are multiple names available for the same thing  
- behavior=parentScript apparently.


Getting back to Mark's answer and the use of stack files, I see two  
separate places where additional stack files can be specified - the  
stackFiles property of the main Stack (or the equivalent pane in the  
main stack inspector), and the Stacks pane of the Standalone  
Application Settings which gives rise to the question, what is the  
relationship between these two settings? Does one override the other?   
Is stackFiles operative for the development environment only and the  
standalone setting for standalone applications only?


Pete Haworth

On May 25, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 7
Date: Tue, 25 May 2010 09:33:27 -0700
From: Richard Gaskin ambassa...@fourthworld.com
Subject: Re: use-revolution Digest, Vol 80, Issue 81
To: How to use Revolution use-revolution@lists.runrev.com
Cc: Runtime Revolution Support supp...@runrev.com
Message-ID: 4bfbfbd7.7090...@fourthworld.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Peter Haworth wrote:


I'm glad to gear such a simple solution!  My concerns were all based
on the following in the dictionary entry for behavior:

The behavior property is a reference to a button containing the
script to use. It is in the format of a long ID.

I guess I need to be more careful about believing what the dictionary
says!

Pete Haworth


The docs are kinda correct, but just don't tell the whole story (I'm
cc'ing support here so the Dictionary entry can be updated to reflect
the full story):

You can use the long ID of a button to set the value of the behavior
property for an object, but once it's set it gets stored using only  
the

short name of the stack the behavior button is in.

This is explained more fully in the ParentScriptNotes.txt document
included with the Rev install:


   PARENT SCRIPTS - RESOLUTION

   A control's parent script reference is saved in the stackfile
   as three pieces of information:
 1) button id
 2) stack name
 3) mainstack name (if stack is substack)
   This is the minimum required information to uniquely identify
   a button within a running Revolution environment.

   Immediately after loading a stack file, an attempt is made to
   resolve all parentScript references - the engine acts as if
   it constructs a control reference:
 button id id of stack stack name [ of stack mainstack  
name ]

   And attempts to access it. Thus, the stackFiles property will be
   searched as appropriate and any needed stacks will be loaded.

--
 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: Implementing a library of behavior buttons across multiple applications

2010-05-25 Thread Peter Haworth
Thanks Richard.  So the SB pulls in ALL the stack files defined to it  
int the application and I don;t have to send any of them out with the  
app, right?


Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








On May 25, 2010, at 1:15 PM, use-revolution-requ...@lists.runrev.com  
wrote:



Two different things:

The Stacks pane in the SB is used for copying separate stack files
into the file that will become the standalone.

The stackfiles property of a stack is a list which allows the engine  
to
easily locate stacks which aren't in the stackfile so that you can  
still

refer to them by just their short name in your scripts.

For example, if you have a stack named Behaviors in a stack file  
named

Behaviors.rev in a folder named Components which is in the same
folder as your stack file or standalone, you can set the stackfile's
property of your stack to:

  Behaviors,Components/Behaviors.rev

...and the engine will then know exactly where to find the stack
whenever your scripts refer to a stack named Behaviors.


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

Implementing a library of behavior buttons across multiple applications

2010-05-24 Thread Peter Haworth
I'm trying to figure out the best way to make a library of behavior  
buttons available to multiple applications.


I originally developed the library as a substack of my application but  
would now like to move it to a separate .rev file and refer to it from  
other applications.  Seems like that gives me a single maintenance  
point - fix any behavior problems in the library and it's  
automatically fixed in all applications.


However, it's feeling like this isn't a practical solution.  As I  
understand it, the behavior property of an object uses the long id of  
the button it refers to and I think the long id includes the operating  
system path to the .rev file that the button is in.


Just for development purposes, I have three different folders I use -  
one for code and test, another for QA, and anther for the final  
application.  SO if I set the behavior to point to my library of  
behaviors in the code and test folder, then move the app's .rev file  
to the QA folder, the behavior properties will still point to the  
behavior library of in the code and test folder.  And so on.


I'm sure there much more experienced users than me out there who have  
run into this problem and hoping they can share how they dealt with  
it.  Only thing I can think of is a script that runs during  
installtion to go find all controls with a behavior property set and  
change it to the correct one.


Pete Haworth








http://www.mollysrevenge.com
http://www.sonicbids.com/MollysRevenge
http://www.myspace.com/mollysrevengeband








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

How To Discover The Properties of a Control

2010-05-06 Thread Peter Haworth
Is there a simple method to get a list of all the properties  
associated with a given control along with their settings?  I know how  
to get custom properties but I'm referring to the Revolution  
properties, most of which appear in the Property Inspector window.  I  
found the propertynames function ibut the dictionary claims it returns  
all the possible property names used by Revolution, not those  
associated with a specific control.


Thanks,

Pete Haworth







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


Re: How To Discover The Properties of a Control

2010-05-06 Thread Peter Haworth
Thanks for the pointer on how to do this and for pointing me to your  
Wizard stack. The Wizard looks like what I was trying to do and i'll  
give it a try.  A little worried about the preOpenStack issue because  
I'm doing that in my app as well but we'll see how it works out.


Thanks Craig.

Pete Haworth

On May 6, 2010, at 10:00 AM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 27
Date: Thu, 6 May 2010 12:57:43 EDT
From: dunb...@aol.com
Subject: Re: How To Discover The Properties of a Control
To: use-revolution@lists.runrev.com
Message-ID: 24b58.6c89efc6.39144...@aol.com
Content-Type: text/plain; charset=US-ASCII

Or you can download my Wizard from revOnLine. It does all that you  
asked

for, and allows you to change values on the fly.

Craig Newman


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


Does this list have a moderator?

2010-05-06 Thread Peter Haworth
First of all, thank you Tom McGrath - I wholeheartedly agree with  
everything you said.


I haven't been using Revolution very long and I'm still at the stage  
where I rely on this list and the discussion forum to help me.  So far  
it has been a great experience and I haven't been exposed to the  
opinionated nonsense that I've seen on other lists but this last  
couple of weeks has been ridiculous.


If there is a moderator for this list, could he/she please stop this  
or explain why it is being allowed to continue?


Until then, I am stopping the emails I get from the list which really  
irks me because I've had a lot of very valuable advice and help from  
it.  I'll switch it on in a week or so and hope that things get back  
on topic again.


Pete Haworth


On May 6, 2010, at 5:33 PM, use-revolution-requ...@lists.runrev.com  
wrote:



Message: 1
Date: Thu, 06 May 2010 17:01:30 -0400
From: Thomas McGrath III mcgra...@mac.com
Subject: Re: How exactly does runrev for ipad/iphone work?
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: bcef8671-e027-40f4-8917-e71e0eb57...@mac.com
Content-Type: text/plain; charset=windows-1252

I'm am really getting so sick of listening to this crap. Please go  
join some APPLE hating, Steve Jobs hating list. WILL YOU PLEASE.


It's getting to be too much, staying out of this freaking rhetoric  
when the comments go down this direction. What with the Hitler  
references and EVIL comments and BLAH BLAH BLAH


I use a CROSS-PLATFORM tool call RunRev and I think this has gone  
far beyond what I am willing to put up with. We have Macintosh  
developers and Windows developers and Linux developers and soon we  
are going to have Google developers and Maemo developers. We here on  
this list need to set an example of true cross-platform respect  
towards each others platform of choice.


PLEASE STOP USING OUR USE REVOLUTION LIST TO ATTACK AND DEFAME AND  
AIR YOUR PERSONAL VENDETTAS.


I don't care it you hate Apple. I don't care if you like ___  
better. I don't care if you don't like Steve Jobs. I don't care if  
you think it's wrong. I don't care what your damn opinions are.


JUST STOP

Tom McGrath


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


RE: Apples actual response to the Flash issue

2010-05-02 Thread Peter Haworth
I'm not sure what the etiquette of this board is or if there's a  
moderator, but surely this thing has wandered far off anything  
remotely to do with Revolution and taken up way too much space.  Can  
we get back to Revolution related topics?


Pete Haworth

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


Re: iPhone?

2010-05-01 Thread Peter Haworth

Here's a thought for Rev - put revMobile on Android.

Pete Haworth


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


Re: Sending a message to multiple objects

2010-04-22 Thread Peter Haworth
Thanks Mark and Sarah, Sounds like just what I need.  How do I find  
this on RevOnline?  I searched for MVC but nothing came up.


Pete Haworth

On Apr 22, 2010, at 1:01 AM, use-revolution-requ...@lists.runrev.com  
wrote:


Message: 19
Date: Wed, 21 Apr 2010 20:08:43 -0700
From: Mark Wieder mwie...@ahsoftware.net
Subject: Re: Sending a message to multiple objects
To: How to use Revolution use-revolution@lists.runrev.com
Message-ID: 88665347421.20100421200...@ahsoftware.net
Content-Type: text/plain; charset=us-ascii

Sarah-

Wednesday, April 21, 2010, 4:18:27 PM, you wrote:


There was an MVC demo stack doing the rounds a couple of years ago. I
think it used something similar to this where controls registered
their interest and then all registered controls got the specified
messages. I forget who wrote the stack, but a search for MVC.rev
might turn up something. Or maybe the original author could step in
here before my vague memories cause too much confusion :-)


Um... yeah... that would be me. I believe the library and demo stack
might be on revOnline (can't check at the moment), but I'll repost it
if it's not. I originally thought that what I was presenting was an
MVC construct, but David Bovill convinced me otherwise. It *does*
implement the publish-and-subscribe pattern whereby you can register
controls' interest in receiving messages from any or from specific
other controls.

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


  1   2   >