mirror of
https://github.com/wolfpld/tracy
synced 2025-04-29 04:23:51 +00:00
Store common constants in context variable.
This commit is contained in:
parent
66d8dab925
commit
b6b6e1edcf
@ -1,7 +1,6 @@
|
||||
#include <algorithm>
|
||||
|
||||
#include "imgui.h"
|
||||
|
||||
#include "TracyImGui.hpp"
|
||||
#include "TracyTimelineController.hpp"
|
||||
|
||||
namespace tracy
|
||||
@ -107,11 +106,19 @@ void TimelineController::End( double pxns, const ImVec2& wpos, bool hover, bool
|
||||
UpdateCenterItem();
|
||||
}
|
||||
|
||||
TimelineContext ctx;
|
||||
ctx.w = ImGui::GetContentRegionAvail().x - 1;
|
||||
ctx.ty = ImGui::GetTextLineHeight();
|
||||
ctx.scale = GetScale();
|
||||
ctx.pxns = pxns;
|
||||
ctx.nspx = 1.0 / pxns;
|
||||
ctx.wpos = wpos;
|
||||
|
||||
for( auto& item : m_items )
|
||||
{
|
||||
if( item->WantPreprocess() && item->IsVisible() )
|
||||
{
|
||||
item->Preprocess();
|
||||
item->Preprocess( ctx );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -12,6 +12,13 @@ namespace tracy
|
||||
class View;
|
||||
class Worker;
|
||||
|
||||
struct TimelineContext
|
||||
{
|
||||
float w, ty, scale;
|
||||
double pxns, nspx;
|
||||
ImVec2 wpos;
|
||||
};
|
||||
|
||||
class TimelineItem
|
||||
{
|
||||
public:
|
||||
@ -22,7 +29,7 @@ public:
|
||||
void Draw( bool firstFrame, double pxns, int yOffset, const ImVec2& wpos, bool hover, float yMin, float yMax );
|
||||
|
||||
bool WantPreprocess() const { return m_wantPreprocess; }
|
||||
virtual void Preprocess() { assert( false ); }
|
||||
virtual void Preprocess( const TimelineContext& ctx ) { assert( false ); }
|
||||
|
||||
void VisibilityCheckbox();
|
||||
virtual void SetVisible( bool visible ) { m_visible = visible; }
|
||||
|
Loading…
x
Reference in New Issue
Block a user