Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/k0dep/uniforms
🖼 Фреймворк для Unity3D для создания окон редакторов
https://github.com/k0dep/uniforms
editor-extension mvc unity3d unity3d-editor view
Last synced: 4 months ago
JSON representation
🖼 Фреймворк для Unity3D для создания окон редакторов
- Host: GitHub
- URL: https://github.com/k0dep/uniforms
- Owner: k0dep
- License: mit
- Created: 2018-03-22T19:46:17.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-07-18T21:05:25.000Z (over 6 years ago)
- Last Synced: 2024-10-10T10:21:19.921Z (4 months ago)
- Topics: editor-extension, mvc, unity3d, unity3d-editor, view
- Language: C#
- Homepage:
- Size: 42 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Uniforms
Фреймворк для Unity3D для создания окон редакторов используя компоненты(например как в Windows forms)
и все прелести ООП вместо того чтобы размазывать отрисовку контролов imgui Unity3D вместе с логикой в одном месте.Позволяет относительно быстро делать штуки подобно этому:
```csharp
interface IExampleView
{
event Action Click;
}class ExampleView : Window, IExampleView
{
[MenuItem("Example/Window")]
public static void CreateWindow() { GetWindow(); }public event Action Click;
public override void PostInit()
{
var label = new ControllLabel("Text");
var button = new ControllButton("click me!");
button.EventClick += () =>
{
if (Click != null) Click();
};MainControll = new ControllVerticalLayout(label, button);
}
}class ExampleController
{
public IExampleView View { get; private set; }public ExampleController(IExampleView view)
{
View = view;
view.Click += () => EditorUtility.DisplayDialog("click", "click!!", "ok");
}
}class ExampleFactory
{
[MenuItem("Example/Window")]
public static void CreateWindow()
{
var view = EditorWindow.GetWindow();
var controller = new ExampleController(view);
}
}
```Резельтат:
![Пример окна](https://raw.githubusercontent.com/k0dep/Uniforms/master/docs/exampleview.png)