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

tdeio/tdeio

  • tdeio
  • tdeio
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 TDEIO {
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( TDEIO::Job *job )
38 {
39  // first connect all slots
40  connect( job, TQT_SIGNAL( percent( TDEIO::Job*, unsigned long ) ),
41  TQT_SLOT( slotPercent( TDEIO::Job*, unsigned long ) ) );
42 
43  connect( job, TQT_SIGNAL( result( TDEIO::Job* ) ),
44  TQT_SLOT( slotFinished( TDEIO::Job* ) ) );
45 
46  connect( job, TQT_SIGNAL( canceled( TDEIO::Job* ) ),
47  TQT_SLOT( slotFinished( TDEIO::Job* ) ) );
48 
49  // then assign job
50  m_pJob = job;
51 }
52 
53 
54 void ProgressBase::setJob( TDEIO::CopyJob *job )
55 {
56  // first connect all slots
57  connect( job, TQT_SIGNAL( totalSize( TDEIO::Job*, TDEIO::filesize_t ) ),
58  TQT_SLOT( slotTotalSize( TDEIO::Job*, TDEIO::filesize_t ) ) );
59  connect( job, TQT_SIGNAL( totalFiles( TDEIO::Job*, unsigned long ) ),
60  TQT_SLOT( slotTotalFiles( TDEIO::Job*, unsigned long ) ) );
61  connect( job, TQT_SIGNAL( totalDirs( TDEIO::Job*, unsigned long ) ),
62  TQT_SLOT( slotTotalDirs( TDEIO::Job*, unsigned long ) ) );
63 
64  connect( job, TQT_SIGNAL( processedSize( TDEIO::Job*, TDEIO::filesize_t ) ),
65  TQT_SLOT( slotProcessedSize( TDEIO::Job*, TDEIO::filesize_t ) ) );
66  connect( job, TQT_SIGNAL( processedFiles( TDEIO::Job*, unsigned long ) ),
67  TQT_SLOT( slotProcessedFiles( TDEIO::Job*, unsigned long ) ) );
68  connect( job, TQT_SIGNAL( processedDirs( TDEIO::Job*, unsigned long ) ),
69  TQT_SLOT( slotProcessedDirs( TDEIO::Job*, unsigned long ) ) );
70 
71  connect( job, TQT_SIGNAL( speed( TDEIO::Job*, unsigned long ) ),
72  TQT_SLOT( slotSpeed( TDEIO::Job*, unsigned long ) ) );
73  connect( job, TQT_SIGNAL( percent( TDEIO::Job*, unsigned long ) ),
74  TQT_SLOT( slotPercent( TDEIO::Job*, unsigned long ) ) );
75 
76  connect( job, TQT_SIGNAL( copying( TDEIO::Job*, const KURL& , const KURL& ) ),
77  TQT_SLOT( slotCopying( TDEIO::Job*, const KURL&, const KURL& ) ) );
78  connect( job, TQT_SIGNAL( moving( TDEIO::Job*, const KURL& , const KURL& ) ),
79  TQT_SLOT( slotMoving( TDEIO::Job*, const KURL&, const KURL& ) ) );
80  connect( job, TQT_SIGNAL( creatingDir( TDEIO::Job*, const KURL& ) ),
81  TQT_SLOT( slotCreatingDir( TDEIO::Job*, const KURL& ) ) );
82 
83  connect( job, TQT_SIGNAL( result( TDEIO::Job* ) ),
84  TQT_SLOT( slotFinished( TDEIO::Job* ) ) );
85 
86  connect( job, TQT_SIGNAL( canceled( TDEIO::Job* ) ),
87  TQT_SLOT( slotFinished( TDEIO::Job* ) ) );
88 
89  // then assign job
90  m_pJob = job;
91 }
92 
93 
94 void ProgressBase::setJob( TDEIO::DeleteJob *job )
95 {
96  // first connect all slots
97  connect( job, TQT_SIGNAL( totalSize( TDEIO::Job*, TDEIO::filesize_t ) ),
98  TQT_SLOT( slotTotalSize( TDEIO::Job*, TDEIO::filesize_t ) ) );
99  connect( job, TQT_SIGNAL( totalFiles( TDEIO::Job*, unsigned long ) ),
100  TQT_SLOT( slotTotalFiles( TDEIO::Job*, unsigned long ) ) );
101  connect( job, TQT_SIGNAL( totalDirs( TDEIO::Job*, unsigned long ) ),
102  TQT_SLOT( slotTotalDirs( TDEIO::Job*, unsigned long ) ) );
103 
104  connect( job, TQT_SIGNAL( processedSize( TDEIO::Job*, TDEIO::filesize_t ) ),
105  TQT_SLOT( slotProcessedSize( TDEIO::Job*, TDEIO::filesize_t ) ) );
106  connect( job, TQT_SIGNAL( processedFiles( TDEIO::Job*, unsigned long ) ),
107  TQT_SLOT( slotProcessedFiles( TDEIO::Job*, unsigned long ) ) );
108  connect( job, TQT_SIGNAL( processedDirs( TDEIO::Job*, unsigned long ) ),
109  TQT_SLOT( slotProcessedDirs( TDEIO::Job*, unsigned long ) ) );
110 
111  connect( job, TQT_SIGNAL( speed( TDEIO::Job*, unsigned long ) ),
112  TQT_SLOT( slotSpeed( TDEIO::Job*, unsigned long ) ) );
113  connect( job, TQT_SIGNAL( percent( TDEIO::Job*, unsigned long ) ),
114  TQT_SLOT( slotPercent( TDEIO::Job*, unsigned long ) ) );
115 
116  connect( job, TQT_SIGNAL( deleting( TDEIO::Job*, const KURL& ) ),
117  TQT_SLOT( slotDeleting( TDEIO::Job*, const KURL& ) ) );
118 
119  connect( job, TQT_SIGNAL( result( TDEIO::Job* ) ),
120  TQT_SLOT( slotFinished( TDEIO::Job* ) ) );
121 
122  connect( job, TQT_SIGNAL( canceled( TDEIO::Job* ) ),
123  TQT_SLOT( slotFinished( TDEIO::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( TDEIO::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 

tdeio/tdeio

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

tdeio/tdeio

Skip menu "tdeio/tdeio"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdeio/tdeio by doxygen 1.8.1.2
This website is maintained by Timothy Pearson.