Author: cazfi Date: Fri May 12 19:58:25 2017 New Revision: 35528 URL: http://svn.gna.org/viewcvs/freeciv?rev=35528&view=rev Log: Add editing of effect requirements
See hrm Feature #659223 Modified: trunk/tools/ruledit/effect_edit.cpp trunk/tools/ruledit/effect_edit.h Modified: trunk/tools/ruledit/effect_edit.cpp URL: http://svn.gna.org/viewcvs/freeciv/trunk/tools/ruledit/effect_edit.cpp?rev=35528&r1=35527&r2=35528&view=diff ============================================================================== --- trunk/tools/ruledit/effect_edit.cpp (original) +++ trunk/tools/ruledit/effect_edit.cpp Fri May 12 19:58:25 2017 @@ -29,6 +29,7 @@ #include "effects.h" // ruledit +#include "req_edit.h" #include "ruledit.h" #include "validity.h" @@ -44,6 +45,7 @@ QGridLayout *effect_edit_layout = new QGridLayout(); QHBoxLayout *active_layout = new QHBoxLayout(); QPushButton *close_button; + QPushButton *reqs_button; QMenu *menu; QLabel *lbl; enum effect_type eff; @@ -51,6 +53,7 @@ ui = ui_in; selected = nullptr; filter = *filter_in; + name = target; list_widget = new QListWidget(this); effects = effect_list_new(); @@ -74,9 +77,13 @@ main_layout->addLayout(active_layout); + reqs_button = new QPushButton(QString::fromUtf8(R__("Requirements")), this); + connect(reqs_button, SIGNAL(pressed()), this, SLOT(edit_reqs())); + effect_edit_layout->addWidget(reqs_button, 0, 0); + close_button = new QPushButton(QString::fromUtf8(R__("Close")), this); connect(close_button, SIGNAL(pressed()), this, SLOT(close_now())); - effect_edit_layout->addWidget(close_button, 0, 0); + effect_edit_layout->addWidget(close_button, 1, 0); refresh(); @@ -141,7 +148,7 @@ QListWidgetItem *item; fc_snprintf(buf, sizeof(buf), _("Effect #%d: %s"), - data->num, effect_type_name(peffect->type)); + data->num + 1, effect_type_name(peffect->type)); item = new QListWidgetItem(QString::fromUtf8(buf)); list_widget->insertItem(data->num++, item); @@ -171,6 +178,7 @@ if (item != nullptr && item->isSelected()) { selected = peffect; + selected_nbr = i; fill_active(); return; } @@ -201,3 +209,21 @@ refresh(); } + +/************************************************************************** + User wants to edit requirements +**************************************************************************/ +void effect_edit::edit_reqs() +{ + if (selected != nullptr) { + char buf[128]; + req_edit *redit; + + fc_snprintf(buf, sizeof(buf), R__("%s effect #%d"), name.toUtf8().data(), + selected_nbr); + + redit = new req_edit(ui, QString::fromUtf8(buf), &selected->reqs); + + redit->show(); + } +} Modified: trunk/tools/ruledit/effect_edit.h URL: http://svn.gna.org/viewcvs/freeciv/trunk/tools/ruledit/effect_edit.h?rev=35528&r1=35527&r2=35528&view=diff ============================================================================== --- trunk/tools/ruledit/effect_edit.h (original) +++ trunk/tools/ruledit/effect_edit.h Fri May 12 19:58:25 2017 @@ -51,17 +51,20 @@ private: ruledit_gui *ui; + QString name; QListWidget *list_widget; struct universal filter; struct effect_list *effects; struct effect *selected; + int selected_nbr; QToolButton *edit_type_button; private slots: void select_effect(); void fill_active(); + void edit_reqs(); void close_now(); void effect_type_menu(QAction *action); _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits