From d216657a2297bfa085a8baeda3fda5d7cee432fe Mon Sep 17 00:00:00 2001 From: clifford Date: Thu, 24 Sep 2009 08:38:28 +0000 Subject: Stefan Farthofer: Using QFileInfo and QDir for directory changes git-svn-id: http://svn.clifford.at/openscad/trunk@92 b57f626f-c46c-0410-a088-ec61d464b74c diff --git a/mainwin.cc b/mainwin.cc index 133fb5a..990ed6b 100644 --- a/mainwin.cc +++ b/mainwin.cc @@ -32,6 +32,7 @@ #include #include #include +#include //for chdir #include @@ -40,7 +41,7 @@ QPointer current_win; MainWindow::MainWindow(const char *filename) { - root_ctx.functions_p = &builtin_functions; + root_ctx.functions_p = &builtin_functions; root_ctx.modules_p = &builtin_modules; root_ctx.set_variable("$fn", Value(0.0)); root_ctx.set_variable("$fs", Value(1.0)); @@ -269,15 +270,9 @@ void MainWindow::maybe_change_dir() if (filename.isEmpty()) return; - int dir_end_index = filename.lastIndexOf("/"); - if (dir_end_index < 0) - return; - - QString dirname = filename.mid(0, dir_end_index); - if (chdir(dirname.toAscii().data()) < 0) - return; - - filename = filename.mid(dir_end_index+1); + QFileInfo fileInfo(filename); + QDir::setCurrent(fileInfo.dir().absolutePath()); + filename = fileInfo.fileName(); } void MainWindow::find_root_tag(AbstractNode *n) -- cgit v0.10.1