[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/kcontrol/kfontinst/kcmfontinst
From: Craig Drummond <craig () kde ! org>
Date: 2007-01-25 12:15:24
Message-ID: 1169727324.707917.24159.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 627005 by craig:
Use 45degree steps for animation - and put animation code into a base class.
A ActionDialog.cpp [License: no copyright GPL (v2)]
A ActionDialog.h [License: no copyright GPL (v2)]
M +3 -30 DuplicatesDialog.cpp
M +3 -10 DuplicatesDialog.h
M +6 -34 JobRunner.cpp
M +3 -12 JobRunner.h
--- trunk/KDE/kdebase/workspace/kcontrol/kfontinst/kcmfontinst/DuplicatesDialog.cpp #627004:627005
@@ -61,12 +61,11 @@
};
CDuplicatesDialog::CDuplicatesDialog(QWidget *parent, CJobRunner *jr)
- : KDialog(parent),
+ : CActionDialog(parent),
itsModifiedSys(false),
itsModifiedUser(false),
itsRunner(jr)
{
- setModal(true);
setCaption(i18n("Duplicate Fonts"));
setButtons(KDialog::Ok|KDialog::Cancel);
enableButtonOk(false);
@@ -77,55 +76,29 @@
QGridLayout *layout=new QGridLayout(page);
layout->setMargin(0);
layout->setSpacing(KDialog::spacingHint());
- itsPixmapLabel=new QLabel(page);
itsLabel=new QLabel(page);
itsView=new CFontFileListView(page);
itsView->hide();
-
- //itsView->setSortingEnabled(true);
- itsIcons[0]=KIconLoader::global()->loadIcon("font_truetype", K3Icon::NoGroup, 48);
-
- QImage img(itsIcons[0].toImage());
- itsIcons[1]=KImageEffect::rotate(img, KImageEffect::Rotate90);
- itsIcons[2]=KImageEffect::rotate(img, KImageEffect::Rotate180);
- itsIcons[3]=KImageEffect::rotate(img, KImageEffect::Rotate270);
-
- itsPixmapLabel->setPixmap(itsIcons[0]);
layout->addWidget(itsPixmapLabel, 0, 0);
layout->addWidget(itsLabel, 0, 1);
itsLabel->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred);
layout->addWidget(itsView, 1, 0, 1, 2);
- itsTimer=new QTimer(this);
itsFontFileList=new CFontFileList(this);
- connect(itsTimer, SIGNAL(timeout()), SLOT(increment()));
connect(itsFontFileList, SIGNAL(finished()), SLOT(scanFinished()));
connect(itsView, SIGNAL(haveDeletions(bool)), SLOT(enableButtonOk(bool)));
}
int CDuplicatesDialog::exec()
{
- itsCount=0;
itsModifiedSys=itsModifiedUser=false;
itsLabel->setText(i18n("Scanning for duplicate fonts. Please wait..."));
- itsPixmapLabel->setPixmap(itsIcons[0]);
- itsTimer->start(1000/constNumIcons);
itsFontFileList->start();
- return KDialog::exec();
+ return CActionDialog::exec();
}
-void CDuplicatesDialog::increment()
-{
- if(++itsCount==constNumIcons)
- itsCount=0;
-
- itsPixmapLabel->setPixmap(itsIcons[itsCount]);
-}
-
void CDuplicatesDialog::scanFinished()
{
- itsTimer->stop();
- itsCount=0;
- itsPixmapLabel->setPixmap(itsIcons[itsCount]);
+ stopAnimation();
if(itsFontFileList->wasTerminated())
reject();
--- trunk/KDE/kdebase/workspace/kcontrol/kfontinst/kcmfontinst/DuplicatesDialog.h #627004:627005
@@ -26,8 +26,8 @@
#include <QPixmap>
#include <QThread>
#include <QTreeWidget>
-#include <kdialog.h>
#include "DisabledFonts.h"
+#include "ActionDialog.h"
class QTimer;
class QLabel;
@@ -129,10 +129,8 @@
*itsUnMarkAct;
};
-class CDuplicatesDialog : public KDialog
+class CDuplicatesDialog : public CActionDialog
{
- static const int constNumIcons=4;
-
Q_OBJECT
public:
@@ -146,7 +144,6 @@
private Q_SLOTS:
- void increment();
void scanFinished();
void slotButtonClicked(int button);
@@ -161,12 +158,8 @@
bool itsModifiedSys,
itsModifiedUser;
CFontFileList *itsFontFileList;
- QLabel *itsLabel,
- *itsPixmapLabel;
+ QLabel *itsLabel;
CFontFileListView *itsView;
- QTimer *itsTimer;
- int itsCount;
- QPixmap itsIcons[constNumIcons];
CJobRunner *itsRunner;
};
--- trunk/KDE/kdebase/workspace/kcontrol/kfontinst/kcmfontinst/JobRunner.cpp #627004:627005
@@ -31,12 +31,11 @@
#include <klocale.h>
#include <kpassworddialog.h>
#include <kdesu/su.h>
-#include <kimageeffect.h>
#include <QGridLayout>
#include <QProgressBar>
#include <QLabel>
-#include <QTimer>
#include <QX11Info>
+#include <QTimer>
#include <X11/Xlib.h>
#include <fixx11h.h>
#include <sys/resource.h>
@@ -55,7 +54,7 @@
}
CJobRunner::CJobRunner(QWidget *parent, int xid)
- : KDialog(parent),
+ : CActionDialog(parent),
itsIt(itsUrls.end()),
itsEnd(itsIt),
itsAutoSkip(false)
@@ -76,23 +75,11 @@
QGridLayout *layout=new QGridLayout(page);
layout->setMargin(KDialog::marginHint());
layout->setSpacing(KDialog::spacingHint());
- itsPixmapLabel=new QLabel(page);
itsStatusLabel=new QLabel(page);
itsProgress=new QProgressBar(page);
- itsIcons[0]=KIconLoader::global()->loadIcon("font_truetype", K3Icon::NoGroup, 48);
-
- QImage img(itsIcons[0].toImage());
- itsIcons[1]=KImageEffect::rotate(img, KImageEffect::Rotate90);
- itsIcons[2]=KImageEffect::rotate(img, KImageEffect::Rotate180);
- itsIcons[3]=KImageEffect::rotate(img, KImageEffect::Rotate270);
-
- itsPixmapLabel->setPixmap(itsIcons[0]);
layout->addWidget(itsPixmapLabel, 0, 0, 2, 1);
layout->addWidget(itsStatusLabel, 0, 1);
layout->addWidget(itsProgress, 1, 1);
-
- itsTimer=new QTimer(this);
- connect(itsTimer, SIGNAL(timeout()), SLOT(rotateIcon()));
}
CJobRunner::~CJobRunner()
@@ -166,13 +153,10 @@
itsProgress->setRange(0, itsUrls.count()+1);
itsProgress->show();
itsCmd=cmd;
- itsCount=0;
- itsPixmapLabel->setPixmap(itsIcons[0]);
itsStatusLabel->setText(QString());
- itsTimer->start(1000/constNumIcons);
itsAutoSkip=false;
QTimer::singleShot(0, this, SLOT(doNext()));
- return KDialog::exec();
+ return CActionDialog::exec();
}
void CJobRunner::doNext()
@@ -262,9 +246,7 @@
if(!cont)
{
- itsTimer->stop();
- itsCount=0;
- itsPixmapLabel->setPixmap(itsIcons[itsCount]);
+ stopAnimation();
ItemList::ConstIterator next(itsIt==itsEnd ? itsEnd : itsIt+1);
@@ -293,7 +275,7 @@
if(cont)
{
- itsTimer->start(1000/constNumIcons);
+ startAnimation();
++itsIt;
doNext();
}
@@ -309,9 +291,7 @@
void CJobRunner::cfgResult(KJob *job)
{
- itsTimer->stop();
- itsProgress->setValue(itsProgress->value()+1);
- itsPixmapLabel->setPixmap(itsIcons[0]);
+ stopAnimation();
if(job && 0==job->error())
{
@@ -326,14 +306,6 @@
reject();
}
-void CJobRunner::rotateIcon()
-{
- if(++itsCount==constNumIcons)
- itsCount=0;
-
- itsPixmapLabel->setPixmap(itsIcons[itsCount]);
-}
-
void CJobRunner::slotButtonClicked(int)
{
if(itsIt!=itsEnd &&
--- trunk/KDE/kdebase/workspace/kcontrol/kfontinst/kcmfontinst/JobRunner.h #627004:627005
@@ -23,8 +23,8 @@
#ifndef __JOB_RUNNER_H__
#define __JOB_RUNNER_H__
-#include <kdialog.h>
#include <kio/job.h>
+#include "ActionDialog.h"
class QLabel;
class QProgressBar;
@@ -33,14 +33,10 @@
namespace KFI
{
-class CJobRunner : public KDialog
+class CJobRunner : public CActionDialog
{
Q_OBJECT
- private:
-
- static const int constNumIcons=4;
-
public:
struct Item : public KUrl
@@ -73,7 +69,6 @@
void doNext();
void jobResult(KJob *job);
void cfgResult(KJob *job);
- void rotateIcon();
void slotButtonClicked(int button);
private:
@@ -88,12 +83,8 @@
itsEnd;
KUrl itsDest;
QString itsPasswd;
- QLabel *itsPixmapLabel,
- *itsStatusLabel;
+ QLabel *itsStatusLabel;
QProgressBar *itsProgress;
- QTimer *itsTimer;
- int itsCount;
- QPixmap itsIcons[constNumIcons];
bool itsAutoSkip;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic