Coder Social home page Coder Social logo

quickfigures's People

Contributors

grishkam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

quickfigures's Issues

Can't add new image to layout

When creating a layout from an image, images can be added to the panels in the layout by drag-and-drop.
Removing the original image in a layout (i.e. the image that the layout was created from) breaks this behavior, and quickfigures/imageJ becomes unable to open images in the panels.

This makes the user unable to perform actions such as changing the original image and duplicating layouts without the original image.
image

Dragging an image into the layout without the original image produces this QuickFigures message output:

Two channels share the same name EGFP   EGFP  0   1
Problem: more than one channels have the same name
java.lang.NullPointerException
genericTools.NormalToolDragHandler.handleMultiChannelStackDrop(NormalToolDragHandler.java:440)
genericTools.NormalToolDragHandler.openFileListAndAddToFigure(NormalToolDragHandler.java:310)
genericTools.NormalToolDragHandler.handleFileListDrop(NormalToolDragHandler.java:235)
genericTools.NormalToolDragHandler.drop(NormalToolDragHandler.java:86)
imageDisplayApp.GraphicSetDisplayWindow.drop(GraphicSetDisplayWindow.java:934)
java.awt.dnd.DropTarget.drop(DropTarget.java:455)
sun.awt.dnd.SunDropTargetContextPeer.processDropMessage(SunDropTargetContextPeer.java:538)
sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchDropEvent(SunDropTargetContextPeer.java:852)
sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEvent(SunDropTargetContextPeer.java:776)
sun.awt.dnd.SunDropTargetEvent.dispatch(SunDropTargetEvent.java:48)
java.awt.Component.dispatchEventImpl(Component.java:4744)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processDropTargetEvent(Container.java:4609)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4471)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

See this file for minimal reprex
qf_issue.zip

Perhaps the behavior can be more stable if layouts were to be independent from the original image? This would also allow the user to premake a layout and then dragging images into the layout.

  • Mark Lyng

Problem exporting to PowerPoint

Hello Everyone,
I have been using QuichFigures on Windows 10 for a few days from Fiji. It's a good plugin but when I finish creating my figures, I export them to PowerPoint. The resulting document does not contain the Scale bars and I have to redraw them. There is also an error during the export. A message tells me that I don't have the right Apache POI version (5.2.3). Do other people have this type of error? Thank you for giving me your help.

Re-size insets problem

Hello,
I am having problems to adjust the insets size.
First , I draw 3 insets and clicking in the middle of the square I can choose the size of the inset, that works well. However, If i want to make bigger the insets images I cannot resize the single panel to a new size of my election, I have to drag the coordinates to do so.
I can drag any of the point to enlarge the image but to do this for every single inset turn out in different panel size because is difficult to make them equal.
I was thinking in an option like photoshop or powerpoint where you can move a panel and check if the size are the same aligning with some guide or an option in figure where you can select all your insets and create a new size. But I read the guide and saw the tutorial on youtube and could not find it.
Is there any way to adjust size of independent panel or format a group of insets panel ?

Thank you

I am attaching a figure as an example
image

Selecting "Don't Merge These Channel(s)"

Hi @grishkam,

Firstly, thanks a lot for this amazing tool! It helps a lot with the daily work in ImageJ!

I have one question: When I have a multichannel image and want to exclude one channel from the Merge tile this doesn't work for me. I can open the dropdown menu but I can't select one of the options. When I click on one of them nothing happens. Here a screenshot of the situation:

image

After selecting one channel it just sticks with "none selected". However, the option "Go up to channel" works perfectly. But for example in the case above I'd like to exclude the brightfield channel which comes second.

Do you have an idea what's the problem? Is it a bug or do I just have to do anything differently?

Thanks a lot in advance!

Image panels disappearing

Hi, QuickFigures is amazingly helpful, thanks for all the hard work on this. I have had several problems when moving images from their own independent layouts into new panels of a multi-row layout. After I have done this the switch row and switch column widgets either cause the panels to permanently disappear or they just don't move. Is this because of how I have set this up or is it a bug? How do you recommend adding images to new panels in the same layout as existing images?

Thanks,

Ewan

western blot icon skips the ROI step

Hi

If I open an image and press the western blot icon the program skips directly to the step of choosing lanes and labels putting the whole figure as the ROI. How do I make sure to get the ROI selection to occur?

Change unit of scale bar

Hello Gregory,

The scale bar added by Quick Figures is always in um. I am wondering if I can change the unit to nm. I try to edit the calibration to nm, but it did not change any thing.

Thank you for your help!
Mai

Unable to Add Multiple Figures with Only Merge in One Canvas

Hi,

I am trying to add Merge-Only Figures to a canvas, and am having trouble. Getting the first Merge-Only Figure in a canvas isn't hard; I can create a canvas with one via File>New>Figure with Merge Panels Only. The problem is getting a second Merge-Only Figure to be in the same canvas.

If I do the same as above, it automatically opens a new canvas with the Merge-Only Figure. Another way I have tried is to add a Split-Channel Figure (via Quick Multichannel Figure or dragging in a file) and then delete the extraneous channels. However, when I try to do this, I keep get an error. Weirdly, I am able to sometimes delete one or two channels within an figure, but there is always one channel that I cannot delete without getting an impassible error.

A third method I have thought of is to add all my images to the first Merge-Only Figure, and then somehow split it into multiple figures, but I cannot find a way to split one figure into two.

Let me know what other information I can provide to help resolve this issue, or if there is a simple fix I am missing.

I am new to QuickFigures and really excited about it!

Thanks,
Nathan

cannot open saved .ser file

Hello,

I somehow cannot open a previously saved .ser file. I always get following message in the "QuickFigures Messages" window and nothing happens:


java.io.EOFException
java.io.ObjectInputStream$BlockDataInputStream.readFully(ObjectInputStream.java:3104)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2274)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:561)
appContextforIJ1.ImagePlusMultiChannelSlot.readObject(ImagePlusMultiChannelSlot.java:686)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1158)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2176)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)
java.util.ArrayList.readObject(ArrayList.java:797)
sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1158)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2176)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)
java.util.ArrayList.readObject(ArrayList.java:797)
sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1158)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2176)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)
imageDisplayApp.ImageDisplayIO.readFromFile(ImageDisplayIO.java:51)
imageDisplayApp.ImageDisplayIO.showFile(ImageDisplayIO.java:116)
basicMenusForApp.OpeningFileDropHandler.performsingleFileAction(OpeningFileDropHandler.java:41)
basicMenusForApp.FileDropHandler.drop(FileDropHandler.java:61)
java.awt.dnd.DropTarget.drop(DropTarget.java:455)
sun.awt.dnd.SunDropTargetContextPeer.processDropMessage(SunDropTargetContextPeer.java:538)
sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchDropEvent(SunDropTargetContextPeer.java:852)
sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEvent(SunDropTargetContextPeer.java:776)
sun.awt.dnd.SunDropTargetEvent.dispatch(SunDropTargetEvent.java:48)
java.awt.Component.dispatchEventImpl(Component.java:4744)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Thanks a lot for any help in advance!

Min/Max Adjustment of Channel

Dear Gregory,
Thanks for developing this useful plugin and making it available to the community.
I'm using the latest version of QuickFigures shipping with Fiji.
Most parts of it work great, but setting whatever value in the "Min/Max" dialog opening upon right-click onto an image and choosing the "Channel" item in the pop-up list doesn't change the appearance of the image.
Is there something I'm doing wrong?

Save work to continue later

Hi Gregory,

I am giving a try to QuickFigures. So far it looks useful, thank you for creating it!

I wonder whether I am being blind or it is not implemented… Is it possible to save a work and continue working on it later with QuickFigures? It is not possible with the svg file (not surprising i guess).

Thank you!

Sergei

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.