renamedlg.h

00001 /* This file is part of the KDE libraries
00002     Copyright (C) 2000 Stephan Kulow <coolo@kde.org>
00003                        David Faure <faure@kde.org>
00004                   2001 Holger Freyther <freyther@kde.org>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 */
00021 
00022 #ifndef __kio_rename_dlg__
00023 #define __kio_rename_dlg__
00024 
00025 #include <kurl.h>
00026 #include <qdialog.h>
00027 #include <qstring.h>
00028 #include <sys/types.h>
00029 
00030 #include <kio/global.h>
00031 
00032 namespace KIO {
00033 
00034 // KDE4: get rid of M_OVERWRITE_ITSELF, trigger it internally if src==dest
00035 enum RenameDlg_Mode { M_OVERWRITE = 1, M_OVERWRITE_ITSELF = 2, M_SKIP = 4, M_SINGLE = 8, M_MULTI = 16, M_RESUME = 32, M_NORENAME = 64 };
00036 
00040 enum RenameDlg_Result { R_RESUME = 6, R_RESUME_ALL = 7, R_OVERWRITE = 4, R_OVERWRITE_ALL = 5, R_SKIP = 2, R_AUTO_SKIP = 3, R_RENAME = 1, R_CANCEL = 0 };
00041 
00042 
00048 class KIO_EXPORT RenameDlg : public QDialog
00049 {
00050   Q_OBJECT
00051 public:
00068   RenameDlg( QWidget *parent, const QString & caption,
00069              // KDE4: make those KURLs, and use pathOrURL() internally.
00070              const QString & src, const QString & dest,
00071              RenameDlg_Mode mode,
00072              KIO::filesize_t sizeSrc = (KIO::filesize_t) -1,
00073              KIO::filesize_t sizeDest = (KIO::filesize_t) -1,
00074              time_t ctimeSrc = (time_t) -1,
00075              time_t ctimeDest = (time_t) -1,
00076              time_t mtimeSrc = (time_t) -1,
00077              time_t mtimeDest = (time_t) -1,
00078              bool modal = false );
00079   ~RenameDlg();
00080 
00085   KURL newDestURL();
00086 
00094   static QString suggestName(const KURL& baseURL, const QString& oldName);
00095 
00096 public slots:
00098   void b0Pressed();
00099   void b1Pressed();
00100   void b2Pressed();
00101   void b3Pressed();
00102   void b4Pressed();
00103   void b5Pressed();
00104   void b6Pressed();
00105   void b7Pressed();
00106   void b8Pressed();
00107 
00108 protected slots:
00109   void enableRenameButton(const QString &);
00110 private:
00111  class RenameDlgPrivate;
00112  RenameDlgPrivate *d;
00113  void pluginHandling( );
00114 };
00115 
00138 KIO_EXPORT RenameDlg_Result open_RenameDlg( const QString & caption,
00139                                  // KDE4: make those KURLs
00140                                  const QString& src, const QString & dest,
00141                                  RenameDlg_Mode mode, QString& newDestPath,
00142                                  KIO::filesize_t sizeSrc = (KIO::filesize_t) -1,
00143                                  KIO::filesize_t sizeDest = (KIO::filesize_t) -1,
00144                                  time_t ctimeSrc = (time_t) -1,
00145                                  time_t ctimeDest = (time_t) -1,
00146                                  time_t mtimeSrc = (time_t) -1,
00147                                  time_t mtimeDest = (time_t) -1
00148                                  );
00149 
00152 }
00153 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys