-- 프로그램 실행시 전처리 스크립트

-- 윈도우 앱 실행
function runApp(_string_path)
    os.execute('start "" '.._string_path)
    print('실행: '..tostring(_string_path))
end

-- ## LD 앱플레이어 GUI
ldplayer_gui = 'LD앱플레이어'
GUIAddTab(ldplayer_gui)
GUISetCurTab(ldplayer_gui)


-- # 앱플레이어 경로 그룹
x, y, w, h = 5, 10, 350, 25
GUIAddGroup(x, y, w, h, '앱플레이어 경로')
ld_path_edit_id = GUIAddEdit(x + 0, y + 8, 340, -1, '경로를 기입해주세요.', nil, 'ld_path_edit')



-- # 앱플레이어 기본 설정 그룹
x, y, w, h = 5, 60, 350, 25
GUIAddGroup(x, y, w, h, '앱플레이어 설정')
ld_index_text_id = GUIAddText(x + 0, y + 8, -1, -1, '번호')
ld_index_combo_table = {
    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
    '10', '11', '12', '13', '14', '15', '16', '17', '18', '19',
    '20', '33', '32'
}
ld_index_combo_id = GUIAddCombo(x + 35, y + 8, -1, -1, ld_index_combo_table, nil, 'ld_index_combo')

ld_app_text_id = GUIAddText(x + 110, y + 8, -1, -1, '앱패키지')
ld_app_edit_id = GUIAddEdit(x + 165, y + 8, 180, -1, '앱패키지이름', nil, 'ld_app_edit')


-- # 앱플레이어 제어 기능 그룹
x, y, w, h = 5, 110, 350, 55
GUIAddGroup(x, y, w, h, '앱플레이어 제어 테스트')

-- 앱플레이어 실행 함수
function ld_launch()
    runApp(ld_path_edit..' launch --index '..ld_index_combo)
    -- print(ld_path_edit..' launch --index '..ld_index_combo)
end

-- 앱플레이어 종료 함수
function ld_quit()
    runApp(ld_path_edit..' quit --index '..ld_index_combo)
    -- print(ld_path_edit..' quit --index '..ld_index_combo)
end

-- 앱플레이어 재실행 함수
function ld_reboot()
    runApp(ld_path_edit..' reboot --index '..ld_index_combo)
    -- print(ld_path_edit..' reboot --index '..ld_index_combo)
end

-- 앱플레이어 실행+앱실행 함수
function ld_launchex()
    runApp(ld_path_edit..' launchex --index '..ld_index_combo..' --packagename '..ld_app_edit)
    -- print(ld_path_edit..' launchex --index '..ld_index_combo..' --packagename '..ld_app_edit)
end

-- 앱플레이어 앱실행 함수
function ld_runapp()
    runApp(ld_path_edit..' runapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
    -- print(ld_path_edit..' runapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
end

-- 앱플레이어 앱종료 함수
function ld_killapp()
    runApp(ld_path_edit..' killapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
    -- print(ld_path_edit..' killapp --index '..ld_index_combo..' --packagename '..ld_app_edit)
end

ld_launch_btn_id = GUIAddButton(x - 5, y + 8, 90, -1, 'LD 시작', 'ld_launch')
ld_quit_btn_id = GUIAddButton(x + 85, y + 8, 90, -1, 'LD 종료', 'ld_quit')
ld_reboot_btn_id = GUIAddButton(x + 175, y + 8, 90, -1, 'LD 재시작', 'ld_reboot')
ld_launchex_btn_id = GUIAddButton(x + 265, y + 8, 90, -1, '시작+앱실행', 'ld_launchex')
ld_runapp_btn_id = GUIAddButton(x - 5, y + 34, 90, -1, '앱실행', 'ld_runapp')
ld_killapp_btn_id = GUIAddButton(x + 85, y + 34, 90, -1, '앱종료', 'ld_killapp')


-- # 앱플레이어 자동실행 옵션 그룹
function ld_toggle_autorun()
    if ld_autorun_check == 0 then
        GUIItemEnable(ld_autoapp_check_id, false)
    elseif ld_autorun_check == 1 then
        GUIItemEnable(ld_autoapp_check_id, true)
    end
end
x, y, w, h = 5, 190, 150, 45
GUIAddGroup(x, y, w, h, '앱플레이어 자동실행 옵션')
ld_autorun_check_id = GUIAddCheck(x + 0, y + 8, -1, -1, '앱플레이어 자동실행', 'ld_toggle_autorun', 'ld_autorun_check')
ld_autoapp_check_id = GUIAddCheck(x + 0, y + 30, -1, -1, '지정 앱 자동실행', nil, 'ld_autoapp_check')


-- GUI 생성
GUIShow()
GUISetCurTab(ldplayer_gui)


-- 앱플레이어 자동 실행 옵션 실행
if ld_autorun_check == 1 then
    if ld_autoapp_check == 1 then
        ld_launchex()
    else
        ld_launch()
    end
else
    GUIItemEnable(ld_autoapp_check_id, false)
end