From f6400880b00c058717eae6df45a9e1f895fd8654 Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Fri, 10 Apr 2020 17:13:21 +0200 Subject: [PATCH] Scroll bar decorations for asm lines. --- server/TracySourceView.cpp | 51 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/server/TracySourceView.cpp b/server/TracySourceView.cpp index af7bf24f..8f4ad2a7 100644 --- a/server/TracySourceView.cpp +++ b/server/TracySourceView.cpp @@ -860,6 +860,57 @@ uint64_t SourceView::RenderSymbolAsmView( uint32_t iptotal, unordered_flat_mapScrollbarY ) + { + auto draw = ImGui::GetWindowDrawList(); + auto rect = ImGui::GetWindowScrollbarRect( win, ImGuiAxis_Y ); + ImGui::PushClipRect( rect.Min, rect.Max, false ); + std::vector lineOff; + lineOff.reserve( std::max( m_selectedAddresses.size(), m_selectedAddressesHover.size() ) ); + if( !m_selectedAddresses.empty() ) + { + for( size_t i=0; i lastLine ) + { + lastLine = ly; + draw->AddLine( ImVec2( rect.Min.x, ly ), ImVec2( rect.Max.x, ly ), 0x8899994C, 1 ); + } + } + } + if( !m_selectedAddressesHover.empty() ) + { + lineOff.clear(); + for( size_t i=0; i lastLine ) + { + lastLine = ly; + draw->AddLine( ImVec2( rect.Min.x, ly ), ImVec2( rect.Max.x, ly ), 0x88888888, 1 ); + } + } + } + } + if( m_font ) ImGui::PopFont(); ImGui::EndChild();