diff options
author | Marius Kintel <marius@kintel.net> | 2010-07-08 22:49:36 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2010-10-31 00:42:37 (GMT) |
commit | e46f9dab2f3a2652d787b315bcf0d24503e154af (patch) | |
tree | 68e82d45d3230e08e08ac376af27a77372a6487d /src/openscad.cc | |
parent | b4d03c4d8f6d25faccad1e3e763deaa29d540be0 (diff) |
export to stream for stdout/stderr output support
Diffstat (limited to 'src/openscad.cc')
-rw-r--r-- | src/openscad.cc | 39 |
1 files changed, 33 insertions, 6 deletions
diff --git a/src/openscad.cc b/src/openscad.cc index 35da4d7..494d41b 100644 --- a/src/openscad.cc +++ b/src/openscad.cc @@ -318,14 +318,41 @@ int main(int argc, char **argv) fclose(fp); } - if (stl_output_file) - export_stl(&root_N, stl_output_file, NULL); + if (stl_output_file) { + QFile file(stl_output_file); + if (!file.open(QIODevice::ReadWrite)) { + PRINTA("Can't open file \"%1\" for export", stl_output_file); + } + else { + QTextStream fstream(&file); + export_stl(&root_N, fstream, NULL); + file.close(); + } + } - if (off_output_file) - export_off(&root_N, off_output_file, NULL); + if (off_output_file) { + QFile file(stl_output_file); + if (!file.open(QIODevice::ReadWrite)) { + PRINTA("Can't open file \"%1\" for export", stl_output_file); + } + else { + QTextStream fstream(&file); + export_off(&root_N, fstream, NULL); + file.close(); + } + } - if (dxf_output_file) - export_dxf(&root_N, dxf_output_file, NULL); + if (dxf_output_file) { + QFile file(stl_output_file); + if (!file.open(QIODevice::ReadWrite)) { + PRINTA("Can't open file \"%1\" for export", stl_output_file); + } + else { + QTextStream fstream(&file); + export_dxf(&root_N, fstream, NULL); + file.close(); + } + } delete root_node; #else |