Nemiver  0.3
nmv-terminal.h
Go to the documentation of this file.
1 //Author: Dodji Seketeli
2 /*
3  *This file is part of the Nemiver project
4  *
5  *Nemiver is free software; you can redistribute
6  *it and/or modify it under the terms of
7  *the GNU General Public License as published by the
8  *Free Software Foundation; either version 2,
9  *or (at your option) any later version.
10  *
11  *Nemiver is distributed in the hope that it will
12  *be useful, but WITHOUT ANY WARRANTY;
13  *without even the implied warranty of
14  *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15  *See the GNU General Public License for more details.
16  *
17  *You should have received a copy of the
18  *GNU General Public License along with Nemiver;
19  *see the file COPYING.
20  *If not, write to the Free Software Foundation,
21  *Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22  *
23  *See COPYRIGHT file copyright information.
24  */
25 
26 #ifndef NMV_TERMINAL
27 #define NMV_TERMINAL
28 
30 #include "common/nmv-env.h"
31 #include "common/nmv-ustring.h"
32 #include "common/nmv-object.h"
33 #include <string>
34 #include <glibmm/refptr.h>
35 
39 
40 using std::string;
41 
42 namespace Gtk {
43  class Widget;
44  class Adjustment;
45  class UIManager;
46 }
47 
48 namespace Pango {
49  class FontDescription;
50 }
51 
52 NEMIVER_BEGIN_NAMESPACE(nemiver)
53 
54 class Terminal : public Object {
55  //non copyable
56  Terminal (const Terminal &);
57  Terminal& operator= (const Terminal &);
58 
59  struct Priv;
60  SafePtr<Priv> m_priv;
61 
62 public:
63 
64  Terminal (const string &a_menu_file_path,
65  const Glib::RefPtr<Gtk::UIManager> &a_ui_manager);
66  ~Terminal ();
67  Gtk::Widget& widget () const;
68  Glib::RefPtr<Gtk::Adjustment> adjustment () const;
69  int slave_pty () const;
70  UString slave_pts_name () const;
71  void modify_font (const Pango::FontDescription &font_desc);
72  void feed (const UString &a_text);
73 };//end class Terminal
74 
75 NEMIVER_END_NAMESPACE(nemiver)
76 #endif //NMV_TERMINAL
nmv-safe-ptr-utils.h
nemiver::common::Object
Definition: nmv-object.h:43
nemiver
Definition: nmv-address.h:31
nmv-ustring.h
nemiver::common::UString
Definition: nmv-ustring.h:45
nmv-env.h
Gtk
Definition: nmv-asm-utils.h:30
Pango
Definition: nmv-terminal.h:48
nemiver::Terminal
Definition: nmv-terminal.h:54
nmv-object.h
nemiver::common::SafePtr
Definition: nmv-safe-ptr.h:71