> Another scenario would be: > > When clicking, the group toggle between unchecked, partially checked, > checked. At the same time it caches the state for all subitems to > restore the partially checked state when switching to this. > > At any time, when a subitems check state is changed, all parents > invalidate their cached states and override it with the new partial > check state. If the last remaining unchecked item is checked (and vice > versa) clicking the group skips the partially checked state... > > Maybe that would be more natural?
So imagine you have an initial state with a group G checked and its layers A and B checked You click on G ==> it becomes unchecked, and A and B as well You click on G ==> it becomes checked, and A and B as well You click on A to unselect it ==> G becomes partially checked. And you save current state of A and B as StatePartial You click on G ==> it becomes checked, and A and B as well You click on G ==> it becomes unchecked, and A and B as well You click on G ==> it becomes partially checked, and you restore StatePartial (ie A is unchecked and B is checked) You check on A ==> it becomes checked and G as well (and clicking on G would switch between all on - all off) You uncheck A --> G becomes partially checked You uncheck B --> G becomes unchecked (and clicking on G would switch between all on - all off) Is that what you meant ? That makes sense to me. Besides a slightly more complicated implementation, one downside would be that cycling between (partially)on state and off state of a group (with different check state of its items) would require 1.5 clicks on average (1 click to go from unchecked to partially checked, 2 from partially checked to unchecked) instead of 1. I should check with the users if they can afford the extra half click :-) Thanks for your suggestions. -- Spatialys - Geospatial professional services http://www.spatialys.com _______________________________________________ Qgis-developer mailing list [email protected] List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer
