mixer
[goodguy/history.git] / cinelerra-5.1 / cinelerra / mwindowgui.C
index c21f83479be36845d1cf24900320a11401b41c7c..8825e25d7e680b4167f85f064642273518710c39 100644 (file)
@@ -320,12 +320,8 @@ void MWindowGUI::create_objects()
 
        if(debug) printf("MWindowGUI::create_objects %d\n", __LINE__);
        add_subwindow(mainclock = new MainClock(mwindow,
-               mwindow->theme->mclock_x,
-               mwindow->theme->mclock_y,
+               mwindow->theme->mclock_x, mwindow->theme->mclock_y,
                mwindow->theme->mclock_w));
-       mainclock->set_position_offset( (double)
-               (mwindow->edl->session->get_frame_offset() /
-                       mwindow->edl->session->frame_rate));
        if(debug) printf("MWindowGUI::create_objects %d\n", __LINE__);
        mainclock->update(0);
 
@@ -920,16 +916,19 @@ int MWindowGUI::visible(int64_t x1, int64_t x2, int64_t view_x1, int64_t view_x2
 
 void MWindowGUI::show_message(const char *message, int color)
 {
-       statusbar->set_message(message, color);
+       statusbar->show_message(message, color);
 }
-void MWindowGUI::set_default_message(const char *message)
+
+void MWindowGUI::update_default_message()
 {
-       statusbar->set_default_message(message);
+       statusbar->update_default_message();
 }
+
 void MWindowGUI::reset_default_message()
 {
        statusbar->reset_default_message();
 }
+
 void MWindowGUI::default_message()
 {
        statusbar->default_message();
@@ -2237,6 +2236,23 @@ void MWindowGUI::draw_trackmovement()
 }
 
 
+void MWindowGUI::update_mixers(Track *track, int v)
+{
+       for( int i=0; i<TOTAL_PANES;  ++i ) {
+               if( !pane[i] ) continue;
+               PatchBay *patchbay = pane[i]->patchbay;
+               if( !patchbay ) continue;
+               for( int j=0; j<patchbay->patches.total; ++j ) {
+                       PatchGUI *patchgui = patchbay->patches.values[j];
+                       if( !patchgui->mix ) continue;
+                       if( !track || patchgui->track == track ) {
+                               patchgui->mix->update(v>=0 ? v :
+                                       mwindow->mixer_track_active(patchgui->track));
+                       }
+               }
+       }
+}
+
 PaneButton::PaneButton(MWindow *mwindow, int x, int y)
  : BC_Button(x, y, mwindow->theme->get_image_set("pane"))
 {