ktempdir.h
00001 /* 00002 This file is part of the KDE libraries 00003 Copyright (c) 2003 Joseph Wenninger <jowenn@kde.org> 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Library General Public 00007 License version 2 as published by the Free Software Foundation. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Library General Public License for more details. 00013 00014 You should have received a copy of the GNU Library General Public License 00015 along with this library; see the file COPYING.LIB. If not, write to 00016 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00017 Boston, MA 02110-1301, USA. 00018 */ 00019 00020 #ifndef _KTEMPDIR_H_ 00021 #define _KTEMPDIR_H_ 00022 00023 #include <tqstring.h> 00024 #include <stdio.h> 00025 #include <errno.h> 00026 #include "tdelibs_export.h" 00027 00028 class TQDir; 00029 class KTempDirPrivate; 00030 00053 class TDECORE_EXPORT KTempDir 00054 { 00055 public: 00071 KTempDir(TQString directoryPrefix=TQString::null, 00072 int mode = 0700 ); 00073 00074 00078 ~KTempDir(); 00079 00085 void setAutoDelete(bool autoDelete) { bAutoDelete = autoDelete; } 00086 00096 int status() const; 00097 00103 TQString name() const; 00104 00105 00111 TQDir *qDir(); 00112 00116 void unlink(); 00117 00121 bool existing() const; 00122 00144 static bool removeDir( const TQString& path ); 00145 00146 protected: 00147 00155 bool create(const TQString &directoryPrefix, int mode); 00156 00161 void setError(int error) { mError = error; } 00162 00163 private: 00164 int mError; 00165 TQString mTmpName; 00166 bool bExisting; 00167 bool bAutoDelete; 00168 00169 KTempDirPrivate *d; 00170 }; 00171 00172 #endif