Git commit e48815dfcd8f1a0fb75083a2ee95f04021416ecd by Alexander Semke. Committed on 30/11/2014 at 21:08. Pushed by asemke into branch 'master'. 1. Made columns of a file data source non-editable in ColumnDick. 2. Better responsiveness when closing big projects. M +2 -0 src/kdefrontend/MainWin.cpp M +15 -3 src/kdefrontend/dockwidgets/ColumnDock.cpp http://commits.kde.org/labplot/e48815dfcd8f1a0fb75083a2ee95f04021416ecd diff --git a/src/kdefrontend/MainWin.cpp b/src/kdefrontend/MainWin.cpp index 3ecb57d..2cfabc9 100644 --- a/src/kdefrontend/MainWin.cpp +++ b/src/kdefrontend/MainWin.cpp @@ -517,6 +517,8 @@ bool MainWin::newProject(){ if (!closeProject()) return false; = + QApplication::processEvents(QEventLoop::AllEvents, 100); + if (m_project) delete m_project; = diff --git a/src/kdefrontend/dockwidgets/ColumnDock.cpp b/src/kdefrontend/d= ockwidgets/ColumnDock.cpp index ac35afa..979d171 100644 --- a/src/kdefrontend/dockwidgets/ColumnDock.cpp +++ b/src/kdefrontend/dockwidgets/ColumnDock.cpp @@ -35,6 +35,7 @@ #include "backend/core/datatypes/String2DoubleFilter.h" #include "backend/core/datatypes/DateTime2StringFilter.h" #include "backend/core/datatypes/String2DateTimeFilter.h" +#include "backend/datasources/FileDataSource.h" #include "backend/spreadsheet/Spreadsheet.h" = /*! @@ -91,15 +92,26 @@ void ColumnDock::setColumns(QList list){ bool nonEditable =3D false; foreach(Column* col, m_columnsList){ Spreadsheet* s =3D dynamic_cast(col->parentAspect()); - if (!s) { + if (s) { + if (dynamic_cast(s)) { + nonEditable =3D true; + break; + } + } else { nonEditable =3D true; break; } } = if (list.size()=3D=3D1){ - ui.leName->setEnabled(!nonEditable); - ui.leComment->setEnabled(!nonEditable); + //names and comments of non-editable columns in a file data source can b= e changed. + if ( !nonEditable && dynamic_cast(m_column->parentAspec= t())!=3D0 ) { + ui.leName->setEnabled(false); + ui.leComment->setEnabled(false); + } else { + ui.leName->setEnabled(true); + ui.leComment->setEnabled(true); + } = ui.leName->setText(m_column->name()); ui.leComment->setText(m_column->comment());