Have a suggestion that isn't listed? Send us a message!
Change Log for Jimp 2
To do
- make the selection in the tree view reflect changes in selection from the opengl view
- delete measures when any of the atoms in their list are deleted (as long as there aren't too many measures, can this be brute force checked upon deleting atoms?)
-
add move atoms code (and dialog)
- move selected atoms/move all atoms (check-box)
- translate atoms to a set position (default to origin)
- translate atoms by a vector
- rotate atoms by X, Y, or Z (or combination) and specify a center of rotation
- set the rotation axis by performing a linear regression on selected atoms
- set the center of rotation by averaging the positions on selected atoms
- mirror the selection, changing its chirality (changing the sign of the Z-coordinates)
- smart selection dialog
- make more of the script functions undoable (load, setWorkarea, fenhall, moplot, uff)
- draw text when rendering with povray
- a bond should be renamed when one of its atoms is changed
- right clicking on a node in the hierarchy, should not deselect selected objects (reported: Edwin Webster)
- cannot "cut and paste" a node (reported: Edwin Webster)
- ability to reorder nodes (reported: Edwin Webster)
- sort reverse order (reported: Edwin Webster)
- selection mode: select only atoms, select only bonds, select both atoms and bonds, select only surfaces, select everything (reported: Edwin Webster)
- user can change the color and light settings (reported: Xiaoping Wang)
- Change scripting language to LUA
- More easily customized label text with checkboxes for common things to show
- changing properties of huge number of objects should be sped up -- dead slow for a protein
- add threading so that scripts don't hang the program if they take a long time or maybe add some way of canceling actions??
- there is still a bug in memory freeing and a couple of leaks. i really want a garbage collected language now
090 -> 091
- UFF will now only change the geometry of selected atoms if any atoms are selected
- selected atoms are drawn bigger so that they can be seen
- Made the Help->About dialog actually show.
- fixed bug loading jm2 files, value of fenhall_frag was read into v_radius instead and overwriting the radius. This made solid atoms seem to disappear when loaded or copied.
- add a “are you sure” to the C^Q quick key! (reported: Edwin Webster, same as below basically)
- Close confirmation if changes have not been saved (suggested: Shin)
- changed default colors and settings to be more like what people will commonly use. background is now while and things are drawn solid
- Show atom id in object name (suggested: Hong)
- removed #include "wx/msw/wx.rc" line from resource file, because it messed with debug build for msvc8
- fixed some memory bugs in parse.cpp and terrascript
089 -> 090
- removed old code for gradient based energy minimization step for UFF that didn't work and may have been causing problems and was clutter anyhow. Now, only simplex minimization is used.
- added atom ids, order of atoms from XYZ file is preserved
- atom label can be changed arbitrarily
- Jimp 2 now compiles and links on my linux test box, but it crashes immediately when run.
- cameras are not switched to automatically when changing workarea
- when opening a file, the molecule will be centered or use the first camera listed
- added maximizeFrame script function
- frame is maximized by default
- file dialog will recognize GJC files
- memory management may work now
088 -> 089
- as soon as a font is unused it is removed from the font cache. this reduces memory usage DRASTICALLY when fonts are scaled.
- bugfix: the default offset for an element should be 0. 0. 0. (instead of 0. 0.15 0., which is appropriate for bonds). (reported: Edwin Webster)
- bugfix: crashes when change 'Label:Offset' to just one number.
- bugfix: crashes when change 'Atom:Position' to just one number. (reported: Edwin Webster)
- added cameras
- MolRoot inherits from MolNode now instead of MolObj
- set the defualt atom color with setDefaultAtomColor()
- it is now possible to set the default properties of object types with setDefaultProperties()
- found a huge bug in the reference counting code -- jimp 2 will just leak like a sieve until I fix it
- added some save data that was missing (background color, label color for measures)
- offset for labels is now 2D instead of 3D (the 3rd parameter was mostly just clutter)
- labels may be rotated by any angle
- toggle to flip labels
- fixed bug with setting properties of a measure
- font size scales with zoom
- hidden/shown options in properties dialog
- now compiles on linux, but have not successfully linked yet
087 -> 088
- added measure for angle between planes
- default position of labels is moved up
- torsion measure is correct for 0 degrees
- no longer depends on compatibility with wxWidgets 2.4 -- updated to 2.6
- compiles with unicode enabled, but doesn't work with foreign characters yet
086 -> 087
- changed location of msvc project files
- align labels to bonds for measures
- label text placement via offset
085 -> 086
- measure selected bond lengths added
- opening of multiple files at the same time added
084 -> 085
- documentation through Doxygen, and more descriptions added
- UFF now reports what contribution to the total energy each constraint type makes for the simplex minimizer
083 -> 084
- fixed some more issues with UFF
- add rotate selected atoms RMB+Drag+Ctrl
082 -> 083
- shift and select bonds does not allow addition of bonds (reported: Edwin Webster)
- adding a bond to an element will remove its typing
- changing an element will remove its typing
- redrawing over a bond that already exists will increase the bond order by one half
- calcBonding will use whole work area if one atom is selected
- addHydrogens added to calc bonding dialog
- thicken the selection line, because it really does not show up when using a projector (reported: Edwin Webster)
081 -> 082
- buttons for UFF have temporarily been placed in the CalcBonding dialog
- reduced file size by not saving unnecessary info
- saving and loading of UFF type
- UFF Type property in atoms dialog
- removed option of explicitely setting label text, because it was too confusing
- changed "open a file" to "save file as" in save as dialog (reported: Edwin Webster)
- fixed a sorting bug -- sorting by name was not done for atoms and bonds (reported: Edwin Webster)
- added a sleep function (suggested: Edwin Webster)
- fixed an issue with UFF (linear bonds)
- it is now possible to set the max number of cycles and if vander waals forces are considered
- if atoms have an invalid or no type, a type will be assigned to them when doing UFF instead of blowing up
080 -> 081
- fixed calcBonding to have no upper limit on bond length when using high bonding factors; the most efficient cube size is also calculated based on the factor
- fixed a bug with multiple identical bond creation in calcBonding()
- UFF energy minimization works
- atom typing mostly works
079 -> 080
- draw solid fractional bonds with cylinders for dashes instead of spheres
- probably fixed the problem with light outlines on the orbitals when using povray
- atom drawing with connecting to previously drawn atoms (update to below)
- atoms and bond centers must now be directly clicked on to select them
- atom drawing (not connecting to previous parts)
078 -> 079
- add "hide hydrogens" shortcut
- make a more intuitive way of changing the background color (a menu entry?)
- added menu entry for the properties dialog
- added ability to change the view radius of bonds and atoms in the properties menu and created some new naming properties for them
- add X,Y,Z coordinates (position) to the properties box
- added draw mode toggle to be Ctrl-D
- changed deselect to be Ctrl-Shift-D
- add status messages to the status bar to indicate the current mode of operation
- added a dotted line while drawing a measure
077 -> 078
- registry keys are opened as read-only, so no admin priveleges are needed any more
- a required dll, msvcr70.dll has been added to the windows installer
076 -> 077
- bug fixed with measurements attached to moving atoms
- bug fixed getChildrenR() and a couple of other functions that assumed that only nodes could have children
- fixed bug with measure not setting lighting to be false
- pos_with_moving() made part of general objects, surfaces now show being moved
- Ctrl-Shift-Alt select all atoms (only the atoms)
- draw measure indicators thicker when selected
- commented out the opengl view mouse actions that do not work
- MMB translates view
- MMB+Ctrl translates selected atoms
- added bond order to properties dialog
- separated the label options from the general options in the properties dialog
075 -> 076
- actionCreateNode no longer sets the workarea, but the script function returns the created node's id so that it can be set through the scripting language
- made the webpage part of the jimp 2 directory tree
- moved changes.html to website and got rid of openglview.html in place of the user guide being written for the website
- the documentation directory is no longer included in the installer
- added autorun.ts to the installer
- lots of work being done on the website (i guess that isn't directly a change to jimp 2, but whatever)
- was reading the wrong registry key
074 -> 075
- added copy, cut, and paste
- fixed a center view bug with the root node
- added ctrl-n to make a new node
- upon creating a node the workarea is set to it
- moved position of new node in popup menu
073 -> 074
- added new properties to save and load (labels and measurement)
- pdb file loader now works on old style format
- automatically center the view after loading a file
- added printf style formatting to measurements
- will load files given in command line (doble clicking to open a file now works)
- name of the app says if it was compiled in debug mode
072 -> 073
- added measurement tool/object (distances, angles, and dihedrals)
071 -> 072
- added script function setPerspectiveMode
- changed help message
- can toggle labels
- label drawing defaults to false now
- in fenhall dialog 4- is interpreted as -4 for the charge
- fenhall results are written to a file and to the script dialog as comments
- use the registry key to load files from the right location and save them to the right location (autorun.ts, log.ts)
070 -> 071
- setting label fonts works
- can change label color
- rendering of text is now depth sorted
- only true type fonts can be selected (selecting others caused a crash sometimes)
- stuff about file loading
069 -> 070
- can now set the label of atoms
- changing atom type works properly now
068 -> 069
- fixed an issue with drawing labels when not centered at the origin
- all objects now have label properties
- fixed an issue with grab screen
- moving things is at correct scale now for orthographic
- center view now uses a bounding box instead of average positions
- center view now changes the zoom level as well as focus
- povray lines now look right for orthographic
067 -> 068
- grab screen works for orthographic
- grab screen dialog can get size of the current view times a factor
- povray works for orthographic
- povray dialog can get size of the current view times a factor
- fixed a slight visual glitch in bond drawing
- made offset bond parts always draw with rounded caps
- fixed an issue with font drawing where transparent font was occluding solid
- basic atom labels are working
- grab screen with jumbo sizes automatically scale the resolution of the font to be crisp
066 -> 067
- font drawing works
- orthographic projection mostly works
065 -> 066
- resizing window updates view
- grab screen now works perfectly
064 -> 065
- fixed cube inport/export to work with multiple orbitals
- fixed cube and xyz import to not crash on calcBonding.. it didn't before and doesn't any more?
- fenhall fragment analysis works
- using the default image viewer to show povray images now works correctly
- the povray function has been improved
- fixed a crashing bug with negative coordinates in calcBonding
063 -> 064
- fixed misalignment of text for calcbonding dialog
- made pov-ray dialog (povray doesn't want to work though. stupid program)
- it has become apparent that the rendering engine must be untied from opengl so that it can work with povray as well
- the general rendering and opengl specific parts have been separated
- both opengl and povray can now render through the same system
062 -> 063
- load cube files
- save cube files
- change the behavior of calc bonding
- automatically calc bonding when loading files that don't store bonding info (.xyz, .cube)
- changed the way exec works so that if it is called while running the new command will be stored in a queue and run when it is finished execing
061 -> 062
- added minimal property dialog for atoms and stub for bonds
- added fragment analysis, but it has not been checked if it works, but it compiles :-)
060 -> 061
- completely and totally fixed bug with undoing and then calculating again the bonding
- order is not messed with when moving and deleting objects
- when adding objects, atoms and bonds are put at the end, everything else is put at the top
- added some properties to field (save and load also)
- moplot is now awesome
059 -> 060
- Set default save format to jm2
- fixed exec() on a file that doesn't exist to not give a strange error
- fixed bug with undoing and then calculating again the bonding (kinda)
058 -> 059
- right click in opengl view for menu with properties dialog
- change in selection updates properties dialog
- file format selection in opening and saving
- extensions are verified in saving dialog
- jm2 loading will directly attach root objects now, converting them to nodes
- root nodes can now have any object as a child
- automatically create surfaces in moplot dialog
- added resolution to name of moplot fields
- calculate multiple moplot fields at the same time
- dotted drawing for fractional bonds in solid drawing mode
- show selection of solid bonds
- fixed selectAll() to select all in workarea. not the whole hierarchy. oops
- natural sorting of numbers in names
- fixed zoom bug
- calcbonding dialog box
057 -> 058
- Added Select all, deselect, hide selection, invert selection
- delete will now deselect the recently deleted nodes.
- message dialogs indicating how fenhall calculation finished
- automatically set directory for moplot after fenhall calculation
- profile.txt is no longer created
- added command echo setting
- on startup, run "autorun.ts"
056 -> 057
- exec() in terrascript now works
- fixed recursive sorting
- fixed moplot surface drawing
055 -> 056
- Loading and saving of native file format works
- Fixed name being reset sometimes when canceling editing of a label
- fixed to not select hidden atoms
- fixed to not center the view based on hidden atoms
- multiresolution moplot surfaces
054 -> 055
- Drag n drop reparenting now works properly.
- changed how type is shown through getProperties so that it can be used in saving files
- getProperties node specific stuff removed along with some useless info
- beta version of jm2 format saving (no loader yet)
053 -> 054
- propfield can make surfaces
- setSelection() behavior changed
- renaming of objects in the tree now mostly works. other things will have the name change sometimes, but refreshing the view makes them what they were originally
- drag and drop kinda sorta works
052 -> 053
- property changing fixed
- selection doesn't mess up drawing of surfaces in wireframe mode
- fenhall bug fixed (multiple runs giving different results)
- can now sort and sort recursively the nodes in the tree
- selection drawing bug in surfaces fixed
- surfaces now default to being drawn solid
051 -> 052
- transparency can now be set (but it won't draw right)
- surfaces can be drawn solid or wireframe
050 -> 051
- finished framework for dialog (changes can not yet be undone)
- made first changable option - v_solid
- fixed cap drawing of solid bonds
- changed background color to being stored in the workarea node in v_color
- changed vect.h to return refs to T in operator[]
- changed color behavior of atoms and bonds
- properties dialog can now change colors, but some more work is still needed on the feature
049 -> 050
- added properties dialog menu item to popup tree menu
- fixed layout problems of fenhall dialog
- created some of the basic framework for the properties dialog
048 -> 049
- changed determination of visibility of objects in tree and viewopengl and molobj. the visibility is now precalculated beforehand in a correct way. before a recursion was done on each drawing, so this should be faster as well as more correct.
- added arrayFromVars() builtin to terrascript
- changed drawing in viewopengl to draw root instead of messing with trying to reduce the number of things to try to draw
- changed shortcut key for script dialog from Ctrl-P to Ctrl-L to prevent confusing users with printing
- fixed refreshing of treeview to expand everything as needed
- changed behavior of tsVariable getInt and getFloat to return the first element in an array if it is an array
047 -> 048
- fixed separator in tree popup dialog
- added toggle hidden to tree popup dialog
- added toggle shown to tree popup dialog
046 -> 047
- all objects can now have children, and have a filter on types of children allowed
- constructor of MolObj makes more sense now
- changed all throw statements to throw_joe function to assist debugging
- iso surfaces are created as children of the field that made them
- iso surfaces have default color values based on the sign of the iso level
045 -> 046
- load file returns the object created
- automatically set workarea to molecule when it is loaded through the file menu
- converted change log into html
- resized script dialog
- changed centerView() to center on selected, else center on all in workarea
- changed calcBonding() to work on selected, else work on all in workarea
- confirmed and modified all existing scripts to run (select_lone_oxygen.ts has odd crashes)
- gave moplot field a better default name
- gave iso surfaces a better default name
- modified script crash recovery behavior (who knows if it will work though)
044 -> 045
- moplot crash fixed
- moplot orbital selection now works (passed in through function call)
- moplot dialog slightly prettier
- changed "vector<MolObj*> workarea" to "MolObj* workarea". Having multiple things in the workarea is too confusing. All molecule - wide operations such as fenhall or moplot will operate on the workarea. If nothing is selected for operations that need a selection everything in the workarea will be considered selected, such as calculate bonding. To view all of the objects, select the root as being the workarea.
043 -> 044
- Changed sizer behavior in MoplotDialog
- Changed default focus for ScriptDialog
- Change ScriptDialog log to uneditable, and different color
- Created installer using NSIS (untested)
042 -> 043
- Made solution compile with new version 2.6.0 of wxWidgets
- Fixed some issues with fenhall dialog