# HG changeset patch # User unc0rr # Date 1291834515 -10800 # Node ID dbf69c7c5e0018bce5de8ca184d3e34dcf357ecc # Parent 85695e3d2623451d17440345169103a37eda3817 Add drawn map into the list of map generators diff -r 85695e3d2623 -r dbf69c7c5e00 QTfrontend/hwmap.h --- a/QTfrontend/hwmap.h Wed Dec 08 15:18:08 2010 +0100 +++ b/QTfrontend/hwmap.h Wed Dec 08 21:55:15 2010 +0300 @@ -31,6 +31,7 @@ { MAPGEN_REGULAR, MAPGEN_MAZE, + MAPGEN_DRAWN, MAPGEN_LAST }; diff -r 85695e3d2623 -r dbf69c7c5e00 QTfrontend/mapContainer.cpp --- a/QTfrontend/mapContainer.cpp Wed Dec 08 15:18:08 2010 +0100 +++ b/QTfrontend/mapContainer.cpp Wed Dec 08 21:55:15 2010 +0300 @@ -70,6 +70,10 @@ // FIXME - need real icons. Disabling until then //QIcon(":/res/mapMaze.png"), QComboBox::tr("generated maze...")); + + chooseMap->addItem(QComboBox::tr("hand drawn map...")); + chooseMap->insertSeparator(chooseMap->count()); // separator between generators and missions + chooseMap->insertSeparator(chooseMap->count()); // separator between generators and missions int missionindex = chooseMap->count(); @@ -252,6 +256,18 @@ emit mapgenChanged(mapgen); emit themeChanged(chooseMap->itemData(index).toList()[1].toString()); break; + case MAPGEN_DRAWN: + mapgen = MAPGEN_DRAWN; + changeImage(); + gbThemes->show(); + lblFilter->hide(); + CB_TemplateFilter->hide(); + maze_size_label->hide(); + maze_size_selection->hide(); + emit mapChanged("+drawn+"); + emit mapgenChanged(mapgen); + emit themeChanged(chooseMap->itemData(index).toList()[1].toString()); + break; default: loadMap(index); gbThemes->hide(); @@ -314,18 +330,16 @@ void HWMapContainer::themeSelected(int currentRow) { QString theme = Themes->at(currentRow); - QList mapInfoRegular; - mapInfoRegular.push_back(QString("+rnd+")); - mapInfoRegular.push_back(theme); - mapInfoRegular.push_back(18); - mapInfoRegular.push_back(false); - chooseMap->setItemData(0, mapInfoRegular); - QList mapInfoMaze; - mapInfoMaze.push_back(QString("+maze+")); - mapInfoMaze.push_back(theme); - mapInfoMaze.push_back(18); - mapInfoMaze.push_back(false); - chooseMap->setItemData(1, mapInfoMaze); + QList mapInfo; + mapInfo.push_back(QString("+rnd+")); + mapInfo.push_back(theme); + mapInfo.push_back(18); + mapInfo.push_back(false); + chooseMap->setItemData(0, mapInfo); + mapInfo[0] = QString("+maze+"); + chooseMap->setItemData(1, mapInfo); + mapInfo[0] = QString("+drawn+"); + chooseMap->setItemData(2, mapInfo); gbThemes->setIcon(QIcon(QString("%1/Themes/%2/icon.png").arg(datadir->absolutePath()).arg(theme))); emit themeChanged(theme); } @@ -376,7 +390,7 @@ void HWMapContainer::setMap(const QString & map) { - if(map == "+rnd+" || map == "+maze+") + if(map == "+rnd+" || map == "+maze+" || map == "+drawn+") { changeImage(); return; @@ -416,10 +430,11 @@ { case MAPGEN_REGULAR: case MAPGEN_MAZE: + case MAPGEN_DRAWN: setRandomTheme(); break; default: - if(chooseMap->currentIndex() < numMissions + 3) + if(chooseMap->currentIndex() < numMissions + 4) setRandomMission(); else setRandomStatic();