[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: extragear/multimedia/kmid/src
From: Pedro Lopez-Cabanillas <pedro.lopez.cabanillas () gmail ! com>
Date: 2010-06-30 18:57:35
Message-ID: 20100630190633.95421AC8E1 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1144765 by pedrol:
Allow the volume/pitch docking panel to be placed horizontally.
M +53 -28 kmid2.cpp
M +5 -0 kmid2.h
--- trunk/extragear/multimedia/kmid/src/kmid2.cpp #1144764:1144765
@@ -200,6 +200,10 @@
SLOT(slotSoftSynthErrors(const QString&,const QStringList&)));
}
+ Qt::DockWidgetArea area = dockWidgetArea(m_volDock);
+ if (area != Qt::NoDockWidgetArea)
+ slotDockVolLocationChanged(area);
+
finished();
if (!m_settings->exec_fluid() && !m_settings->exec_timidity())
connectMidiOutput();
@@ -1168,13 +1172,12 @@
{
/* Volume and Pitch dock */
- QDockWidget *dock = new QDockWidget(i18nc("@title:window", "Volume and Pitch"), \
this);
- dock->setObjectName(QLatin1String("volumeAndPitchDock"));
- dock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
- dock->setFeatures(QDockWidget::DockWidgetClosable |
+ m_volDock = new QDockWidget(i18nc("@title:window", "Volume and Pitch"), this);
+ m_volDock->setObjectName(QLatin1String("volumeAndPitchDock"));
+ m_volDock->setFeatures(QDockWidget::DockWidgetClosable |
QDockWidget::DockWidgetFloatable | QDockWidget::DockWidgetMovable |
QDockWidget::DockWidgetVerticalTitleBar );
- QWidget *dw = new QWidget(dock);
+ QWidget *dw = new QWidget(m_volDock);
QGridLayout *gridLayout = new QGridLayout(dw);
QLabel *labelVol = new QLabel(this);
@@ -1209,21 +1212,24 @@
gridLayout->addWidget(m_pitchSlider, 1, 1);
labelPitch->setBuddy(m_pitchSlider);
- dock->setWidget(dw);
- addDockWidget(Qt::LeftDockWidgetArea, dock);
+ m_volDock->setWidget(dw);
+ addDockWidget(Qt::LeftDockWidgetArea, m_volDock);
- QAction* action = dock->toggleViewAction();
+ QAction* action = m_volDock->toggleViewAction();
action->setText(i18nc("@title:window", "Volume and Pitch"));
action->setIcon(KIcon("view-media-equalizer"));
action->setWhatsThis(i18nc("@action:inmenu","Show or hide the volume and pitch \
controls")); actionCollection()->addAction("show_volume_pitch", action);
+ connect ( m_volDock, SIGNAL(dockLocationChanged(Qt::DockWidgetArea)),
+ SLOT(slotDockVolLocationChanged(Qt::DockWidgetArea)));
+
/* Time Position dock */
- dock = new QDockWidget(i18nc("@title:window", "Time Position"), this);
- dock->setObjectName(QLatin1String("timeDock"));
- dock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
- dw = new QWidget(dock);
+ m_posDock = new QDockWidget(i18nc("@title:window", "Time Position"), this);
+ m_posDock->setObjectName(QLatin1String("timeDock"));
+ m_posDock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
+ dw = new QWidget(m_posDock);
QVBoxLayout* vLayout = new QVBoxLayout(dw);
m_timeSlider = new QSlider(this);
@@ -1241,10 +1247,10 @@
m_timeLabel->setMarkers(8);
vLayout->addWidget(m_timeLabel);
- dock->setWidget(dw);
- addDockWidget(Qt::TopDockWidgetArea, dock);
+ m_posDock->setWidget(dw);
+ addDockWidget(Qt::TopDockWidgetArea, m_posDock);
- action = dock->toggleViewAction();
+ action = m_posDock->toggleViewAction();
action->setText(i18nc("@title:window", "Time Position"));
action->setIcon(KIcon("player-time"));
action->setWhatsThis(i18nc("@action:inmenu","Show or hide the time position \
controls")); @@ -1252,18 +1258,18 @@
/* Codecs dock */
- dock = new QDockWidget(i18nc("@title:window", "Text Encoding"), this);
- dock->setObjectName(QLatin1String("codecsDock"));
- dock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
+ m_encDock = new QDockWidget(i18nc("@title:window", "Text Encoding"), this);
+ m_encDock->setObjectName(QLatin1String("codecsDock"));
+
m_comboCodecs = new KComboBox(this);
m_comboCodecs->setWhatsThis(i18nc("@info:whatsthis","Character encoding for \
lyrics and other text"));
m_comboCodecs->addItem(i18nc("@item:inlistbox Default MIDI text encoding", \
"Default ( ASCII )"));
m_comboCodecs->addItems( KGlobal::charsets()->descriptiveEncodingNames() );
m_comboCodecs->setCurrentItem(m_settings->encoding());
- dock->setWidget(m_comboCodecs);
- addDockWidget(Qt::TopDockWidgetArea, dock);
+ m_encDock->setWidget(m_comboCodecs);
+ addDockWidget(Qt::TopDockWidgetArea, m_encDock);
- action = dock->toggleViewAction();
+ action = m_encDock->toggleViewAction();
action->setText(i18nc("@title:window", "Text Encoding"));
action->setIcon(KIcon("view-list-text"));
action->setWhatsThis(i18nc("@action:inmenu","Show or hide the character encoding \
control")); @@ -1271,10 +1277,10 @@
/* Rhythm dock */
- dock = new QDockWidget(i18nc("@title:window", "Rhythm"), this);
- dock->setObjectName(QLatin1String("rhythmDock"));
- dock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
- dw = new QWidget(dock);
+ m_rthmDock = new QDockWidget(i18nc("@title:window", "Rhythm"), this);
+ m_rthmDock->setObjectName(QLatin1String("rhythmDock"));
+ m_rthmDock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
+ dw = new QWidget(m_rthmDock);
gridLayout = new QGridLayout(dw);
QLabel* labelSpeed = new QLabel(this);
@@ -1322,10 +1328,10 @@
m_rhythm->setWhatsThis(i18nc("@info:whatsthis","Visual metronome"));
gridLayout->addWidget(m_rhythm, 1, 2, 1, 1, Qt::AlignVCenter);;
- dock->setWidget(dw);
- addDockWidget(Qt::BottomDockWidgetArea, dock);
+ m_rthmDock->setWidget(dw);
+ addDockWidget(Qt::BottomDockWidgetArea, m_rthmDock);
- action = dock->toggleViewAction();
+ action = m_rthmDock->toggleViewAction();
action->setText(i18nc("@title:window", "Rhythm"));
action->setIcon(KIcon("chronometer"));
action->setWhatsThis(i18nc("@action:inmenu","Show or hide the rhythm \
controls")); @@ -1519,4 +1525,23 @@
}
}
+void KMid2::slotDockVolLocationChanged(Qt::DockWidgetArea area)
+{
+ QDockWidget::DockWidgetFeatures flags = QDockWidget::DockWidgetClosable |
+ QDockWidget::DockWidgetFloatable | QDockWidget::DockWidgetMovable;
+ if (area == Qt::LeftDockWidgetArea || area == Qt::RightDockWidgetArea) {
+ flags |= QDockWidget::DockWidgetVerticalTitleBar;
+ m_volumeSlider->setOrientation(Qt::Vertical);
+ m_volumeSlider->setTickPosition(QSlider::TicksBelow);
+ m_pitchSlider->setOrientation(Qt::Vertical);
+ m_pitchSlider->setTickPosition(QSlider::TicksBelow);
+ } else { // top or bottom
+ m_volumeSlider->setOrientation(Qt::Horizontal);
+ m_volumeSlider->setTickPosition(QSlider::TicksAbove);
+ m_pitchSlider->setOrientation(Qt::Horizontal);
+ m_pitchSlider->setTickPosition(QSlider::TicksAbove);
+ }
+ m_volDock->setFeatures(flags);
+}
+
#include "kmid2.moc"
--- trunk/extragear/multimedia/kmid/src/kmid2.h #1144764:1144765
@@ -129,6 +129,7 @@
void slotSoftSynthStarted(const QString& pgm, const QStringList& messages);
void slotSoftSynthErrors(const QString& pgm, const QStringList& messages);
void slotBackendChanged(int index);
+ void slotDockVolLocationChanged ( Qt::DockWidgetArea area );
private:
void setupDockWidgets();
@@ -216,6 +217,10 @@
QString m_currentBackendLibrary;
Settings* m_settings;
+ QDockWidget *m_volDock;
+ QDockWidget *m_posDock;
+ QDockWidget *m_rthmDock;
+ QDockWidget *m_encDock;
};
#endif // KMID2_H
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic