TazGraph Project v0.1.0
Loading...
Searching...
No Matches
GraphTopBar.h
1#pragma once
2
3#include "../../../UIElement.h"
4
6 IScene* scene;
7};
8
9class GraphTopBar : public UIElement
10{
11private:
12 bool interpolation_running = false;
13
14 double interpolation = 0.0f;
15 double interpolation_speed = 0.01f;
16
17 bool autoInterpolate = false;
18
19 std::string currentActive;
20
21 GraphTopConfig config;
22 std::string tabToClose = "";
23
24 bool inited = false;
25
26 int activeTabs_no = 0;
27
28public:
29 void update(float deltaTime) override;
30 void setConfig(const GraphTopConfig& cfg) {
31 config = cfg;
32 if (!inited) {
33 auto stepIt = cfg.scene->manager->steps.begin();
34 std::advance(stepIt, config.scene->getApp()->initialStep);
35
36 interpolation =
37 config.scene->getApp()->initialTimestamp ? config.scene->getApp()->initialTimestamp :
38
39 (config.scene->getApp()->initialStep ? stepIt->timestamp :
40
41 (cfg.scene->manager->steps.empty() ?
42 0.0f : cfg.scene->manager->steps.begin()->timestamp));
43 inited = true;
44 }
45 }
46 void OnImGuiRender() override;
47 std::string getTabToClose();
48};
Definition GraphTopBar.h:10
Definition IScene.h:25
Definition UIElement.h:16
Definition GraphTopBar.h:5