From b4258dc586d3d1ea2b45f4729397d0e6bd5445e6 Mon Sep 17 00:00:00 2001 From: Thorvald Natvig Date: Sun, 25 Jan 2009 13:42:34 +0000 Subject: [PATCH] Add elide mode for the audio devices, and store configdialog geometry. git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1476 05730e5d-ab1b-0410-a4ac-84af385074fa --- src/mumble/AudioConfigDialog.cpp | 13 +++++++ src/mumble/AudioInput.ui | 16 ++++++--- src/mumble/AudioOutput.ui | 62 +++++++++++++++----------------- src/mumble/ConfigDialog.cpp | 4 +++ src/mumble/ConfigDialog.ui | 4 +-- src/mumble/Settings.cpp | 2 ++ src/mumble/Settings.h | 1 + 7 files changed, 61 insertions(+), 41 deletions(-) diff --git a/src/mumble/AudioConfigDialog.cpp b/src/mumble/AudioConfigDialog.cpp index 4d8972c49..90a33c2c8 100644 --- a/src/mumble/AudioConfigDialog.cpp +++ b/src/mumble/AudioConfigDialog.cpp @@ -79,6 +79,8 @@ AudioInputDialog::AudioInputDialog(Settings &st) : ConfigWidget(st) { abSpeech->qcInside = Qt::yellow; abSpeech->qcAbove = Qt::green; + qcbDevice->view()->setTextElideMode(Qt::ElideRight); + on_Tick_timeout(); } @@ -270,9 +272,14 @@ void AudioInputDialog::on_qcbSystem_currentIndexChanged(int) { AudioInputRegistrar *air = AudioInputRegistrar::qmNew->value(qcbSystem->currentText()); ql = air->getDeviceChoices(); + int idx = 0; + foreach(audioDevice d, ql) { qcbDevice->addItem(d.first, d.second); + qcbDevice->setItemData(idx, d.first, Qt::ToolTipRole); + ++idx; } + qcbEcho->setEnabled(air->canEcho(s.qsAudioOutput)); } @@ -313,6 +320,8 @@ AudioOutputDialog::AudioOutputDialog(Settings &st) : ConfigWidget(st) { qcbLoopback->addItem(tr("None"), Settings::None); qcbLoopback->addItem(tr("Local"), Settings::Local); qcbLoopback->addItem(tr("Server"), Settings::Server); + + qcbDevice->view()->setTextElideMode(Qt::ElideRight); } QString AudioOutputDialog::title() const { @@ -389,8 +398,12 @@ void AudioOutputDialog::on_qcbSystem_currentIndexChanged(int) { AudioOutputRegistrar *aor = AudioOutputRegistrar::qmNew->value(qcbSystem->currentText()); ql = aor->getDeviceChoices(); + int idx = 0; + foreach(audioDevice d, ql) { qcbDevice->addItem(d.first, d.second); + qcbDevice->setItemData(idx, d.first, Qt::ToolTipRole); + ++idx; } bool canmute = aor->canMuteOthers(); qsOtherVolume->setEnabled(canmute); diff --git a/src/mumble/AudioInput.ui b/src/mumble/AudioInput.ui index c7854ed56..227fb9359 100644 --- a/src/mumble/AudioInput.ui +++ b/src/mumble/AudioInput.ui @@ -5,8 +5,8 @@ 0 0 - 304 - 649 + 340 + 555 @@ -32,7 +32,7 @@ - + 0 0 @@ -74,8 +74,8 @@ - - 0 + + 1 0 @@ -85,6 +85,12 @@ <b>This is the output method to use for audio.</b><br />Most likely you want to use DirectSound. + + QComboBox::AdjustToMinimumContentsLength + + + 16 + diff --git a/src/mumble/AudioOutput.ui b/src/mumble/AudioOutput.ui index e52d6141e..81c79e78b 100644 --- a/src/mumble/AudioOutput.ui +++ b/src/mumble/AudioOutput.ui @@ -5,8 +5,8 @@ 0 0 - 383 - 543 + 321 + 504 @@ -32,7 +32,7 @@ - + 0 0 @@ -74,8 +74,8 @@ - - 0 + + 1 0 @@ -85,6 +85,12 @@ <b>This is the output method to use for audio.</b><br />Most likely you want to use DirectSound. + + QComboBox::AdjustToMinimumContentsLength + + + 16 + @@ -187,23 +193,6 @@ - - - - Other Applications - - - qsVolume - - - - - - - TextLabel - - - @@ -243,6 +232,23 @@ + + + + TextLabel + + + + + + + Other Applications + + + qsVolume + + + @@ -263,18 +269,6 @@ - label_17 - qsJitter - qlJitter - label_7 - qsVolume - qlVolume - label_6 - qsDelay - qlDelay - qlOtherVolume - label_12 - qsOtherVolume diff --git a/src/mumble/ConfigDialog.cpp b/src/mumble/ConfigDialog.cpp index f1b2895aa..66c2a69d8 100644 --- a/src/mumble/ConfigDialog.cpp +++ b/src/mumble/ConfigDialog.cpp @@ -126,6 +126,9 @@ ConfigDialog::ConfigDialog(QWidget *p) : QDialog(p) { restoreButton->setWhatsThis(tr("This button will restore the settings for the current page only to their defaults. Other pages will be not be changed.
" "To restore all settings to their defaults, you will have to use this button on every page." )); + + if (! g.s.qbaConfigGeometry.isEmpty()) + restoreGeometry(g.s.qbaConfigGeometry); } void ConfigDialog::addPage(ConfigWidget *cw, unsigned int idx) { @@ -246,5 +249,6 @@ void ConfigDialog::apply() { void ConfigDialog::accept() { apply(); + g.s.qbaConfigGeometry=saveGeometry(); QDialog::accept(); } diff --git a/src/mumble/ConfigDialog.ui b/src/mumble/ConfigDialog.ui index e2f530a47..6599c1ed3 100644 --- a/src/mumble/ConfigDialog.ui +++ b/src/mumble/ConfigDialog.ui @@ -5,8 +5,8 @@ 0 0 - 449 - 108 + 600 + 200
diff --git a/src/mumble/Settings.cpp b/src/mumble/Settings.cpp index 8219ccfb2..8976e05b5 100644 --- a/src/mumble/Settings.cpp +++ b/src/mumble/Settings.cpp @@ -276,6 +276,7 @@ void Settings::load() { SAVELOAD(qbaMainWindowGeometry, "ui/geometry"); SAVELOAD(qbaMainWindowState, "ui/state"); SAVELOAD(qbaMinimalViewGeometry, "ui/minimalviewgeometry"); + SAVELOAD(qbaConfigGeometry, "ui/ConfigGeometry"); SAVELOAD(qbaSplitterState, "ui/splitter"); SAVELOAD(qbaHeaderState, "ui/header"); SAVELOAD(qsUsername, "ui/username"); @@ -412,6 +413,7 @@ void Settings::save() { SAVELOAD(qbaMainWindowGeometry, "ui/geometry"); SAVELOAD(qbaMainWindowState, "ui/state"); SAVELOAD(qbaMinimalViewGeometry, "ui/minimalviewgeometry"); + SAVELOAD(qbaConfigGeometry, "ui/ConfigGeometry"); SAVELOAD(qbaSplitterState, "ui/splitter"); SAVELOAD(qbaHeaderState, "ui/header"); SAVELOAD(qsUsername, "ui/username"); diff --git a/src/mumble/Settings.h b/src/mumble/Settings.h index f194e214b..544b1a15f 100644 --- a/src/mumble/Settings.h +++ b/src/mumble/Settings.h @@ -117,6 +117,7 @@ struct Settings { QString qsSkin; bool bFirstTime; QByteArray qbaMainWindowGeometry, qbaMainWindowState, qbaMinimalViewGeometry, qbaSplitterState, qbaHeaderState; + QByteArray qbaConfigGeometry; ChannelExpand ceExpand; ChannelDrag ceChannelDrag; bool bMinimalView;