25/11/21 -Double clicking on any object containing images will show the corresponding text edit window (this can seriously speed up text edit) -Added a menu entry in edit to "clear selection" (just because if GUI is too tightly adjusted to the image and the user doesn't zoom out, there will be no other way to realease the selection) -Added 'esc' keyboard key as a shortcut for clear selection too 24/11/21 -fixed a bug preventing 'letters outside' from being removed (bug reported by a user a long time ago, but I had no chance to look at it before) -fixed a weird bug that occured in very peculiar conditions that was resetting the display range when channel color was changed (I encountered this bug randomly some day) -changed FiguR xlsx opener (so that it does not depend anymore on java, since the java R package seems not to be available anymore at least on linux) -various small fixes and changes and corrected typos -modified 'import single image from ImageJ' behaviour (instead of importing an RGB converted buffered image it now imports a duplicate of the current frame while preserving channels and other parameters --> now preserves the channlels when the user wants to split his images) -changed default text color for letters outside (should be a small gain of time for most users) -I noticed that ps, eps and pdf are broken (probably they are now part of the most recent batik --> update of batik is needed --> will be done soon) -avi si broken too --> same I will fix that -forced batik 1.13 to be in sync with FIJI (before I had [1.13.1,) in the pom) 21/11/18 -added image/file names when selected (user request/to match SF panel content) 05/09/18 -fixed several issues associated to stacks (stacks were not saved properly when placed as an inset or copied), bugs should be fixed, please report otherwise. Of note, insets previously inserted will be problematic and they need to be replaced by fresh ones). 30/08/18 -fixed a bug that prevented saving of texts on image stacks 09/07/18 -removed some SF dependency on batik codec, to accomodate for the recent removal of some batik libraries in FIJI (codec, transcoder and bridge) -native reading of svg files files is now lost in SF/EZF in FIJI, some day check which libraries need be added back to restore this functionality and do a code that checks the current status of batik in FIJI to avoid further issues -NB: batik codec is required to read base64 embedded pngs, so it must ship with my tool -also apache FOP requires batik transcoder --> so I must keep it too 06/07/18 -made sure the latest version of batik is used by default (seems to be the case in FIJI too) --> makes it easier for me to detect errors due to batik changes -similarly made sure the latest version of FOP is used by default 11/06/18 -fixed a bug that prevented empty images/spacers to be copied and pasted -version 1.0 beta 10g 01/02/18 -activated undo redo by default (heard there were bugs with it, let's try it) -fixed a user reported bug affecting floating text making it not handle parameters when applied without a selection -made selection of arrowheads easier (by taking into accound arrow head in the selection) -version 1.0 beta 10f 25/01/18 -fixed unnecessay resize in check size -fixed a saving error due to a non existing (not created) folder after sudden name change -added warn for save if figure was changed and user hasn't saved -version 1.0 beta 10e 24/01/18 -fixed rotate left and right errors for imagePlus -fixed horizontal and vertical flip errors for imagePlus -fixed reset crop not setting values to 0 -fixed a bug in horizontal flipping of cropped images -version 1.0 beta 10 22/01/18 -fixed potential serialization error in ScientiFig (stream might have remained opened in very rare cases) -renamed "Free Positioning mode" to "Free Design mode" -fixed a bug when a "non free design figure" was loaded on top of a "free design figure" -fixed a bug when loading "non free design" figures -inform user if images are in the keep for later menu so that they keep this in mind -added align to center horizontally or vertically -fixed a bug that allowed insets to be added to insets -added translate to origin for figures (or groups of figures) -added the possibility to check size/resize also in free drawing mode (using complex scaling) -fixed an error due to imageJ virtualstack somehow not able to open RGB images as virtual, but no clue why -now allow copy of textbars associated to rows -fixed text copy not copying bg color -fixed toComposite not showing for some images -renamed EasyFig to EZFig as a software named EasyFig already exists (this tool has nothing to do with building figures though) -version 1.0 beta 8 15/01/18 -edited the default tip to say everything one needs to know to use EasyFig -edited the EasyFig tutorial -fixed typos in the tuto and in EasyFig 11/01/18 -added split channels (either to gray channels + merge or to magenta green pairs + merge) -tool is ready to be sent for publication -version 1.0 beta 7 10/01/18 -bug fix for screen not refreshing when all images are deleted -fixed save name not reset on calling "New" -fixed bug packing and align never showing for multiple sel figures -fixed a tab repaint bug after selection changed -fixed dialogs not opening over the main GUI -fixed license showing ScientiFig in EasyFig -fixed ScientiFig showing in FiguR in FIJI -fixed graphically cropped images not added to the figure at 2 col size -visually cropped images are now copies of the parent so that they keep channel properties, etc... -visually defined insets are now copies of the parent so that they keep channel properties, etc... -there is now a known bug with some SVG files (graph_enhanced.svg creates an error when opened in IJ and SF), this is apparently due to a bug in java that is not yet fixed so forget about it -fixed a create panel inconsistency in the order of images in the panel in EZF -fixed a bug in vectors not being cropped (once cropped they were not drawn until reload) -fixed checks not showing properly checks performed -fixed checks not reset when journal is changed -fixed several bugs preventing settings from being reloaded -version 1.0 beta 6 09/01/18 -fixed a bug when pasting several times the same object -fixed a bug in save when no stack was present in the figure -finished first version of the easyfig pdf tutorial 05/01/18 -new FIJI update site address for EZF is http://sites.imagej.net/EZF/ -improved "keep for later visibility" by setting it to red when it contains something and to default color otherwise -fixed an imagePlus issue issue when it is changed it is saved with a new name -fixed a saving error when folder was missing -fixed an IJ issue not saving active channels in TIF files (so upon reload inactive channels were reactivated by default) -fixed a conversion to composite error (the converted image was replaced by any image opened directly in IJ), I guess I was using the wrong IJ command (I had used the IJ interpreter) 04/01/18 -Finally changed my mind and fully mavenized all my tools (SF/EZF and TA), tests are still to be done but they gonna take a lot of time -removed external launcher -set correct version in POM file -version 1.0 beta 5 03/01/18 -started mavenizing SF and EZF (do I want that? I can already foresee problems and more work, plus there is a compile maven overhead. I need to think about it) -improved automated fiji plugin addition for EZF 30/12/17 -changed my mind and redirect system streams again, but could be removed ultimately once the code has been fully cleaned up -largely improved logFrame but requires a lot of code modifications -changed default montage order to make it more intuitive for EZF users, otherwise it looked to similar to rows to be intuitive -removed test images loading at startup and fixed associated errors (it's the first time the soft is running without images, so a lot of bug popped); -fixed many errors when EZF runs as an IJ plugin -fixed a deadlock (infinite while loop) introduced upon changing the default orientation in the montage/panel class -fixed a bug in logger preventing errors and messages from being logged -fixed inconsitencies in panel orientation in ezf -fixed a checksize inconsistency -version 1.0 beta 4 29/12/17 -removed erroneous drop options -added force multiple of 8 for videos to fix an IJ bug in video creation, prevent most videos to read properly on windows computers -cleaned error logger code (do not override system error anymore --> better for FIJI integration) 28/12/17 -main run method now returns true upon success, false otherwise, can be used in combination with tutorial mode (the latter can check for proper execution) -fixed a minor bug in panels, fixed panel order not working -cleaned the panel/montage class 27/12/17 -fixed stack copy -added the possibility to convert RGB image or MyImage2D to composite (MyStack embedding an ImagePlus) -added most used colors for channels to change colors rapidly -started adding synamic tutorials 24/12/17 -improved a lot IJ stack handling (can activate/deactivate channels, change LUTS, ...) -much better handling of slices (Z) and frames (t) and channels for stacks (what I had done before was bad) -stacks restore their current image after export to AVI or to IJ stack -added the possibility to change LUT color -version 1.0 beta 3 23/12/17 -fixed drop error for textrows in figures -fixed copy and paste errors and now allow figure objects to be copied -allow proper copying of stacks now, easier for several things (but heavier for memory) -fixed DND errors for textrows -added crop to same width, height, width and height or same AR for panel images (need to test for vector images too, but works great for rasters) -added crop to same width, height, width and height or same AR for groups of selected images (need to test for vector images too, but works great for rasters) -added reset crops for panels and selected images -cleaned a bit the code 22/12/17 -redisigned the layout entirely to make it look more pro -improved copy/paste (ctrl + C, ctrl +V) -movies are copied as single images when they are copied and not as stacks that was not intended initially (it's a construction artifact but I actually like it, so I'll keep it like this until some user complains about it) -started removing debug verbose 21/12/17 -added bring to front/send to back/alignments and packing x/y for the free positioning mode -prevent row and textrows from being selected together in figures -force same row size when creating rows in a new figure -improved layout for high DPI screens (reset labels, buttons, spinners preferred size) -created an icon/logo for the soft -created a copibale interface for things that can be copied -debugging 19/12/17 -improved insets (do not draw their text when they are added to an image as an inset) -show figure settings by default 14/12/17 -added new swapping possibilities -improved text row drop options -improved drop options -added reload option for timeincrementer added times on movies -version 1.0 beta 2 (entering my personal final debugging phase before release to testers) 13/12/17 -added delete slice for movie -added incremental time addition to the movie -debugging -software has all the features I wanted -version 1.0 beta 1 12/12/17 -finalized a legend object that behaves as a text row. Upon resize its text will be wrapped to fit new width. It can be edited further by double click on it. -fixed previous tip not showing increased font size on high dpi -version 1.0 alpha 3 (really getting there) 10/12/17 -remove/delete old associated files upon save -version 1.0 alpha 2 09/12/17 -added support for IJ plugin (needs to be tested though) -finalized EZF external launcher for IJ -fixed a huge bug that I discovered yesterday while trying to save an svg contained in a myVector class. This was the weirdest issue I ever had, the bug was due to duplication of a serial number in one of the interfaces of the Row class (TAcontainer) object where I had overridden a function loadimage. This created a serialization error due to the serialization of a grouplayout object that never existed in the Row class as well as plenty of L&F errors, it's a miracle that I could figure things out. In fact the bug is due to the override of a method in row, soeehow if I copy row content to a non overridden row then everything is fine. Crazy. -added automatic connection to R if figure contains graphs -fixed saving of stacks in ezf files -fixed redundant reload after serialization -added empty object/images that can be used to draw shapes or arrows in free draxing mode to connect figures logically -added dpi for IJ stack export 08/12/17 -added "do nothing on close" in main frame to avoid having the soft to quit even when no is said (maybe I should hide it ?) -fixed yet another R install error on ubuntu (running R on linux is a really a pain), I had to run the following command 'sudo apt-get install libcairo2-dev' to get anything to work -added automated lettering as in SF -added support for .figur files -improved loading of images and videos also warn if errors are encountered -finalized importation/opening of all supported files -debugging 07/12/17 -added IJ import for stacks -fixed all checks to handle the free positioning mode (created a new interface called stylizable to handle style) -added new vector export formats pdf, eps, ps (using apache FOP) -added new IJ export as a stack -cleaned a bit the code to remove unused and obsolete functions -improved check size for figs (smarter) -added "Ctrl+A" to select all -debugging -version 1.0 alpha (entering final debugging phase, very few things will be added from now on) 06/12/17 -size can now be set in cm, columns or pixels -fixed bugs in imageEditorFrame not loading text properly -added support for parameters for multiple selection of objects of the same type (row/panels,...), improved parent handling -removed useless UI -added export as SVG (including resolution) for "Free positioning mode" -added export as AVI for "Free placing mode" -EZF now creates a real video using ImageJ AVI_Writer (cool class by the way) -debugging -version 0.99 05/12/17 -undo/redo is fully functional and just inactivated by default because it it largely useless and slows a bit the software when it contains large movies or stacks -cleaned code (removed obsolete/unused classes) -added support for LNF (but not sure it worked...) -force set size of jinternalFrame (to be coded) to avoid placement problems on windows -fixed a selection error most likely the last one -fixed swapping error (due to the new mode of selection of easyfig that skips montages) -removed resolution and size in cm in rows and panels as this was largely useless -debugging 01-04/12/17 -added support for save and reload of external stack/video files (still sub optimal) -fixed several huge DND error in semi free placement mode (error that prevented the detection of the proper drop target and its progeny) -corrected a few self drop error -optimized selection so that if a montage only contains one image its content panel does not get selected but the image gets selected instead, this is much more intuitive for the user and is largely transparent for EZF -default selected style is free drawing by default --> no prefered font and full page 21-29.7 cm page size -fixed typos -debugging -version 0.98 30/11/17 -largely fixed save and load to handle free and assisted drawing -cleaned a bit the code -working on undo/redo -removed blinking and glasspane (maybe I'll add blinking again some day or something similar) -started adding the journal styles back -working on a textarea that draws directly on the image panel (like most softwares do) -debugging -version 0.97 29/11/17 -allowed drawing panel to partially resize during drag -improved and simplified a lot the figure drawing area (major change) -added a Tips window to the vectorial display panel that will help the user use EZF better -added tips for the tip internal frame -improved scroll to sel -very extensive debugging session (hopefully getting there) -version 0.96 28/11/17 -modified most functions to handle semi free drawing mode -working on adding the possibility to do semi-assisted figure mounting (major change), this will make EZF as flexible as artistic vector graphics softwares while being better suited for scientists -extended the Figure class so that it is now an official TAcontainer -cleaned up a bit the code (grouped similar functions and improved the TAcontainer interface) -debugging -version 0.95 27/11/17 -cleaned up the row class (remove vertical stuff because that would not be a row but a column and that was never used in practice) -improved a bit text boxes -changed TA logger layout -debugging 24-26/11/17 -added text box objects that behave as images --> still a lot of work to get them to work properly -added a poster object that can contains several figures 23/11/17 -improved support for videos/stacks -added export as AVI (when figure contains stacks/videos) -debugging -version 0.92 22/11/17 -fixed huge selection bugs (seems to work perfectly now so don't change anything) -when a new row is created I added the possibility to scroll to the new row (I activate this by default) -added video production -allow video frame blending -massive debugging -version 0.91 21/11/17 -added support for transparency of dragged selection to better see drop target below (even when dragged things are part of another object) -selection is now always drawn on top irrespective of its initial depth -added support for vectorial insets (insets are now extending myImage2D and can be graphs, images or vectors...) (the only default is that they can have their own PIP, but no big deal ...) -added highlight for droptarget to help the user see where he will drop his image -improved verbose mode to make it more useful to the end user -fixed mild selection error: an empty drag was selecting objects -further simplified the drawing panel -debugging 20/11/17 -changed the java2D image rendering to have 2D (sub-pixel resolution) for raster drawing of images and insets too (this is a master change that I didn't even know was possible) -debugging -version 0.9 14-16/11/17 -added support for stacks and videos -debugging 14/11/17 -working on adding new export format (pdf, eps, ps, ...) using Apache batik transcoder and Apache FOP -added import from ImageJ (for single images) -working on a video/stack object -debugging 13/11/17 -massive debugging to allow retrocompatibility with SF -started adding checks again -added journal styles again -finalized load/save -EZF is now retrocompatible with SF (i.e. supports the yf5m format) 12/11/17 -Connected all menu functionalities -added logging/import/export/save -debugging 11/11/17 -DND of external files onto easyFig loads them as rows -increased scrollbar speed -debugging 10/11/17 -removed the list (DND is now by default on the drawing area) -debugging -version 0.8 09/11/17 -added keyboard shortcuts -still a lot of debugging to do but it works quite well already -connected keyboard arrows to object displacement -added a keep for later Menu (work in progress can be kept here and added back to the figure later) -I am now fully decided I will remove the list as it is largely useless (this will also make the software appear simpler) -version 0.7 08/11/17 -renamed the software as EasyFig, which sounds better to me -added the possibility to swap/rows/montages images -added the possibility to replace images -fixed dozens of bugs -removed numerous useless buttons -I'm seriously thinking of removing image list, in that case everything would be dropped onto the Figure panel directly (this would also remove the complexity of swing dragging, event though I got it working fine) -tool is largely functional now, I enter debuging phase and will add new functionalities --> version 0.6 07/11/17 -started adding key SF functionalities back -added menu bars and buttons -connecting all GUI elements -added image parameter dialog to edit images -started integration in FIJI -created an external launcher -a lot of progress but still not fully functional --> version 0.5 06/11/17 -fixed numerous selection issues when ctrl/cmd was pressed (multiple selection) -fixed dragging of multiple objects -fixed several bugs in saving/restoring dragged object position upon drop failure -started adding drop options depending on the type of dragged objects and the type of the drop target object 03/11/17 -added a menu bar and a limited number of buttons -further simplified the image handling panel -added dynamic buttons (buttons and their actions depends on selection) -added parameter panels allowing to dynamically modify objects -version 0.4 20/10/17 --> 02/11/17 -improved DND support (from list to figure panel and within the Figure panel itself) -improved storage of coordinates before DND. Also upon drop failure dragged object position is restored or objects are sent back to the main storage list -removed circular wheel action upon drop as it happened to be inefficient and quite hard to combine with DND --> it was replaced by simpler and more powerful optiondialogs -created a new TAcontainer interface that checks whether some objects are contained in others -improved row/montage creation to better handle DND actions -major progress (almost functional) --> version number is now 0.3 19/10/17 -started to add support for DND of objects/images in and out of the software, the user will now entirely design and organize his/her figure using his/her mouse (and will not need to learn how to use complex button sets as was done in ScientiFifg) -redisigned the software layout to make it simpler that that of SF (all useless elements have been removed) -started simplification of SF vectorial layer (just trying to keep the essential and to make it fully autonomous), I have also removed the vectorial drawing capabilities that are useless here -version number 0.2 18/10/17 -started to develop a "selection wheel" that pops up upon drop and offers the user several possibilities, this will replace several useless menus and restrict information to what is relevant only 11/10/17 -started to create a figure layout importer that can be used by people constantly creating figures with the same layout 10/10/17 -started to add support for videos/image stacks (far from being done though) 09/10/17 -started the development of a new tool (working name intuitiFig) that can be used to design scientific figures/videos and posters (i.e. handle slightly more artistic presentations). The rationale behind that is that ScientiFig (the core library at the basis of this new tool) is not a very intuitive software that requires user to be trained to use this tool. We realize the latter can discourage several users when they first try ScientiFig and prevent them from adopting it for their everyday work. We therefore decided to make a tool that will be totally intuitive, unlike SF, and easy to use without any prior training. In addition we extend a bit the capabilities of SF. -version number 0.1