-void RecMonitor::slotVideoDeviceChanged(int ix) {
- switch (ix) {
- case SCREENGRAB:
- m_discAction->setEnabled(false);
- m_rewAction->setEnabled(false);
- m_fwdAction->setEnabled(false);
- m_recAction->setEnabled(true);
- m_stopAction->setEnabled(false);
- m_playAction->setEnabled(false);
- break;
- case VIDEO4LINUX:
- m_discAction->setEnabled(false);
- m_rewAction->setEnabled(false);
- m_fwdAction->setEnabled(false);
- m_recAction->setEnabled(true);
- m_stopAction->setEnabled(false);
- m_playAction->setEnabled(true);
- break;
- default: // FIREWIRE
- m_discAction->setEnabled(true);
- m_recAction->setEnabled(false);
- m_stopAction->setEnabled(false);
- m_playAction->setEnabled(false);
- m_rewAction->setEnabled(false);
- m_fwdAction->setEnabled(false);
- break;
+void RecMonitor::slotConfigure()
+{
+ emit showConfigDialog(4, m_ui.device_selector->currentIndex());
+}
+
+void RecMonitor::slotUpdateCaptureFolder()
+{
+ if (m_captureProcess) m_captureProcess->setWorkingDirectory(KdenliveSettings::capturefolder());
+ slotVideoDeviceChanged(m_ui.device_selector->currentIndex());
+}
+
+void RecMonitor::slotVideoDeviceChanged(int ix)
+{
+ switch (ix) {
+ case SCREENGRAB:
+ m_discAction->setEnabled(false);
+ m_rewAction->setEnabled(false);
+ m_fwdAction->setEnabled(false);
+ m_recAction->setEnabled(true);
+ m_stopAction->setEnabled(false);
+ m_playAction->setEnabled(false);
+ if (KdenliveSettings::rmd_path().isEmpty()) {
+ QString rmdpath = KStandardDirs::findExe("recordmydesktop");
+ if (rmdpath.isEmpty()) m_ui.video_frame->setPixmap(mergeSideBySide(KIcon("dialog-warning").pixmap(QSize(50, 50)), i18n("Recordmydesktop utility not found,\n please install it for screen grabs")));
+ else KdenliveSettings::setRmd_path(rmdpath);
+ }
+ if (!KdenliveSettings::rmd_path().isEmpty()) m_ui.video_frame->setPixmap(mergeSideBySide(KIcon("video-display").pixmap(QSize(50, 50)), i18n("Press record button\nto start screen capture\nFiles will be saved in:\n%1", KdenliveSettings::capturefolder())));
+ //m_ui.video_frame->setText(i18n("Press record button\nto start screen capture"));
+ break;
+ case VIDEO4LINUX:
+ m_discAction->setEnabled(false);
+ m_rewAction->setEnabled(false);
+ m_fwdAction->setEnabled(false);
+ m_recAction->setEnabled(true);
+ m_stopAction->setEnabled(false);
+ m_playAction->setEnabled(true);
+ checkDeviceAvailability();
+ break;
+ default: // FIREWIRE
+ m_discAction->setEnabled(true);
+ m_recAction->setEnabled(false);
+ m_stopAction->setEnabled(false);
+ m_playAction->setEnabled(false);
+ m_rewAction->setEnabled(false);
+ m_fwdAction->setEnabled(false);
+ //m_ui.video_frame->setText(i18n("Plug your camcorder and\npress connect button\nto initialize connection"));
+ if (KdenliveSettings::dvgrab_path().isEmpty()) {
+ QString dvgrabpath = KStandardDirs::findExe("dvgrab");
+ if (dvgrabpath.isEmpty()) m_ui.video_frame->setPixmap(mergeSideBySide(KIcon("dialog-warning").pixmap(QSize(50, 50)), i18n("dvgrab utility not found,\n please install it for firewire capture")));
+ else KdenliveSettings::setDvgrab_path(dvgrabpath);
+ }
+
+ if (!KdenliveSettings::dvgrab_path().isEmpty()) m_ui.video_frame->setPixmap(mergeSideBySide(KIcon("network-connect").pixmap(QSize(50, 50)), i18n("Plug your camcorder and\npress connect button\nto initialize connection\nFiles will be saved in:\n%1", KdenliveSettings::capturefolder())));
+ break;