00001 /* -------------------------------------------------------------------------- */ 00002 /* */ 00003 /* [session.h] Testbed for TE framework */ 00004 /* */ 00005 /* -------------------------------------------------------------------------- */ 00006 /* */ 00007 /* Copyright (c) 1997,1998 by Lars Doelle <lars.doelle@on-line.de> */ 00008 /* */ 00009 /* This file is part of Konsole, an X terminal. */ 00010 /* */ 00011 /* -------------------------------------------------------------------------- */ 00012 /* */ 00013 /* Ported Konsole to Qt/Embedded */ 00014 /* */ 00015 /* Copyright (C) 2000 by John Ryland <jryland@trolltech.com> */ 00016 /* */ 00017 /* -------------------------------------------------------------------------- */ 00018 00019 #ifndef SESSION_H 00020 #define SESSION_H 00021 00022 #include <qapplication.h> 00023 #include <qmainwindow.h> 00024 #include <qstrlist.h> 00025 00026 #include "MyPty.h" 00027 #include "TEWidget.h" 00028 #include "TEmuVt102.h" 00029 00030 class TESession : public QObject 00031 { Q_OBJECT 00032 00033 public: 00034 00035 TESession(QMainWindow* main, TEWidget* w, 00036 const char* pgm, QStrList & _args, 00037 const char* term); 00038 ~TESession(); 00039 00040 public: 00041 00042 void setConnect(bool r); 00043 TEmulation* getEmulation(); // to control emulation 00044 bool isSecure(); 00045 00046 public: 00047 00048 int schemaNo(); 00049 int fontNo(); 00050 const char* emuName(); 00051 const QString& Title(); 00052 bool history(); 00053 int keymap(); 00054 00055 void setHistory(bool on); 00056 void setSchemaNo(int sn); 00057 void setKeymapNo(int kn); 00058 void setFontNo(int fn); 00059 void kill(int signal); 00060 00061 public slots: 00062 00063 void run(); 00064 void done(int status); 00065 void terminate(); 00066 void changeTitle(int, const QString& title); 00067 00068 signals: 00069 00070 void done(TEWidget*, int); 00071 void changeTitle(TEWidget*, const QString&); 00072 00073 private: 00074 00075 // TEPty* sh; 00076 MyPty* sh; 00077 TEWidget* te; 00078 TEmulation* em; 00079 00080 //FIXME: using the indices here 00081 // is propably very bad. We should 00082 // use a persistent reference instead. 00083 int schema_no; 00084 int font_no; 00085 int keymap_no; 00086 QString title; 00087 00088 const char* pgm; 00089 QStrList args; 00090 00091 QCString term; 00092 }; 00093 00094 #endif
1.4.2