5a1044f990e76f453521334ef9d23f2f221626d2
[mussa.git] / mussa_gui_conn_window.hh
1 #ifndef _MUSSA_GUI_CONN_WINDOW_H_
2 #define _MUSSA_GUI_CONN_WINDOW_H_
3
4 //  This file is part of the Mussa source distribution.
5 //  http://mussa.caltech.edu/
6 //  Contact author: Tristan  De Buysscher, tristan@caltech.edu
7
8 // This program and all associated source code files are Copyright (C) 2005
9 // the California Institute of Technology, Pasadena, CA, 91125 USA.  It is
10 // under the GNU Public License; please see the included LICENSE.txt
11 // file for more information, or contact Tristan directly.
12
13 #include <string>
14
15 #include <Fl/Fl_Double_Window.H>
16 #include <Fl/Fl_Menu_Item.H>
17
18 #include "mussa_gui_conn_view.hh"
19 #include "mussa_gui_load_window.hh"
20 #include "mussa_gui_subana.hh"
21 #include "mussa_gui_seq_text.hh"
22
23 class ConnWindow : public Fl_Double_Window
24 {
25   private:
26     Mussa *an_analysis, *sub_analysis;
27     ConnWindow *sub_conn_win;
28
29     Fl_Menu_Button *file_menu;
30     Fl_Menu_Button *view_menu;
31     Fl_Input *bar_input;
32     Fl_Input *line_input;
33     Fl_Input *thres_input;
34     ConnView *conn_box;
35     SetupWindow *setup_win;
36     SubanaWindow *subana_win;
37     SeqTextWin *show_seq_win;
38     int padding, name_pad;
39     std::string window_name;
40
41   public:
42     ConnWindow(int w, int h, const char* title);
43     ~ConnWindow();
44     void add_ana(Mussa *the_ana);
45
46     void real_load_ana_cb();
47     void real_do_ana_cb();
48     void real_setup_ana_cb();
49     void real_subana_cb();
50     void real_resthres();
51     void real_seq_show_cb();
52
53     void real_seq_win_spawn_cb();
54     void real_motif_find_cb();
55     void real_annot_win_cb();
56
57     void real_toggle_bars_cb();
58     void real_set_bar_len_cb(Fl_Input* o);
59     void real_toggle_lines_cb();
60     void real_set_line_len_cb(Fl_Input* o);
61     void real_set_soft_thres_cb(Fl_Input* o);
62 };
63
64 #endif