OpenCPN Partial API docs
TTYWindow.h
1 /******************************************************************************
2  *
3  * Project: OpenCPN
4  *
5  ***************************************************************************
6  * Copyright (C) 2013 by David S. Register *
7  * *
8  * This program is free software; you can redistribute it and/or modify *
9  * it under the terms of the GNU General Public License as published by *
10  * the Free Software Foundation; either version 2 of the License, or *
11  * (at your option) any later version. *
12  * *
13  * This program is distributed in the hope that it will be useful, *
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
16  * GNU General Public License for more details. *
17  * *
18  * You should have received a copy of the GNU General Public License *
19  * along with this program; if not, write to the *
20  * Free Software Foundation, Inc., *
21  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
22  ***************************************************************************
23  */
24 
25 #ifndef __TTYWINDOW_H__
26 #define __TTYWINDOW_H__
27 
28 #include <wx/frame.h>
29 #include <wx/bitmap.h>
30 
31 class wxButton;
32 class wxTextCtrl;
33 class TTYScroll;
35 
36 class TTYWindow : public wxFrame {
37  DECLARE_DYNAMIC_CLASS(TTYWindow)
38  DECLARE_EVENT_TABLE()
39 
40 public:
41  TTYWindow();
42  TTYWindow(wxWindow *parent, int n_lines,
43  WindowDestroyListener *listener = NULL);
44  virtual ~TTYWindow();
45 
46  void Add(const wxString &line);
47  void OnCloseWindow(wxCloseEvent &event);
48  void Close();
49  void OnPauseClick(wxCommandEvent &event);
50  void OnCopyClick(wxCommandEvent &event);
51 
52 protected:
53  void CreateLegendBitmap();
54  WindowDestroyListener *m_window_destroy_listener;
55  TTYScroll *m_tty_scroll;
56  wxButton *m_btn_pause;
57  wxButton *m_btn_copy;
58  bool m_is_paused;
59  wxBitmap m_bm_legend;
60  wxTextCtrl *m_filter;
61 };
62 
63 #endif