Re: Code Samples/Comparisons

2009-12-05 Thread David Bovill
2009/12/5 Bernard Devlin 

>
> I think that the true strength (and uniqueness) of Rev lies in
> fat-client development.  Of course the tiny size of the engine makes
> the plugin possible, and the fact that revTalk works without a GUI
> makes the serverside code possible.  But those are both areas in which
> Rev is facing long-established competitors



> 
>


> The thing that Runrev needs to remember is that the number of
> non-programmers vastly outweighs the number of professional
> programmers.  It is question of reaching those people and letting them
> know what is possible.  That is why the opinions of people on slashdot
> and the serverside are irrelevant.  If people were expecting on-rev to
> be the new ruby on rails, they were setting themselves up for
> disappointment.
>

True - but not the right way round IMO. To get new people into the language
(at this point in internet history), you need to give them tools to do what
they want to do. The fact is very few people want to make desktop
applications or fat clients (ok relatively few). Most kids if they want to
make anything it is a web site, a plugin for Facebook, or a game. The target
audience you are talking about is pre-Web2.0 and pre-easy to author game
IDE's - people have (except for a niche market) moved their focus away for
desktop/fat clients and onto these other areas now.

What it makes sense for RunRev to target is people who want to do the above,
but are put off with the intelligibility of the programming languages they
need to learn to do that. The second thing they need to do is make these
same people feel that learning to do it the RunRev way will help them move
into "the real thing" - that is making popular commercial or non-profit
games, web sites.

RunRev is in a good position to meet the first demand with the server side
scripting language, and the plugin, but it is a bit harder to see how they
are effectively addressing the second.
___
use-revolution mailing list
use-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: Forgotten how to deal with unicode

2009-12-04 Thread David Bovill
No - well at least it was not working for me (nor were the other forms of
getting the text from the field). I am wandering exactly what is happening
when I copy and paste the url from the browser - if behind the scenes it is
url or utf8 encoded or something? I've skipped over this issue for now - but
will get back to it and post a test stack if I can't figure it.

2009/12/4 Sarah Reichelt 

> On Fri, Dec 4, 2009 at 10:52 AM, David Bovill 
> wrote:
> >   - I want to fetch a url say "http://en.wikipedia.org/wiki/Slavoj_
> Žižek*"*
> >   - This is displayed correctly in a list field (say on line 1 of the
> >   field)
> >
> > How do I use revTalk to fetch the right value from this field so that I
> can:
> >
> >   - put url "http://en.wikipedia.org/wiki/Slavoj_Žižek*"*
> >
> > NB pasting the text from the browsers url field gives "
> > http://en.wikipedia.org/wiki/Slavoj_%C5%BDi%C5%BEek";, what would you
> code to
> > get that result?
>
> Try urlencode()
>
> Cheers,
> Sarah
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Forgotten how to deal with unicode

2009-12-03 Thread David Bovill
   - I want to fetch a url say "http://en.wikipedia.org/wiki/Slavoj_Žižek*"*
   - This is displayed correctly in a list field (say on line 1 of the
   field)

How do I use revTalk to fetch the right value from this field so that I can:

   - put url "http://en.wikipedia.org/wiki/Slavoj_Žižek*"*

NB pasting the text from the browsers url field gives "
http://en.wikipedia.org/wiki/Slavoj_%C5%BDi%C5%BEek";, what would you code to
get that result?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


DNS Zone Editor on OnRev

2009-11-15 Thread David Bovill
I'm trying to figure out how to mix and match subdomains on DreamHost and
OnRev.

cPanel should have a simple and advanced "DNS Zone Editor" - but they don't
seem to be added with the OnRev account? Because of this it does not look
like you have direct access to the DNS records with OnRev (like you do on
DreamHost) - or is it hidden away somewhere I can;t find?

Therefore I'm guessing the way to do this is to change the DNS records on
DreamHost? I've not done this before so I thought I'd check in beforehand -
my guess is that I should:

   1. Keep theDNS with DreamHost
   2. Keep the A records pointing at DreamHost servers IP, and don;t add new
   ones to point to OnRev
   3. Create new C Records on DreamHost to point to subdomains that have
   been created on OnRev

Any advice?
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-21 Thread David Bovill
2009/10/21 François Chaplais 

> Thanks for the feedback. I work in (applied) mathematics, and in this
> fields patents are a no-no. You cannot patent a mathematical idea. The best
> you can do is disseminate it and hope it will have a great number of
> children (I will not digress on the muddy market of scientific publishing).
>
> For instance, JPEG is compression over a discrete cosine transform.  The
> DCT is not copyrighted, it is a mathematical transform. However, it seems to
> me that incorporating into some code that runs on a computer system may make
> it (the code) fit for some form of copyright; moreover, if it is embedded
> into some hardware, the hardware may be patended. Is this right?
>

Roughly - yes. Most IP protection relies on simple legal hacks, and the
entire framework is pretty much a mess in the digital era. My favourite from
of IP protection is the use of "Trade Secrets" - wickedly and quite stupidly
effective.

2009/10/21 Lynn Fredricks 

>From what I can see by all the patents coming out of Apple, you can patent
> just about anything if you wrap it right in legalese ;-)
>

:)  A nice quote from the current head of Creative Commons based on
comparing todays legal climate with the 1920's "anything that makes Jazz
illegal has got to be wrong" - or to take an older example imagine a world
in which culinary recipes were subject to IP laws - good or bad for the
restaurant trade?

Luckily we do have options to help shape a more sane form of sharing,
competing and cooperating. Abandoning law altogether is not an option - it
will just be shaped and used by others. Personally I admire people who use
it sensibly for social purposes. All law is code.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Calling all open source developers

2009-10-21 Thread David Bovill
Replying here:  I think Peter forked this thread :)

2009/10/20 Richard Gaskin 

>
> Great stuff, David.  More than just a grand vision, it appears well thought
> out on many levels.
>
> One thing I don't understand with GPL'd code, though:
>
> What if rather than contributing, someone wanted to drive traffic to their
> own site by forking the project and enhancing a new version of it?
>
> Are there any ways to ensure that a common pool doesn't get fragmented like
> that?
>

Good stewardship. Good code. Listening and being open to change. Peter is
right that you can;t force this structurally - you have to do the opposite
and welcome the possibility of forking, just try to make sure your fork is
the best :) Like many people I wouldn't join a project that was closed, that
I couldn't get my data back out of it it were to go pear shaped or in a
direction I did not like.


> Also: Would a Rev stack need to use LGPL to maintain a clear distinction
> from the engine, or is GPL sufficiently clear on that?
>

I looked a this and discussed it with a number of people / lawyers.
Initially I assumed too that LGPL, was what was needed. I was told that GPL
was a reasonable choice - despite much of the confusing talk - most of which
relates to issues regarding low level languages and is not relevant to
scripting languages. After further research I found that there are a number
of communities that have taken this route, and it seems to have worked out
fine for them.

Adobe Flash is not open source. However you will find plenty of well
respected ActionScript that explicitly license their code GPL. I see no
reason why RevTalk cannot be licensed on the same basis as ActionScript, and
the advice I have sought and research I have done has not contradicted that.
In short there is no good reason I can find that we don't do a similar this
to say a project like Open Source
Flash- I just think we
can do it better.

We gain stronger and better protection than simple licenses alone, by
ensuring that the project is collectively owned and open to any developer
that is interested in joining. Given that the copyright belongs to that
collective organisation they are free to ammend and relicense the software
under new licenses under whatever good council they get. However you can;t
retract openness and the project can allways be forked if enough people
don't like what we do. In short if there were to be a problem with a
particular form of license, we have the added protection that the community
can release a modified license in good faith.

To the best of my knowledge the combination of both the licensing, the
limited liability and open organisational structure, together with a clear
and agreed social purpose as expresssed in the member agreement gives us the
soundest basis for creating a thriving and sustainable open content
community built around Revolution. We've got a strong community, but I think
we can improve it, and learn from each other and other projects outside of
our community.

I hope that is entertaining enough Richmond?
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-21 Thread David Bovill
2009/10/21 François Chaplais 

> just a remark about all the legal stuff in this thread:
>
> assume you have a non totally permissive license on your code, and that
> somebody breaks the license, by, let us say, making a copy  of the code and
> commercially distributing it
>
> Now who will flex the muscle to prevent this? Who will pay the lawyer(s)?
>
> If there is nothing prepared at this stage, you may as well drop all of
> this legal stuff...


Quick answer to that:

   1. There are a number of organisations like the Free Software Foundation,
   that have and will continue to take on legal case which they fund, often
   with high profile pro-bono lawyers to defend such violations. This has been
   done before and they will continue to do so in order to help set legal
   precedents.
   2. Some of the brightest lawyers in countries all around the world are
   part of the open source and Creative Commons networks. I've sat on the
   steering committee here in the UK for Creative Commons, and can vouch for
   how bright and surprisingly generous these people can be. Someone who rips
   one of these licenses off makes a LOT of people very angry, it is a foolish
   company or individual that messes with this network. Much easier to pick on
   someone else.
   3. Being explicit about your licenses costs you nothing, help everyone be
   clear about what they can and cannot do, and in a direct answer to the
   skeptisism you rightly raise, makes a companies lawyer think twice, about
   breaking the terms laid out in the license.
   4. You don't need to be convinced of any of the above. None of the
   philosophy, banter and arguments littered around the internet. You can
   simply learn from the practices of successful communities. There are plenty
   of examples of robust scaleable long lasting software communities that have
   adopted clear open source licenses. Looking around and trying to find
   successful code sharing communities without any licensing - and you'll come
   up short. Why? I think it is reasonable to conclude that being clear about
   your licensing helps.
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-20 Thread David Bovill
I'll dig it out and send it :) Maybe I'll even talk you into using GIT :)

2009/10/20 Björnke von Gierke 

> hello mr oss
>
> oh, now i get it, i want to be a partner then. you said you'd send me some
> existing jabber code, what has become of that?
>
> mr chatrev
>
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-20 Thread David Bovill
2009/10/20 Björnke von Gierke 

>
>  what do you propose, or need, if it's not a webspace? that was my
> question.
>

At this stage - its just about saying you want in, the more people
interested, the more reason for RunRev to view it worth while taking the
energy to explicitly license their documentation and IDE code in a way in
which we can remix it as a community effort. Once they do that it would be
worth getting the site up, and then adding documentation.

For now - how about just working on code? The Jabber library we talked about
seems a good start. Alex Tweedly has expressed interest on working on it off
list, and I know that Malte was interested? I'd like to see it integrated
with ChatRev with ChatRev used for LAN based chat, and Jabber used for
robust multiplayer publish and subscribe.

Longer term this I'd like to see what can be done with Google Wave and Rev -
as Jabber is the foundation of the Google Wave open protocol, and I've
always seen Jabber as the strongest technical basis for collaborative
environments.

And as your Mr ChatRev... :)
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-20 Thread David Bovill
2009/10/20 Richard Gaskin 

>
> How viable is a dual license scheme if one hopes to derive revenue from
> licensees?  And how exactly does one go about it?
>

That's exactly what I've proposed Richard! It's fairly straight forwards,
I've checked it with the FOSS people in Europe, but have a few twists to
make it work a little simpler and more flexibly. Simply put the GPL license
a sused on an interpreted language virally affects the openness of the
script, and does not have implications for the engine. What this means in
practice is that GPL licensed Rev code can be used freely by anyone, but not
compiled into a protected stack. As such all RevTalk scripts distributed as
part of an app should be made publicly available, including any libraries or
code supplied by the developer - this encourages the feedback to the
community.

However, a developer wishing to have full access to the code and to release
protected applications, can do so by taking out a commercial (dual license).
The business model I am proposing, is that the collectively owned
organisation would license this code for an annual fee entitling access to
all the communities code in closed commericial applications. This money woud
go into a central bank account, and be redistributed to developers working
on open source project deemed to be of importance to the community.

It is important that this is a legal entity, not just for fund raising
issues, but also for licensing reasons. In order to release all code dual
licensed it helps if there is one copyright holder, and this copyright
holder should be collectively owned and empowered to create commercial
licenses to the benefit of the community. The Parnership structure I am
proposing protects this as it is based on Partnership law of one partner one
vote, and allows informal agreements (such as those signed off on the web
site) to be taken into account by the judge - thus offering a more flexible
and lower cost option as compared to traditional contract based licensing.

Happy now Richmond :)
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-20 Thread David Bovill
2009/10/20 Andre Garzia 

>
> GPL - if it touches it then it needs to be FOSS. It is a viral license
> since
> everything that touches it must also be GPL, by touch understand link, if
> it
> links (in the compiler sense) then it needs to be GPL, so I don't think it
> is a good license for Revolution since I don't know how the interaction of
> the standalone builder using closed technology conflicts with the link
> part.
>
> BSD - my favorite license, it is free for you to do whatever you want and
> thats all, sell it, distribute it, change it, we don't care.
>
> LGPL - a less fanatic GPL, allows linking, can't tell much about it.
>
> MIT/X11 - I think it is like the BSD license right?
>
> CC - many people use creative commons these for software. I've only used it
> for text, but it might work.
>
> We can always use some (free) lawyer advise...
>

Creative Commons (CC) is not advised for code as it was not designed for it
legally speaking. Some people use it (mainly as there is no FOSS license I
know of which says "non-commercial"), but it's not advised.

Like most people I'm a fan of BSD/MIT/X11 licenses, and will use them. But
for this project I'm going to go for something more fun, which needs the GPL
and dual licensing for people who want to include closed code in their
applications. So like Björnke suggests there will be a variety of licenses
available for people to use.

The community will be constituted in a minimal and flexible way - it will be
registered in the UK, possibly in Scotland for various reasons. Any
developer can join from any country, by signing and posting in a pdf,
everyone will be protected by limited liability, and partners are equal.
There will be a mechanism in place for people who simply want to join but
not be a full legal partner to be represented in any decision making. The
organisation is needed for the funding applications that I'll be putting in,
and I'll be taking the legal responsibility to file accounts annually, as I
do for a number of other organisations. So no worries there.

2009/10/20 Björnke von Gierke 

>
> What exactly do you propose, do you need a url/host (i have a host, but no
> url, i do know people that have rev-community related urls who would share
> them if there's "real and helpful content").
>

I've got the hosting space, and a domain to use "www.rev-co.de", but would
be more than happy to use / work with another domain as long as it was owned
by the community and not an individual or company. I've had the web site up
and taken it down, as frankly it is not important for developers who need
the stuff directly in the Rev IDE - it is an unecessary extra step to have
to go check a web site.

The web site is more for promotional reasons for RunRev, and it can
certainly be got back up - all the code is there to allow direct downloads
and uploads from the IDE to the site. It's not a hacky site I put together,
but based on Trac - so it is minimal and looks good. I've just added the
code for integrating the wiki and repository (svn) into the IDE.

I've done test and written code to export all the Rev documentation to the
site and integrate it, but took it down as there is no explicit license for
this provided by RunRev. I've suggested that RunRev license the docs
themselves under a Creative Commons license - perhaps non-commerical +
attribution, and if they do this I'll upload the text and images to the
site.

Anyway there you go - all the exciting bits (just for Richmond :) And thanks
for all of you that emailed me off list!
___
use-revolution mailing list
use-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: multiple hilites

2009-10-20 Thread David Bovill
Whoa!

So sorry. I really checked this very thoroughly or so I thought. I turns out
not to a datagrid issue, but mine - or should that be a Rev bug??? Goes like
this:

I was relying on a handler I've had for decades
"rect_CreateTransparentButton" which does what is say on the tin, creates a
semi-transparent button at the rect you specify, so you can see the area -
one click an it is gone. OK - but :)

set the rect of transparentButton to someRect
> show transparentButton
>

that's it! That's the problem ??? The script creates the button with "create
invisible button someName", does some stuff, sets the rect and shows the
button - so? Well setting the rect of an invisible object off screen does
not work?!? It gets limited to the screen rect.

OK - it's old code and it would be better to set the templatebutton and then
reset it - but still I can feel good about myself and waisting Trevors time
right? This is surely a Rev bug :)

2009/10/20 Trevor DeVore 

> On Oct 17, 2009, at 7:02 PM, David Bovill wrote:
>
>  I checked again Trevor. It makes sense that it does not work in cases
>> where
>> the controls are not cached - where it is broken is when the controls are
>> cached but you try to get:
>>
>> the dgRectOfIndex [1] of dataGrid
>>
>> and the controls are scrolled heavily, so that the invisible row view
>> would
>> be above the top of the card. In these cases it does not return the
>> correct
>> geometry as the invisible row view is limited to the top of the screen and
>> no its "true" negative y values. These means that if you try to scroll to
>> the first row it does not work.
>>
>
> I just performed the following test and the dgRectOfIndex[1] returned the
> proper result.
>
> 1) Created new Data Grid.
> 2) Changed style to "form"
> 3) Turned off fixed row height
> 4) Turned on "cache controls"
> 5) Turned off "persistent data"
> 6) Positioned Data Grid at 0,0
>
> I then added about 50 or so lines to the Data Grid. Here are results:
>
> put the dgRectOfIndex[1] of group 1
> 0,0,233,21
>
> I then scrolled to the bottom of the Data Grid:
>
> put the dgRectOfIndex[1] of group 1
> 0,-451,233,-430
>
> I then tried scrolling the first index back into view and it worked:
>
> dispatch "ScrollRectIntoView" to group 1 with the dgRectOfIndex[1] of group
> 1
>
> Just let me know what steps you are taking and what you are seeing. If
> there is a bug that is the only way I can track it down.
>
>
> --
> Trevor DeVore
> Blue Mango Learning Systems
> ScreenSteps: http://www.screensteps.com
> Releasable Revolution Resources for Developers:
> http://revolution.bluemangolearning.com
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Calling all open source developers

2009-10-20 Thread David Bovill
2009/10/20 Richmond Mathewson 

> Fredrik Andersson wrote:
>
>>
>> Sorry, but, frankly, the only thing that excited me about your message was
>>>
>>> "November launch";  it is funny how information is leaked out to the
>>> proletariat . . .  :)
>>>


>> http://www.runrev.com/newsletter/october/issue80/
>>
>> :)
>>
>>
>>  Humpf: living in Bulgaria affects one's brain a-n-d t-h-i-n-g-s s-l-o-w
> d-o-w-n.  ...  :)


You clearly need more excitement - not sure I can supply it though :)
___
use-revolution mailing list
use-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: Calling all open source developers

2009-10-20 Thread David Bovill
It is perfectly acceptible to release RevTalk code under the terms of the
GPL, MIT or other licenses. This has been done before, and debated
extensively over the years in other related platforms - even where the
engine itself is closed.

Purists, like to argue over the issue, and debates can get heated (and
usually tedious). My personal point of view is that there is precedence here
and a number of thriving communities have grown up by using open source and
open content licenses in similar circumstances. As that is the purpose, I'll
go with what works and is helpful with regard to community building, and
stick to arguing the philosophy down the pub (which is a much more enjoyable
place for those sort of debates).

Building a practical and truely collaborative open source community around
RevTalk is certainly helped if the "mothership" takes a clear and
encouraging stance on these issues. I have long argued on this list and
elsewhere that RunRev should adopt an explicit "open source strategy" to
encourage proper collaboration between developers on a clear and firm legal
basis. This does not mean open sourcing their engine, but it does mean
taking the small steps needed to support and encourage community efforts in
this area. Releasing the documentation under an open content (Creative
Commons) license would be symbolic and help. Explicitly releasing the code
in the IDE under an MIT or other open source license, and encouraging
integration with other similarly licensed IDEs (like MC IDE) would also
help.

As far as I can gather from talking to Kevin, Mark and the other folks at
RunRev - they have nothing against these moves which I found encouraging. As
far as I can tell it is simply that none of the developers there have
experience of working on open source projects, and the use of open licenses,
and as such they are not quite sure as to how they would support / engage
with such and effort given their limited resources.

I proposed to Kevin and a number of developers at RunRev Live, that maybe we
can move this area forwards by creating a community led project with an
explicit remit to develop open source code libraries and widgets in RevTalk.
This would be an arms length legal entity, with RunRev or any other
interested party able to join as a full member and have a say with regard to
the projects direction.

Based on the positive feedback to these ideas from the conference, I've
decided to put what time I have into taking this forwards with the aim of
launching it in time for the RunRev November launch. The organisation would
be not-for-profit, in that any money derived from activities such as
commercial closed source dual licensing of code libraries would go back into
the pool to pay developers to work on open source libraries. I've discussed
this proposal with a number of funders here in the UK and it seems
encouraging to apply for some grants to develop this community as well.

Any individual developer or company is fully entitled to join, and the
organisation will have an open membership. The aim is simple to define
collectively what tools and resources the community would like to develop as
open source code and resource these efforts. The secondary aim is to engage
with other open source and open content communities, building on the
strengths and accessibility of the language to be immediately understandable
to any programmer, and encourage interoperability between RevTalk and other
open source frameworks.

My personal interest in the project is in the legal and community side, and
I want to combine this with my passion for RevTalk to pilot a truly
innovative collaborative community, not just based around code, but also
open media content as well. While the Revolution engine is not open, the
accessibility of the language, the free version of the IDE in RevMedia, and
it's ability to appeal to designers and non-developers interested in media,
place it in a strong position to serve as a foundation for a rich "open
content" community.

I'm hopeful that other developers will share these goals, and that we can
work together to support the wider adoption of the language and the creation
of higher quality open code and media resources for the community.

If there is anyone who would like to discuss the funding proposals, or join
either as a full legal partner, or as an informal associate partner maybe we
can start a discussion off list? From previous experience I'd say that this
list is best kept to discussions regarding code, and the use of Revolution -
I'm breaking this rule here just as a heads-up and invitation to those
interested in this area to help co-design this initiative :)
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Arcade / Space Invader classic game?

2009-10-18 Thread David Bovill
Just checking - thinking of coding a Space Invader type game - any pointers
/ stacks / ideas?
___
use-revolution mailing list
use-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: multiple hilites

2009-10-17 Thread David Bovill
I checked again Trevor. It makes sense that it does not work in cases where
the controls are not cached - where it is broken is when the controls are
cached but you try to get:

the dgRectOfIndex [1] of dataGrid

and the controls are scrolled heavily, so that the invisible row view would
be above the top of the card. In these cases it does not return the correct
geometry as the invisible row view is limited to the top of the screen and
no its "true" negative y values. These means that if you try to scroll to
the first row it does not work.


2009/10/17 Trevor DeVore 

> On Oct 17, 2009, at 11:00 AM, David Bovill wrote:
>
>  Thanks - but "ScrollRectIntoView" would rely on "## See dgRectOfIndex in
>> order to get rect of a control in the data grid." - and this is broken for
>> cases in which the rows are scrolled above the grid (perhaps when they go
>> above the screens top?) -- see the handler below for a temporary fix.
>>
>
> Not broken, just designed for Data Grids where controls are cached. See the
> note for dgRectOfIndex in the source. This is one reason why it remains
> undocumented :-)
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


OAuth

2009-10-17 Thread David Bovill
Has anyone written any handlers / code for authentication using OAuth in
Rev?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Datagrid: multiple hilites

2009-10-17 Thread David Bovill
2009/10/17 Trevor DeVore 

>
> There are some scrolling handlers that are documented:
>
> ScrollIndexIntoView/ScrollLineIntoView
>
> There is also an undocumented ScrollRectIntoView command you can find in
> the Data Grid button. You might want to take a look at those.
>

Thanks - but "ScrollRectIntoView" would rely on "## See dgRectOfIndex in
order to get rect of a control in the data grid." - and this is broken for
cases in which the rows are scrolled above the grid (perhaps when they go
above the screens top?) -- see the handler below for a temporary fix.

getprop dg_ScrollTop [lineNum]
>if lineNum < 2 then return 0
>put the dgControl of the target into dataGrid
>if exists(dataGrid) is false then return empty
>
>if the dgprop ["fixed row height"] of dataGrid is true then
>   -- not tested yet!
>   put the the dgprop ["fixed row height"] of dataGrid into
> fixedRowHeight
>   put (lineNum - 1) * fixedRowHeight into scrollTop
>else
>   get the dgVisibleLines of dataGrid
>   put item 1 of it into firstVizLine
>   put item 2 of it into lastVizLine
>
>   switch
>  case lineNum < firstVizLine
> if the dgprop ["cache controls"] of dataGrid is false then
> return empty
> put 0 into scrollTop
> repeat with someLineNum = 1 to lineNum
>put the dgIndexOfLine [someLineNum] of dataGrid into
> someIndexNum
>put the dgRectOfIndex [someIndexNum] of dataGrid into
> rectOfIndex
>put item 4 of rectOfIndex - item 2 of rectOfIndex into
> recordHeight
>add recordHeight to scrollTop
> end repeat
> break
>  default
> put the dgIndexOfLine [lineNum] of dataGrid into indexNum
> put the dgRectOfIndex [indexNum] of dataGrid into rectOfIndex
>
> put item 2 of rectOfIndex into recordTop
> if recordTop is empty then
>-- problem here as the "row" (record view) does not exist so
> cannot get its height!
>return empty
> end if
> put recordTop - the top of dataGrid into scrollTop
>   end switch
>end if
>
>subtract 3 from scrollTop -- just a tweek to show a margin
>return scrollTop
> end dg_ScrollTop
>
___
use-revolution mailing list
use-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: multiple hilites

2009-10-17 Thread David Bovill
Here are some handlers that seem to work "most" of the time. Could be
improved by adding shortcut for fixed height rows, and it seems like the
geometry gets a little messed up in some circumstances (maybe when adding
rows using AddData?) - but it is a start, perhaps the beginning of a feature
request?

command dg_ScrollToIndexTop pIndexNum, pAnimate
>put the dgControl of the target into dataGrid
>if exists(dataGrid) is false then return empty
>put the dg_IndexScrollTop [pIndexNum] of the target into recordTop
>if recordTop is a number then
>   if pAnimate is true then
>  dispatch "StartScrollAnimation" to dataGrid with recordTop
>   else
>  set the dgVScroll of dataGrid to recordTop
>   end if
>end if
>return recordTop
> end dg_ScrollToIndexTop
>
> getprop dg_IndexScrollTop [pIndexNum]
>if pIndexNum = 0 then return 0
>put the dgControl of the target into dataGrid
>if exists(dataGrid) is false then return empty
>if the dgprop ["cache controls"] of dataGrid is false then return empty
>
>put 0 into recordTop
>repeat with someNum = 1 to pIndexNum
>   put the dgRectOfIndex [someNum] of dataGrid into rectOfIndex
>   put item 4 of rectOfIndex - item 2 of rectOfIndex into recordHeight
>   add recordHeight to recordTop
>end repeat
>subtract 3 from recordTop -- just a tweek to show a margin
>return recordTop
> end dg_IndexScrollTop
>
___
use-revolution mailing list
use-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: scrolling to the top of a record (dgRectOfIndex fails)

2009-10-17 Thread David Bovill
It seems that this little utility is broken for records that are scrolled
above the datagrid.

This is because when a record is scrolled completely above the datagrid it
is set to invisible and set to the top of the screen / grid or perhaps even
deleted).

What I want to do is to be able to scroll a certain number of records off
the top of the screen. For that I can set the dgprop ["cache controls"] to
true and work out the height of all the "dgDataControlOfIndex [pIndex]"
above the row I want to scroll to. Working on this now, so will report back,
but would seem to be a useful property to add / fix here, which would allow
you to access the geometry of a row even though it has not been drawn to
screen?
___
use-revolution mailing list
use-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: multiple hilites

2009-10-17 Thread David Bovill
Thanks Trevor - silly mistake - maybe that will fix my other problem with
scrolling - thanks! The other thing I needed to do was:

set the dgProp ["animate selections"] of dataGrid to false

as otherwise the automatic behavior would scroll to the first selected
record. These "animate" features are new undocumented behaviors right?

2009/10/17 Trevor DeVore 

>
> You are using dgLine with myIndexNum. That should be dgIndex. Does that fix
> the problem?
>
___
use-revolution mailing list
use-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: multiple hilites

2009-10-16 Thread David Bovill
I've upgraded to the latest datagrid - fixes the add to end issue reported
earlier. So naturally that's led to another one :)

I want to allow the user to quickly select multiple lines of a form by
clicking on them - with "auto select" unless you hold down the command key.
I scripted a way to do that using the dgHilitedIndex:

command tweet_ToggleHilite
>put the dgControl of me into dataGrid
>if the dgProp ["auto hilite"] of dataGrid is false then
>   put the dgLine of me into myIndexNum
>   put the dgHilitedIndex of dataGrid into indexNums
>   set the wholematches to true
>   put itemOffset (myIndexNum, indexNums) into foundItem
>   if foundItem = 0 then
>  if indexNums is empty then
> put myIndexNum into indexNums
>  else
> put comma & myIndexNum after indexNums
>  end if
>   else -- already hilited
>  delete item foundItem of indexNums
>   end if
>   sort numeric items of indexNums
>
>   lock screen
>   put the dgControl of me into dataGrid
>   put the dgVScroll of dataGrid into someScroll
>   set the dgHilitedindex of dataGrid to indexNums
>   put indexNums
>   set the dgVScroll of dataGrid to someScroll
>   unlock screen
>end if
> end tweet_ToggleHilite
>

However this script only works until, I start adding lines using "AddData".
Maybe there is a better way?
___
use-revolution mailing list
use-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: animating adding rows to a form?

2009-10-16 Thread David Bovill
Great - will try that.

2009/10/16 Trevor DeVore 

>
> set the dgProps["animate selections"] of group "DataGrid" to true


I guess the other way to do what I am thinking is to get clever with
scrolling - add the new records to the top, but then scroll down to keep the
right record visible - then just animate the scroll to move all the records
down and bring the new views into view.
___
use-revolution mailing list
use-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: animating adding rows to a form?

2009-10-16 Thread David Bovill
I'm wandering if there is anything in the latest version or any hacks /
suggestion to animate form record additions? As the dat comes in I would
like each record to slide down from the top rather than instantly appearing
(which makes it hard to read)?
___
use-revolution mailing list
use-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: how to use AddData

2009-10-15 Thread David Bovill
2009/10/15 Trevor DeVore 

It's just a single row like you get using dgDataOfIndex or the array sent to
> FillInData.
>

OK - working except for the fact that:

put the dgDataOfindex [indexNum] of dataGrid into recordArray
> -- dispatch "AddData" to anotherDataGrid with recordArray,1
> dispatch "AddData" to anotherDataGrid with recordArray
>

does not add the record after the last line but to the second last line?
___
use-revolution mailing list
use-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: how to use AddData

2009-10-14 Thread David Bovill
Having problems adding data using:

dispatch "*AddData*" to group "DataGrid" with theArray

as specified here:
http://revolution.screenstepslive.com/spaces/revolution_tools/manuals/datagrid/lessons/3461-Data-Grid-API.
I'm getting bad data added, so wandering what mistake I am making -
essentially can;t find any info in the docs regarding the format of
theArray. I've tried the same format as dgData (indexed with indexNum
integers) and also one nested level down ie the contents of something like
dgdata [1] - no joy. Help :)
___
use-revolution mailing list
use-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: Icon images, hilites and inks

2009-10-14 Thread David Bovill
Looks like I'll have to use v4 then - was staying with 3.5 due to the speed
issue I reported earlier... still got to get my hands on some of these
effects :)

2009/10/14 Sarah Reichelt 

> On Thu, Oct 15, 2009 at 3:02 AM, David Bovill 
> wrote:
> > I've got some grey images that are used for icons - and I want to hilite
> > them with a simple coloured overlay of equivalent when the mouse rolls
> over
> > the button. I'm wandering if it is possible to use some combination of
> inks
> > and button colours to achieve this effect? The only way I can see how to
> do
> > it at the moment is either to create a coloured icon image and swap them,
> or
> > create an overlay button in front of the icon button which at least does
> not
> > require creating another set of images but seems ugly.
>
> Don't forget the new Graphic Effects. This works for me:
>
> on mouseEnter
>   set the colorOverlay["color"] of me to "red"
> end mouseEnter
>
> on mouseLeave
>   set the colorOverlay of me to empty
> end mouseLeave
>
> And for an easy 3D push-button effect, you can set the dropShadow in
> the Inspector, then try:
>
> on mouseDown
>   set the dropShadow["distance"] of me to 1
>   set the margins of me to "6,6,0,0"
> end mouseDown
>
> on mouseUp
>   set the dropShadow["distance"] of me to 5
>   set the margins of me to 4
> end mouseUp
>
> adjusting the settings to suit your icon.
>
> HTH,
> Sarah
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Icon images, hilites and inks

2009-10-14 Thread David Bovill
I've got some grey images that are used for icons - and I want to hilite
them with a simple coloured overlay of equivalent when the mouse rolls over
the button. I'm wandering if it is possible to use some combination of inks
and button colours to achieve this effect? The only way I can see how to do
it at the moment is either to create a coloured icon image and swap them, or
create an overlay button in front of the icon button which at least does not
require creating another set of images but seems ugly.

Any thoughts?
___
use-revolution mailing list
use-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: Interactive image overlays

2009-10-07 Thread David Bovill
Thanks everyone - lots of great suggestions. Think the noop graphic is the
way to go for this application.

NB I can get quite a nice rollover by using:

on mouseEnter
>set the ink of me to "blendDarken"
> end mouseEnter
>
> on mouseLeave
>set the ink of me to "noop"
> end mouseLeave
>

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


Interactive image overlays

2009-10-07 Thread David Bovill
I'm wanderign if anyone has any recommendations for creating irregularly
shaped hot spots on images - equivalent to html image maps? The problem is
that if you make a polygon transparent it no longer gets any mouseUp / user
interaction like you would with a transparent button. The best I can come up
with is to set the ink to "noop" and keep the polygon opaque. Seems to work
though I don;t know how well that will work out cross-platform yet?

Anyone got a stratgegy for creating clickable transparent polygonal overlays
in Rev?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Smoothing a curve: bezier curves, b-splines and Alejandro's PenTool Script

2009-10-02 Thread David Bovill
2009/10/2 Alejandro Tejada 
>
> Alejandro Tejada wrote:
> David, i still hope that, later along the road,
> RunRev add directly to the engine, svg properties
> to vector graphics and create functions to
> transform them.

Sure it will come - just not this week :)

Still I am thinking it can't be that hard / there must be an easy to knock
up hack to:

interpolate points along a b-spline
guess a reasonable fit b-spine from a series of regular rev based control
points

I get returned from one data source b-splines that look like this:

where spline = (endp)? (startp)? point (triple)+
> and triple = point point point
> and endp = "e,%f,%f"
> and startp = "s,%f,%f"
> If a spline has points p1 p2 p3 ... pn, (n = 1 (mod 3)), the points
> correspond to the control points of a B-spline from p1 to pn. If startp is
> given, it touches one node of the edge, and the arrowhead goes from p1 to
> startp. If startp is not given, p1 touches a node. Similarly for pn and
> endp.
>

How would these triples relate to the work you've done?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Graphic text and border colour

2009-10-01 Thread David Bovill
Good hack - thanks!

2009/10/1 BNig 

>
> David,
>
> if you can live with black text than you can change the bordercolor by
> setting the strokegradient
> --
> on mouseUp
>   put "0.0,255,0,0" & return & "1,255,0,0" into myRamp -- make it all red
>   set the strokegradient["ramp"] of graphic 1 to myRamp
>   put the loc of graphic 1 into tLoc
>   set the strokegradient["from"] of graphic 1 to tLoc
>   set the strokegradient["to"] of graphic 1 to item 1 of tLoc & "," & the
> bottom of grc 1
>   set the strokegradient["via"] of graphic 1 to the left of grc 1 & "," &
> item 2 of tLoc
>   set the strokegradient["type"] of graphic 1 to "radial"
> end mouseUp
> -------
>
> this works with all the graphics, admittedly it is a bit awkward.
>
> regards
> Bernd
>
>
> David Bovill-3 wrote:
> >
> > 2009/10/1 Richmond Mathewson 
> >
> >> David Bovill wrote:
> >>
> >>> Is there a workaround to give the border of a graphic shape a colour
> >>> which
> >>> is different to the colour of it's text label? Or is the only way to
> >>> position a text field over the graphic?
> >>> ___
> >>>
> >>
> >> They never conceived of people wanting to use Graphic Objects
> >> as fake buttons!
> >
> >
> > I'm just graphing networks - and the graphs have the ability to have the
> > text formatted independently of the border. It's a bit strange as there
> > are
> > all these other colour options available which - well not even sure what
> > they are really needed for :(
> >
>
> --
> View this message in context:
> http://www.nabble.com/Graphic-text-and-border-colour-tp25699014p25704709.html
> Sent from the Revolution - User mailing list archive at Nabble.com.
>
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Smoothing a curve: bezier curves, b-splines and Alejandro's PenTool Script

2009-10-01 Thread David Bovill
Thanks for response - did make me smile!

2009/10/1 François Chaplais 

>
> The drawing of the Bezier curves boils down to this:
> 1) you compute the matrix A
> 2) you invert it
> 3) the parameters x of the unknown cubic polynomials are given by x
> =A^(-1)b
> 4) once your know the cubic polynomial, you can compute its value at any
> point [the operation is referred as interpolation]
>
> HTH
>
> François
>
> P.S I have de Boor's book, it is unreadable
>

Maybe someone can suggest a hack :) I'm thinking something along the lines
of calculating the bezier curves for each pair of points along the curve:
this is the function I have courtesy Alejandro:

function graph_BezierLine listOfPoints, zdt
>put item 1 of  listOfPoints into x1
>put item 2 of  listOfPoints into y1
>put item 3 of  listOfPoints into xa
>put item 4 of  listOfPoints into ya
>put item 5 of  listOfPoints into xb
>put item 6 of  listOfPoints into yb
>put item 7 of  listOfPoints into x2
>put item 8 of  listOfPoints into y2
>put 0 into v1
>
>if zdt is empty then put 32 into zdt
>repeat with i = 1 TO zdt -- zdt is a integer number like 32
>   put i * 1/zdt into v1
>   put 1 - v1 into v2
>   put (x1 * (v2 * v2 * v2) + (3 * xa * v1 * v2 * v2) + (3 * xb * v1 *
> v1 * v2) + (x2 * (v1 ^ 3))) into x
>   put (y1 * (v2 * v2 * v2) + (3 * ya * v1 * v2 * v2) + (3 * yb * v1 *
> v1 * v2) + (y2 * (v1 ^ 3))) into y
>   if (x div 1 & "," & y div 1) <> last line of variablezxc then put (x
> div 1 & "," & y div 1) & CR after variablezxc
>end repeat
>
>--  if x1,y1 <> first line of variablezxc then put x1,y1 & return before
> variablezxc
>if x2,y2 <> last line of variablezxc then put x2,y2 & CR after
> variablezxc
>put x1,y1 & CR before variablezxc
>-- put x2,y2 & CR after variablezxc
>return variablezxc
> end graph_BezierLine
>

Then doing something like working out the perpendicular to the curve at each
point h think it would be a nice little utility handler to have?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Graphic text and border colour

2009-10-01 Thread David Bovill
2009/10/1 Richmond Mathewson 

> David Bovill wrote:
>
>> Is there a workaround to give the border of a graphic shape a colour which
>> is different to the colour of it's text label? Or is the only way to
>> position a text field over the graphic?
>> ___
>>
>
> They never conceived of people wanting to use Graphic Objects
> as fake buttons!


I'm just graphing networks - and the graphs have the ability to have the
text formatted independently of the border. It's a bit strange as there are
all these other colour options available which - well not even sure what
they are really needed for :(
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Graphic text and border colour

2009-10-01 Thread David Bovill
Is there a workaround to give the border of a graphic shape a colour which
is different to the colour of it's text label? Or is the only way to
position a text field over the graphic?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Smoothing a curve: bezier curves, b-splines and Alejandro's PenTool Script

2009-10-01 Thread David Bovill
I'm looking for a handler to smooth out rev graphic curves - you fetch the
points and you interpolate a vaiable number of in between values. I've lost
the script I had to do that, and worse I've forgotten how :) The aim is to
create a general handler like"

getprop graphic_SmoothedPoints [someParams]
> return the bezier/b-spline smoothed out list of points of a rev based
> curve
> end SmoothedPoints
>

*Quick Research and Links*
I pretty much learnt everything I know about bezier curves from looking at
Alejandro's fab work on eps, Adobe Illustrator import, and bezier curves
(see below).

What I am looking for however is not an editor, but a way to automatically
smooth a curve based on a few parameters. I 'think" from looking at the code
and online references the bezier curve part interpolates between 2 points
based on a couple of vectors.

Alejandro's work represent this as a list of 4 points:

x1,y1,xa,ya,xb,yb,x2,y2

which I believe equate to the 4 points P1,P2,P3,P4 describd here -
http://en.wikipedia.org/wiki/Bézier_curve

stores this additional information along side each point in a rev graphic
curve:  in the format c,C,y,Y,v,V - where I think these values represent
"vertex", and "control", and "colineal handles" for each point. At this
point I get a little lost - so I'm hoping for some input :)

*Splines*
It looks to me that to include the information regarding a series of points
you need to looks at splines, and maybe an algorithm like De
Boor's?
I certainly never went that far and got reasonable results with something a
lot simpler. Any suggestions?


2006/11/14 Alejandro Tejada 

> Hi All,
>
> Download the Stack "New PenTool Script" from:
> http://geocities.com/capellan2000/newPentoolScript.zip
>
___
use-revolution mailing list
use-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: Challenge: to do something like this in a revlet #2

2009-09-30 Thread David Bovill
I used to produce a load of these things for brands back in my agency days -
got thoroughly sick of the gimmickry. Much more interesting now that it is
about community building - but Flashverts like those remind me of what not
to do ever again :)

2009/9/30 Richmond Mathewson 

> http://www.ovomaltineforever.com.br/
>
> Cripes, I am getting cheesed-off with the
> ubiquitous Flash.
>
> We can all practise our Portugese as we
> go along (well, Andre may not need to) . . .  :)
>
___
use-revolution mailing list
use-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: BEVEL created solely in RunRev 4

2009-09-29 Thread David Bovill
2009/9/29 Richard Gaskin 

>
> Still, it would be nice to have a bevel effect in the engine (along with
> gradients for objects other than just graphics, and few other things like
> Malte's blur suggestion).
>

I have thought of using graphic objects instead of buttons - but not delved
into the issues.

So as a provocation to gurus out there: what would we miss if we never used
buttons again and just scripted graphic objects with paint effects and
behaviors?

Apart from icons that is - and as I can't really imagine using icons AND
graphic effects together - lets keep them out of the "picture" :)
___
use-revolution mailing list
use-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: syntax options for reading array properties

2009-09-27 Thread David Bovill
2009/9/26 Richard Gaskin 

>
> Is there any trick to using customProperties[ to access
> nested array elements in an object?
>

No. As far as I understand it the new nested array data structure uses
arrayencode / arraydecode internally and this adds the speed hit. For that
reason, and others I've moved over to using getprop / setprops together with
script locals to store nested arrays. These are then loaded I think when the
stack (or card / object) is loaded so you get the speed increases and the
same syntax.


> If not, anyone here know if RunRev plans to support such syntax in the
> future?
>
> If there's an RQCC request for this please post the URL so I can add some
> votes to it.  If not I'll submit one.
>

Good idea.
___
use-revolution mailing list
use-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: Java applets & Revlets

2009-09-25 Thread David Bovill
2009/9/22 Jerry Balzano 

> I hope this isn't too bizarre a request.
>
> I want a Revlet to be able to control which of several (pre-made) Java
> applets a user sees.  How would one do this?  Is it possible to embed a Java
> applet inside a Revlet?
>

No - as you cant have revbrowser in the revlets.


> I was looking through previous messages to see if this question had been
> asked previously and I learned (a little) about a stack property called the
> revletParams, but I don't know how or if it would apply here.  For example,
> would one stick the whole string
> archive="NetLogoLite.jar"
>width="460" height="280">
>   value="Tag.nlogo">
> 
> inside the revletParams?  (And then what?)


There may be some hacks - others can maybe comment on that... but for
controlling things properly on the same page you should wait for when we can
call JavaScript from the Revlet within the context of the page. The
JavaScript can then do any AJAX style hide / show you may need as well as
communicate directly with the Java applets.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


DataGrids: dgDataOfIndex calls "FillinData" twice?

2009-09-23 Thread David Bovill
I guess this is a question for you Trevor :)

In trying to debug an interface that makes asynchronous calls to update a
datagrid I tacked donw the following feature / aspect of using:

set the dgDataOfIndex [indexNum] of grp "Datagrid" to recordArray

And that is that it calls you user defined "FillinData" twice, while:

set the dgData of grp "Datagrid" to dgArray

call "FillinData"  only once.

Tracking this down using the executioncontexts it seems that "set the
dgDataOfIndex" first calls the handlers that "set the dgData" does and then
in addition an extra:

_RefreshIndexes
> _UpdateIndexWithNewData
> FillInData
>

resulting in a second call to "FillInData".

In my case where I have a lot of action updating individual lines of the
datagrid each second, I want to do this as fast as possible and also to
avoid possible recursion with the async loads. It would help greatly to
understand why "FillInData" needs to be called twice with "set the
dgDataOfIndex" and therefore what my handler should do with each call.
___
use-revolution mailing list
use-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: mouseRelease in Rev 4.0

2009-09-22 Thread David Bovill
Maybe it's related to the speed issue I've got with mouseMove in 4.0 - I
think it must be an engine issue and we will have to wait till it is fixed -
I guess we should bugzilla it?

2009/9/22 Sarah Reichelt 

> I am working on an app that allows users to drag across a series of
> controls in order to operate on each one in turn when the mouse button
> comes up.
> I build a list of the selected controls by checking the mouseMove
> messages and on a mouseRelease (since the mouse pointer is no longer
> over the object that received the mouseDown), I loop through the list
> of selected controls and do what I need.
> This is working perfectly in Rev 3.0 & 3.5.
> In Rev 4.0, it's as if the mouseRelease message is only sent
> sometimes. especially, it doesn't seem to happen if I move too fast,
> but if I drag, then hover over the last control for a bit, then it
> works.
>
> Has anyone else noticed anything like this?
> And if so, is there a work-around?
>
> I need to re-write the code to take advantage of behaviors. Doing
> things a different way may avoid the problem, but it would be nice to
> solve anyway.
>
> Cheers,
> Sarah
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-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: speed question related to how it is working under the hood?

2009-09-21 Thread David Bovill
Thanks - great to know. Will use the API calls with abandon :)

2009/9/21 Trevor DeVore 

> On Sep 21, 2009, at 8:37 AM, David Bovill wrote:
>
>  ...
>> *The questions:*
>> If I uses "set the dgDataOfIndex" to update the display of an individual
>> datagrid form record, does the underlying library only update the display
>> associated with this one record, or does the library redraw all the
>> currently displayed records?
>> Would I be any better off speed wise directly setting the images /
>> metadata
>> of records using over using built in datagrid api calls?
>>
>
> The data grid will only redraw the row you altered. If the row isn't
> visible on screen then an offscreen control is created in order to determine
> the new height of the row but that is it.
>
> Keep in mind that if you don't use the data grid apis the height of the row
> can't be updated and your scrolling will be off.
>
___
use-revolution mailing list
use-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: speed question related to how it is working under the hood?

2009-09-21 Thread David Bovill
I've got a question about how commands like "set the dgDataOfIndex" work
under the hood, and whether there are occasions where you would get speed
increases by directly setting the value of an individual control in a record
view.

*First an introduction:*
I've got a datagrid form I'm working on in which the data that makes up the
individual form contents comes from a variety of web services - consequently
the basic data comes over fast but the detailed contents (things like images
and metadata) comes over much more slowly.

The solution I'm trying to reimplement is based on asynchronously loading
the additional data using "load url with message". I can then display the
datagrid fast, and with a toggle arrow allow the user to reveal the image
and metadata when needed. If the metadata is still loading then I want to
display some suitable dummy "is loading" content.

The issue here is that if a hundred or more records are loaded into a
datagrid, then we will have several hundred asynchronous loads being fired
off and coming in all trying to update / redraw the datagrid one at a time.
Naturally this will need the fastest possible technique for updating the
display of the metadata - but we (probably) want to do this as the data
comes in.

*The questions:*
If I uses "set the dgDataOfIndex" to update the display of an individual
datagrid form record, does the underlying library only update the display
associated with this one record, or does the library redraw all the
currently displayed records?
Would I be any better off speed wise directly setting the images / metadata
of records using over using built in datagrid api calls?
___
use-revolution mailing list
use-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: convert oddity

2009-09-21 Thread David Bovill
How about checking the epoch time on the server with "date +%s" ?

2009/9/20 Richard Gaskin 

> I have a CGI which stores dates using internet date format.
>
> In one of my CGI routines I use the convert command to reformat the date
> into a more user-friendly form:
>
>convert tTimeStamp to long date and short time
>
> The oddity is that the convert command running on the server shows the time
> portion as 8 hours ahead of the value in the original timestamp.
>
> I've also used seconds instead of the internet date, with the same result.
>
> I've verified that the CGI is storing the correct timestamp, and when I run
> the same convert on my local machine it always converts correctly.
>
> Is there something odd about using the convert command in a CGI that I
> don't know about?
>
> FWIW, I'm not using the useSystemDate, and since the server is in my time
> zone that shouldn't affect it anyway.
>
> What am I missing?
>
> --
>  Richard Gaskin
>  Fourth World
>  Revolution training and consulting: http://www.fourthworld.com
>  Webzine for Rev developers: http://www.revjournal.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: Quicky: what's the name of the property to find out if a stack is protected?

2009-09-20 Thread David Bovill
Thanks :)

2009/9/20 Sarah Reichelt 

> On Sun, Sep 20, 2009 at 8:44 PM, David Bovill 
> wrote:
> > Can't find protected in the dictionary :)
>
> How about:
>
>   if the password of this stack is not empty then
>  -- stack is protected
>   end if
>
>
> Cheers,
> Sarah
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Quicky: what's the name of the property to find out if a stack is protected?

2009-09-20 Thread David Bovill
Can't find protected in the dictionary :)
___
use-revolution mailing list
use-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: Want to Try Franklin 3D - 3D Engine for Revolution?

2009-09-19 Thread David Bovill
Lynn - its good to see there are quite a few standard formats supported by
the open source Irrlicht
backendthat Franklin3D
is using:

Irrlicht supports a wealth of file formats. It will load and display 3ds Max
files, Quake 2 MD2 Models, Maya .obj objects, Quake 3 .bsp maps, Milkshape3D
objects, and DirectX .x
files.[18]More
3D format support have been written as external plugins.

I've not been able to find any reviews comparing Irrlicht with other cross
platform 3D engines out there - Irrlicht is an interesting choice but not an
engine I've heard of before - have you got any links to reviews or perhaps a
reason why you chose Irrlicht over other more common open source game
engines  (for
instance OGRE and Crystal Space)

I'd also be interested on your thoughts as to how you might integrate
something like Blender into the workflow / editing environment?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Is this sort of thing a bug?

2009-09-18 Thread David Bovill
2009/9/18 Richard Gaskin 

>
> Very interesting bug you stumbled across there.  Oddly enough, I can't
> reproduce it using:
>
>  put the long id of btn id 1008 of stack "b"
>

Unfortunately not. I can't track it down - think I'll throw in an
exectutionContexts so I can figure out when the bug gets triggered

The weirder part of that report was the part about behaviors being
> disconnected even though the behavior reference was apparently correct:
>
>   Then I issued "set the behavior of grp 1 to the behavior
>   of grp 1" and everything started working again across
>   multiple stacks.
>
> If the behavior is a valid reference, what would cause it to go bad?
>

I've not had this in a while - so I am not sure. Part of the problem was
also my fault in that if a behavior is set to a stack, and that stack is not
in memory then obviously the reference fails. Some of the behaviors were in
stacks with destroystack = true and in those case where the stacks had no
entries in the stackfiles the behavior failed. But why the above fixed
things in early 3.5 I never figured out.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Is this sort of thing a bug?

2009-09-18 Thread David Bovill
2009/9/18 Richard Gaskin 

>
> Using "the long if" works with all objects, and in my experience this
> easiest-to-obtain form consistently provides reliable results.
>

There is a case, where the long id stops working which was intoduced since
3.5 and behaviors. Though I have not had time to track down the cause. I
have filed it here 
:

It totally baffles me but sometimes "the long id of the target" fails to
convert an object reference form the form "control id 1234 of stack XXX" -
I've set a breakpoint in a crucial handler so I can clearly see the script
and variables when it fails - but can;t reproduce it except to note it only
happens occasionally with this behavior type reference. Anyway...

What would be the ideal solution to make short and long IDs of stacks most
> consistent with the rest of the language?


I'd go for returning the short name of the stackas equivalent to a unique
"id" of an object - unless there is a use for the current id (number)
returned.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Is this sort of thing a bug?

2009-09-18 Thread David Bovill
>
> 2009/9/17 Richard Gaskin 
>
> Given this, you should be able to simply refer to the long name of the
> substack without needing to explicitly include its mainstack:
>

Yes - the point is that the following give a result that is not only
unexpected but plain wrong (go on - try it and see):


> put the name of stack "revLibrary" into stackObject
> put the long name of stack "revSaving" of stackObject = the long name of
> stack "revLibrary"  -- believe it or not this is true!
>

In my MVC libraries handlers frequently pass around the objects they acts
on. So early on I put object references into a variable:

put the long id of the target into targetObject

and then pass the variable "targetObject" around. As such a handler that get
passed a reference to a stack in a variable should be confident that it does
what is expected. In my case it did not and added an object to the main
stack and not the substack because of the above bug.

As a passionate advocate for the language and its robustness - maybe a few a
votes here  would
get this annoyance fixed :)

2009/9/17 Robert Maniquant 

>
> COuld you precise which version 3.5 or 4 ? I recall having had some strange
> behaviors related to stack name in variables, I think I took another route,
> but that could explain it!!
>

Pretty sure it will be in all versions.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Is this sort of thing a bug?

2009-09-17 Thread David Bovill
2009/9/17 Trevor DeVore 

>
> It seems like that should work as written so I think it would be worth
> filing.


OK - files here and voted for.


> put the name of stack "revLibrary" into stackObject
> put "stack" && quote & "revSaving" & quote && stackObject into stackObject
> put the long name of stackObject into correctResult
> put correctResult


Yes - looks like I'll have to go through the library of handlers that deal
with stacks and check for this - the library contains handlers which are
passed a reference to a stack in the variable stackObject. Looks like this
can fail with substacks.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Is this sort of thing a bug?

2009-09-17 Thread David Bovill
I'm not sure how to file this - it is a fairly basic gotcha with object
references - I'd say it was a bug?

Put the following in the message box:

put the name of stack "revLibrary" into stackObject
> put the long name of stack "revSaving" of stackObject into buggyResult --
> bug as it return the main stack
> put the long name of stack "revSaving" of stack "revLibrary" into
> correctResult -- returns correctly
> put correctResult
> answer warning "Bug" && buggyResult
>

It's a case where storing the reference to an object in a variable - in this
case

put the name of stack "revLibrary" into stackObject

does not work constantly. Things like this make it hard to pass around
object references from handler to handler in a consistent way. Would you say
that was a bug?
___
use-revolution mailing list
use-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 problem with arrow btn

2009-09-16 Thread David Bovill
2009/9/16 Yves COPPE 

>
> Re,
>>
>
> So, there is no solution ?
>
> Thanks for your quick reply


You can and often need to ":

send yourDatagridCommand to group "Datagrid 1" in 2 ticks
>

 Hope that makes sense - its a problem that the datagrid deletes all it's
inards and recopies them in all the time - so if your script is initiated
from a row template inside the datagrid - well it doesn't like deleting
itself :)
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: [ANN] tRev release

2009-09-14 Thread David Bovill
2009/9/14 Kay C Lan 

Glad you explained that. I started reading the announcement and immediately
> thought to myself. Wait a minute... Sarah's now working for Jerry??. First
> it was Trevor, now Sarah..., Jacque will be next, followed by Richard...


Always wandered inf tRev had any link to Trevor - or should that be tRevor?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Problems with snow leopard

2009-09-14 Thread David Bovill
In another context my mother once told me go for compatibility over beauty
any time :)

2009/9/14 Jerry J 

> On Sep 13, 2009, at 7:56 PM, Richard Gaskin wrote:
>
>  With every step Apple takes to eliminate differences between OSes, the
>> less forked code we need to write. As they decrease their unique value, they
>> increase ours. :)
>>
>
> Very quotable! Thanks, Richard.
>

Seems like the detailed files no longer returns filetype info in Snow
Leopard. Wandering how to get this - would it not be good if the engine
moved over to using spotlight for OSX? I guess according to the above
principle not :)

I've an untested sketch of a handler - I'll post here that tries to get
basic file types - that is map a file path to one of the data types rev can
display - image, player, text, text. Text could be broken down to htmltext,
rtftext, text and unicode. Does anyone have any handlers for this -
suggestions regarding cross platform techniques?

function file_GetType filePath
>switch the platform
>   case "MacOS"
>  --get file_DetailedInfo (filePath)
>  -- put item 11 of it into fType
>  put spotlight_Kind (filePath) into fType
>  return word -1 of fType
>   case "Win32"
>  put offset(".",filePath) into tChar
>  if tChar <> 0 then
> put char tChar to length(filePath) of filePath into text
> put
> queryregistry("HKEY_CLASSES_ROOT\"&(queryregistry("HKEY_CLASSES_ROOT\"&tExt&
> "\")) & "\") into tType
>  else
> put "" into tType
> put "" into text
>  end if
>  if tType = "" then
> if text <> "" then
>delete char 1 of text  -- remove "."
>put toupper(tExt) && "File" into tType
> else
>put "File" into tType
> end if
>  end if
>  return filePath & numtochar(9) & tType
>   default
>  return empty
>end switch
> end file_GetType
>
> function spotlight_Kind someFile
>put spotlight_GetAttribute(someFile, "kMDItemKind") into someKind
>put word 1 to - 1 of someKind into someKind
>delete char 1 of someKind
>delete char -1 of someKind
>return someKind
> end spotlight_Kind
>
> function spotlight_GetAttribute someFile, attributeName
> put spotlight_FileInfo(someFile) into spotlightFileInfo
> return spotlight_ExtractAttribute(spotlightFileInfo, attributeName)
> end spotlight_GetAttribute
>
> function spotlight_FileInfo someFile
> put "mdls" into someShell
> if someFile is not empty then
> shell_BashParamEscape someFile
> put space & someFile after someShell
> end if
> get shell(someShell)
> -- delete line 1 of it
> return line 2 to -1 of it
> end spotlight_FileInfo
>
> function spotlight_ExtractAttribute spotlightFileInfo, attributeName
> if char 1 to 7 of attributeName is not "kMDItem" then put "kMDItem"
> before attributeName
> put "(?im)" &  attributeName & " += +(.*)" into someReg
> if matchtext(spotlightFileInfo, someReg, someValue) is true then
> return someValue
> else
> return empty
> end if
> end spotlight_ExtractAttribute
>
> on shell_BashParamEscape @someParam
> put word 1 to -1 of someParam into someParam
> if text_IsQuoted(someParam) is false then
> replace space with ("\" & space) in someParam
> replace "|" with ("\" & "|") in someParam
> end if
> end shell_BashParamEscape
>
> function text_IsQuoted someText
> put "(?m)['" & quote & "]" into someQuote
> put someQuote & ".*" & someQuote & "$" into someReg
> return matchchunk (someText, someReg)
> end text_IsQuoted
>
___
use-revolution mailing list
use-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: popUpmenu btn in a datagrid

2009-08-27 Thread David Bovill
Should work fine - there is nothing magic happening in the datagrid - it's
just a regular group containing copies of your row template - the menupick
handler will work the same way as any group containing a menu button - so
just check your script and make sure you are editing the right one :)
___
use-revolution mailing list
use-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 SelectionChanged issues

2009-08-27 Thread David Bovill
2009/8/27 Trevor DeVore 

> On Aug 27, 2009, at 10:26 AM, David Bovill wrote:
>
> Shows that when using  "set the dgHilitedLine" both params to
> "selectionChanged" are empty, and "the dgHilitedLine" is set
> inconsistently?
>
> David,
>
> Setting the dgHilitedLine doesn't send selectionChanged (behavior mimics
> that of list fields). I just pasted your selectionChanged handler into a new
> data grid and tested your FindLine code to confirm. Did you override
> dgHilitedLine or are you firing off a selectionChanged message from
> somewhere else in your code?


Not firing off a selectionChanged message. I do have my own "setprop
dgHilite pBoolean" handler, but that only sets the backgroundcolour of a
group... ah think I've got it - its not the datagrid that is firing - it is
the list field? That is the list field is being used to "set the
dgHilitedLine of grp..." and in doing so the selection is being lost from
the field and moved to the datagrid. Explains why the params are empty - but
not why the dgHilitedLine reports an old value.

Figured it:

on selectionChanged pHilitedIndex, pPrevHilitedIndex
>if pHilitedIndex is empty then
>   beep
>   put the dgHilitedLine of grp "Datagrid" into vLineNum
>   answer ("Selection changed using dgHilitedLine!" && vLineNum && "is
> the old dgHilitedLine, as the message is sent before the datagrid is set.")
>else
>   put the dgHilitedLine of grp "Datagrid" into vLineNum
>   answer ("This works correctly" && vLineNum && "is the new (not old)
> dgHilitedLine.")
>end if
> end selectionChanged


What is happening is that in the case of the list field triggering the
datagrid the message is sent of BEFORE the datagrid is set, while in the
case of clicking on the datagrid it is being sent AFTER the datagrid is set.
This is as expected I guess if not a bit confusing - personally I think i
would have prefered a datagrid specific message being sent - easier to trap
and distinguish between messages from differnet controls. Anyway problem
solved :)
___
use-revolution mailing list
use-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 SelectionChanged issues

2009-08-27 Thread David Bovill
2009/8/27 Trevor DeVore 

>
> dgHilite isn't a data grid property. It is a property of a row control.
>
> Template Custom Properties & Messages:
> <
> http://revolution.screenstepslive.com/spaces/revolution/manuals/datagrid/lessons/3462-Template-Custom-Properties-Messages
> >
>
> If you are trying to change the selection you should be setting the
> dgHilitedIndex or dgHilitedLine of the data grid.


Sorry a typo - the card script does set the dghilitedLine:

   dispatch "FindLine" to dgView with "title", viewName
>put the result into vLineNum
>set the dgHilitedLine of dgView to vLineNum


What i am finding is that when I issue this from the card script a
"selectionChanged message is sent - but with an empty pHilitedIndex.
Therefore this script:

on selectionChanged pHilitedIndex, pPrevHilitedIndex
>if pHilitedIndex is empty then
>   answer "Selection changed using dgHilitedLine!"
>
>   put the dgHilitedLine of grp "View Grid" into vLineNum
>   answer (vLineNum && "is the old dgHilitedLine. How do i get the new
> one?")
>else
>   answer "Selection changed by clicking on a dgDataControl!"
>
>   put the dgHilitedLine of grp "View Grid" into vLineNum
>   answer ("Great" && vLineNum && "is the new dgHilitedLine.")
>end if
>
>if pPrevHilitedIndex is empty then
>   answer "pPrevHilitedIndex is empty!"
>else
>   put pPrevHilitedIndex
>end if
> end selectionChanged


Shows that when using  "set the dgHilitedLine" both params to
"selectionChanged" are empty, and "the dgHilitedLine" is set inconsistently?
___
use-revolution mailing list
use-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 reliably crash Rev 3.5 and 4.0-dp3 with four script lines

2009-08-27 Thread David Bovill
Thanks for taking the time to post this Wilhelm - a wealth of useful
information there that would have taken ages to drill down through bugzilla
reports.

2009/8/26 Wilhelm Sanke 

> Actually you can choose between two four-liners, depending on the specific
> conditions.
>
> First, a few remarks about the context and the circumstances in which such
> crashes occur:
>
>
___
use-revolution mailing list
use-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 SelectionChanged issues

2009-08-26 Thread David Bovill
>From the docs

on selectionChanged pHilitedIndex, pPrevHilitedIndex
> put the dgDataOfIndex [ pHilitedIndex ] of me into theSelDataA
> uiViewRecordOfID theSelDataA["id"]
> end selectionChanged


The script in the behavior of the datagrid is:


> private command _SelectionChanged pPreviouslyHilitedIndexes
> dispatch "selectionChanged" with sHilitedIndexes,
> pPreviouslyHilitedIndexes
> end _SelectionChanged
>

And I am having problems with old / new values when setting the dgHilite of
the dgControl from a card script, where pHilitedIndex is empty and "the
dgHilitedLine of the dgControl" is the pPrevHilitedIndex. Ho can I get
the value
for pHilitedIndex given a change of the selection initiated by "setting the
dgHilite"?
___
use-revolution mailing list
use-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] new collaboration tool from Google

2009-08-25 Thread David Bovill
Yep - got a developer account and merging it with the Jabber / XMPP library
I have - will be released GPL.

2009/8/25 viktoras d. 

> Seen this: http://wave.google.com/ ?
>
> V.
> ___
> use-revolution mailing list
> use-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: Change font color of script editor?

2009-08-25 Thread David Bovill
Really? Tell me more - AFAIK it's still a standard rev field - though I
haven;t dug into the colourisation script yet?

2009/8/25 Björnke von Gierke 

> The new script editor (since 3.0 i think) does not allow that. RunRev
> decided to use non-rev code in a special ide-only engine for the
> colorisation of the script editor. previously the script editor field was a
> standard rev field, where you could have done what you want.
>
> On 25 Aug 2009, at 16:44, runrev260...@m-r-d.de wrote:
>
>  Hi,
>>
>> i have searched the list mails back to 2005, so please excuse, if this was
>> discussed earlier.
>>
>> Am i missing something or is it really not possible to change the font
>> color within the settings dialog for the editor in Revolution? I would like
>> to change the background to black. But with black colored font that make no
>> senes.
>>
>> Regards,
>>
>> Matthias
>>
>
___
use-revolution mailing list
use-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: Password protecting a revMedia 4 stack - "Yer - But - No"

2009-08-24 Thread David Bovill
2009/8/24 Jan Schenkel 

> What Bill means is that the end-product revlet that you upload to the web
> server, is protected as it is turned into a different file format - but
> nothing prevents you from either putting the original stack right next to
> the revlet  for download by interested people, or sharing it to someone else
> via email or other means.


Thanks Jan - good to know that RevMedia allows creation of stacks that are
readable by the IDE - and it's just the Revlet export fromat that's locked.
___
use-revolution mailing list
use-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: Vote to disable password protection for revMedia 4 stacks

2009-08-24 Thread David Bovill
2009/8/24 Ian Wood 

>
> On 24 Aug 2009, at 10:14, David Bovill wrote:
>
>  The argument for removing the ability to password protect stacks is a good
>> one (thanks capellan)
>>
>
> So far the arguments that I've read in the thread could be summarised as
> 'other things are limited in revMedia, so this should be as well to make
> people upgrade'.


True - no one likes that. I especially did not like it with regard to SSL
functionality :) But you've got to admit it is in everyone's interest to
maintain strong incentives for people to upgrade and therefore provide
RunRev the revenue stream they need to keep developing the language.

I'm interested in tools, licenses, and social media that encourage
collaborative efforts - whether open source or simply online communities and
user generated content. In that context I'd argue that creating a free
environment in which *the code is unlockable* and encouraging open source
licenses for such code is technique worth considering for any company aiming
to increase the user base for a computer language.

It is controversial because we don't have good studies (yet) around these
issues. It would be interesting to ask whether a version of JavaScript that
allowed the code to be locked would have taken off more quickly or slower
than JavaScript that you could not lock, and everyone could read, hack and
learn from? We simply don't know. In the case of JavaScript - my guess is
that allowing the code to be locked would have quite seriously damaged it's
uptake and stimulated java based solutions. However I'm not coming down hard
on either side - I just think it is a good question.

My intuition on this lean towards

   1. Preventing locked/closed code suits organisations with small language
   communities and where developing robust user generated libraries is a
   priority.
   2. I'd lean towards the "allow locking/close sourcing" for larger or
   established language communities, with a wide array of existing libraries,
   where you want to encourage commercial language markets for components.

But then there is no good evidence either way for this - all we can do for
now is keep a close eye on these collaborative communities and see what
works and does not through trial and error.
___
use-revolution mailing list
use-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: Password protecting a revMedia 4 stack - "Yer - But - No"

2009-08-24 Thread David Bovill
Hi Bill - what's the logic for this? On the face of it one of the great
advantages of growing the user base is to increase the ability of the
community to create publicly available libraries and not leaving this up to
the central company (however well resourced). I'm guessing there must be a
motivation for preventing the "free" users from creating content which can
be used by customers that have paid for a license seems perverse? What am I
missing here?

2009/8/23 William Marriott 

> I'm missing something here.
>
> All revlets are in a "compiled" format that cannot be reverse-engineered
> back to a stack, whether or not a password is applied. This is similar to
> the .swf/.fla distinction.
>
___
use-revolution mailing list
use-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: Vote to disable password protection for revMedia 4 stacks

2009-08-24 Thread David Bovill
I'm on the fence with this one.

My definite preference would be to enable the SSL libraries on the all
versions, so that we can use proper security and access web services that
require SSL - I suspect the need for this function to grow rapidly as more
and more web services move over to tighter security models - the right
balance of openness and incentive to upgrade would be include ssl in the
free versions but easy stack level encryption in paid models.

This debate is parallel to the debate between different types of open source
license - GPL or more liberal licenses like MIT. In this debate there is a
trade off between encouraging businesses to adopt, and encouraging code to
flow back to the community. In this context RunRev are using features of the
engine to do the equivalent of what the GPL / MIT licenses do - the MIT
license allows you to lock your code additions away and not feed them back,
the GPL forces everyone to feedback.

The argument for removing the ability to password protect stacks is a good
one (thanks capellan) - but just like the GPL, the debate is open with
regard to whether it has a greater effect on stimulating the creation of
robust public domain/open source libraries than more liberal licenses.

For marketing reasons alone, whichever the choice of strategy, I've long
encouraged RunRev to adopt a clear open source strategy. A very clear signal
would be sent if they explicitly built in the ability to license and publish
code from within the editor. Allowing / disallowing certain features in the
engine can also express / help enforce the same policy - but it is more
important to work with the community and encourage clear licensing
arrangements.
___
use-revolution mailing list
use-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: dgFormattedHeight geometry question

2009-08-24 Thread David Bovill
2009/8/23 Trevor DeVore 

> Hi David,
>
> You are trying to manually update the data grid view but in so doing the
> data grid has no way of knowing that you are changing the size.
> LayoutControl is a handler in the template and therefore bypasses any logic
> in the data grid itself. RefreshList merely tells the data grid to resize
> itself.
>
> Use the technique in the webinar as that triggers the routines that
> recalculate and redraw.


OK - will do thanks. A "dgRefresh" geometry command would be nice :)
___
use-revolution mailing list
use-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: dgFormattedHeight geometry question

2009-08-22 Thread David Bovill
Thanks Yves - but that's a different problem. This is not a problem with
inaccurate formattedheight - adding a fixed number does not help. This only
affect the bottom records in that they resize fine - but the scrollbar for
the data grid does not adapt to allow you to scroll down to see the new
expanded areas.

2009/8/22 Yves COPPE 

>
> this point has been discussed abundantly this month.
> The ti :
> you have to set your rect first
> then adapt the foramattedHeight
> and set the rect again
>
> see :
>
> the question :
>
> http://www.mail-archive.com/use-revolution@lists.runrev.com/msg122882.html
>
> and the solution:
>
> http://www.mail-archive.com/use-revolution@lists.runrev.com/msg122922.html
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Datagrid: dgFormattedHeight geometry question

2009-08-22 Thread David Bovill
I'm having problems with the geometry of a datagrid - I have a row template
of variable height with a disclosure toggle arrow - much like that in the
Webinar. The problem is that the row templates at the bottom of the
datagrid, when expanded do not increase the range of the vertical scrollbar
of the datagrid resulting in records which you are unable to scroll down to
view. RefreshList has no effect. The script I use to toggle the row
templates expanded info group is:

on DiscloseView someBoolean
>lock screen
>put the rect of me into oRect
>set the visible of grp "Toggle" of me to someBoolean
>LayoutControl oRect
>RefreshList
>unlock screen
> end DiscloseView
>

I am guessing that this technique does not properly change the
geometry/dgFormattedHeight of the datagrid - but before I try teh technique
used in the Webinar (adding a visible entry to the dgArray for each record)
- I thought it would be worth checking what is going on here - or is this a
bug?
___
use-revolution mailing list
use-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: Franklin 3D for Revolution Update

2009-08-16 Thread David Bovill
Hi Lynn, I'm raising some funding for a 3D app for Architects. Interested in
becoming a founder / co-investing in feature creation. Would like to know
more about the model formats that are supported - and inter-conversion
between model formats. Is it possible to send us some detail on this?

2009/8/9 Lynn Fredricks 

> Hello all,
>
> A quick update on Franklin 3D - the 3D game and rendering engine for
> Revolution.
>
> We are going to be able to expose Franklin 3D for Revolution very soon to
> founders - I want one more example stack update. We have demo stack just
> about ready - some tasty bits:
>
> - Rendering includes OpenGL, two "software" renderers and Direct X 9
> (Windows only)
> - Loading a Quake Map
> - Unnative UI (there is a UI engine built right into it)
> - 2D sprite engine
> - Collision detection/gravity
> - Custom Scene Nodes
> - Movement
> - Terrain Rendering
> - Rendering to Texture
> - Split Screens (more to come on this - shows multi camera views - maybe
> multiplayer games...)
>
> Some of the effects aren't quite right yet, that's why the delay.
>
> That's the first batch of examples. There's one in the works that show how
> to handle call backs - several more coming.
>
> The demo stack will let you locate the media folder, select windows size,
> select renderer.
>
> Here's my top five Why This is Cool:
>
> - hardware accelerated graphics - both 3D AND 2D
> - lots of model formats supported, game and not game (like OBJ)
> - OpenGL gives you a great cross-platform option when the Mac OS X version
> is available
> - A lot of stuff like collision detection/gravity is REALLY easy
> - Useful for simulations, 3D viewers for graphics catalogs and more
>
> Founders will be able to pre-order, get codes right away and get into a
> private Google Group. Licenses will include 12 months of updates. The
> licensing system will be very similar to how Valentina works.
>
> Ill post other details soon.
>
> Best regards,
>
> Lynn Fredricks
> President
> Paradigma Software
> http://www.paradigmasoft.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: Command-line screen recorder for Mac and PC?

2009-08-03 Thread David Bovill
Hey - thanks for the pointer that Bernd. That looks good on the Mac -
looking at the AppleScript Dictionary it seems to have doubled in features
since I last checked! Also looks like it is fully supported for scripting
from VB and even JavaScript on Windows.

2009/8/3 BNig 

>
>
> >The images need to have varied time durations
>
> David, you could do almost all your editing with the extended Quicktime
> External, but for changing the duration of a frame you could use
> Applescript. something like set the duration of frame x of track x of
> document x to . You would have to do the timekeeping yourself, but you
> would probably have to do that anyways.
> This way you have a file that is proportional to the number of images and
> not oversized due to repeated images to account for a framerate.
>
> regards
> Bernd
>
>
> David Bovill-4 wrote:
> >
> >  The images need to have varied time durations,
> > not just one frame, and file size ought to be proportional to the number
> > of
> > images, not to the duration of the movie. Previously I've done this as a
> > Rev
> > app, or using SMIL - this time I want files that can be taken into a
> video
> > editor.
> >
> > Taking a look at Trevor's fab Extended QuickTime external I see the only
> > way
> > to bring video in is using copy & paste. So does that mean that you put
> > import the image as a binary, put it onto the clipboard and then use
> > qtPaste
> > to add the image to a given time? I'm also not clear how to extend the
> > duration of a track / stretch the duration of a segment - other than by
> > repeatedly copy / pasting - which for an image is only one frame?
> >
> > I found this command line tool
> > (QTSuperImageSequencer<
> http://mac.softpedia.com/get/Multimedia/QTSuperImageSequencer.shtml>),
> > written in Java which does what I want (I've not full tested it), but was
> > wandering if it were possible to achieve the same thing using Rev and
> EQT?
> > Similar to EQT all the heavy work is done by QuickTime - the source is
> > open
> > and short.
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/RevMedia-4-does-not-like-my-animated-gifs-%28constantMask-problem%29-tp24749079p24788196.html
> Sent from the Revolution - User mailing list archive at Nabble.com.
>
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Not clear about revMedia vs revEnterprise

2009-08-02 Thread David Bovill
Ok - their are two things going on. First viewing a secure https page with a
plugin on the page (that is the bit the browser does), second any network
connectivity the revlet does - that's not the browsers business but down to
the capabilities of the plugin. I was just talking of the former. We'll have
to wait till the FAQ to get an idea about the latter - though I've always
felt RunRev was shooting itself in the foot by only including https
functionality with enterprise editions, and doing the same for the plugin
really makes no sense - so I'd be surprised if they prevent anyone from
developing plugin based ecommerce solutions.

2009/8/2 Bernard Devlin 

> If this is true then it's good news.  However, since plugins like
> Flash are able to make their own multiple network connections once
> they are instantiated, I'd be surprised to learn that plugin network
> connections piggy-back on the browser's connection.  Since the
> revPlugin is visible as an application distinct from the browser in
> the running processes of the OS, the plugin is clearly not subsumed
> within the browser.
___
use-revolution mailing list
use-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: Not clear about revMedia vs revEnterprise

2009-08-02 Thread David Bovill
It's the browser that will do the https for the plugin - the plugin will
just need to pass any additional security requirements which AFAIK there
aren't any as https is basically and encrypted wrapper around a normal http
stream. My guess on this would be that there will be no major issues with
secure https issues and the plugin - it should just work?

2009/8/1 Bernard Devlin 

> During the webinar concerning Rev 4 I asked an unanswered question
> about SSL and the new rev plugin.  We were told these questions would
> make their way into a FAQ, but I haven't seen any further reference to
> these FAQs.  So what I'm saying here is just my deductions.
>
> On the belief that revMedia is being made free because it is this that
> is the basis for the browser plugin, I really don't see how any rev
> code running inside the plugin could access a URL using https (since
> SSL is an enterprise-only feature).
>
> So, it looks like one cannot expect an application built with
> Enterprise to necessarily work inside the plugin.
___
use-revolution mailing list
use-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: Command-line screen recorder for Mac and PC?

2009-08-02 Thread David Bovill
Practical? Yes. Acceptable - maybe not? That is a 17MB download is in the
days of Word-of-Warcraft Patches is nothing, and you "could" go to the
trouble of embedding the app and installing it from Rev. Given the regular
updates, ease of install, and general usefulness of VLC - it is really
better just to get the user to install it themselves with a provided link
from your app. Support issues are reduced that way.

Acceptable? Well it's not really "expected" - particularly if you charge for
the app - to make your app so "visibly" dependent on another app in this
way. So with regard to your customers, you have more of a marketing problem
than a practical one.

AFAIK - VLC on OSX is entirely contained in the bundle, The same may be true
for windows (the Linux version most probably places one or more executable
in the relevant bin directory). Generally it is a very clean install, but as
I haven't gone down the route of embedding it myself I'd have to say I don't
really know. There are no cleanly seperable command line components - it's
all part of the same thing. It is for these reasons bundling Mplayer, or
FFMPEG with your app is often preferred to using VLC. But it's only VLC that
you get everything with (including live streaming and screencasting) - for
which you pay the 17mb download price.

2009/8/1 Richard Miller 


> But is it practical to have the core VLC application (and associated files,
> whatever they may be) installed on the users computer, along with a Rev app?
> The VLC download is 17 MB, but perhaps that includes many files not needed
> to actually run the commands in command-line mode.
___
use-revolution mailing list
use-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: Command-line screen recorder for Mac and PC?

2009-08-01 Thread David Bovill
Mark, your post prompted me to look at the technique you are using for a
project where I need to create slide shows from images. The aim is to create
a QuickTime movie or FLV, with the stills simply extended in time so as not
to render large files slowly. The images need to have varied time durations,
not just one frame, and file size ought to be proportional to the number of
images, not to the duration of the movie. Previously I've done this as a Rev
app, or using SMIL - this time I want files that can be taken into a video
editor.

Taking a look at Trevor's fab Extended QuickTime external I see the only way
to bring video in is using copy & paste. So does that mean that you put
import the image as a binary, put it onto the clipboard and then use qtPaste
to add the image to a given time? I'm also not clear how to extend the
duration of a track / stretch the duration of a segment - other than by
repeatedly copy / pasting - which for an image is only one frame?

I found this command line tool
(QTSuperImageSequencer),
written in Java which does what I want (I've not full tested it), but was
wandering if it were possible to achieve the same thing using Rev and EQT?
Similar to EQT all the heavy work is done by QuickTime - the source is open
and short.

2009/7/31 Mark Schonewille 

> Hi Richard,
>
> Revolution can do this by itself. A good example is Snapper Screen
> Recorder, which you can find at . This
> application uses the EnhancedQ external. Particularly on Mac OS X, I'm
> getting great results. Windows is a different story, but I hope to improve
> that too. You can find an example (without sound) here: <
> http://www.youtube.com/watch?v=Cu4Mk04D-GA>. Unregistered copies can make
> one movie per session, which means that you can try it to test Revolution's
> performance.
>
> --
> Best regards,
>
> Mark Schonewille
>
> Economy-x-Talk Consulting and Software Engineering
> http://economy-x-talk.com
>
> Submit your software products to http://www.quickestpublisher.com and get
> found!
>
> If you sent me an e-mail before 8th July and haven't got a reply yet,
> please send me a reminder.
>
>
>
>
>
> On 31 jul 2009, at 17:22, Richard Miller wrote:
>
>  Anyone know of screen recorder software that is both PC and Mac compatible
>> and can be driven from Rev by command line? I want to be able to record
>> separate audio and video sequences that are playing simultaneously in a Rev
>> application and store the single new recording to an avi (or other Quicktime
>> compatible) file.
>>
>> Thanks.
>> Richard Miller
>>
>
>
> ___
> use-revolution mailing list
> use-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: Command-line screen recorder for Mac and PC?

2009-08-01 Thread David Bovill
VLC is cross platform, and (very) controllable via the command line. It has
screen grabbing functionality, which though pretty recent works OK and is
likely to get much better over time. You can even stream the live screen
grabs. I'll be working on this over the coming months for a project in
London - so keep us in touch :)

2009/8/1 Richard Miller 

> Hi Mark,
>
> So is this basically a matter of taking repeated screen shots through Rev
> and piecing these together into a movie through the EQT functions? I suppose
> one can then overlay an audio track as well. Is that the basic game plan?
>
> Thanks.
> Richard
___
use-revolution mailing list
use-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: [weblet] How can a webLet communicate with the hosting html page?

2009-07-07 Thread David Bovill
Had a look, I like your hack - great to know you can embed dynamically
generated stacks using a cgi / iRev script!

2009/7/7 splash21 

> Where there's a will, there's a way
> This example is pretty basic and I've only tested it on Firefox/Vista.
>
> http://splash21.on-rev.com/revlet/
>
> You can send text from the web page to the revlet.  Communication can flow
> the other way as well.
>
> I saved the test revlet stack with a variable containing a string of 'X'
> characters in the openStack script.
> The .rev file is not embedded on the HTML page - instead there's a .irev
> file embedded.  The .irev file opens the real revlet file as binary,
> replaces the string of X's with the user's session key and spits the
> resulting binary file out to the browser.  This gets downloaded as the
> revlet which now contains the session key and can now communicate with the
> web page.
>
> It may seem like a total hack of a workaround, but it's simple - and it
> seems to work.  Hope some of you guys find it useful!


It's doing the server based roundtrip for the communication though - to get
a responsive Web2.0 type app you need to use Javascript on the client side.
We'll have to wait for revised version of the plugin for that - maybe with
luck we'll even get "do script as javaScript" for standalones as well :)
___
use-revolution mailing list
use-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: [weblet] How can a webLet communicate with the hosting html page?

2009-07-06 Thread David Bovill
Robert, I agree that this sort of two way communication between a RevLet and
the web page is vital. I made a few posts about this on the list to find out
what the status was. The reply I've got was that RunRev are aware of the
importance / need passing params to the player / allowing the player to
effect the page via JavaScript call outs, but it is not a feature that will
be implemented in the first release.

By the way you can change the size of the Revlet to whatever you want -
including using %. Tests I've done also indicate that the normal resizeStack
handler is sent when you resize the page, which allows you to desing Revlets
which adjust their geometry to the the size available, though this was
working properly (on the early preview releaase) only on initial page
loading and not if you stretched the browser window for instance.
___
use-revolution mailing list
use-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: runrev 4.0 - kudos and a gripe

2009-06-28 Thread David Bovill
2009/6/28 Bill Marriott 

What is *not* going to be in the first version of the plug-in (e.g.: talking
> with JavaScript) is something that has only recently been decided, as we
> approach the betas and release. This is typical of the software development
> cycle; you cut features you don't think will make it as the ship date nears.


Where was the discussion - did I miss it? Do you have a url I can refer to?
My experience was that I was unable to find out any information regarding
the plugin on either the use or improve lists, over the last 9 months. Even
after booking a ticket to the conference, largely in order to find out about
the plugin and it's features I was not able to discuss these features with
anyone, there was no forum, email list and I was not asked any questions /
sent any surveys. There *was* an email link on the Pioneer web site, where
you could post questions - I emailed pion...@runrev.com twice with questions
and received no reply. I forwarded these emails to Heather, but still no
reply to the questions regarding the plugin.

The company has grown a lot in this respect and I would suggest it's now
> superior in this regard compared to many other software publishers. It's not
> that we don't know what our users want, or it didn't occur to us that
> communication with JavaScript (or richer text fields) was a desireable
> capability. It's that we have a long list of things we want to do and have
> to choose carefully what comes first. Based on the overwhelmingly
> enthusiastic response to the plugin, I think we've demonstrated it will be
> quite exciting and usable and worthwhile even without this capability in the
> first release.


I agree - I'm looking forward to it as well. My comments are focussed on the
lack of openess and sense of participation in this process. This has closed
down considerably since MetaCard days, and in the mean time many other
companies have moved closer to a open development models with early and open
beta testing etc. With new developers familiar with this sort of development
process coming on board after the launch, I think we'd all benefit by
ramping up that sort of open discussion and interaction?
___
use-revolution mailing list
use-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: runrev 4.0 - kudos and a gripe

2009-06-28 Thread David Bovill
Figured the field object would take a lot of replacing and good to know it
is being steadily worked on. While like others we'd love full text features,
I'd like to make a point about the development direction which is a bit
different. It's about using HTML and revBrowser for text markup.

It is pretty clear that as we move more and more towards "web applications",
what we now see as a text field becomes more and more like an iFrame or
piece of embedded xHTML. It is also clear that with the Rev web plugin,
developers will be making web pages with html content areas and areas taken
up by the plugin. What this means is that in terms of top level design we
are thinking about a world in which html text areas (aka text fields)
communicate with Rev widgets / plugins on a "page". This is why I'd be more
interested in getting the interoperability between the plugin and html areas
fixed and maximizing the usage of revBrowser than simply adding features to
the existing text field. We can get much of the formatting people want using
revBrowser - we just need it to work really, really well so it "feels" just
like a text field.

This is also the reason why we need the ability to have the web plugin to
talk to web page and vice-versa via JavaScript. That way we can design
applications that use revBrowser for the desktop app and the plugin talking
to the web page for the web site. That way we could / would be developing in
a way which works with the tide of web apps - and if we were involved /
aware of future plans regarding things like the text field could help steer
it in the right sort of direction / while planning our products to take
advantage of the features when they become available.

2009/6/28 Bill Marriott 

> In short, Rev 4.0 (along with revServer) will be our most significant
> release ever. It comes as giant leap after two years of steady, step-by-step
> advances. I personally see it as the most exciting news since the
> availability of MetaCard as a cross-platform solution for xTalk. This is not
> to say a new field is unimportant, but hopefully this post explains that
> this is about much more than just a pretty new logo.


What I'd like to see is much more marketing and development transparency.
I'd like to see a Rev development world in which as a developer working on
web / rev mashups I can easily find out what the future plans in this area
are and have my input. I'd prefer not to find out that the Rev Web Plugin
lack certain core features a few weeks before release, and I'd like to think
that by suggesting and discussing them with the community this input would
help RunRev ensure the new products are as good as they could be given the
resources invested. I don't think it is helpful that the "improve list" is
only open to enterprise customers like myself. That makes sense for support
but not for suggestions for improvement, and I don't think it is helpful to
not have discussed the plugin anywhere as far as I can tell, not even to
those like myself that paid out for a pioneer license.

It's a great and bold step that the new low end development environment is
going to be free. Its great that we have a web plugin, and the combination
looks capable of attracting many new developers. What I am arguing here for
is to involve these new developers in shaping the future of the product, and
not have the existing model of dialogue restricted to those on the improve
list and an inclination to use bugzilla feature requests.

While the coments above about JavaScript or "devlopment transparency" may
seem a bit geeky to some - its not. We need to build and attract a community
of both geeks, budding geeks and newbies. And many newbies will have come
from a world in which they know more about HTML, JavaScript and open source
projects than they know about Rev. We want them to feel that Rev fits into
this existing world of theirs, and one real cheap way of doing this is by
laying out a public development time line, and encouraging that discussion
with a bit more of an open source / crowd sourcing style to the marketing.
___
use-revolution mailing list
use-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: challenge to Kevin and Bill

2009-06-25 Thread David Bovill
Thanks Kevin, good to know XML is there, and hope you can look at
prioritizing this 2-way JavaScript communication between web page and
plugin.

The reason for this is that the world of the web-app has already moved a
long way in terms of AJAX and Flash widgets living together and talking to
web services. Stand-alone Rev plugins that are not able to interact with the
AJAX based widgets on a page are always going to be second class citizens,
and not serious contenders in any development process.

On the other hand if a developer can use Rev to rapidly develop plugins
which talk to other developers work or to existing open source widgets (take
YUI widgets as an example), then a much stronger argument can be made for
developing widgets with a new plugin.
All of the web apps that i'm planning would want to sit on a page / enhance
the working of an existing AJAX application - that is they would provide
enhanced functionality. And of course we all get will some much more
impressive demos of RunRev based web apps :)


2009/6/25 Kevin Miller 

>3. Will there be JavaScript API to allow the web page to interact with
> >the plugin = ie as you can with the QuickTime plugin - assumption =
> "No!"
>
> Not in 4.0 anyway.
>
> >4. Will it be possible somehow for the Plugin to interact with the DOM
> of
> >the web page it is placed in - ie via JavaScript
> >
> > For the last 2 questions you might want to refer to:
> >
> >- How you can use JavaScript to interact with Google Earth
> >
> plugin<
> http://code.google.com/apis/ajax/playground/?exp=earth#feature_balloons>
> >
> >- How to get Flash to interact with web page using external
> >
> interface<
> http://www.adobe.com/devnet/flash/articles/external_interface.html>o>
> r
> >
> > here<
> http://www.practicalflash.com/tutorials/using-externalinterface-to-write-
> > javascript-to-the-html-dom/>
>
> There will some sort of "do as JavaScript", but I cannot guarantee that it
> will make it into the first version (4.0) at this point.
___
use-revolution mailing list
use-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: challenge to Kevin and Bill

2009-06-24 Thread David Bovill
Bill, I'm "dying" to get an answer to the questions I've asked - I asked
them several times now, in all the right places I believe :) Answers to
these questions would really help with meetings next week. If you have any
quick answers - would be great:

   1. Will the XML built ins work in the plugin - assumption = "Yes!"
   2. Will the revBrowser built-ins work - so we can have embedded web pages
   inside the plugin - assumpiton = "No!"
   3. Will there be JavaScript API to allow the web page to interact with
   the plugin = ie as you can with the QuickTime plugin - assumption = "No!"
   4. Will it be possible somehow for the Plugin to interact with the DOM of
   the web page it is placed in - ie via JavaScript

For the last 2 questions you might want to refer to:

   - How you can use JavaScript to interact with Google Earth
plugin
   - How to get Flash to interact with web page using external
interfaceor
   
here


2009/6/24 Bill Marriott 

> Colin,
>
> You asked, "Is the logo final? It's mildly troubling that the two Rs are
> different to each other. Also, is the U an exact vertical flip of the N,
> and
> a horizontal flip of the V?  That would be neat."
>
> Yes it's final. The R's actually look better this way than if they were
> identically shaped.
>
> The other questions will make their way into an FAQ shortly :)
>
>
>
> "Colin Holgate"  wrote in message
> news:911f32a1-5a2e-47e3-9614-f704d2506...@rcn.com...
> > There were so many questions in the webinar that Bill only managed to
> > cover a small percentage of them. Would it be possible to take the  time
> > to go through the other questions, and answer those too? My three
> > questions happened to be amongst the ones that were past over, and
> > there's no hurry to hear the answers, but the one about the logo is  more
> > time critical.
> >
> >
> > ___
> > use-revolution mailing list
> > use-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


Webinar Invite - some unanswered questions...

2009-06-23 Thread David Bovill
Seems like the plugin will work with the standard externals - so I guess
that means XML support - but how about revBrowser? Will we be able to put
web page inside the plugin like we can with a stack?

And will we be able to use JavaScript to communicate to the plugin - the way
it works with QuickTime plugin for instance. Similarly can the plugin
trigger any JavaScript within the web page - so that the plugin can alter
the contents of the page - not just open new pages / tabs by calling a url -
but affect the DOM?
___
use-revolution mailing list
use-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: 4.0 Webinar Invite - Its Today!

2009-06-23 Thread David Bovill
Ah - it's GMT - so an hour behind for a bunch of us ... or should that be in
front :)

2009/6/23 William de Smet 

> Same here!
>
> 2009/6/23 viktoras d. 
>
> > Is the webinar postponed? It displays: 'waiting for Organizer' :-)
> >
> > Viktoras
> >
> >
> > Heather Nagey wrote:
> >
> >> Dear List Folks,
> >>
> >> Have you signed up yet? The biggest and most important Revolution
> Webinar
> >> yet is happening today, Tuesday 23rd June, at 2.00pm EDT. That's 7pm if
> >> you're in the UK or on British Summer Time, 8pm for most of Europe, and
> if
> >> you're still not sure what time it is for you, sign up and the webinar
> >> software will tell you, or check Mark Waddingham's patent world time
> >> checker, here:
> >>
> >> http://samples.on-rev.com/world-clock/world_clock.irev
> >>
> >> Here's the link:
> >>
> >> https://www2.gotomeeting.com/register/920553874
> >>
> >> Here's why you want to be there:
> >>
> >> Revolution 4.0 is the breakthrough version that brings the power and
> >> ease-of-use of Rev scripting to the Internet via multimedia plugin and
> >> server scripting. Your hosts Runtime Revolution CEO Kevin Miller and
> >> Marketing Director Bill Marriott will show you live examples of stacks
> >> embedded in Web pages and communicating with server scripts also written
> in
> >> Rev.
> >>
> >> Additionally, we are ready to take off the wraps on some very exciting
> >> news we know you’ll love, so it’s not to be missed. This free event is
> open
> >> for all Revolution fans.
> >>
> >> After registering you will receive a confirmation email containing
> >> information about joining the Webinar.
> >>
> >> System Requirements
> >> PC-based attendees Required: Windows® 2000, XPHome,
> >> XP Pro, 2003 Server, Vista
> >> Macintosh®-based attendees Required: Mac OS® X 10.4 (Tiger®) or newer
> >>
> >> See you there!
> >>
> >> Warm Regards,
> >>
> >> Heather
> >>
> >> Heather Nagey
> >> Customer Services Manager
> >> Runtime Revolution Ltd
> >> http://www.runrev.com
> >> follow me on twitter
> >> http://www.twitter.com/lainopik
> >>
> >> ___
> >> use-revolution mailing list
> >> use-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


Tie Break in Scotland?

2009-06-23 Thread David Bovill
Murry is playing Kendrick in Wimbledon - maybe that's why I can;t get on the
Webinar - or is it just too busy?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Rev application folder

2009-06-21 Thread David Bovill
I'm changing the defaultfolder all the time and could get a bug by
forgetting to reset it in a script. I guess you could use it in a startup
script and then log the value somewhere - seems strange that it is not a
built in - perhaps with specialfolderpath()? I think it's better to stick
with using the filename of the Home stack as a basis for now.

2009/6/20 viktoras d. 

> Hi, David,
>
> get the defaultFolder
>
> When Revolution application starts up, the defaultFolder initially contains
> whatever the working directory was at the time the application was launched.
> Under the IDE it points to Revolution IDE folder, but for standalones it
>  points to working directory of standalone application (if not changed by
> script).
>
> Viktoras
>
> David Bovill wrote:
>
>> Is there a Rev built in to find the current Rev application folder. The
>> best
>> I can do is extract this from "the filename of stack "Home""
>> ___
>> use-revolution mailing list
>> use-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


Rev application folder

2009-06-20 Thread David Bovill
Is there a Rev built in to find the current Rev application folder. The best
I can do is extract this from "the filename of stack "Home""
___
use-revolution mailing list
use-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: XML name spaces

2009-06-19 Thread David Bovill
Ooooh! Ugly :)

Go on just vote for it - you know you want to (especially if you want to
allow colons or even smileys in RSS fields from your shiny blog :)

2009/6/19 Andre Garzia 

> David,
> Praise the Gods of Hack! do this before creating the xml
>
> replace ":" with "-" in tXML
>
> and put the colons back afterwards. :-)
>
> then you can query for xmlns-atom or xmlns-content
>
> :P
>
> (if your content has colons in it, then replace the namespaces)
>
> On Fri, Jun 19, 2009 at 10:56 AM, David Bovill  wrote:
>
> > Shameless plug for votes for this bug report:
> >
> > While the xmlns issue is fixed we still can't use the common and basic
> name
> > spaces in attributes. Take this RSS example and try it in the message
> box:
> >
> > get " xmlns:atom='
> > > http://www.w3.org/2005/Atom' xmlns:content='
> > > http://purl.org/rss/1.0/modules/content/'>"
> > > put revCreateXMLTree(it, true, true, false) into treeID
> > > put revXMLAttributes(treeID, "rss", tab, CR)
> > >
> >
> > Only one value for "xmlns" is returned. We cannot work with any number of
> > XML based web services until this matter is resolved. The example is just
> a
> > common example, but it comes up very often with most of the major web
> > services. What we need returned is the entire attribute name including
> the
> > name space - so "xmlns:atom" and "xmlns:content" - there is very little
> > point in returning the name space without the attribute name.
> >
> > If others are having this issue could you vote on the report found
> > here<http://quality.runrev.com/qacenter/show_bug.cgi?id=7586>- it
> > applies to any handler dealing with XML attributes not justt
> > revXmlAttribute
> > ___
> > use-revolution mailing list
> > use-revolution@lists.runrev.com
> > Please visit this url to subscribe, unsubscribe and manage your
> > subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-revolution
> >
>
>
>
> --
> http://www.andregarzia.com All We Do Is Code.
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


XML name spaces

2009-06-19 Thread David Bovill
Shameless plug for votes for this bug report:

While the xmlns issue is fixed we still can't use the common and basic name
spaces in attributes. Take this RSS example and try it in the message box:

get ""
> put revCreateXMLTree(it, true, true, false) into treeID
> put revXMLAttributes(treeID, "rss", tab, CR)
>

Only one value for "xmlns" is returned. We cannot work with any number of
XML based web services until this matter is resolved. The example is just a
common example, but it comes up very often with most of the major web
services. What we need returned is the entire attribute name including the
name space - so "xmlns:atom" and "xmlns:content" - there is very little
point in returning the name space without the attribute name.

If others are having this issue could you vote on the report found
here- it
applies to any handler dealing with XML attributes not justt
revXmlAttribute
___
use-revolution mailing list
use-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: Best practice: how to write local plugin functions for library handlers?

2009-06-19 Thread David Bovill
Thanks Andre - good to know someone else likes indexing code and dynamically
generating it - you can do great things coupling that with introspection. I
don't think that helps with the aim here which is minimal scripting effort -
equivalent to calling a normal library function, but one you can customise
with your own local test functions. I've simplified it a bit and got rid of
the call to executioncontexts I was using:

function script_CallingObject
return item 1 of line -3 of the executioncontexts
end script_CallingObject

and pass the long id of me to the library function if the default "target"
won't do. I'm using getprop handlers in the local script as I prefer the
simplicity of the syntax and speed.

I'll take a look at the XmlRpc server code though - have you got a link to
the latest version? - are you using an array to define the xmlrpc call and
passing that to the library handlers? - think that is a great technique as
you get named params where the order no longer matters and avoid huge lists
of params.


2009/6/18 Andre Garzia 

> David,
>
> I don't know if I really understood the problem so pardon me if I give you
> a
> non-solution. When I don't know in advance what functions I will be calling
> during runtime, I usually do the following. First I create a global array
> with elements which are also arrays, this stored elements have the
> following
> keys:
>
> name  -  a generic name for a given function, it need not be tied to the
> function real name.
> method - the real function/handler name of a given function or handler
> type - if it is a function or a handler/command
> target - a long id to the function/handler is available.
>
> so a hello world might look like this:
>
> myHelloA["name"] =  "helloworld"
> myHelloA["method"] = "mySweetHelloWorld"
> myHelloA["type"] = "command"
> myHelloA["target"] = "stack "hello.rev""
>
> With an array of such elements, I have a dictionary of available functions.
> If you loops this array you can depending on the type, assemble a dispatch
> or a value call. So to add more tests, you just add more elements to the
> global storage array.
>
> I use a similar code in my xmlrpc server and it works fine. Generating code
> chunks at runtime and executing them might be easier to maintain than a
> catch all code. I like generating code at runtime. If you're only executing
> inside the IDE then you don't need "do", you can create a temp stack, set
> the script of it to your runtime generated piece and call it. No penalty
> there.
>
> Hope this helps
> andre
>
> On Thu, Jun 18, 2009 at 8:07 AM, David Bovill  wrote:
>
> > Say we have a complex, but generally useful handler that loops through a
> > lot
> > of things, and want to call a function on each element found. For example
> > it
> > may be a "search" function that loops through all objects in a stack, or
> a
> > "process' function that loops through certain nodes in an XML file. Now
> > there may be all sorts of "test functions" that we would like to call
> > during
> > this search - the question is how to structure the library handler and be
> > able to call custom test functions / handlers in the local script you are
> > working on?
> >
> >
>
> --
> http://www.andregarzia.com All We Do Is Code.
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Best practice: how to write local plugin functions for library handlers?

2009-06-18 Thread David Bovill
Say we have a complex, but generally useful handler that loops through a lot
of things, and want to call a function on each element found. For example it
may be a "search" function that loops through all objects in a stack, or a
"process' function that loops through certain nodes in an XML file. Now
there may be all sorts of "test functions" that we would like to call during
this search - the question is how to structure the library handler and be
able to call custom test functions / handlers in the local script you are
working on?

I've no real elegant way of doing this in Rev. The best I can think of is to
get the library handler to call out to the script that the local handler is
in, and allow the scripter to define a local function there. To make the
example concrete using some pseudoCode, lets say we have a function in a
library called "stack_SearchAllScripts" and we have a local search button in
another stack that is going to call this function to search scripts in a
given stack for the phrase "Hello World". So we have something that looks
like (in simplified pseudo code):

Library Stack Script
> -
>
> function stack_SearchAllScripts stackName, pluginFunctionName
> put the long id of the target into callingObject


> repeat for each line testObject in allStackObjects
> if the script_ContainsHello [testObject] of callingObject is true
> then
>
> put callingObject & CR after callingObjects
>
> end if
> end repeat
> return callingObjects
> end stack_SearchAllScripts
>
>
> Local Button Script
> -
>
> on mouseUp
>  put stack_SearchAllScripts ("Test", "script_ContainsHello")
> end mouseUp
>
> getprop script_ContainsHello [testObject]
> return the script of testObject contains "Hello World"
> end script_ContainsHello


I find it more elegant and faster to use "getprop handlers" than "send" or
"dispatch" - especially for functions that you want to return results, but
whichever way you choose, it is still ugly though - especially if you start
to get fussy about really determining which object "called" the library
handler. That is because the "calling object" is not the same as the target,
and you need to use a handler like this:

function script_CallingObject
>put line -3 of the executioncontexts into callingObject
>delete item 2 to -1 of callingObject
>return callingObject
> end script_CallingObject
>

With all of Rev's built in ability to send messages around in various ways,
it seems to me that there may be a more elegant way of writing these sorts
of library handlers that you can effectively plug in smaller function tests
into. I don"t want to use "do" for speed reasons as you want to search
through hundreds of items as fast as possible. Does anyone have a neat way
of doing 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: The Reporting Problem

2009-06-17 Thread David Bovill
On Linux - I used DocBook - which is basically XSLT but rolled for you in a
standard way :)
___
use-revolution mailing list
use-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: XML Validation:

2009-06-15 Thread David Bovill
Thanks Jan - seems OSX comes with libxml and xmllint. xmllint looks good for
checking... lets see if they are also part of standard linux distros

2009/6/15 Jan Schenkel 

>
> XML Schema validation is a different animal from DTD validation.
> Whereas DTD validation is limited to the structure of the XML file (are
> there no eloements that are not defined in the DTD, are all the elements
> there, do they have the right attributes,etc) XML Schemas can also dictate
> the cardinality of the elements and their content.
> RevXML doesn't offer XML Schema validation. You can either use a shell()
> call to a command-line tool, or write your own external to wrap an existing
> C library.
>
> Jan Schenkel
> =
> Quartam Reports & PDF Library for Revolution
> <http://www.quartam.com>
>
> =
> "As we grow older, we grow both wiser and more foolish at the same time."
>  (La Rochefoucauld)
>
>
> --- On Mon, 6/15/09, David Bovill  wrote:
>
> > From: David Bovill 
> > Subject: XML Validation:
> > To: "How to use Revolution" 
> > Date: Monday, June 15, 2009, 4:42 AM
> > Has anyone done XML validation using
> > Rev with and XML Schema? The docs say
> > you can use a DTD, but mention nothing about using a
> > schema...
> >
> > I'm looking to validate XML within Rev. Looking at the
> > docs, we can use:
> >
> >
> > > Use the revXMLValidateDTD function to validate an XML
> > tree against a DTD.
> > >
> > > Parameters:
> > > The treeID is the number returned by the
> > revCreateXMLTree or
> > > revCreateXMLTreeFromFile function when you created the
> > XML tree.
> > >
> > > The DTDText is a Document Type Definition.
> >
> >
> > I need to get the DTD from the url referenced in the XML
> > file - however the
> > XML file uses an XML-based alternative to DTD, ( XML Schema
> > ):
> >
> >- http://www.w3schools.com/Xml/xml_dtd.asp
> >
> > The XML starts with something of the form:
> >
> > 
> > > http://www.example.com/test/ui/"; xmlns:xsi="
> > > http://www.w3.org/2001/XMLSchema-instance";
> > xsi:schemaLocation="
> > > http://www.example.com/test/ui/
> > ..\ExampleXML\Test.xsd">
> >
> >
> >  AFAIK, it is still not possible to use Rev to extract
> > these XML attributes
> > (they aall get put in "xmlns" - see bugzilla 231) Skipping
> > over that issue,
> > I could extract
> > xsi:schemaLocation="http://www.example.com/test/ui/.
> .\ExampleXML\Test.xsd"
> > with a script but then the url is a bit strange I'm
> > not sure how to get the text referenced. Any ideas?
> >
>
>
>
> ___
> use-revolution mailing list
> use-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


XML Validation:

2009-06-15 Thread David Bovill
Has anyone done XML validation using Rev with and XML Schema? The docs say
you can use a DTD, but mention nothing about using a schema...

I'm looking to validate XML within Rev. Looking at the docs, we can use:


> Use the revXMLValidateDTD function to validate an XML tree against a DTD.
>
> Parameters:
> The treeID is the number returned by the revCreateXMLTree or
> revCreateXMLTreeFromFile function when you created the XML tree.
>
> The DTDText is a Document Type Definition.


I need to get the DTD from the url referenced in the XML file - however the
XML file uses an XML-based alternative to DTD, ( XML Schema ):

   - http://www.w3schools.com/Xml/xml_dtd.asp

The XML starts with something of the form:


> http://www.example.com/test/ui/"; xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="
> http://www.example.com/test/ui/ ..\ExampleXML\Test.xsd">


 AFAIK, it is still not possible to use Rev to extract these XML attributes
(they aall get put in "xmlns" - see bugzilla 231) Skipping over that issue,
I could extract
xsi:schemaLocation="http://www.example.com/test/ui/..\ExampleXML\Test.xsd";
with a script but then the url is a bit strange I'm
not sure how to get the text referenced. Any ideas?
___
use-revolution mailing list
use-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: TextWrangler

2009-06-15 Thread David Bovill
Great thanks everyone for the posts. Trevor, have you any pointers to
digging around with regards to the BBEdit language module? I'm interested in
tweaking and taking a look at the regular expressions :)

2009/6/15 Kay C Lan 

> On Mon, Jun 15, 2009 at 8:44 AM, Kay C Lan 
> wrote
>
> >
> > I believe BBEdit Plug-ins (language modules) are compatible with
> TextEdit.
> >
>
> Whoops, scratch TextEdit, that should read TextWrangler!
> ___
> use-revolution mailing list
> use-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


TextWrangler

2009-06-14 Thread David Bovill
Do I remember some people on the list using TextWrangler for editing Rev
scripts? I'm interested in developing a language plugin if noone has doen it
alreadY"

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


Re: Revolution and 3D: Can You Dig it?

2009-06-14 Thread David Bovill
I'd be interested in testing - and if the features were something that would
interest / integrate with architectural modeling environments / import /
export / display then we'd be interested in becoming founders.

2009/6/9 Noel 

> Sorry, meant that to go off list :)
>
>
>  - Noel
>
>
>  At 12:49 PM 6/8/2009, you wrote:
>>
>>> If you are interested in some 3D chocolate in your Revolution peanut
>>> butter,
>>> there could be a solution coming soon.
>>>
>>> A little background: those who know me, know that my software publishing
>>> company Mirye Software is also selling Revolution - in addition to Shade,
>>> a
>>> professional 3D modeling, animation and rendering program. 3D is a
>>> missing
>>> piece in Revolution and one reason why Rev users seek other tools that
>>> specialize in 3D development.
>>>
>>> Ruslan and I have a small group that's spent some free time on getting a
>>> 3D
>>> plugin working with Revolution. Its one of those projects that needs to
>>> be
>>> funded so that we can allocate folks full time to it for a few more
>>> months.
>>> There's some samples working on Windows; the real meat is to get several
>>> examples working on Windows and of course, have a solution on the Mac. A
>>> Linux version is also possible, but likely would not be in a 1.0 release.
>>>
>>> To finish up a 1.0 release, we are looking for some serious Revolution
>>> developers who can either help fund it or pre-order commercial versions,
>>> plus be willing to get their hands dirty on a private beta. Anyone
>>> involved
>>> at the "founder" stage is going to have a greater say so in feature
>>> implementation.
>>>
>>> If you are interested, please send me an email. If you become a founder,
>>> you'll get to start working with this very soon.
>>>
>>> Best regards,
>>>
>>> Lynn Fredricks
>>> President
>>> Proactive International, LLC
>>>
>>> - Because it is about who you know.(tm)
>>> http://www.proactive-intl.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
>>
>
> ___
> use-revolution mailing list
> use-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


Searching scripts for "hello world"

2009-05-28 Thread David Bovill
How do I search for a given multi-word phrase in a script -  not quite sure
how the RevIde script find works - seems to find scripts with all the words
in - not theentire string. Say I want to find all scripts in loaded stack
that contain the phrase "Hello World" - do I quote the phrase - use march
whole words - or do i have to write something myself?
___
use-revolution mailing list
use-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 pour les Francaise: 3G pay-as-you-go in France?

2009-05-26 Thread David Bovill
I'd like to know as well. A couple of related things to test out:

   1. You should be able to put a normal mobile phone SIM into the USB stick
   with a data-plan.
   2. Vodafone are abolishing roaming charges in June
   3. AFAIK (I've asked the Vodaphone tech department, but not tested) -
   there is no real speed difference between using a bluetooth-3G-mobile phone
   set up and a 3G USB stick?


2009/5/26 Ben Rubinstein 

> I'm abusing the list to contact some of our French correspondents.
>  Apologies to everyone else... and apologies to French speakers for my
> appalling Franglaise.
>
> I'm wondering whether it's possible to get hold of 3G data stick - or the
> SIM to go into one - for use in France, on a "pay-as-you-go" basis, rather
> than a long term contract.  In the UK, these 3G USB data modems, initially
> only available on quite long contracts with substantial monthly
> subscription, then became available under pay-as-you-go for about £100 (then
> about €130) and have since been dropping repeatedly so that you can now get
> one for about €25.
>
> Theoretically the ones I have should work in France, but paying a very high
> premium over the domestica data rate - in practise I've never been able to
> make them work at all.  So I'm wondering about the possibility of getting a
> French one to use while I'm in France - but I'm there often enough/long
> enough to justify doing so on a contract.
>
> I know that the mobile/cellular telephony market works very differently in
> different countries; are pay-as-you SIM cards (with 3G data access) or modem
> sticks available?  And are they truly pay-as-you-go, or (as seems to be the
> case in the US) somewhat lightweight contracts, where you have to top up by
> a minimum amount every few months otherwise it stops working altogether?
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


<    1   2   3   4   5   6   7   8   9   10   >