Bill,
Attached here is the console output from a session where the problem
appeared. It's mostly generated by your DisplayEvent.toString() method
to show what mouse activity the DisplayImpl was seeing. The pick event
messages come from a println() within the CellImpl.doAction(). The 1st
set of output shows right mouse events correctly resulting in pick
events from the CellImpl.doAction(). The 2nd set of output first
generated a cursor upon left mouse press, and then a pick event upon
left mouse release!?! I'm going to try and instrument the code a little
more... Any ideas while I do that?
thanks... dlf
>>>> GOOD INTERACTION <<<<
Display event: DisplayEvent: Display=plotID:3, Id=MOUSE_PRESSED, X=291,
Y=211, remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=MOUSE_PRESSED_RIGHT,
X=291, Y=211, remoteId=0
>>> got a pick event
>>> object picked: index: 232
k: 0 value: 118.0
k: 1 value: 7914.57275390625
k: 2 value: 456.741943359375
k: 3 value: 257.7852478027344
k: 4 value: 307.7412109375
k: 5 value: 247.43136596679688
k: 6 value: 343.8174743652344
k: 7 value: 182.00833129882812
k: 8 value: 345.41107177734375
k: 9 value: 314.0792541503906
k: 10 value: 351.0933532714844
k: 11 value: 261.0024108886719
k: 12 value: -2286.75
k: 13 value: 232.0
k: 14 value: 1.0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=TRANSFORM_DONE, X=0,
Y=0, remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
>>>> INCORRECT INTERACTION (left mouse with drag) <<<<
Display event: DisplayEvent: Display=plotID:3, Id=MOUSE_PRESSED_LEFT,
X=85, Y=77, remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=MOUSE_RELEASED, X=149,
Y=130, remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=MOUSE_RELEASED_LEFT,
X=149, Y=130, remoteId=0
>>> got a pick event
>>> object picked: index: 1170
k: 0 value: 674.0
k: 1 value: 6776.08056640625
k: 2 value: 525.112548828125
k: 3 value: 278.3368835449219
k: 4 value: 258.8907775878906
k: 5 value: 259.7996520996094
k: 6 value: 116.74113464355469
k: 7 value: 138.6013641357422
k: 8 value: 242.25827026367188
k: 9 value: 246.7772216796875
k: 10 value: 195.46710205078125
k: 11 value: 142.10330200195312
k: 12 value: -17572.4453125
k: 13 value: 1170.0
k: 14 value: 1.0
Display event: DisplayEvent: Display=plotID:3, Id=TRANSFORM_DONE, X=0,
Y=0, remoteId=0
Display event: DisplayEvent: Display=plotID:3, Id=FRAME_DONE, X=0, Y=0,
remoteId=0
-----Original Message-----
Sent: Thursday, November 18, 2004 1:28 PM
Cc: visad@xxxxxxxxxxxxxxxx
brushing) problems ...
Don,
Then the behavior you describe is a great mystery. I don't
recall ever hearing about a similar problem. If you can
send me your application so I can run it. Even better would
be a small test program that generates the problem.
Bill
On Thu, 18 Nov 2004, Flaggs, Don wrote:
> 1) we're hopefully not doing anything but using their default
behaviors,
> assuming that using the PickManipulationRendererJ3D doesn't invalid
> "standard" mouse behaviors and events specific to each button remain
as
> they should???
> 2) we're just using SelectRangeWidget functionality.
>
> -----Original Message-----
> From: Bill Hibbard [mailto:billh@xxxxxxxxxxxxx]
> Sent: Tuesday, November 16, 2004 3:19 AM
> To: Flaggs, Don
> Cc: visad@xxxxxxxxxxxxxxxx
> Subject: Re: Mouse events using PickManipulationRendererJ3D (and
> brushing) problems ...
>
>
> Hi Don,
>
> > We're putting together an application where we're creating multiple
> 2D/3D scatterplot views of the same data using all the usual widgets,
> which works fine. The next hurdle is adding picking so that the user
> can see a complete listing of all data associated with the picked
> object. We've following the "cookbook" from one of your examples, and
> on the surface things appear to work. The problem is that after using
> the right mouse button for picking, which works correctly, subsequent
> mouse events using other buttons are hosed, e.g., the left mouse now
> brings up the 3D cursor, and when released causes a doAction() to be
> fired. All this of course means that the usual left mouse button
> fuctionality is lost.
>
> Are you calling MouseHelper.setFunctionMap()?
> Or MouseHelper.setEnableCombos()? Or are you
> using a custom extension of MouseBehavior?
> These are the only way I know to modify mouse
> button behaviors. If you've found a bug, we've
> never seen this sort of thing before (which
> doesn't mean its impossible).
>
> > One other thing that we've noticed is that after brushing one of the
> data fields to exclude specific data values, we still see some of the
> excluded points appearing in the display, or at least the values for
> them returned when they are picked by a getValues() call says that
> they're there...
>
> How are you excluding points? By actually
> constructing new Fields with those points
> removed? Or merely by SelectRangeWidgets?
>
> Thanks,
> Bill
>
>