Numerous bug fixes, including strides
This commit is contained in:
27
ui/frame.cpp
27
ui/frame.cpp
@@ -99,10 +99,9 @@ static void ShapeGrNode(GrNode *gn) {
|
||||
gn->sources = {{"Audio", GrNode::Port::Type::SAMPLE}};
|
||||
|
||||
int numSinks = gn->logical->sinkCount;
|
||||
while(numSinks > 0 && gn->logical->sinks[numSinks - 1].type == CUTIHI_VAL_NONE) {
|
||||
numSinks--;
|
||||
if(gn->logical->sinks[numSinks - 1].type == CUTIHI_VAL_NONE) {
|
||||
numSinks++;
|
||||
}
|
||||
numSinks++;
|
||||
|
||||
gn->sinks.clear();
|
||||
for(int s = 0; s < numSinks; s++) {
|
||||
@@ -640,7 +639,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(dlg.ShowModal() == wxID_OK) {
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_VEC4;
|
||||
newv.data.vec4[0] = dlg.GetColourData().GetColour().Red() / 255.f;
|
||||
newv.data.vec4[1] = dlg.GetColourData().GetColour().Green() / 255.f;
|
||||
@@ -656,7 +655,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(dlg.ShowModal() == wxID_OK) {
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_TEXT;
|
||||
newv.data.text = strdup(dlg.GetPath().utf8_str());
|
||||
CHi_ConfigureSink(this->logical, p, newv);
|
||||
@@ -669,7 +668,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(dlg.ShowModal() == wxID_OK) {
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_TEXT;
|
||||
newv.data.text = strdup(dlg.GetPath().utf8_str());
|
||||
CHi_ConfigureSink(this->logical, p, newv);
|
||||
@@ -717,7 +716,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
ctrl->Bind(wxEVT_KILL_FOCUS, [=](wxFocusEvent &ev){
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_TEXT;
|
||||
char *c = (char*) malloc(ctrl->GetValue().Len() + 1);
|
||||
memcpy(c, ctrl->GetValue().c_str(), ctrl->GetValue().Len() + 1);
|
||||
@@ -732,7 +731,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(ev.GetKeyCode() == WXK_RETURN) {
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_TEXT;
|
||||
char *c = (char*) malloc(ctrl->GetValue().Len() + 1);
|
||||
memcpy(c, ctrl->GetValue().c_str(), ctrl->GetValue().Len() + 1);
|
||||
@@ -756,7 +755,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(dlg.ShowModal() == wxID_OK) {
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_TEXT;
|
||||
newv.data.text = strdup(CHi_Microphone_GetSourceName((size_t) (uintptr_t) dlg.GetSelectionData()));
|
||||
CHi_ConfigureSink(this->logical, p, newv);
|
||||
@@ -779,7 +778,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(dlg.ShowModal() == wxID_OK) {
|
||||
pthread_mutex_lock(&this->logical->ng->mut);
|
||||
|
||||
CHiValue newv;
|
||||
CHiValue newv = {};
|
||||
newv.type = CUTIHI_VAL_TEXT;
|
||||
newv.data.text = strdup(choicesOrig[dlg.GetSelection()]);
|
||||
CHi_ConfigureSink(this->logical, p, newv);
|
||||
@@ -822,7 +821,7 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
if(!isSource) {
|
||||
pthread_mutex_lock(&daNode->ng->mut);
|
||||
|
||||
CHiValue val;
|
||||
CHiValue val = {};
|
||||
val.type = CUTIHI_VAL_NONE;
|
||||
CHi_ConfigureSink(daNode, daPortIdx, val);
|
||||
|
||||
@@ -831,6 +830,10 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80})
|
||||
|
||||
parent->Dirtify(this);
|
||||
parent->Refresh();
|
||||
} else {
|
||||
auto ng = (NodeGraph*) GetParent();
|
||||
|
||||
ng->DestroyNode(this);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -868,7 +871,7 @@ ImageViewer::ImageViewer(Frame *f) : wxPanel(f, wxID_ANY) {
|
||||
Bind(wxEVT_PAINT, [this](wxPaintEvent &ev){
|
||||
if(bm.IsOk()) {
|
||||
wxPaintDC dc(this);
|
||||
dc.DrawBitmap(bm, pos);
|
||||
dc.DrawBitmap(bm, pos + (GetSize() - bm.GetSize()) / 2);
|
||||
}
|
||||
});
|
||||
Bind(wxEVT_MIDDLE_DOWN, [this](wxMouseEvent &ev){
|
||||
|
||||
Reference in New Issue
Block a user