190607 c1
- Add Pilz.Drawing.Drawing3D.OpenGLFactory - Fix small bugs in Pilz.UI.PaintingControl
This commit is contained in:
@@ -16,15 +16,17 @@ Imports System.Windows.Forms
|
||||
Public Class CrossThreadsInvokeing
|
||||
|
||||
Public Shared Sub RunAsync(Of T1, T2, T3)(ByVal Action As Action(Of T1, T2, T3), ByVal Arg1 As T1, ByVal Arg2 As T2, ByVal Arg3 As T3)
|
||||
' Aufruf von Action.EndInvoke() gewährleisten, indem er als Callback-Argument mitgegeben wird
|
||||
Action.BeginInvoke(Arg1, Arg2, Arg3, AddressOf Action.EndInvoke, Nothing)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub RunAsync(Of T1, T2)(ByVal Action As Action(Of T1, T2), ByVal Arg1 As T1, ByVal Arg2 As T2)
|
||||
Action.BeginInvoke(Arg1, Arg2, AddressOf Action.EndInvoke, Nothing)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub RunAsync(Of T1)(ByVal Action As Action(Of T1), ByVal Arg1 As T1)
|
||||
Action.BeginInvoke(Arg1, AddressOf Action.EndInvoke, Nothing)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub RunAsync(ByVal Action As Action)
|
||||
Action.BeginInvoke(AddressOf Action.EndInvoke, Nothing)
|
||||
End Sub
|
||||
@@ -32,14 +34,6 @@ Public Class CrossThreadsInvokeing
|
||||
Private Shared Function GuiCrossInvoke(ByVal Action As [Delegate], ByVal ParamArray Args() As Object) As Boolean
|
||||
Dim frms As FormCollection = Application.OpenForms
|
||||
|
||||
'If frms.Count = 0 Then
|
||||
' 'wenn kein Form mehr da ist, so tun, als ob das Invoking ausgeführt wäre
|
||||
' Return True
|
||||
'ElseIf frms(0).InvokeRequired Then
|
||||
'frms(0).BeginInvoke(Action, Args)
|
||||
'Return True
|
||||
'End If
|
||||
|
||||
If frms.Count > 0 AndAlso frms(0).InvokeRequired Then
|
||||
frms(0).BeginInvoke(Action, Args)
|
||||
Return True
|
||||
@@ -49,15 +43,17 @@ Public Class CrossThreadsInvokeing
|
||||
End Function
|
||||
|
||||
Public Shared Sub RunGui(Of T1, T2, T3)(ByVal Action As Action(Of T1, T2, T3), ByVal Arg1 As T1, ByVal Arg2 As T2, ByVal Arg3 As T3)
|
||||
'falls Invoking nicht erforderlich, die Action direkt ausführen
|
||||
If Not GuiCrossInvoke(Action, Arg1, Arg2, Arg3) Then Action(Arg1, Arg2, Arg3)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub RunGui(Of T1, T2)(ByVal Action As Action(Of T1, T2), ByVal Arg1 As T1, ByVal Arg2 As T2)
|
||||
If Not GuiCrossInvoke(Action, Arg1, Arg2) Then Action(Arg1, Arg2)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub RunGui(Of T1)(ByVal Action As Action(Of T1), ByVal Arg1 As T1)
|
||||
If Not GuiCrossInvoke(Action, Arg1) Then Action(Arg1)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub RunGui(ByVal Action As Action)
|
||||
If Not GuiCrossInvoke(Action) Then Action()
|
||||
End Sub
|
||||
|
||||
Reference in New Issue
Block a user