The number of supported filters grows with every day, and I think we should rethink the UI a bit. The filters dialog developed by Nick is great and powerful, and of course must be there for those who know SVG and are comfortable with all the parameters. But for the rest of us, there must be a simpler way to access the filters. So far such a "simpler way" only exists for blur and blend modes, in the Fill and Stroke dialog. But of course we can't cram all filters there, nor do we need to, because most others are more obscure and less useful.
So, what if we just add a whole new menu for SVG filters that would largely contain a list of preconfigured filters that can be applied by a single verb (command), without any setup dialog. These presets may include single filters with some meaningful parameters (perhaps depending on the selected object's properties in some way), perhaps even several different presets for a filter (e.g. Sharpen, Sharpen more, Sharpen a lot etc). Other presets may be often-used combinations of filters, such as Drop shadow. Each such command adds its filter(s) to the top of the filter stack on selected objects. This way the most common filters can be accessed quickly, and users will even be able to assign keyboard shortcuts to them.
Apart from the presets, the menu would have commands "Remove last filter," "Remove all filters," and of course the command to open Nick's filters dialog which is where the parameters of the added filters can be adjusted if needed.
What do you think?
bulia byak wrote:
So, what if we just add a whole new menu for SVG filters that would largely contain a list of preconfigured filters that can be applied by a single verb (command), without any setup dialog.
A while back there was talk of a dedicated filters tool (not dialog, but a tool). Is this no longer desired? I could see some really nice benefits with it such as for lighting effects and having draggable light sources (knots/handles on the canvas). Also for stuff like blur where you can have different blur for X and Y, where handles on canvas would be awesome for working with that.
I'm not opposed to the menu idea, I am just curious about if the filter tool idea has been abandoned.
-Josh
On 7/20/07, Joshua A. Andler <joshua@...533...> wrote:
A while back there was talk of a dedicated filters tool (not dialog, but a tool). Is this no longer desired? I could see some really nice benefits with it such as for lighting effects and having draggable light sources (knots/handles on the canvas). Also for stuff like blur where you can have different blur for X and Y, where handles on canvas would be awesome for working with that.
For dragging handles, we don't need a tool. For example we don't have a Pattern tool but we can adjust patterns by handles. We can do the same for filters too: if the object has a filter for which a handle makes sense, display the filter's handle whenever you display the other kinds of handles (gradient, shape handles etc). Just make sure by using dedicated shape/color for the handle that they are easy to recognize as filter handles. (By the way, this is what needs to be done already: shape handles, gradient handles and pattern handles are now all white, which is quite confusing. Only node tool handles use different color (gray). We need a complete restyling of all the handles we have, to make them easier to recognize. Proposals/patches welcome!)
As for the tool, it only makes sense for when you want to _create_ something by dragging or drawing on canvas. Only some of the effects can conceivable be applied by some sort of canvas drag. Others are just command-like things with parameters, and for them the only advantage of a tool will be in easy access to the parameters via the controls bar. Upon reflection, I don't think it's really worthwhile. Besides, filter stacks may be tall and complex, and cramming all of Nick's dialog into a horizontal toolbar would likely prove difficult.
Fri, 20 Jul 2007 16:52:21 -0400 "bulia byak" <buliabyak@...400...> kirjoitti:
The number of supported filters grows with every day, and I think we should rethink the UI a bit. The filters dialog developed by Nick is great and powerful, and of course must be there for those who know SVG and are comfortable with all the parameters. But for the rest of us, there must be a simpler way to access the filters. So far such a "simpler way" only exists for blur and blend modes, in the Fill and Stroke dialog. But of course we can't cram all filters there, nor do we need to, because most others are more obscure and less useful.
Just came to my mind, it might be useful to place feComposite modes there in the same dialog box with feBlend modes.
And for the actual idea: yes, having a collection of preconfigured filters sounds like a good idea. Then again, things like dropshadow have plenty parameters (place, amount of blur, shadow colour...) It would be nice to be able to fiddle with them when applying a filter.
On 7/20/07, Niko Kiirala <niko@...1267...> wrote:
Just came to my mind, it might be useful to place feComposite modes there in the same dialog box with feBlend modes.
Yes, absolutely, and include some useful presets for the "arithmetic" option too (such as "negative" - is this possible?).
And for the actual idea: yes, having a collection of preconfigured filters sounds like a good idea. Then again, things like dropshadow have plenty parameters (place, amount of blur, shadow colour...) It would be nice to be able to fiddle with them when applying a filter.
Yes, but then it will be all adjustable via the dialog, as well as (see my other mail) hopefully the onscreen handles too. And for the blurs, blends, and composites used as parts of some complex presets, you will still be able to use the Fill&Stroke controls. Just make those controls smart so that, instead of just adding e.g. a new blur filter on top of the stack, it will search the stack and adjust the first found blur filter in it, even if it applies e.g. to the drop shadow and not the object itself. (And if the user wants to blur the entire object with a drop shadow filter stack, he can do this just by grouping it and blurring the group.)
The general idear of some kind of filter wizzards is good, but the current position isn't so good.
Lets say I want to design a new filter for a rect: 1.) I have to open the dialog for the filter effects 2.) I create a filter 'blur1' and add a blur primitive, but the current selected rect does not show any effect. 3.) I create a second filter from a SVG tutorial and call it 'button', but still I can't see any effect. 4.) I have the idea that I could open the fill properties dialog. 5.) I wonder about the blur slider which belongs to no filter. (Does this blur have to do something with filters? If it does, will create a new filter? Will it modify my 'blur1' filter? Will it add a blur to my 'button' filter? Will it modify the blur in my 'button' filter? ...) 6.) I choose the blend mode 'Filter'. 7.) I choose the 'blur1' filter. -> Finally I see the effect. 8.) I wonder why the blend mode is 'Normal' again. 9.) I try to choose the blend mode 'Filter' again, but this doesn't work. So I can't test the filter 'button'.
Suggestions: a.) Remove the blend mode drop down list, and display allways the list with the created filters.
b.) Display additionaly to the created filters a option: 'new custom filter'. This Option will create a new filter effect. Then it assign this new filter effect to the selected object. Afterwards it will open the filter effects dialog.
c.) Add a option to the same list called 'use filter wizzard', which will open a new dialog. It will create also a new empty filter and apply it to the selected object. In this dialog the user can choose a wizzard for the content of the new filter. The wizzard will then guide the user through the progress of filter creation.
d.) Add a option 'import filter', which allow the user to import a filter from other SVG file.
bulia byak schrieb:
On 7/20/07, Niko Kiirala <niko@...1267...> wrote:
Just came to my mind, it might be useful to place feComposite modes there in the same dialog box with feBlend modes.
Yes, absolutely, and include some useful presets for the "arithmetic" option too (such as "negative" - is this possible?).
And for the actual idea: yes, having a collection of preconfigured filters sounds like a good idea. Then again, things like dropshadow have plenty parameters (place, amount of blur, shadow colour...) It would be nice to be able to fiddle with them when applying a filter.
Yes, but then it will be all adjustable via the dialog, as well as (see my other mail) hopefully the onscreen handles too. And for the blurs, blends, and composites used as parts of some complex presets, you will still be able to use the Fill&Stroke controls. Just make those controls smart so that, instead of just adding e.g. a new blur filter on top of the stack, it will search the stack and adjust the first found blur filter in it, even if it applies e.g. to the drop shadow and not the object itself. (And if the user wants to blur the entire object with a drop shadow filter stack, he can do this just by grouping it and blurring the group.)
On 7/21/07, Florian Köberle <FloriansKarten@...128...> wrote:
The general idear of some kind of filter wizzards is good, but the current position isn't so good.
I agree, absolutely. Sorry I just didn't test it long enough to realize it's designed this way. It's very very wrong and needs to be fixed and made consistent with every other dialog:
- the filters dialog must edit _directly_ the filter stack of the selected object.
- If multiple objects are selected, they can be edited only if they use the same effect stack, otherwise display "Different effects on N selected objects" and disable the right-hand part of the dialog (but still allow me to select filters from the list on the left to assign all selected objects to one filter).
- correspondingly, the left list of "Filters" in the dialog should autoscroll to the filter used by the selected object. If I select a different filter in that list, the dialog assigns that filter to the selected object(s).
- the dialog's changes must apply directly and immediately to selected objects.
- the confusing "Filter" option in the Fill&stroke blend mode list must be removed. (Instead, the composite modes should be added there, as Niko suggested.) This list, like the Blur slider below it, must search the selected object's filter stack for feBlend or feComposite, display the current mode of that filter and let me change it (or add a new filter to the top of the stack, but only if no such filter already exists in the selected object's stack).
Mental, what do you as the mentor think?
On Sat, 2007-07-21 at 12:39 -0300, bulia byak wrote:
- the confusing "Filter" option in the Fill&stroke blend mode list
must be removed.
I do think simply calling that option "Filter" is a little weird. How about labeling the blend mode drop-down as a whole "Filter", and changing the "Filter" option to "Custom..."? That may be a better description of what it does, and then it would make sense to put other filter presets there too.
(Instead, the composite modes should be added there, as Niko suggested.)
I would also like to see some feComposite presets in that list.
This list, like the Blur slider below it, must search the selected object's filter stack for feBlend or feComposite, display the current mode of that filter and let me change it (or add a new filter to the top of the stack, but only if no such filter already exists in the selected object's stack).
That would interact very badly with many interesting filters, as they may be built out of multiple feBlend/feGaussianBlur elements; simply picking the first or last feBlend element (or even all of them, depending on how the filter is designed) won't give desirable results.
I think it is best to only allow the direct feBlend/feComposite/feGaussianBlur manipulation when the filter conforms to some explicitly recognized pattern.
-mental
On 7/21/07, MenTaLguY <mental@...3...> wrote:
I do think simply calling that option "Filter" is a little weird. How about labeling the blend mode drop-down as a whole "Filter", and changing the "Filter" option to "Custom..."? That may be a better description of what it does, and then it would make sense to put other filter presets there too.
I'm all for adding more preset blending and composite modes to that list, yes. But why do we need "custom" at all? As it is now, it's out of place there. When I'm in fill&stroke, I don't think in terms of choosing among "filter2578" and "filter2593". That is an entirely different task for the different specialized dialog - the Filters dialog. This list in fill&stroke contains various ways of compositing an object over its background, period. A "Custom" there would only make sense if its function would be to allow you to edit a customized expression for compositing (e.g. for the "arithmetic" option in feComposite), but NOT for assigning the overall filter stack for an object as now. That assignment must be done automatically by the Filter dialog (which is where you edit those stacks).
I would also like to see some feComposite presets in that list.
Sure, one thing I would really enjoy is inverting the background - is this possible with feComposite?
This list, like the Blur slider below it, must search the selected object's filter stack for feBlend or feComposite, display the current mode of that filter and let me change it (or add a new filter to the top of the stack, but only if no such filter already exists in the selected object's stack).
That would interact very badly with many interesting filters, as they may be built out of multiple feBlend/feGaussianBlur elements; simply picking the first or last feBlend element (or even all of them, depending on how the filter is designed) won't give desirable results.
OK, that was just one of my ideas, I don't insist on making it that way too much. It may indeed be confusing sometimes, although also useful IMHO. What do others think?
Sat, 21 Jul 2007 16:09:48 -0300 "bulia byak" <buliabyak@...400...> kirjoitti:
I would also like to see some feComposite presets in that list.
Sure, one thing I would really enjoy is inverting the background - is this possible with feComposite?
Well, theoretically yes. With factors 0, 0, -1, 1, the compositing equation ends up as 1 - (colour of in2)
The problem here is, the alpha channel gets inverted, too. All the nice opaque inverted colours end up as transparent areas and transparent areas become opaque white.
For some odd reason, it seems that the source graphic ends up affecting the output with those factors, even though it clearly should not...
Sun, 22 Jul 2007 09:17:18 +0300 Niko Kiirala <niko@...1267...> kirjoitti:
For some odd reason, it seems that the source graphic ends up affecting the output with those factors, even though it clearly should not...
Actually, just found that problem. Selecting background image as an input in filter effects dialog sets value of 'BackgroundGraphic' when it should be 'BackgroundImage'
Still, even with this, the output doesn't seem quite correct.
On Fri, Jul 20, 2007 at 06:02:33PM -0400, bulia byak wrote:
On 7/20/07, Niko Kiirala <niko@...1267...> wrote:
Just came to my mind, it might be useful to place feComposite modes there in the same dialog box with feBlend modes.
Yes, absolutely, and include some useful presets for the "arithmetic" option too (such as "negative" - is this possible?).
And for the actual idea: yes, having a collection of preconfigured filters sounds like a good idea. Then again, things like dropshadow have plenty parameters (place, amount of blur, shadow colour...) It would be nice to be able to fiddle with them when applying a filter.
Yes, but then it will be all adjustable via the dialog, as well as (see my other mail) hopefully the onscreen handles too. And for the blurs, blends, and composites used as parts of some complex presets, you will still be able to use the Fill&Stroke controls. Just make those controls smart so that, instead of just adding e.g. a new blur filter on top of the stack, it will search the stack and adjust the first found blur filter in it, even if it applies e.g. to the drop shadow and not the object itself. (And if the user wants to blur the entire object with a drop shadow filter stack, he can do this just by grouping it and blurring the group.)
Back in January I drew a mockup for the feature request tracker with a simple but fully-featured filter stack dialog which sounds very similar to what you're describing.
http://sf.net/tracker/index.php?func=detail&aid=1628343&group_id=934...
However, I can imagine that searching the stack for a matching filter to edit would be confusing. For example, with Gaussian blur, when I drag the slider, what I usually want is "whatever I've got here: blur it". When a shape is clipped, I'm only blurring the clipped shape, and that throws me slightly (or used to at first).
I'd suggest it makes more sense to just insert a new filter at the top unless the filter is commutative.
Dan
On Friday, July 20, 2007, 10:52:21 PM, bulia wrote:
bb> So, what if we just add a whole new menu for SVG filters that would bb> largely contain a list of preconfigured filters that can be applied by bb> a single verb (command), without any setup dialog.
I think that is a good idea, especially if the user can add their own favourite filters to this list.
A (long discontinued) SVG editor had, on one of its betas, what I thought was a very nice UI for applying canned filters.
It took the current selection, made it smaller, then applied each of the canned filters to it. Those rendered results were displayed to the user in a dialog. So the user chose by example, the filters applied to what they were currently editing were rendered into the dialog box; they just picked the one they liked.
If there was no selection then I think it applied them to a group of a semi-transparent circle and a rect, or something.
Chris Lilley <chris@...157...> writes:
It took the current selection, made it smaller, then applied each of the canned filters to it. Those rendered results were displayed to the user in a dialog. So the user chose by example, the filters applied to what they were currently editing were rendered into the dialog box; they just picked the one they liked.
Picasa does the same: http://picasa.google.com/features/features-edit.html http://www.digital-photography-tips.net/images/picasa-screenshot-editing2.jp...
Cheers Colin
I'm not very familiar with SVG filters. I only know what I've seen demonstrated at http://www.w3.org/Graphics/SVG/Test/20030813/htmlframe/full-index.html
There is a finite number of filters isn't there? Is there any reason why a dialog similiar to Photoshop's Layer Style dialog couldn't be used? For those who don't have photoshop, here's a screenshot http://microugly.com/images/misc/photoshop-layer-style-dialog.png
Each 'filter' is listed on the left and can be turned on and off. Clicking on the name of a filter then displays it's controls in the middle.
MenTaLguY wrote:
There is a finite number of filters isn't there?
Not really -- the are fixed types of filter elements which can be combined in arbitrarily many ways to make an infinite number of different filters.
That's still easily workable with my suggestion. You can apply multiple filters and save them as a new style. Unless with SVG you can apply the same type of filter element multiple times. That isn't a situation handled by that screenshot.
So, the filter dialog now tracks the selection as suggested. Regarding improved simple controls, here's what I'm thinking about:
The filter effects dialog gets a toggle for switching between simple and advanced mode. Advanced uses the current setup, which shows pretty much all the complexity of the underlying svg. The simple mode will keep the list of filters at the left, but will remove the filter primitive list (and connections graph), replacing it with a list of effect groups, such as Drop Shadow, Blur, Invert Colors, etc.
Each effect group could be made up of several filters (e.g. Drop Shadow might consist of feGaussianBlur, feOffset, and feComposite.) In order to easily display them in grouped form, perhaps an attribute such as inkscape:filtergroup could be assigned to each of the filters in a group, with a string indicating the type of effect. Each filter group would also have it's own simplified settings at the bottom (e.g. Drop Shadow might have offset and intensity settings.)
Here's a mockup of what this all might look like: http://picasaweb.google.com/NicholasBishop/Inkscape/photo#509397521654263387...
Additionally, after this is done, all the filter stuff (including blend mode and blur) could be removed from the Fill and Stroke dialog, so that all things filter related will be grouped into the Filter Effects dialog.
Comments?
-Nicholas
On 7/25/07, MenTaLguY <mental@...3...> wrote:
On Wed, 2007-07-25 at 16:40 -0700, microUgly wrote:
Unless with SVG you can apply the same type of filter element multiple times.
Exactly. You can even think of SVG filter elements as the building blocks for a very simple filter programming language.
-mental
This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
On 8/2/07, Nicholas Bishop <nicholasbishop@...400...> wrote:
So, the filter dialog now tracks the selection as suggested. Regarding improved simple controls, here's what I'm thinking about:
The filter effects dialog gets a toggle for switching between simple and advanced mode. Advanced uses the current setup, which shows pretty much all the complexity of the underlying svg. The simple mode will keep the list of filters at the left, but will remove the filter primitive list (and connections graph), replacing it with a list of effect groups, such as Drop Shadow, Blur, Invert Colors, etc.
I'm not sure it's a good idea, for several reasons:
- Not simple enough: Instead of having to manage just two entities - the object and some effect applied to it - the user will have to manage three: first, coordinate the object with some numerically-named filter in the left list, and then coordinate that filter with a description in the right column. This adds an unnecessary step and still exposes the user to the "filter1234567" machinery which is absolutely unnecessary in the "simple mode".
- Depending on simple/advanced mode, the right column changes its contents in an inconsistent way - from a list of preset filters to a tree of the chosen filter. This is bad for usability. Ideally, an "advanced mode" must only _add_ some more controls, but changing the function of existing controls is very confusing and must be avoided.
- With this all-in-the-dialog setup, it's impossible to create verbs that would assign a preset filter to selected objects. This is bad because verbs are much more accessible: less clicks are necessary to select a verb in the menu, you can assign keyboard shortcuts to a verb, and you can even call it from the command line. These are big advantages.
Additionally, after this is done, all the filter stuff (including blend mode and blur) could be removed from the Fill and Stroke dialog, so that all things filter related will be grouped into the Filter Effects dialog.
Also disagree. You're now thinking as a developer who knows that blur is one of the SVG filters. But a user may be totally unaware of that, and furthermore, not too interested in that at all. For a user, blur is a fundamental visual property of an object, just like opacity. So it makes a lot of sense to be able to adjust it simply and directly, right next to where you adjust opacity. Same applies to the blend and composite modes (which are naturally even closer related to opacity than blur).
Of course we cannot put all the filters there, and many of them are too specialized and obscure anyway, so we must show restraint in what filters we promote to the status of a "fundamental visual property" - but I think blur and blending modes are unquestionable.
So, for these reasons, I still prefer the three-tier system I have proposed:
1. Blur slider and blend+composite modes (combined in one dropdown list) must be in Fill&stroke, but please remove any mention of "filter" there - it's out of place and confusing.
2. A set of preset filters like Drop Shadow or Bevel, all coded as verbs and added to the Filters sub(menu), ideally with a way for the user to easily add his own presets (e.g. via some XML config files).
3. For the people who know what they're doing, your current Filters dialog offering total control over all the details of a filter.
Well, I agree that what you suggest is much simpler. However, I could use a little clarification on #2 in your list, the preset filters. Most of the presets will have some settings; do these get set in a simple dialog when the effect's menuitem is clicked? If the user then wants to change the settings after adding some effects, do they just edit the filter using the current filter effects dialog (which would show all the effects as their component filter primitives, not as "Drop Shadow" or such), or should there be some special UI for this?
Anyway, thanks for writing such a detailed response, I think I understand better now what you would like to see implemented.
-Nicholas
On 8/2/07, bulia byak <buliabyak@...400...> wrote:
On 8/2/07, Nicholas Bishop <nicholasbishop@...400...> wrote:
So, the filter dialog now tracks the selection as suggested. Regarding improved simple controls, here's what I'm thinking about:
The filter effects dialog gets a toggle for switching between simple and advanced mode. Advanced uses the current setup, which shows pretty much all the complexity of the underlying svg. The simple mode will keep the list of filters at the left, but will remove the filter primitive list (and connections graph), replacing it with a list of effect groups, such as Drop Shadow, Blur, Invert Colors, etc.
I'm not sure it's a good idea, for several reasons:
- Not simple enough: Instead of having to manage just two entities -
the object and some effect applied to it - the user will have to manage three: first, coordinate the object with some numerically-named filter in the left list, and then coordinate that filter with a description in the right column. This adds an unnecessary step and still exposes the user to the "filter1234567" machinery which is absolutely unnecessary in the "simple mode".
- Depending on simple/advanced mode, the right column changes its
contents in an inconsistent way - from a list of preset filters to a tree of the chosen filter. This is bad for usability. Ideally, an "advanced mode" must only _add_ some more controls, but changing the function of existing controls is very confusing and must be avoided.
- With this all-in-the-dialog setup, it's impossible to create verbs
that would assign a preset filter to selected objects. This is bad because verbs are much more accessible: less clicks are necessary to select a verb in the menu, you can assign keyboard shortcuts to a verb, and you can even call it from the command line. These are big advantages.
Additionally, after this is done, all the filter stuff (including blend mode and blur) could be removed from the Fill and Stroke dialog, so that all things filter related will be grouped into the Filter Effects dialog.
Also disagree. You're now thinking as a developer who knows that blur is one of the SVG filters. But a user may be totally unaware of that, and furthermore, not too interested in that at all. For a user, blur is a fundamental visual property of an object, just like opacity. So it makes a lot of sense to be able to adjust it simply and directly, right next to where you adjust opacity. Same applies to the blend and composite modes (which are naturally even closer related to opacity than blur).
Of course we cannot put all the filters there, and many of them are too specialized and obscure anyway, so we must show restraint in what filters we promote to the status of a "fundamental visual property" - but I think blur and blending modes are unquestionable.
So, for these reasons, I still prefer the three-tier system I have proposed:
- Blur slider and blend+composite modes (combined in one dropdown
list) must be in Fill&stroke, but please remove any mention of "filter" there - it's out of place and confusing.
- A set of preset filters like Drop Shadow or Bevel, all coded as
verbs and added to the Filters sub(menu), ideally with a way for the user to easily add his own presets (e.g. via some XML config files).
- For the people who know what they're doing, your current Filters
dialog offering total control over all the details of a filter.
-- bulia byak Inkscape. Draw Freely. http://www.inkscape.org
On 8/3/07, Nicholas Bishop <nicholasbishop@...400...> wrote:
Well, I agree that what you suggest is much simpler. However, I could use a little clarification on #2 in your list, the preset filters. Most of the presets will have some settings; do these get set in a simple dialog when the effect's menuitem is clicked? If the user then wants to change the settings after adding some effects, do they just edit the filter using the current filter effects dialog (which would show all the effects as their component filter primitives, not as "Drop Shadow" or such), or should there be some special UI for this?
Well, simple setup dialogs are possible too, but what I had in mind is simpler. I really think that the instant-apply presets are better than any setup dialogs. (For one thing, instant-apply presets will be usable from command line.) To make this system more flexible, I propose several things:
- Make the presets smart, so that they take into account selection's size and possibly other properties when setting filter parameters.
- When necessary, provide several presets differing by some parameter, for example "Bevel small", "Bevel medium" and "Bevel large". This will cover the needs of 90% of users and will actually be easier for them than adjusting some parameter. If a wrong preset was applied, the user can undo or do "Remove last filter" and then apply another.
- For those filters where it makes sense (i.e. those where parameters have geometric spatial meaning, such as blur radius), we must create on-canvas handle controls, similar to those now used for patterns and gradients.
It seems to me that taken together, these measures will make setup dialogs for presets largely unnecessary. What do you think?
OK, that makes sense.
Another question: what should the behavior of the blend/composite/blur controls in the Fill and Stroke dialog be when a complex filter is applied? As mentioned earlier, having the controls simply change the first feBlend or feGaussianBlur in a filter with multiple such primitives might be confusing. On the other hand, it might be less confusing than having those controls disabled when a complex filter is applied.
-Nicholas
On 8/3/07, bulia byak <buliabyak@...400...> wrote:
On 8/3/07, Nicholas Bishop <nicholasbishop@...400...> wrote:
Well, I agree that what you suggest is much simpler. However, I could use a little clarification on #2 in your list, the preset filters. Most of the presets will have some settings; do these get set in a simple dialog when the effect's menuitem is clicked? If the user then wants to change the settings after adding some effects, do they just edit the filter using the current filter effects dialog (which would show all the effects as their component filter primitives, not as "Drop Shadow" or such), or should there be some special UI for this?
Well, simple setup dialogs are possible too, but what I had in mind is simpler. I really think that the instant-apply presets are better than any setup dialogs. (For one thing, instant-apply presets will be usable from command line.) To make this system more flexible, I propose several things:
- Make the presets smart, so that they take into account selection's
size and possibly other properties when setting filter parameters.
- When necessary, provide several presets differing by some parameter,
for example "Bevel small", "Bevel medium" and "Bevel large". This will cover the needs of 90% of users and will actually be easier for them than adjusting some parameter. If a wrong preset was applied, the user can undo or do "Remove last filter" and then apply another.
- For those filters where it makes sense (i.e. those where parameters
have geometric spatial meaning, such as blur radius), we must create on-canvas handle controls, similar to those now used for patterns and gradients.
It seems to me that taken together, these measures will make setup dialogs for presets largely unnecessary. What do you think?
-- bulia byak Inkscape. Draw Freely. http://www.inkscape.org
On 8/4/07, Nicholas Bishop <nicholasbishop@...400...> wrote:
Another question: what should the behavior of the blend/composite/blur controls in the Fill and Stroke dialog be when a complex filter is applied? As mentioned earlier, having the controls simply change the first feBlend or feGaussianBlur in a filter with multiple such primitives might be confusing. On the other hand, it might be less confusing than having those controls disabled when a complex filter is applied.
There were arguments in favor of both these approaches. I think we need some more realistic data to decide. Can you or anyone else come up with some more or less realistic examples of a composite filter containing one or more blend or blur, and do a thought experiment on how it would change when the first blend/blur is adjusted? Maybe it will make the visual sense after all? I can only think of a drop shadow composite filter, and for it, it will indeed make sense - the blur slider will adjust the blur of the shadow and not the object itself. A little inconsistent but definitely useful IMHO.
On Sun, 2007-08-05 at 00:51 -0300, bulia byak wrote:
There were arguments in favor of both these approaches. I think we need some more realistic data to decide. Can you or anyone else come up with some more or less realistic examples of a composite filter containing one or more blend or blur, and do a thought experiment on how it would change when the first blend/blur is adjusted?
There's the "losenge" example from the SVG spec itself, which uses blur for generating the shading map as well as the shadow. Depending on which blur filter element was adjusted, it'd either affect the shadow or mess up the shading.
-mental
Nicholas Bishop wrote:
Another question: what should the behavior of the blend/composite/blur controls in the Fill and Stroke dialog be when a complex filter is applied? As mentioned earlier, having the controls simply change the first feBlend or feGaussianBlur in a filter with multiple such primitives might be confusing. On the other hand, it might be less confusing than having those controls disabled when a complex filter is applied.
Wouldn't it suffice to pop-up a warning that a complex filter has been applied before, telling the user that it might be affected? (with a checkbox to no be reminded again of course). If it was the user himself who applied the complex filter then he'll know how to handle this. If on the other hand someone else has been working on the document before and added a complex filter, then the current user is warned that he's messing with something and that he should be carefull. Problem solved! Disabling the blend/blur controls is not good IMHO.
Diederik
On Sun, 2007-08-05 at 09:48 +0200, Diederik van Lierop wrote:
Wouldn't it suffice to pop-up a warning that a complex filter has been applied before, telling the user that it might be affected? (with a checkbox to no be reminded again of course). If it was the user himself who applied the complex filter then he'll know how to handle this. If on the other hand someone else has been working on the document before and added a complex filter, then the current user is warned that he's messing with something and that he should be carefull. Problem solved!
Warnings are more a way of sweeping problems under the rug than a way of actually solving them...
Disabling the blend/blur controls is not good IMHO.
I'm not a big fan of it either, but unless we have a reliable way to separate the "blend" and "blur" elements of the filter on a _per object_ basis, I don't see a good way around it.
Let's say we have the same complex filter applied to two objects, and the user adjusts the blur slider while one of them is selected -- both objects are affected. I don't think that's what the user expects, but SVG doesn't give us a good way to break out individual filter elements on a per-object basis. On the other hand, enforcing a separate copy of each filter for each object makes filters less useful.
-mental
On Tue, 2007-08-07 at 18:26 +0200, Diederik en Rezi wrote:
Your example illustrates the problem very well. Probably there isn't a good way around it, so the only thing we can do is try to ease the pain for both our average Joe and ourselves. A warning might be helpful at that.
I think it's better if the UI simply avoids the appearance of promising something it can't deliver in the first place.
Disabling the simple blur and blend controls when a "real" filter is selected (and having the filter selection right there) seems like the best way to directly communicate the real limitation, rather than showing a warning after-the-fact.
-mental
Nicholas Bishop wrote:
Additionally, after this is done, all the filter stuff (including blend mode and blur) could be removed from the Fill and Stroke dialog, so that all things filter related will be grouped into the Filter Effects dialog.
I wouldn't move the blend mode and blur from the Fill and Stroke dialog. These would be a couple of the most accessed filters and therefore deserve to be more accessible.
participants (12)
-
bulia byak
-
Chris Lilley
-
Colin Marquardt
-
Daniel Pope
-
Diederik en Rezi
-
Diederik van Lierop
-
Florian Köberle
-
Joshua A. Andler
-
MenTaLguY
-
microUgly
-
Nicholas Bishop
-
Niko Kiirala