Move adding annotations to a separate function.

This commit is contained in:
Bartosz Taudul 2022-03-15 17:25:28 +01:00
parent 42688c9bf3
commit f17a579753
No known key found for this signature in database
GPG Key ID: B7FE2008B7575DF3
2 changed files with 15 additions and 8 deletions

View File

@ -346,6 +346,18 @@ void View::DrawHelpMarker( const char* desc ) const
}
}
void View::AddAnnotation( int64_t start, int64_t end )
{
auto ann = std::make_unique<Annotation>();
ann->range.active = true;
ann->range.min = start;
ann->range.max = end;
ann->color = 0x888888;
m_selectedAnnotation = ann.get();
m_annotations.emplace_back( std::move( ann ) );
pdqsort_branchless( m_annotations.begin(), m_annotations.end(), []( const auto& lhs, const auto& rhs ) { return lhs->range.min < rhs->range.min; } );
}
static const char* CompressionName[] = {
"LZ4",
"LZ4 HC",
@ -1163,14 +1175,7 @@ bool View::DrawImpl()
ImGui::Separator();
if( ImGui::Selectable( ICON_FA_STICKY_NOTE " Add annotation" ) )
{
auto ann = std::make_unique<Annotation>();
ann->range.active = true;
ann->range.min = s;
ann->range.max = e;
ann->color = 0x888888;
m_selectedAnnotation = ann.get();
m_annotations.emplace_back( std::move( ann ) );
pdqsort_branchless( m_annotations.begin(), m_annotations.end(), []( const auto& lhs, const auto& rhs ) { return lhs->range.min < rhs->range.min; } );
AddAnnotation( s, e );
}
ImGui::EndPopup();
}

View File

@ -253,6 +253,8 @@ private:
void HandleRange( Range& range, int64_t timespan, const ImVec2& wpos, float w );
void HandleZoneViewMouse( int64_t timespan, const ImVec2& wpos, float w, double& pxns );
void AddAnnotation( int64_t start, int64_t end );
uint32_t GetThreadColor( uint64_t thread, int depth );
uint32_t GetSrcLocColor( const SourceLocation& srcloc, int depth );
uint32_t GetRawSrcLocColor( const SourceLocation& srcloc, int depth );