Forráskód Böngészése

working at editor

vlod 3 éve
szülő
commit
819404b866

+ 70 - 0
Pika/core/pikaEditor/editor/editor.cpp

@@ -0,0 +1,70 @@
+#include "editor.h"
+
+void pika::Editor::init()
+{
+}
+
+void pika::Editor::update()
+{
+	ImGuiWindowFlags mainWindowFlags = ImGuiWindowFlags_MenuBar;
+	if (optionsFlags.dockMainWindow)
+	{
+		mainWindowFlags = ImGuiWindowFlags_MenuBar |
+			ImGuiWindowFlags_NoResize |
+			ImGuiWindowFlags_NoMove |
+			ImGuiWindowFlags_NoCollapse |
+			ImGuiWindowFlags_NoBringToFrontOnFocus |
+			ImGuiWindowFlags_NoTitleBar;
+
+		ImVec2 vWindowSize = ImGui::GetMainViewport()->Size;
+		ImVec2 vPos0 = ImGui::GetMainViewport()->Pos;
+		ImGui::SetNextWindowPos(ImVec2((float)vPos0.x, (float)vPos0.y), ImGuiCond_Always);
+		ImGui::SetNextWindowSize(ImVec2((float)vWindowSize.x, (float)vWindowSize.y), 0);
+	}
+
+	//todo imgui push pop id for main window
+	if (ImGui::Begin(
+		"Main window",
+		/*p_open=*/nullptr,
+		mainWindowFlags
+		)
+		)
+	{
+
+		if (optionsFlags.dockMainWindow)
+		{
+			static const ImGuiDockNodeFlags dockspaceFlags = ImGuiDockNodeFlags_None;
+			ImGuiID dockSpace = ImGui::GetID("MainWindowDockspace");
+			ImGui::DockSpace(dockSpace, ImVec2(0.0f, 0.0f), dockspaceFlags);
+		}
+
+
+		if (ImGui::BeginMenuBar())
+		{
+
+			if (ImGui::BeginMenu("Open..."))
+			{
+
+				ImGui::Text("menu text");
+
+				ImGui::EndMenu();
+			}
+
+			if (ImGui::BeginMenu("Options"))
+			{
+
+				ImGui::Checkbox("Dock main window", &optionsFlags.dockMainWindow);
+
+				ImGui::EndMenu();
+			}
+
+
+			ImGui::EndMenuBar();
+		}
+
+	}
+	ImGui::End();
+
+
+
+}

+ 26 - 0
Pika/core/pikaEditor/editor/editor.h

@@ -0,0 +1,26 @@
+#pragma once
+
+#include <pikaImgui/pikaImgui.h>
+
+
+namespace pika
+{
+
+	struct Editor
+	{
+
+		void init();
+
+		void update();
+
+		struct
+		{
+			bool dockMainWindow = 1;
+		}optionsFlags;
+
+
+	};
+
+
+
+}

+ 0 - 0
Pika/core/pikaEditor/logWindow.cpp → Pika/core/pikaEditor/logs/logWindow.cpp


+ 0 - 0
Pika/core/pikaEditor/logWindow.h → Pika/core/pikaEditor/logs/logWindow.h


+ 11 - 15
Pika/core/pikaRuntime/pikaMain.cpp

@@ -14,7 +14,9 @@
 #include <runtimeContainer/runtimeContainer.h>
 
 #include <logs/log.h>
-#include <logWindow.h>
+#include <logs/logWindow.h>
+
+#include <editor/editor.h>
 
 int main()
 {
@@ -55,6 +57,13 @@ int main()
 	dllLoader.getContainersInfo_(loadedContainers);
 #pragma endregion
 
+#pragma region editor
+	pika::Editor editor;
+	editor.init();
+#pragma endregion
+
+
+
 	logs.log("test");
 
 	RuntimeContainer container;
@@ -83,20 +92,7 @@ int main()
 
 	#pragma region editor stuff
 
-		//if (ImGui::BeginMenuBar())
-		//{
-		//
-		//	if (ImGui::BeginMenu("Open..."))
-		//	{
-		//
-		//		ImGui::Text("menu text");
-		//
-		//		ImGui::EndMenu();
-		//	}
-		//
-		//
-		//	ImGui::EndMenuBar();
-		//}
+		editor.update();
 
 		logWindow.update(logs);