X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=src%2Fedit%2FUnitStructureDialog.cpp;fp=src%2Fedit%2FUnitStructureDialog.cpp;h=a947a129cc22f1418557407f9abf26d258ab78de;hb=51482069fdcb6419521f9f5cfcff5980a185428b;hp=0000000000000000000000000000000000000000;hpb=a65ea8a9671bc17933d43714eb108ce950606209;p=vlp.git diff --git a/src/edit/UnitStructureDialog.cpp b/src/edit/UnitStructureDialog.cpp new file mode 100644 index 0000000..a947a12 --- /dev/null +++ b/src/edit/UnitStructureDialog.cpp @@ -0,0 +1,47 @@ +#include "UnitStructureDialog.h" + +#define TYPENUM 5 + +const char *UnitTypes[TYPENUM] = { + "CLASS", + "PROCEDURE", + "FUNCTION", + "PROCESS", + "COROUTINE" +}; + +UnitStructureDialog::UnitStructureDialog(QWidget * parent) + : QDialog(parent) +{ + setupUi(this); + + for (int i = 0; i < TYPENUM; i++) { + QListWidgetItem *newItem = new QListWidgetItem; + newItem->setText(UnitTypes[i]); + listWidget->insertItem(i, newItem); + } + listWidget->setCurrentItem(0); + + connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept())); + connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject())); +} + +UnitStructureDialog::~UnitStructureDialog() +{ +} + +QString UnitStructureDialog::getUnitName() +{ + return lineEdit->text(); +} + +QString UnitStructureDialog::getCode() +{ + QString code; + code.sprintf("UNIT %s : %s( );\nBEGIN\n\nEND %s;", + getUnitName().toStdString().c_str(), + listWidget->currentItem()->text().toStdString().c_str(), + getUnitName().toStdString().c_str() + ); + return code; +}