1 /* MInterfaceGene.c */
2 /**********************************************************************************************************
3 Copyright (c) 2002-2013 Abdul-Rahman Allouche. All rights reserved
4 
5 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
6 documentation files (the Gabedit), to deal in the Software without restriction, including without limitation
7 the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
8 and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
9 
10   The above copyright notice and this permission notice shall be included in all copies or substantial portions
11   of the Software.
12 
13 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
14 TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
15 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
16 CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
17 DEALINGS IN THE SOFTWARE.
18 ************************************************************************************************************/
19 
20 
21 #include "../../Config.h"
22 #include <stdio.h>
23 #include <stdlib.h>
24 #include <string.h>
25 #include <gtk/gtk.h>
26 
27 #include "../Common/Global.h"
28 #include "MInterfaceGene.h"
29 #include "../Utils/UtilsInterface.h"
30 
31 static  GtkWidget *entryC;
32 static  GtkWidget *entryX;
33 static  GtkWidget *entryY;
34 static  GtkWidget *entryZ;
35 
36   GtkWidget *checkbutton[32];
37 
38   GtkWidget *ButtonRad1;
39   GtkWidget *ButtonRad2;
40 
41   GtkWidget *Frame;
42   GtkWidget *LabelOnglet;
43   GtkWidget *LabelMenu;
44   GtkWidget *window1;
45   GtkWidget *label1;
46   GtkWidget *entry20;
47   GtkWidget *entry21;
48   GtkWidget *frame1;
49   GtkWidget *vboxo;
50   GtkWidget *vbox1;
51   GtkWidget *hbox1;
52   GtkWidget *entry1;
53   GtkWidget *entry2;
54   GtkWidget *entry3;
55   GtkWidget *entry4;
56   GtkWidget *label5;
57   GtkWidget *entry5;
58   GtkWidget *entry6;
59   GtkWidget *entry7;
60   GtkWidget *vbox2;
61   GtkWidget *entry8;
62   GtkWidget *hbox5;
63   GtkWidget *entry9;
64   GtkWidget *entry10;
65   GtkWidget *entry11;
66   GtkWidget *entry12;
67   GtkWidget *entry13;
68   GtkWidget *entry14;
69 
70 /************************************************************************************************************/
Set_Entry1(GtkWidget * b,gpointer d)71 static void  Set_Entry1(GtkWidget *b,gpointer d)
72 {
73   if(entryC != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryC),TRUE);
74   if(entryX != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryX),FALSE);
75   if(entryY != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryY),FALSE);
76   if(entryZ != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryZ),FALSE);
77 }
78 /************************************************************************************************************/
Set_Entry2(GtkWidget * b,gpointer d)79 static void  Set_Entry2(GtkWidget *b,gpointer d)
80 {
81   if(entryC != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryC),FALSE);
82   if(entryX != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryX),TRUE);
83   if(entryY != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryY),TRUE);
84   if(entryZ != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryZ),TRUE);
85 }
86 /************************************************************************************************************/
87 /*
88 static void add_separator_to_hbox(GtkWidget *win,GtkWidget *hbox)
89 {
90   GtkWidget *vseparator;
91   vseparator = gtk_vseparator_new ();
92   gtk_widget_show (vseparator);
93   gtk_box_pack_start (GTK_BOX (hbox), vseparator, FALSE, FALSE, 10);
94 }
95 */
96 /************************************************************************************************************/
add_separator_to_vbox(GtkWidget * win,GtkWidget * vbox)97 static void add_separator_to_vbox(GtkWidget *win,GtkWidget *vbox)
98 {
99   GtkWidget *hseparator;
100   hseparator = gtk_hseparator_new ();
101   gtk_widget_show (hseparator);
102   gtk_box_pack_start (GTK_BOX (vbox), hseparator, FALSE, FALSE, 0);
103 }
104 /************************************************************************************************************/
create_label_and_entry_in_hbox_false(GtkWidget * win,GtkWidget * hbox,gchar * tlabel,gchar * tset,gint len)105 static GtkWidget *create_label_and_entry_in_hbox_false(GtkWidget *win,GtkWidget *hbox,gchar *tlabel,gchar *tset,gint len)
106 {
107   GtkWidget *entry;
108   GtkWidget *label;
109 
110   label = gtk_label_new (tlabel);
111   gtk_widget_set_size_request(GTK_WIDGET(label),len,-1);
112   gtk_widget_show (label);
113   gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
114 
115   entry = gtk_entry_new ();
116   gtk_entry_set_text(GTK_ENTRY(entry),tset);
117   gtk_widget_set_size_request(GTK_WIDGET(entry),60,-1);
118   gtk_widget_show (entry);
119   gtk_box_pack_start (GTK_BOX (hbox), entry, FALSE, TRUE, 0);
120 
121   return entry;
122 }
123 /************************************************************************************************************/
create_label_and_entry_in_hbox(GtkWidget * win,GtkWidget * hbox,gchar * tlabel,gchar * tset)124 static GtkWidget *create_label_and_entry_in_hbox(GtkWidget *win,GtkWidget *hbox,gchar *tlabel,gchar *tset)
125 {
126   GtkWidget *entry;
127   GtkWidget *label;
128 
129   label = gtk_label_new (tlabel);
130   gtk_widget_show (label);
131   gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, FALSE, 0);
132 
133   entry = gtk_entry_new ();
134   gtk_entry_set_text(GTK_ENTRY(entry),tset);
135   gtk_widget_show (entry);
136   gtk_box_pack_start (GTK_BOX (hbox), entry, FALSE, TRUE, 0);
137 
138   return entry;
139 }
140 /************************************************************************************************************/
create_hbox_in_Vbox(GtkWidget * win,GtkWidget * vbox)141 static GtkWidget *create_hbox_in_Vbox(GtkWidget *win,GtkWidget *vbox)
142 {
143   GtkWidget *hbox;
144   hbox = gtk_hbox_new (FALSE, 0);
145   gtk_widget_show (hbox);
146   gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
147 
148   return hbox;
149 }
150 /************************************************************************************************************/
create_hboxlabelentry(GtkWidget * win,GtkWidget * vbox,gchar * tlabel,gchar * tset)151 static GtkWidget *create_hboxlabelentry(GtkWidget *win,GtkWidget *vbox,gchar *tlabel,gchar *tset)
152 {
153   GtkWidget *hbox;
154   GtkWidget *entry;
155   hbox = create_hbox_in_Vbox(win,vbox);
156   entry = create_label_and_entry_in_hbox(win,hbox,tlabel,tset);
157   return entry;
158 }
159 /************************************************************************************************************/
create_epilogue(GtkWidget * Frame)160 static void  create_epilogue(GtkWidget *Frame)
161 {
162   GtkWidget *label1;
163   GtkWidget *frame1;
164   GtkWidget *vboxo;
165   GtkWidget *vbox1;
166   GtkWidget *hbox1;
167   GtkWidget *label5;
168   GtkWidget *window1;
169   GtkWidget *hbox5;
170   window1 = Frame;
171   vbox1 = gtk_vbox_new (FALSE, 0);
172   gtk_widget_show (vbox1);
173   gtk_container_add (GTK_CONTAINER (window1), vbox1);
174 
175   hbox1 = gtk_hbox_new (FALSE, 10);
176   gtk_widget_show (hbox1);
177   gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
178 
179   label1 = gtk_label_new ("Title :");
180   gtk_widget_show (label1);
181   gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0);
182 
183   entry20 = gtk_entry_new ();
184   gtk_widget_show (entry20);
185   gtk_box_pack_start (GTK_BOX (hbox1), entry20, TRUE, TRUE, 0);
186   gtk_entry_set_text(GTK_ENTRY(entry20),_("Input file generated by gabedit"));
187 
188   add_separator_to_vbox( window1,vbox1);
189 
190   hbox5 = gtk_hbox_new (FALSE, 0);
191   gtk_widget_show (hbox5);
192   gtk_box_pack_start (GTK_BOX (vbox1), hbox5, FALSE, FALSE, 0);
193   label5 = gtk_label_new (_("Memory size(in words) : "));
194   gtk_widget_show (label5);
195   gtk_box_pack_start (GTK_BOX (hbox5), label5, FALSE, FALSE, 0);
196 
197   entry21 = gtk_entry_new ();
198   gtk_entry_set_text(GTK_ENTRY(entry21),"4000000");
199   gtk_widget_show (entry21);
200   gtk_box_pack_start (GTK_BOX (hbox5), entry21, FALSE, TRUE, 0);
201 
202   add_separator_to_vbox( window1,vbox1);
203 
204 
205   window1 = vbox1;
206   frame1 = gtk_frame_new (_("Global Thresholds "));
207   gtk_widget_show (frame1);
208   gtk_container_add (GTK_CONTAINER (window1), frame1);
209   gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5);
210 
211   hbox1 = gtk_hbox_new (FALSE, 0);
212   gtk_widget_show (hbox1);
213   gtk_container_add (GTK_CONTAINER (frame1), hbox1);
214 
215   vboxo = vbox1;
216   vbox1 = gtk_vbox_new (FALSE, 0);
217   gtk_widget_show (vbox1);
218   gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
219 
220   entry1=create_hboxlabelentry(window1,vbox1,"Zero    : ","1.d-12");
221   entry2=create_hboxlabelentry(window1,vbox1,"Oneint  : ","1.d-12");
222   entry3=create_hboxlabelentry(window1,vbox1,"Twoint  : ","1.d-12");
223   entry4=create_hboxlabelentry(window1,vbox1,"Prefac  : ","1.d-14");
224   entry5=create_hboxlabelentry(window1,vbox1,"Locali  : ","1.d-8");
225 
226   vbox1 = gtk_vbox_new (FALSE, 0);
227   gtk_widget_show (vbox1);
228   gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
229   entry6=create_hboxlabelentry(window1,vbox1,"  Eorder  : ","1.d-4");
230   entry7=create_hboxlabelentry(window1,vbox1,"  Energy  : ","1.d-6");
231   entry8=create_hboxlabelentry(window1,vbox1,"  Gradiant: ","1.d-2");
232   entry9=create_hboxlabelentry(window1,vbox1,"  Step    : ","1.d-3");
233   entry10=create_hboxlabelentry(window1,vbox1,"  Orbital : ","1.d-5");
234 
235   vbox1 = gtk_vbox_new (FALSE, 0);
236   gtk_widget_show (vbox1);
237   gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
238 
239   entry11=create_hboxlabelentry(window1,vbox1,"  Civec   : ","1.d-5");
240   entry12=create_hboxlabelentry(window1,vbox1,"  Coeff   : ","1.d-4");
241   entry13=create_hboxlabelentry(window1,vbox1,"  Printci : ","0.05");
242   entry14=create_hboxlabelentry(window1,vbox1,"  Punchci : ","99");
243 
244 }
245 /************************************************************************************************************/
create_gprint(GtkWidget * Frame)246 static void  create_gprint(GtkWidget *Frame)
247 {
248   guint i;
249   GtkWidget *frame1;
250   GtkWidget *vbox1;
251   GtkWidget *vbox2;
252   GtkWidget *hbox1;
253   GtkWidget *window1;
254   gchar *tGP1[7]={
255   		_("Print basis information "),
256   		_("Print CI vector in MCSCF"),
257   		_("Print reference CSFs and their coefficients in CI "),
258   		_("Print detailed I/O information "),
259   		_("Print orbitals in SCF and MCSCF "),
260   		_("Print bond angle information"),
261   		_("Print information for singles in CI, CCSD ")
262   		};
263   gchar *tGP2[7]={
264 		_("Print bond distances "),
265 		_("Print p-space configurations"),
266 		_("Print variables each time they are set or changed "),
267 		_("Print information for pairs in CI, CCSD "),
268 		_("Print microiterations in MCSCF and CI"),
269 		_("Print detailed CPU information "),
270                 _("Print pair list in CI, CCSD")
271   		};
272 
273   window1 = Frame;
274   vbox1 = gtk_vbox_new (FALSE, 0);
275   gtk_widget_show (vbox1);
276   gtk_container_add (GTK_CONTAINER (window1), vbox1);
277 
278 
279   window1 = vbox1;
280   frame1 = gtk_frame_new (_("Global Print Options"));
281   gtk_widget_show (frame1);
282   gtk_container_add (GTK_CONTAINER (window1), frame1);
283   gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5);
284 
285   hbox1 = gtk_hbox_new (FALSE, 0);
286   gtk_widget_show (hbox1);
287   gtk_container_add (GTK_CONTAINER (frame1), hbox1);
288 
289   vbox1 = gtk_vbox_new (FALSE, 0);
290   gtk_widget_show (vbox1);
291   gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
292 
293   for(i=0;i<7;i++)
294   	checkbutton[i] = create_checkbutton(window1,vbox1,tGP1[i]);
295 
296   /*
297   GTK_TOGGLE_BUTTON (checkbutton[0])->active=TRUE;
298   GTK_TOGGLE_BUTTON (checkbutton[4])->active=TRUE;
299   */
300   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton[0]), TRUE);
301   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton[4]), TRUE);
302 
303   vbox2 = gtk_vbox_new (FALSE, 0);
304   gtk_widget_show (vbox2);
305   gtk_box_pack_start (GTK_BOX (hbox1), vbox2, TRUE, TRUE, 0);
306 
307   for(i=0;i<7;i++)
308   	checkbutton[i+7] = create_checkbutton(window1,vbox2,tGP2[i]);
309 }
310 /************************************************************************************************************/
create_oneop(GtkWidget * Frame)311 static void  create_oneop(GtkWidget *Frame)
312 {
313   guint i;
314   GtkWidget *frame1;
315   GtkWidget *vbox1;
316   GtkWidget *vbox2;
317   GtkWidget *hbox1;
318   GtkWidget *window1;
319   gchar *tO1[6]={
320 		_("Overlap "),
321 		_("Kinetic energy"),
322 		_("Potential energy "),
323 		_("Delta function "),
324 		_("Delta4 function "),
325 		_("One-electron Darwin term")
326 		};
327   gchar *tO2[6]={
328 		_("Mass-velocity term "),
329 		_("Total Cowan-Griffin Relativistic correction"),
330 		_("Products of angular momentum operators "),
331 		_("Dipole moments"),
332 		_("Second moment "),
333 		_("Quadrupole moments and R2 ")
334 		};
335   gchar *tO3[6]={
336 		_("Electric field"),
337 		_("Field gradients "),
338 		_("Angular momentum operators"),
339 		_("Velocity"),
340 		_("Spin-orbit operators"),
341 		_("ECP spin-orbit operators")
342 		};
343 
344   window1 = Frame;
345   vbox1 = gtk_vbox_new (FALSE, 0);
346   gtk_widget_show (vbox1);
347   gtk_container_add (GTK_CONTAINER (window1), vbox1);
348 
349   window1 = vbox1;
350   frame1 = gtk_frame_new (_("One-electron operators and expectation values"));
351   gtk_widget_show (frame1);
352   gtk_container_add (GTK_CONTAINER (window1), frame1);
353   gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5);
354 
355   vbox1 = gtk_vbox_new (FALSE, 0);
356   gtk_widget_show (vbox1);
357   gtk_container_add (GTK_CONTAINER (frame1), vbox1);
358 
359   add_separator_to_vbox( window1,vbox1);
360 
361   hbox1 = gtk_hbox_new (FALSE, 0);
362   gtk_widget_show (hbox1);
363   gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
364 
365    ButtonRad1 = gtk_radio_button_new_with_label( NULL,_("Compute with origin at "));
366    gtk_box_pack_start (GTK_BOX (hbox1), ButtonRad1, FALSE, FALSE, 0);
367    gtk_widget_show (ButtonRad1);
368 
369     entryC = create_label_and_entry_in_hbox_false(window1,hbox1,_("Center Number : "),"1",(gint)(ScreenHeight*0.1));
370 
371    g_signal_connect(G_OBJECT (ButtonRad1), "clicked", G_CALLBACK(Set_Entry1), NULL);
372 
373   hbox1 = gtk_hbox_new (FALSE, 0);
374   gtk_widget_show (hbox1);
375   gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
376 
377    ButtonRad2 = gtk_radio_button_new_with_label(
378                        gtk_radio_button_get_group (GTK_RADIO_BUTTON (ButtonRad1)),
379                        _("Compute with origin at "));
380    gtk_box_pack_start (GTK_BOX (hbox1), ButtonRad2, FALSE, FALSE, 0);
381    gtk_widget_show (ButtonRad2);
382    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ButtonRad2), TRUE);
383     entryX = create_label_and_entry_in_hbox_false(window1,hbox1," X : ","0.0",(gint)(ScreenHeight*0.1));
384     entryY = create_label_and_entry_in_hbox_false(window1,hbox1," Y : ","0.0",(gint)(ScreenHeight*0.05));
385     entryZ = create_label_and_entry_in_hbox_false(window1,hbox1," Z : ","0.0",(gint)(ScreenHeight*0.05));
386    g_signal_connect(G_OBJECT (ButtonRad2), "clicked", G_CALLBACK(Set_Entry2), NULL);
387    Set_Entry2(NULL,NULL);
388 
389   add_separator_to_vbox( window1,vbox1);
390 
391   hbox1 = gtk_hbox_new (FALSE, 0);
392   gtk_widget_show (hbox1);
393   gtk_box_pack_start (GTK_BOX (vbox1), hbox1, TRUE, TRUE, 0);
394 
395   vbox1 = gtk_vbox_new (FALSE, 0);
396   gtk_widget_show (vbox1);
397   gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
398 
399   for(i=0;i<6;i++)
400   	checkbutton[i+14] = create_checkbutton(window1,vbox1,tO1[i]);
401 
402   vbox2 = gtk_vbox_new (FALSE, 0);
403   gtk_widget_show (vbox2);
404   gtk_box_pack_start (GTK_BOX (hbox1), vbox2, TRUE, TRUE, 0);
405 
406   for(i=0;i<6;i++)
407   	checkbutton[i+20] = create_checkbutton(window1,vbox2,tO2[i]);
408 
409   vbox2 = gtk_vbox_new (FALSE, 0);
410   gtk_widget_show (vbox2);
411   gtk_box_pack_start (GTK_BOX (hbox1), vbox2, TRUE, TRUE, 0);
412 
413   for(i=0;i<6;i++)
414   	checkbutton[i+26] = create_checkbutton(window1,vbox2,tO3[i]);
415 }
416 /************************************************************************************************************/
Add_page_gene(GtkWidget * NoteBook,gchar * tNote,guint j)417 static void Add_page_gene(GtkWidget *NoteBook,gchar * tNote,guint j)
418 {
419   GtkWidget *Frame;
420   GtkWidget *LabelOnglet;
421   GtkWidget *LabelMenu;
422   GtkWidget *window1;
423 
424   Frame = gtk_frame_new(NULL);
425   gtk_container_set_border_width(GTK_CONTAINER(Frame), 10);
426 
427   LabelOnglet = gtk_label_new(tNote);
428   LabelMenu = gtk_label_new(tNote);
429   gtk_notebook_append_page_menu(GTK_NOTEBOOK(NoteBook),
430                                 Frame,
431                                 LabelOnglet, LabelMenu);
432 
433   window1 = Frame;
434   g_object_set_data (G_OBJECT (window1), "window1", window1);
435   if(j==0)create_epilogue(Frame);
436   if(j==1)create_gprint(Frame);
437   if(j==2)create_oneop(Frame);
438 
439 
440 }
441 /************************************************************************************************************/
create_notebook_gene(GtkWidget * frame)442 static void create_notebook_gene(GtkWidget *frame)
443 {
444   GtkWidget *vbox;
445   GtkWidget *NoteBook;
446 
447   vbox =create_vbox(frame);
448   NoteBook = gtk_notebook_new();
449   gtk_box_pack_start(GTK_BOX (vbox), NoteBook,FALSE, FALSE, 0);
450   Add_page_gene(NoteBook,_("  Title/Global Thresholds "),0);
451   Add_page_gene(NoteBook,_("  Global Print Options "),1);
452   Add_page_gene(NoteBook,_("  One-electron operators and expectation values "),2);
453 }
454 /************************************************************************************************************/
AjoutePageGene(GtkWidget * NoteBook,GeneS * gen)455 void AjoutePageGene(GtkWidget *NoteBook,GeneS *gen)
456 {
457 
458   GtkWidget *Frame;
459   GtkWidget *LabelOnglet;
460   GtkWidget *LabelMenu;
461   GtkWidget *window1;
462 
463 
464   entryC=NULL;
465   entryX=NULL;
466   entryY=NULL;
467   entryZ=NULL;
468   Frame = gtk_frame_new(NULL);
469   gtk_container_set_border_width(GTK_CONTAINER(Frame), 20);
470 
471   LabelOnglet = gtk_label_new(_("General"));
472   LabelMenu = gtk_label_new(_("General"));
473   gtk_notebook_append_page_menu(GTK_NOTEBOOK(NoteBook), Frame, LabelOnglet, LabelMenu);
474 
475   window1 = Frame;
476   g_object_set_data (G_OBJECT (window1), "window1", window1);
477   create_notebook_gene(Frame);
478 
479   gen->title=entry20;
480   gen->memory=entry21;
481 
482   gen->gth_zero=entry1 ;
483   gen->gth_oneint=entry2 ;
484   gen->gth_twoint=entry3 ;
485   gen->gth_prefac=entry4 ;
486   gen->gth_locali=entry5 ;
487   gen->gth_eorder=entry6 ;
488   gen->gth_energy=entry7 ;
489   gen->gth_gradiant=entry8 ;
490   gen->gth_step=entry9 ;
491   gen->gth_orbital=entry10 ;
492   gen->gth_civec=entry11;
493   gen->gth_coeff=entry12;
494   gen->gth_printci=entry13;
495   gen->gth_punchci=entry14;
496 
497   gen->basis=checkbutton[0];
498   gen->civector=checkbutton[1];
499   gen->ref=checkbutton[2];
500   gen->io=checkbutton[3];
501   gen->orbital=checkbutton[4];
502   gen->angles=checkbutton[5];
503   gen->cs=checkbutton[6];
504   gen->distance=checkbutton[7];
505   gen->pspace=checkbutton[8];
506   gen->variable=checkbutton[9];
507   gen->cp=checkbutton[10];
508   gen->micro=checkbutton[11];
509   gen->cpu=checkbutton[12];
510   gen->pairs=checkbutton[13];
511 
512     gen->RadCenter=ButtonRad1;
513     gen->entryC=entryC;
514     gen->entryX=entryX;
515     gen->entryY=entryY;
516     gen->entryZ=entryZ;
517 
518     gen->Overlap=checkbutton[14];
519     gen->Kinetic=checkbutton[15];
520     gen->Potential=checkbutton[16];
521     gen->Delta=checkbutton[17];
522     gen->Delta4=checkbutton[18];
523     gen->Darwin=checkbutton[19];
524 
525     gen->MassVelocity=checkbutton[20];
526     gen->CowanGriffin=checkbutton[21];
527     gen->ProductsMO=checkbutton[22];
528     gen->Dipole=checkbutton[23];
529     gen->Second=checkbutton[24];
530     gen->Quadrupole=checkbutton[25];
531 
532     gen->Electric=checkbutton[26];
533     gen->Field=checkbutton[27];
534     gen->AngularMO=checkbutton[28];
535     gen->Velocity=checkbutton[29];
536     gen->SpinOrbit=checkbutton[30];
537     gen->ECP=checkbutton[31];
538 }
539 
540