[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [labplot] src/kdefrontend: 1. Made columns of a file data source non-editable in ColumnDick.
From:       Alexander Semke <alexander.semke () web ! de>
Date:       2014-11-30 21:09:14
Message-ID: E1XvBk2-0001Vq-BL () scm ! kde ! org
[Download RAW message or body]

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/dockwidgets/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<Column*> list){
 	bool nonEditable = false;
 	foreach(Column* col, m_columnsList){
 		Spreadsheet* s = dynamic_cast<Spreadsheet*>(col->parentAspect());
-		if (!s) {
+		if (s) {
+			if (dynamic_cast<FileDataSource*>(s)) {
+				nonEditable = true;
+				break;
+			}
+		} else {
 			nonEditable = true;
 			break;
 		}
 	}
 
 	if (list.size()==1){
-		ui.leName->setEnabled(!nonEditable);
-		ui.leComment->setEnabled(!nonEditable);
+		//names and comments of non-editable columns in a file data source can be changed.
+		if ( !nonEditable && dynamic_cast<FileDataSource*>(m_column->parentAspect())!=0 ) {
+			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());
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic