On Nov 15, 2010, at 5:35 PM, Paul McNett wrote:

> I think it shouldn't be complicated. Can we keep as a separate concept the 
> original 
> dataset, and start the LIFO stack with the first filtered set? And the 
> filtered sets 
> only contain pointers to the actual dataset, instead of being full copies. 
> So, 
> setFieldVal() operates on the dataset, but iterating records goes through the 
> filter.


        I think you're underestimating how much the framework depends on the 
concept of the cursor's dataset. Picture a grid: how would you tell it to get 
its data from the filtered dataset instead of through the current DataSource 
scheme? RowCount, RowNumber - these depend on the dataset. There is no simple 
way to do what you're envisioning without a substantial re-write of the data 
portion of the framework, and that's simply not worth it.

        I have code that preserves new records and changed values in a filtered 
dataset when removing the filter. That's working great. Where I'm having 
problem is when calling save() with a change (i.e., a memento entry) in the 
original dataset that's not in the current (filtered) dataset. Should we 
silently ignore these changes, and only save those in the filtered data? Or 
should we silently save all the records? (the same questions apply to cancel, 
too).


-- Ed Leafe




_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
Searchable Archives: http://leafe.com/archives/search/dabo-dev
This message: 
http://leafe.com/archives/byMID/[email protected]

Reply via email to