Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
On Fri, Jul 28, 2006 at 12:15:05PM +0200, Karl Günter Wünsch wrote: > > > That's why I would like to update the cursor position after all of > > > the calculations are through to reflect the results. > > Are you saying that you wish the pointer to be forced to the > > calculated corner of a (aspect ratio) constrained mouse movement? If > > this is what you mean then I am almost certain this is contrary to the > > GNOME Human Interface Guidelines > > (http://developer.gnome.org/projects/gup/hig/1.0/index.html). > What is so wrong in this case to have the cursor follow the only possible > path > that is within the constraints. Because if you don't then you end up with a > pointer position that doesn't correspond to the current selection anymore. It's wrong in the sense that the mouse pointer never moves by itself, but only if the user moves the mouse. Apart from that, it would not work with certain setups like graphics tablets in absolute mode where the position on the tablet is directly mapped to the position on screen. > In this case we have a corner of an aspect constrained rectangle selected. > Both x and y movements are allowed but as these two have to a strict > relationship any movement by the user that doesn't follow this relationship > (for every 3 pixels horizontally move 2 pixels vertically) will end up having > the pointer and the corner being so far apart that the visual relationship > between the pointer and the selection isn't aparent any more. I have found a > partial solution to this problem yesterday evening (still some quirks to work > out) but the problem basically is only reduced by the code that tries to keep > the selection as close as possible to the pointer, there still are times when > they end up virtually in different corners of the screen... The mouse pointer should always be at the X or the Y border of the selection. IMO this is sufficient. Tino. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
Scripsit Karl Günter Wünsch <[EMAIL PROTECTED]> > On Friday 28 July 2006 12:46, Henning Makholm wrote: >> The correct way to deal with a constrained selection is to let the >> user control the pointer, and then draw the unique rectangle with the >> specified aspect for which one of the moving sides pass through the >> pointer. This allows one to select the rectangle by moving either the >> right side (and have the bottom one follow according to aspect) or >> moving the bottom side (and have the right one follow according to >> aspect). > That behaviour is there and works, it's the seperate corners which > are movable in both horizontal and vertical direction at the same > time that pose a problem. For the times when no aspect is selected > these corners are a must to allow for a fast resizing. It's those > corners which are a problem when the aspect is fixed though. I don't see what the problem is. Is the aspect is fixed, then let the pointer position one of sides adjacent to the grabbed corner (selected on the fly just as when the rectangle is being dragged out initially, holding the opposite corner's position constant). If the aspect is _not_ fixed, then move the corner itself. > It's less about breaking the UI generally but if there are > constraints - even if I enabled them myself - such a visual feedback > that I can't reach other positions could be well worth having. Isn't it visual feedback enough for you that the corner you're attempting to drag does not follow the mouse? -- Henning Makholm"I ... I have to return some videos." ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
On Friday 28 July 2006 12:46, Henning Makholm wrote: > The correct way to deal with a constrained selection is to let the > user control the pointer, and then draw the unique rectangle with the > specified aspect for which one of the moving sides pass through the > pointer. This allows one to select the rectangle by moving either the > right side (and have the bottom one follow according to aspect) or > moving the bottom side (and have the right one follow according to > aspect). That behaviour is there and works, it's the seperate corners which are movable in both horizontal and vertical direction at the same time that pose a problem. For the times when no aspect is selected these corners are a must to allow for a fast resizing. It's those corners which are a problem when the aspect is fixed though. > > That is how the "select square" functionality works in 2.2. It is easy > and intuitive. Is there any reason to change it? The new rectangle selection (see my rant - of which almost all things are now being tackled) does enhance the functionality in this department by quite a bit but there are some things that would benefit from having this set fuctionality. It's less about breaking the UI generally but if there are constraints - even if I enabled them myself - such a visual feedback that I can't reach other positions could be well worth having. -- regards Karl Günter ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
Scripsit Karl Günter Wünsch <[EMAIL PROTECTED]> > In this case we have a corner of an aspect constrained rectangle > selected. Both x and y movements are allowed but as these two have > to a strict relationship any movement by the user that doesn't > follow this relationship (for every 3 pixels horizontally move 2 > pixels vertically) will end up having the pointer and the corner > being so far apart that the visual relationship between the pointer > and the selection isn't aparent any more. The correct way to deal with a constrained selection is to let the user control the pointer, and then draw the unique rectangle with the specified aspect for which one of the moving sides pass through the pointer. This allows one to select the rectangle by moving either the right side (and have the bottom one follow according to aspect) or moving the bottom side (and have the right one follow according to aspect). That is how the "select square" functionality works in 2.2. It is easy and intuitive. Is there any reason to change it? -- Henning Makholm "The Central Intelligence Agency is committed to protecting your privacy and will collect no personal information about you unless you choose to provide that information to us." ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
On Fri, 2006-07-28 at 12:15 +0200, Karl Günter Wünsch wrote: > On Friday 28 July 2006 11:30, [EMAIL PROTECTED] wrote: > > Quoting Karl Günter Wünsch <[EMAIL PROTECTED]>: > > > > > That's why I would like to update the cursor position after all of > > > the calculations are through to reflect the results. > > > > Are you saying that you wish the pointer to be forced to the > > calculated corner of a (aspect ratio) constrained mouse movement? If > > this is what you mean then I am almost certain this is contrary to the > > GNOME Human Interface Guidelines > > (http://developer.gnome.org/projects/gup/hig/1.0/index.html). > What is so wrong in this case to have the cursor follow the only possible > path > that is within the constraints. Because if you don't then you end up with a > pointer position that doesn't correspond to the current selection anymore. Well we don't do that when snapping to guides and the grid either, and as said before, it's a totally non-standard way of dealing with snapping. The mouse pointer should always be driven by the user, not by the application, and until recently, gtk didn't even have an API to wrap the mouse, for just that reason. We won't add that to GIMP. ciao, --mitch > In this case we have a corner of an aspect constrained rectangle selected. > Both x and y movements are allowed but as these two have to a strict > relationship any movement by the user that doesn't follow this relationship > (for every 3 pixels horizontally move 2 pixels vertically) will end up having > the pointer and the corner being so far apart that the visual relationship > between the pointer and the selection isn't aparent any more. I have found a > partial solution to this problem yesterday evening (still some quirks to work > out) but the problem basically is only reduced by the code that tries to keep > the selection as close as possible to the pointer, there still are times when > they end up virtually in different corners of the screen... > ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
On Friday 28 July 2006 11:30, [EMAIL PROTECTED] wrote: > Quoting Karl Günter Wünsch <[EMAIL PROTECTED]>: > > > That's why I would like to update the cursor position after all of > > the calculations are through to reflect the results. > > Are you saying that you wish the pointer to be forced to the > calculated corner of a (aspect ratio) constrained mouse movement? If > this is what you mean then I am almost certain this is contrary to the > GNOME Human Interface Guidelines > (http://developer.gnome.org/projects/gup/hig/1.0/index.html). What is so wrong in this case to have the cursor follow the only possible path that is within the constraints. Because if you don't then you end up with a pointer position that doesn't correspond to the current selection anymore. In this case we have a corner of an aspect constrained rectangle selected. Both x and y movements are allowed but as these two have to a strict relationship any movement by the user that doesn't follow this relationship (for every 3 pixels horizontally move 2 pixels vertically) will end up having the pointer and the corner being so far apart that the visual relationship between the pointer and the selection isn't aparent any more. I have found a partial solution to this problem yesterday evening (still some quirks to work out) but the problem basically is only reduced by the code that tries to keep the selection as close as possible to the pointer, there still are times when they end up virtually in different corners of the screen... -- mfg Karl Günter ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
Hi, Karl Günter Wünsch wrote: I have a problem. Because of the aspect pegging in the rectangle selection tool the cursor position and the corner of the area can move asynchronously because of rounding effects in conjunction with the set aspect ratio. When you say asynchronously, are we talking about the corner of the selection parting company with the mouse by a couple of pixels, or can the selection get "left behind"? I haven't looked at the code - but can you keep the coordinates as floats, and round down only when you draw the selection box - and avoid the cumulative rounding error that way? That's why I would like to update the cursor position after all of the calculations are through to reflect the results. That's not a good idea - Adobe PageMaker does that for guide-snapping, and it feels *awful* - especially when you get interactions between guides, causinig the cursor's position to *oscillate* rapidly between two or more positions! I think what you're suggesting would subtly change the "feel" of the mouse while creating a selection - hopefully, there's a better solution to the problem. :) All the best, -- Alastair M. Robinson ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
Re: [Gimp-developer] Is there a way to update the cursor position from within a tool?
Quoting Karl Günter Wünsch <[EMAIL PROTECTED]>: That's why I would like to update the cursor position after all of the calculations are through to reflect the results. Are you saying that you wish the pointer to be forced to the calculated corner of a (aspect ratio) constrained mouse movement? If this is what you mean then I am almost certain this is contrary to the GNOME Human Interface Guidelines (http://developer.gnome.org/projects/gup/hig/1.0/index.html). Pointer movements are supposed to track mouse movements. If you are dragging the mouse along the X-axis, to have the pointer follow a Y-path that is a function of the X-position (and not determined by the mouse's Y position) breaks everything that users have ever experienced in using mice. My apologies if I misunderstood you. If such is the case, perhaps you wouldn't mind providing a clarification. ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
[Gimp-developer] Is there a way to update the cursor position from within a tool?
I have a problem. Because of the aspect pegging in the rectangle selection tool the cursor position and the corner of the area can move asynchronously because of rounding effects in conjunction with the set aspect ratio. That's why I would like to update the cursor position after all of the calculations are through to reflect the results. regards Karl Günter Wünsch ___ Gimp-developer mailing list Gimp-developer@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer