? Makefile
? Makefile.in
? acinclude.m4
? aclocal.m4
? admin
? arson-write-img-fix.diff
? config.h
? config.h.in
? config.log
? config.status
? configure
? configure.in
? configure.in.in
? libtool
? stamp-h
? stamp-h.in
? stamp-h1
? doc/Makefile
? doc/Makefile.in
? doc/arson/Makefile
? doc/arson/Makefile.in
? po/Makefile
? po/Makefile.in
? po/de.gmo
? po/es.gmo
? po/sv.gmo
? src/.deps
? src/.libs
? src/Makefile
? src/Makefile.am
? src/Makefile.in
? src/_burnerpage.cpp
? src/_burnerpage.h
? src/_burnerpage.moc
? src/_cdcopydlg.cpp
? src/_cdcopydlg.h
? src/_cdcopydlg.moc
? src/_cdinfoeditor.cpp
? src/_cdinfoeditor.h
? src/_cdinfoeditor.moc
? src/_configdlg.cpp
? src/_configdlg.h
? src/_configdlg.moc
? src/_devicepage.cpp
? src/_devicepage.h
? src/_devicepage.moc
? src/_isofs.cpp
? src/_isofs.h
? src/_isofs.moc
? src/_isopage.cpp
? src/_isopage.h
? src/_isopage.moc
? src/_listview.cpp
? src/_listview.h
? src/_listview.moc
? src/_lookupdlg.cpp
? src/_lookupdlg.h
? src/_lookupdlg.moc
? src/_optionpage.cpp
? src/_optionpage.h
? src/_optionpage.moc
? src/_programdlg.cpp
? src/_programdlg.h
? src/_programdlg.moc
? src/_programpage.cpp
? src/_programpage.h
? src/_programpage.moc
? src/_progressdlg.cpp
? src/_progressdlg.h
? src/_progressdlg.moc
? src/_ripperpage.cpp
? src/_ripperpage.h
? src/_ripperpage.moc
? src/_textviewer.cpp
? src/_textviewer.h
? src/_textviewer.moc
? src/_waitdlg.cpp
? src/_waitdlg.h
? src/_waitdlg.moc
? src/arson
? src/arson_meta_unload.cpp
? src/burnerpage.moc.cpp
? src/cdripper.moc.cpp
? src/configdlg.moc.cpp
? src/datadoc.moc.cpp
? src/devicepage.moc.cpp
? src/docwidget.moc.cpp
? src/infprogbar.moc.cpp
? src/isofs.moc.cpp
? src/isopage.moc.cpp
? src/listwnd.moc.cpp
? src/logwnd.moc.cpp
? src/mainwnd.moc.cpp
? src/optionpage.moc.cpp
? src/process.moc.cpp
? src/programdlg.moc.cpp
? src/programpage.moc.cpp
? src/progressdlg.moc.cpp
? src/ripperpage.moc.cpp
? src/socket.moc.cpp
? src/pics/Makefile
? src/pics/Makefile.in
Index: src/tools.cpp
===================================================================
RCS file: /cvsroot/arson/arson/src/tools.cpp,v
retrieving revision 1.1
diff -u -3 -p -r1.1 tools.cpp
--- src/tools.cpp	18 Sep 2002 23:20:56 -0000	1.1
+++ src/tools.cpp	2 Nov 2002 06:41:01 -0000
@@ -310,7 +310,8 @@ const QString ArsonCdImageFile::exts[Ars
 };
 
 ArsonCdImageFile::ArsonCdImageFile (const QString &filename)
-	: m_file(filename), m_type(Unknown) { }
+	: m_file(filename), m_type(Unknown)
+{ }
 
 int ArsonCdImageFile::imgFormat (void)
 {
@@ -365,7 +366,18 @@ bool ArsonCdImageFile::write (void)
 
 void arsonWriteImg (const char *fn)
 {
-	ArsonCdImageFile img (fn);
+	QString file (fn);
+
+	if (!fn)
+	{
+		ArsonFileFilter filter (ArsonCdImageFile::exts, ArsonCdImageFile::Max);
+		file = KFileDialog::getOpenFileName(QString::null, filter.toString());
+
+		if (file.isEmpty())
+			return;
+	}
+
+	ArsonCdImageFile img (file);
 
 	if (img.imgFormat() == ArsonCdImageFile::Unknown)
 		arsonErrorMsg(
Index: src/tools.h
===================================================================
RCS file: /cvsroot/arson/arson/src/tools.h,v
retrieving revision 1.1
diff -u -3 -p -r1.1 tools.h
--- src/tools.h	18 Sep 2002 23:20:56 -0000	1.1
+++ src/tools.h	2 Nov 2002 06:41:01 -0000
@@ -51,16 +51,17 @@ public:
 		Dir,
 	};
 
-	ArsonCdImageFile (const QString &filename = QString::null);
+	ArsonCdImageFile (const QString &filename);
 
 	const QString &filename (void) const { return m_file; }
+	void setFilename (const char *name) { m_file = name; }
 	
 	int imgFormat (void);
 	bool write (void);
 
-private:
 	const static QString exts[Max];
-
+	
+private:
 	QString m_file;
 	int m_type;
 };
