Tagged files with gromacs 3.0 header and added some license info
[alexxy/gromacs.git] / src / ngmx / dialogs.h
1 /*
2  * $Id$
3  * 
4  *                This source code is part of
5  * 
6  *                 G   R   O   M   A   C   S
7  * 
8  *          GROningen MAchine for Chemical Simulations
9  * 
10  *                        VERSION 3.0
11  * 
12  * Copyright (c) 1991-2001
13  * BIOSON Research Institute, Dept. of Biophysical Chemistry
14  * University of Groningen, The Netherlands
15  * 
16  * This program is free software; you can redistribute it and/or
17  * modify it under the terms of the GNU General Public License
18  * as published by the Free Software Foundation; either version 2
19  * of the License, or (at your option) any later version.
20  * 
21  * If you want to redistribute modifications, please consider that
22  * scientific software is very special. Version control is crucial -
23  * bugs must be traceable. We will be happy to consider code for
24  * inclusion in the official distribution, but derived work must not
25  * be called official GROMACS. Details are found in the README & COPYING
26  * files - if they are missing, get the official version at www.gromacs.org.
27  * 
28  * To help us fund GROMACS development, we humbly ask that you cite
29  * the papers on the package - you can find them in the top README file.
30  * 
31  * Do check out http://www.gromacs.org , or mail us at gromacs@gromacs.org .
32  * 
33  * And Hey:
34  * Giving Russians Opium May Alter Current Situation
35  */
36
37 #ifndef _dialogs_h
38 #define _dialogs_h
39
40 static char *SRCID_dialogs_h = "$Id$";
41 #include "xdlg.h"
42 #include "pulldown.h"
43 #include "manager.h"
44 #include "logo.h"
45
46 typedef struct {
47   bool  bMapped;
48   t_dlg *dlg;
49 } t_dialogs;
50
51 typedef enum { edExport, edBonds, edFilter, edNR } eDialogs;
52          
53 typedef enum {
54   emQuit, emHelp, emAbout, emNotImplemented, emNR
55 } eMBoxes;
56
57 typedef enum {
58   eExpGromos, eExpPDB, eExpNR
59 } eExport;
60
61 typedef struct {
62   char         confout[256];    /* Export file                  */
63   int          ExpMode;         /* Export mode                  */
64   t_dlg        **dlgs;          /* Temporary storage for dlgs   */
65   int          which_mb;        /* Which mb is visible          */
66   t_dlg        **mboxes;        /* id for message boxes         */
67   t_filter     *filter;         /* Filter for visibility etc.   */
68   t_windata    *wd;             /* The main window              */
69   t_pulldown   *pd;             /* The pull-down menu           */
70   t_manager    *man;            /* The manager                  */
71   /*t_statrec    *sr;*/         /* The statistics dlg           */
72   t_logo       *logo;           /* The gromacs logo             */
73 } t_gmx;
74
75 enum { 
76   IDNEW,IDOPEN,IDOPENED,IDCLOSE,IDIMPORT,IDEXPORT,IDDOEXPORT,IDQUIT,IDTERM,
77   IDEDITTOP,IDEDITCOORDS,IDEDITPARAMS,
78   IDGROMPP,IDRUNMD,IDDOGROMPP,IDGSTAT,IDDOGSTAT,IDDORUNMD,
79   IDFILTER,IDDOFILTER,
80   IDANIMATE,IDSHOWBOX,IDRMPBC,IDHYDROGEN,IDLABELSOFF,IDRESETVIEW,IDPHOTO,
81   IDDUMPWIN,IDDODUMP,
82   IDBONDOPTS,IDTHIN,IDFAT,IDVERYFAT,IDBALLS,
83   IDNOBOX,IDRECTBOX,IDTRIBOX,IDTOBOX,
84   IDBOND,IDANGLE,IDDIH,IDRMS,IDRDF,IDENERGIES,IDCORR,
85   IDHELP,IDABOUT,
86   
87   /* Last line specifies how many IDs there are */
88   IDMENUNR
89   };
90
91 extern void run_grompp(t_gmx *gmx);
92
93 extern void run_mdrun(t_gmx *gmx);
94
95 extern void write_gmx(t_x11 *x11,t_gmx *gmx,int mess);
96
97 /*extern void run_sr(t_statrec *sr);
98
99 extern t_statrec *init_sr();*/
100
101 extern void init_dlgs(t_x11 *x11,t_gmx *gmx);
102
103 extern void show_mb(t_gmx *gmx,int mb);
104
105 extern void done_dlgs(t_gmx *gmx);
106
107 extern void edit_file(char *fn);
108
109 extern t_filter *init_filter(t_atoms *atoms, char *fn, int natom_trx);
110
111 extern t_dlg *select_filter(t_x11 *x11,t_gmx *gmx);
112
113 #endif