svn path=/trunk/kdenlive/; revision=4257
QStringList args;
args.append("-profile");
if (m_pageMenu->isPalMenu()) args.append("dv_pal");
QStringList args;
args.append("-profile");
if (m_pageMenu->isPalMenu()) args.append("dv_pal");
- else args.append("dv_ntsc");
+ else args.append("dv_ntsc");
args.append(temp4.fileName());
args.append("in=0");
args.append("out=100");
args.append(temp4.fileName());
args.append("in=0");
args.append("out=100");
}
QDomElement menuvob = dvddoc.createElement("vob");
menuvob.setAttribute("file", m_menuFile.fileName());
}
QDomElement menuvob = dvddoc.createElement("vob");
menuvob.setAttribute("file", m_menuFile.fileName());
- menuvob.setAttribute("pause", "inf");
pgc.appendChild(menuvob);
pgc.appendChild(menuvob);
+
+ if (m_pageMenu->loopMovie()) {
+ QDomElement menuloop = dvddoc.createElement("post");
+ nametext = dvddoc.createTextNode("jump titleset 1 menu;");
+ menuloop.appendChild(nametext);
+ pgc.appendChild(menuloop);
+ } else menuvob.setAttribute("pause", "inf");
+
}
QDomElement titles = dvddoc.createElement("titles");
}
QDomElement titles = dvddoc.createElement("titles");
vbox->addWidget(m_monitor);
m_view.monitor_frame->setLayout(vbox);
/*updateGeometry();
vbox->addWidget(m_monitor);
m_view.monitor_frame->setLayout(vbox);
/*updateGeometry();
+ m_view.monitor_frame->adjustSize();*/
} else m_monitor->resetProfile(profile);
m_view.vob_list->blockSignals(true);
} else m_monitor->resetProfile(profile);
m_view.vob_list->blockSignals(true);
#include <KDebug>
#include <KColorScheme>
#include <KDebug>
#include <KColorScheme>
DvdWizardMenu::DvdWizardMenu(const QString &profile, QWidget *parent) :
QWizardPage(parent),
DvdWizardMenu::DvdWizardMenu(const QString &profile, QWidget *parent) :
QWizardPage(parent),
} else changeProfile(true);
} else changeProfile(true);
// Create color background
m_color = new QGraphicsRectItem(0, 0, m_width, m_height);
m_color->setBrush(m_view.background_color->color());
// Create color background
m_color = new QGraphicsRectItem(0, 0, m_width, m_height);
m_color->setBrush(m_view.background_color->color());
if (ix == 0) {
m_view.background_color->setVisible(true);
m_view.background_image->setVisible(false);
if (ix == 0) {
m_view.background_color->setVisible(true);
m_view.background_image->setVisible(false);
+ m_view.loop_movie->setVisible(false);
if (m_background->scene() != 0) m_scene->removeItem(m_background);
} else {
m_view.background_color->setVisible(false);
m_view.background_image->setVisible(true);
if (ix == 1) {
if (m_background->scene() != 0) m_scene->removeItem(m_background);
} else {
m_view.background_color->setVisible(false);
m_view.background_image->setVisible(true);
if (ix == 1) {
+ m_view.background_image->clear();
m_view.background_image->setFilter("*");
m_view.background_image->setFilter("*");
- m_scene->addItem(m_background);
+ if (m_background->scene() != 0) m_scene->removeItem(m_background);
+ m_view.loop_movie->setVisible(false);
} else {
if (m_background->scene() != 0) m_scene->removeItem(m_background);
} else {
if (m_background->scene() != 0) m_scene->removeItem(m_background);
+ m_view.background_image->clear();
m_view.background_image->setFilter("video/mpeg");
m_view.background_image->setFilter("video/mpeg");
+ m_view.loop_movie->setVisible(true);
- if (!pix.load(m_view.background_image->url().path())) {
- if (m_background->scene() != 0) m_scene->removeItem(m_background);
- return;
+
+ if (m_view.background_list->currentIndex() == 1) {
+ // image background
+ if (!pix.load(m_view.background_image->url().path())) {
+ if (m_background->scene() != 0) m_scene->removeItem(m_background);
+ return;
+ }
+ pix = pix.scaled(m_width, m_height);
+ } else if (m_view.background_list->currentIndex() == 2) {
+ // video background
+ int w;
+ if (m_isPal) w = 768;
+ else w = 640;
+ pix = KThumb::getImage(m_view.background_image->url(), 0, w, m_height);
+ pix = pix.scaled(m_width, m_height);
- pix = pix.scaled(m_width, m_height);
m_background->setPixmap(pix);
m_background->setPixmap(pix);
- if (m_view.background_list->currentIndex() == 1) m_scene->addItem(m_background);
+ m_scene->addItem(m_background);
}
void DvdWizardMenu::checkBackground()
}
void DvdWizardMenu::checkBackground()
{
if (m_view.create_menu->isChecked()) {
m_scene->clearSelection();
{
if (m_view.create_menu->isChecked()) {
m_scene->clearSelection();
- QImage img(m_width, m_height, QImage::Format_ARGB8555_Premultiplied);
- QPainter p(&img);
- p.setRenderHints(QPainter::Antialiasing, false);
- p.setRenderHints(QPainter::TextAntialiasing, false);
+ QImage img(m_width, m_height, QImage::Format_ARGB32_Premultiplied);
+ img.fill(Qt::transparent);
if (m_safeRect->scene() != 0) m_scene->removeItem(m_safeRect);
if (m_color->scene() != 0) m_scene->removeItem(m_color);
if (m_background->scene() != 0) m_scene->removeItem(m_background);
if (m_safeRect->scene() != 0) m_scene->removeItem(m_safeRect);
if (m_color->scene() != 0) m_scene->removeItem(m_color);
if (m_background->scene() != 0) m_scene->removeItem(m_background);
+ QPainter p(&img);
+ p.setRenderHints(QPainter::Antialiasing, false);
+ p.setRenderHints(QPainter::TextAntialiasing, false);
m_scene->render(&p, QRectF(0, 0, m_width, m_height));
p.end();
#if QT_VERSION >= 0x040600
m_scene->render(&p, QRectF(0, 0, m_width, m_height));
p.end();
#if QT_VERSION >= 0x040600
img.setNumColors(4);
#endif
img.save(img1);
img.setNumColors(4);
#endif
img.save(img1);
/*QImage saved;
if (m_view.menu_profile->currentIndex() < 2)
saved = img.scaled(720, 576);
/*QImage saved;
if (m_view.menu_profile->currentIndex() < 2)
saved = img.scaled(720, 576);
saved.save(img1);*/
updateColor(m_view.selected_color->color());
saved.save(img1);*/
updateColor(m_view.selected_color->color());
+ img.fill(Qt::transparent);
p.begin(&img);
p.setRenderHints(QPainter::Antialiasing, false);
p.setRenderHints(QPainter::TextAntialiasing, false);
p.begin(&img);
p.setRenderHints(QPainter::Antialiasing, false);
p.setRenderHints(QPainter::TextAntialiasing, false);
updateColor(m_view.highlighted_color->color());
updateColor(m_view.highlighted_color->color());
+ img.fill(Qt::transparent);
p.begin(&img);
p.setRenderHints(QPainter::Antialiasing, false);
p.setRenderHints(QPainter::TextAntialiasing, false);
p.begin(&img);
p.setRenderHints(QPainter::Antialiasing, false);
p.setRenderHints(QPainter::TextAntialiasing, false);
m_scene->addItem(m_safeRect);
m_scene->addItem(m_color);
m_scene->addItem(m_safeRect);
m_scene->addItem(m_color);
- if (m_view.background_list->currentIndex() == 1) m_scene->addItem(m_background);
+ if (m_view.background_list->currentIndex() > 0) m_scene->addItem(m_background);
return m_view.create_menu->isChecked();
}
return m_view.create_menu->isChecked();
}
+bool DvdWizardMenu::loopMovie() const
+{
+ return m_view.loop_movie->isChecked();
+}
+
bool DvdWizardMenu::menuMovie() const
{
return m_view.background_list->currentIndex() == 2;
bool DvdWizardMenu::menuMovie() const
{
return m_view.background_list->currentIndex() == 2;
void createButtonImages(const QString &img1, const QString &img2, const QString &img3);
void setTargets(QStringList list, QStringList targetlist);
QMap <QString, QRect> buttonsInfo();
void createButtonImages(const QString &img1, const QString &img2, const QString &img3);
void setTargets(QStringList list, QStringList targetlist);
QMap <QString, QRect> buttonsInfo();
+ bool loopMovie() const;
bool menuMovie() const;
QString menuMoviePath() const;
bool isPalMenu() const;
bool menuMovie() const;
QString menuMoviePath() const;
bool isPalMenu() const;
- <width>398</width>
- <height>338</height>
+ <width>344</width>
+ <height>369</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="1" colspan="4">
<widget class="KComboBox" name="vob_list"/>
</item>
<item row="1" column="1" colspan="4">
<widget class="KComboBox" name="vob_list"/>
</item>
- <item row="2" column="0" colspan="5">
- <widget class="QListWidget" name="chapters_list">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Maximum">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- </widget>
- </item>
<item row="3" column="0" colspan="2">
<widget class="QPushButton" name="button_add">
<property name="text">
<item row="3" column="0" colspan="2">
<widget class="QPushButton" name="button_add">
<property name="text">
</item>
<item row="0" column="0" colspan="4">
<widget class="QFrame" name="monitor_frame">
</item>
<item row="0" column="0" colspan="4">
<widget class="QFrame" name="monitor_frame">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
+ <zorder>chapters_list</zorder>
+ </widget>
+ </item>
+ <item row="2" column="0" colspan="5">
+ <widget class="QListWidget" name="chapters_list">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Maximum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="alternatingRowColors">
+ <bool>true</bool>
+ </property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</property>
</widget>
</item>
</property>
</widget>
</item>
- <item row="0" column="1">
+ <item row="0" column="1" colspan="2">
<widget class="KComboBox" name="background_list">
<item>
<property name="text">
<widget class="KComboBox" name="background_list">
<item>
<property name="text">
</item>
</widget>
</item>
</item>
</widget>
</item>
- <item row="1" column="1">
+ <item row="1" column="1" colspan="2">
<widget class="KColorButton" name="background_color"/>
</item>
<item row="2" column="1">
<widget class="KUrlRequester" name="background_image"/>
</item>
<widget class="KColorButton" name="background_color"/>
</item>
<item row="2" column="1">
<widget class="KUrlRequester" name="background_image"/>
</item>
+ <item row="2" column="2">
+ <widget class="QCheckBox" name="loop_movie">
+ <property name="text">
+ <string>Loop</string>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
</widget>
</layout>
</widget>
</widget>