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

Reply via email to