projects
/
goodguy
/
cinelerra.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix Sample ref constructor for segv in resamplert
[goodguy/cinelerra.git]
/
cinelerra-5.1
/
cinelerra
/
patchbay.C
diff --git
a/cinelerra-5.1/cinelerra/patchbay.C
b/cinelerra-5.1/cinelerra/patchbay.C
index 3292eeb5543911fe576d85f51b266b77d4de1e75..381e1c0f4d925ce329b171c6c2d23ada7bd9c494 100644
(file)
--- a/
cinelerra-5.1/cinelerra/patchbay.C
+++ b/
cinelerra-5.1/cinelerra/patchbay.C
@@
-283,6
+283,7
@@
int PatchBay::cursor_motion_event()
track;
track = track->next)
{
track;
track = track->next)
{
+ if( track->is_hidden() ) continue;
int y = track->y_pixel - mwindow->edl->local_session->track_start[pane->number];
int h = track->vertical_span(mwindow->theme);
if(cursor_y >= y && cursor_y < y + h)
int y = track->y_pixel - mwindow->edl->local_session->track_start[pane->number];
int h = track->vertical_span(mwindow->theme);
if(cursor_y >= y && cursor_y < y + h)
@@
-301,16
+302,16
@@
int PatchBay::cursor_motion_event()
}
break;
case Tracks::RECORD:
}
break;
case Tracks::RECORD:
- if(track->
recor
d != new_status)
+ if(track->
arme
d != new_status)
{
{
- track->
recor
d = new_status;
+ track->
arme
d = new_status;
update_gui = 1;
}
break;
case Tracks::GANG:
update_gui = 1;
}
break;
case Tracks::GANG:
- if(track->gang != new_status)
+ if(track->gang
ed
!= new_status)
{
{
- track->gang = new_status;
+ track->gang
ed
= new_status;
update_gui = 1;
}
break;
update_gui = 1;
}
break;
@@
-451,10
+452,9
@@
int PatchBay::update()
// Every patch has a GUI regardless of whether or not it is visible.
// Make sure GUI's are allocated for every patch and deleted for non-existant
// patches.
// Every patch has a GUI regardless of whether or not it is visible.
// Make sure GUI's are allocated for every patch and deleted for non-existant
// patches.
- for(Track *current = mwindow->edl->tracks->first;
- current;
- current = NEXT, patch_count++)
+ for(Track *current = mwindow->edl->tracks->first; current; current = NEXT)
{
{
+ if( current->is_hidden() ) continue;
PatchGUI *patchgui = 0;
int y = current->y_pixel;
y -= mwindow->edl->local_session->track_start[pane->number];
PatchGUI *patchgui = 0;
int y = current->y_pixel;
y -= mwindow->edl->local_session->track_start[pane->number];
@@
-502,6
+502,7
@@
int PatchBay::update()
patches.append(patchgui);
patchgui->create_objects();
}
patches.append(patchgui);
patchgui->create_objects();
}
+ ++patch_count;
}
while(patches.total > patch_count)
}
while(patches.total > patch_count)
@@
-521,8
+522,8
@@
void PatchBay::synchronize_faders(float change, int data_type, Track *skip)
current = NEXT)
{
if(current->data_type == data_type &&
current = NEXT)
{
if(current->data_type == data_type &&
- current->
gang
&&
- current->
record
&&
+ current->
armed_gang(skip)
&&
+ current->
is_armed()
&&
current != skip)
{
FloatAutos *fade_autos = (FloatAutos*)current->automation->autos[AUTOMATION_FADE];
current != skip)
{
FloatAutos *fade_autos = (FloatAutos*)current->automation->autos[AUTOMATION_FADE];
@@
-551,15
+552,11
@@
void PatchBay::synchronize_faders(float change, int data_type, Track *skip)
void PatchBay::synchronize_nudge(int64_t value, Track *skip)
{
void PatchBay::synchronize_nudge(int64_t value, Track *skip)
{
- for(Track *current = mwindow->edl->tracks->first;
- current;
- current = NEXT)
- {
- if(current->data_type == skip->data_type &&
- current->gang &&
- current->record &&
- current != skip)
- {
+ Track *current = mwindow->edl->tracks->first;
+ for( ; current; current = NEXT ) {
+ if( current->data_type == skip->data_type &&
+ current->armed_gang(skip) && current->is_armed() &&
+ current != skip ) {
current->nudge = value;
PatchGUI *patch = get_patch_of(current);
if(patch) patch->update(patch->x, patch->y);
current->nudge = value;
PatchGUI *patch = get_patch_of(current);
if(patch) patch->update(patch->x, patch->y);