Option Strict Off
Option Explicit On
'------------------------------------ 2023/11/09 ------------------------------------
Public Class 五clsEventMaker

#Region "一般のイベント"

    Event ゲーム背景画像の表示ONOFF(ByVal r画像表示OnOff As Boolean)
    Public Function MakeEventゲーム背景画像の表示ONOFF(ByVal r画像表示OnOff As Boolean) As Boolean
        RaiseEvent ゲーム背景画像の表示ONOFF(r画像表示OnOff)
        Return r画像表示OnOff
    End Function

    Event サウンドファイルの実行を開始します(ByVal rサウンドファイル As String)
    Public Function MakeEventサウンドファイルの実行を開始します(ByVal rサウンドファイル As String) As Boolean
        RaiseEvent サウンドファイルの実行を開始します(rサウンドファイル)
        Return True
    End Function

    Event ユーザーカード型のデザインが変更されました()
    Public Function MakeEventユーザーカード型のデザインが変更されました() As Boolean
        RaiseEvent ユーザーカード型のデザインが変更されました()
        Return True
    End Function

    Event 背景画像の明るさが変更された後の処理(ByVal r明るさ実効値 As Single, ByVal rListIndex As Integer, ByRef w処理しました As Boolean)
    Public Function MakeEvent背景画像の明るさが変更された後の処理(ByVal r明るさ実効値 As Single, ByVal rListIndex As Integer) As Boolean
        Dim w処理しました As Boolean = False
        RaiseEvent 背景画像の明るさが変更された後の処理(r明るさ実効値, rListIndex, w処理しました)
        Return w処理しました
    End Function

    Event スイスイユラユラ画像表示ONOFF(ByVal r画像表示OnOff As Boolean)
    Public Function MakeEventスイスイユラユラ画像表示ONOFF(ByVal r画像表示OnOff As Boolean) As Boolean
        RaiseEvent スイスイユラユラ画像表示ONOFF(r画像表示OnOff)
        Return r画像表示OnOff
    End Function

    Event ユラユラサイズ再設定データー求む(ByRef wDoLoopStop As Boolean, ByRef w受け左 As Integer, ByRef w受け上 As Integer, ByRef w受け幅 As Integer, ByRef w受け高 As Integer, ByRef w送り幅 As Integer, ByRef w送り高 As Integer)
    Public Function MakeEventユラユラサイズ再設定データー求む(ByRef wDoLoopStop As Boolean, ByRef w受け左 As Integer, ByRef w受け上 As Integer, ByRef w受け幅 As Integer, ByRef w受け高 As Integer, ByRef w送り幅 As Integer, ByRef w送り高 As Integer) As Boolean
        RaiseEvent ユラユラサイズ再設定データー求む(wDoLoopStop, w受け左, w受け上, w受け幅, w受け高, w送り幅, w送り高)
        Return True
    End Function

    Event ユラユラ移動コピー用データーができました(ByRef r受け左 As Integer, ByRef r受け上 As Integer, ByRef r受け幅 As Integer, ByRef r受け高 As Integer, ByRef r送り左 As Integer, ByRef r送り上 As Integer, ByRef r送り幅 As Integer, ByRef r送り高 As Integer)
    Public Function MakeEventユラユラ移動コピー用データーができました(ByRef r受け左 As Integer, ByRef r受け上 As Integer, ByRef r受け幅 As Integer, ByRef r受け高 As Integer, ByRef r送り左 As Integer, ByRef r送り上 As Integer, ByRef r送り幅 As Integer, ByRef r送り高 As Integer) As Boolean
        RaiseEvent ユラユラ移動コピー用データーができました(r受け左, r受け上, r受け幅, r受け高, r送り左, r送り上, r送り幅, r送り高)
        Return True
    End Function

    Event タイマーのオンオフonスイスイonff(ByRef rEventOwner As Integer, ByRef rTimerオン As Boolean)
    Public Function MakeEventタイマーのオンオフonスイスイonff(ByRef rEventOwner As Integer, ByRef rTimerオン As Boolean) As Boolean
        RaiseEvent タイマーのオンオフonスイスイonff(rEventOwner, rTimerオン)
        Return True
    End Function

    Event 画像切り替えタイマーのオンオフ(ByRef rEventOwner As Integer, ByRef rTimerOnOff As Boolean, ByRef wRetVal As Boolean)
    Public Function MakeEvent画像切り替えタイマーのオンオフ(ByRef rEventOwner As Integer, ByRef rTimerOnOff As Boolean, ByRef wRetVal As Boolean) As Boolean
        wRetVal = False
        RaiseEvent 画像切り替えタイマーのオンオフ(rEventOwner, rTimerOnOff, wRetVal)
        Return wRetVal
    End Function

    Event スイスイとユラユラ開始と停止()
    Public Function MakeEventスイスイとユラユラ開始と停止() As Boolean
        RaiseEvent スイスイとユラユラ開始と停止()
        Return True
    End Function

    Event ゲーム開始と停止(ByVal r開始True停止False As Boolean, ByRef wOptionRetStr As String)
    Public Function MakeEventゲーム開始と停止(ByVal r開始True停止False As Boolean, ByRef wOptionRetStr As String) As String
        wOptionRetStr = ""
        RaiseEvent ゲーム開始と停止(r開始True停止False, wOptionRetStr)
        Return wOptionRetStr
    End Function

    Event Dlgスイスイとユラユラを表示消去(ByVal r表示True消去False As Boolean)
    Public Function MakeEventDlgスイスイとユラユラを表示消去(ByVal r表示True消去False As Boolean) As String
        RaiseEvent Dlgスイスイとユラユラを表示消去(r表示True消去False)
        Return CStr(True)
    End Function

    Event カードショー開始と停止(ByVal r開始true停止false As Boolean)
    Public Function MakeEventカードショー開始と停止(ByVal r開始true停止false As Boolean) As Boolean
        RaiseEvent カードショー開始と停止(r開始true停止false)
        Return True
    End Function

#End Region

#Region "ウロウロ専用"

    Public Event p基本モードが変更されました(ByVal 基本モード As Long)
    Friend Function MakeEvent_p基本モードが変更されました(ByVal 基本モード As Long) As Boolean
        RaiseEvent p基本モードが変更されました(基本モード)
        Return True
    End Function

    Public Event p基本モードのミックスモードが変更されました(ByVal r基本モードのミックスモード0XXXXXXX As String)
    Friend Function MakeEvent_p基本モードのミックスモードが変更されました(ByVal r基本モードのミックスモード0XXXXXXX As String) As Boolean
        RaiseEvent p基本モードのミックスモードが変更されました(r基本モードのミックスモード0XXXXXXX)
        Return True
    End Function

    Public Event pカード型が変更されました(ByVal カード型 As Long)
    Friend Function MakeEvent_pカード型が変更されました(ByVal カード型 As Long) As Boolean
        RaiseEvent pカード型が変更されました(カード型)
        Return True
    End Function

    Public Event pカード枚数が変更されました(ByVal カード枚数 As Long)
    Friend Function MakeEvent_pカード枚数が変更されました(ByVal カード枚数 As Long) As Boolean
        RaiseEvent pカード枚数が変更されました(カード枚数)
        Return True
    End Function

#End Region

#Region "フォームの表示と消去"

    ''●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
    ''● 他のフォームの　イベント   ●Load Show   or   ●閉じる〜Hide(Visible = False)  
    'Private Sub イベントgAppEventMaker_フォームの表示と消去(ByVal rフォーム名ID As Integer, ByVal r表示True消去False As Boolean) Handles イベントgAppEventMaker.フォームの表示と消去
    '    If gmアプリ終了する Then
    '        qqqqq("gmアプリ終了する Event_フォームの表示と消去()" + Me.Name)
    '        Return
    '    End If
    '    If rフォーム名ID = gmDlgオプション設定 Then
    '        'Self Call
    '        qqqqq("Self Call zzEnabledSet_他のフォームの表示状態に合わせて()")

    '        mnuXXXXX.Enabled = Yes_Not gAppEventMaker.フォームの表示消去_設定と取得(0, rフォーム名ID)

    '    Else
    '        If True = r表示True消去False Then
    '            if gAppEventMaker.フォームの表示消去_設定と取得(0, gmDlgFileゲーム用) Or _
    '               gAppEventMaker.フォームの表示消去_設定と取得(0, gmDlgFileスイスイ用) Or _
    '               gAppEventMaker.フォームの表示消去_設定と取得(0, gmDlgスイスイユラユラ) Then 
    '                   Call mnu閉じる_Click(Nothing, Nothing)
    '            End If
    '        Else

    '        End If
    '    End If

    'End Sub
    ''●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●

    Event フォームの表示と消去(ByVal rフォーム名ID As Integer, ByVal r表示True消去False As Boolean)

    Public Function MakeEventフォームの表示消去(ByVal rフォーム名ID As Integer, ByVal r表示True消去False As Boolean) As Boolean
        gggbol = フォームの表示消去_設定と取得(1, rフォーム名ID, r表示True消去False)
        RaiseEvent フォームの表示と消去(rフォーム名ID, r表示True消去False)
        Return r表示True消去False
    End Function

    Public Function フォームの表示消去_設定と取得(ByVal Get0_Set1 As Integer, ByVal rフォーム名ID As Integer, Optional ByVal r表示True消去False As Boolean = False) As Boolean
        Static KeyID(0) As Integer : Static OnOff(0) As Boolean
        Dim a As Integer, m As Integer
        m = UBound(KeyID)
        If Get0_Set1 = 0 Then
            For a = 1 To m                              'Not Use (0)
                If KeyID(a) = rフォーム名ID Then
                    Return OnOff(a)                     'r表示True消去False
                End If
            Next
            Return False
        Else
            For a = 1 To m                              'Not Use (0)
                If KeyID(a) = rフォーム名ID Then
                    OnOff(a) = r表示True消去False
                    Return OnOff(a)                     'r表示True消去False
                End If
            Next
            ReDim Preserve KeyID(m + 10)
            ReDim Preserve OnOff(m + 10)
            KeyID(a) = rフォーム名ID
            OnOff(a) = r表示True消去False
            Return OnOff(a)
        End If
    End Function

    Public Function スイスイとユラユラ開始と停止_共通処理(ByVal 呼び出し元 As String, ByRef mスイスイとユラユラを実行 As ToolStripMenuItem, ByRef mスイスイとユラユラすべて停止 As ToolStripMenuItem, _
                                  ByRef mスイスイ実行 As ToolStripMenuItem, ByRef mスイスイ停止 As ToolStripMenuItem, _
                                  ByRef mユラユラ実行 As ToolStripMenuItem, ByRef mユラユラ停止 As ToolStripMenuItem, _
                                  ByRef mスイスイとユラユラを表示 As ToolStripMenuItem, ByRef mスイスイ画像の設定 As ToolStripMenuItem) As Boolean
        If gmアプリ終了する Then Return False

        mスイスイとユラユラを実行.Visible = Not ppスイスイandユラユラ実行中
        mスイスイとユラユラすべて停止.Visible = ppスイスイフラフラ_いずれかあるいは両方_を実行中
        mスイスイ実行.Visible = (Not ppスイスイ実行中) And (Not ppスイスイandユラユラ実行中)
        mスイスイ停止.Visible = ppスイスイ実行中 Or ppスイスイandユラユラ実行中
        mユラユラ実行.Visible = (Not ppユラユラ実行中) And (Not ppスイスイandユラユラ実行中)
        mユラユラ停止.Visible = ppユラユラ実行中 Or ppスイスイandユラユラ実行中

        If mスイスイとユラユラを表示 IsNot Nothing Then mスイスイとユラユラを表示.Enabled = Not gAppEventMaker.フォームの表示消去_設定と取得(0, gmDlgスイスイユラユラ)
        If mスイスイ画像の設定 IsNot Nothing Then mスイスイ画像の設定.Enabled = Not gAppEventMaker.フォームの表示消去_設定と取得(0, gmDlgFileスイスイ用)
        'qqqqq(呼び出し元 & " ◆スイスイとユラユラ開始と停止_共通処理()")
        Return True
    End Function

#End Region

End Class


