Re: [Gimp-developer] feature: Set exclusive layer visibility within groups
Date: Mon, 4 Jun 2012 20:48:40 +0200 From: gfx.u...@online.de To: gimp-developer-list@gnome.org Subject: Re: [Gimp-developer] feature: Set exclusive layer visibility within groups Hi, I posted descriptions of the current behaviour and the proposals in the wiki. Now it's on you ;-) Best regards, grafxuser I cannot seem to register a username on the wiki (or edit the page without one). The Login / create account message only shows the Login panel, not showing the registration panel. -- Stratadrake strata_ran...@hotmail.com Numbers may not lie, but neither do they tell the whole truth. ___ gimp-developer-list mailing list gimp-developer-list@gnome.org https://mail.gnome.org/mailman/listinfo/gimp-developer-list
Re: [Gimp-developer] feature: Set exclusive layer visibility within groups
Joao S. O. Bueno wrote: So, we could use a wiki page somewhere for getting this started. Like here: http://wiki.gimp.org/index.php/Specs/Visibility Hi, I posted descriptions of the current behaviour and the proposals in the wiki. No it's on you ;-) Best regards, grafxuser ___ gimp-developer-list mailing list gimp-developer-list@gnome.org https://mail.gnome.org/mailman/listinfo/gimp-developer-list
Re: [Gimp-developer] feature: Set exclusive layer visibility within groups
Ok - we it can be seen that there are a couple of desired/needed visibility features when group layers are in the mix. Since any native changes to existing behavior could only come in gimp 2.10 (and only them we would have the feedback of lots o people just as we are having now with 2.8) - this is what could be done now: We document desired perceived behaviors for toggling visibility, I write a couple of Python scripts to implement those - we test it carefully (with input from the UI team), and the optimal settings for those could be consolidated in gimp 2.10 . The major drawback being that these scripts can be called by a one-key shortcut, but not assigned to be triggered by clicking/shift clicking on the layers or eye-icons, or other UI parts. Once there are clear and well defined preferred behaviors, they could be made into the core bypassing this limitation. So, we could use a wiki page somewhere for getting this started. Like here: http://wiki.gimp.org/index.php/Specs/Visibility On 26 May 2012 13:59, Richard Gitschlag strata_ran...@hotmail.com wrote: Date: Sat, 26 May 2012 11:21:35 +0200 From: gfx.u...@online.de To: gimp-developer-list@gnome.org Subject: Re: [Gimp-developer] feature: Set exclusive layer visibility within groups It's a bit hard to understand what you mean exactly in your further writing. Can you write down a state chain, please? Give an example? Sure. Let's say I have an image with the following layer tree: (...) ___ gimp-developer-list mailing list gimp-developer-list@gnome.org https://mail.gnome.org/mailman/listinfo/gimp-developer-list
Re: [Gimp-developer] feature: Set exclusive layer visibility within groups
Richard Gitschlag wrote: I'm also missing two other possibilities in changing layers' visibility: 1) Only one layer can be selected at one time. It can be useful to make just a few layers visible while hiding the others. Could it be made possible to multiselect layers? That is an unrelated question. As far as I know GIMP only allows one 'active' layer at a time because that is the surface that any drawing operations are applied to. As long as drawing operations are the only operations in GIMP, this would be a reason. But there are other scenarios where a multiselection of layers will be useful: merging a few layers down to one without having to affect visibility of the other layers, copying some layers to another image, moving some layers into a layer group and so on. Yes it's a bit unrelated to your original problem. Maybe a topic for another thread if it's of enough interest. It's a bit hard to understand what you mean exactly in your further writing. Can you write down a state chain, please? BTW: AFAIK layer groups are still work in progress. At least layer masks are postponed for a later version. Filters don't work (yet) on layer groups, too (see bug #676768). Are there some UI specs for the handling of layers and layer groups? Maybe they answer all our questions and suggestions here. I haven't found them on gui.gimp.org, but perhaps I searched in the wrong place. Best regards, grafxuser ___ gimp-developer-list mailing list gimp-developer-list@gnome.org https://mail.gnome.org/mailman/listinfo/gimp-developer-list
Re: [Gimp-developer] feature: Set exclusive layer visibility within groups
Date: Sat, 26 May 2012 11:21:35 +0200 From: gfx.u...@online.de To: gimp-developer-list@gnome.org Subject: Re: [Gimp-developer] feature: Set exclusive layer visibility within groups It's a bit hard to understand what you mean exactly in your further writing. Can you write down a state chain, please? Give an example? Sure. Let's say I have an image with the following layer tree: * - G1 * - - L1 * - - G2 * - - - L2 * - - - L3 * - L4 * - G3 * - - L5 * - - L6 If I Shift+Click on L3, GIMP should toggle between all items and ONLY item L3. Specifically: 1 - The path to the clicked item in this case is G1 - G2 - L3. Therefore, G1, G2, and L3 shall all be made visible. 2 - All direct siblings to any of G1, G2, or L3 shall be made non-visible. This means: 3a - On the top level, G1's siblings are L4 and G3. L4 and G3 shall be hidden. 3b - G2 has one sibling: L1. L1 shall be hidden. 3c - L3 has one sibling: L2. L2 shall be hidden. 4 - L5 and L6, the descendants of G3, are not relevant and shall not be affected -- we already hid G3 and that is sufficient. 5 - L3 is now the only visible item in the entire image. 6 - If I Shift+Click again, steps 2 and 3 are repeated, but with siblings made visible. Or say I Shift+Click on G2, GIMP should toggle between all items and ONLY item G2: 1 - The path in this case is just G1 - G2. Even though G2 is a group containing child items (L2 and L3), those items are NOT of interest right now because I am acting on G2 as a whole. 2 - G1 and G2 shall both be made visible. 3 - Any siblings to G1 or G2 shall be made hidden: 3a - L4 and G3 are siblings to G1; they shall be hidden. 3b - L2 is sibling to G2; it shall be hidden. 4 - G2 is now the only visible item in the entire image. 5 - If I Shift+Click again, steps 2 and 3 are repeated, but with all siblings made visible. Note what happens if I click on a top-level item, say, L4: 1 - The path is now simply L4. L4 shall be the only item made visible. 2 - All direct siblings of L4 (G1 and G3) shall be made hidden. 3 - Any items inside G1 and G3 are NOT of interest and shall NOT be individually affected. 4 - L4 is now the only item actually visible in the entire image. 5 - If I Shift+Click again, repeat step 2 but with siblings made visible. This last case neatly duplicates our current behavior in 2.8.0 by affecting only top-level layers. -- Stratadrake strata_ran...@hotmail.com Numbers may not lie, but neither do they tell the whole truth. ___ gimp-developer-list mailing list gimp-developer-list@gnome.org https://mail.gnome.org/mailman/listinfo/gimp-developer-list
[Gimp-developer] feature: Set exclusive layer visibility within groups
I have a little gripe about setting exclusive visibility (shift+click a layer's visibility icon) in an image. Now that we have layer groups in GIMP 2.8, it only functions on the top level of the layer stack -- it seems impossible to toggle exclusive visibility inside a group. Since a layer group can itself be a complex combination of layers (apparently including other layer groups!), we should have some ability to toggle exclusive visibility with respect to other members in that group only. For example, the current behavior could be expanded from a simple on/off toggle to an iterative loop somewhat like this: 1 - When toggling exclusive visibility, first note the full path from image root to the selected item (inclusively) and begin iterating through it. 2 - IF at any point along this path there are any visible sibling items, THEN hide them, leaving only the selected item visible, and break and return. 3 - Otherwise, if we have traversed the entire path without finding any visible siblings, then selected item is the only visible item in the whole image. (Whether the selected item is itself a layer or group is irrelevant.) Therefore, traverse the selected path again and ensure that any and all sibling items at any point along the path are made visible. This would establish a toggle chain of all items - selected group - (subgroup, etc.) - selected item in group - all items. It could also be reversed; all items - selected item in group - selected group - (parent group, etc.) - all items, but I'm not exactly sure how that logic would pan out. Note that in the simple case of an image with no layer groups, this quickly reduces to the current behavior of all items - selected layer - all items. (This also applies when setting exclusive visibility on a top-level group, because in that case we DO want to act on the group as a whole). -- Stratadrake strata_ran...@hotmail.com Numbers may not lie, but neither do they tell the whole truth. ___ gimp-developer-list mailing list gimp-developer-list@gnome.org http://mail.gnome.org/mailman/listinfo/gimp-developer-list