parent
ae3256947f
commit
a57b51348a
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 140 KiB |
@ -0,0 +1,173 @@
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2006-2012 by Thomas Schweitzer *
|
||||
* thomas-schweitzer(at)arcor.de *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License version 2.0 as *
|
||||
* published by the Free Software Foundation. *
|
||||
* *
|
||||
* 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 in the file LICENSE.GPL; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||
***************************************************************************/
|
||||
|
||||
#include "config.h"
|
||||
#include "AboutDialog.h"
|
||||
|
||||
//----#include "UiGuiVersion.h"
|
||||
|
||||
//----#include <tqurl.h>
|
||||
//----#include <tqdesktopservices.h>
|
||||
//----#include <tqlocale.h>
|
||||
#include <tqlabel.h>
|
||||
#include <tqpushbutton.h>
|
||||
#include <tqpixmap.h>
|
||||
#include <tqscrollbar.h>
|
||||
#include <tqtimer.h>
|
||||
|
||||
/*!
|
||||
\class AboutDialog
|
||||
\brief Displays a dialog window with information about UniversalIndentGUI
|
||||
*/
|
||||
|
||||
/*!
|
||||
\brief The constructor calls the setup function for the ui created by uic and adds
|
||||
the GPL text to the text edit.
|
||||
*/
|
||||
AboutDialog::AboutDialog(TQWidget *parent, WFlags flags) :
|
||||
AboutDialogBase(parent, NULL, FALSE, flags), m_timer(NULL)
|
||||
{
|
||||
// For icon setup
|
||||
const TQString ICONS_PATH(APP_ICONS_PATH);
|
||||
|
||||
bannerLabel->setPixmap(TQPixmap(ICONS_PATH + "banner.png"));
|
||||
//---- _dialogForm->authorTextBrowser->setOpenExternalLinks(true);
|
||||
//---- _dialogForm->creditsTextBrowser->setOpenExternalLinks(true);
|
||||
//----
|
||||
//---- TQString versionString = _dialogForm->versionTextBrowser->toHtml();
|
||||
//---- versionString =
|
||||
//---- versionString.arg(PROGRAM_VERSION_STRING).arg(UiGuiVersion::getBuildRevision()).arg(
|
||||
//---- UiGuiVersion::getBuildDate());
|
||||
//---- _dialogForm->versionTextBrowser->setHtml(versionString);
|
||||
//----
|
||||
//---- _dialogForm->creditsTextBrowser->setHtml("<html><head></head><body>"
|
||||
//---- "<pre> </br></pre>"
|
||||
//---- "<h3 align='center'>Thanks go out to</h3>"
|
||||
//---- "<p align='center'><a href=\"http://www.csie.nctu.edu.tw/~chtai/\"><b>Nelson Tai</b></a> for Chinese translation, good ideas and always fast answers.</p></br>"
|
||||
//---- "<p align='center'><a href=\"http://www.hartwork.org/\"><b>Sebastian Pipping</b></a> for helping me bring UiGUI into the Debian repository and other good ideas.</p></br>"
|
||||
//---- "<p align='center'><a href=\"http://korytskyy.lviv.ua/\"><b>Oleksandr</b></a> for Ukrainian and Russian translation.</p></br>"
|
||||
//---- "<p align='center'><b>Erwan "leg"</b> for French translation and the icon logo.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.scintilla.org/\"><b>Scintilla</b></a> project for their great text editing component.</p></br>"
|
||||
//---- "<p align='center'><a href=\"http://www.riverbankcomputing.co.uk/software/qscintilla/\"><b>Riverbank</b></a> for their Scintilla TQt wrapper TQScintilla.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://astyle.sourceforge.net/\"><b>Artistic Style</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://invisible-island.net/bcpp/\"><b>BCPP</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.siber.com/sct/tools/cbl-beau.html\"><b>Cobol Beautifier</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://csstidy.sourceforge.net/\"><b>CSSTidy</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"ftp://ftp.ifremer.fr/ifremer/ditigo/fortran90/\"><b>Fortran 90 PPR</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.gnu.org/software/indent/\"><b>GNU Indent</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://sourceforge.net/projects/gcgreatcode/\"><b>GreatCode</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://linux.com.hk/penguin/man/1/hindent.html\"><b>hindent</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.digital-mines.com/htb/\"><b>HTB</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://tidy.sourceforge.net/\"><b>HTML Tidy</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://code.gosu.pl/\"><b>JsDecoder</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://jsppp.sourceforge.net/\"><b>JSPPP</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://perltidy.sourceforge.net/\"><b>Perltidy</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://beautifyphp.sourceforge.net/\"><b>PHP_Beautifier</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.waterproof.fr/products/phpCodeBeautifier/\"><b>phpCB</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://sourceforge.net/projects/phpstylist/\"><b>PHP Stylist</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://coverage.livinglogic.de/Tools/scripts/pindent.py.html\"><b>pindent</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://psti.etquinoxbase.com/\"><b>Pl/Sql tidy</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.arachnoid.com/ruby/rubyBeautifier.html\"><b>Ruby Beautifier</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://raa.ruby-lang.org/project/ruby_formatter/\"><b>Ruby Formatter</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.bolthole.com/AWK.html\"><b>Shell Indent</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://uncrustify.sourceforge.net/\"><b>Uncrustify</b></a> project, specially <b>Ben Gardner</b>.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://www.daansystems.com/vbsbeaut/\"><b>VBSBeautifier</b></a> project.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://xmlindent.sourceforge.net/\"><b>XML Indent</b></a> project.</p></br>"
|
||||
//---- "<p align='center'><b>Nirvash</b> for the initial Japanese translation.</p></br>"
|
||||
//---- "<p align='center'>The <a href=\"http://tango.freedesktop.org/Tango_Desktop_Project/\"><b>Tango Project</b></a> for their icons.</p></br>"
|
||||
//---- "<p align='center'><a href=\"http://www.famfamfam.com/\"><b>famfamfam</b></a> for the flag icons.</p></br>"
|
||||
//---- "<p align='center'><a href=\"http://trolltech.com/\"><b>Trolltech</b></a> for their really great GUI framework <img src=\":/aboutDialog/qt_logo.png\"/>.</p></br>"
|
||||
//---- "<h3 align='center'>My girlfriend (meanwhile also wife) for putting my head right and not sit all the time in front of my computer ;-)</h3>"
|
||||
//---- "</body></html>");
|
||||
//----
|
||||
m_scrollDirection = 1;
|
||||
m_scrollSpeed = 100;
|
||||
m_timer = new TQTimer(this);
|
||||
|
||||
connect(m_timer, SIGNAL(timeout()), this, SLOT(scroll()));
|
||||
connect(okButton, SIGNAL(clicked()), this, SLOT(accept()));
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief Catches language change events and retranslates all needed widgets.
|
||||
*/
|
||||
void AboutDialog::changeEvent(TQEvent *event)
|
||||
{
|
||||
//---- if (event->type() == TQEvent::LanguageChange)
|
||||
//---- {
|
||||
//---- _dialogForm->retranslateUi(this);
|
||||
//----
|
||||
//---- TQString versionString = _dialogForm->versionTextBrowser->toHtml();
|
||||
//---- versionString =
|
||||
//---- versionString.arg(PROGRAM_VERSION_STRING).arg(UiGuiVersion::getBuildRevision()).arg(
|
||||
//---- UiGuiVersion::getBuildDate());
|
||||
//---- _dialogForm->versionTextBrowser->setHtml(versionString);
|
||||
//---- }
|
||||
//---- else
|
||||
//---- {
|
||||
//---- TQWidget::changeEvent(event);
|
||||
//---- }
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief Reimplements the dialog execution function to init the credits scroller.
|
||||
*/
|
||||
void AboutDialog::show()
|
||||
{
|
||||
//---- //creditsTextBrowser->verticalScrollBar()->setValue(0);
|
||||
m_timer->start(m_scrollSpeed);
|
||||
AboutDialogBase::show();
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief This slot is called each m_timer timeout to scroll the credits textbrowser.
|
||||
Also changes the scroll direction and speed when reaching the start or end.
|
||||
*/
|
||||
void AboutDialog::scroll()
|
||||
{
|
||||
//---- TQScrollBar *scrollBar = _dialogForm->creditsTextBrowser->verticalScrollBar();
|
||||
//---- scrollBar->setValue(scrollBar->value() + m_scrollDirection);
|
||||
//----
|
||||
//---- if (scrollBar->value() == scrollBar->maximum())
|
||||
//---- {
|
||||
//---- // Toggle scroll direction and change scroll speed;
|
||||
//---- m_scrollDirection = -1;
|
||||
//---- m_scrollSpeed = 5;
|
||||
//---- m_timer->stop();
|
||||
//---- m_timer->start(m_scrollSpeed);
|
||||
//---- }
|
||||
//---- else if (scrollBar->value() == scrollBar->minimum())
|
||||
//---- {
|
||||
//---- // Toggle scroll direction and change scroll speed;
|
||||
//---- m_scrollDirection = 1;
|
||||
//---- m_scrollSpeed = 100;
|
||||
//---- m_timer->stop();
|
||||
//---- m_timer->start(m_scrollSpeed);
|
||||
//---- }
|
||||
//----
|
||||
//---- _dialogForm->creditsTextBrowser->update();
|
||||
}
|
||||
|
||||
void AboutDialog::accept()
|
||||
{
|
||||
m_timer->stop();
|
||||
TQDialog::accept();
|
||||
}
|
||||
|
||||
#include "AboutDialog.moc"
|
@ -0,0 +1,114 @@
|
||||
<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
|
||||
<class>AboutDialogBase</class>
|
||||
<widget class="TQDialog">
|
||||
<property name="name">
|
||||
<cstring>AboutDialogBase</cstring>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>588</width>
|
||||
<height>512</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy>
|
||||
<hsizetype>0</hsizetype>
|
||||
<vsizetype>5</vsizetype>
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>588</width>
|
||||
<height>333</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="caption">
|
||||
<string>About UniversalIndentGUI</string>
|
||||
</property>
|
||||
<vbox>
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="TQFrame">
|
||||
<property name="name">
|
||||
<cstring>frame</cstring>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>StyledPanel</enum>
|
||||
</property>
|
||||
<vbox>
|
||||
<widget class="TQLabel">
|
||||
<property name="name">
|
||||
<cstring>bannerLabel</cstring>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy>
|
||||
<hsizetype>0</hsizetype>
|
||||
<vsizetype>0</vsizetype>
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>570</width>
|
||||
<height>87</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>570</width>
|
||||
<height>87</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string></string>
|
||||
</property>
|
||||
</widget>
|
||||
<hbox>
|
||||
<spacer>
|
||||
<property name="name">
|
||||
<cstring>spacer1</cstring>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>TQt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
<widget class="TQPushButton">
|
||||
<property name="name">
|
||||
<cstring>okButton</cstring>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>OK</string>
|
||||
</property>
|
||||
</widget>
|
||||
<spacer>
|
||||
<property name="name">
|
||||
<cstring>spacer2</cstring>
|
||||
</property>
|
||||
<property name="orientation">
|
||||
<enum>TQt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</hbox>
|
||||
</vbox>
|
||||
</widget>
|
||||
</vbox>
|
||||
</widget>
|
||||
</UI>
|
@ -1,169 +0,0 @@
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2006-2012 by Thomas Schweitzer *
|
||||
* thomas-schweitzer(at)arcor.de *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License version 2.0 as *
|
||||
* published by the Free Software Foundation. *
|
||||
* *
|
||||
* 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 in the file LICENSE.GPL; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||
***************************************************************************/
|
||||
|
||||
#include "AboutDialog.h"
|
||||
#include "ui_AboutDialog.h"
|
||||
|
||||
#include "UiGuiVersion.h"
|
||||
|
||||
#include <tntqurl.h>
|
||||
#include <tqdesktopservices.h>
|
||||
#include <tntqscrollbar.h>
|
||||
#include <tntqtimer.h>
|
||||
#include <tntqlocale.h>
|
||||
|
||||
/*!
|
||||
\class AboutDialog
|
||||
\brief Displays a dialog window with information about UniversalIndentGUI
|
||||
*/
|
||||
|
||||
/*!
|
||||
\brief The constructor calls the setup function for the ui created by uic and adds
|
||||
the GPL text to the text edit.
|
||||
*/
|
||||
AboutDialog::AboutDialog(TQWidget *parent, TQt::WindowFlags flags) :
|
||||
TQDialog(parent, flags), _dialogForm(NULL), _timer(NULL)
|
||||
{
|
||||
_dialogForm = new Ui::AboutDialog();
|
||||
_dialogForm->setupUi(this);
|
||||
|
||||
_dialogForm->authorTextBrowser->setOpenExternalLinks(true);
|
||||
_dialogForm->creditsTextBrowser->setOpenExternalLinks(true);
|
||||
|
||||
TQString versionString = _dialogForm->versionTextBrowser->toHtml();
|
||||
versionString =
|
||||
versionString.arg(PROGRAM_VERSION_STRING).arg(UiGuiVersion::getBuildRevision()).arg(
|
||||
UiGuiVersion::getBuildDate());
|
||||
_dialogForm->versionTextBrowser->setHtml(versionString);
|
||||
|
||||
_dialogForm->creditsTextBrowser->setHtml("<html><head></head><body>"
|
||||
"<pre> </br></pre>"
|
||||
"<h3 align='center'>Thanks go out to</h3>"
|
||||
"<p align='center'><a href=\"http://www.csie.nctu.edu.tw/~chtai/\"><b>Nelson Tai</b></a> for Chinese translation, good ideas and always fast answers.</p></br>"
|
||||
"<p align='center'><a href=\"http://www.hartwork.org/\"><b>Sebastian Pipping</b></a> for helping me bring UiGUI into the Debian repository and other good ideas.</p></br>"
|
||||
"<p align='center'><a href=\"http://korytskyy.lviv.ua/\"><b>Oleksandr</b></a> for Ukrainian and Russian translation.</p></br>"
|
||||
"<p align='center'><b>Erwan "leg"</b> for French translation and the icon logo.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.scintilla.org/\"><b>Scintilla</b></a> project for their great text editing component.</p></br>"
|
||||
"<p align='center'><a href=\"http://www.riverbankcomputing.co.uk/software/qscintilla/\"><b>Riverbank</b></a> for their Scintilla TQt wrapper TQScintilla.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://astyle.sourceforge.net/\"><b>Artistic Style</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://invisible-island.net/bcpp/\"><b>BCPP</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.siber.com/sct/tools/cbl-beau.html\"><b>Cobol Beautifier</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://csstidy.sourceforge.net/\"><b>CSSTidy</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"ftp://ftp.ifremer.fr/ifremer/ditigo/fortran90/\"><b>Fortran 90 PPR</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.gnu.org/software/indent/\"><b>GNU Indent</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://sourceforge.net/projects/gcgreatcode/\"><b>GreatCode</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://linux.com.hk/penguin/man/1/hindent.html\"><b>hindent</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.digital-mines.com/htb/\"><b>HTB</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://tidy.sourceforge.net/\"><b>HTML Tidy</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://code.gosu.pl/\"><b>JsDecoder</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://jsppp.sourceforge.net/\"><b>JSPPP</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://perltidy.sourceforge.net/\"><b>Perltidy</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://beautifyphp.sourceforge.net/\"><b>PHP_Beautifier</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.waterproof.fr/products/phpCodeBeautifier/\"><b>phpCB</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://sourceforge.net/projects/phpstylist/\"><b>PHP Stylist</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://coverage.livinglogic.de/Tools/scripts/pindent.py.html\"><b>pindent</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://psti.etquinoxbase.com/\"><b>Pl/Sql tidy</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.arachnoid.com/ruby/rubyBeautifier.html\"><b>Ruby Beautifier</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://raa.ruby-lang.org/project/ruby_formatter/\"><b>Ruby Formatter</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.bolthole.com/AWK.html\"><b>Shell Indent</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://uncrustify.sourceforge.net/\"><b>Uncrustify</b></a> project, specially <b>Ben Gardner</b>.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://www.daansystems.com/vbsbeaut/\"><b>VBSBeautifier</b></a> project.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://xmlindent.sourceforge.net/\"><b>XML Indent</b></a> project.</p></br>"
|
||||
"<p align='center'><b>Nirvash</b> for the initial Japanese translation.</p></br>"
|
||||
"<p align='center'>The <a href=\"http://tango.freedesktop.org/Tango_Desktop_Project/\"><b>Tango Project</b></a> for their icons.</p></br>"
|
||||
"<p align='center'><a href=\"http://www.famfamfam.com/\"><b>famfamfam</b></a> for the flag icons.</p></br>"
|
||||
"<p align='center'><a href=\"http://trolltech.com/\"><b>Trolltech</b></a> for their really great GUI framework <img src=\":/aboutDialog/qt_logo.png\"/>.</p></br>"
|
||||
"<h3 align='center'>My girlfriend (meanwhile also wife) for putting my head right and not sit all the time in front of my computer ;-)</h3>"
|
||||
"</body></html>");
|
||||
|
||||
_scrollDirection = 1;
|
||||
_scrollSpeed = 100;
|
||||
_timer = new TQTimer(this);
|
||||
connect(_timer, SIGNAL(timeout()), this, SLOT(scroll()));
|
||||
connect(this, SIGNAL(accepted()), _timer, SLOT(stop()));
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief Catches language change events and retranslates all needed widgets.
|
||||
*/
|
||||
void AboutDialog::changeEvent(TQEvent *event)
|
||||
{
|
||||
if (event->type() == TQEvent::LanguageChange)
|
||||
{
|
||||
_dialogForm->retranslateUi(this);
|
||||
|
||||
TQString versionString = _dialogForm->versionTextBrowser->toHtml();
|
||||
versionString =
|
||||
versionString.arg(PROGRAM_VERSION_STRING).arg(UiGuiVersion::getBuildRevision()).arg(
|
||||
UiGuiVersion::getBuildDate());
|
||||
_dialogForm->versionTextBrowser->setHtml(versionString);
|
||||
}
|
||||
else
|
||||
{
|
||||
TQWidget::changeEvent(event);
|
||||
}
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief Reimplements the dialog execution function to init the credits scroller.
|
||||
*/
|
||||
int AboutDialog::exec()
|
||||
{
|
||||
//creditsTextBrowser->verticalScrollBar()->setValue(0);
|
||||
_timer->start(_scrollSpeed);
|
||||
return TQDialog::exec();
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief This slot is called each _timer timeout to scroll the credits textbrowser.
|
||||
Also changes the scroll direction and speed when reaching the start or end.
|
||||
*/
|
||||
void AboutDialog::scroll()
|
||||
{
|
||||
TQScrollBar *scrollBar = _dialogForm->creditsTextBrowser->verticalScrollBar();
|
||||
scrollBar->setValue(scrollBar->value() + _scrollDirection);
|
||||
|
||||
if (scrollBar->value() == scrollBar->maximum())
|
||||
{
|
||||
// Toggle scroll direction and change scroll speed;
|
||||
_scrollDirection = -1;
|
||||
_scrollSpeed = 5;
|
||||
_timer->stop();
|
||||
_timer->start(_scrollSpeed);
|
||||
}
|
||||
else if (scrollBar->value() == scrollBar->minimum())
|
||||
{
|
||||
// Toggle scroll direction and change scroll speed;
|
||||
_scrollDirection = 1;
|
||||
_scrollSpeed = 100;
|
||||
_timer->stop();
|
||||
_timer->start(_scrollSpeed);
|
||||
}
|
||||
|
||||
_dialogForm->creditsTextBrowser->update();
|
||||
}
|
||||
|
||||
/*!
|
||||
\brief Shows the about dialog and also starts the credits scroller.
|
||||
*/
|
||||
void AboutDialog::show()
|
||||
{
|
||||
_timer->start(_scrollSpeed);
|
||||
TQDialog::show();
|
||||
}
|
Loading…
Reference in new issue