00001 /*************************************************************************** 00002 File : ScriptWindow.h 00003 Project : QtiPlot 00004 -------------------------------------------------------------------- 00005 Copyright : (C) 2006 by Ion Vasilief, 00006 Tilman Hoener zu Siederdissen, 00007 Knut Franke 00008 Email (use @ for *) : ion_vasilief*yahoo.fr, thzs*gmx.net 00009 Description : Python script window 00010 00011 ***************************************************************************/ 00012 00013 /*************************************************************************** 00014 * * 00015 * This program is free software; you can redistribute it and/or modify * 00016 * it under the terms of the GNU General Public License as published by * 00017 * the Free Software Foundation; either version 2 of the License, or * 00018 * (at your option) any later version. * 00019 * * 00020 * This program is distributed in the hope that it will be useful, * 00021 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00022 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 00023 * GNU General Public License for more details. * 00024 * * 00025 * You should have received a copy of the GNU General Public License * 00026 * along with this program; if not, write to the Free Software * 00027 * Foundation, Inc., 51 Franklin Street, Fifth Floor, * 00028 * Boston, MA 02110-1301 USA * 00029 * * 00030 ***************************************************************************/ 00031 #ifndef SCRIPTWINDOW_H 00032 #define SCRIPTWINDOW_H 00033 00034 #include "ScriptEdit.h" 00035 00036 #include <QMainWindow> 00037 #include <QMenu> 00038 #include <QCloseEvent> 00039 class ScriptingEnv; 00040 class QAction; 00041 00043 class ScriptWindow: public QMainWindow 00044 { 00045 Q_OBJECT 00046 00047 public: 00048 ScriptWindow(ScriptingEnv *env); 00049 ~ScriptWindow(){exit(0);}; 00050 00051 public slots: 00052 void newScript(); 00053 void open(); 00054 void save(); 00055 void saveAs(); 00056 void languageChange(); 00057 virtual void setVisible(bool visible); 00058 00059 signals: 00060 void visibilityChanged(bool visible); 00061 00062 private: 00063 void initMenu(); 00064 void initActions(); 00065 ScriptEdit *te; 00066 00067 QString fileName; 00068 00069 QMenu *file, *edit, *run; 00070 QAction *actionNew, *actionUndo, *actionRedo, *actionCut, *actionCopy, *actionPaste; 00071 QAction *actionExecute, *actionExecuteAll, *actionEval, *actionPrint, *actionOpen; 00072 QAction *actionSave, *actionSaveAs; 00073 }; 00074 00075 #endif