New developments in code, documentation and website are reported here.
Implemented the GTL Cell->Config dialog and the corresponding XML code,
allowing users to set personnal default parameters for Cell objects,
and more importantly, to set different thicknnesses for Cell axes,
borders and nodes, which is very usefull particularly when using
large screen resolutions.
What is new:
- Updated Help->Config files for Light and Atom objects.
- Synced gamgi-g and gamgi-x trees.
- Updated gamgi_expat_import_object: importing Cell object data
to XML files with the new config rules should be working fine.
- Updated gamgi_expat_export_object: exporting Cell object data
to XML files with the new config rules is now working fine.
- In Cell->Create and Cell->Modify, Origin vectors and Axes vectors
are now updated automatically for default (Conventional or Primitive)
options when Model changes.
- Replaced cell->borders = FALSE by cell->borders = GAMGI_PHYS_NONE,
in engine, gtk, expat and mesa code.
- Updated gamgi_expat_export_config: exporting Cell
config data to XML files is now working fine
- Updated gamgi_expat_import_config: importing Cell
config data from XML files is now working fine
- Improved the Cell->Config dialog, to handle also
default values for Model, Borders, Faces and Nodes.
- Redesigned Object->Config dialogs: Config data is now separated in
default data (in the pages with the same names as in Object->Create dialogs)
and global data (applying to all objects, old and new), in the Global (last)
notebook page. Dialogs affected: Atom->Config, Cell->Config, Light->Config.
- Implemented Cell->Config dialog and infra-structure. The size of Cell
border lines, node points, and vector axes can now be set globally for all
cells in GAMGI, a feature badly needed. Default values for
cell color and axes usage have been set also.
- Fixed a issue in gamgi_gtk_bond_create: the color set in static_init
ignored previous config data.
- Fixed an issue in gamgi_mesa_draw_pick and gamgi_mesa_draw_grab: Cell rendering
point width was set to line width instead of point width.
What is next:
- Rewrite the About dialog, in the notebook form, to
include pages for Developers, Contributors, Supporters.
- Add a task id to operactions involving multiple scans to
guarantee that there is no flag corruption when bonds are
created between different molecules.
- Add a bond angle, which is useful to control double bonds
in solid mode.
- Write documentation about lists of objects.
- Write documentation about Orbitals.
- Write tutorials about crystalographic and atomic Plane,Direction usage.
- Implement dynamic text objects, to measure distances,
angles, etc. on real time.
Merged the new graphene code to build nanotubes, nanocones, nanocages.
Removed a serious bug resulting in top windows being closed too son in
some window managers. Cleaned code to prevent compilation warnings about
non-initialized variables, added a new test to catch nans in GTK dialog
input data.
What is new:
- Cleaned code in gamgi_gtk_*link.c and a few other files, to avoid warnings,
mostly innocuous, about non-used and non-initialized variables.
- Updated make_local to compile out-of-the-box in Debian 8.7, the last stable
version.
- Changed the delete_event callback in gamgi_gtk_window_create.c to prevent
a bug resulting in top windows being closed too son in some window managers.
Changed all other delete_event callbacks to return FALSE, when windows should
be destroyed.
- Merged the new GTK code to build nanotubes, nanocones, nanocages,
from Molecule->Create.
- Merged the graphene code to build nanotubes, nanocones,
nanocages, created dor the Master thesis of Joao Coelho.
- Cleaned code in gamgi_io_x3d.c and gamgi_io_x3d_render.c.
- Added a new test case to gamgi_io_token_float_get_check and
gamgi_io_token_double_get_check to find NANs.
- Updated gamgi_math_quaternion_from_axis and
gamgi_math_quaternion_to_axis, to handle the special case
where the rotation angle is zero, to avoid a division by zero.
- Removed gamgi/dat/util/: old files, no longer needed.
- Synced documentation on http://gamgi.org and http://gamgi.ist.utl.pt
with local doc/.
- Synced data files on http://gamgi.org and http://gamgi.ist.utl.pt
with local dat/.
What is next:
- Rewrite the About dialog, in the notebook form, to
include pages for Developers, Contributors, Supporters.
- Add a task id to operactions involving multiple scans to
guarantee that there is no flag corruption when bonds are
created between different molecules.
- Add a bond angle, which is useful to control double bonds
in solid mode.
- Write documentation about lists of objects.
- Write documentation about Orbitals.
- Write tutorials about crystalographic and atomic Plane,Direction usage.
- Implement dynamic text objects, to measure distances,
angles, etc. on real time.
Reviewed all Formats documentation, particularly for Cluster, Group,
Plane, Direction objects. Replaced attribute type by reference in XML
group elements. Reviewed the code bridging GTK and OpenGL. Changed
license for GAMGI source code and GAMGI documentation for GPL v3.
Renewed gamgi.org domain name until 2020 and GAMGI EU trademark until
2024. Started using sha256sum to checksum distribution tarball files.
What is new:
- Fixed a bug just introduced: we cannot unref the GDK visual
after removing a GL context. Just removed this code. Apparently
GTK does this when the widget is destroyed.
- Improved gamgi_gtk_area.c, used in the X version of GAMGI,
that replaces the GTKGLExt library by our own GLX-based code.
Javier Cabezas ported this code to GTK 3 and is working fine!
Back ported changes so the differences between the code for
GTK 2 and GTK 3 are absolutely minimal.
- We cannot use r,g,b colors because of a,b,c cell axes.
- Improved Axes layout in Orbital->Create and Orbital->Modify dialogs.
- Changed label Model to Scope in Orbital->Create and
Orbital->Modify and changed Help interface accordingly.
- Checked all Help Formats documentation pages.
- Updated Help documentation for Cluster Formats.
- cluster->paints arrays are no longer zero-terminated.
- Synced gamgi and gamgi_exp branches.
- In XML files, in group elements, replaced attribute type by reference.
- Updated Help documentation for Plane and Direction Formats.
- Updated Help documentation for Group Interfaces and Formats.
- Renewed the EU
trademark GAMGI until 2024.
- Updated the source code and documentation license to
GPL v3.
- Started using sha256sum
to checksum all distribution files.
- Renewed the gamgi.org domain name registration until 2020.
What is next:
- Rewrite the About dialog, in the notebook form, to
include pages for Developers, Contributors, Supporters.
- Add a task id to operactions involving multiple scans to
guarantee that there is no flag corruption when bonds are
created between different molecules.
- Add a bond angle, which is useful to control double bonds
in solid mode.
- Write documentation about lists of objects.
- Write documentation about Orbitals.
- Write tutorials about crystalographic and atomic Plane,Direction usage.
- Implement dynamic text objects, to measure distances,
angles, etc. on real time.