diff options
Diffstat (limited to 'kcontrol/kfontinst/lib/Misc.cpp')
-rw-r--r-- | kcontrol/kfontinst/lib/Misc.cpp | 238 |
1 files changed, 0 insertions, 238 deletions
diff --git a/kcontrol/kfontinst/lib/Misc.cpp b/kcontrol/kfontinst/lib/Misc.cpp deleted file mode 100644 index 1a5952ce4..000000000 --- a/kcontrol/kfontinst/lib/Misc.cpp +++ /dev/null @@ -1,238 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// -// Namespace : KFI::Misc -// Author : Craig Drummond -// Project : K Font Installer -// Creation Date : 01/05/2001 -// Version : $Revision$ $Date$ -// -//////////////////////////////////////////////////////////////////////////////// -// -// 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. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -// -//////////////////////////////////////////////////////////////////////////////// -// (C) Craig Drummond, 2001, 2002, 2003, 2004 -//////////////////////////////////////////////////////////////////////////////// - -#include "Misc.h" -#include <tqfile.h> -#include <kprocess.h> -#include <kstandarddirs.h> -#include <klargefile.h> -#include <tdeio/netaccess.h> -#include <unistd.h> - -namespace KFI -{ - -namespace Misc -{ - -TQString linkedTo(const TQString &i) -{ - TQString d; - - if(isLink(i)) - { - char buffer[1000]; - int n=readlink(TQFile::encodeName(i), buffer, 1000); - - if(n!=-1) - { - buffer[n]='\0'; - d=buffer; - } - } - - return d; -} - -TQString dirSyntax(const TQString &d) -{ - if(!d.isEmpty()) - { - TQString ds(d); - - ds.replace("//", "/"); - - int slashPos=ds.findRev('/'); - - if(slashPos!=(((int)ds.length())-1)) - ds.append('/'); - - return ds; - } - - return d; -} - -TQString xDirSyntax(const TQString &d) -{ - if(!d.isEmpty()) - { - TQString ds(d); - - ds.replace("//", "/"); - - int slashPos=ds.findRev('/'); - - if(slashPos==(((int)ds.length())-1)) - ds.remove(slashPos, 1); - return ds; - } - - return d; -} - -TQString getDir(const TQString &f) -{ - TQString d(f); - - int slashPos=d.findRev('/'); - - if(slashPos!=-1) - d.remove(slashPos+1, d.length()); - - return dirSyntax(d); -} - -TQString getFile(const TQString &f) -{ - TQString d(f); - - int slashPos=d.findRev('/'); - - if(slashPos!=-1) - d.remove(0, slashPos+1); - - return d; -} - -bool createDir(const TQString &dir) -{ - // - // Clear any umask before dir is created - mode_t oldMask=umask(0000); - bool status=TDEStandardDirs::makeDir(dir, DIR_PERMS); - // Reset umask - ::umask(oldMask); - return status; -} - -bool doCmd(const TQString &cmd, const TQString &p1, const TQString &p2, const TQString &p3) -{ - TDEProcess proc; - - proc << cmd; - - if(!p1.isEmpty()) - proc << p1; - if(!p2.isEmpty()) - proc << p2; - if(!p3.isEmpty()) - proc << p3; - - proc.start(TDEProcess::Block); - - return proc.normalExit() && proc.exitStatus()==0; -} - -TQString changeExt(const TQString &f, const TQString &newExt) -{ - TQString newStr(f); - int dotPos=newStr.findRev('.'); - - if(-1==dotPos) - newStr+=TQChar('.')+newExt; - else - { - newStr.remove(dotPos+1, newStr.length()); - newStr+=newExt; - } - return newStr; -} - -void createBackup(const TQString &f) -{ - const TQString constExt(".bak"); - - if(!fExists(f+constExt) && fExists(f)) - doCmd("cp", "-f", f, f+constExt); -} - -// -// Get a list of files associated with a file, e.g.: -// -// File: /home/a/courier.pfa -// -// Associated: /home/a/courier.afm /home/a/courier.pfm -// -void getAssociatedUrls(const KURL &url, KURL::List &list, bool afmAndPfm, TQWidget *widget) -{ - const char *afm[]={"afm", "AFM", "Afm", "AFm", "AfM", "aFM", "aFm", "afM", NULL}, - *pfm[]={"pfm", "PFM", "Pfm", "PFm", "PfM", "pFM", "pFm", "pfM", NULL}; - bool gotAfm=false, - localFile=url.isLocalFile(); - int e; - - for(e=0; afm[e]; ++e) - { - KURL statUrl(url); - TDEIO::UDSEntry uds; - - statUrl.setPath(changeExt(url.path(), afm[e])); - - if(localFile ? fExists(statUrl.path()) : TDEIO::NetAccess::stat(statUrl, uds, widget)) - { - list.append(statUrl); - gotAfm=true; - break; - } - } - - if(afmAndPfm || !gotAfm) - for(e=0; pfm[e]; ++e) - { - KURL statUrl(url); - TDEIO::UDSEntry uds; - - statUrl.setPath(changeExt(url.path(), pfm[e])); - if(localFile ? fExists(statUrl.path()) : TDEIO::NetAccess::stat(statUrl, uds, widget)) - { - list.append(statUrl); - break; - } - } -} - -time_t getTimeStamp(const TQString &item) -{ - KDE_struct_stat info; - - return !item.isEmpty() && 0==KDE_lstat(TQFile::encodeName(item), &info) ? info.st_mtime : 0; -} - - -bool check(const TQString &path, unsigned int fmt, bool checkW) -{ - KDE_struct_stat info; - TQCString pathC(TQFile::encodeName(path)); - - return 0==KDE_lstat(pathC, &info) && (info.st_mode&S_IFMT)==fmt && (!checkW || 0==::access(pathC, W_OK)); -} - -} - -} |