• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • kio/kio
 

kio/kio

  • kio
  • kio
progressbase.cpp
1 /* This file is part of the KDE libraries
2  Copyright (C) 2000 Matej Koss <koss@miesto.sk>
3 
4  This library is free software; you can redistribute it and/or
5  modify it under the terms of the GNU Library General Public
6  License version 2 as published by the Free Software Foundation.
7 
8  This library is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11  Library General Public License for more details.
12 
13  You should have received a copy of the GNU Library General Public License
14  along with this library; see the file COPYING.LIB. If not, write to
15  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
16  Boston, MA 02110-1301, USA.
17 */
18 
19 #include "jobclasses.h"
20 #include "progressbase.h"
21 
22 namespace KIO {
23 
24 ProgressBase::ProgressBase( TQWidget *parent )
25  : TQWidget( parent )
26 {
27  m_pJob = 0;
28 
29  // delete dialog after the job is finished / canceled
30  m_bOnlyClean = false;
31 
32  // stop job on close
33  m_bStopOnClose = true;
34 }
35 
36 
37 void ProgressBase::setJob( KIO::Job *job )
38 {
39  // first connect all slots
40  connect( job, TQT_SIGNAL( percent( KIO::Job*, unsigned long ) ),
41  TQT_SLOT( slotPercent( KIO::Job*, unsigned long ) ) );
42 
43  connect( job, TQT_SIGNAL( result( KIO::Job* ) ),
44  TQT_SLOT( slotFinished( KIO::Job* ) ) );
45 
46  connect( job, TQT_SIGNAL( canceled( KIO::Job* ) ),
47  TQT_SLOT( slotFinished( KIO::Job* ) ) );
48 
49  // then assign job
50  m_pJob = job;
51 }
52 
53 
54 void ProgressBase::setJob( KIO::CopyJob *job )
55 {
56  // first connect all slots
57  connect( job, TQT_SIGNAL( totalSize( KIO::Job*, KIO::filesize_t ) ),
58  TQT_SLOT( slotTotalSize( KIO::Job*, KIO::filesize_t ) ) );
59  connect( job, TQT_SIGNAL( totalFiles( KIO::Job*, unsigned long ) ),
60  TQT_SLOT( slotTotalFiles( KIO::Job*, unsigned long ) ) );
61  connect( job, TQT_SIGNAL( totalDirs( KIO::Job*, unsigned long ) ),
62  TQT_SLOT( slotTotalDirs( KIO::Job*, unsigned long ) ) );
63 
64  connect( job, TQT_SIGNAL( processedSize( KIO::Job*, KIO::filesize_t ) ),
65  TQT_SLOT( slotProcessedSize( KIO::Job*, KIO::filesize_t ) ) );
66  connect( job, TQT_SIGNAL( processedFiles( KIO::Job*, unsigned long ) ),
67  TQT_SLOT( slotProcessedFiles( KIO::Job*, unsigned long ) ) );
68  connect( job, TQT_SIGNAL( processedDirs( KIO::Job*, unsigned long ) ),
69  TQT_SLOT( slotProcessedDirs( KIO::Job*, unsigned long ) ) );
70 
71  connect( job, TQT_SIGNAL( speed( KIO::Job*, unsigned long ) ),
72  TQT_SLOT( slotSpeed( KIO::Job*, unsigned long ) ) );
73  connect( job, TQT_SIGNAL( percent( KIO::Job*, unsigned long ) ),
74  TQT_SLOT( slotPercent( KIO::Job*, unsigned long ) ) );
75 
76  connect( job, TQT_SIGNAL( copying( KIO::Job*, const KURL& , const KURL& ) ),
77  TQT_SLOT( slotCopying( KIO::Job*, const KURL&, const KURL& ) ) );
78  connect( job, TQT_SIGNAL( moving( KIO::Job*, const KURL& , const KURL& ) ),
79  TQT_SLOT( slotMoving( KIO::Job*, const KURL&, const KURL& ) ) );
80  connect( job, TQT_SIGNAL( creatingDir( KIO::Job*, const KURL& ) ),
81  TQT_SLOT( slotCreatingDir( KIO::Job*, const KURL& ) ) );
82 
83  connect( job, TQT_SIGNAL( result( KIO::Job* ) ),
84  TQT_SLOT( slotFinished( KIO::Job* ) ) );
85 
86  connect( job, TQT_SIGNAL( canceled( KIO::Job* ) ),
87  TQT_SLOT( slotFinished( KIO::Job* ) ) );
88 
89  // then assign job
90  m_pJob = job;
91 }
92 
93 
94 void ProgressBase::setJob( KIO::DeleteJob *job )
95 {
96  // first connect all slots
97  connect( job, TQT_SIGNAL( totalSize( KIO::Job*, KIO::filesize_t ) ),
98  TQT_SLOT( slotTotalSize( KIO::Job*, KIO::filesize_t ) ) );
99  connect( job, TQT_SIGNAL( totalFiles( KIO::Job*, unsigned long ) ),
100  TQT_SLOT( slotTotalFiles( KIO::Job*, unsigned long ) ) );
101  connect( job, TQT_SIGNAL( totalDirs( KIO::Job*, unsigned long ) ),
102  TQT_SLOT( slotTotalDirs( KIO::Job*, unsigned long ) ) );
103 
104  connect( job, TQT_SIGNAL( processedSize( KIO::Job*, KIO::filesize_t ) ),
105  TQT_SLOT( slotProcessedSize( KIO::Job*, KIO::filesize_t ) ) );
106  connect( job, TQT_SIGNAL( processedFiles( KIO::Job*, unsigned long ) ),
107  TQT_SLOT( slotProcessedFiles( KIO::Job*, unsigned long ) ) );
108  connect( job, TQT_SIGNAL( processedDirs( KIO::Job*, unsigned long ) ),
109  TQT_SLOT( slotProcessedDirs( KIO::Job*, unsigned long ) ) );
110 
111  connect( job, TQT_SIGNAL( speed( KIO::Job*, unsigned long ) ),
112  TQT_SLOT( slotSpeed( KIO::Job*, unsigned long ) ) );
113  connect( job, TQT_SIGNAL( percent( KIO::Job*, unsigned long ) ),
114  TQT_SLOT( slotPercent( KIO::Job*, unsigned long ) ) );
115 
116  connect( job, TQT_SIGNAL( deleting( KIO::Job*, const KURL& ) ),
117  TQT_SLOT( slotDeleting( KIO::Job*, const KURL& ) ) );
118 
119  connect( job, TQT_SIGNAL( result( KIO::Job* ) ),
120  TQT_SLOT( slotFinished( KIO::Job* ) ) );
121 
122  connect( job, TQT_SIGNAL( canceled( KIO::Job* ) ),
123  TQT_SLOT( slotFinished( KIO::Job* ) ) );
124 
125  // then assign job
126  m_pJob = job;
127 }
128 
129 
130 void ProgressBase::closeEvent( TQCloseEvent* ) {
131  // kill job when desired
132  if ( m_bStopOnClose ) {
133  slotStop();
134  } else {
135  // clean or delete dialog
136  if ( m_bOnlyClean ) {
137  slotClean();
138  } else {
139  delete this;
140  }
141  }
142 }
143 
144 void ProgressBase::finished() {
145  // clean or delete dialog
146  if ( m_bOnlyClean ) {
147  slotClean();
148  } else {
149  deleteLater();
150  }
151 }
152 
153 void ProgressBase::slotFinished( KIO::Job* ) {
154  finished();
155 }
156 
157 
158 void ProgressBase::slotStop() {
159  if ( m_pJob ) {
160  m_pJob->kill(); // this will call slotFinished
161  m_pJob = 0L;
162  } else {
163  slotFinished( 0 ); // here we call it ourselves
164  }
165 
166  emit stopped();
167 }
168 
169 
170 void ProgressBase::slotClean() {
171  hide();
172 }
173 
174 void ProgressBase::virtual_hook( int, void* )
175 { /*BASE::virtual_hook( id, data );*/ }
176 
177 } /* namespace */
178 
179 #include "progressbase.moc"
180 
KIO::ProgressBase::slotTotalDirs
virtual void slotTotalDirs(KIO::Job *job, unsigned long dirs)
Called to set the total number of directories.
Definition: progressbase.h:163
KIO::ProgressBase::stopped
void stopped()
Called when the operation stopped.
KIO
A namespace for KIO globals.
Definition: authinfo.h:29
KIO::Job::kill
virtual void kill(bool quietly=true)
Abort this job.
Definition: job.cpp:239
KIO::ProgressBase::slotStop
void slotStop()
This method should be called for correct cancellation of IO operation Connect this to the progress wi...
Definition: progressbase.cpp:158
KIO::ProgressBase::slotTotalFiles
virtual void slotTotalFiles(KIO::Job *job, unsigned long files)
Called to set the total number of files.
Definition: progressbase.h:156
KIO::DeleteJob
A more complex Job to delete files and directories.
Definition: jobclasses.h:1763
KIO::ProgressBase::slotClean
virtual void slotClean()
This method is called when the widget should be cleaned (after job is finished).
Definition: progressbase.cpp:170
KIO::ProgressBase::setJob
void setJob(KIO::Job *job)
Assign a KIO::Job to this progress dialog.
Definition: progressbase.cpp:37
KIO::ProgressBase::slotCreatingDir
virtual void slotCreatingDir(KIO::Job *job, const KURL &dir)
Called when the job is creating a directory.
Definition: progressbase.h:232
KIO::filesize_t
TQ_ULLONG filesize_t
64-bit file size
Definition: global.h:39
KIO::ProgressBase::slotProcessedFiles
virtual void slotProcessedFiles(KIO::Job *job, unsigned long files)
Called to set the number of processed files.
Definition: progressbase.h:178
KIO::ProgressBase::slotSpeed
virtual void slotSpeed(KIO::Job *job, unsigned long speed)
Called to set the speed.
Definition: progressbase.h:193
KIO::ProgressBase::slotProcessedSize
virtual void slotProcessedSize(KIO::Job *job, KIO::filesize_t bytes)
Called to set the processed size.
Definition: progressbase.h:171
KIO::ProgressBase::slotCopying
virtual void slotCopying(KIO::Job *job, const KURL &src, const KURL &dest)
Called when the job is copying.
Definition: progressbase.h:210
KIO::Job
The base class for all jobs.
Definition: jobclasses.h:68
KIO::ProgressBase::finished
void finished()
Call when the operation finished.
Definition: progressbase.cpp:144
KIO::ProgressBase::ProgressBase
ProgressBase(TQWidget *parent)
Creates a new progress dialog.
Definition: progressbase.cpp:24
KIO::ProgressBase::slotPercent
virtual void slotPercent(KIO::Job *job, unsigned long percent)
Called to set the percentage.
Definition: progressbase.h:201
KIO::ProgressBase::slotMoving
virtual void slotMoving(KIO::Job *job, const KURL &src, const KURL &dest)
Called when the job is moving.
Definition: progressbase.h:218
KIO::ProgressBase::slotDeleting
virtual void slotDeleting(KIO::Job *job, const KURL &url)
Called when the job is deleting.
Definition: progressbase.h:225
KIO::ProgressBase::slotProcessedDirs
virtual void slotProcessedDirs(KIO::Job *job, unsigned long dirs)
Called to set the number of processed directories.
Definition: progressbase.h:185
KIO::CopyJob
CopyJob is used to move, copy or symlink files and directories.
Definition: jobclasses.h:1508
KIO::ProgressBase::slotTotalSize
virtual void slotTotalSize(KIO::Job *job, KIO::filesize_t size)
Called to set the total size.
Definition: progressbase.h:149

kio/kio

Skip menu "kio/kio"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kio/kio

Skip menu "kio/kio"
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • krandr
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for kio/kio by doxygen 1.8.13
This website is maintained by Timothy Pearson.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. |