Thanks Pete. I figured out a way to do it by intercepting getProp dgColumnWidth. I was hoping to tell when a column had been resized after the fact, but I do not think a message gets sent. Things only happen during the resize operation. That will have to do.
I store a property of column properties, the name, the label and the width as a tab delimited list. Then I use this script in the datagrid: getprop dgColumnWidth [pColumn] put the tblDisplay of this card into theColumnData put the dgProp["column widths"] of me into theColumnWidths replace comma with tab in theColumnWidths put the itemdelimiter into theOldDelim set the itemdelimiter to tab repeat with theCount = 1 to the number of lines of theColumnData put item theCount of theColumnWidths into item 3 of line theCount of theColumnData end repeat set the tblDisplay of this card to theColumnData set the itemdelimiter to theOldDelim pass dgColumnWidth end dgColumnWidth Works a treat. Bob On Dec 22, 2011, at 5:36 PM, Pete wrote: > There's a mouseUp handler in the default header behavior script for a > datagrid that looks like this: > > *on* mouseUp pMouseBtnNum > > *if* pMouseBtnNum is 1 and not the dgHeaderColumnIsBeingResized of > thedgHeader > of me *then* > > *## Change the sort of the column* > > *## _HeaderToggleSortOfColumn is a helper that resizes in the parent > group script.* > > *## It toggles the sort of the column based on current state of > column.* > > _HeaderToggleSortOfColumn the dgColumn of me > > *end* *if* > > *pass* mouseUp > > *end* mouseUp > > > You might be able to figure something out from that. For example , set the > default header behavior script to your own copy of it and then if > the dgHeaderColumnIsBeingResized property is true, do whatever it is you > need to do. > > > Pete > > On Thu, Dec 22, 2011 at 5:11 PM, Bob Sneidar <b...@twft.com> wrote: > >>> Hi all. I have read up on all the lessons that might help, as well as >> searched the datagrid library, and I cannot find anyplace where a message >> gets sent when a column has been resized. I would like to trap that message >> so the next time around I can set up the datagrid the way it was last. Any >> ideas? >>> >>> Bob >>> >>> >> Never mind. I figured out a way. I just put a handler for getprop >> dgColumnWidth [pColumn] in the script of the datagrid and then pass it when >> through. I think I was hoping for some kind of message to get sent when the >> resize was FINISHED. This gets sent when a column resize is in progress, >> even if the column is not changing in size at the time. As long as the >> mouse is down on the column divider, it keeps triggering. It feels dirty >> somehow, like I ought to be trying to be more efficient, and can't be. >> >> Oh well. I have CPU cycles to spare I guess... >> >> Bob >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode@lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> > > > -- > Pete > Molly's Revenge <http://www.mollysrevenge.com> > _______________________________________________ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode