Re: Help message Broadcasting system

2010-02-12 Thread Kay C Lan
On Sat, Feb 13, 2010 at 4:13 AM, Andrew Kluthe  wrote:
>
> What about combining the custom property idea with the db idea. Eventually
> the data for my application will be in a remote mySQL and I would like to be
> able to update help information and have it get changed on the client end as
> its updated in the db.

Yes, that would work
>
> I need non-tech folks that work for our company who know the purposes of the
> items in this software to be able to enter help info into the db and it be
> spit out.
>
I'd suggest you implement something in your registration key code that
identifies who are 'normal' users, and who are 'company' users.

I think you could then proceed in at least two ways (with Rev there's
sure to be more:-)

A simple method of checking for the 'optionKey is down'

on mouseUp
if ((the optionKey is down) and (the cRego of this stack contains "PLEH")) then
   --present a field with the current Help message
   --allow for updating Help messages
   else
   --normal process
end mouseUp

That way, a company worker who comes across a Help message error, can
click on the object (with the optionKey down) and update the Help
message right then and there. Of course you may have other plans for
option/command/alt/control key combinations.

Another option could be 'company' users have an extra checkbox on
their Preference page (or an extra Menu Item, that allows them to
enter 'Update mode', which removes all the data from the fields and
leaves a blank card with all the fields and buttons which can be
clicked and Help messages individually updated.
>
> So maybe a have a handler that watches for the custom message property to
> determine what control it is and the hanlder gets info from the db to put
> into the help.
>
If you are referring to the getProp message, I don't see a reason in
this situation to use it.
Assuming your DB is large or bigger, then you'd need to organise some
scheme of keeping track of updates in portions of the DB, (ie just
prices, products added removed, Help info updated) so when users go
online a quick check is done and then they are given the option to
update the latest info.

> Is this going to put too much stress on my db?

I doubt it very much.

HTH
> --
> View this message in context: 
> http://n4.nabble.com/Help-message-Broadcasting-system-tp1477816p1490365.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: Help message Broadcasting system

2010-02-12 Thread Andrew Kluthe

What about combining the custom property idea with the db idea. Eventually
the data for my application will be in a remote mySQL and I would like to be
able to update help information and have it get changed on the client end as
its updated in the db.

I need non-tech folks that work for our company who know the purposes of the
items in this software to be able to enter help info into the db and it be
spit out.


So maybe a have a handler that watches for the custom message property to
determine what control it is and the hanlder gets info from the db to put
into the help.

Is this going to put too much stress on my db?
-- 
View this message in context: 
http://n4.nabble.com/Help-message-Broadcasting-system-tp1477816p1490365.html
Sent from the Revolution - User mailing list archive at Nabble.com.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Help message Broadcasting system

2010-02-12 Thread Andrew Kluthe

Cool, I am going to meditate on the responses and come up with something
that will take care of my needs. Thank you all for the quick input and
elaborate responses!

On Thu, Feb 11, 2010 at 6:46 PM, Trevor DeVore [via Runtime Revolution] <
ml-node+1477997-959398...@n4.nabble.com
> wrote:

> On Feb 11, 2010, at 4:33 PM, Andrew Kluthe wrote:
>
> > I am converting my noble little app into the glx framework, as I've
> > realized
> > that what it does will be invaluable to me in the long run.
>
> Welcome aboard Andrew. I think you will find the framework very useful
> for application development as it provides the vital pieces that you
> need for creating and maintaining an application in Revolution.
>
> The alternative is to spend time writing your own equivalents. While
> that would be an educational experience you don't get much bang for
> your buck.
>
> There is still a lot of areas that need more thorough documentation so
> if you have a question ask. That usually gives me enough incentive to
> add a few lessons.
>
> There is a Google Group you can send questions to. The link is on the
> main GLX Application Framework page.
>
>
> http://www.bluemangolearning.com/revolution/software/libraries/glx-application-framework/
>
> > A feature that was requested a couple of days ago, and I assume
> > needs to be
> > developed early in the process, is for a Help system.
> >
> > For Example:
> >
> > ...
> > Reading up on GLX, it said something about handling broadcasting.
> >
> > Can I use GLX's broadcasting features to do something like this? Am I
> > misunderstanding the purpose of broadcasting? Am I spinning off into
> > the
> > wrong quadrant of space?
>
> I would go with the advice you have received from others rather than
> using the broadcasting feature of the framework.
>
> In your situation you have multiple objects that are trying to display
> information in a central location. The data is flowing into the help
> display but nobody else really needs to know that the help display has
> been updated.
>
> The broadcasting APIs included with the framework are relevant when
> you have lots of parties interested in any changes made to a single
> object (the reverse of what you are doing).
>
> Basically broadcasting providers a way for any number of objects to
> sign up and say, "Hey, I want to know when object A's property is
> changed or such and such an event occurs." When object A's property is
> changed or the event occurs object A sends out a broadcast. The
> Broadcasting API dispatches messages to all the objects that signed up
> to be notified. Object A doesn't need to know who is signed up.
>
> One concrete example that may prove useful - in one of my apps I have
> a lesson table in a SQL database. The title of a lesson can be
> displayed in a number of different places in the UI. Each UI element
> that displays the lesson title has signed up to be notified when the
> lesson title is changed in the database. When the lesson title is
> changed a broadcast is made and a message is sent out to each object
> that signed up to be notified.
>
> --
> Trevor DeVore
> Blue Mango Learning Systems
> ScreenSteps: http://www.screensteps.com
> Releasable Revolution Resources for Developers:
> http://revolution.bluemangolearning.com
>
> ___
> use-revolution mailing list
> [hidden 
> email]<http://n4.nabble.com/user/SendEmail.jtp?type=node&node=1477997&i=0>
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
>
> --
>  View message @
> http://n4.nabble.com/Help-message-Broadcasting-system-tp1477816p1477997.html
> To unsubscribe from Help message Broadcasting system, click here< (link 
> removed) ==>.
>
>
>

-- 
View this message in context: 
http://n4.nabble.com/Help-message-Broadcasting-system-tp1477816p1478638.html
Sent from the Revolution - User mailing list archive at Nabble.com.
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Help message Broadcasting system

2010-02-11 Thread J. Landman Gay

Kay C Lan wrote:

is it really the case that you can move the
mouse fast, but stop it in an object and not have the mouseEnter
message sent?


It used to be, some years ago when I was first grappling with it. I was 
able to get the mouse into an object rect without the engine noticing. 
It probably makes a difference if you have other processing going on at 
the same time too (like "send in time" messaging that calls long 
handlers.) Actually, that was one reason I changed over to mousemove in 
another app. I originally started with mouseEnter but it wasn't working 
consistently, maybe because I had other long handlers completing at the 
same time. Things have probably improved by now but I've stuck with my 
mousemove approach because it's an easy one-liner, reliable, and doesn't 
seem to interfere with anything.


I do use mouseEnter too, it depends on the situation (and it's probably 
just a matter of personal preference which you choose anyway.) Your 
point about only triggering one entry point is valid. There are lots of 
situations where that's preferable.



I've extensively used mouseEnter for pop-up text activation and have
never noticed it didn't work. Isn't this what the Engine uses for
ToolTips?


It does usually work, so people shouldn't get the idea that it's 
error-riddled or anything -- and I think the engine does use it for 
tooltips. But I have occasionally seen tooltips missed too.




Obviously this isn't extensive testing, but if people are experiencing
mouseEnter messages not being sent, isn't this an Engine problem that
should be sent the QCC?


It would be if I were more sure it was Rev's fault. I see tooltip 
failures in other apps routinely (maybe this is only an OS X problem; 
that's what I mostly use.) Photoshop Elements is terrible about it, 
sometimes missing up to half of them. So I'm not convinced it's Rev, it 
seems to be everywhere on my machine. I wonder if it's OS-related. Or 
maybe it's all the stuff I run in the background all the time.


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


Re: Help message Broadcasting system

2010-02-11 Thread Kay C Lan
Jacque,

I'm treading very carefully here because I'm a mere peasant in the
shadow of a Master, but is it really the case that you can move the
mouse fast, but stop it in an object and not have the mouseEnter
message sent? Whilst I accept that it 'may'* be possible to move the
mouse completely across an object so fast that the mouseEnter message
isn't sent, in the case of toolTips, or contextual Help, this isn't a
concern, in fact it's a good thing that you don't get a dozen scripts
activated and Help messages popping up when really all you want is the
Help for the object under the final resting place of the mouse.

*As a quick test I created a new stack with a large field in the
middle and entered the following scripts:

on mouseEnter
   put "MouseEnter" into Msg
end mouseEnter

on mouseMove
   put cr & "MouseMove" after Msg
end mouseMove

on mouseLeave
   put cr & "MouseLeave" after msg
end mouseLeave

Whilst running the mouse as quickly as possible across the field I
could easily end up with no text in the Msg box, indicating no
messages were sent at all, not even mouseMove. Slowing down a bit I
always got all 3 messages. Every time I came to a halt in the field I
always had the MouseEnter text.

I've extensively used mouseEnter for pop-up text activation and have
never noticed it didn't work. Isn't this what the Engine uses for
ToolTips?

Obviously this isn't extensive testing, but if people are experiencing
mouseEnter messages not being sent, isn't this an Engine problem that
should be sent the QCC?

I appreciate the problem with overlapping objects, but this is covered
in the Dictionary.

I await thy wisdom :-)

On Fri, Feb 12, 2010 at 7:22 AM, J. Landman Gay
 wrote:
> Kay C Lan wrote:
>
>> Lastly, I'd probably use mouseEnter rather than mouseMove. Over a
>> large field, mouseMove could be sent multiple times, causing your
>> script to be triggered unnecessarily. MouseEnter will only be sent
>> once.
>
> I thought about that, and in fact the field doesn't even have to be very
> large for it to trigger multiple times, but that's an advantage. Sometimes
> mouseEnter doesn't trigger. MouseMove almost always does. If the user is
> moving very fast or there is an overlapping control, you don't always get a
> mouseEnter, and you only have one shot at it. Then you also have to catch
> mouseLeave too, in order to empty the help field text. So I think I'd still
> use mousemove here.
>
> I used mousemove in my Klondike game, where each iteration executed a very
> long handler, and there was no noticeable slowdown. That was about 10 years
> ago now, when machines were slower. So now I don't worry about it any more.
>
> --
> Jacqueline Landman Gay         |     jac...@hyperactivesw.com
> HyperActive Software           |     http://www.hyperactivesw.com
> ___
> use-revolution mailing list
> use-revolution@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Help message Broadcasting system

2010-02-11 Thread Trevor DeVore

On Feb 11, 2010, at 4:33 PM, Andrew Kluthe wrote:

I am converting my noble little app into the glx framework, as I've  
realized

that what it does will be invaluable to me in the long run.


Welcome aboard Andrew. I think you will find the framework very useful  
for application development as it provides the vital pieces that you  
need for creating and maintaining an application in Revolution.


The alternative is to spend time writing your own equivalents. While  
that would be an educational experience you don't get much bang for  
your buck.


There is still a lot of areas that need more thorough documentation so  
if you have a question ask. That usually gives me enough incentive to  
add a few lessons.


There is a Google Group you can send questions to. The link is on the  
main GLX Application Framework page.


http://www.bluemangolearning.com/revolution/software/libraries/glx-application-framework/

A feature that was requested a couple of days ago, and I assume  
needs to be

developed early in the process, is for a Help system.

For Example:

...
Reading up on GLX, it said something about handling broadcasting.

Can I use GLX's broadcasting features to do something like this? Am I
misunderstanding the purpose of broadcasting? Am I spinning off into  
the

wrong quadrant of space?


I would go with the advice you have received from others rather than  
using the broadcasting feature of the framework.


In your situation you have multiple objects that are trying to display  
information in a central location. The data is flowing into the help  
display but nobody else really needs to know that the help display has  
been updated.


The broadcasting APIs included with the framework are relevant when  
you have lots of parties interested in any changes made to a single  
object (the reverse of what you are doing).


Basically broadcasting providers a way for any number of objects to  
sign up and say, "Hey, I want to know when object A's property is  
changed or such and such an event occurs." When object A's property is  
changed or the event occurs object A sends out a broadcast. The  
Broadcasting API dispatches messages to all the objects that signed up  
to be notified. Object A doesn't need to know who is signed up.


One concrete example that may prove useful - in one of my apps I have  
a lesson table in a SQL database. The title of a lesson can be  
displayed in a number of different places in the UI. Each UI element  
that displays the lesson title has signed up to be notified when the  
lesson title is changed in the database. When the lesson title is  
changed a broadcast is made and a message is sent out to each object  
that signed up to be notified.


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


RE: Help message Broadcasting system

2010-02-11 Thread Jim Bufalini
Jacque wrote:

> Jeff Massung wrote:
> 
> > Instead, what about just having a background message loop processing
> that's
> > always checking the current focus target and displaying the help text
> for it
> > (if that option is enabled). For example:
> 
> 
> 
> Good approach, that. I'd use a built-in message in the engine instead
> though, it's shorter.
> 
> In the stack script (or whatever script is in the hierarchy for all the
> relevant objects):
> 
> on mousemove x,y
>   put the helptext of the target into fld "help field"
> end mousemove
> 
> Then make a custom property called "helptext" for any object that needs
> to display it.
> 
> This handler will automatically empty the helptext field when
> appropriate, because if a custom property doesn't exist in an object,
> its value is returned as empty. One advantage to the above is that you
> don't need any loops or messaging. One disadvantage is that you have to
> remember to pass the mousemove message if any of the controls also use
> it, but that's minor.

I was just about to suggest what Jacque just suggested. ;-)

To piggyback on her suggestion... You may want to use a custom property set
of the main stack or even a separate text file, so that all your help
messages are in one place. And, if someday, you want to make your app
multilingual, having all of your help messages in one place to be translated
will be convenient. To do this requires a custom property set. So, instead
of: 

put the helpText of target into fld "helpField"

it would be :

put the helpText[target] of stack "" into fld "helpField"

Jeff, one other suggestion. By putting the custom messaging the way you have
it in the openCard of every card, it is possible, if someone has say 20
cards the user has gone to, that you have 20 displayHelp messages looping
every second, just milliseconds apart, even when your app is idle. To avoid
this, you should always check the pendingMessages first before sending a
custom repeating message as in:

if "displayHelp" is not in the pendingMessages then
send displayHelp to me in 1 second
end if

The other advantage of using Rev built-in messaging is that they may not
trigger when say the app is minimized of otherwise off-screen. Especially,
for example, if you use mouseEnter instead of mouseMove.

Aloha from Hawaii,

Jim Bufalini



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


Re: Help message Broadcasting system

2010-02-11 Thread J. Landman Gay

Kay C Lan wrote:


Lastly, I'd probably use mouseEnter rather than mouseMove. Over a
large field, mouseMove could be sent multiple times, causing your
script to be triggered unnecessarily. MouseEnter will only be sent
once.


I thought about that, and in fact the field doesn't even have to be very 
large for it to trigger multiple times, but that's an advantage. 
Sometimes mouseEnter doesn't trigger. MouseMove almost always does. If 
the user is moving very fast or there is an overlapping control, you 
don't always get a mouseEnter, and you only have one shot at it. Then 
you also have to catch mouseLeave too, in order to empty the help field 
text. So I think I'd still use mousemove here.


I used mousemove in my Klondike game, where each iteration executed a 
very long handler, and there was no noticeable slowdown. That was about 
10 years ago now, when machines were slower. So now I don't worry about 
it any more.


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


Re: Help message Broadcasting system

2010-02-11 Thread Kay C Lan
Andrew,

I basically agree with Björnke with a couple of comments:

'help' is a constant and a message in Rev so using it as a custom
property may cause problems. As I guess you've already seen, most
people have some kind of prefix naming convention:

g    Global variable    gMyGlobal
t     Local 'temporary' variable    tMyVar
s    Script-local variable    sMyVar
p    Parameter (also called an argument)    sMyParam
k    Constant    kMyNumber
u    User-defined (or custom) properties    uMyProp

(stolen without permission from Richard Gaskin's excellent Fourth World site)

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

Secondly, look up 'target' in the Dictionary. Basically you can use
this to save yourself a lot of scripting. Instead of placing the same
script in every object you want Help, you just have to have one script
at the stack or card level, depending on your set up.

If you already have a DB with the Help statements then you would need
to add another column, 'target' and enter the matching data. You
already know how to extract data out of a DB using Rev so nothing new
there.

If you haven't got that DB set up, then I think Björnke's suggestion
of using custom properties is a good one. The information is stored in
a logical location, easy to find and update.

Rather than 'the text of field', have a look at 'HTMLText' in the
Dictionary. That way you can add little icons and bold text etc for
more emphasis, just like Rev's Dictionary.

Lastly, I'd probably use mouseEnter rather than mouseMove. Over a
large field, mouseMove could be sent multiple times, causing your
script to be triggered unnecessarily. MouseEnter will only be sent
once.

on mouseEnter
    set the HTMLText of field "Yellow Help Box" to the uMyHelp of the target
end mouseEnter

HTH

2010/2/12 Björnke von Gierke 
>
> I'd do it like this, a script in every object that needs a help entry:
>
> on mouseMove
>  set the text of field "Yellow Help Box" to the help of me
> end mouseMove
>
> In the property inspector, go to the "custom properties" part, and click the 
> topmost "+" sign.  in the dialog enter "help", and then enter the appropriate 
> content into the bottommost field.
>
> Note: if you develop cross platform apps, then you do want to use mactoiso() 
> or isotomac() on the custom property contents. One or the other, depending on 
> which platform() you do fill the properties.
>
> As for the GLX framework, I only glanced at it shortly once, and thought it 
> overly complex. like almost everything i look at these days...
>
> Have fun
> Björnke
>
> On 11 Feb 2010, at 22:33, Andrew Kluthe wrote:
>
> >
> > I am converting my noble little app into the glx framework, as I've realized
> > that what it does will be invaluable to me in the long run.
> >
> > A feature that was requested a couple of days ago, and I assume needs to be
> > developed early in the process, is for a Help system.
> >
> > For Example:
> >
> > 1.You click a field, lets say the field is for entering an insurance policy
> > number.
> >
> > 2. A box that is always on the bottom of the card/stack displays information
> > from a help Table in a db telling you the format of the purpose of this
> > field. (i.e. what to put here, what it means, what format it needs to be in,
> > etc.)
> >
> > I said that I could use tooltips to do something similar, but they really
> > want that little yellow help box.
> >
> > Reading up on GLX, it said something about handling broadcasting.
> >
> > Can I use GLX's broadcasting features to do something like this? Am I
> > misunderstanding the purpose of broadcasting? Am I spinning off into the
> > wrong quadrant of space?
> >
> > Your 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
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Help message Broadcasting system

2010-02-11 Thread J. Landman Gay

Jeff Massung wrote:


Instead, what about just having a background message loop processing that's
always checking the current focus target and displaying the help text for it
(if that option is enabled). For example:




Good approach, that. I'd use a built-in message in the engine instead 
though, it's shorter.


In the stack script (or whatever script is in the hierarchy for all the 
relevant objects):


on mousemove x,y
 put the helptext of the target into fld "help field"
end mousemove

Then make a custom property called "helptext" for any object that needs 
to display it.


This handler will automatically empty the helptext field when 
appropriate, because if a custom property doesn't exist in an object, 
its value is returned as empty. One advantage to the above is that you 
don't need any loops or messaging. One disadvantage is that you have to 
remember to pass the mousemove message if any of the controls also use 
it, but that's minor.


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


Re: Help message Broadcasting system

2010-02-11 Thread rodney tamblyn
Hi Andrew,

Here is a simple example stack I put together to illustrate how the GLX 
Application Framework broadcast system works.  I hope this helps.

~ Rodney

On 12/02/2010, at 10:33 AM, Andrew Kluthe wrote:

> 
> I am converting my noble little app into the glx framework, as I've realized
> that what it does will be invaluable to me in the long run. 
> 
> A feature that was requested a couple of days ago, and I assume needs to be
> developed early in the process, is for a Help system. 
> 
> For Example:
> 
> 1.You click a field, lets say the field is for entering an insurance policy
> number.
> 
> 2. A box that is always on the bottom of the card/stack displays information
> from a help Table in a db telling you the format of the purpose of this
> field. (i.e. what to put here, what it means, what format it needs to be in,
> etc.)
> 
> I said that I could use tooltips to do something similar, but they really
> want that little yellow help box.
> 
> Reading up on GLX, it said something about handling broadcasting.
> 
> Can I use GLX's broadcasting features to do something like this? Am I
> misunderstanding the purpose of broadcasting? Am I spinning off into the
> wrong quadrant of space?
> 
> Your thoughts.
> -- 
> View this message in context: 
> http://n4.nabble.com/Help-message-Broadcasting-system-tp1477816p1477816.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: Help message Broadcasting system

2010-02-11 Thread Jeff Massung
On Thu, Feb 11, 2010 at 3:33 PM, Andrew Kluthe  wrote:

>
> I am converting my noble little app into the glx framework, as I've
> realized
> that what it does will be invaluable to me in the long run.
>
> A feature that was requested a couple of days ago, and I assume needs to be
> developed early in the process, is for a Help system.
>
> For Example:
>
> 1.You click a field, lets say the field is for entering an insurance policy
> number.
>
> 2. A box that is always on the bottom of the card/stack displays
> information
> from a help Table in a db telling you the format of the purpose of this
> field. (i.e. what to put here, what it means, what format it needs to be
> in,
> etc.)
>

Andrew,

I don't know anything about GLX, but if I were you - since this "feature"
would likely permeate throughout your app - I'd do something that didn't
require you having to edit code in every single control of your app to
broadcast or otherwise change the help text.

Instead, what about just having a background message loop processing that's
always checking the current focus target and displaying the help text for it
(if that option is enabled). For example:


[[ -- begin source code -- ]]

local sTarget

on openCard
   -- start the Help System message loop
   send "displayHelp" to me in 1 second
end openCard

on displayHelp
   get the focusedObject

   -- don't continuously do the same work for the same control
   if it is not sTarget then
  put it into sTarget

  -- TODO: update the contents of stack "Help"

  -- if the stack is closed, but the option is enabled, open it now
  if the mode of stack "Help" is 0 and gHelpEnabled then
 modeless stack "Help"
  end if
   end if

   -- continue the help message loop
   send "displayHelp" to me in 1 second
end displayHelp

[[ -- end source code -- ]]


That way, you can just set data in each control that you want to display
help for and don't have to actually do any coding for any of them.

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


Re: Help message Broadcasting system

2010-02-11 Thread Björnke von Gierke
I'd do it like this, a script in every object that needs a help entry:

on mouseMove
 set the text of field "Yellow Help Box" to the help of me
end mouseMove

In the property inspector, go to the "custom properties" part, and click the 
topmost "+" sign.  in the dialog enter "help", and then enter the appropriate 
content into the bottommost field.

Note: if you develop cross platform apps, then you do want to use mactoiso() or 
isotomac() on the custom property contents. One or the other, depending on 
which platform() you do fill the properties.

As for the GLX framework, I only glanced at it shortly once, and thought it 
overly complex. like almost everything i look at these days...

Have fun
Björnke

On 11 Feb 2010, at 22:33, Andrew Kluthe wrote:

> 
> I am converting my noble little app into the glx framework, as I've realized
> that what it does will be invaluable to me in the long run. 
> 
> A feature that was requested a couple of days ago, and I assume needs to be
> developed early in the process, is for a Help system. 
> 
> For Example:
> 
> 1.You click a field, lets say the field is for entering an insurance policy
> number.
> 
> 2. A box that is always on the bottom of the card/stack displays information
> from a help Table in a db telling you the format of the purpose of this
> field. (i.e. what to put here, what it means, what format it needs to be in,
> etc.)
> 
> I said that I could use tooltips to do something similar, but they really
> want that little yellow help box.
> 
> Reading up on GLX, it said something about handling broadcasting.
> 
> Can I use GLX's broadcasting features to do something like this? Am I
> misunderstanding the purpose of broadcasting? Am I spinning off into the
> wrong quadrant of space?
> 
> Your 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


Help message Broadcasting system

2010-02-11 Thread Andrew Kluthe

I am converting my noble little app into the glx framework, as I've realized
that what it does will be invaluable to me in the long run. 

A feature that was requested a couple of days ago, and I assume needs to be
developed early in the process, is for a Help system. 

For Example:

1.You click a field, lets say the field is for entering an insurance policy
number.

2. A box that is always on the bottom of the card/stack displays information
from a help Table in a db telling you the format of the purpose of this
field. (i.e. what to put here, what it means, what format it needs to be in,
etc.)

I said that I could use tooltips to do something similar, but they really
want that little yellow help box.

Reading up on GLX, it said something about handling broadcasting.

Can I use GLX's broadcasting features to do something like this? Am I
misunderstanding the purpose of broadcasting? Am I spinning off into the
wrong quadrant of space?

Your thoughts.
-- 
View this message in context: 
http://n4.nabble.com/Help-message-Broadcasting-system-tp1477816p1477816.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