1.1 --- a/file.cpp Thu Mar 23 12:38:54 2006 +0000
1.2 +++ b/file.cpp Tue Sep 05 11:53:54 2006 +0000
1.3 @@ -1,5 +1,9 @@
1.4 #include <qobject.h>
1.5 #include <qmessagebox.h>
1.6 +//Added by qt3to4:
1.7 +#include <QPixmap>
1.8 +#include <QLabel>
1.9 +#include <QTextStream>
1.10 #include <iostream>
1.11
1.12 #include "file.h"
1.13 @@ -45,8 +49,8 @@
1.14 }
1.15
1.16 // Now take care of paths where we have to go back first
1.17 - int srcsep=s.contains("/");
1.18 - int dstsep=d.contains("/");
1.19 + int srcsep=s.count("/");
1.20 + int dstsep=d.count("/");
1.21 if (srcsep <= dstsep )
1.22 {
1.23 // find path to go up first and then back to dst
1.24 @@ -61,11 +65,12 @@
1.25 return d;
1.26 }
1.27
1.28 -QString makeUniqueDir (QString s)
1.29 +QString makeUniqueDir (bool &ok,QString s)
1.30 {
1.31 // Create unique directory e.g. s="/tmp/vym-XXXXXX"
1.32
1.33 // Convert QString to string first
1.34 + ok=true;
1.35 char *p;
1.36 int bytes=s.length();
1.37 p=(char*) malloc (bytes+1);
1.38 @@ -74,6 +79,7 @@
1.39 p[i]=s.at(i).latin1();
1.40 p[bytes]=0;
1.41 QString r=mkdtemp (p);
1.42 + if (r.isEmpty()) ok=false;
1.43 free (p);
1.44 return r;
1.45 }
1.46 @@ -89,16 +95,16 @@
1.47
1.48 // Traverse directories
1.49 d.setFilter( QDir::Dirs| QDir::Hidden | QDir::NoSymLinks );
1.50 - const QFileInfoList *dirlist = d.entryInfoList();
1.51 - QFileInfoListIterator itdir( *dirlist );
1.52 - QFileInfo *fi;
1.53 + QFileInfoList list = d.entryInfoList();
1.54 + QFileInfo fi;
1.55
1.56 - while ( (fi = itdir.current()) != 0 )
1.57 + for (int i = 0; i < list.size(); ++i)
1.58 {
1.59 - if (fi->fileName() != "." && fi->fileName() != ".." )
1.60 + fi=list.at(i);
1.61 + if (fi.fileName() != "." && fi.fileName() != ".." )
1.62 {
1.63 - if ( !d.cd(fi->fileName()) )
1.64 - qWarning ("removeDir() cannot find the directory "+fi->fileName());
1.65 + if ( !d.cd(fi.fileName()) )
1.66 + qWarning ("removeDir() cannot find the directory "+fi.fileName());
1.67 else
1.68 {
1.69 // Recursively remove subdirs
1.70 @@ -106,18 +112,16 @@
1.71 d.cdUp();
1.72 }
1.73 }
1.74 - ++itdir;
1.75 - }
1.76 + }
1.77 +
1.78 // Traverse files
1.79 d.setFilter( QDir::Files| QDir::Hidden | QDir::NoSymLinks );
1.80 - const QFileInfoList *filelist = d.entryInfoList();
1.81 - QFileInfoListIterator itfile( *filelist );
1.82 + list = d.entryInfoList();
1.83
1.84 - while ( (fi = itfile.current()) != 0 )
1.85 + for (int i = 0; i < list.size(); ++i)
1.86 {
1.87 - QFile (fi->filePath()).remove();
1.88 -
1.89 - ++itfile;
1.90 + fi=list.at(i);
1.91 + QFile (fi.filePath()).remove();
1.92 }
1.93
1.94 if (!d.rmdir(d.path()))
1.95 @@ -228,7 +232,7 @@
1.96 {
1.97 s="";
1.98 QFile file ( fname);
1.99 - if ( !file.open( IO_ReadOnly ) ) return false;
1.100 + if ( !file.open( QIODevice::ReadOnly ) ) return false;
1.101
1.102 QTextStream ts( &file );
1.103 ts.setEncoding (QTextStream::UnicodeUTF8);
1.104 @@ -243,7 +247,7 @@
1.105 QFile file( fname);
1.106
1.107 file.setName ( fname);
1.108 - if ( !file.open( IO_WriteOnly ) )
1.109 + if ( !file.open( QIODevice::WriteOnly ) )
1.110 {
1.111 file.close();
1.112 return false;
1.113 @@ -260,10 +264,10 @@
1.114
1.115 ImagePreview::ImagePreview (QWidget *par=0): QLabel (par)
1.116 {
1.117 - fdia=(QFileDialog*)par;
1.118 + fdia=(Q3FileDialog*)par;
1.119 }
1.120
1.121 -void ImagePreview::previewUrl( const QUrl &u )
1.122 +void ImagePreview::previewUrl( const Q3Url &u )
1.123 {
1.124 QString path = u.path();
1.125 QPixmap pix( path );
1.126 @@ -301,3 +305,39 @@
1.127 }
1.128 }
1.129
1.130 +ImageIO::ImageIO ()
1.131 +{
1.132 + // Create list with supported image types
1.133 + // foreach (QByteArray format, QImageWriter::supportedImageFormats())
1.134 + // imageTypes.append( tr("%1...").arg(QString(format).toUpper()));
1.135 + imageFilters.append ("Images (*.png *.jpg *.jpeg *.bmp *.bmp *.ppm *.xpm *.xbm)");
1.136 + imageTypes.append ("PNG");
1.137 + imageFilters.append ("Portable Network Graphics (*.png)");
1.138 + imageTypes.append ("PNG");
1.139 + imageFilters.append ("Joint Photographic Experts Group (*.jpg)");
1.140 + imageTypes.append ("JPG");
1.141 + imageFilters.append ("Joint Photographic Experts Group (*.jpeg)");
1.142 + imageTypes.append ("JPG");
1.143 + imageFilters.append ("Windows Bitmap (*.bmp)");
1.144 + imageTypes.append ("BMP");
1.145 + imageFilters.append ("Portable Pixmap (*.ppm)");
1.146 + imageTypes.append ("PPM");
1.147 + imageFilters.append ("X11 Bitmap (*.xpm)");
1.148 + imageTypes.append ("XPM");
1.149 + imageFilters.append ("X11 Bitmap (*.xbm)");
1.150 + imageTypes.append ("XBM");
1.151 +}
1.152 +
1.153 +QStringList ImageIO::getFilters()
1.154 +{
1.155 + return imageFilters;
1.156 +}
1.157 +
1.158 +QString ImageIO::getType(QString filter)
1.159 +{
1.160 + for (int i=0;i<imageFilters.count()+1;i++)
1.161 + if (imageFilters.at(i)==filter) return imageTypes.at(i);
1.162 + return QString();
1.163 +}
1.164 +
1.165 +