no need to create a GC for source bitmap under X
authorClaus Gittinger <cg@exept.de>
Tue, 24 Aug 1999 01:09:49 +0200
changeset 2865 a97dc9f1e21a
parent 2864 dd151bfdff9d
child 2866 8774c96b5bc0
no need to create a GC for source bitmap under X
DevGC.st
DeviceGraphicsContext.st
--- a/DevGC.st	Tue Aug 24 01:08:44 1999 +0200
+++ b/DevGC.st	Tue Aug 24 01:09:49 1999 +0200
@@ -2052,7 +2052,7 @@
 
     |id w h easy paintDither tmpForm tmpId tmpGCId 
      fgId noColor allColor allBits pX pY
-     mask maskId deviceForm deviceMask colorMap|
+     mask maskId deviceForm deviceFormGCId deviceMask colorMap|
 
     w := aForm width.
     h := aForm height.
@@ -2074,7 +2074,13 @@
     gcId isNil ifTrue:[
         self initGC
     ].
-    deviceForm gcId isNil ifTrue:[deviceForm initGC].
+    (deviceFormGCId := deviceForm gcId) isNil ifTrue:[
+        "/ device needGCForBitmapSource  - i.e. WIN32
+        device platformName ~= 'X11' ifTrue:[
+            deviceForm initGC.
+            deviceFormGCId := deviceForm gcId.
+        ]
+    ].
 
     "
      a deep form ignores paint/bgPaint settings
@@ -2126,7 +2132,7 @@
                             copyFromPixmapId:id
                             x:0 
                             y:0 
-                            gc:(deviceForm gcId)
+                            gc:deviceFormGCId
                             to:drawableId
                             x:pX 
                             y:pY 
@@ -2162,7 +2168,7 @@
                                 copyPlaneFromPixmapId:id
                                 x:0 
                                 y:0 
-                                gc:(deviceForm gcId)
+                                gc:deviceFormGCId
                                 to:tmpId
                                 x:0 
                                 y:0 
@@ -2174,7 +2180,7 @@
                                 copyFromPixmapId:id
                                 x:0 
                                 y:0 
-                                gc:(deviceForm gcId)
+                                gc:deviceFormGCId
                                 to:tmpId
                                 x:0 
                                 y:0 
@@ -2317,7 +2323,7 @@
                 copyPlaneFromPixmapId:id
                 x:0 
                 y:0 
-                gc:(deviceForm gcId)
+                gc:deviceFormGCId
                 to:drawableId
                 x:pX 
                 y:pY 
@@ -2336,7 +2342,7 @@
                 copyPlaneFromPixmapId:id
                 x:0 
                 y:0 
-                gc:(deviceForm gcId)
+                gc:deviceFormGCId
                 to:drawableId
                 x:pX 
                 y:pY 
@@ -2374,7 +2380,7 @@
                     copyPlaneFromPixmapId:id
                     x:0 
                     y:0 
-                    gc:(deviceForm gcId)
+                    gc:deviceFormGCId
                     to:drawableId
                     x:pX 
                     y:pY 
@@ -2425,7 +2431,7 @@
         copyPlaneFromPixmapId:id
         x:0 
         y:0 
-        gc:(deviceForm gcId)
+        gc:deviceFormGCId
         to:drawableId
         x:pX 
         y:pY 
@@ -3832,6 +3838,6 @@
 !DeviceGraphicsContext class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/Attic/DevGC.st,v 1.69 1999-08-18 15:08:05 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/Attic/DevGC.st,v 1.70 1999-08-23 23:09:49 cg Exp $'
 ! !
 DeviceGraphicsContext initialize!
--- a/DeviceGraphicsContext.st	Tue Aug 24 01:08:44 1999 +0200
+++ b/DeviceGraphicsContext.st	Tue Aug 24 01:09:49 1999 +0200
@@ -2052,7 +2052,7 @@
 
     |id w h easy paintDither tmpForm tmpId tmpGCId 
      fgId noColor allColor allBits pX pY
-     mask maskId deviceForm deviceMask colorMap|
+     mask maskId deviceForm deviceFormGCId deviceMask colorMap|
 
     w := aForm width.
     h := aForm height.
@@ -2074,7 +2074,13 @@
     gcId isNil ifTrue:[
         self initGC
     ].
-    deviceForm gcId isNil ifTrue:[deviceForm initGC].
+    (deviceFormGCId := deviceForm gcId) isNil ifTrue:[
+        "/ device needGCForBitmapSource  - i.e. WIN32
+        device platformName ~= 'X11' ifTrue:[
+            deviceForm initGC.
+            deviceFormGCId := deviceForm gcId.
+        ]
+    ].
 
     "
      a deep form ignores paint/bgPaint settings
@@ -2126,7 +2132,7 @@
                             copyFromPixmapId:id
                             x:0 
                             y:0 
-                            gc:(deviceForm gcId)
+                            gc:deviceFormGCId
                             to:drawableId
                             x:pX 
                             y:pY 
@@ -2162,7 +2168,7 @@
                                 copyPlaneFromPixmapId:id
                                 x:0 
                                 y:0 
-                                gc:(deviceForm gcId)
+                                gc:deviceFormGCId
                                 to:tmpId
                                 x:0 
                                 y:0 
@@ -2174,7 +2180,7 @@
                                 copyFromPixmapId:id
                                 x:0 
                                 y:0 
-                                gc:(deviceForm gcId)
+                                gc:deviceFormGCId
                                 to:tmpId
                                 x:0 
                                 y:0 
@@ -2317,7 +2323,7 @@
                 copyPlaneFromPixmapId:id
                 x:0 
                 y:0 
-                gc:(deviceForm gcId)
+                gc:deviceFormGCId
                 to:drawableId
                 x:pX 
                 y:pY 
@@ -2336,7 +2342,7 @@
                 copyPlaneFromPixmapId:id
                 x:0 
                 y:0 
-                gc:(deviceForm gcId)
+                gc:deviceFormGCId
                 to:drawableId
                 x:pX 
                 y:pY 
@@ -2374,7 +2380,7 @@
                     copyPlaneFromPixmapId:id
                     x:0 
                     y:0 
-                    gc:(deviceForm gcId)
+                    gc:deviceFormGCId
                     to:drawableId
                     x:pX 
                     y:pY 
@@ -2425,7 +2431,7 @@
         copyPlaneFromPixmapId:id
         x:0 
         y:0 
-        gc:(deviceForm gcId)
+        gc:deviceFormGCId
         to:drawableId
         x:pX 
         y:pY 
@@ -3832,6 +3838,6 @@
 !DeviceGraphicsContext class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/DeviceGraphicsContext.st,v 1.69 1999-08-18 15:08:05 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/DeviceGraphicsContext.st,v 1.70 1999-08-23 23:09:49 cg Exp $'
 ! !
 DeviceGraphicsContext initialize!