44 GBoxOptions->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); |
44 GBoxOptions->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); |
45 mainLayout.addWidget(GBoxOptions); |
45 mainLayout.addWidget(GBoxOptions); |
46 |
46 |
47 QGridLayout *GBoxOptionsLayout = new QGridLayout(GBoxOptions); |
47 QGridLayout *GBoxOptionsLayout = new QGridLayout(GBoxOptions); |
48 |
48 |
49 tv = new QTableView(this); |
49 GameSchemes = new QComboBox(GBoxOptions); |
50 GBoxOptionsLayout->addWidget(tv, 0, 0, 1, 2); |
50 GBoxOptionsLayout->addWidget(GameSchemes, 0, 1); |
51 |
51 |
52 QPushButton * goToSchemePage = new QPushButton(GBoxOptions); |
52 QPushButton * goToSchemePage = new QPushButton(GBoxOptions); |
53 goToSchemePage->setText(tr("Edit schemes")); |
53 goToSchemePage->setText(tr("Edit schemes")); |
54 GBoxOptionsLayout->addWidget(goToSchemePage, 1, 0, 1, 2); |
54 GBoxOptionsLayout->addWidget(goToSchemePage, 1, 0, 1, 2); |
55 connect(goToSchemePage, SIGNAL(clicked()), this, SIGNAL(goToSchemes())); |
55 connect(goToSchemePage, SIGNAL(clicked()), this, SIGNAL(goToSchemes())); |
65 connect(pMapContainer, SIGNAL(mapChanged(const QString &)), this, SLOT(mapChanged(const QString &))); |
65 connect(pMapContainer, SIGNAL(mapChanged(const QString &)), this, SLOT(mapChanged(const QString &))); |
66 connect(pMapContainer, SIGNAL(themeChanged(const QString &)), this, SLOT(themeChanged(const QString &))); |
66 connect(pMapContainer, SIGNAL(themeChanged(const QString &)), this, SLOT(themeChanged(const QString &))); |
67 connect(pMapContainer, SIGNAL(newTemplateFilter(int)), this, SLOT(templateFilterChanged(int))); |
67 connect(pMapContainer, SIGNAL(newTemplateFilter(int)), this, SLOT(templateFilterChanged(int))); |
68 } |
68 } |
69 |
69 |
|
70 QVariant GameCFGWidget::schemeData(int column) const |
|
71 { |
|
72 return GameSchemes->model()->data(GameSchemes->model()->index(GameSchemes->currentIndex(), column)); |
|
73 } |
|
74 |
70 quint32 GameCFGWidget::getGameFlags() const |
75 quint32 GameCFGWidget::getGameFlags() const |
71 { |
76 { |
72 quint32 result = 0; |
77 quint32 result = 0; |
73 |
78 |
74 /* if (CB_mode_Forts->isChecked()) |
79 if (schemeData(1).toBool()) |
75 result |= 0x01; |
80 result |= 0x01; |
76 if (CB_teamsDivide->isChecked()) |
81 if (schemeData(2).toBool()) |
77 result |= 0x10; |
82 result |= 0x10; |
78 if (CB_solid->isChecked()) |
83 if (schemeData(3).toBool()) |
79 result |= 0x04; |
84 result |= 0x04; |
80 if (CB_border->isChecked()) |
85 if (schemeData(4).toBool()) |
81 result |= 0x08;*/ |
86 result |= 0x08; |
82 |
87 |
83 return result; |
88 return result; |
84 } |
89 } |
85 |
90 |
86 quint32 GameCFGWidget::getInitHealth() const |
91 quint32 GameCFGWidget::getInitHealth() const |
87 { |
92 { |
88 // return SB_InitHealth->value(); |
93 return schemeData(6).toInt(); |
89 } |
94 } |
90 |
95 |
91 QStringList GameCFGWidget::getFullConfig() const |
96 QStringList GameCFGWidget::getFullConfig() const |
92 { |
97 { |
93 QStringList sl; |
98 QStringList sl; |
94 sl.append("eseed " + pMapContainer->getCurrentSeed()); |
99 sl.append("eseed " + pMapContainer->getCurrentSeed()); |
95 sl.append(QString("e$gmflags %1").arg(getGameFlags())); |
100 sl.append(QString("e$gmflags %1").arg(getGameFlags())); |
96 // sl.append(QString("e$turntime %1").arg(SB_TurnTime->value() * 1000)); |
101 sl.append(QString("e$turntime %1").arg(schemeData(5).toInt() * 1000)); |
97 // sl.append(QString("e$sd_turns %1").arg(SB_SuddenDeath->value())); |
102 sl.append(QString("e$sd_turns %1").arg(schemeData(7).toInt())); |
98 // sl.append(QString("e$casefreq %1").arg(SB_CaseProb->value())); |
103 sl.append(QString("e$casefreq %1").arg(schemeData(8).toInt())); |
99 sl.append(QString("e$template_filter %1").arg(pMapContainer->getTemplateFilter())); |
104 sl.append(QString("e$template_filter %1").arg(pMapContainer->getTemplateFilter())); |
100 |
105 |
101 QString currentMap = pMapContainer->getCurrentMap(); |
106 QString currentMap = pMapContainer->getCurrentMap(); |
102 if (currentMap.size() > 0) |
107 if (currentMap.size() > 0) |
103 sl.append("emap " + currentMap); |
108 sl.append("emap " + currentMap); |