RetroShare/plugins/qsolocards_plugin/About.cpp
defnax 082d5732b0 added game plugin solocards
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2346 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-02-17 01:14:52 +00:00

97 lines
3.6 KiB
C++

/*
QSoloCards is a collection of Solitaire card games written using Qt
Copyright (C) 2009 Steve Moore
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, either version 3 of the License, or
(at your option) any later version.
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, see <http://www.gnu.org/licenses/>.
*/
#include "About.h"
#include <QtGui/QHBoxLayout>
#include <QtGui/QVBoxLayout>
#include <QtGui/QPixmap>
#include <QtGui/QLabel>
#include <QtGui/QDialogButtonBox>
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
About::About(QWidget * pParent)
:QDialog(pParent)
{
this->setWindowTitle(tr("About QSoloCards").trimmed());
// Layout the dialog a Vbox that will be the top level. And contain the HBox that has the icon and text
// and then the dialogButtonBox for the close button.
QVBoxLayout * pLayout=new QVBoxLayout;
QHBoxLayout * pMainLayout=new QHBoxLayout;
QLabel * pIconLabel=new QLabel(this);
pIconLabel->setPixmap(QPixmap(":/images/sol128x128.png"));
pMainLayout->addWidget(pIconLabel,0,Qt::AlignTop|Qt::AlignLeft);
QLabel * pWordsLabel=new QLabel(this);
pWordsLabel->setWordWrap(true);
// set the text for the about box. The .pro file is setup to pass
// VER_MAJ, VER_MIN, VER_PAT as a param when the file is compiled
// So, version info is contained only in the .pro file and can be
// easily changed in one place.
pWordsLabel->setText(tr("<h3>QSoloCards %1.%2.%3</h3>"
"<p>A collection of Solitaire Games written in Qt.</p>"
"<p/>"
"<p/>"
"<p>Copyright 2009 Steve Moore</p>"
"<p/>"
"<p> License: <a href="":/help/gpl3.html"">GPLv3</a></p>"
"<p/>"
"<p/>"
"<p>Graphics: Playing cards are a modified version of the anglo_bitmap cards from Gnome-Games' AisleRiot.</p>"
).arg(QString::number(VER_MAJ)).arg(QString::number(VER_MIN)).arg(QString::number(VER_PAT)));
connect(pWordsLabel,SIGNAL(linkActivated(QString)),
this,SLOT(slotLinkActivated(QString)));
pMainLayout->addWidget(pWordsLabel,0,Qt::AlignTop|Qt::AlignHCenter);
pLayout->addLayout(pMainLayout,20);
QDialogButtonBox * pButtonBox=new QDialogButtonBox(this);
pButtonBox->addButton(QDialogButtonBox::Close);
pLayout->addWidget(pButtonBox,1);
connect(pButtonBox, SIGNAL(rejected()), this, SLOT(reject()));
// don't allow resizing the window.
pLayout->setSizeConstraint(QLayout::SetFixedSize);
this->setLayout(pLayout);
}
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
About::~About()
{
}
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////
void About::slotLinkActivated(const QString & link)
{
emit showLink(link);
}