diff options
author | Michele Calgaro <michele.calgaro@yahoo.it> | 2025-02-10 15:10:13 +0900 |
---|---|---|
committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2025-02-13 11:44:42 +0900 |
commit | 8f8f84410cc591c85c5e83e0b3efdcda5fdbe42e (patch) | |
tree | f273a932ce048ef22ea9d9888b77ea8a2b8f3e33 /src/sq_dir.cpp | |
parent | 424635023ee423826de12514b2fec7834b8deb7b (diff) | |
download | ksquirrel-8f8f8441.tar.gz ksquirrel-8f8f8441.zip |
Rename 'ksquirrel' folder to 'src'
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit 203fcb8d90752b546c672c625927a136b959fcfb)
Diffstat (limited to 'src/sq_dir.cpp')
-rw-r--r-- | src/sq_dir.cpp | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/src/sq_dir.cpp b/src/sq_dir.cpp new file mode 100644 index 0000000..a4dbd0c --- /dev/null +++ b/src/sq_dir.cpp @@ -0,0 +1,92 @@ +/*************************************************************************** + sq_dir.cpp - description + ------------------- + begin : ??? ??? 20 2004 + copyright : (C) 2004 by Baryshev Dmitry + email : ksquirrel.iv@gmail.com + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include <tqstringlist.h> +#include <tqfile.h> +#include <tqdatetime.h> +#include <tqfileinfo.h> + +#include <kurl.h> + +#include "sq_dir.h" +#include "sq_thumbnailinfo.h" + +SQ_Dir::SQ_Dir() : TQDir() +{} + +SQ_Dir::SQ_Dir(Prefix p) : TQDir() +{ + switch(p) + { + case SQ_Dir::DirectoryBasket: + setRoot("directorybasket"); + break; + case SQ_Dir::Basket: + setRoot("basket"); + break; + case SQ_Dir::Categories: + setRoot("categories"); + break; + } +} + +SQ_Dir::~SQ_Dir() +{} + +/* + * Create relative directory in storage. + * + * For example, if prefix == Thumbnails, + * mkdir("/mnt/win_c") will create + * ~/.ksquirrel/thumbnails/mnt/win_c. + */ +bool SQ_Dir::mkdir(const TQString &relpath) +{ + TQStringList paths = TQStringList::split('/', TQDir::cleanDirPath(relpath)); + + cd(m_root); + + // recursively create directories + for(TQStringList::iterator it = paths.begin();it != paths.end();++it) + { + if(!exists(*it, false)) + if(!TQDir::mkdir(*it)) + return false; + + cd(*it); + } + + return true; +} + +void SQ_Dir::setRoot(const TQString &name) +{ + m_root = TQDir::cleanDirPath(homeDirPath() + TQDir::separator() + TQString::fromLatin1(".ksquirrel")); + TQDir::mkdir(m_root); + + m_root = TQDir::cleanDirPath(m_root + TQDir::separator() + name); + TQDir::mkdir(m_root); +} + +TQString SQ_Dir::absPath(const KURL &relurl) +{ + return m_root + TQDir::separator() + relurl.path(); +} |