From: Jean-Baptiste Mardelle Date: Thu, 27 Mar 2008 00:54:39 +0000 (+0000) Subject: Save default profile X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=a1986049e20200121908038fc9d331a98b570052;p=kdenlive Save default profile svn path=/branches/KDE4/; revision=2127 --- diff --git a/src/kdenlivesettings.kcfg b/src/kdenlivesettings.kcfg index 83da9419..4e94371e 100644 --- a/src/kdenlivesettings.kcfg +++ b/src/kdenlivesettings.kcfg @@ -178,6 +178,11 @@ hdv_1080_50i + + + + + true diff --git a/src/kdenlivesettingsdialog.cpp b/src/kdenlivesettingsdialog.cpp index 431f9170..85651bc0 100644 --- a/src/kdenlivesettingsdialog.cpp +++ b/src/kdenlivesettingsdialog.cpp @@ -84,12 +84,18 @@ KdenliveSettingsDialog::KdenliveSettingsDialog(QWidget * parent): KConfigDialog( connect(m_configCapture.kcfg_video4size, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); connect(m_configCapture.kcfg_video4rate, SIGNAL(editingFinished()), this, SLOT(rebuildVideo4Commands())); + QStringList profilesNames = ProfilesDialog::getProfileNames(); - m_configMisc.profiles_list->addItems(profilesNames); - m_defaulfProfile = ProfilesDialog::getSettingsFromFile(KdenliveSettings::default_profile()).value("description"); - if (profilesNames.contains(m_defaulfProfile)) m_configMisc.profiles_list->setCurrentItem(m_defaulfProfile); + m_configMisc.kcfg_profiles_list->addItems(profilesNames); + m_defaultProfile = ProfilesDialog::getSettingsFromFile(KdenliveSettings::default_profile()).value("description"); + if (profilesNames.contains(m_defaultProfile)) { + m_configMisc.kcfg_profiles_list->setCurrentItem(m_defaultProfile); + KdenliveSettings::setProfiles_list(profilesNames.indexOf(m_defaultProfile)); + } + slotUpdateDisplay(); - connect(m_configMisc.profiles_list, SIGNAL(currentIndexChanged(int)), this, SLOT(slotUpdateDisplay())); + + connect(m_configMisc.kcfg_profiles_list, SIGNAL(currentIndexChanged(int)), this, SLOT(slotUpdateDisplay())); } KdenliveSettingsDialog::~KdenliveSettingsDialog() {} @@ -135,13 +141,20 @@ void KdenliveSettingsDialog::rebuildVideo4Commands() { } bool KdenliveSettingsDialog::hasChanged() { - kDebug() << "// // // KCONFIG hasChanged called"; - if (m_configMisc.profiles_list->currentText() != m_defaulfProfile) return true; + kDebug() << "// // // KCONFIG hasChanged called: " << m_configMisc.kcfg_profiles_list->currentText() << ", " << m_defaultProfile; + if (m_configMisc.kcfg_profiles_list->currentText() != m_defaultProfile) return true; return KConfigDialog::hasChanged(); } +void KdenliveSettingsDialog::updateSettings() { + kDebug() << "// // // KCONFIG UPDATE called"; + m_defaultProfile = m_configMisc.kcfg_profiles_list->currentText(); + KdenliveSettings::setDefault_profile(m_defaultPath); + KConfigDialog::updateSettings(); +} + void KdenliveSettingsDialog::slotUpdateDisplay() { - QString currentProfile = m_configMisc.profiles_list->currentText(); + QString currentProfile = m_configMisc.kcfg_profiles_list->currentText(); QMap< QString, QString > values = ProfilesDialog::getSettingsForProfile(currentProfile); m_configMisc.p_size->setText(values.value("width") + "x" + values.value("height")); m_configMisc.p_fps->setText(values.value("frame_rate_num") + "/" + values.value("frame_rate_den")); @@ -149,6 +162,7 @@ void KdenliveSettingsDialog::slotUpdateDisplay() { m_configMisc.p_display->setText(values.value("display_aspect_num") + "/" + values.value("display_aspect_den")); if (values.value("progressive").toInt() == 0) m_configMisc.p_progressive->setText(i18n("Interlaced")); else m_configMisc.p_progressive->setText(i18n("Progressive")); + m_defaultPath = values.value("path"); } diff --git a/src/kdenlivesettingsdialog.h b/src/kdenlivesettingsdialog.h index c74e66c0..486f952a 100644 --- a/src/kdenlivesettingsdialog.h +++ b/src/kdenlivesettingsdialog.h @@ -40,6 +40,7 @@ public: protected: virtual bool hasChanged(); + virtual void updateSettings(); private slots: void slotUpdateDisplay(); @@ -61,7 +62,8 @@ private: QStringList m_mltProfilesList; QStringList m_customProfilesList; bool m_isCustomProfile; - QString m_defaulfProfile; + QString m_defaultProfile; + QString m_defaultPath; signals: void customChanged(); diff --git a/src/profilesdialog.cpp b/src/profilesdialog.cpp index e85b0e45..66989913 100644 --- a/src/profilesdialog.cpp +++ b/src/profilesdialog.cpp @@ -192,7 +192,10 @@ QMap< QString, QString > ProfilesDialog::getSettingsForProfile(const QString pro for (int i = 0; i < profilesFiles.size(); ++i) { KConfig confFile(KdenliveSettings::mltpath() + "/" + profilesFiles.at(i)); QMap< QString, QString > values = confFile.entryMap(); - if (values.value("description") == profileName) return values; + if (values.value("description") == profileName) { + values.insert("path", profilesFiles.at(i)); + return values; + } } // List custom profiles @@ -202,7 +205,10 @@ QMap< QString, QString > ProfilesDialog::getSettingsForProfile(const QString pro for (int i = 0; i < profiles.size(); ++i) { KConfig confFile(customProfiles.at(i) + "/" + profiles.at(i)); QMap< QString, QString > values = confFile.entryMap(); - if (values.value("description") == profileName) return values; + if (values.value("description") == profileName) { + values.insert("path", customProfiles.at(i) + "/" + profiles.at(i)); + return values; + } } } return QMap< QString, QString >(); diff --git a/src/widgets/configmisc_ui.ui b/src/widgets/configmisc_ui.ui index 6291c093..da07e976 100644 --- a/src/widgets/configmisc_ui.ui +++ b/src/widgets/configmisc_ui.ui @@ -6,7 +6,7 @@ 0 0 369 - 241 + 245 @@ -64,7 +64,7 @@ - +