Hello,

as I understand there is something like the following structure in the air:


tcl-layer    list windows             tree statistic window
               |        \              /           |
               |          \           /            |
               |            \        /             |
c++-layer   dbFilter        treeFilter        statisticFilter
 

where: 
- list windows are the game list window and the browser windows.
- The dbFilter is a short living filter defined to reduce the scope of a
database.
  Typical example is: Games of Kasparov
- treeFilter filters the games based on the position on the board. It cannot
be configured.
- statisticFilter is a long living filter to reduce the scope of the
statistic
  Typical example is: Games where both players have more than 2300 ELO.

Now each of the tcl windows should be able to activate or deactivate the
link to a underlying filter without deleting it. So a list window can show
all games, the games filtered by either dbFilter or treeFilter or both. Each
instance of a list window can have its own settings.

Today we have dbFilter and treeFilter and hardcoded links to the windows.
The statisticFilter is a bit different. It could look like a header search
filter, but many of its fields are not useful. Some like Alexanders example
are difficult to implement. The statisticFilter is long living. I would like
to set it once and get it automatically activated when Scid starts. Also
there should be different statisticFilter for different databases. I do not
want to recreate it when I add new games to the base. So a filter expression
and not its result needs to be saved.

I think the tcl layer should maintain which of the filter links are
activated for a given window. The info can be passed to the backend with
each call - there are only few of them. So the backend can calculate the
filters when necessary. This is not difficult to implement and I did it
already in my private code for the list windows to treeFilter link.

There remains the question how to visualize the state. Here I am open to any
proposal. For me a combo box would fit.

        Gerd 


-----Ursprüngliche Nachricht-----
Von: Alexander Wagner [mailto:a.wag...@physik.uni-wuerzburg.de] 
Gesendet: Montag, 24. Januar 2011 18:06
An: f...@libero.it; Scid Users List
Betreff: Re: [Scid-users] Best Games List/Games list + Filter interaction
was: Potential data loss using trees

Hello Fulvio!

> Very interesting.
> I attach a screenshot and a patch.

Just checked out your screenshot. I'm currently on travel so I do not 
had a chance to check your code. Anyway, Steven seems to have had a 
glance and you seem to be interested in some response on the function as 
such.

Some comments:

- I like the context menu for the tree. This works in the direction of 
actually making the best games list an instance of the real games list. 
(Probably worth a consideration, to come to only one control here.)

- I like the ability to apply header filter to the tree or not even for 
the stats. This gives an easy access to repertoir browsing e.g. and IMHO 
blends very well with the masks feature.

- IMHO "all games" should be grayed out if no db filter is active. This 
could signify the user what's going on. However, I do not see right now 
how to obtain this.

> The code is very rough and probably have many issues, but i would like to
have
> your opinion on the tree behavior.
> 1) The tree window updates only the "best games window" and not the "game
list
> window"

In general we should discuss this point further. Probably, the games 
list should indeed learn some states: all, tree, header and a 
combination of those. What I tried to discuss with Gerd (but he seems to 
miss understand me here a bit) is how we make clear to the user what he 
actually gets where and why. So, IMHO some visual feedback is required. 
Probably we need a function in the backend that signifies which filters 
are active to achieve this.

> 2) A new checkbutton "all games" allow to show stats for all the games in
the
> database or only for the filtered ones.

This sounds a very good addition.

> I think that blending this with your improved game list window will
produce
> the maximum flexibility; giving everyone the possibility to choose his
> preferred way of work.

Indeed.

For me your direction would deserve a "go" state.

cu
Alexander

BTW: could you please adjust subjects and probably open a new post for 
new stuff? This makes it a lot easier for me to follow discussions, 
especially when I'm on the road. (Sometimes I've only a small Android at 
hand. Acutally, the reason for such a late reply to your interesting 
stuff...) TIA!

----------------------------------------------------------------------------
--
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires 
February 28th, so secure your free ArcSight Logger TODAY! 
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Scid-users mailing list
Scid-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scid-users


------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires 
February 28th, so secure your free ArcSight Logger TODAY! 
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Scid-users mailing list
Scid-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scid-users

Reply via email to