Qucs-GUI  0.0.19
/home/travis/build/Qucs/qucs/qucs/qucs/components/optimizedialog.h
Go to the documentation of this file.
00001 /***************************************************************************
00002                             optimizedialog.h
00003                            ------------------
00004     begin                : Sun Jul 30 2006
00005     copyright            : (C) 2006 by Michael Margraf
00006     email                : michael.margraf@alumni.tu-berlin.de
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00018 #ifndef OPTIMIZEDIALOG_H
00019 #define OPTIMIZEDIALOG_H
00020 
00021 #include <QDialog>
00022 #include <QRegExp>
00023 
00024 class Schematic;
00025 class Optimize_Sim;
00026 class QTableWidget;
00027 class QCheckBox;
00028 class QComboBox;
00029 class QLineEdit;
00030 class QVBoxLayout;
00031 class QRegExpValidator;
00032 class QDoubleValidator;
00033 class QIntValidator;
00034 
00035 
00036 class OptimizeDialog : public QDialog  {
00037 Q_OBJECT
00038 public:
00039   OptimizeDialog(Optimize_Sim*, Schematic*);
00040  ~OptimizeDialog();
00041 
00042 private slots:
00043   void slotOK();
00044   void slotApply();
00045   void slotCancel();
00046   void slotAddVariable();
00047   void slotDeleteVariable();
00048   void slotAddGoal();
00049   void slotDeleteGoal();
00050   void slotEditGoal();
00051   void slotEditVariable();
00052   void slotChangeVarName(const QString&);
00053   void slotChangeVarActive(bool);
00054   void slotChangeVarInit(const QString&);
00055   void slotChangeVarMin(const QString&);
00056   void slotChangeVarMax(const QString&);
00057   void slotChangeVarType(const QString&);
00058   void slotChangeGoalName(const QString&);
00059   void slotChangeGoalNum(const QString&);
00060   void slotChangeGoalType(const QString&);
00061   void slotCreateEqn();
00062   void slotSetPrecision(const QPoint&);
00063 
00064 private:
00065   void createASCOFiles();
00066 
00067 public:
00068   Optimize_Sim *Comp;
00069   Schematic *Doc;
00070   bool changed;
00071   int numPrec;
00072 
00073   QVBoxLayout *all;
00074   QLineEdit *NameEdit, *VarNameEdit,
00075             *VarInitEdit, *VarMinEdit, *VarMaxEdit,
00076             *IterEdit, *RefreshEdit, *ParentsEdit, *ConstEdit, *CrossEdit,
00077             *SeedEdit, *CostVarEdit, *CostObjEdit, *CostConEdit,
00078             *GoalNameEdit, *GoalNumEdit;
00079   QCheckBox *VarActiveCheck;
00080   QComboBox *SimEdit, *GoalTypeCombo, *MethodCombo, *VarTypeCombo;
00081   QTableWidget *VarTable, *GoalTable;
00082 
00083   QRegExp Expr;
00084   QRegExpValidator *Validator;
00085   QDoubleValidator *numVal;
00086   QIntValidator *intVal;
00087 };
00088 
00089 #endif
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines