Blob Blame History Raw
diff -r 7510fdcc8b8a -r 185ccbce5421 src/3Depict.cpp
--- src/3Depict.cpp	Mon Aug 25 14:41:48 2014 +0100
+++ src/3Depict.cpp	Mon Aug 25 14:42:29 2014 +0100
@@ -39,6 +39,12 @@
 
 class threeDepictApp: public wxApp {
 private:
+#ifndef DEBUG
+	//instance of this class suppresses internal wx error dialogs.
+	// these are a nuisance in release code, as recovered errors often annoy the user
+	wxLogNull nullifyLogs;
+#endif
+
 	MainWindowFrame* MainFrame ;
 	wxArrayString commandLineFiles;
 	wxLocale* usrLocale;
@@ -62,9 +68,6 @@
     void MacReopenFile(const wxString & fileName);
 #endif
 
-#ifdef DEBUG
-    void setEventloggerFile(const char *file);
-#endif
 };
 
 //Check version is in place because wxT is deprecated for wx 2.9
diff -r 185ccbce5421 -r c8ff86119e58 src/backend/filters/clusterAnalysis.cpp
--- src/backend/filters/clusterAnalysis.cpp	Mon Aug 25 14:42:29 2014 +0100
+++ src/backend/filters/clusterAnalysis.cpp	Mon Aug 25 14:43:10 2014 +0100
@@ -264,7 +264,7 @@
 
 ClusterAnalysisFilter::ClusterAnalysisFilter() : algorithm(CLUSTER_LINK_ERODE),
 	enableCoreClassify(false), coreDist(0.0f), coreKNN(1), linkDist(0.5f), 
-	enableBulkLink(false), bulkLink(1), enableErosion(false), dErosion(0.25),
+	enableBulkLink(false), bulkLink(0.25), enableErosion(false), dErosion(0.25),
 	wantClusterID(false), wantCropSize(false), nMin(0),nMax(std::numeric_limits<size_t>::max()),
 	wantClusterSizeDist(false),logClusterSize(false),
 	wantClusterComposition(true),normaliseComposition(true),
diff -r c8ff86119e58 -r 55ec5e056846 src/gui/mainFrame.cpp
--- src/gui/mainFrame.cpp	Mon Aug 25 14:43:10 2014 +0100
+++ src/gui/mainFrame.cpp	Mon Aug 25 14:51:53 2014 +0100
@@ -464,7 +464,7 @@
     fileExport->Append(ID_FILE_EXPORT_IMAGE, TRANS("&Image...\tCtrl+I"), TRANS("Export Current 3D View"), wxITEM_NORMAL);
     fileExport->Append(ID_FILE_EXPORT_IONS, TRANS("Ion&s...\tCtrl+N"), TRANS("Export Ion Data"), wxITEM_NORMAL);
     fileExport->Append(ID_FILE_EXPORT_RANGE, TRANS("Ran&ges...\tCtrl+G"), TRANS("Export Range Data"), wxITEM_NORMAL);
-    fileExport->Append(ID_FILE_EXPORT_FILTER_ANIMATION, TRANS("&Animate Filters...\tCtrl+A"), TRANS("Export Animated Filter"), wxITEM_NORMAL);
+    fileExport->Append(ID_FILE_EXPORT_FILTER_ANIMATION, TRANS("&Animate Filters...\tCtrl+T"), TRANS("Export Animated Filter"), wxITEM_NORMAL);
     fileExport->Append(ID_FILE_EXPORT_ANIMATION, TRANS("Ani&mate Camera...\tCtrl+M"), TRANS("Export Animated Camera"), wxITEM_NORMAL);
     fileExport->Append(ID_FILE_EXPORT_PACKAGE, TRANS("Pac&kage...\tCtrl+K"), TRANS("Export analysis package"), wxITEM_NORMAL);
 
diff -r 9d545342c3ad -r 3c853d1f5af7 src/backend/filters/externalProgram.cpp
--- src/backend/filters/externalProgram.cpp	Mon Aug 25 14:52:42 2014 +0100
+++ src/backend/filters/externalProgram.cpp	Mon Aug 25 14:53:04 2014 +0100
@@ -551,7 +551,7 @@
 	
 	p.name=TRANS("Work Dir");
 	p.data= workingDir;
-	p.type=PROPERTY_TYPE_STRING;
+	p.type=PROPERTY_TYPE_DIR;
 	p.helpText=TRANS("Directory to run the command in");
 	p.key=EXTERNALPROGRAM_KEY_WORKDIR;		
 	propertyList.addProperty(p,curGroup);
diff -r 9d545342c3ad -r 3c853d1f5af7 src/common/constants.h
--- src/common/constants.h	Mon Aug 25 14:52:42 2014 +0100
+++ src/common/constants.h	Mon Aug 25 14:53:04 2014 +0100
@@ -57,6 +57,7 @@
 	PROPERTY_TYPE_POINT3D,
 	PROPERTY_TYPE_CHOICE,
 	PROPERTY_TYPE_FILE,
+	PROPERTY_TYPE_DIR,
 	PROPERTY_TYPE_ENUM_END //Not a prop, just end of enum
 };
 
diff -r 9d545342c3ad -r 3c853d1f5af7 src/wx/propertyGridUpdater.cpp
--- src/wx/propertyGridUpdater.cpp	Mon Aug 25 14:52:42 2014 +0100
+++ src/wx/propertyGridUpdater.cpp	Mon Aug 25 14:53:04 2014 +0100
@@ -61,7 +61,7 @@
 		g->Append(new wxPropertyCategory(string("") + title,title));
 		
 		
-		//Set the children of thies property
+		//Set the children of this property
 		for(size_t uj=0;uj<propGrouping.size();uj++)
 		{
 			FilterProperty fp;
@@ -83,6 +83,7 @@
 							boolVal);
 					break;
 				};
+				//TODO: we need a PROPERTY_TYPE_UINT
 				case PROPERTY_TYPE_INTEGER:
 				{
 					long long iV;
@@ -145,16 +146,24 @@
 					
 					break;
 				}
+				case PROPERTY_TYPE_DIR:
+				{
+					pgp = new wxDirProperty(fp.name,keyStr,fp.data);
+					break;
+				}
 			}
 
+			//Set the tooltip
 			pgp->SetHelpString(fp.helpText);
 
+			//add the property to the grid
 			g->Append(pgp);
 
 			switch(fp.type)
 			{
 				case PROPERTY_TYPE_BOOL:
 				{
+					//if a bool property, use a checkbox to edit
 					g->SetPropertyEditor(pgp,wxPGEditor_CheckBox);
 					break;
 				}
diff -r 7372047ee6f9 src/common/basics.cpp
--- src/common/basics.cpp	Sun Aug 03 16:58:06 2014 -0400
+++ src/common/basics.cpp	Sun Aug 03 17:01:04 2014 -0400
@@ -1471,6 +1471,21 @@
 	return 0;
 }
 
+bool isNotDirectory(const char *filename)
+{
+	struct stat statbuf;
+
+	if(stat(filename,&statbuf) == -1)
+		return false;
+
+	return (statbuf.st_mode !=S_IFDIR);
+}
+
+bool rmFile(const std::string &filename)
+{
+	return remove(filename.c_str()) == 0;
+}
+
 #ifdef DEBUG
 bool isValidXML(const char *filename)
 {
@@ -1503,27 +1518,6 @@
 	return true;
 }
 
-#if !defined(__WIN32__) && !defined(__WIN64)
 	
-bool isNotDirectory(const char *filename)
-{
-	struct stat statbuf;
-
-	if(stat(filename,&statbuf) == -1)
-		return false;
-
-	return (statbuf.st_mode !=S_IFDIR);
-}
-
-bool rmFile(const std::string &filename)
-{
-	return remove(filename.c_str()) == 0;
-}
-#elif defined(__WIN32) || defined(__WIN64)
-bool rmFile(const std::string &filename)
-{ 
-	return DeleteFile((const wchar_t*)filename.c_str()) == 0;
-}
-#endif
 
 #endif