make headers less interdependent
[mussa.git] / mussa_gui_seq_text.hh
1 #ifndef _MUSSA_GUI_SEQ_TEXT_H_
2 #define _MUSSA_GUI_SEQ_TEXT_H_
3 //  This file is part of the Mussa source distribution.
4 //  http://mussa.caltech.edu/
5 //  Contact author: Tristan  De Buysscher, tristan@caltech.edu
6
7 // This program and all associated source code files are Copyright (C) 2005
8 // the California Institute of Technology, Pasadena, CA, 91125 USA.  It is
9 // under the GNU Public License; please see the included LICENSE.txt
10 // file for more information, or contact Tristan directly.
11
12 #include <string>
13 #include <vector>
14
15 #include <FL/Fl_Button.H>
16 #include <FL/Fl_Input.H>
17 #include <FL/Fl_Text_Buffer.H>
18 #include <FL/Fl_Text_Display.H>
19 #include <FL/Fl_Multiline_Output.H>
20
21 #include "mussa_gui_seq.hh"
22
23 class SeqTextWin : public Fl_Window
24
25   public:
26     SeqTextWin(int w, int h, const char* title, std::vector<Sequence> some_Seqs);
27     ~SeqTextWin();
28
29     Fl_Button* get_seq_but;
30     Fl_Multiline_Output* seq_display;
31     Fl_Text_Buffer* seq_buffer;
32     Fl_Text_Display* seq_display2;
33     Fl_Input *seq_id_input;
34     Fl_Input *seq_start_input;
35     Fl_Input *seq_end_input;
36
37     // callback receiver functions
38
39     void real_get_seq_cb();
40     void real_set_seq_id_cb(Fl_Input* o);
41     void real_set_seq_start_cb(Fl_Input* o);
42     void real_set_seq_end_cb(Fl_Input* o);
43
44   private:
45     // sequence data
46     std::vector<Sequence> the_Seqs;
47     std::string sub_sequence;
48     int seq_id, seq_start, seq_end;
49 };
50 #endif