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