signal ui is next!

This commit is contained in:
Sebastian
2024-11-07 00:01:54 +01:00
parent e519b7c758
commit 96a19d55ef
7 changed files with 18 additions and 15 deletions
+4 -4
View File
@@ -232,10 +232,10 @@ int main(){
if(x < corner_tl.x && y < corner_tl.y) node_tl = n;
if(x > corner_br.x && y > corner_br.y) node_br = n;
if(x < corner_tl.x) corner_tl.x = x;
if(x > corner_br.x) corner_br.x = x;
if(y < corner_tl.y) corner_tl.y = y;
if(y > corner_br.y) corner_br.y = y;
if(x <= corner_tl.x) corner_tl.x = x;
if(x >= corner_br.x) corner_br.x = x;
if(y <= corner_tl.y) corner_tl.y = y;
if(y >= corner_br.y) corner_br.y = y;
}
corner_tl -= Vec2Df(offset, offset);
corner_br += Vec2Df(offset, offset);
+1 -1
View File
@@ -45,7 +45,7 @@ namespace VISEQ::GRAPH::NODES {
int midi_note_channel = 1;
int midi_note = 48;
int midi_velocity = 60;
int midi_gate = 25; // gate time in milliseconds
int midi_gate = 10; // gate time in milliseconds
int midi_cc_channel = 0;
int midi_cc = 0;
+1 -1
View File
@@ -12,7 +12,7 @@ namespace VISEQ::BASE {
Movable(Vec2Df p, Vec2Df d, float s) : speed(s), position(p), direction(d) {}
Movable(Vec2Df p, float s) : speed(s), position(p) {}
float speed = 1.0f;
float speed = 960.0f;
Vec2Df position;
Vec2Df direction;
+2 -2
View File
@@ -17,8 +17,8 @@ namespace VISEQ::GRAPH::NODES {
public:
Node() {}
Node(float x, float y) : Movable(Vec2Df(x, y), 0.0f) {}
Node(Vec2Df p) : Movable(p, 0.0f) {}
Node(float x, float y) : Movable(Vec2Df(x, y), 960.0f) {}
Node(Vec2Df p) : Movable(p, 960.0f) {}
NodeType nodeType;
+2
View File
@@ -30,6 +30,8 @@ namespace VISEQ::SIGNAL {
Color color;
bool ui_edit_speed = false;
int midi_note_offset = 0;
int midi_cc_offset = 0;
+3 -5
View File
@@ -49,11 +49,9 @@ namespace VISEQ::APP {
void copyNodesAndConnections(VEC_SPTR_Node nodes, Vec2Df position){
VEC_SPTR_Edge copy_connections;
for(auto n : nodes){
for(auto c : n->connections){
if(std::ranges::contains(nodes, c->start) && std::ranges::contains(nodes, c->end)) {
copy_connections.push_back(std::make_shared<Edge>(*c));
}
for(auto c : gm.edges){
if(std::ranges::contains(nodes, c->start) && std::ranges::contains(nodes, c->end)) {
copy_connections.push_back(std::make_shared<Edge>(*c));
}
}
std::cout << copy_connections.size() << std::endl;
+5 -2
View File
@@ -77,10 +77,13 @@ namespace VISEQ::APP::UI{
for(auto &s : sm->signals){
if(GuiButton((Rectangle){20,(float)s_signal+70 + signal_configs*20, 20, 20},"X")) sm->removeSignal(s);
DrawCircle(55, s_signal+80 + signal_configs*20, 6.0F, s->color);
float s_speed = round(s->speed);
int s_speed = round(s->speed);
s->multiplier = settings->bpm / 120.0f;
float signal_bpm = round(settings->bpm * s->multiplier * (s->speed / settings->speed));
GuiSlider((Rectangle){70, (float)s_signal+70 + signal_configs*20, 120, 20}, "", "", &s_speed, 1.0f, 16.0f * settings->grid * 4);
if(GuiSpinner((Rectangle){70, (float)s_signal+70 + signal_configs*20, 100, 20}, "", &s_speed, 1, 16 * settings->grid * 4, s->ui_edit_speed)) s->ui_edit_speed = !s->ui_edit_speed;
if(GuiButton((Rectangle){200,(float)s_signal+70 + signal_configs*20, 30, 20}, "1/2")) s_speed = settings->speed / 2;
//if(GuiButton((Rectangle){200,(float)s_signal+70 + signal_configs*20, 30, 20},"1/4")) s_speed = settings->speed / 4;
GuiLabel((Rectangle){195, (float)s_signal+70 + signal_configs*20, 30, 20}, std::format("{}",signal_bpm).c_str());
GuiToggle((Rectangle){240, (float)s_signal+70 + signal_configs*20, 20, 20},"P", &s->run);
s->speed = s_speed;