00001 /* 00002 Copyright (C) 2000,2001 Stefan Duffner 00003 00004 This program is free software; you can redistribute it and/or 00005 modify it under the terms of the GNU General Public License 00006 as published by the Free Software Foundation; either version 2 00007 of the License, or any later version. 00008 00009 This program is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 GNU General Public License for more details. 00013 00014 You should have received a copy of the GNU General Public License 00015 along with this program; if not, write to the Free Software 00016 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00017 */ 00018 00019 #ifndef MACHINEPROPERTIESDLHIMPL_H 00020 #define MACHINEPROPERTIESDLHIMPL_H 00021 00022 #include <qlineedit.h> 00023 #include <qspinbox.h> 00024 #include <qlistbox.h> 00025 #include <qlabel.h> 00026 #include "MachinePropertiesDlg.h" 00027 00028 00029 class LBArrowLine; 00030 class LBArrowFilled; 00031 00036 class MachinePropertiesDlgImpl : public MachinePropertiesDlg 00037 { 00038 Q_OBJECT 00039 00040 public: 00041 MachinePropertiesDlgImpl( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); 00042 ~MachinePropertiesDlgImpl(); 00043 00045 QString getName() { return le_name->text(); }; 00047 void setName(QString n) { le_name->setText(n); }; 00049 QString getVersion() { return le_version->text(); }; 00051 void setVersion(QString v) { le_version->setText(v); }; 00052 int getType(); 00053 void setType(int t); 00054 00056 int getNumBits() { return sb_mooreout->value(); }; 00058 void setNumBits(int num) { sb_mooreout->setValue(num); saved_numbits=num; }; 00060 QString getMooreOutputNames() { return le_mooreout->text(); }; 00062 void setMooreOutputNames(QString s) { le_mooreout->setText(s); }; 00063 00065 int getNumInputs() { return sb_mealyin->value(); }; 00067 void setNumInputs(int num) { sb_mealyin->setValue(num); saved_numin=num; }; 00069 QString getMealyInputNames() { return le_mealyin->text(); }; 00071 void setMealyInputNames(QString s) { le_mealyin->setText(s); }; 00072 00074 int getNumOutputs() { return sb_mealyout->value(); }; 00076 void setNumOutputs(int num) { sb_mealyout->setValue(num); saved_numout=num; }; 00078 QString getMealyOutputNames() { return le_mealyout->text(); }; 00080 void setMealyOutputNames(QString s) { le_mealyout->setText(s); }; 00081 00083 QFont getSFont() { return sfont; }; 00085 void setSFont(QFont f) { sfont = f; lb_statefont->setText(f.family()); 00086 lb_statefont->setFont(f); }; 00088 QFont getTFont() { return tfont; }; 00090 void setTFont(QFont f) { tfont = f; lb_transfont->setText(f.family()); 00091 lb_transfont->setFont(f); }; 00093 int getArrowType() { return lbox_arrowtype->currentItem(); }; 00095 void setArrowType(int at) { lbox_arrowtype->setCurrentItem(at); }; 00096 00098 void selectFirst() { le_name->selectAll(); le_name->setFocus(); }; 00099 00100 private: 00102 LBArrowLine* lb1; 00104 LBArrowFilled* lb2; 00106 QFont sfont; 00108 QFont tfont; 00109 00111 int saved_numbits; 00113 int saved_numin; 00115 int saved_numout; 00116 00117 public slots: 00118 void chooseSFont(); 00119 void chooseTFont(); 00120 void binaryClicked(); 00121 void asciiClicked(); 00122 }; 00123 00124 #endif // MACHINEPROPERTIESDLHIMPL_H