X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fkdenlivesettingsdialog.h;h=24da04f82cb833658b9fa4125d47ab34e9ccb05d;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=ae684c615b2368faa3fd2b7d7d8a371954d20ae7;hpb=a66d246dab4a56bc1fe709fe37d46f7978108d9e;p=kdenlive diff --git a/src/kdenlivesettingsdialog.h b/src/kdenlivesettingsdialog.h index ae684c61..24da04f8 100644 --- a/src/kdenlivesettingsdialog.h +++ b/src/kdenlivesettingsdialog.h @@ -21,29 +21,102 @@ #ifndef KDENLIVESETTINGSDIALOG_H #define KDENLIVESETTINGSDIALOG_H -#include - +#include #include +#include #include "ui_configmisc_ui.h" #include "ui_configenv_ui.h" +#include "ui_configtimeline_ui.h" +#include "ui_configcapture_ui.h" +#include "ui_configjogshuttle_ui.h" +#include "ui_configsdl_ui.h" +#include "ui_configtranscode_ui.h" +#include "ui_configproject_ui.h" class KdenliveSettingsDialog : public KConfigDialog { - Q_OBJECT - - public: - KdenliveSettingsDialog(QWidget * parent = 0); + Q_OBJECT + +public: + KdenliveSettingsDialog(const QMap& mappable_actions, QWidget * parent = 0); + ~KdenliveSettingsDialog(); + void showPage(int page, int option); + void checkProfile(); - private slots: +protected slots: + void updateSettings(); + void updateWidgets(); + virtual bool hasChanged(); + +private slots: void slotUpdateDisplay(); + void slotCheckShuttle(int state = 0); + void slotUpdateShuttleDevice(int ix = 0); + void slotEditImageApplication(); + void slotEditAudioApplication(); + void slotEditVideoApplication(); + void slotReadAudioDevices(); + void slotUpdateGrabRegionStatus(); + void slotCheckAlsaDriver(); + void slotAddTranscode(); + void slotDeleteTranscode(); + /** @brief Update current transcoding profile. */ + void slotUpdateTranscodingProfile(); + /** @brief Enable / disable the update profile button. */ + void slotEnableTranscodeUpdate(); + /** @brief Update display of current transcoding profile parameters. */ + void slotSetTranscodeProfile(); + void slotShuttleModified(); + void slotDialogModified(); + void slotEnableCaptureFolder(); + void slotUpdatev4lDevice(); + void slotUpdatev4lCaptureProfile(); + void slotManageEncodingProfile(); + void slotUpdateDecklinkProfile(int ix = 0); + void slotUpdateProxyProfile(int ix = 0); + void slotUpdateV4lProfile(int ix = 0); + void slotUpdateGrabProfile(int ix = 0); + void slotEditVideo4LinuxProfile(); + void slotReloadBlackMagic(); + void slotReloadShuttleDevices(); + +private: + KPageWidgetItem *m_page1; + KPageWidgetItem *m_page2; + KPageWidgetItem *m_page3; + KPageWidgetItem *m_page4; + KPageWidgetItem *m_page5; + KPageWidgetItem *m_page6; + KPageWidgetItem *m_page7; + KPageWidgetItem *m_page8; + Ui::ConfigEnv_UI m_configEnv; + Ui::ConfigMisc_UI m_configMisc; + Ui::ConfigTimeline_UI m_configTimeline; + Ui::ConfigCapture_UI m_configCapture; + Ui::ConfigJogShuttle_UI m_configShuttle; + Ui::ConfigSdl_UI m_configSdl; + Ui::ConfigTranscode_UI m_configTranscode; + Ui::ConfigProject_UI m_configProject; + QString m_defaultProfile; + QString m_defaultPath; + KProcess m_readProcess; + bool m_modified; + bool m_shuttleModified; + QMap m_mappable_actions; + QVector m_shuttle_buttons; + void initDevices(); + void loadTranscodeProfiles(); + void saveTranscodeProfiles(); + void loadCurrentV4lProfileInfo(); + void saveCurrentV4lProfile(); + void loadEncodingProfiles(); + void setupJogshuttleBtns(QString device); - private: - Ui::ConfigEnv_UI* m_configEnv; - Ui::ConfigMisc_UI* m_configMisc; - QStringList m_mltProfilesList; - QStringList m_customProfilesList; - bool m_isCustomProfile; +signals: + void customChanged(); + void doResetProfile(); + void updateCaptureFolder(); };