diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-03-01 18:37:05 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-03-01 18:37:05 +0000 |
commit | 145364a8af6a1fec06556221e66d4b724a62fc9a (patch) | |
tree | 53bd71a544008c518034f208d64c932dc2883f50 /src/gui/dialogs/AddTracksDialog.cpp | |
download | rosegarden-145364a8af6a1fec06556221e66d4b724a62fc9a.tar.gz rosegarden-145364a8af6a1fec06556221e66d4b724a62fc9a.zip |
Added old abandoned KDE3 version of the RoseGarden MIDI tool
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/rosegarden@1097595 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/gui/dialogs/AddTracksDialog.cpp')
-rw-r--r-- | src/gui/dialogs/AddTracksDialog.cpp | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/src/gui/dialogs/AddTracksDialog.cpp b/src/gui/dialogs/AddTracksDialog.cpp new file mode 100644 index 0000000..67e5412 --- /dev/null +++ b/src/gui/dialogs/AddTracksDialog.cpp @@ -0,0 +1,110 @@ +/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ + +/* + Rosegarden + A MIDI and audio sequencer and musical notation editor. + + This program is Copyright 2000-2008 + Guillaume Laurent <[email protected]>, + Chris Cannam <[email protected]>, + Richard Bown <[email protected]> + + The moral rights of Guillaume Laurent, Chris Cannam, and Richard + Bown to claim authorship of this work have been asserted. + + Other copyrights also apply to some parts of this work. Please + see the AUTHORS file and individual file headers for details. + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. See the file + COPYING included with this distribution for more information. +*/ + + +#include "AddTracksDialog.h" + +#include <klocale.h> +#include <kdialogbase.h> +#include <qhbox.h> +#include <qlabel.h> +#include <qspinbox.h> +#include <kcombobox.h> +#include <qvbox.h> +#include <qwidget.h> +#include <kapp.h> +#include <kconfig.h> + +#include "document/ConfigGroups.h" + + +namespace Rosegarden +{ + +AddTracksDialog::AddTracksDialog(QWidget *parent, int currentTrack) : + KDialogBase(parent, 0, true, i18n("Add Tracks"), + Ok | Cancel), + m_currentTrack(currentTrack) +{ + QVBox *vBox = makeVBoxMainWidget(); + + QHBox *countBox = new QHBox(vBox); + countBox->setSpacing(4); + new QLabel(i18n("How many tracks do you want to add?"), countBox); + m_count = new QSpinBox(countBox); + m_count->setMinValue(1); + m_count->setMaxValue(32); + m_count->setValue(1); + + QHBox *posBox = new QHBox(vBox); + posBox->setSpacing(4); + new QLabel(i18n("Add tracks"), posBox); + m_position = new KComboBox(posBox); + m_position->insertItem(i18n("At the top")); + m_position->insertItem(i18n("Above the current selected track")); + m_position->insertItem(i18n("Below the current selected track")); + m_position->insertItem(i18n("At the bottom")); + + KConfig *config = kapp->config(); + config->setGroup(GeneralOptionsConfigGroup); + m_position->setCurrentItem(config->readUnsignedNumEntry("lastaddtracksposition", 2)); +} + +int +AddTracksDialog::getTracks() +{ + return m_count->value(); +} + +int +AddTracksDialog::getInsertPosition() +{ + int opt = m_position->currentItem(); + + KConfig *config = kapp->config(); + config->setGroup(GeneralOptionsConfigGroup); + config->writeEntry("lastaddtracksposition", opt); + + int pos = 0; + + switch (opt) { + case 0: // at top + pos = 0; + break; + case 1: // above current track + pos = m_currentTrack; + break; + case 2: // below current track + pos = m_currentTrack + 1; + break; + case 3: // at bottom + pos = -1; + break; + } + + return pos; +} + +} +#include "AddTracksDialog.moc" |