20 Commits

Author SHA1 Message Date
Jarrett Johnson
fbfda4a257 Replace NULL with nullptr 2024-05-20 09:07:33 -04:00
Jarrett Johnson
3350791d9e Refactor LabPos VLA to std::vector 2020-12-03 18:25:31 +01:00
Thomas Holder
0bd6bbbdaa PYMOL-3410 Remove some Python #defines 2020-06-05 09:13:06 +02:00
Thomas Holder
6f11b62566 PYMOL-3410 Remove Python 2 support 2020-06-05 09:13:06 +02:00
Thomas Holder
327fe4ea96 fix PYMOL-3359 Loading PSE with UTF-8 labels 2020-02-20 11:53:17 +01:00
Thomas Holder
698d3cebff refactor pymol.querying
- use with _self.lockcm: pattern
- use API_SETUP_ARGS and related patterns
- use APIEnter instead of APIEnterNotModal
- propagate errors as much as possible (using pymol::Error or PyErr_XXX)
- add doxygen-style documentation for C++ functions
2019-10-15 13:54:54 +02:00
Thomas Holder
b59ce09d8a refactor: pymol::malloc<T>
- use typed/namespaced malloc wrapper
- remove Alloc et al.
- remove mmalloc et al.
- remove CINTERFACE define
2019-02-21 17:41:58 +01:00
Thomas Holder
52b6b34fc4 fix PYMOL-3208 PSE loading OverflowError 2019-02-06 15:36:47 +01:00
Thomas Holder
5acb6c4637 py37, align alt, flag 6+7
* Python 3.7 support (https://sf.net/p/pymol/bugs/197/)
* enable align with alt-codes
  - allow matching of non-alt-code to alt-code atoms in alignments
  - swap sorting priority of 'name' and 'alt' identifiers
  - sort empty 'alt' before non-empty 'alt'
* flags 6 and 7 for protein and nucleic acid
* mmCIF: read _atom_site.pdbx_formal_charge
* improve coordinate loading from mmcif chem_comp files
  - ignore columns with all ? (missing) values
  - select columns with "chem_comp_cartn_use" setting
* fix h_add: skip missing coordinates
2017-12-21 12:50:47 +00:00
Thomas Holder
09fe0a5fbc 1.8.7.0
* support "not ..." and "enabled" in name patterns (e.g.: delete not enabled)
* improve/fix unicode+utf-8 handling for labels
* iterate color settings: type int (e.g.: iterate all, print(s.sphere_color))
* fix cmd.load with contents https://sf.net/p/pymol/mailman/message/35966326/
* fix ray tracing of stick_ball + valence https://sf.net/p/pymol/mailman/message/35928857/
2017-08-02 11:36:28 +00:00
Thomas Holder
c49b8702c5 PSE compatibility between Python 2 and 3 2017-05-07 07:22:24 +00:00
Thomas Holder
f4582bbfcb pse_binary_dump, get_sasa_relative, color_deep, ...
- experimental setting "pse_binary_dump"
- get_sasa_relative (command ported from Incentive PyMOL)
- Color menu uses util.color_deep (ported from Incentive PyMOL)
- C > by rep (ported from Incentive PyMOL)
- fix crash when saving mesh PSE without map
- fix isosurface invalidation when setting surface_negative_visible
2016-04-17 02:00:50 +00:00
Thomas Holder
9f53f30e47 segi, resn, name of arbitrary length; settings in iterate/alter
* support segi, resn and name of arbitrary string length
* expose settings to iterate/alter via "s.<name>"
* Python 3 compatibility for champ module
* apbs_tools: apply fixes from Pymol-script-repo
2015-12-14 19:11:12 +00:00
Thomas Holder
2d45a2d7ca Python 3 compatibility
Tested with Python 2.6, 2.7, 3.4
2015-12-09 17:01:32 +00:00
Thomas Holder
92179cf33f pdbml, pdbqt, cml, get_object_ttt, ...
* new filetypes: pdbml, pdbqt, cml
* cell/symmetry: accept alpha=beta=gamma=0.0 as 90.0
* leave unknown protons as -1 instead of 0 (lonepair), fixes vdw assingment for unknown elements (1.8 instead of 0.5)
* reimplement reading full sequence from mmCIF. Only with cif_use_auth=off and retain_order=off. Fill in missing CA atoms for polypeptides.
* new API function cmd.get_object_ttt()
* APBS Plugin: --whitespace argument for pdb2pqr
* fix scene next/previous, was broken on Windows 10
* fix split_states with non-unique titles
* fix "File > Run" fails if path has spaces
2015-10-06 18:15:01 +00:00
Thomas Holder
49410f0ac1 mmcif: match pdb1, pdb2, ... files with assembly generation
- fix handling of _pdbx_struct_assembly_gen with repeated asym_id
- create assembly for multi-state objects
- no pdb_insure_orthogonal for assemblies

Also:
- fix "File > Run"
- some "const correctness" refactoring
- experimental pymol.querying.get_object_ttt
2015-07-02 21:04:32 +00:00
Thomas Holder
5cbfe6b0d4 fix invalid memory access during PyMOL_Stop
- https://sourceforge.net/p/pymol/bugs/162/
  - Free ShaderMgr after Scene
  - check (G != NULL) in MainOnExit
- https://sourceforge.net/p/pymol/bugs/161/
  apply clang logical-op-parentheses suggestion
- more `const char *` arguments refactoring
2015-03-16 18:58:36 +00:00
Thomas Holder
9bb5c2d971 1.7.5.0 (unstable/experimental)
* mmCIF _atom_sites.fract_transf support (SCALEn equivalent)
* Complete port of scenes to C++
* warn user if setting a setting on the wrong level
* cmd.extendaa: shortcut for cmd.extend with argument auto-completion
* reduced memory footprint of AtomInfoType
* expose "reps" to iterate/alter
* expose "protons" to iterate/alter
* adaptive cartoon quality and sampling, depending on number of atoms
* fix ring center color with cartoon_ring_color=default
* make SelectorGetTmp strictly molecular, fixes for example "dss" with group names
* fix "copy" can cause crash
* fix "custom" selection operator
* consider spec_count in shaders
* don't invalidate shaders for lighting settings
* don't disable shaders for all Intel chips
* don't touch sphere_mode when disabling shaders
* map_new buffer == -1 -> gaussian_resolution
* fix all_states picking
* remove cylinder_shader_ff_workaround and cylinders_shader_filter_faces
* remove unused gl_ambient setting
* fix Tcl/Tk menu settings logging
* fix: grid mode scales down label size incorrectly
* fix: no animate argument for cmd.origin
* fix side_chain_helper for hetatm polymer atoms
* fix .mmd export
* refactor many function to take "const" pointer arguments
2015-03-12 17:44:19 +00:00
Thomas Holder
4dd7c7ffd4 SCALEn, numpy, set_state_order, ...
* ignore SCALEn if CRYST1 is 1x1x1 or invalid
* new/refactored API functions for accessing coordinates and maps as numpy arrays
* new API function: cmd.set_state_order
* Session file (PSE) support for callback objects
* fix/silence many compiler warnings
* fix bg_rgb_top/bg_rgb_bottom side effects
* revert "fix setting surface_circumscribe"
* delete some obsolete files
2014-09-17 19:17:56 +00:00
Thomas Holder
f42840260b c++ for all PyMOL c files
- renaming files c -> cpp
- c++ specific syntax (::)
2014-09-08 13:42:11 +00:00