Jump to content

Sensible zoom increments: so simple!


Recommended Posts

The way mouse wheel zoom is implemented is, IMHO, ridiculous. Apparently the current zoom is simply multiplied or divided by some constant floating point value for each zoom in/out increment. This leads to roundoff, making it impossible to easily get to exactly 2x, 4x, etc magnification (in my application, the closest I can get to 200% is 197. then 310 instead of 300, and I can't get anywhere near 400%). Integer multiples of actual size are so useful and necessary for many applications like pixel art, or even just viewing a non-anti-aliased line properly, so these arbitrary zoom levels are very frustrating. Moreover, if you zoom in for a while and then back out, you don't wind up at exactly 100%. For photo editing this is fine, but this is a big problem for lots of applications.

I know that you can get integer multiples with Ctrl and +/-, but remember that laptops don't have number pads, so we can't access this crucial functionality without the menus (which leads me to another simple but so helpful improvement: re-assignable keyboard shortcuts!!) If somebody already brought this point up I apologize, but I am just frustrated because Paint.NET seems like the perfect tool for me, but, since I do a lot of pixel art I can't use it efficiently because of this minor flaw. Please fix this!

Link to comment
Share on other sites

I know that you can get integer multiples with Ctrl and +/-, but remember that laptops don't have number pads

Workaround:

Personally, the +/- keys on the top-row keyboard work for me (with ctrl, but not shift - even though they normally require it) - but if they don't work for you, are desperate and have two close keys you don't use, try remapping your keyboard using SharpKeys.

KaHuc.png
Link to comment
Share on other sites

Mouse wheel zoom is different for every mouse. It's a fact of life, I'm sorry. Hopefully it can change eventually, but not yet.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

Mouse wheel zoom is different for every mouse. It's a fact of life, I'm sorry.

That doesn't mean that this feature can't be implemented. I'm just talking about detecting individual mouse wheel movements and having each correspond to a sensible interval, discarding whatever information comes with the event other than its existence. I know it's possible. Besides, GIMP and many other applications get this right.

HTML, CSS, JavaScript and just about everything else are interpreted differently on each web browser, yet every day web developers around the globe create pages that display consistently on all of them. This is a similar, but even simpler, problem. I'd need a better reason than "mice work differently" to convince me that it's hard to do.

Link to comment
Share on other sites

I'd need a better reason than "mice work differently" to convince me that it's hard to do.

Oh, I'm sorry. Certainly you must be correct, with your years of experience moderating this forum. Obviously you know better than Rick what is easy and what is not. Clearly, Rick is just doing this to annoy you.

Are you trying to be a troll? Improve your attitude. Like now would be good.

So, anyway, to the topic at hand: perhaps it would be simple to implement, perhaps not. Has it not occurred to you that perhaps Rick has better things to do than fix a minor problem like that? Such as, I don't know, adding features?

Keep in mind, there is only one programmer on this program. He codes it in his free time. Your indignation at what amounts to a minor annoyance is neither helpful, productive, nor welcome. Remember that this is a free program. But most of all remember that if you want something, you should probably ask for it nicely, not demand it and insult the person who can give it to you.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

The way you responded, I thought you were a developer of Paint.NET, so I thought I could be frank. I didn't realize you were a powerful moderator. I'll adjust my tone accordingly.

Obviously you know better than Rick what is easy and what is not.

Rick wasn't here to give his opinion, so neither of us knows what Rick thinks is easy. I maintain that it would be rather easy. I don't claim to know anything better than Rick, but I am also a programmer and I know this can be done.

Has it not occurred to you that perhaps Rick has better things to do than fix a minor problem like that?

It has. I'm sure there is an extensive todo list, but maybe he will eventually want to take a quick look at this, which is why I brought it up.

You spent a lot of your post defending Rick, but I never attacked him. I attacked the zoom. It's a small flaw that's easy to overlook that happens to affect me a lot, so I called it ridiculous and senseless and bad. I did not call Rick these things. I also praised the program, saying it's ideal for me except for this one flaw.

As for my last reply, I only made it to defend what I still feel is a simple, very feasible fix that would be very useful to many people, and I didn't want to see it so easily dismissed.

Your indignation at what amounts to a minor annoyance is neither helpful, productive, nor welcome.

The bug itself is very minor, but it causes major annoyance, which is my whole point. Fixing a very minor bug to alleviate a major annoyance seems like a good tradeoff.

I feel that my indignation is useful and helpful. I used Paint.NET and as a result I became indignant, and I vented. Overall I thought it was a great program but one tiny, easily fixable flaw made it tedious for me to do what I need to do, and I saw no need for that flaw to be there. I am sure there are many other people trying to work with individual pixels at zoom that have gotten similarly frustrated. Wouldn't you say that the developer of an actively supported project wants to know what frustrates users, especially if it's an easily fixable bug? I would, so I expressed my indignation. If my indignation is not welcome, then of course there's nothing I can do but walk away.

Link to comment
Share on other sites

The way you responded, I thought you were a developer of Paint.NET, so I thought I could be frank. I didn't realize you were a powerful moderator. I'll adjust my tone accordingly.

Obviously you know better than Rick what is easy and what is not.

Rick wasn't here to give his opinion, so neither of us knows what Rick thinks is easy. I maintain that it would be rather easy. I don't claim to know anything better than Rick, but I am also a programmer and I know this can be done.

Has it not occurred to you that perhaps Rick has better things to do than fix a minor problem like that?

It has. I'm sure there is an extensive todo list, but maybe he will eventually want to take a quick look at this, which is why I brought it up.

You spent a lot of your post defending Rick, but I never attacked him. I attacked the zoom. It's a small flaw that's easy to overlook that happens to affect me a lot, so I called it ridiculous and senseless and bad. I did not call Rick these things. I also praised the program, saying it's ideal for me except for this one flaw.

As for my last reply, I only made it to defend what I still feel is a simple, very feasible fix that would be very useful to many people, and I didn't want to see it so easily dismissed.

Your indignation at what amounts to a minor annoyance is neither helpful, productive, nor welcome.

The bug itself is very minor, but it causes major annoyance, which is my whole point. Fixing a very minor bug to alleviate a major annoyance seems like a good tradeoff.

I feel that my indignation is useful and helpful. I used Paint.NET and as a result I became indignant, and I vented. Overall I thought it was a great program but one tiny, easily fixable flaw made it tedious for me to do what I need to do, and I saw no need for that flaw to be there. I am sure there are many other people trying to work with individual pixels at zoom that have gotten similarly frustrated. Wouldn't you say that the developer of an actively supported project wants to know what frustrates users, especially if it's an easily fixable bug? I would, so I expressed my indignation. If my indignation is not welcome, then of course there's nothing I can do but walk away.

Link to comment
Share on other sites

The way you responded, I thought you were a developer of Paint.NET, so I thought I could be frank. I didn't realize you were a powerful moderator. I'll adjust my tone accordingly.

Obviously you know better than Rick what is easy and what is not.

Rick wasn't here to give his opinion, so neither of us knows what Rick thinks is easy. I maintain that it would be rather easy. I don't claim to know anything better than Rick, but I am also a programmer and I know this can be done.

Has it not occurred to you that perhaps Rick has better things to do than fix a minor problem like that?

It has. I'm sure there is an extensive todo list, but maybe he will eventually want to take a quick look at this, which is why I brought it up.

You spent a lot of your post defending Rick, but I never attacked him. I attacked the zoom. It's a small flaw that's easy to overlook that happens to affect me a lot, so I called it ridiculous and senseless and bad. I did not call Rick these things. I also praised the program, saying it's ideal for me except for this one flaw.

As for my last reply, I only made it to defend what I still feel is a simple, very feasible fix that would be very useful to many people, and I didn't want to see it so easily dismissed.

Your indignation at what amounts to a minor annoyance is neither helpful, productive, nor welcome.

The bug itself is very minor, but it causes major annoyance, which is my whole point. Fixing a very minor bug to alleviate a major annoyance seems like a good tradeoff.

I feel that my indignation is useful and helpful. I used Paint.NET and as a result I became indignant, and I vented. Overall I thought it was a great program but one tiny, easily fixable flaw made it tedious for me to do what I need to do, and I saw no need for that flaw to be there. I am sure there are many other people trying to work with individual pixels at zoom that have gotten similarly frustrated. Wouldn't you say that the developer of an actively supported project wants to know what frustrates users, especially if it's an easily fixable bug? I would, so I expressed my indignation. If my indignation is not welcome, then of course there's nothing I can do but walk away.

Link to comment
Share on other sites

The way you responded, I thought you were a developer of Paint.NET, so I thought I could be frank. I didn't realize you were a powerful moderator. I'll adjust my tone accordingly.

Obviously you know better than Rick what is easy and what is not.

Rick wasn't here to give his opinion, so neither of us knows what Rick thinks is easy. I maintain that it would be rather easy. I don't claim to know anything better than Rick, but I am also a programmer and I know this can be done.

Has it not occurred to you that perhaps Rick has better things to do than fix a minor problem like that?

It has. I'm sure there is an extensive todo list, but maybe he will eventually want to take a quick look at this, which is why I brought it up.

You spent a lot of your post defending Rick, but I never attacked him. I attacked the zoom. It's a small flaw that's easy to overlook that happens to affect me a lot, so I called it ridiculous and senseless and bad. I did not call Rick these things. I also praised the program, saying it's ideal for me except for this one flaw.

As for my last reply, I only made it to defend what I still feel is a simple, very feasible fix that would be very useful to many people, and I didn't want to see it so easily dismissed.

Your indignation at what amounts to a minor annoyance is neither helpful, productive, nor welcome.

The bug itself is very minor, but it causes major annoyance, which is my whole point. Fixing a very minor bug to alleviate a major annoyance seems like a good tradeoff.

I feel that my indignation is useful and helpful. I used Paint.NET and as a result I became indignant, and I vented. Overall I thought it was a great program but one tiny, easily fixable flaw made it tedious for me to do what I need to do, and I saw no need for that flaw to be there. I am sure there are many other people trying to work with individual pixels at zoom that have gotten similarly frustrated. Wouldn't you say that the developer of an actively supported project wants to know what frustrates users, especially if it's an easily fixable bug? I would, so I expressed my indignation. If my indignation is not welcome, then of course there's nothing I can do but walk away.

Link to comment
Share on other sites

The way you responded, I thought you were a developer of Paint.NET, so I thought I could be frank. I didn't realize you were a powerful moderator. I'll adjust my tone accordingly.

Obviously you know better than Rick what is easy and what is not.

Rick wasn't here to give his opinion, so neither of us knows what Rick thinks is easy. I maintain that it would be rather easy. I don't claim to know anything better than Rick, but I am also a programmer and I know this can be done.

Has it not occurred to you that perhaps Rick has better things to do than fix a minor problem like that?

It has. I'm sure there is an extensive todo list, but maybe he will eventually want to take a quick look at this, which is why I brought it up.

You spent a lot of your post defending Rick, but I never attacked him. I attacked the zoom. It's a small flaw that's easy to overlook that happens to affect me a lot, so I called it ridiculous and senseless and bad. I did not call Rick these things. I also praised the program, saying it's ideal for me except for this one flaw.

As for my last reply, I only made it to defend what I still feel is a simple, very feasible fix that would be very useful to many people, and I didn't want to see it so easily dismissed.

Your indignation at what amounts to a minor annoyance is neither helpful, productive, nor welcome.

The bug itself is very minor, but it causes major annoyance, which is my whole point. Fixing a very minor bug to alleviate a major annoyance seems like a good tradeoff.

I feel that my indignation is useful and helpful. I used Paint.NET and as a result I became indignant, and I vented. Overall I thought it was a great program but one tiny, easily fixable flaw made it tedious for me to do what I need to do, and I saw no need for that flaw to be there. I am sure there are many other people trying to work with individual pixels at zoom that have gotten similarly frustrated. Wouldn't you say that the developer of an actively supported project wants to know what frustrates users, especially if it's an easily fixable bug? I would, so I expressed my indignation. If my indignation is not welcome, then of course there's nothing I can do but walk away.

Link to comment
Share on other sites

OK, I just tried the keyboard shortcuts like Simon suggested, and they work. For some reason they didn't seem to work when I tried them the first time. I'm hereby downgrade the annoyance caused by the mouse wheel zoom's inadequacies from major down to minor. I don't feel nearly as strongly about this being fixed as I did in my previous post, but I still think it's a good idea. Certainly not worth the energy I put into arguing about it :P. But hey, I can use Paint.NET now instead of flamewarring, huzzah!

But still, Rick, if you read this, consider changing the way mouse wheel zoom operates! It will make Paint.NET just that much more delicious.

David, truce?

- Michael

Link to comment
Share on other sites

OK, I just tried the keyboard shortcuts like Simon suggested, and they work. For some reason they didn't seem to work when I tried them the first time. I'm hereby downgrade the annoyance caused by the mouse wheel zoom's inadequacies from major down to minor. I don't feel nearly as strongly about this being fixed as I did in my previous post, but I still think it's a good idea. Certainly not worth the energy I put into arguing about it :P. But hey, I can use Paint.NET now instead of flamewarring, huzzah!

But still, Rick, if you read this, consider changing the way mouse wheel zoom operates! It will make Paint.NET just that much more delicious.

David, truce?

- Michael

Link to comment
Share on other sites

OK, I just tried the keyboard shortcuts like Simon suggested, and they work. For some reason they didn't seem to work when I tried them the first time. I'm hereby downgrade the annoyance caused by the mouse wheel zoom's inadequacies from major down to minor. I don't feel nearly as strongly about this being fixed as I did in my previous post, but I still think it's a good idea. Certainly not worth the energy I put into arguing about it :P. But hey, I can use Paint.NET now instead of flamewarring, huzzah!

But still, Rick, if you read this, consider changing the way mouse wheel zoom operates! It will make Paint.NET just that much more delicious.

David, truce?

- Michael

Link to comment
Share on other sites

OK, I just tried the keyboard shortcuts like Simon suggested, and they work. For some reason they didn't seem to work when I tried them the first time. I'm hereby downgrade the annoyance caused by the mouse wheel zoom's inadequacies from major down to minor. I don't feel nearly as strongly about this being fixed as I did in my previous post, but I still think it's a good idea. Certainly not worth the energy I put into arguing about it :P. But hey, I can use Paint.NET now instead of flamewarring, huzzah!

But still, Rick, if you read this, consider changing the way mouse wheel zoom operates! It will make Paint.NET just that much more delicious.

David, truce?

- Michael

Link to comment
Share on other sites

OK, I just tried the keyboard shortcuts like Simon suggested, and they work. For some reason they didn't seem to work when I tried them the first time. I'm hereby downgrade the annoyance caused by the mouse wheel zoom's inadequacies from major down to minor. I don't feel nearly as strongly about this being fixed as I did in my previous post, but I still think it's a good idea. Certainly not worth the energy I put into arguing about it :P. But hey, I can use Paint.NET now instead of flamewarring, huzzah!

But still, Rick, if you read this, consider changing the way mouse wheel zoom operates! It will make Paint.NET just that much more delicious.

David, truce?

- Michael

Link to comment
Share on other sites

Truce indeed. It's not a matter of defending anyone, but of attitude. Yours has improved greatly, and due to sleep, so has mine. :-P Glad you found a workaround.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

Truce indeed. It's not a matter of defending anyone, but of attitude. Yours has improved greatly, and due to sleep, so has mine. :-P Glad you found a workaround.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

Truce indeed. It's not a matter of defending anyone, but of attitude. Yours has improved greatly, and due to sleep, so has mine. :-P Glad you found a workaround.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

Truce indeed. It's not a matter of defending anyone, but of attitude. Yours has improved greatly, and due to sleep, so has mine. :-P Glad you found a workaround.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

Truce indeed. It's not a matter of defending anyone, but of attitude. Yours has improved greatly, and due to sleep, so has mine. :-P Glad you found a workaround.

 

The Doctor: There was a goblin, or a trickster, or a warrior... A nameless, terrible thing, soaked in the blood of a billion galaxies. The most feared being in all the cosmos. And nothing could stop it, or hold it, or reason with it. One day it would just drop out of the sky and tear down your world.
Amy: But how did it end up in there?
The Doctor: You know fairy tales. A good wizard tricked it.
River Song: I hate good wizards in fairy tales; they always turn out to be him.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...