Cache land texture update until frame render. This greately improves performance when there are many explosions, or you're using drilling weapon
/*
* Hedgewars, a free turn based strategy game
* Copyright (c) 2006-2008 Andrey Korotaev <unC0Rr@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#include <QGridLayout>
#include <QSvgWidget>
#include <QLabel>
#include <QTextBrowser>
#include "about.h"
#include "hwconsts.h"
About::About(QWidget * parent) :
QWidget(parent)
{
QGridLayout *mainLayout = new QGridLayout(this);
QSvgWidget *hedgehog = new QSvgWidget(":/res/Hedgehog.svg", this);
hedgehog->setFixedSize(300, 329);
mainLayout->addWidget(hedgehog, 0, 0, 2, 1);
QLabel *lbl1 = new QLabel(this);
lbl1->setOpenExternalLinks(true);
lbl1->setText(
"<div align=\"center\"><h1>Hedgewars</h1>"
"<h3>" + QLabel::tr("Version") + " " + *cVersionString + "</h3>"
"<p><a href=\"http://www.hedgewars.org/\">http://www.hedgewars.org/</a></p><br>" +
QLabel::tr("This program is distributed under the GNU General Public License") +
"</div>"
);
lbl1->setWordWrap(true);
mainLayout->addWidget(lbl1, 0, 1);
QTextBrowser *lbl2 = new QTextBrowser(this);
lbl2->setOpenExternalLinks(true);
lbl2->setText( QString("<h2>") +
QLabel::tr("Developers:") +
"</h2><p>"
"Engine, frontend, net server: Andrey Korotaev <<a href=\"mailto:unC0Rr@gmail.com\">unC0Rr@gmail.com</a>><br>"
"Many frontend improvements: Igor Ulyanov <<a href=\"mailto:disinbox@gmail.com\">disinbox@gmail.com</a>><br>"
"Drill rocket, Ballgun, RC Plane weapons: Martin Boze <<a href=\"mailto:afffect@gmail.com\">afffect@gmail.com</a>>"
"</p><h2>" +
QLabel::tr("Art:") + "</h2>"
+ QString::fromUtf8(
"<p>All sprites, all themes except for mentioned below: Finn Brice <<a href=\"mailto:tiyuri@gmail.com\">tiyuri@gmail.com</a>>"
"<br>"
"\"Bamboo\", \"EarthRise\", \"Freeway\" maps and themes: Joshua Frese <<a href=\"mailto:joshfrese@gmail.com\">joshfrese@gmail.com</a>>"
"<br>"
"\"Castle\", \"PirateFlag\" maps, \"hell\" theme: Stanko Tadić <<a href=\"mailto:stanko@mfhinc.net\">stanko@mfhinc.net</a>>"
"<br>"
"\"Sheep\" theme: Julien Koesten <<a href=\"mailto:julienkoesten@aol.com\">julienkoesten@aol.com</a>>"
"<br>"
"\"Blox\", \"Cake\", \"Cogs\" maps: Joshua O'Sullivan <<a href=\"mailto:battysausage@hotmail.co.uk\">battysausage@hotmail.co.uk</a>>"
"</p><h2>") +
QLabel::tr("Sounds:") + "</h2>"
"Hedgehogs voice: Stephen Alexander <<a href=\"mailto:ArmagonNo1@gmail.com\">ArmagonNo1@gmail.com</a>>"
"<br>"
"\"Nature\" music theme: Finn Brice <<a href=\"mailto:tiyuri@gmail.com\">tiyuri@gmail.com</a>>"
"<br>"
"\"Pirate\", \"City\", \"Oriental\", \"Snow\" music themes: Jonatan Nilsson <<a href=\"mailto:jonatanfan@gmail.com\">jonatanfan@gmail.com</a>>"
"</p><h2>" +
QLabel::tr("Translations:") + "</h2><p>"
+ QString::fromUtf8(
"Brazilian Portuguese: Romulo Fernandes Machado <<a href=\"mailto:abra185@gmail.com\">abra185@gmail.com</a>><br>"
"Bulgarian: Svetoslav Stefanov<br>"
"Czech: Petr Řezáček <<a href=\"mailto:rezacek@gmail.com\">rezacek@gmail.com</a>><br>"
"Chinese: Jie Luo <<a href=\"mailto:lililjlj@gmail.com\">lililjlj@gmail.com</a>><br>"
"English: Andrey Korotaev <<a href=\"mailto:unC0Rr@gmail.com\">unC0Rr@gmail.com</a>><br>"
"French: Antoine Turmel <<a href=\"mailto:geekshadow@gmail.com\">geekshadow@gmail.com</a>><br>"
"German: Peter Hüwe <<a href=\"mailto:PeterHuewe@gmx.de\">PeterHuewe@gmx.de</a>><br>"
"Italian: Luca Bonora <<a href=\"mailto:bonora.luca@gmail.com\">bonora.luca@gmail.com</a>><br>"
"Japanese: ADAM Etienne <<a href=\"mailto:etienne.adam@gmail.com\">etienne.adam@gmail.com></a>><br>"
"Polish: Maciej Mroziński <<a href=\"mailto:mynick2@o2.pl\">mynick2@o2.pl</a>>, Wojciech Latkowski <<a href=\"mailto:magik_15l@poczta.fm\">magik_15l@poczta.fm</a>><br>"
"Russian: Andrey Korotaev <<a href=\"mailto:unC0Rr@gmail.com\">unC0Rr@gmail.com</a>><br>"
"Slovak: Jose Riha<br>"
"Spanish: Carlos Vives <<a href=\"mailto:mail@carlosvives.es\">mail@carlosvives.es</a>><br>"
"Swedish: Niklas Grahn <<a href=\"mailto:raewolusjoon@yaoo.com\">raewolusjoon@yaoo.com</a>><br>"
"Ukrainian: Eugene V. Lyubimkin <<a href=\"mailto:jackyf.devel@gmail.com\">jackyf.devel@gmail.com</a>>"
"</p><h2>") +
QLabel::tr("Special thanks:") + "</h2><p>"
"Aleksey Andreev <<a href=\"mailto:blaknayabr@gmail.com\">blaknayabr@gmail.com</a>><br>"
"Aleksander Rudalev <<a href=\"mailto:alexv@pomorsu.ru\">alexv@pomorsu.ru</a>><br>"
"Natasha Stafeeva <<a href=\"mailto:layout@pisem.net\">layout@pisem.net</a>><br>"
"Adam Higerd (aka ahigerd at FreeNode)"
"</p>"
);
mainLayout->addWidget(lbl2, 1, 1);
}