void PageInput::SaveProfileSettings(QSettings* settings) { settings->setValue("input/video_area", EnumToString(GetVideoArea())); settings->setValue("input/video_area_screen", GetVideoAreaScreen()); settings->setValue("input/video_x", GetVideoX()); settings->setValue("input/video_y", GetVideoY()); settings->setValue("input/video_w", GetVideoW()); settings->setValue("input/video_h", GetVideoH()); settings->setValue("input/video_frame_rate", GetVideoFrameRate()); settings->setValue("input/video_scale", GetVideoScalingEnabled()); settings->setValue("input/video_scaled_w", GetVideoScaledW()); settings->setValue("input/video_scaled_h", GetVideoScaledH()); settings->setValue("input/video_record_cursor", GetVideoRecordCursor()); settings->setValue("input/audio_enabled", GetAudioEnabled()); settings->setValue("input/audio_backend", EnumToString(GetAudioBackend())); settings->setValue("input/audio_alsa_source", GetALSASourceName()); #if SSR_USE_PULSEAUDIO settings->setValue("input/audio_pulseaudio_source", GetPulseAudioSourceName()); #endif #if SSR_USE_JACK settings->setValue("input/audio_jack_connect_system_capture", GetJackConnectSystemCapture()); settings->setValue("input/audio_jack_connect_system_playback", GetJackConnectSystemPlayback()); #endif settings->setValue("input/glinject_channel", GetGLInjectChannel()); settings->setValue("input/glinject_relax_permissions", GetGLInjectRelaxPermissions()); settings->setValue("input/glinject_command", GetGLInjectCommand()); settings->setValue("input/glinject_working_directory", GetGLInjectWorkingDirectory()); settings->setValue("input/glinject_auto_launch", GetGLInjectAutoLaunch()); settings->setValue("input/glinject_limit_fps", GetGLInjectLimitFPS()); }
void PageInput::OnContinue() { if(GetVideoArea() == VIDEO_AREA_GLINJECT && GetGLInjectCommand().isEmpty()) { QMessageBox::critical(this, MainWindow::WINDOW_CAPTION, "You did not enter a command to start the OpenGL application that you want to record.\n" "Press the 'OpenGL settings' button and enter a command.", QMessageBox::Ok); return; } m_main_window->GoPageOutput(); }
void PageInput::OnUpdateVideoAreaFields() { switch(GetVideoArea()) { case VIDEO_AREA_SCREEN: { m_combobox_screens->setEnabled(true); m_pushbutton_video_select_rectangle->setEnabled(false); m_pushbutton_video_select_window->setEnabled(false); m_pushbutton_video_opengl_settings->setEnabled(false); GroupEnabled({m_label_video_x, m_spinbox_video_x, m_label_video_y, m_spinbox_video_y, m_label_video_w, m_spinbox_video_w, m_label_video_h, m_spinbox_video_h}, false); int sc = m_combobox_screens->currentIndex(); QRect rect; if(sc == 0) { rect = QApplication::desktop()->screenGeometry(0); for(int i = 1; i < QApplication::desktop()->screenCount(); ++i) { rect |= QApplication::desktop()->screenGeometry(i); } } else { rect = QApplication::desktop()->screenGeometry(sc - 1); } SetVideoX(rect.left()); SetVideoY(rect.top()); SetVideoW(rect.width()); SetVideoH(rect.height()); break; } case VIDEO_AREA_FIXED: { m_combobox_screens->setEnabled(false); m_pushbutton_video_select_rectangle->setEnabled(true); m_pushbutton_video_select_window->setEnabled(true); m_pushbutton_video_opengl_settings->setEnabled(false); GroupEnabled({m_label_video_x, m_spinbox_video_x, m_label_video_y, m_spinbox_video_y, m_label_video_w, m_spinbox_video_w, m_label_video_h, m_spinbox_video_h}, true); break; } case VIDEO_AREA_CURSOR: { m_combobox_screens->setEnabled(false); m_pushbutton_video_select_rectangle->setEnabled(true); m_pushbutton_video_select_window->setEnabled(true); m_pushbutton_video_opengl_settings->setEnabled(false); GroupEnabled({m_label_video_x, m_spinbox_video_x, m_label_video_y, m_spinbox_video_y}, false); GroupEnabled({m_label_video_w, m_spinbox_video_w, m_label_video_h, m_spinbox_video_h}, true); SetVideoX(0); SetVideoY(0); break; } case VIDEO_AREA_GLINJECT: { m_combobox_screens->setEnabled(false); m_pushbutton_video_select_rectangle->setEnabled(false); m_pushbutton_video_select_window->setEnabled(false); m_pushbutton_video_opengl_settings->setEnabled(true); GroupEnabled({m_label_video_x, m_spinbox_video_x, m_label_video_y, m_spinbox_video_y, m_label_video_w, m_spinbox_video_w, m_label_video_h, m_spinbox_video_h}, false); break; } default: break; } }
void PageInput::SetVideoAreaFromRubberBand() { QRect r = m_rubber_band_rect.normalized(); if(GetVideoArea() == VIDEO_AREA_CURSOR) { SetVideoX(0); SetVideoY(0); } else { SetVideoX(r.x()); SetVideoY(r.y()); } SetVideoW(r.width()); SetVideoH(r.height()); }
void PageInput::SaveSettings(QSettings* settings) { settings->setValue("input/video_area", GetVideoArea()); settings->setValue("input/video_area_screen", GetVideoAreaScreen()); settings->setValue("input/video_x", GetVideoX()); settings->setValue("input/video_y", GetVideoY()); settings->setValue("input/video_w", GetVideoW()); settings->setValue("input/video_h", GetVideoH()); settings->setValue("input/video_frame_rate", GetVideoFrameRate()); settings->setValue("input/video_scale", GetVideoScalingEnabled()); settings->setValue("input/video_scaled_w", GetVideoScaledW()); settings->setValue("input/video_scaled_h", GetVideoScaledH()); settings->setValue("input/video_record_cursor", GetVideoRecordCursor()); settings->setValue("input/audio_enabled", GetAudioEnabled()); settings->setValue("input/audio_backend", GetAudioBackend()); settings->setValue("input/audio_alsa_device", GetALSADevice()); settings->setValue("input/audio_pulseaudio_source", GetPulseAudioSourceName()); settings->setValue("input/glinject_command", GetGLInjectCommand()); settings->setValue("input/glinject_run_command", GetGLInjectRunCommand()); settings->setValue("input/glinject_relax_permissions", GetGLInjectRelaxPermissions()); settings->setValue("input/glinject_max_megapixels", GetGLInjectMaxMegaPixels()); settings->setValue("input/glinject_capture_front", GetGLInjectCaptureFront()); settings->setValue("input/glinject_limit_fps", GetGLInjectLimitFPS()); }