Note that you may also double click on a cell and edit it directly, and
again, the expected behavior is, if you type foo, it turns red. The
refreshlist command is supposed to be called upon editing but I added
this as a separate button choice just in case, didn't help.
Sadhu Nadesan wrote:
Trevor
You said, let you know. Ok!
I must be doing something wrong, it doesn't seem to work. On the
other hand I did vary slightly from your instructions. I will file
this as a bug report so I can include a sample stack and screen shots.
Context
The goal is to add a custom behavior that will turn certain cells
color upon a certain condition.
Problem
Attempting to apply the example logic in practice, nothing happens, no
color change.
How to Duplicate This Problem
Create a new stack, very simple, with 2 objects, a populate button,
and a data grid with 3 columns, with default names, that is group
"datagrid", and columns "col 1", col 2", and "col 3". Populate a few
rows, say 3, using the contents pane of the property inspector.
The populate button has this code (assuming you haven't resorted, the
row numbers and index numbers are the same)
on mouseUp
ask "Pattern?"
put it into thePattern
repeat with rownum = 1 to 3
dispatch "setdataofindex" to group "datagrid" with rownum, "Col
2", thePattern
end repeat
dispatch "RefreshList" to group "datagrid"
end mouseUp
Note that the refreshlist call at the end is necessary or you won't
see any changes. The above will let you change the contents of
column 2, the first 3 rows.
Next, select the data grid and using the property inspector, and in
the columns choice, highlight col 2, then use the plus button at the
bottom and then click column behavior to begin editing the custom
behavior for this column.
To the fillindata handler, add some code to change the color depending
on the contents of the cell. Like this
on FillInData pData
-- This message is sent when the Data Grid needs to populate
-- this template with the column data. pData is the value to be
displayed.
-- Example:
set the text of field 1 of me to pData
if (pData contains "foo") then
set the backgroundcolor of field 1 of me to "red"
end if
end FillInData
Now run your stack. put 'bar" in column 2, by clicking the populate
button and answering bar. Nothing should happen. Now do it again and
answer foo. Again, nothing happens, but the foo cells were expected
to be red.
Trevor, is my error obvious to the master? What have I left out!
Grateful thanks,
Sadhu
Sadhu Nadesan wrote:
Wow, Trevor, you are the MAN! MAHALO! I will check it out right away.
You should be able to get this working without too much trouble.
I've added a lesson to the manual that discusses how you can
quickly override the default column behavior for a data grid table.
There are two samples at the end of the lesson, one of which shows
how to color a cell.
<http://revolution.screenstepslive.com/spaces/revolution_tools/manuals/datagrid/lessons/3966-How-Do-I-Override-the-Default-Behavior-For-Rendering-Data-to-a-Cell-
>
Let me know if this helps.
Regards,
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution