Index: trunk/ab5.0/ablib/src/Classes/ActiveBasic/Windows/UI/ControlEvent.sbp
===================================================================
--- trunk/ab5.0/ablib/src/Classes/ActiveBasic/Windows/UI/ControlEvent.sbp	(revision 564)
+++ trunk/ab5.0/ablib/src/Classes/ActiveBasic/Windows/UI/ControlEvent.sbp	(revision 615)
@@ -13,9 +13,10 @@
 	End Sub
 Protected
-	Sub OnPaintDC(e As PaintDCArgs)
+	Function OnPaintDC(e As PaintDCArgs) As Boolean
 		If Not IsNothing(paintDC) Then
 			paintDC(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	paintDC As PaintDCHandler
@@ -35,9 +36,10 @@
 	End Sub
 Protected
-	Sub OnClick(e As Args)
+	Function OnClick(e As Args) As Boolean
 		If Not IsNothing(click) Then
 			click(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	click As Handler
@@ -57,9 +59,10 @@
 	End Sub
 Protected
-	Sub OnDoubleClick(e As Args)
+	Function OnDoubleClick(e As Args) As Boolean
 		If Not IsNothing(doubleClick) Then
 			doubleClick(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	doubleClick As Handler
@@ -79,9 +82,10 @@
 	End Sub
 Protected
-	Sub OnMove(e As Args)
+	Function OnMove(e As Args) As Boolean
 		If Not IsNothing(move) Then
 			move(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	move As Handler
@@ -101,9 +105,10 @@
 	End Sub
 Protected
-	Sub OnResize(e As ResizeArgs)
+	Function OnResize(e As ResizeArgs) As Boolean
 		If Not IsNothing(resize) Then
 			resize(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	resize As ResizeHandler
@@ -123,9 +128,10 @@
 	End Sub
 Protected
-	Sub OnMouseEnter(e As MouseArgs)
+	Function OnMouseEnter(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseEnter) Then
 			mouseEnter(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseEnter As MouseHandler
@@ -145,9 +151,10 @@
 	End Sub
 Protected
-	Sub OnMouseMove(e As MouseArgs)
+	Function OnMouseMove(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseMove) Then
 			mouseMove(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseMove As MouseHandler
@@ -167,9 +174,10 @@
 	End Sub
 Protected
-	Sub OnMouseHover(e As MouseArgs)
+	Function OnMouseHover(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseHover) Then
 			mouseHover(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseHover As MouseHandler
@@ -189,9 +197,10 @@
 	End Sub
 Protected
-	Sub OnMouseLeave(e As Args)
+	Function OnMouseLeave(e As Args) As Boolean
 		If Not IsNothing(mouseLeave) Then
 			mouseLeave(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseLeave As Handler
@@ -211,9 +220,10 @@
 	End Sub
 Protected
-	Sub OnMouseDown(e As MouseArgs)
+	Function OnMouseDown(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseDown) Then
 			mouseDown(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseDown As MouseHandler
@@ -233,9 +243,10 @@
 	End Sub
 Protected
-	Sub OnMouseClick(e As MouseArgs)
+	Function OnMouseClick(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseClick) Then
 			mouseClick(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseClick As MouseHandler
@@ -255,9 +266,10 @@
 	End Sub
 Protected
-	Sub OnMouseDoubleClick(e As MouseArgs)
+	Function OnMouseDoubleClick(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseDoubleClick) Then
 			mouseDoubleClick(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseDoubleClick As MouseHandler
@@ -277,9 +289,10 @@
 	End Sub
 Protected
-	Sub OnMouseUp(e As MouseArgs)
+	Function OnMouseUp(e As MouseArgs) As Boolean
 		If Not IsNothing(mouseUp) Then
 			mouseUp(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	mouseUp As MouseHandler
@@ -299,9 +312,10 @@
 	End Sub
 Protected
-	Sub OnKeyDown(e As KeyArgs)
+	Function OnKeyDown(e As KeyArgs) As Boolean
 		If Not IsNothing(keyDown) Then
 			keyDown(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	keyDown As KeyHandler
@@ -321,9 +335,10 @@
 	End Sub
 Protected
-	Sub OnKeyUp(e As KeyArgs)
+	Function OnKeyUp(e As KeyArgs) As Boolean
 		If Not IsNothing(keyUp) Then
 			keyUp(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	keyUp As KeyHandler
@@ -343,9 +358,10 @@
 	End Sub
 Protected
-	Sub OnKeyPress(e As KeyPressArgs)
+	Function OnKeyPress(e As KeyPressArgs) As Boolean
 		If Not IsNothing(keyPress) Then
 			keyPress(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	keyPress As KeyPressHandler
@@ -365,9 +381,10 @@
 	End Sub
 Protected
-	Sub OnCreate(e As CreateArgs)
+	Function OnCreate(e As CreateArgs) As Boolean
 		If Not IsNothing(create) Then
 			create(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	create As CreateHandler
@@ -387,9 +404,10 @@
 	End Sub
 Protected
-	Sub OnDestroy(e As Args)
+	Function OnDestroy(e As Args) As Boolean
 		If Not IsNothing(destroy) Then
 			destroy(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	destroy As Handler
@@ -409,9 +427,10 @@
 	End Sub
 Protected
-	Sub OnPaintBackground(e As PaintBackgroundArgs)
+	Function OnPaintBackground(e As PaintBackgroundArgs) As Boolean
 		If Not IsNothing(paintBackground) Then
 			paintBackground(This, e)
-		End If
-	End Sub
+			Return True
+		End If
+	End Function
 Private
 	paintBackground As PaintBackgroundHandler
