Files
vimix/MixingView.h
Bruno Herbelin c8f8fcf9d3 BugFix: prevent View Terminate if not previously Initiated
Ensures Action::Manager stores terminated actions only if previously initiated (caused iterative action storing on keyboard repeat).
2022-04-20 16:43:42 +02:00

50 lines
1.1 KiB
C++

#ifndef MIXINGVIEW_H
#define MIXINGVIEW_H
#include "View.h"
//class MixingGroup;
class MixingView : public View
{
public:
MixingView();
// non assignable class
MixingView(MixingView const&) = delete;
MixingView& operator=(MixingView const&) = delete;
void draw () override;
void update (float dt) override;
void resize (int) override;
int size () override;
void centerSource(Source *) override;
std::pair<Node *, glm::vec2> pick(glm::vec2) override;
Cursor grab (Source *s, glm::vec2 from, glm::vec2 to, std::pair<Node *, glm::vec2>) override;
void terminate(bool force) override;
Cursor over (glm::vec2) override;
void arrow (glm::vec2) override;
void setAlpha (Source *s);
private:
void updateSelectionOverlay() override;
float limbo_scale_;
Group *slider_root_;
Disk *slider_;
Disk *button_white_;
Disk *button_black_;
// Disk *stashCircle_;
Mesh *mixingCircle_;
Mesh *circle_;
Mesh *limbo_;
Group *limbo_slider_root_;
Mesh *limbo_up_, *limbo_down_;
Disk *limbo_slider_;
};
#endif // MIXINGVIEW_H