123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- using System.Collections;
- using UnityEngine;
- using SFB;
- public class BasicSample : MonoBehaviour {
- private string _path;
- void OnGUI() {
- var guiScale = new Vector3(Screen.width / 800.0f, Screen.height / 600.0f, 1.0f);
- GUI.matrix = Matrix4x4.TRS(Vector3.zero, Quaternion.identity, guiScale);
- GUILayout.Space(20);
- GUILayout.BeginHorizontal();
- GUILayout.Space(20);
- GUILayout.BeginVertical();
- // Open File Samples
- if (GUILayout.Button("Open File")) {
- WriteResult(StandaloneFileBrowser.OpenFilePanel("Open File", "", "", false));
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open File Async")) {
- StandaloneFileBrowser.OpenFilePanelAsync("Open File", "", "", false, (string[] paths) => { WriteResult(paths); });
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open File Multiple")) {
- WriteResult(StandaloneFileBrowser.OpenFilePanel("Open File", "", "", true));
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open File Extension")) {
- WriteResult(StandaloneFileBrowser.OpenFilePanel("Open File", "", "txt", true));
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open File Directory")) {
- WriteResult(StandaloneFileBrowser.OpenFilePanel("Open File", Application.dataPath, "", true));
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open File Filter")) {
- var extensions = new [] {
- new ExtensionFilter("Image Files", "png", "jpg", "jpeg" ),
- new ExtensionFilter("Sound Files", "mp3", "wav" ),
- new ExtensionFilter("All Files", "*" ),
- };
- WriteResult(StandaloneFileBrowser.OpenFilePanel("Open File", "", extensions, true));
- }
- GUILayout.Space(15);
- // Open Folder Samples
- if (GUILayout.Button("Open Folder")) {
- var paths = StandaloneFileBrowser.OpenFolderPanel("Select Folder", "", true);
- WriteResult(paths);
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open Folder Async")) {
- StandaloneFileBrowser.OpenFolderPanelAsync("Select Folder", "", true, (string[] paths) => { WriteResult(paths); });
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Open Folder Directory")) {
- var paths = StandaloneFileBrowser.OpenFolderPanel("Select Folder", Application.dataPath, true);
- WriteResult(paths);
- }
- GUILayout.Space(15);
- // Save File Samples
- if (GUILayout.Button("Save File")) {
- _path = StandaloneFileBrowser.SaveFilePanel("Save File", "", "", "");
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Save File Async")) {
- StandaloneFileBrowser.SaveFilePanelAsync("Save File", "", "", "", (string path) => { WriteResult(path); });
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Save File Default Name")) {
- _path = StandaloneFileBrowser.SaveFilePanel("Save File", "", "MySaveFile", "");
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Save File Default Name Ext")) {
- _path = StandaloneFileBrowser.SaveFilePanel("Save File", "", "MySaveFile", "dat");
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Save File Directory")) {
- _path = StandaloneFileBrowser.SaveFilePanel("Save File", Application.dataPath, "", "");
- }
- GUILayout.Space(5);
- if (GUILayout.Button("Save File Filter")) {
- // Multiple save extension filters with more than one extension support.
- var extensionList = new [] {
- new ExtensionFilter("Binary", "bin"),
- new ExtensionFilter("Text", "txt"),
- };
- _path = StandaloneFileBrowser.SaveFilePanel("Save File", "", "MySaveFile", extensionList);
- }
- GUILayout.EndVertical();
- GUILayout.Space(20);
- GUILayout.Label(_path);
- GUILayout.EndHorizontal();
- }
- public void WriteResult(string[] paths) {
- if (paths.Length == 0) {
- return;
- }
- _path = "";
- foreach (var p in paths) {
- _path += p + "\n";
- }
- }
- public void WriteResult(string path) {
- _path = path;
- }
- }
|