*** empty log message ***
authorclaus
Tue, 28 Feb 1995 22:51:15 +0100
changeset 110 60c08d82e209
parent 109 ba47d9d6bda8
child 111 6f840bddb9e2
*** empty log message ***
PseudoV.st
StandardSystemView.st
StdSysV.st
View.st
WSensor.st
WindowSensor.st
--- a/PseudoV.st	Mon Feb 27 11:20:36 1995 +0100
+++ b/PseudoV.st	Tue Feb 28 22:51:15 1995 +0100
@@ -26,7 +26,7 @@
 COPYRIGHT (c) 1992 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/Attic/PseudoV.st,v 1.26 1995-02-27 10:19:25 claus Exp $
+$Header: /cvs/stx/stx/libview/Attic/PseudoV.st,v 1.27 1995-02-28 21:50:26 claus Exp $
 '!
 
 !PseudoView class methodsFor:'documentation'!
@@ -47,7 +47,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/Attic/PseudoV.st,v 1.26 1995-02-27 10:19:25 claus Exp $
+$Header: /cvs/stx/stx/libview/Attic/PseudoV.st,v 1.27 1995-02-28 21:50:26 claus Exp $
 "
 !
 
@@ -869,6 +869,7 @@
      goes directly to the device instead.
      Actually, its a historical leftover"
 
+    device synchronizeOutput.
     ^ device eventPending:#buttonMotion for:drawableId
 !
 
@@ -878,6 +879,7 @@
      goes directly to the device instead.
      Actually, its a historical leftover"
 
+    device synchronizeOutput.
     ^ device eventPending:#buttonRelease for:drawableId
 ! !
 
--- a/StandardSystemView.st	Mon Feb 27 11:20:36 1995 +0100
+++ b/StandardSystemView.st	Tue Feb 28 22:51:15 1995 +0100
@@ -22,7 +22,7 @@
 COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.17 1995-02-27 10:19:40 claus Exp $
+$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.18 1995-02-28 21:50:35 claus Exp $
 '!
 
 !StandardSystemView class methodsFor:'documentation'!
@@ -43,7 +43,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.17 1995-02-27 10:19:40 claus Exp $
+$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.18 1995-02-28 21:50:35 claus Exp $
 "
 !
 
@@ -216,10 +216,10 @@
     left := screenCenter x - (width // 2).
     top := screenCenter y - (height // 2).
     borderWidth := 2.         "- notice: many window managers ignore this"
-    label := self class defaultLabel.
+    label isNil ifTrue:[label := self class defaultLabel].
     minExtent := 10 @ 10.
     maxExtent := (device width) @ (device height).
-    icon := self class defaultIcon.
+    icon isNil ifTrue:[icon := self class defaultIcon].
     name := self class name.
 !
 
@@ -720,4 +720,3 @@
 	self getKeyboardFocus.
     ]
 ! !
-
--- a/StdSysV.st	Mon Feb 27 11:20:36 1995 +0100
+++ b/StdSysV.st	Tue Feb 28 22:51:15 1995 +0100
@@ -22,7 +22,7 @@
 COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/Attic/StdSysV.st,v 1.17 1995-02-27 10:19:40 claus Exp $
+$Header: /cvs/stx/stx/libview/Attic/StdSysV.st,v 1.18 1995-02-28 21:50:35 claus Exp $
 '!
 
 !StandardSystemView class methodsFor:'documentation'!
@@ -43,7 +43,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/Attic/StdSysV.st,v 1.17 1995-02-27 10:19:40 claus Exp $
+$Header: /cvs/stx/stx/libview/Attic/StdSysV.st,v 1.18 1995-02-28 21:50:35 claus Exp $
 "
 !
 
@@ -216,10 +216,10 @@
     left := screenCenter x - (width // 2).
     top := screenCenter y - (height // 2).
     borderWidth := 2.         "- notice: many window managers ignore this"
-    label := self class defaultLabel.
+    label isNil ifTrue:[label := self class defaultLabel].
     minExtent := 10 @ 10.
     maxExtent := (device width) @ (device height).
-    icon := self class defaultIcon.
+    icon isNil ifTrue:[icon := self class defaultIcon].
     name := self class name.
 !
 
@@ -720,4 +720,3 @@
 	self getKeyboardFocus.
     ]
 ! !
-
--- a/View.st	Mon Feb 27 11:20:36 1995 +0100
+++ b/View.st	Tue Feb 28 22:51:15 1995 +0100
@@ -45,7 +45,7 @@
 COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/View.st,v 1.31 1995-02-27 10:19:51 claus Exp $
+$Header: /cvs/stx/stx/libview/View.st,v 1.32 1995-02-28 21:50:51 claus Exp $
 '!
 
 "this flag controls (globally) how views look - it will vanish"
@@ -70,7 +70,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/View.st,v 1.31 1995-02-27 10:19:51 claus Exp $
+$Header: /cvs/stx/stx/libview/View.st,v 1.32 1995-02-28 21:50:51 claus Exp $
 "
 !
 
@@ -1582,6 +1582,20 @@
      The default here is the actual extent, the receiver currently has."
 
     ^ self extent
+!
+
+buttonMotionEventPending
+    "return true, if a button motion event is pending.
+     Normally, you dont want to use this, since no polling is needed
+     (not even for mouse-tracking).
+     Dont use it, since it does not honor the windowGroup, but
+     goes directly to the device instead.
+     Actually, its a historical leftover"
+
+    windowGroup notNil ifTrue:[
+	^ windowGroup sensor hasButtonMotionEventsFor:self
+    ].
+    ^ super buttonMotionEventPending
 ! !
 
 !View methodsFor:'enumerating subviews'!
@@ -4244,6 +4258,9 @@
 		 got one, launch the menu. It is supposed
 		 to return an actionSelector.
 		"
+		menu receiver isNil ifTrue:[
+		    menu receiver: model
+		].
 		actionSelector := menu startUp.
 		(actionSelector notNil
 		and:[actionSelector isSymbol]) ifTrue:[
--- a/WSensor.st	Mon Feb 27 11:20:36 1995 +0100
+++ b/WSensor.st	Tue Feb 28 22:51:15 1995 +0100
@@ -25,7 +25,7 @@
 COPYRIGHT (c) 1993 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/Attic/WSensor.st,v 1.17 1995-02-18 15:33:01 claus Exp $
+$Header: /cvs/stx/stx/libview/Attic/WSensor.st,v 1.18 1995-02-28 21:51:15 claus Exp $
 '!
 
 !WindowSensor class methodsFor:'documentation'!
@@ -46,7 +46,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/Attic/WSensor.st,v 1.17 1995-02-18 15:33:01 claus Exp $
+$Header: /cvs/stx/stx/libview/Attic/WSensor.st,v 1.18 1995-02-28 21:51:15 claus Exp $
 "
 !
 
@@ -432,6 +432,21 @@
 
     mouseAndKeyboard size ~~ 0 ifTrue:[^ true].
     ^ damage size ~~ 0
+!
+
+hasButtonMotionEventsFor:aView 
+    "return true, if any buttonMotion events are pending"
+
+    mouseAndKeyboard size ~~ 0 ifTrue:[
+	mouseAndKeyboard do:[:anEvent |
+	    anEvent notNil ifTrue:[
+		anEvent view == aView ifTrue:[
+		    anEvent type == #buttonMotion:x:y: ifTrue:[^ true].
+		]
+	    ].
+	]
+    ].
+    ^ aView device eventPending:#buttonMotion for:aView id
 ! !
 
 !WindowSensor methodsFor:'event processing'!
--- a/WindowSensor.st	Mon Feb 27 11:20:36 1995 +0100
+++ b/WindowSensor.st	Tue Feb 28 22:51:15 1995 +0100
@@ -25,7 +25,7 @@
 COPYRIGHT (c) 1993 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/WindowSensor.st,v 1.17 1995-02-18 15:33:01 claus Exp $
+$Header: /cvs/stx/stx/libview/WindowSensor.st,v 1.18 1995-02-28 21:51:15 claus Exp $
 '!
 
 !WindowSensor class methodsFor:'documentation'!
@@ -46,7 +46,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/WindowSensor.st,v 1.17 1995-02-18 15:33:01 claus Exp $
+$Header: /cvs/stx/stx/libview/WindowSensor.st,v 1.18 1995-02-28 21:51:15 claus Exp $
 "
 !
 
@@ -432,6 +432,21 @@
 
     mouseAndKeyboard size ~~ 0 ifTrue:[^ true].
     ^ damage size ~~ 0
+!
+
+hasButtonMotionEventsFor:aView 
+    "return true, if any buttonMotion events are pending"
+
+    mouseAndKeyboard size ~~ 0 ifTrue:[
+	mouseAndKeyboard do:[:anEvent |
+	    anEvent notNil ifTrue:[
+		anEvent view == aView ifTrue:[
+		    anEvent type == #buttonMotion:x:y: ifTrue:[^ true].
+		]
+	    ].
+	]
+    ].
+    ^ aView device eventPending:#buttonMotion for:aView id
 ! !
 
 !WindowSensor methodsFor:'event processing'!