Thanks Adam, As I am just connecting to sourceforge, I have not looked at the code. But once I get that far, I will be asking myself why we need to cycle through all publications after edited just one?
Also, I liked your suggestion for disabling the updating of counts ... with my BibDesk usage, I would be happy if the smart groups were computed just once, at startup. Can you recommend a starting point to tweak this code? - Stu On Feb 26, 2009, at 9:28 PM, Maxwell, Adam R wrote: > On 02/26/09 16:59, "Stuart Andrews" <[email protected]> wrote: > >> So, my question is whether there is a way to make smart groups less >> diligent in terms of updating their contents after every edit. I >> would be happy if I could trigger this update myself ... "Ok smart >> groups, show us your beach-ball magic". > > The problem is that the count is updated after each change, so it > can be > displayed next to the group name. You could hack the code so smart > groups > were updated when selected or something, if you didn't mind an > incorrect > count (or disable the count for smart groups). > > The best way to fix it would probably be a data model that would > maintain > state and relationships in groups (this is greatly complicated by > things > like crossrefs and macros). At present, smart groups don't maintain > any > state; they're essentially a persistent search. IIRC this works as > follows: > > for (group in smartGroups) { > for (publication in [document publications]) { > for (condition in [group conditions]) { > if ([condition isSatisfiedByPublication:publication]) > // add to display list > } > } > } > > So any change to a publication triggers a linear search through the > entire > publications list, evaluating each condition...and that search is > repeated > for each group. If it could be changed to iterate the publications > at the > outer loop, that would probably help. Threading to evaluate groups in > parallel would be a brute-force win if you have multiple cores, but > likely > not be worth the effort. > > -- > adam > > > ------------------------------------------------------------------------------ > Open Source Business Conference (OSBC), March 24-25, 2009, San > Francisco, CA > -OSBC tackles the biggest issue in open source: Open Sourcing the > Enterprise > -Strategies to boost innovation and cut costs with open source > participation > -Receive a $600 discount off the registration fee with the source > code: SFAD > http://p.sf.net/sfu/XcvMzF8H > _______________________________________________ > Bibdesk-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/bibdesk-users Stuart Andrews [email protected] ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Bibdesk-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/bibdesk-users
