#BUGFIX by sr
authorsr
Mon, 22 Oct 2018 15:13:04 +0200
changeset 8528 f22907717fa6
parent 8527 9ac7c1dcce68
child 8529 559917a71896
#BUGFIX by sr class: WinWorkstation comment/format in: #nativeFileDialogWithTitle:defaultFilename:owningViewId:filterString:filterIndex:doSave: changed: #primCloseNativeFileDialogByDataAddress:threadHandleAddress: #primNativeFileDialogWithTitle:defaultFilename:owningViewId:filterString:filterIndex:doSave:
WinWorkstation.st
--- a/WinWorkstation.st	Mon Oct 22 15:05:08 2018 +0200
+++ b/WinWorkstation.st	Mon Oct 22 15:13:04 2018 +0200
@@ -16595,7 +16595,7 @@
                 'expecco Logfile', null, '*.elf', null, 
                 null
             filterIndex:2
-            doSave:false. 
+            doSave:false.            
 
     ########### example2 without owning view and termination ##########
 
@@ -16619,7 +16619,7 @@
 
         Delay waitForSeconds:5. 
 
-        p terminate.  
+        p terminate.          
 
     ########### example2 with owning view (makes the launcher modal) ##########
 
@@ -16638,7 +16638,7 @@
                 'expecco Logfile', null, '*.elf', null, 
                 null
             filterIndex:2
-            doSave:false.    
+            doSave:false.     
 
     ########### example3 with owning view (makes the launcher modal) and termination ##########
 
@@ -16664,11 +16664,11 @@
 
         Delay waitForSeconds:5. 
 
-        p terminate.
+        p terminate.                  
     "
 
     "Created: / 22-10-2018 / 11:20:31 / sr"
-    "Modified (comment): / 22-10-2018 / 14:03:20 / sr"
+    "Modified (comment): / 22-10-2018 / 15:12:56 / sr"
 !
 
 primCloseNativeFileDialogByDataAddress:dataAddress
@@ -16680,12 +16680,12 @@
 
 %{  /* STACK: 100000 */ 
     if (__isExternalAddress(dataAddress)) {
-	    fileDialogData *pFdd = __externalAddressVal(dataAddress);
-		DWORD fileDialogThreadId = pFdd->fileDialogThreadId;
-		
-		if (fileDialogThreadId != 0) {
+        fileDialogData *pFdd = __externalAddressVal(dataAddress);
+        DWORD fileDialogThreadId = pFdd->fileDialogThreadId;
+                
+        if (fileDialogThreadId != 0) {
             EnumWindows(enumWindowsToFindAndDestroyFileDialogProc, fileDialogThreadId);
-		}
+        }
         if (__isExternalAddress(threadHandleAddress)) {
             HANDLE fileDialogThread = _HWNDVal(threadHandleAddress);
             TerminateThread(fileDialogThread, 0); 
@@ -16697,6 +16697,7 @@
 %}.
 
     "Created: / 22-10-2018 / 13:53:02 / sr"
+    "Modified: / 22-10-2018 / 15:07:54 / sr"
 !
 
 primGetNativeFileDialogResultByDataAddress:dataAddress
@@ -16735,38 +16736,38 @@
 
 %{  /* STACK: 100000 */ 
     int i;
-    fileDialogData *pFileDialogData = malloc(sizeof(fileDialogData));
-    ZeroMemory(pFileDialogData, sizeof(fileDialogData)); 
+    fileDialogData *pFdd = malloc(sizeof(fileDialogData));
+    ZeroMemory(pFdd, sizeof(fileDialogData)); 
 
     if (__isUnicode16String(defaultFilename)) {
         for (i = 0; i < __unicode16StringSize(defaultFilename); i++) {
-            pFileDialogData->filename[i] = __unicode16StringVal(defaultFilename)[i];
+            pFdd->filename[i] = __unicode16StringVal(defaultFilename)[i];
         }
-        pFileDialogData->filename[i] = 0;
+        pFdd->filename[i] = 0;
     };        
     if (__isUnicode16String(dialogTitle)) {
         for (i = 0; i < __unicode16StringSize(dialogTitle); i++) {
-            pFileDialogData->title[i] = __unicode16StringVal(dialogTitle)[i];
+            pFdd->title[i] = __unicode16StringVal(dialogTitle)[i];
         }
-        pFileDialogData->title[i] = 0;  
+        pFdd->title[i] = 0;  
     };         
     if (__isExternalAddress(owningViewId)) {
-        pFileDialogData->owningWindow = _HWNDVal(owningViewId);
+        pFdd->owningWindow = _HWNDVal(owningViewId);
     };  
     if (__isUnicode16String(filterString)) {
         for (i = 0; i < __unicode16StringSize(filterString); i++) {
-            pFileDialogData->filter[i] = __unicode16StringVal(filterString)[i];
+            pFdd->filter[i] = __unicode16StringVal(filterString)[i];
         }
-        pFileDialogData->filter[i] = 0;  
+        pFdd->filter[i] = 0;  
     };   
     if (__isInteger(filterIndexArg)) {
-        pFileDialogData->filterIndex = filterIndexArg;
-    }
-    pFileDialogData->trueForSave = doSave == true;
-    pFileDialogData->fileDialogDidReturn = FALSE;
-
-    fileDialogDataAddress = __MKEXTERNALADDRESS(pFileDialogData);   
-    fileDialogThreadHandle = __MKEXTERNALADDRESS(openFileDialogInNewThread(pFileDialogData));
+        pFdd->filterIndex = filterIndexArg;
+    }
+    pFdd->trueForSave = doSave == true;
+    pFdd->fileDialogDidReturn = FALSE;
+
+    fileDialogDataAddress = __MKEXTERNALADDRESS(pFdd);   
+    fileDialogThreadHandle = __MKEXTERNALADDRESS(openFileDialogInNewThread(pFdd));
 %}.
 
     ^ Array
@@ -16774,6 +16775,7 @@
         with:fileDialogThreadHandle
 
     "Created: / 22-10-2018 / 13:31:46 / sr"
+    "Modified: / 22-10-2018 / 15:11:47 / sr"
 ! !
 
 !WinWorkstation methodsFor:'native widget support'!