summaryrefslogtreecommitdiff
path: root/source/Asura.Editor
diff options
context:
space:
mode:
Diffstat (limited to 'source/Asura.Editor')
-rw-r--r--source/Asura.Editor/Config.h (renamed from source/Asura.Editor/graphics/draw_info.cpp)0
-rw-r--r--source/Asura.Editor/Controls/GUIButton.cpp11
-rw-r--r--source/Asura.Editor/Controls/GUIButton.h14
-rw-r--r--source/Asura.Editor/Controls/GUIContent.cpp (renamed from source/Asura.Editor/controls/button.cpp)0
-rw-r--r--source/Asura.Editor/Controls/GUIContent.h17
-rw-r--r--source/Asura.Editor/Controls/GUILabel.cpp (renamed from source/Asura.Editor/controls/content.cpp)0
-rw-r--r--source/Asura.Editor/Controls/GUILabel.h14
-rw-r--r--source/Asura.Editor/Controls/GUIPanel.cpp (renamed from source/Asura.Editor/controls/toggle.cpp)4
-rw-r--r--source/Asura.Editor/Controls/GUIPanel.h16
-rw-r--r--source/Asura.Editor/Controls/GUISlider.cpp (renamed from source/Asura.Editor/controls/label.cpp)2
-rw-r--r--source/Asura.Editor/Controls/GUISlider.h14
-rw-r--r--source/Asura.Editor/Controls/GUIToggle.cpp1
-rw-r--r--source/Asura.Editor/Controls/GUIToggle.h16
-rw-r--r--source/Asura.Editor/Controls/TextUtil.cpp (renamed from source/Asura.Editor/graphics/slider.cpp)0
-rw-r--r--source/Asura.Editor/Controls/TextUtil.h37
-rw-r--r--source/Asura.Editor/Core/GUIState.h (renamed from source/Asura.Editor/core/gui_state.h)12
-rw-r--r--source/Asura.Editor/Editor.cpp5
-rw-r--r--source/Asura.Editor/Editor.h37
-rw-r--r--source/Asura.Editor/Editor/asset_view.lua (renamed from source/Asura.Editor/layout/horizontal_layout.cpp)0
-rw-r--r--source/Asura.Editor/Editor/compile.bat (renamed from source/Asura.Editor/layout/horizontal_layout.h)0
-rw-r--r--source/Asura.Editor/Editor/compile.sh (renamed from source/Asura.Editor/layout/vertical_layout.cpp)0
-rw-r--r--source/Asura.Editor/Editor/idea.txt (renamed from source/Asura.Editor/layout/vertical_layout.h)0
-rw-r--r--source/Asura.Editor/Editor/main.lua4
-rw-r--r--source/Asura.Editor/Editor/scene_view.lua4
-rw-r--r--source/Asura.Editor/Graphics/Brush.cpp (renamed from source/Asura.Editor/system/file_watcher.cpp)0
-rw-r--r--source/Asura.Editor/Graphics/Brush.h20
-rw-r--r--source/Asura.Editor/Graphics/DrawInfo.cpp0
-rw-r--r--source/Asura.Editor/Graphics/DrawInfo.h16
-rw-r--r--source/Asura.Editor/Graphics/Drawer.cpp16
-rw-r--r--source/Asura.Editor/Graphics/Drawer.h40
-rw-r--r--source/Asura.Editor/Graphics/Pen.cpp0
-rw-r--r--source/Asura.Editor/Graphics/Pen.h7
-rw-r--r--source/Asura.Editor/Graphics/Shader.h18
-rw-r--r--source/Asura.Editor/Graphics/Style.cpp0
-rw-r--r--source/Asura.Editor/Graphics/Style.h15
-rw-r--r--source/Asura.Editor/Graphics/shaders/image.shader.h35
-rw-r--r--source/Asura.Editor/Graphics/shaders/polygon.shader.h29
-rw-r--r--source/Asura.Editor/Layout/HorizontalLayout.cpp0
-rw-r--r--source/Asura.Editor/Layout/HorizontalLayout.h0
-rw-r--r--source/Asura.Editor/Layout/VerticalLayout.cpp0
-rw-r--r--source/Asura.Editor/Layout/VerticalLayout.h0
-rw-r--r--source/Asura.Editor/Main.cpp30
-rw-r--r--source/Asura.Editor/System/ContainerWindow.cpp0
-rw-r--r--source/Asura.Editor/System/ContainerWindow.h62
-rw-r--r--source/Asura.Editor/System/FileWatcher.cpp0
-rw-r--r--source/Asura.Editor/System/FileWatcher.h (renamed from source/Asura.Editor/system/file_watcher.h)0
-rw-r--r--source/Asura.Editor/System/MenuController.cpp0
-rw-r--r--source/Asura.Editor/System/MenuController.h15
-rw-r--r--source/Asura.Editor/Type.h30
-rw-r--r--source/Asura.Editor/controls/button.h14
-rw-r--r--source/Asura.Editor/controls/content.h17
-rw-r--r--source/Asura.Editor/controls/label.h14
-rw-r--r--source/Asura.Editor/controls/panel.cpp16
-rw-r--r--source/Asura.Editor/controls/panel.h16
-rw-r--r--source/Asura.Editor/controls/toggle.h14
-rw-r--r--source/Asura.Editor/editor.h6
-rw-r--r--source/Asura.Editor/graphics/brush.h4
-rw-r--r--source/Asura.Editor/graphics/draw_info.h14
-rw-r--r--source/Asura.Editor/graphics/drawer.cpp2
-rw-r--r--source/Asura.Editor/graphics/drawer.h10
-rw-r--r--source/Asura.Editor/graphics/pen.h17
-rw-r--r--source/Asura.Editor/graphics/shader.h4
-rw-r--r--source/Asura.Editor/graphics/shaders/image.shader.h2
-rw-r--r--source/Asura.Editor/graphics/shaders/polygon.shader.h2
-rw-r--r--source/Asura.Editor/graphics/slider.h14
-rw-r--r--source/Asura.Editor/graphics/style.h8
-rw-r--r--source/Asura.Editor/main.cpp8
-rw-r--r--source/Asura.Editor/system/editor_window.cpp6
-rw-r--r--source/Asura.Editor/system/editor_window.h62
-rw-r--r--source/Asura.Editor/type.h4
70 files changed, 563 insertions, 232 deletions
diff --git a/source/Asura.Editor/graphics/draw_info.cpp b/source/Asura.Editor/Config.h
index e69de29..e69de29 100644
--- a/source/Asura.Editor/graphics/draw_info.cpp
+++ b/source/Asura.Editor/Config.h
diff --git a/source/Asura.Editor/Controls/GUIButton.cpp b/source/Asura.Editor/Controls/GUIButton.cpp
new file mode 100644
index 0000000..f168982
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUIButton.cpp
@@ -0,0 +1,11 @@
+#include "GUIButton.h"
+
+namespace_begin(AsuraEditor)
+
+bool GUIButton()
+{
+ return false;
+}
+
+
+namespace_end
diff --git a/source/Asura.Editor/Controls/GUIButton.h b/source/Asura.Editor/Controls/GUIButton.h
new file mode 100644
index 0000000..ece60ca
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUIButton.h
@@ -0,0 +1,14 @@
+#ifndef _ASURA_EDITOR_GUI_BUTTON_H_
+#define _ASURA_EDITOR_GUI_BUTTON_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+bool GUIButton();
+
+
+
+namespace_end
+
+#endif
diff --git a/source/Asura.Editor/controls/button.cpp b/source/Asura.Editor/Controls/GUIContent.cpp
index c5741c1..c5741c1 100644
--- a/source/Asura.Editor/controls/button.cpp
+++ b/source/Asura.Editor/Controls/GUIContent.cpp
diff --git a/source/Asura.Editor/Controls/GUIContent.h b/source/Asura.Editor/Controls/GUIContent.h
new file mode 100644
index 0000000..c70a03c
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUIContent.h
@@ -0,0 +1,17 @@
+#ifndef _ASURA_EDITOR_GUI_CONTENT_H_
+#define _ASURA_EDITOR_GUI_CONTENT_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+/// IMGUI content
+class GUIContent
+{
+
+};
+
+
+namespace_end
+
+#endif
diff --git a/source/Asura.Editor/controls/content.cpp b/source/Asura.Editor/Controls/GUILabel.cpp
index c5741c1..c5741c1 100644
--- a/source/Asura.Editor/controls/content.cpp
+++ b/source/Asura.Editor/Controls/GUILabel.cpp
diff --git a/source/Asura.Editor/Controls/GUILabel.h b/source/Asura.Editor/Controls/GUILabel.h
new file mode 100644
index 0000000..172a329
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUILabel.h
@@ -0,0 +1,14 @@
+#ifndef _ASURA_EDITOR_GUI_LABEL_H_
+#define _ASURA_EDITOR_GUI_LABEL_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+bool GUILabel();
+
+
+
+namespace_end
+
+#endif
diff --git a/source/Asura.Editor/controls/toggle.cpp b/source/Asura.Editor/Controls/GUIPanel.cpp
index 40d2043..3a78af7 100644
--- a/source/Asura.Editor/controls/toggle.cpp
+++ b/source/Asura.Editor/Controls/GUIPanel.cpp
@@ -1,8 +1,6 @@
-#include "gui_button.h"
+#include "GUIPanel.h"
namespace_begin(AsuraEditor)
-bool GUIToggle();
-
namespace_end
diff --git a/source/Asura.Editor/Controls/GUIPanel.h b/source/Asura.Editor/Controls/GUIPanel.h
new file mode 100644
index 0000000..6bcd00d
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUIPanel.h
@@ -0,0 +1,16 @@
+#ifndef _ASURA_EDITOR_GUI_PANEL_H_
+#define _ASURA_EDITOR_GUI_PANEL_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+/// IMGUI panel
+class GUIPanel
+{
+
+};
+
+namespace_end
+
+#endif
diff --git a/source/Asura.Editor/controls/label.cpp b/source/Asura.Editor/Controls/GUISlider.cpp
index c5741c1..9c20d5f 100644
--- a/source/Asura.Editor/controls/label.cpp
+++ b/source/Asura.Editor/Controls/GUISlider.cpp
@@ -1,4 +1,4 @@
-#include "gui_button.h"
+#include "GUISlider.h"
namespace_begin(AsuraEditor)
diff --git a/source/Asura.Editor/Controls/GUISlider.h b/source/Asura.Editor/Controls/GUISlider.h
new file mode 100644
index 0000000..8d91e85
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUISlider.h
@@ -0,0 +1,14 @@
+#ifndef _ASURA_EDITOR_GUI_SLIDER_H_
+#define _ASURA_EDITOR_GUI_SLIDER_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+void GUISlider();
+
+
+namespace_end
+
+
+#endif
diff --git a/source/Asura.Editor/Controls/GUIToggle.cpp b/source/Asura.Editor/Controls/GUIToggle.cpp
new file mode 100644
index 0000000..7871098
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUIToggle.cpp
@@ -0,0 +1 @@
+#include "GUIToggle.h"
diff --git a/source/Asura.Editor/Controls/GUIToggle.h b/source/Asura.Editor/Controls/GUIToggle.h
new file mode 100644
index 0000000..b26e919
--- /dev/null
+++ b/source/Asura.Editor/Controls/GUIToggle.h
@@ -0,0 +1,16 @@
+#ifndef _ASURA_EDITOR_GUI_TOGGLE_H_
+#define _ASURA_EDITOR_GUI_TOGGLE_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+/// Radio button \ toggle button
+
+bool GUIToggle();
+
+
+
+namespace_end
+
+#endif
diff --git a/source/Asura.Editor/graphics/slider.cpp b/source/Asura.Editor/Controls/TextUtil.cpp
index e69de29..e69de29 100644
--- a/source/Asura.Editor/graphics/slider.cpp
+++ b/source/Asura.Editor/Controls/TextUtil.cpp
diff --git a/source/Asura.Editor/Controls/TextUtil.h b/source/Asura.Editor/Controls/TextUtil.h
new file mode 100644
index 0000000..24fb1e1
--- /dev/null
+++ b/source/Asura.Editor/Controls/TextUtil.h
@@ -0,0 +1,37 @@
+#ifndef _ASURA_EDITOR_TEXTUTIL_H_
+#define _ASURA_EDITOR_TEXTUTIL_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+enum TextAlignment {
+ kLeft,
+ kCenter,
+ kRight,
+ kAuto,
+};
+
+enum TextAnchor {
+ kUpperLeft,
+ kUpperCenter,
+ kUpperRight,
+ kMiddleLeft,
+ kMiddleCenter,
+ kMiddleRight,
+ kLowerLeft,
+ kLowerCenter,
+ kLowerRight,
+ kDontCare ///< Special case for getting text mesh generators: The anchoring used for the text doesn't modify the size of the generated text, so if you just want to query for it you don't care about anchoring
+};
+
+enum TextClipping {
+ /// Text flows freely outside the element.
+ kOverflow = 0,
+ /// Text gets clipped to be inside the element.
+ kClip = 1,
+};
+
+namespace_end
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/core/gui_state.h b/source/Asura.Editor/Core/GUIState.h
index 9e7e91c..88c9891 100644
--- a/source/Asura.Editor/core/gui_state.h
+++ b/source/Asura.Editor/Core/GUIState.h
@@ -1,13 +1,23 @@
#ifndef _ASURA_EDITOR_GUI_STATE_H_
#define _ASURA_EDITOR_GUI_STATE_H_
-#include <asura-utils/classes.h>
+#include <asura-utils/Classes.h>
namespace_begin(AsuraEditor)
/// GUI widgets uniqueID
+class GUIState
+{
+public:
+ inline int GetDepth() { return m_Depth; };
+private:
+
+ int m_Depth;
+ bool m_Changed;
+
+};
namespace_end
diff --git a/source/Asura.Editor/Editor.cpp b/source/Asura.Editor/Editor.cpp
new file mode 100644
index 0000000..38e7c26
--- /dev/null
+++ b/source/Asura.Editor/Editor.cpp
@@ -0,0 +1,5 @@
+
+int main(int argc, char *argv[])
+{
+
+} \ No newline at end of file
diff --git a/source/Asura.Editor/Editor.h b/source/Asura.Editor/Editor.h
new file mode 100644
index 0000000..2f5f8ca
--- /dev/null
+++ b/source/Asura.Editor/Editor.h
@@ -0,0 +1,37 @@
+#ifndef _ASURA_EDITOR_H_
+#define _ASURA_EDITOR_H_
+
+#include <asura-utils/Scripting/Portable.hpp>
+
+namespace AsuraEditor
+{
+
+ ///
+ /// ༭ʵ
+ ///
+ class Editor
+ {
+ public:
+
+ ///
+ /// ýlua State
+ ///
+ Luax::LuaxState& GetLuaxState();
+
+ private:
+
+ ///
+ /// ߼е
+ ///
+ Luax::LuaxVM* mEditorVM;
+
+ ///
+ /// Ϸʱ
+ ///
+ Luax::LuaxVM* mRunnerVM;
+
+ };
+
+}
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/layout/horizontal_layout.cpp b/source/Asura.Editor/Editor/asset_view.lua
index e69de29..e69de29 100644
--- a/source/Asura.Editor/layout/horizontal_layout.cpp
+++ b/source/Asura.Editor/Editor/asset_view.lua
diff --git a/source/Asura.Editor/layout/horizontal_layout.h b/source/Asura.Editor/Editor/compile.bat
index e69de29..e69de29 100644
--- a/source/Asura.Editor/layout/horizontal_layout.h
+++ b/source/Asura.Editor/Editor/compile.bat
diff --git a/source/Asura.Editor/layout/vertical_layout.cpp b/source/Asura.Editor/Editor/compile.sh
index e69de29..e69de29 100644
--- a/source/Asura.Editor/layout/vertical_layout.cpp
+++ b/source/Asura.Editor/Editor/compile.sh
diff --git a/source/Asura.Editor/layout/vertical_layout.h b/source/Asura.Editor/Editor/idea.txt
index e69de29..e69de29 100644
--- a/source/Asura.Editor/layout/vertical_layout.h
+++ b/source/Asura.Editor/Editor/idea.txt
diff --git a/source/Asura.Editor/Editor/main.lua b/source/Asura.Editor/Editor/main.lua
new file mode 100644
index 0000000..76fab7a
--- /dev/null
+++ b/source/Asura.Editor/Editor/main.lua
@@ -0,0 +1,4 @@
+
+--༭
+--༭Asura.Editor/scriptsʵ
+
diff --git a/source/Asura.Editor/Editor/scene_view.lua b/source/Asura.Editor/Editor/scene_view.lua
new file mode 100644
index 0000000..b6097f3
--- /dev/null
+++ b/source/Asura.Editor/Editor/scene_view.lua
@@ -0,0 +1,4 @@
+-- 场景窗口
+local scene = AsuraEditor.Window.New("Window/Scene View")
+
+
diff --git a/source/Asura.Editor/system/file_watcher.cpp b/source/Asura.Editor/Graphics/Brush.cpp
index e69de29..e69de29 100644
--- a/source/Asura.Editor/system/file_watcher.cpp
+++ b/source/Asura.Editor/Graphics/Brush.cpp
diff --git a/source/Asura.Editor/Graphics/Brush.h b/source/Asura.Editor/Graphics/Brush.h
new file mode 100644
index 0000000..4290926
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Brush.h
@@ -0,0 +1,20 @@
+#ifndef _ASURA_EDITOR_BRUSH_H_
+#define _ASURA_EDITOR_BRUSH_H_
+
+namespace AsuraEditor
+{
+ namespace Graphics
+ {
+
+ ///
+ /// ˢָģʽ
+ ///
+ class Brush
+ {
+
+ };
+
+ }
+}
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/DrawInfo.cpp b/source/Asura.Editor/Graphics/DrawInfo.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Graphics/DrawInfo.cpp
diff --git a/source/Asura.Editor/Graphics/DrawInfo.h b/source/Asura.Editor/Graphics/DrawInfo.h
new file mode 100644
index 0000000..ee38319
--- /dev/null
+++ b/source/Asura.Editor/Graphics/DrawInfo.h
@@ -0,0 +1,16 @@
+#ifndef _ASURA_EDITOR_DRAW_INFO_H_
+#define _ASURA_EDITOR_DRAW_INFO_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+class DrawInfo
+{
+
+};
+
+
+namespace_end
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/Drawer.cpp b/source/Asura.Editor/Graphics/Drawer.cpp
new file mode 100644
index 0000000..6482aeb
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Drawer.cpp
@@ -0,0 +1,16 @@
+#include "Drawer.h"
+
+using namespace AEGraphics;
+
+namespace AsuraEditor
+{
+ namespace Graphics
+ {
+
+ void Drawer::DrawImage(Image* img)
+ {
+
+ }
+
+ }
+} \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/Drawer.h b/source/Asura.Editor/Graphics/Drawer.h
new file mode 100644
index 0000000..638ce08
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Drawer.h
@@ -0,0 +1,40 @@
+#ifndef _ASURA_EDITOR_PAINTER_H_
+#define _ASURA_EDITOR_PAINTER_H_
+
+#include <asura-utils/Scripting/Portable.hpp>
+#include <asura-utils/Singleton.hpp>
+#include <asura-core/Graphics/Image.h>
+
+namespace AsuraEditor
+{
+ namespace Graphics
+ {
+
+ ///
+ /// AsuraEngineȾֵĻ滭࣬ڻƿؼ֮֡Բֱ沿ֵȾ
+ /// ΪȾframeworkʵ֣и߼ij󣬶ؼȾҪӵpass
+ /// ༭£Ⱦͱ༭ȾԻࡣ
+ ///
+ class Drawer
+ : public AsuraEngine::Singleton<Drawer>
+ , public AEScripting::Portable<Drawer>
+ {
+ public:
+
+ void DrawLine(int x1, int y1, int x2, int y2);
+ void DrawImage(AEGraphics::Image* img, int x, int y, float sx, float sy, float r, int ox, int oy);
+ void DrawTexts();
+ void DrawCircle(int x, int y, float d);
+ void DrawPoint(int x, int y);
+ void DrawPolyline();
+
+ private:
+
+ LUAX_DECL_SINGLETON(Drawer);
+
+ };
+
+ }
+}
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/Pen.cpp b/source/Asura.Editor/Graphics/Pen.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Pen.cpp
diff --git a/source/Asura.Editor/Graphics/Pen.h b/source/Asura.Editor/Graphics/Pen.h
new file mode 100644
index 0000000..b949d14
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Pen.h
@@ -0,0 +1,7 @@
+#ifndef _ASURA_EDITOR_PEN_H_
+#define _ASURA_EDITOR_PEN_H_
+
+
+
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/Shader.h b/source/Asura.Editor/Graphics/Shader.h
new file mode 100644
index 0000000..a3abec1
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Shader.h
@@ -0,0 +1,18 @@
+#ifndef _ASURA_EDITOR_SHADER_H_
+#define _ASURA_EDITOR_SHADER_H_
+
+namespace AsuraEditor
+{
+ namespace Graphics
+ {
+
+ struct ShaderProgram
+ {
+ const char* vert;
+ const char* frag;
+ };
+
+ }
+}
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/Style.cpp b/source/Asura.Editor/Graphics/Style.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Style.cpp
diff --git a/source/Asura.Editor/Graphics/Style.h b/source/Asura.Editor/Graphics/Style.h
new file mode 100644
index 0000000..b6ed2c5
--- /dev/null
+++ b/source/Asura.Editor/Graphics/Style.h
@@ -0,0 +1,15 @@
+#ifndef _ASURA_EDITOR_GUI_STYLE_H_
+#define _ASURA_EDITOR_GUI_STYLE_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+class GUIStyle
+{
+
+};
+
+namespace_end
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/shaders/image.shader.h b/source/Asura.Editor/Graphics/shaders/image.shader.h
new file mode 100644
index 0000000..cbdd542
--- /dev/null
+++ b/source/Asura.Editor/Graphics/shaders/image.shader.h
@@ -0,0 +1,35 @@
+#ifndef _ASURA_EDITOR_SHADER_H_
+#include "../shader.h"
+#endif
+
+//
+static AsuraEditor::Graphics::ShaderProgram image_shader =
+{
+R"(
+in vec2 asura_position;
+in vec2 asura_texcoord0;
+
+uniform mat4 asura_model_matrix;
+uniform mat4 asura_view_matrix;
+uniform mat4 asura_projection_matrix;
+
+void main()
+{
+ gl_Position = asura_projection_matrix * asura_view_matrix * asura_model_matrix * vec4(asura_position, 0, 1);
+ uv = asura_texcoord0;
+}
+
+)",
+
+R"(
+in vec2 uv;
+
+uniform sampler2D asura_maintex;
+
+void main()
+{
+
+}
+
+)"
+}; \ No newline at end of file
diff --git a/source/Asura.Editor/Graphics/shaders/polygon.shader.h b/source/Asura.Editor/Graphics/shaders/polygon.shader.h
new file mode 100644
index 0000000..a92e9a6
--- /dev/null
+++ b/source/Asura.Editor/Graphics/shaders/polygon.shader.h
@@ -0,0 +1,29 @@
+#ifndef _ASURA_EDITOR_SHADER_H_
+#include "../shader.h"
+#endif
+
+//
+static AsuraEditor::Graphics::ShaderProgram polygon_shader =
+{
+ R"(
+in vec2 position;
+
+uniform mat4 mvp_matrix;
+
+void main()
+{
+ gl_Position = mvp_matrix * vec4(position, 0, 1);
+}
+
+)",
+
+R"(
+uniform vec4 color;
+
+void main()
+{
+ gl_FragColor = color;
+}
+
+)"
+}; \ No newline at end of file
diff --git a/source/Asura.Editor/Layout/HorizontalLayout.cpp b/source/Asura.Editor/Layout/HorizontalLayout.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Layout/HorizontalLayout.cpp
diff --git a/source/Asura.Editor/Layout/HorizontalLayout.h b/source/Asura.Editor/Layout/HorizontalLayout.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Layout/HorizontalLayout.h
diff --git a/source/Asura.Editor/Layout/VerticalLayout.cpp b/source/Asura.Editor/Layout/VerticalLayout.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Layout/VerticalLayout.cpp
diff --git a/source/Asura.Editor/Layout/VerticalLayout.h b/source/Asura.Editor/Layout/VerticalLayout.h
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/Layout/VerticalLayout.h
diff --git a/source/Asura.Editor/Main.cpp b/source/Asura.Editor/Main.cpp
new file mode 100644
index 0000000..207474b
--- /dev/null
+++ b/source/Asura.Editor/Main.cpp
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) 2018-2019 AsuraEngine Team
+ *
+ * This software is provided 'as-is', without any express or implied
+ * warranty. In no event will the authors be held liable for any damages
+ * arising from the use of this software.
+ *
+ * Permission is granted to anyone to use this software for any purpose,
+ * including commercial applications, and to alter it and redistribute it
+ * freely, subject to the following restrictions:
+ *
+ * 1. The origin of this software m_ust not be m_isrepresented; you m_ust not
+ * claim that you wrote the original software. If you use this software
+ * in a product, an acknowledgment in the product documentation would be
+ * appreciated but is not required.
+ * 2. Altered source versions m_ust be plainly m_arked as such, and m_ust not be
+ * m_isrepresented as being the original software.
+ * 3. This notice m_ay not be removed or altered from any source distribution.
+ **/
+
+///
+/// ༭ĽͨdirectUIʵ֣Ⱦasura-libϣ¼Ӧͨwin32APIʵ֡
+///
+
+int main(int argn, char* args[])
+{
+
+
+
+} \ No newline at end of file
diff --git a/source/Asura.Editor/System/ContainerWindow.cpp b/source/Asura.Editor/System/ContainerWindow.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/System/ContainerWindow.cpp
diff --git a/source/Asura.Editor/System/ContainerWindow.h b/source/Asura.Editor/System/ContainerWindow.h
new file mode 100644
index 0000000..ee72b72
--- /dev/null
+++ b/source/Asura.Editor/System/ContainerWindow.h
@@ -0,0 +1,62 @@
+#ifndef _ASURA_EDITOR_WINDOW_H_
+#define _ASURA_EDITOR_WINDOW_H_
+
+#include <windows.h>
+#include <string.h>
+
+#include <asura-utils/Scripting/Portable.hpp>
+#include <asura-utils/Classes.h>
+
+#include "../Type.h"
+
+namespace_begin(AsuraEditor)
+
+///
+/// ༭ڵnative
+///
+class ContainerWindow : public AEScripting::Portable<ContainerWindow>
+{
+public:
+
+ enum WindowStyle
+ {
+ WINDOW_STYLE_BASIC, ///<
+ WINDOW_STYLE_TOOL, ///<
+ WINDOW_STYLE_CONFIRM, ///< ȷϴ
+ };
+
+ struct WindowConfig
+ {
+ std::string title; ///<
+ uint x, y; ///<
+ uint width, height; ///< С
+ WindowStyle style; ///<
+ };
+
+ ContainerWindow();
+ ~ContainerWindow();
+
+ bool Init(WindowConfig& config);
+
+private:
+
+ ContainerWindow* mParent;
+ WindowStyle mStyle;
+ HWND mHWND;
+ HDC mHDC;
+
+luaxport:
+
+ LUAX_DECL_FACTORY(ContainerWindow);
+
+ LUAX_DECL_ENUM(WindowStyle);
+
+ LUAX_DECL_METHOD(_New);
+ LUAX_DECL_METHOD(_Init);
+ LUAX_DECL_METHOD(_SetPosition);
+
+};
+
+namespace_end
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/System/FileWatcher.cpp b/source/Asura.Editor/System/FileWatcher.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/System/FileWatcher.cpp
diff --git a/source/Asura.Editor/system/file_watcher.h b/source/Asura.Editor/System/FileWatcher.h
index 43821da..43821da 100644
--- a/source/Asura.Editor/system/file_watcher.h
+++ b/source/Asura.Editor/System/FileWatcher.h
diff --git a/source/Asura.Editor/System/MenuController.cpp b/source/Asura.Editor/System/MenuController.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/source/Asura.Editor/System/MenuController.cpp
diff --git a/source/Asura.Editor/System/MenuController.h b/source/Asura.Editor/System/MenuController.h
new file mode 100644
index 0000000..591cbd9
--- /dev/null
+++ b/source/Asura.Editor/System/MenuController.h
@@ -0,0 +1,15 @@
+#ifndef _ASURA_EDITOR_MENU_CONTROLLER_H_
+#define _ASURA_EDITOR_MENU_CONTROLLER_H_
+
+#include <asura-utils/Classes.h>
+
+namespace_begin(AsuraEditor)
+
+struct MenuItem;
+
+
+
+
+namespace_end
+
+#endif
diff --git a/source/Asura.Editor/Type.h b/source/Asura.Editor/Type.h
new file mode 100644
index 0000000..f21b376
--- /dev/null
+++ b/source/Asura.Editor/Type.h
@@ -0,0 +1,30 @@
+#ifndef _ASURA_EDITOR_TYPE_H_
+#define _ASURA_EDITOR_TYPE_H_
+
+#include <cstdlib>
+#include <stdint.h>
+
+namespace AsuraEditor
+{
+
+ typedef int8_t int8;
+ typedef uint8_t uint8;
+ //typedef uint8 byte;
+ typedef char byte;
+ typedef int16_t int16;
+ typedef uint16_t uint16;
+ typedef int32_t int32;
+ typedef uint32_t uint32;
+ typedef int64_t int64;
+ typedef uint64_t uint64;
+
+ typedef uint32_t uint;
+ typedef int32_t sint;
+
+ typedef std::size_t size_t;
+
+ typedef const char cc8;
+
+}
+
+#endif \ No newline at end of file
diff --git a/source/Asura.Editor/controls/button.h b/source/Asura.Editor/controls/button.h
deleted file mode 100644
index edfa7b7..0000000
--- a/source/Asura.Editor/controls/button.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __ASURA_EDITOR_GUI_BUTTON_H__
-#define __ASURA_EDITOR_GUI_BUTTON_H__
-
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEditor)
-
-bool Button();
-
-
-
-namespace_end
-
-#endif
diff --git a/source/Asura.Editor/controls/content.h b/source/Asura.Editor/controls/content.h
deleted file mode 100644
index 230bfa9..0000000
--- a/source/Asura.Editor/controls/content.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef __ASURA_EDITOR_GUI_BUTTON_H__
-#define __ASURA_EDITOR_GUI_BUTTON_H__
-
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEditor)
-
-/// IMGUI content
-class Content
-{
-
-};
-
-
-namespace_end
-
-#endif
diff --git a/source/Asura.Editor/controls/label.h b/source/Asura.Editor/controls/label.h
deleted file mode 100644
index 7cc6e3d..0000000
--- a/source/Asura.Editor/controls/label.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __ASURA_EDITOR_GUI_BUTTON_H__
-#define __ASURA_EDITOR_GUI_BUTTON_H__
-
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEditor)
-
-bool Label();
-
-
-
-namespace_end
-
-#endif
diff --git a/source/Asura.Editor/controls/panel.cpp b/source/Asura.Editor/controls/panel.cpp
deleted file mode 100644
index 2e6e2cc..0000000
--- a/source/Asura.Editor/controls/panel.cpp
+++ /dev/null
@@ -1,16 +0,0 @@
-#include "gui_button.h"
-
-namespace_begin(AsuraEditor)
-
-class GUIWindow
-{
-public:
-
- GUIWindow();
- ~GUIWindow();
-
-};
-
-
-
-namespace_end
diff --git a/source/Asura.Editor/controls/panel.h b/source/Asura.Editor/controls/panel.h
deleted file mode 100644
index b485635..0000000
--- a/source/Asura.Editor/controls/panel.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#ifndef __ASURA_EDITOR_GUI_BUTTON_H__
-#define __ASURA_EDITOR_GUI_BUTTON_H__
-
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEditor)
-
-/// IMGUI panel
-class Panel
-{
-
-};
-
-namespace_end
-
-#endif
diff --git a/source/Asura.Editor/controls/toggle.h b/source/Asura.Editor/controls/toggle.h
deleted file mode 100644
index 19e9379..0000000
--- a/source/Asura.Editor/controls/toggle.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __ASURA_EDITOR_GUI_BUTTON_H__
-#define __ASURA_EDITOR_GUI_BUTTON_H__
-
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEditor)
-
-bool Toggle();
-
-
-
-namespace_end
-
-#endif
diff --git a/source/Asura.Editor/editor.h b/source/Asura.Editor/editor.h
index fbcfb62..2f5f8ca 100644
--- a/source/Asura.Editor/editor.h
+++ b/source/Asura.Editor/editor.h
@@ -1,7 +1,7 @@
-#ifndef __ASURA_EDITOR_H__
-#define __ASURA_EDITOR_H__
+#ifndef _ASURA_EDITOR_H_
+#define _ASURA_EDITOR_H_
-#include <asura-utils/scripting/portable.hpp>
+#include <asura-utils/Scripting/Portable.hpp>
namespace AsuraEditor
{
diff --git a/source/Asura.Editor/graphics/brush.h b/source/Asura.Editor/graphics/brush.h
index 5ffdba4..4290926 100644
--- a/source/Asura.Editor/graphics/brush.h
+++ b/source/Asura.Editor/graphics/brush.h
@@ -1,5 +1,5 @@
-#ifndef __ASURA_EDITOR_BRUSH_H__
-#define __ASURA_EDITOR_BRUSH_H__
+#ifndef _ASURA_EDITOR_BRUSH_H_
+#define _ASURA_EDITOR_BRUSH_H_
namespace AsuraEditor
{
diff --git a/source/Asura.Editor/graphics/draw_info.h b/source/Asura.Editor/graphics/draw_info.h
deleted file mode 100644
index 442b92d..0000000
--- a/source/Asura.Editor/graphics/draw_info.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __ASURA_EDITOR_DRAW_INFO_H__
-#define __ASURA_EDITOR_DRAW_INFO_H__
-
-namespace AsuraEditor
-{
- namespace Graphics
- {
-
-
-
- }
-}
-
-#endif \ No newline at end of file
diff --git a/source/Asura.Editor/graphics/drawer.cpp b/source/Asura.Editor/graphics/drawer.cpp
index f2fca31..6482aeb 100644
--- a/source/Asura.Editor/graphics/drawer.cpp
+++ b/source/Asura.Editor/graphics/drawer.cpp
@@ -1,4 +1,4 @@
-#include "drawer.h"
+#include "Drawer.h"
using namespace AEGraphics;
diff --git a/source/Asura.Editor/graphics/drawer.h b/source/Asura.Editor/graphics/drawer.h
index 85cc88a..638ce08 100644
--- a/source/Asura.Editor/graphics/drawer.h
+++ b/source/Asura.Editor/graphics/drawer.h
@@ -1,9 +1,9 @@
-#ifndef __ASURA_EDITOR_PAINTER_H__
-#define __ASURA_EDITOR_PAINTER_H__
+#ifndef _ASURA_EDITOR_PAINTER_H_
+#define _ASURA_EDITOR_PAINTER_H_
-#include <asura-utils/scripting/portable.hpp>
-#include <asura-utils/singleton.hpp>
-#include <asura-core/graphics/image.h>
+#include <asura-utils/Scripting/Portable.hpp>
+#include <asura-utils/Singleton.hpp>
+#include <asura-core/Graphics/Image.h>
namespace AsuraEditor
{
diff --git a/source/Asura.Editor/graphics/pen.h b/source/Asura.Editor/graphics/pen.h
index 87a031c..b949d14 100644
--- a/source/Asura.Editor/graphics/pen.h
+++ b/source/Asura.Editor/graphics/pen.h
@@ -1,20 +1,7 @@
-#ifndef __ASURA_EDITOR_PEN_H__
-#define __ASURA_EDITOR_PEN_H__
+#ifndef _ASURA_EDITOR_PEN_H_
+#define _ASURA_EDITOR_PEN_H_
-namespace AsuraEditor
-{
- namespace Graphics
- {
- ///
- /// ʣָƵʽ
- ///
- class Pen
- {
- };
-
- }
-}
#endif \ No newline at end of file
diff --git a/source/Asura.Editor/graphics/shader.h b/source/Asura.Editor/graphics/shader.h
index 6f5a8cc..a3abec1 100644
--- a/source/Asura.Editor/graphics/shader.h
+++ b/source/Asura.Editor/graphics/shader.h
@@ -1,5 +1,5 @@
-#ifndef __ASURA_EDITOR_SHADER_H__
-#define __ASURA_EDITOR_SHADER_H__
+#ifndef _ASURA_EDITOR_SHADER_H_
+#define _ASURA_EDITOR_SHADER_H_
namespace AsuraEditor
{
diff --git a/source/Asura.Editor/graphics/shaders/image.shader.h b/source/Asura.Editor/graphics/shaders/image.shader.h
index ee6be43..cbdd542 100644
--- a/source/Asura.Editor/graphics/shaders/image.shader.h
+++ b/source/Asura.Editor/graphics/shaders/image.shader.h
@@ -1,4 +1,4 @@
-#ifndef __ASURA_EDITOR_SHADER_H__
+#ifndef _ASURA_EDITOR_SHADER_H_
#include "../shader.h"
#endif
diff --git a/source/Asura.Editor/graphics/shaders/polygon.shader.h b/source/Asura.Editor/graphics/shaders/polygon.shader.h
index eed4f5a..a92e9a6 100644
--- a/source/Asura.Editor/graphics/shaders/polygon.shader.h
+++ b/source/Asura.Editor/graphics/shaders/polygon.shader.h
@@ -1,4 +1,4 @@
-#ifndef __ASURA_EDITOR_SHADER_H__
+#ifndef _ASURA_EDITOR_SHADER_H_
#include "../shader.h"
#endif
diff --git a/source/Asura.Editor/graphics/slider.h b/source/Asura.Editor/graphics/slider.h
deleted file mode 100644
index 28ea77f..0000000
--- a/source/Asura.Editor/graphics/slider.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __ASURA_EDITOR_GUI_SLIDER_H__
-#define __ASURA_EDITOR_GUI_SLIDER_H__
-
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEditor)
-
-void Slider();
-
-
-namespace_end
-
-
-#endif
diff --git a/source/Asura.Editor/graphics/style.h b/source/Asura.Editor/graphics/style.h
index fca3c37..b6ed2c5 100644
--- a/source/Asura.Editor/graphics/style.h
+++ b/source/Asura.Editor/graphics/style.h
@@ -1,11 +1,11 @@
-#ifndef __ASURA_EDITOR_GUI_STYLE_H__
-#define __ASURA_EDITOR_GUI_STYLE_H__
+#ifndef _ASURA_EDITOR_GUI_STYLE_H_
+#define _ASURA_EDITOR_GUI_STYLE_H_
-#include <asura-utils/classes.h>
+#include <asura-utils/Classes.h>
namespace_begin(AsuraEditor)
-class Style
+class GUIStyle
{
};
diff --git a/source/Asura.Editor/main.cpp b/source/Asura.Editor/main.cpp
index ed055cf..207474b 100644
--- a/source/Asura.Editor/main.cpp
+++ b/source/Asura.Editor/main.cpp
@@ -9,13 +9,13 @@
* including commercial applications, and to alter it and redistribute it
* freely, subject to the following restrictions:
*
- * 1. The origin of this software must not be misrepresented; you must not
+ * 1. The origin of this software m_ust not be m_isrepresented; you m_ust not
* claim that you wrote the original software. If you use this software
* in a product, an acknowledgment in the product documentation would be
* appreciated but is not required.
- * 2. Altered source versions must be plainly marked as such, and must not be
- * misrepresented as being the original software.
- * 3. This notice may not be removed or altered from any source distribution.
+ * 2. Altered source versions m_ust be plainly m_arked as such, and m_ust not be
+ * m_isrepresented as being the original software.
+ * 3. This notice m_ay not be removed or altered from any source distribution.
**/
///
diff --git a/source/Asura.Editor/system/editor_window.cpp b/source/Asura.Editor/system/editor_window.cpp
deleted file mode 100644
index 0e2d4f4..0000000
--- a/source/Asura.Editor/system/editor_window.cpp
+++ /dev/null
@@ -1,6 +0,0 @@
-#include "editor_window.h"
-
-namespace AsuraEditor
-{
-
-} // AsruaEditor \ No newline at end of file
diff --git a/source/Asura.Editor/system/editor_window.h b/source/Asura.Editor/system/editor_window.h
deleted file mode 100644
index 50c9cb3..0000000
--- a/source/Asura.Editor/system/editor_window.h
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef __ASURA_EDITOR_WINDOW_H__
-#define __ASURA_EDITOR_WINDOW_H__
-
-#include <windows.h>
-#include <string.h>
-
-#include <asura-utils/scripting/portable.hpp>
-
-#include "../type.h"
-
-namespace AsuraEditor
-{
-
- ///
- /// ༭ڵnative
- ///
- class ContainerWindow : public AEScripting::Portable<ContainerWindow>
- {
- public:
-
- enum WindowStyle
- {
- WINDOW_STYLE_BASIC, ///<
- WINDOW_STYLE_TOOL, ///<
- WINDOW_STYLE_CONFIRM, ///< ȷϴ
- };
-
- struct WindowConfig
- {
- std::string title; ///<
- uint x, y; ///<
- uint width, height; ///< С
- WindowStyle style; ///<
- };
-
- ContainerWindow();
- ~ContainerWindow();
-
- bool Init(WindowConfig& config);
-
- private:
-
- ContainerWindow* mParent;
- WindowStyle mStyle;
- HWND mHWND;
- HDC mHDC;
-
- luaxport:
-
- LUAX_DECL_FACTORY(ContainerWindow);
-
- LUAX_DECL_ENUM(WindowStyle);
-
- LUAX_DECL_METHOD(_New);
- LUAX_DECL_METHOD(_Init);
- LUAX_DECL_METHOD(_SetPosition);
-
- };
-
-} // AsuraEditor
-
-#endif \ No newline at end of file
diff --git a/source/Asura.Editor/type.h b/source/Asura.Editor/type.h
index d58cf87..f21b376 100644
--- a/source/Asura.Editor/type.h
+++ b/source/Asura.Editor/type.h
@@ -1,5 +1,5 @@
-#ifndef __ASURA_EDITOR_TYPE_H__
-#define __ASURA_EDITOR_TYPE_H__
+#ifndef _ASURA_EDITOR_TYPE_H_
+#define _ASURA_EDITOR_TYPE_H_
#include <cstdlib>
#include <stdint.h>