62 gboolean ** show = g_malloc (2*
sizeof*show);
65 show[i] =
allocbool(this_proj -> coord -> totcoord[i]);
66 for (j=0; j<this_proj -> coord -> totcoord[i]; j++)
68 show[i][j] = this_proj -> modelgl -> anim -> last ->
img -> show_coord[i][j];
84 gboolean ** show = g_malloc (2*
sizeof*show);
87 show[i] =
allocbool(this_proj -> coord -> totcoord[i]);
88 for (j=0; j<this_proj -> coord -> totcoord[i]; j++)
90 show[i][j] = this_proj -> modelgl -> anim -> last ->
img -> show_poly[i][j];
117 gtk_check_menu_item_set_active ((GtkCheckMenuItem *)
active_glwin -> ogl_geom[0][i][j], cshow[i][j]);
125 gtk_check_menu_item_set_active ((GtkCheckMenuItem *)
active_glwin -> ogl_poly[0][i][j], pshow[i][j]);
144 if (this_proj -> modelgl -> record)
151 for (j=0; j<3; j++) i += this_proj -> modelgl -> anim -> last ->
img -> extra_cell[j];
153 if (this_proj -> modelgl -> cell_win)
172 gchar * txta =
"You are about to change the periodicity of the 3D model,";
173 gchar * txtb =
"this will affect the entire molecular dynamics trajectory,";
174 gchar * txtc =
"\tand the action is irreversible, proceed anyway ?";
178 str = g_strdup_printf (
"%s\n%s\n%s", txta, txtb, txtc);
182 str = g_strdup_printf (
"%s\n%s", txta, txtc);
184 if (
ask_yes_no (
"Create a super-cell ?", str, GTK_MESSAGE_WARNING, view -> win))
188 image * last = view -> anim -> last ->
img;
214 active_box -> vect[i][j] *= (last -> extra_cell[i] + 1);
216 l *= (last -> extra_cell[i] + 1);
218 last -> extra_cell[i] = 0;
223 gtk_spin_button_set_value (GTK_SPIN_BUTTON(
active_glwin -> cell_win -> ax_cell[i]), 1.0);
260 view -> rings = FALSE;
282 view -> create_shaders[
PICKS] = TRUE;
283 view -> create_shaders[
MDBOX] = TRUE;
284 view -> create_shaders[
LABEL] = TRUE;
285 view -> create_shaders[
MEASU] = TRUE;
289 show_warning (
"Something went wrong, the 3D model was not updated", view -> win);
298 update_menu_bar (view);
312G_MODULE_EXPORT
void super_cell (GSimpleAction *
action, GVariant * parameter, gpointer data)
322G_MODULE_EXPORT
void super_cell (GtkWidget * widg, gpointer data)
void clean_other_window_after_edit(project *this_proj)
update other windows after model edition if required
Function declarations for the mode edition window.
void center_molecule(project *this_proj)
center atomic coordinates around (0,0,0)
int add_cells_(int *, int *, int *)
void restore_ogl_selection(glwin *view)
restore a saved atom selection
void preserve_ogl_selection(glwin *view)
copy the atom selection, so that it can be re-used once the input assistant is closed.
void fill_tool_model()
fill the tool window tree model
Function declarations for the cell edition window.
void clean_coord_window(project *this_proj)
update the environment configuration window after edtion
GtkWidget * cell_tab(int i, project *this_proj)
create the 'i'th cell tab
G_MODULE_EXPORT void super_cell(GtkWidget *widg, gpointer data)
create super cell menu callback GTK3
void super_celling(glwin *view)
create super cell
gboolean ** duplicate_poly_info(project *this_proj)
duplicate polyhedra show status
void sens_superbut(project *this_proj)
adjust 'Create super-cell' button sensitivity
gboolean ** duplicate_geom_info(project *this_proj)
duplicate coordinations show status
void restore_coord_and_poly_info(project *proj, gboolean **cshow, gboolean **pshow)
restore show status after
G_MODULE_EXPORT void super_cell_but(GtkButton *but, gpointer data)
create super cell callback
integer function chains()
gboolean * allocbool(int val)
allocate a gboolean * pointer
G_MODULE_EXPORT void show_hide_poly(GtkWidget *widg, gpointer data)
show / hide polyhedra callback - GTK3
void update_chains_menus(glwin *view)
#define ATOM_LIMIT
Atom number limit to compute fragment(s) and molecule(s) analysis automatically.
coord_info * active_coord
G_MODULE_EXPORT void show_hide_coord(GtkWidget *widg, gpointer data)
show/hide coordination callback GTK3
chemical_data * active_chem
void clean_rings_data(int rid, glwin *view)
clean a ring type data for a glview
G_MODULE_EXPORT void on_calc_bonds_released(GtkWidget *widg, gpointer data)
compute bonding properties
void clean_chains_data(glwin *view)
cleaning the OpenGL data related to chain statistics
void widget_set_sensitive(GtkWidget *widg, gboolean sensitive)
Set sensitivity for a GtkWidget, ensuring it is a GtkWidget.
void update_rings_menus(glwin *view)
project * get_project_by_id(int p)
get project pointer using id number
void update(glwin *view)
update the rendering of the OpenGL window
void re_create_md_shaders(int nshaders, int shaders[nshaders], project *this_proj)
re-initialize some MD dependent OpenGL shaders
shaders
The different types of shaders in the atomes program.
void init_curves_and_calc(project *this_proj)
for a project reset analysis, curves, data to not performed
void show_warning(char *warning, GtkWidget *win)
show warning
gboolean ask_yes_no(gchar *title, gchar *text, int type, GtkWidget *widg)
ask yes or no for something: prepare dialog
void active_project_changed(int id)
change the active project