EditorWindow::EditorWindow(QWidget * parent/*= 0*/): QWidget(parent, Qt::Window)
{
list = new QListWidget;
- up = new QPushButton("^");
- down = new QPushButton("v");
- add = new QPushButton("+");
- remove = new QPushButton("-");
editor = new EditorWidget(parent);
+ up = new QToolButton;
+ down = new QToolButton;
+ add = new QToolButton;
+ remove = new QToolButton;
+ play = new QToolButton;
+
+ up->setIcon(QIcon(":/icon-up.png"));
+ down->setIcon(QIcon(":/icon-down.png"));
+ add->setIcon(QIcon(":/icon-add.png"));
+ remove->setIcon(QIcon(":/icon-delete.png"));
+ play->setIcon(QIcon(":/icon-play.png"));
list->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Preferred);
// editor->setFocus(); //DISNOWOK
// editor->Load();
- for(unsigned int i=0; i<editor->levelStorage.size(); i++)
+ for(unsigned int i=0; i<levelStorage.size(); i++)
{
- list->addItem(QString(editor->levelStorage[i].name));
+ list->addItem(QString(levelStorage[i].name));
QListWidgetItem * item = list->item(i);
item->setFlags(item->flags() | Qt::ItemIsEditable);
}
buttonBox->addWidget(down);
buttonBox->addWidget(add);
buttonBox->addWidget(remove);
+ buttonBox->addWidget(play);
listBox->addWidget(list);
listBox->addLayout(buttonBox);
connect(down, SIGNAL(clicked()), this, SLOT(MoveLevelDown()));
connect(add, SIGNAL(clicked()), this, SLOT(AddLevel()));
connect(remove, SIGNAL(clicked()), this, SLOT(DeleteLevel()));
+ connect(play, SIGNAL(clicked()), this, SLOT(PlayLevel()));
}
if (level == 0)
up->setDisabled(true);
- else if ((unsigned int)level == (editor->levelStorage.size() - 1))
+ else if ((unsigned int)level == (levelStorage.size() - 1))
down->setDisabled(true);
else
{
{
// Swap in the vector...
int n = editor->currentLevel;
- std::swap(editor->levelStorage[n], editor->levelStorage[n - 1]);
+ std::swap(levelStorage[n], levelStorage[n - 1]);
// Swap in the QListWidget too...
int currentRow = list->currentRow();
void EditorWindow::MoveLevelDown(void)
{
int n = editor->currentLevel;
- std::swap(editor->levelStorage[n], editor->levelStorage[n + 1]);
+ std::swap(levelStorage[n], levelStorage[n + 1]);
int currentRow = list->currentRow();
QListWidgetItem * currentItem = list->takeItem(currentRow);
void EditorWindow::DeleteLevel(void)
{
//printf("DeleteLevel: Erasing level from levelStorage...\n");
- editor->levelStorage.erase(editor->levelStorage.begin() + editor->currentLevel);
+ levelStorage.erase(levelStorage.begin() + editor->currentLevel);
//printf("DeleteLevel: Erasing level from list...\n");
int currentRow = list->currentRow();
SetEditorLevel(currentRow);
}
+
+void EditorWindow::PlayLevel(void)
+{
+ emit SetupLevel(&(levelStorage[editor->currentLevel]));
+}
+