File indexing completed on 2024-12-01 06:51:47

0001 /***************************************************************************
0002                           cscriptlist.h  -  list of scripts
0003                              -------------------
0004     begin                : Pi dec 13 2002
0005     copyright            : (C) 2002-2009 by Tomas Mecir
0006     email                : kmuddy@kmuddy.com
0007  ***************************************************************************/
0008 
0009 /***************************************************************************
0010  *                                                                         *
0011  *   This program is free software; you can redistribute it and/or modify  *
0012  *   it under the terms of the GNU General Public License as published by  *
0013  *   the Free Software Foundation; either version 2 of the License, or     *
0014  *   (at your option) any later version.                                   *
0015  *                                                                         *
0016  ***************************************************************************/
0017 
0018 #ifndef CSCRIPTLIST_H
0019 #define CSCRIPTLIST_H
0020 
0021 #include "clist.h"
0022 
0023 class cScript;
0024 
0025 /**
0026 List of scripts.
0027   *@author Tomas Mecir
0028   */
0029 
0030 class cScriptList : public cList  {
0031 public: 
0032   cScriptList ();
0033   ~cScriptList ();
0034 
0035   static cList *newList () { return new cScriptList; };
0036   virtual cListObject *newObject ();
0037   virtual QString objName () { return "Script"; }
0038   virtual cListEditor *editor (QWidget *parent);
0039 
0040   /** run script with name */
0041   bool runScript (QString name, const QString &paramlist = QString());
0042   /** does script with such name exist? */
0043   bool nameExists (const QString &name);
0044 protected:
0045   struct Private;
0046   Private *d;
0047   friend class cScript;
0048 
0049   QString nameToFind ();
0050   void setNameFound ();
0051 
0052   /** run this script! */
0053   bool runScript (cScript *script);
0054 };
0055 
0056 #endif