• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdenetwork API Reference
  • KDE Home
  • Contact Us
 

kget

  • sources
  • kde-4.12
  • kdenetwork
  • kget
  • core
transfergrouphandler.h
Go to the documentation of this file.
1 /* This file is part of the KDE project
2 
3  Copyright (C) 2005 Dario Massarin <nekkar@libero.it>
4  Copyright (C) 2009 Lukas Appelhans <l.appelhans@gmx.de>
5 
6  This program is free software; you can redistribute it and/or
7  modify it under the terms of the GNU General Public
8  License as published by the Free Software Foundation; either
9  version 2 of the License, or (at your option) any later version.
10 */
11 
12 #ifndef TRANSFERGROUPHANDLER_H
13 #define TRANSFERGROUPHANDLER_H
14 
15 #include <QVariant>
16 
17 #include "handler.h"
18 #include "transfergroup.h"
19 #include "../kget_export.h"
20 #include "kget.h"
21 
22 class QAction;
23 
24 class QObjectInterface;
25 class TransferGroupObserver;
26 class TransferHandler;
27 class KGetKJobAdapter;
28 class Scheduler;
29 
30 class KGET_EXPORT TransferGroupHandler : public Handler
31 {
32  Q_OBJECT
33  friend class GenericObserver;
34  friend class TransferGroup;
35  friend class TransferTreeModel;
36  friend class KGet;
37  public:
38 
39  typedef TransferGroup::ChangesFlags ChangesFlags;
40 
41  TransferGroupHandler(Scheduler * scheduler, TransferGroup * parent);
42 
43  ~TransferGroupHandler();
44 
45  JobQueue::Status status() const {return m_group->status();}
46 
55  void move(QList<TransferHandler *> transfers, TransferHandler * after);
56 
63  void setMaxSimultaneousJobs(int n);
64 
68  TransferHandler * operator[] (int i);
69 
73  int size() {return m_group->size();}
74 
78  void setName(const QString &name);
79 
83  const QString & name() {return m_group->name();}
84 
89  int totalSize() const {return m_group->totalSize();}
90 
95  int downloadedSize() const {return m_group->downloadedSize();}
96 
101  int uploadedSize() const {return m_group->uploadedSize();}
102 
106  int percent() const {return m_group->percent();}
107 
112  int downloadSpeed() const {return m_group->downloadSpeed();}
113 
118  int uploadSpeed() const {return m_group->uploadSpeed();}
119 
123  ChangesFlags changesFlags();
124 
129  void setDefaultFolder(QString folder) {m_group->setDefaultFolder(folder);}
130 
134  QString defaultFolder() {return m_group->defaultFolder();}
135 
140  void setRegExp(const QRegExp &regexp) {m_group->setRegExp(regexp);}
141 
145  QRegExp regExp() {return m_group->regExp();}
146 
147 #ifdef HAVE_NEPOMUK
148 
152  void setTags(const QList<Nepomuk2::Tag> &tags) {m_group->setTags(tags);}
153 
157  QList<Nepomuk2::Tag> tags() const {return m_group->tags();}
158 #endif //HAVE_NEPOMUK
159 
165  void setDownloadLimit(int dlLimit, Transfer::SpeedLimit limit) {m_group->setDownloadLimit(dlLimit, limit);}
166 
170  int downloadLimit(Transfer::SpeedLimit limit) {return m_group->downloadLimit(limit);}
171 
177  void setUploadLimit(int ulLimit, Transfer::SpeedLimit limit) {m_group->setUploadLimit(ulLimit, limit);}
178 
182  int uploadLimit(Transfer::SpeedLimit limit) {return m_group->uploadLimit(limit);}
183 
188  void setIconName(const QString &name) {m_group->setIconName(name);}
189 
193  QString iconName() const {return m_group->iconName();}
194 
198  QPixmap pixmap() {return m_group->pixmap();}
199 
204  QVariant data(int column);
205 
209  int columnCount() const {return 6;}
210 
215  int indexOf(TransferHandler * transfer);
216 
220  const QList<TransferHandler *> transfers();
221 
227  const QList<QAction *> & actions();
228 
232  void calculateSpeedLimits() {m_group->calculateSpeedLimits();}
233 
237  void calculateDownloadLimit() {m_group->calculateDownloadLimit();}
238 
242  void calculateUploadLimit() {m_group->calculateUploadLimit();}
243 
244  public slots:
248  void start();
249  void stop();
250 
251  signals:
252  void groupChangedEvent(TransferGroupHandler * transfer, TransferGroupHandler::ChangesFlags flags);
253 
254  private:
261  void setGroupChange(ChangesFlags change, bool notifyModel = false);
262 
266  void resetChangesFlags();
267 
271  void createActions();
272 
273  TransferGroup * m_group;
274 
275  QList<QAction *> m_actions;
276 
277  ChangesFlags m_changesFlags;
278 };
279 
280 #endif
TransferGroupHandler::uploadedSize
int uploadedSize() const
Definition: transfergrouphandler.h:101
TransferHandler
Class TransferHandler:
Definition: transferhandler.h:48
TransferGroup
class TransferGroup:
Definition: transfergroup.h:46
Scheduler
Scheduler class: what handle all the jobs in kget.
Definition: scheduler.h:32
TransferGroupHandler::uploadSpeed
int uploadSpeed() const
Definition: transfergrouphandler.h:118
TransferGroupHandler
Definition: transfergrouphandler.h:30
Handler::data
virtual QVariant data(int column)=0
Handler::start
virtual void start()=0
TransferGroupHandler::setUploadLimit
void setUploadLimit(int ulLimit, Transfer::SpeedLimit limit)
Set a Upload-Limit for the group.
Definition: transfergrouphandler.h:177
GenericObserver
Definition: kget.h:466
TransferGroupHandler::calculateDownloadLimit
void calculateDownloadLimit()
Calculates the DownloadLimits.
Definition: transfergrouphandler.h:237
TransferGroupHandler::downloadLimit
int downloadLimit(Transfer::SpeedLimit limit)
Definition: transfergrouphandler.h:170
TransferGroupHandler::iconName
QString iconName() const
Definition: transfergrouphandler.h:193
TransferGroupHandler::uploadLimit
int uploadLimit(Transfer::SpeedLimit limit)
Definition: transfergrouphandler.h:182
JobQueue::Status
Status
Definition: jobqueue.h:36
TransferGroupHandler::size
int size()
Definition: transfergrouphandler.h:73
TransferTreeModel
Definition: transfertreemodel.h:108
TransferGroupHandler::percent
int percent() const
Definition: transfergrouphandler.h:106
TransferGroupHandler::status
JobQueue::Status status() const
Definition: transfergrouphandler.h:45
TransferGroupHandler::calculateUploadLimit
void calculateUploadLimit()
Calculates the DownloadLimits.
Definition: transfergrouphandler.h:242
TransferGroupHandler::calculateSpeedLimits
void calculateSpeedLimits()
Calculates the whole SpeedLimits.
Definition: transfergrouphandler.h:232
TransferGroupHandler::name
const QString & name()
Definition: transfergrouphandler.h:83
TransferGroupHandler::defaultFolder
QString defaultFolder()
Definition: transfergrouphandler.h:134
TransferGroupHandler::setDownloadLimit
void setDownloadLimit(int dlLimit, Transfer::SpeedLimit limit)
Set a Download-Limit for the group.
Definition: transfergrouphandler.h:165
transfergroup.h
Transfer::SpeedLimit
SpeedLimit
Definition: transfer.h:88
Handler
Definition: handler.h:17
TransferGroupHandler::columnCount
int columnCount() const
Definition: transfergrouphandler.h:209
TransferGroupHandler::downloadedSize
int downloadedSize() const
Definition: transfergrouphandler.h:95
TransferGroupHandler::downloadSpeed
int downloadSpeed() const
Definition: transfergrouphandler.h:112
KGetKJobAdapter
Allows kget to register all transfers in kuiserver as kjobs.
Definition: kgetkjobadapter.h:23
TransferGroupHandler::setRegExp
void setRegExp(const QRegExp &regexp)
Sets the regular expression of the group.
Definition: transfergrouphandler.h:140
Handler::stop
virtual void stop()=0
TransferGroupHandler::regExp
QRegExp regExp()
Definition: transfergrouphandler.h:145
TransferGroupHandler::setIconName
void setIconName(const QString &name)
Set the group's icon.
Definition: transfergrouphandler.h:188
kget.h
TransferGroupHandler::setDefaultFolder
void setDefaultFolder(QString folder)
Set a default Folder for the group.
Definition: transfergrouphandler.h:129
TransferGroup::ChangesFlags
int ChangesFlags
Definition: transfergroup.h:64
TransferGroupHandler::totalSize
int totalSize() const
Definition: transfergrouphandler.h:89
KGet
This is our KGet class.
Definition: kget.h:67
KGET_EXPORT
#define KGET_EXPORT
Definition: kget_export.h:24
handler.h
TransferGroupHandler::pixmap
QPixmap pixmap()
Definition: transfergrouphandler.h:198
TransferGroupHandler::ChangesFlags
TransferGroup::ChangesFlags ChangesFlags
Definition: transfergrouphandler.h:39
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:53:17 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kget

Skip menu "kget"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdenetwork API Reference

Skip menu "kdenetwork API Reference"
  • kget
  • kopete
  •   kopete
  •   libkopete
  • krdc
  • krfb

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal