mirror of
https://github.com/brunoherbelin/vimix.git
synced 2025-12-11 18:34:58 +01:00
Mixing view handles to grab and scale limbo area. Saving of user defined limit in Session (and snapshot). Testing for source activation outside of update during session update loop.
50 lines
1.1 KiB
C++
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() 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
|