From 9dbc56beb6f41b15493ac0e0dbf67489451089e5 Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Fri, 17 Aug 2018 14:44:41 +0200 Subject: [PATCH] Initialize text editor. --- profiler/build/win32/Tracy.vcxproj | 2 ++ profiler/build/win32/Tracy.vcxproj.filters | 9 +++++++++ server/TracyView.cpp | 13 +++++++++++++ server/TracyView.hpp | 6 ++++++ 4 files changed, 30 insertions(+) diff --git a/profiler/build/win32/Tracy.vcxproj b/profiler/build/win32/Tracy.vcxproj index afaa4fa6..97544d08 100644 --- a/profiler/build/win32/Tracy.vcxproj +++ b/profiler/build/win32/Tracy.vcxproj @@ -96,6 +96,7 @@ + @@ -120,6 +121,7 @@ + diff --git a/profiler/build/win32/Tracy.vcxproj.filters b/profiler/build/win32/Tracy.vcxproj.filters index ffc20338..a8e2df90 100644 --- a/profiler/build/win32/Tracy.vcxproj.filters +++ b/profiler/build/win32/Tracy.vcxproj.filters @@ -19,6 +19,9 @@ {46eb6aa0-de1c-447a-a6dd-aee2a06f85ef} + + {96740ecd-86b9-452d-991c-8743dde61551} + @@ -66,6 +69,9 @@ server + + imguicolortextedit + @@ -197,6 +203,9 @@ server + + imguicolortextedit + diff --git a/server/TracyView.cpp b/server/TracyView.cpp index 6b3d0054..7457d56e 100644 --- a/server/TracyView.cpp +++ b/server/TracyView.cpp @@ -19,6 +19,8 @@ #include "TracyPopcnt.hpp" #include "TracyView.hpp" +#include "../imguicolortextedit/TextEditor.h" + #ifdef TRACY_FILESELECTOR # include "../nfd/nfd.h" #endif @@ -333,6 +335,8 @@ View::View( const char* addr ) ImGuiStyle& style = ImGui::GetStyle(); style.FrameRounding = 2.f; + + InitTextEditor(); } View::View( FileRead& f ) @@ -373,6 +377,8 @@ View::View( FileRead& f ) { assert( s_instance == nullptr ); s_instance = this; + + InitTextEditor(); } View::~View() @@ -385,6 +391,13 @@ View::~View() s_instance = nullptr; } +void View::InitTextEditor() +{ + m_textEditor = std::make_unique(); + m_textEditor->SetReadOnly( true ); + m_textEditor->SetLanguageDefinition( TextEditor::LanguageDefinition::CPlusPlus() ); +} + const char* View::ShortenNamespace( const char* name ) const { if( m_namespace == Namespace::Full ) return name; diff --git a/server/TracyView.hpp b/server/TracyView.hpp index 8074366c..d1829056 100644 --- a/server/TracyView.hpp +++ b/server/TracyView.hpp @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include @@ -20,6 +21,7 @@ namespace tracy struct QueueItem; class FileRead; +class TextEditor; class View { @@ -55,6 +57,8 @@ private: Short }; + void InitTextEditor(); + const char* ShortenNamespace( const char* name ) const; void DrawHelpMarker( const char* desc ) const; @@ -229,6 +233,8 @@ private: Vector m_zoneInfoStack; Vector m_gpuInfoStack; + std::unique_ptr m_textEditor; + struct FindZone { enum : uint64_t { Unselected = std::numeric_limits::max() - 1 }; enum class GroupBy : int { Thread, UserText, Callstack };