Added Unity project files

This commit is contained in:
2026-06-07 16:58:24 +01:00
parent 3cc05d260b
commit 23bbcab156
3942 changed files with 453676 additions and 0 deletions

View File

@ -0,0 +1,51 @@
using System;
using System.Threading.Tasks;
namespace VRC.SDKBase.Editor
{
/// <summary>
/// This is the public interface you, as a user of the SDK, can use to interact with the SDK Builder
/// </summary>
public interface IVRCSdkBuilderApi: IVRCSdkControlPanelBuilder
{
// Build Events
event EventHandler<object> OnSdkBuildStart;
event EventHandler<string> OnSdkBuildProgress;
event EventHandler<string> OnSdkBuildFinish;
event EventHandler<string> OnSdkBuildSuccess;
event EventHandler<string> OnSdkBuildError;
event EventHandler<SdkBuildState> OnSdkBuildStateChange;
SdkBuildState BuildState { get; }
// Upload Events
event EventHandler OnSdkUploadStart;
event EventHandler<(string status, float percentage)> OnSdkUploadProgress;
event EventHandler<string> OnSdkUploadFinish;
event EventHandler<string> OnSdkUploadSuccess;
event EventHandler<string> OnSdkUploadError;
event EventHandler<SdkUploadState> OnSdkUploadStateChange;
SdkUploadState UploadState { get; }
// Shorthand methods
// for shorthand build and upload methods check the Avatars and Worlds SDKs respectively
void CancelUpload();
}
public enum SdkBuildState
{
Idle,
Building,
Success,
Failure
}
public enum SdkUploadState
{
Idle,
Uploading,
Success,
Failure
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 358965b17df740308d14104f06d30bf8
timeCreated: 1687277193

View File

@ -0,0 +1,51 @@
using System;
using System.Threading.Tasks;
using UnityEngine.UIElements;
namespace VRC.SDKBase.Editor
{
/// <summary>
/// This is the public interface you, as a user of the SDK, can use to interact with the SDK Panel
/// </summary>
public interface IVRCSdkPanelApi
{
// Unfortunately C# 7.3 doesnt allow static members in interfaces, so we're leaving them here for pure reference
// SDK Panel Events
// event EventHandler OnSdkPanelEnable;
// event EventHandler OnSdkPanelDisable;
// event EventHandler<SdkPanelState> OnSdkPanelStateChange;
// SdkPanelState PanelState { get; }
// SDK Panel Methods
/// <summary>
/// Shows a dismissible notification at the bottom of the builder panel
/// </summary>
/// <param name="title"></param>
/// <param name="content"></param>
/// <param name="titleColor">A color class, e.g. `green`</param>
/// <param name="timeout">If timeout is greater than 0 - the notification will auto-dismiss after the given timeout</param>
/// <returns></returns>
Task ShowBuilderNotification(string title, VisualElement content, string titleColor, int timeout = 0);
Task DismissNotification();
// ReSharper disable once InvalidXmlDocComment
/// <summary>
/// Get a reference to a builder of a particular Interface type (e.g. IVRCSdkAvatarBuilderApi)
///
/// As of C# 7.3 - we cannot define static members in interfaces, but the method does exist on the class
/// </summary>
/// <param name="builder">Desired builder or null</param>
/// <typeparam name="T">Builder to look up, e.g. IVRCSdkAvatarBuilderApi</typeparam>
/// <returns>Whether the builder was found</returns>
// static bool TryGetBuilder<T>(out T builder) where T : IVRCSdkBuilderApi;
}
public enum SdkPanelState
{
Idle,
Building,
Uploading
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 3f2c54d95b1d4bc084f3a35db2c95ade
timeCreated: 1687274202