atomes 1.1.15
atomes: an atomic scale modeling tool box
Loading...
Searching...
No Matches
atom_edit.h File Reference

Function declarations for the mode edition window. More...

#include "global.h"
#include "bind.h"
#include "callbacks.h"
#include "interface.h"
#include "initcoord.h"
#include "glview.h"
#include "glwindow.h"
#include "project.h"
#include "workspace.h"
+ Include dependency graph for atom_edit.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define IDCOL   0
 
#define TOLAB   3
 
#define TOPIC   4
 

Functions

GtkWidget * selection_tab (atom_search *asearch, int nats)
 create the search widget
 
G_MODULE_EXPORT void set_show_axis_toggle (GtkToggleButton *but, gpointer data)
 show / hide axis callback GTK3
 
void save_rotation_quaternion (glwin *view)
 save the rotation quaternion of the last image
 
void center_molecule (project *this_proj)
 center atomic coordinates around (0,0,0)
 
vec3_t get_arc_ball_vector (glwin *view, int x, int y)
 
void update_search_tree (atom_search *asearch)
 update search tree
 
chemical_dataalloc_chem_data (int spec)
 allocate chemistry data
 
void image_init_spec_data (image *img, project *this_proj, int nsp)
 initialize the chemical species related pointers in an image data structure
 
void free_glwin_spec_data (project *this_proj, int spec)
 free the memory used by the chemical species related data in a glwin data structure
 
void glwin_init_spec_data (project *this_proj, int nspec)
 initialize the glwin chemical species related pointers
 
void prepare_opengl_menu_bar (glwin *view)
 update the OpenGL window menu bar
 
gboolean test_vol (double box[2][3], double vect[3][3])
 is the cell properly described to use PBC ?
 
GtkTreeModel * replace_combo_tree (gboolean insert, int proj)
 replace combo box in the tree view
 
int get_selected_object_id (gboolean visible, int p, gchar *str, atom_search *asearch)
 get the id of the object selected (in contextual menu, or in combo box)
 
int get_atom_id_from_periodic_table (atom_search *asearch)
 get atom Z from selection in the periodic table
 
G_MODULE_EXPORT void set_mode (GtkWidget *widg, gpointer data)
 set mouse mode callback
 
GtkWidget * coord_menu (glwin *view)
 
GtkWidget * advanced_coord_properties (glwin *view, int page)
 create the environments configuration window
 
GtkWidget * create_cell_edition_window (project *this_proj, gpointer data)
 create the cell editon window
 
G_MODULE_EXPORT void window_spinner (GtkWidget *widg, gpointer data)
 create the spin window callback
 
gboolean in_bond (int at, int bd[2])
 is atom at in bond bd
 
void check_all_trees (project *this_proj)
 check all search trees
 
atomic_objectget_atomic_object_by_origin (atomic_object *first, int oid, int aid)
 get insert object from a list by id
 
void adjust_object_to_move (project *this_proj, atom_search *asearch, int mv, int id)
 adjust atom search parameters for motion cases
 
void motion_to_zero (atom_search *asearch)
 reset motion to 0.0
 
int get_asearch_num_objects (atom_search *asearch)
 the number of type of object(s) in this atom search
 
int get_asearch_object (atom_search *asearch)
 get the number of object(s) in this atom search
 
int get_asearch_filter (atom_search *asearch)
 get asearch filter
 
int get_todo_size (atom_search *asearch)
 get the size of the atom search selection list
 
void allocate_todo (atom_search *asearch, int tsize)
 allocate the selection list data buffer
 
void clean_todo (atom_search *asearch)
 clean atom search selection list
 
void clean_picked_and_labelled (atom_search *asearch, gboolean clean_msd)
 initialize atom search data buffers
 
void adjust_search_param (atom_search *asearch, project *this_proj, int a, int s, int c, gboolean status)
 adjust parameters for this atom search
 
void re_populate_tree_search (atom_search *asearch)
 re populate search tree after atom action if >= 10 000 atoms
 
G_MODULE_EXPORT void set_search_mode (GtkComboBox *box, gpointer data)
 change search mode
 
G_MODULE_EXPORT void set_object_changed (GtkComboBox *box, gpointer data)
 change the search object
 
G_MODULE_EXPORT void set_filter_changed (GtkComboBox *box, gpointer data)
 change the search filter
 
G_MODULE_EXPORT void set_spec_changed (GtkComboBox *box, gpointer data)
 change the search chemical species
 
void add_bonds_to_list (int **new_bond_list, int nat, int nbd, atomic_object *object)
 add object bond(s) list to overall bond(s) list
 
void add_bonds_to_project (project *this_proj, int removed, int nbd, int **new_bond_list)
 add bond list to project bond list
 
gboolean * remove_bonds_from_project (project *this_proj, atomic_object *this_object, int *old_id, atom *new_list, gboolean remove, gboolean passivate)
 remove bond(s) from project
 
G_MODULE_EXPORT void set_reset_transformation (GtkToggleButton *but, gpointer data)
 reset model transformation toggle callback GTK3
 
void to_remove_this_list_of_objects (project *this_proj, atom_search *asearch)
 prepaer to remove a list of object(s) from a project, one object after another.
 
void to_passivate_using_the_objects (project *this_proj, atom_search *asearch)
 prepare passivation (delete of an object, then insert of another one at the same location)
 
tint ulam_coord (glwin *view)
 shift insertion position for object not to have overlapping objects for multiple/repeated insertions
 
void correct_pos_and_get_dim (atomic_object *object, gboolean adjust)
 get the barycenter of the atomic coordinates of an object
 
atomic_objectduplicate_atomic_object (atomic_object *old_obj)
 duplicate an insert object
 
atomic_objectcreate_object_from_species (project *this_proj, int sid, atom_search *remove)
 create object from all atom(s) of the same chemical species
 
void reconstruct_bonds (project *this_proj, int ifcl, int *bcid)
 reconstruct the project bond(s)/clone(s) lists after reconstruction using PBC
 
void reconstruct_coordinates_for_object (project *this_proj, atomic_object *this_object, gboolean upcoord)
 reconstruct object atomic coordinates using PBC
 
atomic_objectcreate_object_from_selection (project *this_proj)
 create object from atom selection
 
atomic_objectcreate_object_from_atom_coordination (project *this_proj, int coord, int aid, atom_search *remove)
 create object from an atom and its nearest neighbors
 
atomic_objectcreate_object_from_overall_coordination (project *this_proj, int coord, int aid, atom_search *remove)
 create object from all the atom(s) that have the same exact coordination than the target atom
 
atomic_objectcreate_object_from_frag_mol (project *this_proj, int coord, int geo, atom_search *remove)
 create object from a fragment or a molecule
 
void create_object_from_library (int p)
 create object using the molecular library
 
int create_object_from_open_project (project *this_proj, int p)
 create object from atom(s) of a project opened in the workspace
 
void clean_this_object (int orig, int act, project *this_proj, atom_search *asearch)
 clean object data
 
void to_insert_in_project (int stat, int orig, project *this_proj, atom_search *asearch, gboolean visible)
 to insert object in project
 
int insert_this_project_from_lib (int id, gboolean visible, project *this_proj, atom_search *asearch)
 insert object from the library
 
G_MODULE_EXPORT void set_atoms_to_insert (GtkComboBox *box, gpointer data)
 change the object to insert
 
void clean_other_window_after_edit (project *this_proj)
 update other windows after model edition if required
 
void clean_coord_window (project *this_proj)
 update the environment configuration window after edtion
 
GtkWidget * create_atom_notebook (project *this_proj, GtkWidget *vbox)
 create the model edition notebook
 
double ** save_coordinates (project *this_proj, int status)
 save atomic coordinates
 
void reset_coordinates (project *this_proj, int status)
 reset transformation and restore saved atomic coordinates
 
vec3_t get_bary (project *this_proj, int status)
 get barycenter of atomic coordinates
 
void init_coordinates (project *this_proj, int status, gboolean win, gboolean init)
 preserve atomic coordinates
 
void translate (project *this_proj, int status, int axis, vec3_t trans)
 translate
 
void rotate_quat (project *this_proj, vec4_t q, int status, int axis)
 rotate using quaternion
 
void rotate (project *this_proj, int i, int j, int k, float param)
 rotate
 
void random_move (project *this_proj, atom_search *asearch)
 random move
 
void update_coordinates (project *this_proj, int status, int axis, int action)
 update atomic coordinates on motion
 
G_MODULE_EXPORT void repeat_move (GtkSpinButton *res, gpointer data)
 repeat motion callback
 
G_MODULE_EXPORT gboolean to_set_move (GtkWidget *widg, GdkEventFocus *event, gpointer data)
 
G_MODULE_EXPORT void set_move (GtkEntry *res, gpointer data)
 motion callback - entry
 
void range_has_changed (gpointer data, double v)
 motion
 
void update_range_and_entry (project *this_proj, int i, int j, int k)
 update motion range
 
G_MODULE_EXPORT gboolean scroll_range_move (GtkRange *range, GtkScrollType scroll, gdouble value, gpointer data)
 motion callback - scroll
 
G_MODULE_EXPORT void range_move (GtkRange *range, gpointer data)
 motion callback - range
 
void check_motion_interactors (project *this_proj, atom_search *asearch)
 add motion check button
 
GtkWidget * add_motion_interaction (atom_search *asearch, int axd, project *this_proj)
 add motion interaction widgets
 
void apply_action (project *this_proj, atom_search *asearch)
 apply edition action
 
void clean_all_trees (atom_search *asearch, project *this_proj)
 clean all tree models in the 'model edition' window
 
gboolean do_we_have_objects_in_selection (project *this_proj, atom_search *asearch, gboolean editing)
 check for object(s) in selection to apply action
 
G_MODULE_EXPORT void take_action (GtkButton *but, gpointer data)
 take edition action
 
GtkWidget * action_tab (int aid, project *this_proj)
 create model edtion action tab
 
int find_this_geo_id (int id, coord_info *obj, int *old_z, int old_geo, int old_sp, int new_sp, coord_info *coord, double *new_z)
 if required create a new geometry, stored in coord, for coordination type 'gid' and chemical species 'new_sp', return geometry id
 
void check_coord_modification (project *this_proj, int old_id[], atom *new_list, atomic_object *this_object, gboolean movtion, gboolean passivating)
 
void print_coord_info (project *this_proj, coord_info *coord)
 print coordination info
 
coord_infoduplicate_coord_info (coord_info *old_coord)
 duplicate coordination information data structure
 
void recover_opengl_data (project *this_proj, int nmols, int add, int rem, int *num, int *rec, int ***tmpgeo, gboolean *showfrag)
 recover image pointer data and OpenGL window menu structure
 
chemical_dataduplicate_chemical_data (int spec, chemical_data *chem)
 duplicate chemical data information
 
int find_spec_id (int s, int z, double *list_z)
 find species id based on Z
 
int search_for_new_spec (atom_edition *edit, atomic_object *object)
 search for new chemical species
 
void prepare_atom_edition (gpointer data, gboolean visible)
 prepare atom edition
 
G_MODULE_EXPORT void action_window (GtkWidget *widg, gpointer data)
 open model edition window callback GTK3
 
G_MODULE_EXPORT void close_build (GtkWidget *widg, gpointer data)
 

Variables

int selected_aspec
 
int is_selected
 
insertion_menu mol []
 
atom_searchremove_search
 
gchar * mot [2][2]
 
int being_copied
 
atomic_objectlib_object
 
float limit [2]
 
gchar * action_name [5]
 
gchar * action_atoms [3]
 

Detailed Description

Function declarations for the mode edition window.

Author
Sébastien Le Roux sebas.nosp@m.tien.nosp@m..lero.nosp@m.ux@i.nosp@m.pcms..nosp@m.unis.nosp@m.tra.f.nosp@m.r

Definition in file atom_edit.h.

Macro Definition Documentation

◆ IDCOL

#define IDCOL   0

Definition at line 44 of file atom_edit.h.

◆ TOLAB

#define TOLAB   3

Definition at line 45 of file atom_edit.h.

◆ TOPIC

#define TOPIC   4

Definition at line 46 of file atom_edit.h.

Function Documentation

◆ action_tab()

GtkWidget * action_tab ( int aid,
project * this_proj )
extern

create model edtion action tab

Parameters
aidthe action id
this_projthe target project

Definition at line 281 of file atom_search.c.

◆ action_window()

G_MODULE_EXPORT void action_window ( GtkWidget * widg,
gpointer data )

open model edition window callback GTK3

Parameters
widgthe GtkWidget sending the signal
datathe associated data pointer

Definition at line 535 of file atom_edit.c.

◆ add_bonds_to_list()

void add_bonds_to_list ( int ** new_bond_list,
int nat,
int nbd,
atomic_object * object )
extern

add object bond(s) list to overall bond(s) list

Parameters
new_bond_listthe bond list in the model
natthe number of atom(s) in the model
nbdthe number of bond(s) in the model
objectthe target insert object

Definition at line 81 of file atom_insert.c.

◆ add_bonds_to_project()

void add_bonds_to_project ( project * this_proj,
int removed,
int nbd,
int ** new_bond_list )
extern

add bond list to project bond list

Parameters
this_projthe target project
removedthe number of atom(s) removed
nbdthe number of bond(s) to add
new_bond_listthe bond list to add

Definition at line 53 of file atom_insert.c.

◆ add_motion_interaction()

GtkWidget * add_motion_interaction ( atom_search * asearch,
int axd,
project * this_proj )
extern

add motion interaction widgets

Parameters
asearchthe target atom search
axdtranslation (0) or rotation (1)
this_projthe target project

Definition at line 1230 of file atom_move.c.

◆ adjust_object_to_move()

void adjust_object_to_move ( project * this_proj,
atom_search * asearch,
int mv,
int id )
extern

adjust atom search parameters for motion cases

Parameters
this_projthe target project
asearchthe target atom search
mvmotion id (0 = standard, 1 = random)
idobject id

Definition at line 523 of file w_search.c.

◆ adjust_search_param()

void adjust_search_param ( atom_search * asearch,
project * this_proj,
int a,
int s,
int c,
gboolean status )
extern

adjust parameters for this atom search

Parameters
asearchthe target atom search
this_projthe target project
athe atom id
sthe chemical species, or object id
cthe column id
statusthe new toogle status

Definition at line 1745 of file w_search.c.

◆ advanced_coord_properties()

GtkWidget * advanced_coord_properties ( glwin * view,
int page )
extern

create the environments configuration window

Parameters
viewthe target glwin
pagethe page of the notebook to display

Definition at line 1310 of file w_coord.c.

◆ alloc_chem_data()

chemical_data * alloc_chem_data ( int spec)
extern

allocate chemistry data

Parameters
specthe number of chemical species

Definition at line 186 of file open_p.c.

◆ allocate_todo()

void allocate_todo ( atom_search * asearch,
int tsize )
extern

allocate the selection list data buffer

Parameters
asearchthe target atom search
tsizethe target size

Definition at line 3717 of file w_search.c.

◆ apply_action()

void apply_action ( project * this_proj,
atom_search * asearch )
extern

apply edition action

Parameters
this_projthe target project
asearchthe target atom search

Definition at line 1100 of file atom_action.c.

◆ center_molecule()

void center_molecule ( project * this_proj)
extern

center atomic coordinates around (0,0,0)

Parameters
this_projthe target project

Definition at line 1441 of file glview.c.

◆ check_all_trees()

void check_all_trees ( project * this_proj)
extern

check all search trees

Parameters
this_projthe target project

Definition at line 450 of file w_search.c.

◆ check_coord_modification()

void check_coord_modification ( project * this_proj,
int old_id[],
atom * new_list,
atomic_object * this_object,
gboolean movtion,
gboolean passivating )
extern

◆ check_motion_interactors()

void check_motion_interactors ( project * this_proj,
atom_search * asearch )
extern

add motion check button

Parameters
this_projthe target project
asearchthe target atom search

Definition at line 1160 of file atom_move.c.

◆ clean_all_trees()

void clean_all_trees ( atom_search * asearch,
project * this_proj )
extern

clean all tree models in the 'model edition' window

Parameters
asearchthe target atom search
this_projthe target project

Definition at line 1018 of file atom_action.c.

◆ clean_coord_window()

void clean_coord_window ( project * this_proj)
extern

update the environment configuration window after edtion

Parameters
this_projthe target project

Definition at line 87 of file atom_edit.c.

◆ clean_other_window_after_edit()

void clean_other_window_after_edit ( project * this_proj)
extern

update other windows after model edition if required

Parameters
this_projthe target project

Definition at line 110 of file atom_edit.c.

◆ clean_picked_and_labelled()

void clean_picked_and_labelled ( atom_search * asearch,
gboolean clean_msd )
extern

initialize atom search data buffers

Parameters
asearchthe target atom search
clean_msdclean msd all data (1) or not (0)

Definition at line 3791 of file w_search.c.

◆ clean_this_object()

void clean_this_object ( int orig,
int act,
project * this_proj,
atom_search * asearch )
extern

clean object data

Parameters
orig- (fragmol id/species id +1), -1, or, orgin atom id
actaction in enum 'actions'
this_projthe target project
asearchthe target atom search

Definition at line 1102 of file atom_object.c.

◆ clean_todo()

void clean_todo ( atom_search * asearch)
extern

clean atom search selection list

Parameters
asearchthe target atom search

Definition at line 3730 of file w_search.c.

◆ close_build()

G_MODULE_EXPORT void close_build ( GtkWidget * widg,
gpointer data )

◆ coord_menu()

GtkWidget * coord_menu ( glwin * view)
extern

◆ correct_pos_and_get_dim()

void correct_pos_and_get_dim ( atomic_object * object,
gboolean adjust )
extern

get the barycenter of the atomic coordinates of an object

Parameters
objectthe target insert object
adjustcenter object coordinates or not

Definition at line 104 of file atom_object.c.

◆ create_atom_notebook()

GtkWidget * create_atom_notebook ( project * this_proj,
GtkWidget * vbox )
extern

create the model edition notebook

Parameters
this_projthe target project
vboxthe GtkWidget sending the signal

Definition at line 365 of file atom_edit.c.

◆ create_cell_edition_window()

GtkWidget * create_cell_edition_window ( project * this_proj,
gpointer data )
extern

create the cell editon window

Parameters
this_projthe target project
datathe associated data pointer

Definition at line 182 of file cell_edit.c.

◆ create_object_from_atom_coordination()

atomic_object * create_object_from_atom_coordination ( project * this_proj,
int coord,
int aid,
atom_search * remove )
extern

create object from an atom and its nearest neighbors

Parameters
this_projthe target project
coord0 = total coordination, 1 = partial coordination
aidthe atom id
removeremove search, if any

Definition at line 777 of file atom_object.c.

◆ create_object_from_frag_mol()

atomic_object * create_object_from_frag_mol ( project * this_proj,
int coord,
int geo,
atom_search * remove )
extern

create object from a fragment or a molecule

Parameters
this_projthe target project
coord2 = fragment, 3 = molecule
geofragment or molecule id
removeremove search, if any

Definition at line 928 of file atom_object.c.

◆ create_object_from_library()

void create_object_from_library ( int p)
extern

create object using the molecular library

Parameters
pthe project id of the library molecule in the workspace

Definition at line 421 of file atom_object.c.

◆ create_object_from_open_project()

int create_object_from_open_project ( project * this_proj,
int p )
extern

create object from atom(s) of a project opened in the workspace

Parameters
this_projthe target project
pthe project id of the project that contains the atom(s) to copy

Definition at line 1015 of file atom_object.c.

◆ create_object_from_overall_coordination()

atomic_object * create_object_from_overall_coordination ( project * this_proj,
int coord,
int aid,
atom_search * remove )
extern

create object from all the atom(s) that have the same exact coordination than the target atom

Parameters
this_projthe target project
coord0 = total coordination, 1 = partial coordination
aidtarget atom id
removeremove search, if any

Definition at line 848 of file atom_object.c.

◆ create_object_from_selection()

atomic_object * create_object_from_selection ( project * this_proj)
extern

create object from atom selection

Parameters
this_projthe target project

Definition at line 724 of file atom_object.c.

◆ create_object_from_species()

atomic_object * create_object_from_species ( project * this_proj,
int sid,
atom_search * remove )
extern

create object from all atom(s) of the same chemical species

Parameters
this_projthe target project
sidthe species id
removeremove search, if any

Definition at line 683 of file atom_object.c.

◆ do_we_have_objects_in_selection()

gboolean do_we_have_objects_in_selection ( project * this_proj,
atom_search * asearch,
gboolean editing )
extern

check for object(s) in selection to apply action

Parameters
this_projthe target project
asearchthe target atom search
editingactually going for action (1) or simply counting elements (0)

Definition at line 1369 of file atom_action.c.

◆ duplicate_atomic_object()

atomic_object * duplicate_atomic_object ( atomic_object * old_obj)
extern

duplicate an insert object

Parameters
old_objthe insert object to duplicate

Definition at line 381 of file atom_object.c.

◆ duplicate_chemical_data()

chemical_data * duplicate_chemical_data ( int spec,
chemical_data * chem )
extern

duplicate chemical data information

Parameters
specthe number of chemical species
chemthe chemical data to duplicate

Definition at line 50 of file atom_species.c.

◆ duplicate_coord_info()

coord_info * duplicate_coord_info ( coord_info * old_coord)
extern

duplicate coordination information data structure

Parameters
old_coordthe coordination info to duplicate

Definition at line 190 of file atom_coord.c.

◆ find_spec_id()

int find_spec_id ( int s,
int z,
double * list_z )
extern

find species id based on Z

Parameters
sthe number of chemical species
zthe target Z
list_zthe list of Z values

Definition at line 83 of file atom_species.c.

◆ find_this_geo_id()

int find_this_geo_id ( int gid,
coord_info * obj,
int * old_z,
int old_geo,
int old_sp,
int new_sp,
coord_info * coord,
double * new_z )
extern

if required create a new geometry, stored in coord, for coordination type 'gid' and chemical species 'new_sp', return geometry id

Parameters
gidthe new coordination type (0 = total, 1 = partial)
objthe new coordination info to update
old_zold Z list
old_geothe old coordination id for this coordination type
old_spthe old chemical species id
new_spthe new chemical species id
coordthe old coordination info
new_znew Z list

Definition at line 209 of file atom_geo.c.

◆ free_glwin_spec_data()

void free_glwin_spec_data ( project * this_proj,
int spec )
extern

free the memory used by the chemical species related data in a glwin data structure

Parameters
this_projthe target project
specthe number of chemical species

Definition at line 1543 of file glview.c.

◆ get_arc_ball_vector()

vec3_t get_arc_ball_vector ( glwin * view,
int x,
int y )
extern

Definition at line 46 of file arcball.c.

◆ get_asearch_filter()

int get_asearch_filter ( atom_search * asearch)
extern

get asearch filter

Parameters
asearchthe target atom search

Definition at line 170 of file w_search.c.

◆ get_asearch_num_objects()

int get_asearch_num_objects ( atom_search * asearch)
extern

the number of type of object(s) in this atom search

Parameters
asearchthe target atom search

Definition at line 125 of file w_search.c.

◆ get_asearch_object()

int get_asearch_object ( atom_search * asearch)
extern

get the number of object(s) in this atom search

Parameters
asearchthe target atom search

Definition at line 149 of file w_search.c.

◆ get_atom_id_from_periodic_table()

int get_atom_id_from_periodic_table ( atom_search * asearch)
extern

get atom Z from selection in the periodic table

Parameters
asearchtarget atom search, if any

Definition at line 672 of file w_periodic.c.

◆ get_atomic_object_by_origin()

atomic_object * get_atomic_object_by_origin ( atomic_object * first,
int oid,
int aid )
extern

get insert object from a list by id

Parameters
firstthe first insert object of the list
oidobject origin id (type of origin)
aidobject id

Definition at line 474 of file w_search.c.

◆ get_bary()

vec3_t get_bary ( project * this_proj,
int status )
extern

get barycenter of atomic coordinates

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)

Definition at line 170 of file atom_move.c.

◆ get_selected_object_id()

int get_selected_object_id ( gboolean visible,
int p,
gchar * str,
atom_search * asearch )
extern

get the id of the object selected (in contextual menu, or in combo box)

Parameters
visibleis the 'model edition' window visible (1/0)
pthe target project id
strthe string that describing the selection
asearchthe target atom search

Definition at line 2385 of file w_search.c.

◆ get_todo_size()

int get_todo_size ( atom_search * asearch)
extern

get the size of the atom search selection list

Parameters
asearchthe target atom search

Definition at line 3681 of file w_search.c.

◆ glwin_init_spec_data()

void glwin_init_spec_data ( project * this_proj,
int nspec )
extern

initialize the glwin chemical species related pointers

Parameters
this_projthe target project
nspecthe number of chemical species

Definition at line 1588 of file glview.c.

◆ image_init_spec_data()

void image_init_spec_data ( image * img,
project * this_proj,
int nsp )
extern

initialize the chemical species related pointers in an image data structure

Parameters
imgthe target image
this_projthe target project
nspthe number of chemical species

Definition at line 1190 of file glview.c.

◆ in_bond()

gboolean in_bond ( int at,
int bd[2] )
extern

is atom at in bond bd

Parameters
atthe target atom id
bdthe bond atoms id

Definition at line 892 of file dlp_init.c.

◆ init_coordinates()

void init_coordinates ( project * this_proj,
int status,
gboolean win,
gboolean init )
extern

preserve atomic coordinates

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)
winis the model edition window opened ?
initpreserve atomic coordinates

Definition at line 197 of file atom_move.c.

◆ insert_this_project_from_lib()

int insert_this_project_from_lib ( int id,
gboolean visible,
project * this_proj,
atom_search * asearch )
extern

insert object from the library

Parameters
idobject id to insert
visibleis the 'model edition window' visible
this_projthe target project
asearchthe target atom search

Definition at line 1158 of file w_library.c.

◆ motion_to_zero()

void motion_to_zero ( atom_search * asearch)
extern

reset motion to 0.0

Parameters
asearchthe target atom search

Definition at line 493 of file w_search.c.

◆ prepare_atom_edition()

void prepare_atom_edition ( gpointer data,
gboolean visible )
extern

prepare atom edition

Parameters
datathe associated data pointer
visibleis the window visible (1/0)

Definition at line 459 of file atom_edit.c.

◆ prepare_opengl_menu_bar()

void prepare_opengl_menu_bar ( glwin * view)
extern

update the OpenGL window menu bar

Parameters
viewthe target glwin

Definition at line 600 of file glwindow.c.

◆ print_coord_info()

void print_coord_info ( project * this_proj,
coord_info * coord )
extern

print coordination info

Parameters
this_projthe target project
coordthe target coordination info

Definition at line 87 of file atom_coord.c.

◆ random_move()

void random_move ( project * this_proj,
atom_search * asearch )
extern

random move

Parameters
this_projthe target project
asearchthe target atom search

Definition at line 657 of file atom_move.c.

◆ range_has_changed()

void range_has_changed ( gpointer data,
double v )
extern

motion

Parameters
datathe associated data pointer
vthe value for motion

Definition at line 1016 of file atom_move.c.

◆ range_move()

G_MODULE_EXPORT void range_move ( GtkRange * range,
gpointer data )
extern

motion callback - range

Parameters
rangethe GtkRange sending the signal
datathe associated data pointer

Definition at line 1061 of file atom_move.c.

◆ re_populate_tree_search()

void re_populate_tree_search ( atom_search * asearch)
extern

re populate search tree after atom action if >= 10 000 atoms

Parameters
asearchthe target atom search

Definition at line 1608 of file w_search.c.

◆ reconstruct_bonds()

void reconstruct_bonds ( project * this_proj,
int ifcl,
int * bcid )
extern

reconstruct the project bond(s)/clone(s) lists after reconstruction using PBC

Parameters
this_projthe target project
ifclnumber of clone bond(s) removed
bcidthe removed clone bond(s) atoms id

Definition at line 180 of file atom_object.c.

◆ reconstruct_coordinates_for_object()

void reconstruct_coordinates_for_object ( project * this_proj,
atomic_object * this_object,
gboolean upcoord )
extern

reconstruct object atomic coordinates using PBC

Parameters
this_objectthe target project
this_projthe target insert object
upcoordreconstruction of atomic coordinates using PBC ?

Definition at line 263 of file atom_object.c.

◆ recover_opengl_data()

void recover_opengl_data ( project * this_proj,
int nmols,
int add,
int rem,
int * num,
int * rec,
int *** tmpgeo,
gboolean * showfrag )
extern

recover image pointer data and OpenGL window menu structure

Parameters
this_projthe target project
nmolsthe number of molecules
addthe number of new chemical species
remthe number of chemical species to remove
numthe number of atom(s) by chemical species
recthe lsit of removed chemical species, if any
tmpgeothe new number of coordination [c] by chemical species [s] 'coorrd -> ntg[c][s]'
showfragthe saved fragment(s) show information

Definition at line 549 of file atom_coord.c.

◆ remove_bonds_from_project()

gboolean * remove_bonds_from_project ( project * this_proj,
atomic_object * this_object,
int * old_id,
atom * new_list,
gboolean remove,
gboolean passivate )
extern

remove bond(s) from project

Parameters
this_projthe target project
this_objectthe target insert object, if any
old_idthe atom(s) id list
new_listthe new atom list
removeremove (1) or motion (0) action
passivatepassivate (1) or not (0)

Definition at line 224 of file atom_remove.c.

◆ repeat_move()

G_MODULE_EXPORT void repeat_move ( GtkSpinButton * res,
gpointer data )
extern

repeat motion callback

Parameters
resthe GtkSpinButton sending the signal
datathe associated data pointer

Definition at line 963 of file atom_move.c.

◆ replace_combo_tree()

GtkTreeModel * replace_combo_tree ( gboolean insert,
int proj )
extern

replace combo box in the tree view

Parameters
insertadd 'Select ...' combo box item
projtarget crystal builder project id

Definition at line 2615 of file w_search.c.

◆ reset_coordinates()

void reset_coordinates ( project * this_proj,
int status )
extern

reset transformation and restore saved atomic coordinates

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)

Definition at line 143 of file atom_move.c.

◆ rotate()

void rotate ( project * this_proj,
int status,
int axis,
int raxis,
float param )
extern

rotate

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)
axis0 = model, 1 = eye
raxisrotation axis 0 = x, 1 = y, 2 = z
paramrotation angle

Definition at line 309 of file atom_move.c.

◆ rotate_quat()

void rotate_quat ( project * this_proj,
vec4_t q,
int status,
int axis )
extern

rotate using quaternion

Parameters
this_projthe target project
qrotation quaternion
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)
axis0 = model, 1 = eye

Definition at line 269 of file atom_move.c.

◆ save_coordinates()

double ** save_coordinates ( project * this_proj,
int status )
extern

save atomic coordinates

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)

Definition at line 91 of file atom_move.c.

◆ save_rotation_quaternion()

void save_rotation_quaternion ( glwin * view)
extern

save the rotation quaternion of the last image

Parameters
viewthe target glwin

Definition at line 543 of file glview.c.

◆ scroll_range_move()

G_MODULE_EXPORT gboolean scroll_range_move ( GtkRange * range,
GtkScrollType scroll,
gdouble value,
gpointer data )
extern

motion callback - scroll

Parameters
rangethe GtkRange sending the signal
scrollthe associated scroll type
valuethe range value
datathe associated data pointer

Definition at line 1076 of file atom_move.c.

◆ search_for_new_spec()

int search_for_new_spec ( atom_edition * edit,
atomic_object * object )
extern

search for new chemical species

Parameters
editthe edition window
objectthe target insert object

Definition at line 107 of file atom_species.c.

◆ selection_tab()

GtkWidget * selection_tab ( atom_search * asearch,
int nats )
extern

create the search widget

Parameters
asearchthe target atom search
natsthe total number of atoms

Definition at line 4130 of file w_search.c.

◆ set_atoms_to_insert()

G_MODULE_EXPORT void set_atoms_to_insert ( GtkComboBox * box,
gpointer data )
extern

change the object to insert

Parameters
boxthe GtkComboBox sending the signal
datathe associated data pointer

Definition at line 118 of file atom_insert.c.

◆ set_filter_changed()

G_MODULE_EXPORT void set_filter_changed ( GtkComboBox * box,
gpointer data )
extern

change the search filter

Parameters
boxthe GtkComboBox sending the signal
datathe associated data pointer

Definition at line 3858 of file w_search.c.

◆ set_mode()

G_MODULE_EXPORT void set_mode ( GtkWidget * widg,
gpointer data )
extern

set mouse mode callback

Parameters
widgthe GtkWidget sending the signal
datathe associated data pointer

Definition at line 172 of file m_tools.c.

◆ set_move()

G_MODULE_EXPORT void set_move ( GtkEntry * res,
gpointer data )
extern

motion callback - entry

Parameters
resthe GtkEntry sending the signal
datathe associated data pointer

Definition at line 1046 of file atom_move.c.

◆ set_object_changed()

G_MODULE_EXPORT void set_object_changed ( GtkComboBox * box,
gpointer data )
extern

change the search object

Parameters
boxthe GtkComboBox sending the signal
datathe associated data pointer

Definition at line 3884 of file w_search.c.

◆ set_reset_transformation()

G_MODULE_EXPORT void set_reset_transformation ( GtkToggleButton * but,
gpointer data )
extern

reset model transformation toggle callback GTK3

Parameters
butthe GtkToggleButton sending the signal
datathe associated data pointer

Definition at line 277 of file atom_edit.c.

◆ set_search_mode()

G_MODULE_EXPORT void set_search_mode ( GtkComboBox * box,
gpointer data )
extern

change search mode

Parameters
boxthe GtkComboBox sending the signal
datathe associated data pointer

Definition at line 3983 of file w_search.c.

◆ set_show_axis_toggle()

G_MODULE_EXPORT void set_show_axis_toggle ( GtkToggleButton * but,
gpointer data )
extern

show / hide axis callback GTK3

Parameters
butthe GtkToggleButton sending the signal
datathe associated data pointer

Definition at line 193 of file w_axis.c.

◆ set_spec_changed()

G_MODULE_EXPORT void set_spec_changed ( GtkComboBox * box,
gpointer data )
extern

change the search chemical species

Parameters
boxthe GtkComboBox sending the signal
datathe associated data pointer

Definition at line 3829 of file w_search.c.

◆ take_action()

G_MODULE_EXPORT void take_action ( GtkButton * but,
gpointer data )
extern

take edition action

Parameters
butthe GtkButton sending the signal
datathe associated data pointer

Definition at line 2011 of file atom_action.c.

◆ test_vol()

gboolean test_vol ( double box[2][3],
double vect[3][3] )
extern

is the cell properly described to use PBC ?

Parameters
boxlattice parameters
vectlattice vectors

Definition at line 498 of file edit_menu.c.

◆ to_insert_in_project()

void to_insert_in_project ( int stat,
int orig,
project * this_proj,
atom_search * asearch,
gboolean visible )
extern

to insert object in project

Parameters
statin enum object_types
orig- (fragmol id/species id +1), -1, or, orgin atom id
this_projthe target project
asearchthe target atom search
visibleis the model edition window visible ?

Definition at line 1214 of file atom_object.c.

◆ to_passivate_using_the_objects()

void to_passivate_using_the_objects ( project * this_proj,
atom_search * asearch )
extern

prepare passivation (delete of an object, then insert of another one at the same location)

Parameters
this_projthe target project
asearchthe target atom search

Definition at line 650 of file atom_remove.c.

◆ to_remove_this_list_of_objects()

void to_remove_this_list_of_objects ( project * this_proj,
atom_search * asearch )
extern

prepaer to remove a list of object(s) from a project, one object after another.

Parameters
this_projthe target project
asearchthe target atom search

Definition at line 580 of file atom_remove.c.

◆ to_set_move()

G_MODULE_EXPORT gboolean to_set_move ( GtkWidget * widg,
GdkEventFocus * event,
gpointer data )
extern

◆ translate()

void translate ( project * this_proj,
int status,
int axis,
vec3_t trans )
extern

translate

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)
axis0 = model, 1 = eye
transtranslation vector

Definition at line 230 of file atom_move.c.

◆ ulam_coord()

tint ulam_coord ( glwin * view)
extern

shift insertion position for object not to have overlapping objects for multiple/repeated insertions

Parameters
viewthe target glwin

Definition at line 354 of file atom_object.c.

◆ update_coordinates()

void update_coordinates ( project * this_proj,
int status,
int axis,
int action )
extern

update atomic coordinates on motion

Parameters
this_projthe target project
statusselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)
axisaxis, 0 = model, 1 = eye
action0 = translation, 1 = rotation

Definition at line 939 of file atom_move.c.

◆ update_range_and_entry()

void update_range_and_entry ( project * this_proj,
int i,
int j,
int k )
extern

update motion range

Parameters
this_projthe target project
iselection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s)
jaxis, 0 = model, 1 = eye
kparameter to update: x, y, z or alpha, beta, gamma

Definition at line 979 of file atom_move.c.

◆ update_search_tree()

void update_search_tree ( atom_search * asearch)
extern

update search tree

Parameters
asearchthe target atom search

Definition at line 1294 of file w_search.c.

◆ window_spinner()

G_MODULE_EXPORT void window_spinner ( GtkWidget * widg,
gpointer data )
extern

create the spin window callback

Parameters
widgthe GtkWidget sending the signal
datathe associated data pointer

Definition at line 158 of file w_spiner.c.

Variable Documentation

◆ action_atoms

gchar* action_atoms[3]
extern

Definition at line 61 of file atom_edit.c.

◆ action_name

gchar* action_name[5]
extern

Definition at line 60 of file atom_edit.c.

◆ being_copied

int being_copied
extern

Definition at line 371 of file atom_object.c.

◆ is_selected

int is_selected
extern

Definition at line 182 of file popup.c.

◆ lib_object

atomic_object* lib_object
extern

Definition at line 372 of file atom_object.c.

◆ limit

float limit[2]
extern

Definition at line 59 of file atom_edit.c.

◆ mol

insertion_menu mol[]
extern

Definition at line 193 of file w_library.c.

◆ mot

gchar* mot[2][2]
extern

Definition at line 3293 of file popup.c.

◆ remove_search

atom_search* remove_search
extern

Definition at line 175 of file popup.c.

◆ selected_aspec

int selected_aspec
extern

Definition at line 180 of file popup.c.