Qucs-GUI  0.0.19
/home/travis/build/Qucs/qucs/qucs/qucs/octave_window.h
Go to the documentation of this file.
00001 /***************************************************************************
00002     copyright            : (C) 2010 by Michael Margraf
00003     email                : michael.margraf@alumni.tu-berlin.de
00004  ***************************************************************************/
00005 
00006 #ifndef OCTAVE_WINDOW_H
00007 #define OCTAVE_WINDOW_H
00008 
00009 #include <QWidget>
00010 #include <QProcess>
00011 #include <QStringList>
00012 
00013 class QEvent;
00014 class QDockWidget;
00015 class QTextEdit;
00016 class QLineEdit;
00017 
00018 
00019 class OctaveWindow : public QWidget {
00020   Q_OBJECT
00021 public:
00022   OctaveWindow(QDockWidget*);
00023  ~OctaveWindow();
00024 
00025   QSize sizeHint() const;
00026   bool startOctave();
00027   void runOctaveScript(const QString&);
00028   void sendCommand(const QString&);
00029   void adjustDirectory();
00030 
00031 private slots:
00032   void slotDisplayMsg();
00033   void slotDisplayErr();
00034   void slotOctaveEnded(int status);
00035   void slotSendCommand();
00036 
00037 protected:
00038   bool eventFilter(QObject *obj, QEvent *event);
00039 
00040 private:
00041   QTextEdit *output;
00042   QProcess octProcess;
00043   QLineEdit *input;
00044   QStringList cmdHistory;
00045   int histPosition;
00046 };
00047 
00048 #endif
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines