yes - displaying the dialog box with 0 width and 0 height would explain the reported symptoms.
Any idea what causes it? -- Kenneth Sloan [email protected] Vision is the art of seeing what is invisible to others. > On Nov 15, 2024, at 17:13, Fred Damen <[email protected]> wrote: > > Greetings Kenneth, > > I have experienced the same, but different, angst(s) in the past. I had > ImageWindow(s) that were displayed with zero width and zero height, and, I > created TextWindow(s) but never show(ed) them - but they stayed around > after the plugin exited; both hard to see / deal with using ImageJ GUI > menu commands. I wrote my FindWindow plugin to rectify these, and other, > issues. Its also helpful to work around the problems with the Window menu. > > See attached (remove .txt extension as we can not attach .java files) > > Enjoy, > > Fred > > ps: On Linux you can see all the windows that exist. My naive recollection > Windows / MacOS only shows the Application instances that exist, but you > may find a way to find all windows? I would assume that there is some way > to ask the JVM what windows it thinks exists? > > > On Fri, November 15, 2024 12:00 am, Kenneth R Sloan wrote: >> yes - it works on my machine, too. but, it fails (silently waiting, with >> no dialog displayed) on three other machines. it had been workibg on >> those >> machines, too, for months. >> >> i was hoping this had happened to someone else. i fully expect it to work >> >> i “fixed†it by commenting out this code, removing the user option to >> change these patameters, and all is well - even thought there is another >> NonBlockingGenericDialog further along in the cide. I can’t remove that >> one! >> >> Behavior that cant be replicated is a bitch to debug! I was hoping that >> someone else had run into this and knew what it was. >> >> The only thing common to the failing machines seems to be the local >> network. And it is 1000 miles from me. >> >> even on the failing machines, it was working and then failed only 5 >> minutes >> later, with no updates in between, as far as we know. I’m not sure if >> they restarted FIJI in between success and failure. >> >> I’m baffled! >> >> Thanks for confirming that it works somewhere other than my personal >> machine. as near as i can determine, showDialog() is called, but dies >> nothing, and never returns, never displays anything, and does not throw an >> Exception. >> >> -Kenneth Sloan >> >> >> On Thu, Nov 14, 2024 at 22:33 Wayne Rasband <[email protected] >> <mailto:[email protected]>> wrote: >> >>> Hi Kenneth, >>> >>> I converted your test code to JavaScript,n fixed problems with missing >>> variable declarations and ran the script successfully on macOS, Linux >>> and >>> Windows, on my MacBook Air.nths >>> >>> -wayne >>> >>> IJ.log("building dialog"); >>> gd = new NonBlockingGenericDialog("User Paraameters"); >>> IJ.log("created gd"); >>> caseID = "noCaseID"; >>> gd.addStringField("Case ID:",caseID); >>> IJ.log("added Case ID: "+caseID); >>> markerRoiRadius = 10; >>> gd.addNumericField("Marker Radius(pixels):", markerRoiRadius,0); >>> IJ.log("added Marker Radius"); >>> dialogX = 0; >>> dialogY = 0; >>> gd.setLocation(dialogX,dialogY); >>> IJ.log("setLocation "+dialogX+" "+dialogY); >>> gd.showDialog(); >>> IJ.log("gd.wasCanceled() =" + gd.wasCanceled()); >>> IJ.log("getting caseID"); >>> caseID = gd.getNextString(); >>> IJ.log("caseID = "+caseID); >>> markerRoiRadius = gd.getNextNumber(); >>> IJ.log("markerRoiRadius = "+markerRoiRadius); >>> >>> >>>> On Nov 14, 2024, at 3:43 PM, Kenneth Sloan <[email protected] >>>> <mailto:[email protected]>> >>> wrote: >>>> >>>> I have a plugin which has been working for 6 months. >>>> >>>> Today, I got a report that it failed, on both Windows and Mac >>> machines. >>>> >>>> I asked for the input, and tried to replicate the problem. Its works >>> just fine on my MacBook Pro. >>>> >>>> All machines have been updated to the latest FIJI release. >>>> >>>> I added some logging, so the relevant code looks like this: >>>> >>>> // get user-specified parameters >>>> IJ.log("building dialog"); >>>> NonBlockingGenericDialog gdParms = new >>> NonBlockingGenericDialog("User Paraameters"); >>>> IJ.log("created gdParms"); >>>> String caseID = "noCaseID"; >>>> gdParms.addStringField("Case ID:",caseID); >>>> IJ.log("added Case ID: "+caseID); >>>> gdParms.addNumericField(“Marker Radius(pixels):â€, >>> markerRoiRadius,0); >>>> IJ.log("added Marker Radius"); >>>> gdParms.setLocation(dialogX,dialogY); >>>> IJ.log("setLocation "+dialogX+" "+dialogY); >>>> gdParms.showDialog(); >>>> IJ.log("gdParms.wasCanceled() =" + gdParms.wasCanceled()); >>>> if(gdParms.wasCanceled()) return; >>>> IJ.log("getting caseID"); >>>> caseID = gdParms.getNextString(); >>>> IJ.log("caseID = "+caseID); >>>> markerRoiRadius = (int)gdParms.getNextNumber(); >>>> IJ.log("markerRoiRadius = "+markerRoiRadius); >>>> >>>> The Log window ends with the line: >>>> >>>> SetLocation 0 0 >>>> So… the statement: >>>> >>>> gdParms.showDialog(); >>>> >>>> Appears to have been executed, but nothing appears on the screen, and >>> the program stalls. >>>> >>>> There is no relevant output in the Console window. >>>> >>>> We have rebooted, updated FIJI, all to no avail. >>>> >>>> It fails on 3 machines (2 Windows and one Mac) in a research lab in a >>> medical center, but works perfectly on my MacBook Pro, at home. >>>> >>>> The initial report claims that they were using the plugin on a series >>> of >>> cases. >>>> It worked on a bunch of cases, and then failed on the next (and has >>> failed at their location every time since). Ss so…no FIJI update or >>> OS >>> update between the last success and the first failure. >>>> >>>> I’m baffled. Any ideas? >>>> >>>> Finally, the user reports that when the plugin stalls, all other FIJI >>> functions work properly. It’s as if “showDialog()†has either >>> terminated >>> the plugin (without anything in the Log or Console window), or is >>> waiting >>> for an input (but has not actually displayed the dialog box). I asked >>> them >>> to hit ESC, which had no effect. >>>> -- >>>> Kenneth Sloan >>>> [email protected] >>>> Vision is the art of seeing what is invisible to others. >>>> >>>> -- >>>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html >>> >>> >>> -- >>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html >>> >> >> -- >> ImageJ mailing list: http://imagej.nih.gov/ij/list.html >> > > -- > ImageJ mailing list: http://imagej.nih.gov/ij/list.html > <FindWindow.java.txt> -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html
