51 lines
1.4 KiB
C#
51 lines
1.4 KiB
C#
using UnityEngine;
|
|
using XRLib.UI;
|
|
using TMPro;
|
|
using UnityEngine.UI;
|
|
using TriLibCore.SFB;
|
|
using System;
|
|
|
|
namespace Studio.UI
|
|
{
|
|
public class UI_FolderPathItem : UIBase
|
|
{
|
|
private TMP_InputField InputField_URL;
|
|
private Button Button_SelectedFolder;
|
|
|
|
public Action<UI_FolderPathItem> onEndEditInputFieldURL;
|
|
|
|
public override void AfterAwake()
|
|
{
|
|
InputField_URL.onEndEdit.AddListener(OnEndEditInputFieldURL);
|
|
Button_SelectedFolder.onClick.AddListener(OnClickSelectedFolderButton);
|
|
}
|
|
public void SetData(string path)
|
|
{
|
|
InputField_URL.text = path;
|
|
}
|
|
private void OnEndEditInputFieldURL(string input)
|
|
{
|
|
if (string.IsNullOrEmpty(input))
|
|
return;
|
|
|
|
onEndEditInputFieldURL?.Invoke(this);
|
|
Debug.Log("action " + onEndEditInputFieldURL.GetInvocationList().Length);
|
|
}
|
|
private void OnClickSelectedFolderButton()
|
|
{
|
|
var paths = StandaloneFileBrowser.OpenFolderPanel("Select AssetsFolder", "", false);
|
|
|
|
if (paths.Count > 0 && !string.IsNullOrEmpty(paths[0].Name))
|
|
{
|
|
InputField_URL.text = paths[0].Name;
|
|
InputField_URL.onEndEdit?.Invoke(InputField_URL.text);
|
|
}
|
|
}
|
|
public string GetURL()
|
|
{
|
|
var url = InputField_URL.text;
|
|
return url;
|
|
}
|
|
}
|
|
}
|