Scribus Developer Documentation - API
logo-pen

Scribus Developer Documentation - API

about.cpp

Go to the documentation of this file.
00001 /*
00002 For general Scribus (>=1.3.2) copyright and licensing information please refer
00003 to the COPYING file provided with the program. Following this notice may exist
00004 a copyright and/or license notice that predates the release of Scribus 1.3.2
00005 for which a new license (GPL+exception) is in place.
00006 */
00007 /***************************************************************************
00008  *                                                                         *
00009  *   This program is free software; you can redistribute it and/or modify  *
00010  *   it under the terms of the GNU General Public License as published by  *
00011  *   the Free Software Foundation; either version 2 of the License, or     *
00012  *   (at your option) any later version.                                   *
00013  *                                                                         *
00014  ***************************************************************************/
00015 #include "about.h"
00016 #include <QPixmap>
00017 #include <QToolTip>
00018 #include <QLabel>
00019 #include <QTabWidget>
00020 #include <QWidget>
00021 #include <QPushButton>
00022 #include <QShowEvent>
00023 
00024 #include "commonstrings.h"
00025 #include "scconfig.h"
00026 #include "sctextbrowser.h"
00027 
00028 #ifdef HAVE_CAIRO
00029 #include <cairo.h>
00030 #endif
00031 
00032 #include "util_ghostscript.h"
00033 #include "util_icon.h"
00034 #include "upgradechecker.h"
00035 #include "langmgr.h"
00036 
00045 About::About( QWidget* parent, AboutMode diaMode ) : QDialog( parent )
00046 {
00047     m_mode = diaMode;
00048     m_firstShow = true;
00049     setWindowTitle( tr("About Scribus %1").arg(VERSION) );
00050     setWindowIcon(loadIcon("AppIcon.png", true));
00051     setModal(true);
00052     aboutLayout = new QVBoxLayout( this );
00053     aboutLayout->setSpacing( 6 );
00054     aboutLayout->setMargin( 10 );
00055     tabWidget2 = new QTabWidget( this );
00056 //  tabWidget2->setMinimumSize( QSize( 438, 258 ) );
00057     tab = new QWidget( tabWidget2 );
00058     tabLayout1 = new QVBoxLayout( tab );
00059     tabLayout1->setSpacing( 6 );
00060     tabLayout1->setMargin( 15 );
00061     pixmapLabel1 = new QLabel( tab );
00062     pixmapLabel1->setPixmap(loadIcon("scribus_logo.png", true));
00063     pixmapLabel1->setFixedSize(QSize(pixmapLabel1->pixmap()->width(), pixmapLabel1->pixmap()->height()));
00064     pixmapLabel1->setAlignment(Qt::AlignCenter);
00065     tabLayout1->addWidget( pixmapLabel1 );
00066     buildID = new QLabel( tab );
00067     buildID->setAlignment(Qt::AlignCenter);
00068     QString BUILD_DAY = "23";
00069     QString BUILD_MONTH = CommonStrings::january;
00070     QString BUILD_YEAR = "2008";
00071     QString BUILD_TIME = "";
00072     QString BUILD_TZ = "";
00073     QString BUILD_NAME = "";
00074 
00075 // This is the old way:
00076     QString built = tr("%1 %2 %3").arg(BUILD_DAY).arg(BUILD_MONTH).arg(BUILD_YEAR);
00077 
00078 // This is my way, only activated when envvar BUILD_NAME is set :-)  AV
00079 //#include "about_builddate.inc"
00080     QString version = VERSION;
00081     if (BUILD_NAME != "")
00082         version += " \"" + BUILD_NAME + "\"";
00083     if (BUILD_NAME == "BleedingEdge")
00084          built = tr("%3-%2-%1 %4 %5").arg(BUILD_DAY).arg(BUILD_MONTH).arg(BUILD_YEAR).arg(BUILD_TIME).arg(BUILD_TZ);
00085 
00086     QString bu;
00087     bu += "C";
00088     bu += "-";
00089 #ifdef HAVE_CUPS
00090     bu += "C";
00091 #else
00092     bu += "*";
00093 #endif
00094     bu += "-";
00095     bu += "T";
00096     bu += "-";
00097 #ifdef HAVE_FONTCONFIG
00098     bu += "F";
00099 #else
00100     bu += "*";
00101 #endif
00102     bu += "-";
00103 #ifdef HAVE_CAIRO
00104     bu += "C";
00105     bu += cairo_version_string();
00106 #else
00107     bu += "Q";
00108 #endif
00109 
00110 // Some more information if we are not on a 32bit little endian Unix machine
00111 #if defined(Q_OS_WIN)
00112     bu += "-Windows";
00113 #elif defined(Q_OS_MAC)
00114     bu += "-Mac/";
00115 #  if defined(Q_WS_MACX)
00116     bu += "Aqua";
00117 #  elif define(Q_WS_X11)
00118     bu += "X11";
00119 #  else
00120     bu += "?";
00121 #  endif
00122 #elif defined(Q_OS_DARWIN)
00123     // dunno if anyone uses this...
00124     bu += "-Darwin";
00125 #endif
00126     if (QSysInfo::WordSize != 32)
00127         bu += QString("-%1bit").arg(QSysInfo::WordSize);
00128 #if Q_BYTE_ORDER == Q_BIG_ENDIAN
00129     if (QSysInfo::ByteOrder==QSysInfo::BigEndian)
00130         bu += "-Big";
00131 #endif
00132     QString gsver(getGSVersion());
00133     if (!gsver.isNull())
00134         gsver = tr("Using Ghostscript version %1").arg(gsver);
00135     else
00136         gsver = tr("No Ghostscript version available");
00137     buildID->setText( tr("<p align=\"center\"><b>%1 %2</b></p><p align=\"center\">%3<br>%4 %5<br>%6</p>").arg( tr("Scribus Version")).arg(version).arg(built).arg( tr("Build ID:")).arg(bu).arg(gsver));
00138     tabLayout1->addWidget( buildID, 0, Qt::AlignHCenter );
00139     tabWidget2->addTab( tab, tr( "&About" ) );
00140     tab_2 = new QWidget( tabWidget2 );
00141     tabLayout = new QHBoxLayout( tab_2 );
00142     tabLayout->setSpacing( 6 );
00143     tabLayout->setMargin( 10 );
00144     textView1 = new ScTextBrowser( tab_2 );
00145     textView1->setText(QString::fromUtf8("<table><tr><td><b>" + tr("Development Team:").toUtf8() + "</b></td><td> </td></tr>" +
00146                                             "<tr><td>Franz Schmid</td><td>Franz.Schmid@altmuehlnet.de</td></tr>" +
00147                                             "<tr><td>Peter Linnell</td><td>mrdocs@scribus.info</td></tr>" +
00148                                             "<tr><td>Craig Bradney</td><td>cbradney@zip.com.au</td></tr>" +
00149                                             "<tr><td>Petr Vaněk</td><td>petr@yarpen.cz</td></tr>" +
00150                                             "<tr><td>Riku Leino</td><td>riku@scribus.info</td></tr>" +
00151                                             "<tr><td>Craig Ringer</td><td>craig@postnewspapers.com.au</td></tr>" +
00152                                             "<tr><td>Andreas Vox</td><td>avox@arcor.de</td></tr>" +
00153                                             "<tr><td>Jean Ghali</td><td>jghali@libertysurf.fr</td></tr>" +
00154                                             "<tr><td>Oleksandr Moskalenko</td><td>malex@tagancha.org</td></tr>" +
00155                                             "<tr><td> </td><td> </td></tr>" +
00156 
00157                                             "<tr><td><b>" + tr("Contributions from:").toUtf8()  + "</b></td><td></td></tr>" +
00158                                             "<tr><td>Niyam Bhushan</td><td></td></tr>" +
00159                                             "<tr><td>Martin Costabel</td><td></td></tr>" +
00160                                             "<tr><td>Steve Callcott</td><td>stotte@firstwish.co.uk</td></tr>" +
00161                                             "<tr><td>Frank Everdij</td><td>f.everdij@citg.tudelft.nl</td></tr>" +
00162                                             "<tr><td>S. Hakim Hamdani</td><td>hakimoto@eroteme.org</td></tr>" +
00163                                             "<tr><td>Maciej Hański</td><td>m.hanski@gmx.at</td></tr>" +
00164                                             "<tr><td>Paul F. Johnson</td><td>paul@all-the-johnsons.co.uk</td></tr>" +
00165                                             "<tr><td>Marti Maria</td><td></td></tr>" +
00166                                             "<tr><td>Alexandre Prokoudine</td><td>alexandre.prokoudine@gmail.com</td></tr>"
00167                                             "<tr><td>Alessandro Rimoldi</td><td>http://ideale.ch/contact</td></tr>" +
00168                                             "<tr><td>Alastair Robinson</td><td>blackfive@fakenhamweb.co.uk</td></tr>" +
00169                                             "<tr><td>Johannes Rüschel</td><td>jo.rueschel@gmx.de</td></tr>" +
00170                                             "<tr><td>Jean-Jacques Sarton</td><td>jj.sarton@t-online.de</td></tr>" +
00171                                             "<tr><td>Christian Töpp</td><td>mr-ct@gmx.de</td></tr>" +
00172                                             "<tr><td>Eirik Øverby</td><td>ltning@anduin.net</td></tr>" +
00173                                             "<tr><td>Gora Mohanty </td><td>gora@srijan.in</td></tr>" +
00174                                             "<tr><td>Kevin Young</td><td>k.young@youngscomputing.com</td></tr>" +
00175                                             "<tr><td></td><td></td></tr>" +
00176 
00177                                             "<tr><td><b>" + tr("Mac OS&#174; X Aqua Port:").toUtf8()  + "</b></td><td> </td></tr>" +
00178                                             "<tr><td>Andreas Vox</td><td>avox@arcor.de</td></tr>" +
00179                                             "<tr><td> </td><td> </td></tr>" +
00180 
00181                                             "<tr><td><b>" + tr("OS/2&#174;/eComStation&#8482; Port:").toUtf8()  + "</b></td><td> </td></tr>" +
00182                                             "<tr><td>Paul Smedley</td><td>paul@smedley.info</td></tr>" +
00183                                             "<tr><td> </td><td> </td></tr>" +
00184 
00185                                             "<tr><td><b>" + tr("Windows&#174; Port:").toUtf8()  + "</b></td><td> </td></tr>" +
00186                                             "<tr><td>Jean Ghali</td><td>jghali@libertysurf.fr</td></tr>" +
00187                                             "<tr><td> </td><td> </td></tr>" +
00188 
00189                                             "<tr><td><b>" + tr("Official Documentation:").toUtf8()  + "</b></td><td></td></tr>" +
00190                                             "<tr><td>Peter Linnell</td><td>mrdocs@scribus.info</td></tr>" +
00191                                             "<tr><td>Craig Bradney</td><td>cbradney@zip.com.au</td></tr>" +
00192                                             "<tr><td>Frédéric Dubuy</td><td>effediwhy@gmail.com</td></tr>" +
00193                                             "<tr><td>Johannes Rüschel</td><td>jo.rueschel@gmx.de</td></tr>"
00194                                             +"<tr><td>Volker Ribbert</td><td>volkerius@h3c.de</td></tr>" +
00195                                             "<tr><td>Louis Desjardins</td><td>louisdesjardins@videotron.ca</td></tr>" +
00196                                             "<tr><td> </td><td> </td></tr>" +
00197                                             "<tr><td><b>" + tr("Other Documentation:").toUtf8()  + "</b></td><td></td></tr>" +
00198                                             "<tr><td>Yves Ceccone</td><td>yves@yeccoe.org</td></tr>" +
00199                                             "<tr><td>Holger Reibold</td><td>http://www.bomots.de/scribus/</td></tr>" +
00200                                             "<tr><td>Thomas Zastrow</td><td>webmaster@thomas-zastrow.de</td></tr>" +
00201                                             "<tr><td> </td><td> </td></tr>" +
00202                                             "<tr><td><b>" + tr("Splash Screen:").toUtf8()  + "</b></td><td></td></tr>" +
00203                                             "<tr><td>Andy Fitzsimon</td><td>andrew@fitzsimon.com.au</td></tr>" +
00204                                             "<tr><td> </td><td> </td></tr>" +
00205                                             "<tr><td><b>" + tr("Tango Project Icons:").toUtf8()  + "</b></td><td></td></tr>" +
00206                                             "<tr><td>Andreas Nilsson</td><td>nisses.mail@home.se</td></tr>" +
00207                                             "<tr><td>Jakub Steiner</td><td>jimmac@ximian.com</td></tr>"  +
00208                                             "<tr><td>Antoine Cailliau</td><td>antoinecailliau@gmail.com</td></tr>"  +
00209                                             "<tr><td> </td><td> </td></tr>" + "</table>"));
00210     tabLayout->addWidget( textView1 );
00211     tabWidget2->addTab( tab_2, tr( "A&uthors" ) );
00212     tab_3 = new QWidget( tabWidget2 );
00213     tabLayout_2 = new QHBoxLayout( tab_3 );
00214     tabLayout_2->setSpacing( 6 );
00215     tabLayout_2->setMargin( 10 );
00216     textView2 = new ScTextBrowser( tab_3);
00217     LanguageManager langmgr;
00218     langmgr.init(false);
00219     textView2->setText(QString::fromUtf8( "<table><tr><td><b><i>" + tr("Official Translations and Translators:").toUtf8() + "</i></b></td><td></td></tr>" +
00220                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("af").toLocal8Bit()  + "</b></td><td></td></tr>" +
00221                                             "<tr><td>Kobus Wolvaardt</td><td>kobuswolf@diewereld.co.za</td></tr>" +
00222                                             "<tr><td> </td><td> </td></tr>" +
00223                                             "<tr><td><b>" +
00224                                             langmgr.getLangFromAbbrev("ar").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00225                                             "<tr><td>حاتم المسلم</td><td>dr.hatim@hotmail.com</td></tr>" +
00226                                             "<tr><td> </td><td> </td></tr>" +
00227                                             "<tr><td><b>" +langmgr.getLangFromAbbrev("eu").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00228                                             "<tr><td>Iñaki Larrañaga Murgoitio</td><td>dooteo@euskalgnu.org</td></tr>" +
00229                                             "<tr><td> </td><td> </td></tr>" +
00230                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("br").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00231                                             "<tr><td>Alan Monfort</td><td>alan.monfort@free.fr</td></tr>" +
00232                                             "<tr><td> </td><td> </td></tr>" +
00233                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("ca").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00234                                             "<tr><td>Xavier Sala Pujolar</td><td>utrescu@xaviersala.net</td></tr>" +
00235                                             "<tr><td> </td><td> </td></tr>" +
00236                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("zh_TW").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00237                                             "<tr><td>dneif</td><td>dnextstep@gmail.com</td></tr>" +
00238                                             "<tr><td>Gilbert Su</td><td>gilbert_su@yahoo.com.tw</td></tr>" +
00239                                             "<tr><td> </td><td> </td></tr>" +
00240                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("cs").toLocal8Bit()  + "</b></td><td></td></tr>" +
00241                                             "<tr><td>Vlastimil Ott</td><td>vlastimil@e-ott.info</td></tr>" +
00242                                             "<tr><td>Petr Vaněk</td><td>petr@yarpen.cz</td></tr>" +
00243                                             "<tr><td> </td><td> </td></tr>" +
00244                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("da").toLocal8Bit()  + "</b></td><td></td></tr>" +
00245                                             "<tr><td>Morten Langlo</td><td>mlanglo@mail.dk</td></tr>" +
00246                                             "<tr><td> </td><td> </td></tr>" +
00247                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("nl").toLocal8Bit()  + "</b></td><td></td></tr>" +
00248                                             "<tr><td>Foppe Benedictus</td><td>foppe.benedictus@gmail.coml</td></tr>" +
00249                                             "<tr><td>Erik Collou</td><td>collou@gmx.net</td></tr>" +
00250                                             "<tr><td> </td><td> </td></tr>" +
00251                                             "<tr><td><b>" +
00252                                             langmgr.getLangFromAbbrev("en_AU").toLocal8Bit()  + "</b></td><td></td></tr>" +
00253                                             "<tr><td>Craig Bradney</td><td>cbradney@zip.com.au</td></tr>" +
00254                                             "<tr><td> </td><td> </td></tr>" +
00255                                             "<tr><td><b>" +
00256                                             langmgr.getLangFromAbbrev("en_GB").toLocal8Bit()  + "</b></td><td></td></tr>" +
00257                                             "<tr><td>Craig Bradney</td><td>cbradney@zip.com.au</td></tr>" +
00258                                             "<tr><td> </td><td> </td></tr>" +
00259                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("eo").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00260                                             "<tr><td>Pier Luigi Cinquantini</td><td>plcinquantini@katamail.com</td></tr>" +
00261                                             "<tr><td> </td><td> </td></tr>" +
00262                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("et").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00263                                             "<tr><td>Marek Laane</td><td>bald@starman.ee</td></tr>" +
00264                                             "<tr><td>Hasso Tepper</td><td>hasso@estpak.ee</td></tr>" +
00265                                             "<tr><td> </td><td> </td></tr>" +
00266                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("fi").toLocal8Bit()  + "</b></td><td></td></tr>" +
00267                                             "<tr><td>Riku Leino</td><td>riku@scribus.info</td></tr>" +
00268                                             "<tr><td> </td><td> </td></tr>" +
00269                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("fr").toLocal8Bit()  + "</b></td><td> </td>" +
00270                                             "<tr><td>Nicolas Boos</td><td>nicolas.boos@wanadoo.fr</td></tr>" +
00271                                             "<tr><td>Louis Desjardins</td><td>louis_desjardins@mardigrafe.com</td></tr>" +
00272                                             "<tr><td>Frédéric Dubuy</td><td>effediwhy@gmail.com</td></tr>" +
00273                                             "<tr><td> </td><td> </td></tr>" +
00274                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("de").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00275                                             "<tr><td>Johannes Rüschel</td><td>jo.rueschel@gmx.de</td></tr>" +
00276                                             "<tr><td>Franz Schmid</td><td>Franz.Schmid@altmuehlnet.de</td></tr>" +
00277                                             "<tr><td>Christoph Schäfer</td><td>christoph-schaefer@gmx.de</td></tr>" +
00278                                             "<tr><td> </td><td> </td></tr>" +
00279                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("de_CH").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00280                                             "<tr><td>Christoph Schäfer</td><td>christoph-schaefer@gmx.de</td></tr>" +
00281                                             "<tr><td> </td><td> </td></tr>" +
00282                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("de_ol").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00283                                             "<tr><td>Johannes Rüschel</td><td>jo.rueschel@gmx.de</td></tr>" +
00284                                             "<tr><td>Christoph Schäfer</td><td>christoph-schaefer@gmx.de</td></tr>" +
00285                                             "<tr><td> </td><td> </td></tr>" +
00286                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("ga").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00287                                             "<tr><td>Xose Calvo</td><td>xosecalvo@galizaweb.net</td></tr>" +
00288                                             "<tr><td>Manuel Anxo Rei</td><td>manxopar@avogaciagalega.org</td></tr>" +
00289                                             "<tr><td> </td><td> </td></tr>" +
00290                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("el").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00291                                             "<tr><td>Τούσης Μανώλης </br> Toussis Manolis</td><td>manolis@koppermind.homelinux.org</td></tr>" +
00292                                             "<tr><td> </td><td> </td></tr>" +
00293                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("hu").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00294                                             "<tr><td>Csaba Zakarias</td><td>csaba.zakarias@gmail.com</td></tr>" +
00295                                             "<tr><td> </td><td> </td></tr>" +
00296                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("it").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00297                                             "<tr><td>Pier Luigi Cinquantini</td><td>plcinquantini@katamail.com</td></tr>" +
00298                                             "<tr><td> </td><td> </td></tr>" +
00299                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("ja").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00300                                             "<tr><td>Shushi Kurose</td><td>md81@bird.email.ne.jp</td></tr>" +
00301                                             "<tr><td> </td><td> </td></tr>" +
00302                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("ko").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00303                                             "<tr><td>Kitae Kim</td><td>neeum@yahoo.com</td></tr>" +
00304                                             "<tr><td> </td><td> </td></tr>" +
00305                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("nb").toUtf8()  + "</b></td><td></td></tr>" +
00306                                             "<tr><td>Axel Bojer</td><td>axelb@skolelinux.no</td></tr>" +
00307                                             "<tr><td>Klaus Ade Johnstad</td><td>klaus@inout.no</td></tr>" +
00308                                             "<tr><td> </td><td> </td></tr>" +
00309                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("pl").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00310                                             "<tr><td>Maciej Hański</td><td>m.hanski@gmx.at</td></tr>" +
00311                                             "<tr><td> </td><td> </td></tr>" +
00312                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("pt").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00313                                             "<tr><td>Fausto Guilherme</td><td>faustoguilherme@gmail.com</td></tr>" +
00314                                             "<tr><td> </td><td> </td></tr>" +
00315                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("pt_BR").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00316                                             "<tr><td>Ludi Maciel</td><td>iludi@uol.com.br</td></tr>" +
00317                                             "<tr><td>Frederico Gon&#231;alves</td><td></td></tr>" +
00318                                             "<tr><td> </td><td> </td></tr>" +
00319                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("ru").toLocal8Bit()  + "</b></td><td></td></tr>" +
00320                                             "<tr><td>Александр Прокудин </td><td>alexandre.prokoudine@gmail.com</td></tr>" +
00321                                             "<tr><td> </td><td> </td></tr>" +
00322                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("sr").toLocal8Bit()  + "</b></td><td></td></tr>" +
00323                                             "<tr><td>Bojan Božovi&#263;</td><td>bole89@infosky.net</td></tr>" +
00324                                             "<tr><td> </td><td> </td></tr>" +
00325                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("sk").toLocal8Bit()  + "</b></td><td></td></tr>" +
00326                                             "<tr><td>Zdenko Podobn&yacute;</td><td>zdposter@gmail.com</td></tr>" +
00327                                             "<tr><td> </td><td> </td></tr>" +
00328                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("sl").toLocal8Bit()  + "</b></td><td></td></tr>" +
00329                                             "<tr><td>Boštjan Špetič</td><td>igzebedze@kiberpipa.org</td></tr>" +
00330                                             "<tr><td>Peter Čuhalev</td><td>skatey@slocartoon.net</td></tr>" +
00331                                             "<tr><td> </td><td> </td></tr>" +
00332                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("es_ES").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00333                                             "<tr><td>Josep Febrer</td><td>josep@linuxmail.org</td></tr>" +
00334                                             "<tr><td> </td><td> </td></tr>" +
00335                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("sv").toLocal8Bit()  + "</b></td><td></td></tr>" +
00336                                             "<tr><td>Göran Bondeson</td><td>goran@bondeson.net</td></tr>" +
00337                                             "<tr><td> </td><td> </td></tr>" +
00338                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("th_TH").toLocal8Bit()  + "</b></td><td></td></tr>" +
00339                                             "<tr><td>Sira Nokyoungthong</td><td>Sira Nokyoungthong</td></tr>" +
00340                                             "<tr><td> </td><td> </td></tr>" +
00341                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("tr").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00342                                             "<tr><td>Barış Atasoy</td><td>batasoy@pozitifpc.com</td></tr>" +
00343                                             "<tr><td> </td><td> </td></tr>" +
00344                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("uk").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00345                                             "<tr><td>Oleksandr Moskalenko</td><td>malex@tagancha.org</td></tr>" +
00346                                             "<tr><td> </td><td> </td></tr>" +
00347                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("cy").toLocal8Bit()  + "</b></td><td></td></tr>" +
00348                                             "<tr><td>Kevin Donnelly</td><td>kevin@dotmon.com</td></tr>" +
00349                                             "<tr><td> </td><td> </td></tr>" +
00350                                             "</table>" +
00351                                             "<table><tr><td><b><i>" + tr("Previous Translation Contributors:").toLocal8Bit() + "</i></b></td><td></td></tr>" +
00352                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("eu").toLocal8Bit() + "</b></td><td></td></tr>" +
00353                                             "<tr><td>Pablo Saratxaga</td><td>pablo@mandrakesoft.com</td></tr>" +
00354                                             "<tr><td> </td><td> </td></tr>" +
00355                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("pt_BR").toLocal8Bit()  + "</b></td><td></td></tr>" +
00356                                             "<tr><td>Celio Santos</td><td>celio@electronic.srv.br</td></tr>" +
00357                                             "<tr><td>Cezar de Souza Marson Nido</td><td>cesar@electronic.srv.br</td></tr>" +
00358                                             "<tr><td> </td><td> </td></tr>" +
00359                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("bg").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00360                                             "<tr><td>Vasko Tomanov</td><td>vasko@web.bg</td></tr>" +
00361                                             "<tr><td> </td><td> </td></tr>" +
00362                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("nl").toUtf8()  + "</b></td><td></td></tr>" +
00363                                             "<tr><td>Wilbert Berendsen</td><td>wbsoft@xs4all.nl</td></tr>" +
00364                                             "<tr><td> </td><td> </td></tr>" +
00365                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("en_GB").toLocal8Bit()  + "</b></td><td></td></tr>" +
00366                                             "<tr><td>Paul F. Johnson</td><td>paul@all-the-johnsons.co.uk</td></tr>" +
00367                                             "<tr><td> </td><td> </td></tr>" +
00368                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("fr").toLocal8Bit()  + "</b></td><td> </td>" +
00369                                             "<tr><td>Michel Briand</td><td>michelbriand@free.fr</td></tr>" +
00370                                             "<tr><td>Yves Ceccone</td><td>yves@yeccoe.org</td></tr>" +
00371                                             "<tr><td> </td><td> </td></tr>" +
00372 
00373                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("hu").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00374                                             "<tr><td>Giovanni Biczó</td><td>gbiczo@freestart.hu</td></tr>" +
00375                                             "<tr><td>Bence Nagy</td><td>scribus@tipogral.hu</td></tr>" +
00376                                             "<tr><td>Zoltán Böszörményi</td><td>zboszor@freemail.hu</td></tr>" +
00377                                             "<tr><td> </td><td> </td></tr>" +
00378                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("lt").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00379                                             "<tr><td>Aivaras Kirejevas</td><td>kiras@mail.lt</td></tr>" +
00380                                             "<tr><td> </td><td> </td></tr>" +
00381                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("nb").toLocal8Bit()  + "</b></td><td></td></tr>" +
00382                                             "<tr><td>Johannes Wilm</td><td>j@indymedia.no</td></tr>" +
00383                                             "<tr><td> </td><td> </td></tr>" +
00384                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("tr").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00385                                             "<tr><td>Erkan Kaplan</td><td>Selamsana@uni.de</td></tr>" +
00386                                             "<tr><td> </td><td> </td></tr>" +
00387                                             "<tr><td><b>" + langmgr.getLangFromAbbrev("uk").toLocal8Bit()  + "</b></td><td> </td></tr>" +
00388                                             "<tr><td>Sergiy Kudryk</td><td>kudryk@yahoo.com</td></tr>" +
00389                                             "<tr><td> </td><td> </td></tr>" +
00390                                             "</table>"));
00391     tabLayout_2->addWidget( textView2 );
00392     tabWidget2->addTab( tab_3, tr( "&Translations" ) );
00393 
00394     // online tab (03/04/2004 petr vanek)
00395     tab_4 = new QWidget( tabWidget2 );
00396     textView4 = new ScTextBrowser( tab_4 );
00397     textView4->setText(QString::fromUtf8(
00398         "<table><tr><td><b>" + tr("Homepage").toUtf8() + "</b></td><td></td></tr>" +
00399         "<tr><td colspan=\"2\"><p><a href=\"http://www.scribus.net\">http://www.scribus.net</a></p></td></tr>" +
00400         "<tr><td><b>" + tr("Online Reference").toUtf8() + "</b></td><td></td></tr>" +
00401         "<tr><td colspan=\"2\"><p><a href=\"http://docs.scribus.net\">http://docs.scribus.net</a></p></td></tr>" +
00402         "<tr><td><b>" + tr("Wiki").toUtf8() + "</b></td><td></td></tr>" +
00403         "<tr><td colspan=\"2\"><p><a href=\"http://wiki.scribus.net\">http://wiki.scribus.net</a></p></td></tr>" +
00404         "<tr><td><b>" + tr("Bugs and Feature Requests").toUtf8() + "</b></td><td></td></tr>" +
00405         "<tr><td colspan=\"2\"><p><a href=\"http://bugs.scribus.net\">http://bugs.scribus.net</a></p></td></tr>" +
00406         "<tr><td><b>" + tr("Mailing List").toUtf8() + "</b></td><td></td></tr>" +
00407         "<tr><td colspan=\"2\"><p><a href=\"http://nashi.altmuehlnet.de/mailman/listinfo/scribus\">http://nashi.altmuehlnet.de/mailman/listinfo/scribus</a></p></td></tr>" +
00408         "</table>"));
00409     tabLayout_4 = new QHBoxLayout( tab_4 );
00410     tabLayout_4->setSpacing( 6 );
00411     tabLayout_4->setMargin( 10 );
00412     tabLayout_4->addWidget( textView4 );
00413     tabWidget2->addTab( tab_4, tr( "&Online" ) );
00414     // Update tab
00415     tab_5 = new QWidget( tabWidget2 );
00416     tabWidget2->addTab( tab_5, tr( "&Updates" ) );
00417     updateLayout = new QVBoxLayout( tab_5 );
00418     updateLayout->setSpacing( 6 );
00419     updateLayout->setMargin( 10 );
00420     checkForUpdateButton = new QPushButton( tr( "Check for Updates" ), tab_5 );
00421     textView5 = new ScTextBrowser( tab_5);
00422     updateLayout->addWidget( checkForUpdateButton );
00423     updateLayout->addWidget( textView5 );
00424 
00425     aboutLayout->addWidget( tabWidget2 );
00426 
00427     layout2 = new QHBoxLayout;
00428     layout2->setSpacing( 6 );
00429     layout2->setMargin( 0 );
00430     QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
00431     layout2->addItem( spacer );
00432     okButton = new QPushButton( tr( "&Close" ), this );
00433     okButton->setDefault( true );
00434     layout2->addWidget( okButton );
00435     aboutLayout->addLayout( layout2 );
00436     setMaximumSize(sizeHint());
00437 
00438 
00439 //tooltips
00440 
00441     buildID->setToolTip( "<qt>" + tr( "This panel shows the version, build date and compiled in library support in Scribus.")+"<br>"
00442                                    + tr("The C-C-T-F equates to C=littlecms C=CUPS T=TIFF support F=Fontconfig support.Last Letter is the renderer C=cairo or Q=Qt")+"<br>"
00443                                    + tr("Missing library support is indicated by a *. This also indicates the version of Ghostscript which Scribus has detected.")+"<br>"
00444                                    + tr("The Windows version does not use fontconfig or CUPS libraries." ) + "</qt>" );
00445     checkForUpdateButton->setToolTip( "<qt>" + tr( "Check for updates to Scribus. No data from your machine will be transferred off it." ) + "</qt>" );
00446     // signals and slots connections
00447     connect( okButton, SIGNAL( clicked() ), this, SLOT( accept() ) );
00448     connect( checkForUpdateButton, SIGNAL( clicked() ), this, SLOT( runUpdateCheck() ) );
00449 }
00450 
00451 void About::showEvent (QShowEvent * event)
00452 {
00453     if (m_mode == About::CheckUpdates && m_firstShow)
00454         tabWidget2->setCurrentIndex(4);
00455     QDialog::showEvent(event);
00456 }
00457 
00458 void About::setVisible (bool visible)
00459 {
00460     QDialog::setVisible(visible);
00461     if (m_firstShow  && (m_mode == About::CheckUpdates) && visible)
00462     {
00463         m_firstShow = false;
00464         runUpdateCheck();
00465     }
00466 }
00467 
00468 void About::runUpdateCheck()
00469 {
00470     textView5->clear();
00471     UpgradeCheckerGUI uc(textView5);
00472     disconnect( checkForUpdateButton, SIGNAL( clicked() ), this, SLOT( runUpdateCheck() ) );
00473     connect(checkForUpdateButton, SIGNAL( clicked() ), &uc, SLOT( abort() ));
00474     checkForUpdateButton->setText( tr("Abort Update Check") );
00475     uc.fetch();
00476     checkForUpdateButton->setText( tr("Check for Updates") );
00477     connect( checkForUpdateButton, SIGNAL( clicked() ), this, SLOT( runUpdateCheck() ) );
00478 }
Created with personalized Doxygen. This is documentation for GPL software Scribus - Open Source Desktop Publishing.