* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
***************************************************************************/
-#include <QDir>
+#include "projectsettings.h"
+#include "kdenlivesettings.h"
+#include "profilesdialog.h"
#include <KStandardDirs>
#include <KDebug>
-#include "kdenlivesettings.h"
-#include "profilesdialog.h"
-#include "projectsettings.h"
+#include <QDir>
-ProjectSettings::ProjectSettings(QWidget * parent): QDialog(parent), m_isCustomProfile(false) {
+ProjectSettings::ProjectSettings(int videotracks, int audiotracks, const QString projectPath, bool readOnlyTracks, QWidget * parent) :
+ QDialog(parent)
+{
m_view.setupUi(this);
- QStringList profilesNames = ProfilesDialog::getProfileNames();
- m_view.profiles_list->addItems(profilesNames);
+ QMap <QString, QString> profilesInfo = ProfilesDialog::getProfilesInfo();
+ QMapIterator<QString, QString> i(profilesInfo);
+ while (i.hasNext()) {
+ i.next();
+ m_view.profiles_list->addItem(i.key(), i.value());
+ }
m_view.project_folder->setMode(KFile::Directory);
- QString defaulfProf = ProfilesDialog::getSettingsFromFile(KdenliveSettings::current_profile()).value("description");
- if (profilesNames.contains(defaulfProf)) m_view.profiles_list->setCurrentItem(defaulfProf);
- buttonOk = m_view.buttonBox->button(QDialogButtonBox::Ok);
+ m_view.project_folder->setPath(projectPath);
+ QString currentProf = KdenliveSettings::current_profile();
+
+ for (int i = 0; i < m_view.profiles_list->count(); i++) {
+ if (m_view.profiles_list->itemData(i).toString() == currentProf) {
+ m_view.profiles_list->setCurrentIndex(i);
+ break;
+ }
+ }
+
+ m_buttonOk = m_view.buttonBox->button(QDialogButtonBox::Ok);
//buttonOk->setEnabled(false);
m_view.audio_thumbs->setChecked(KdenliveSettings::audiothumbnails());
m_view.video_thumbs->setChecked(KdenliveSettings::videothumbnails());
+ m_view.audio_tracks->setValue(audiotracks);
+ m_view.video_tracks->setValue(videotracks);
+ if (readOnlyTracks) {
+ m_view.video_tracks->setEnabled(false);
+ m_view.audio_tracks->setEnabled(false);
+ }
slotUpdateDisplay();
connect(m_view.profiles_list, SIGNAL(currentIndexChanged(int)), this, SLOT(slotUpdateDisplay()));
connect(m_view.project_folder, SIGNAL(textChanged(const QString &)), this, SLOT(slotUpdateButton(const QString &)));
}
-void ProjectSettings::slotUpdateDisplay() {
- QString currentProfile = m_view.profiles_list->currentText();
- QMap< QString, QString > values = ProfilesDialog::getSettingsForProfile(currentProfile);
- m_view.p_size->setText(values.value("width") + "x" + values.value("height"));
- m_view.p_fps->setText(values.value("frame_rate_num") + "/" + values.value("frame_rate_den"));
- m_view.p_aspect->setText(values.value("sample_aspect_num") + "/" + values.value("sample_aspect_den"));
- m_view.p_display->setText(values.value("display_aspect_num") + "/" + values.value("display_aspect_den"));
+void ProjectSettings::slotUpdateDisplay()
+{
+ QString currentProfile = m_view.profiles_list->itemData(m_view.profiles_list->currentIndex()).toString();
+ QMap< QString, QString > values = ProfilesDialog::getSettingsFromFile(currentProfile);
+ m_view.p_size->setText(values.value("width") + 'x' + values.value("height"));
+ m_view.p_fps->setText(values.value("frame_rate_num") + '/' + values.value("frame_rate_den"));
+ m_view.p_aspect->setText(values.value("sample_aspect_num") + '/' + values.value("sample_aspect_den"));
+ m_view.p_display->setText(values.value("display_aspect_num") + '/' + values.value("display_aspect_den"));
if (values.value("progressive").toInt() == 0) m_view.p_progressive->setText(i18n("Interlaced"));
else m_view.p_progressive->setText(i18n("Progressive"));
}
-void ProjectSettings::slotUpdateButton(const QString &path) {
- if (path.isEmpty()) buttonOk->setEnabled(false);
- else buttonOk->setEnabled(true);
+void ProjectSettings::slotUpdateButton(const QString &path)
+{
+ if (path.isEmpty()) m_buttonOk->setEnabled(false);
+ else m_buttonOk->setEnabled(true);
+}
+
+QString ProjectSettings::selectedProfile() const
+{
+ return m_view.profiles_list->itemData(m_view.profiles_list->currentIndex()).toString();
+}
+
+KUrl ProjectSettings::selectedFolder() const
+{
+ return m_view.project_folder->url();
+}
+
+QPoint ProjectSettings::tracks()
+{
+ QPoint p;
+ p.setX(m_view.video_tracks->value());
+ p.setY(m_view.audio_tracks->value());
+ return p;
+}
+
+bool ProjectSettings::enableVideoThumbs() const
+{
+ return m_view.video_thumbs->isChecked();
}
-QString ProjectSettings::selectedProfile() {
- return ProfilesDialog::getPathFromDescription(m_view.profiles_list->currentText());
+bool ProjectSettings::enableAudioThumbs() const
+{
+ return m_view.audio_thumbs->isChecked();
}
#include "projectsettings.moc"