void
DlgRuleEditorFilterAddressPage::update(Subject *subject)
{
	if (subject == filterPolicy_) {
		/* This is our policy. */
		showSource();
		showDestination();
	}
}
Ejemplo n.º 2
0
TavernWindow::TavernWindow(Player *player, Board *board, GameMaster *gameMaster, PlayerWindow *playerWindow, QList <Quest *> *availableQuests)
	: player_(player), board_(board), gameMaster_(gameMaster), playerWindow_(playerWindow), availableQuests_(availableQuests)
{
	QVBoxLayout *mainLayout = new QVBoxLayout(this);
	setWindowTitle("Tawerna");
	questRejected = false;

	QLabel *currentQuestsLabel = new QLabel("Twoje dotychczasowe zadania");
	currentQuestsWidget = new QListWidget();
	currentQuestsWidget->setToolTip(QString::fromUtf8("Lista zadań, które aktualnie wykonujesz."));

	QLabel *availableQuestsLabel = new QLabel(QString::fromUtf8("Zadania dostępne do przyjęcia\n(możesz jednocześnie wykonywać ") +
					 QString::number(MaximumNumberOfQuestsTaken) +
					 QString::fromUtf8(" zadań)"));
	availableQuestsWidget = new QListWidget();
	availableQuestsWidget->setToolTip(QString::fromUtf8("Lista zadań, które możesz przyjąć w tym miejscu."));

	fillQuestListWidgets();

	QVBoxLayout *leftLayout = new QVBoxLayout();
	leftLayout->addWidget(currentQuestsLabel);
	leftLayout->addWidget(currentQuestsWidget);
	leftLayout->addWidget(availableQuestsLabel);
	leftLayout->addWidget(availableQuestsWidget);
	QHBoxLayout *upperLayout = new QHBoxLayout();
	upperLayout->addLayout(leftLayout);

	questDescriptionWidget = new QTextBrowser();
	questDescriptionWidget->setToolTip(QString::fromUtf8("Dokładny opis zaznaczonego zadania"));
	upperLayout->addWidget(questDescriptionWidget);
	mainLayout->addLayout(upperLayout);

	showDestinationButton = new QPushButton(QString::fromUtf8("Pokaz hex z celem"));
	showDestinationButton->setToolTip(QString::fromUtf8("Wyszczególnia hex, do którego należy się aktualnie udać, aby wykonać zadanie."));
	showDestinationButton->setEnabled(false);
	acceptQuestButton = new QPushButton("Przyjmij");
	acceptQuestButton->setToolTip(QString::fromUtf8("Zależnie od sytuacji, przycisk pozwala przyjąć lub odrzucić zaznaczone zadanie"));
	acceptQuestButton->setEnabled(false);
	QPushButton *confirmButton = new QPushButton("Ok");

	QHBoxLayout *lowerLayout = new QHBoxLayout();
	lowerLayout->addStretch();
	lowerLayout->addWidget(showDestinationButton);
	lowerLayout->addWidget(acceptQuestButton);
	lowerLayout->addWidget(confirmButton);
	mainLayout->addLayout(lowerLayout);

	connect(currentQuestsWidget, SIGNAL(clicked(const QModelIndex &)), this, SLOT(displayPlayerQuest(const QModelIndex &)));
	connect(availableQuestsWidget, SIGNAL(clicked(const QModelIndex &)), this, SLOT(displayAvailableQuest(const QModelIndex &)));

	connect(confirmButton, SIGNAL(clicked()), this, SLOT(generateQuests()));
	connect(confirmButton, SIGNAL(clicked()), this, SLOT(close()));
	connect(showDestinationButton, SIGNAL(clicked()), this, SLOT(showDestination()));
	connect(acceptQuestButton, SIGNAL(clicked()), this, SLOT(processQuest()));
}