To ask the obvious first: we assume you need, in many cases, two lines worth of label for the check box buttons but RunRev does not allow multi-line labels for check buttons.

There are many ways to tackle this but if it were me I would add a custom property to each of the buttons with the full text that I wanted to associate with that button, name it something like uMyLabel

Then your code could be:

on mouseUp
   put the number of buttons of me into nbr
   repeat with n = 1 to nbr
      if (the hilite of button n of me then)
       put (the uMyLabel of button n of me)&  ", " after theList
      end if
   end repeat
   delete char -2 to -1 of theList
   put theList into field "list"
end mouseUp

but then you have the issue of maintenance. What if you want to change the text 
of the button label? you have to fix the label and the custom property.

Another solution could be to make your UI consistent.. and not use custom 
props. You would programatically generate a label field that holds two lines 
and place that next to each check box button and name it with a hook to the 
button, then turn off the name and label of all the buttons. ( I don't know if 
your GUI has space for single line label button to occupy the same vertical 
space as 2 liners)

First, go ahead and enter the full label text property of all your buttons, don't worry 
about the space requirement on the GUI level for now.  You just want all your data for 
the same type of object, all in the same "targetable" location.

Next make a label field with all the properties you want them all to have. of 
course it will be set to wrap and align right, nice background color, text 
color etc...whatever you want

then have a "tools"  button on your UI that you can hide later.

on mouseUp
   set the properties of  templateField to the properties of fld "MyButtonLabel"

   repeat with x = 1 to the number of buttons of this card
      put ("Label_"&  the short name of button x) into tLabelName
      create field tLabelName
      set the topright of fld tLabelName to (item 1 of (the topleft of button 
x)-4,item 2 of the topleft of button x)
            # you can move them later or work out the math here to place them 
correctly
      put the label of button x into fld tLabelName
      # turn off the label on the button itself
      set the showname of btn x to false
    # Let's now let's make the check boxes small so they are only as wide as 
the actual check box itself
    # but this will cause the position to change  so we need to get the left 
first.
       put the left of btn x into tLeft
       set the width of btn x to 20
       set the left of btn x to tLeft # restore position
    end Repeat
  reset templateField
end mouseUp

Then you get your list like this:

on mouseUp
   put the number of buttons of me into nbr
   repeat with n = 1 to nbr

     if (the hilite of button n of me then)
       put (the Label of button n of me)&  ", " after theList
      end if
   end repeat
   delete char -2 to -1 of theList
   put theList into field "list"
end mouseUp

For maintenance you could have a handler in your tools button to update button 
labels when you change/edit the GUI..

on mouseUp
   put the number of buttons of me into nbr
   repeat with n = 1 to nbr
    set the label of button n of me to fld ("Label_"&  the short name of button 
x)
   end repeat
end mouseUp

many ways to tackle it.













Next, since you need to see this in the UI I would programattically generate a small transparent field over each of the buttons just to the right of the check box and set the check box to for consistency

On 9/13/10 3:25 PM, charles61 wrote:
I have a series of cards that have checkboxes. Some of the checkboxes have
labels fields under them because the label of the checkbox will not hold the
content of the information displayed. Here is my question: I want to modify
the following group script for checkboxes to display the content of the
checkboxes plus the label fields for some of the checkboxes. I have tried
grouping the checkboxes that have an additional label fields but that does
not work.

What changes would I need to make this work both checkboxes that have label
fields and those that do not have label fields?


on mouseUp
    put the number of buttons of me into nbr
    repeat with n = 1 to nbr
       put the short name of button n of me into tName
       if not the hilite of button n of me then next repeat
       put tName&  ", " after theList
       --      put tName&  cr after theList
    end repeat
    delete char -2 to -1 of theList
    put theList into field "list"
end mouseUp

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

Reply via email to