diff options
Diffstat (limited to 'muse_qt4_evolution/muse/marker')
-rw-r--r-- | muse_qt4_evolution/muse/marker/CMakeLists.txt | 45 | ||||
-rw-r--r-- | muse_qt4_evolution/muse/marker/markerview.cpp | 413 | ||||
-rw-r--r-- | muse_qt4_evolution/muse/marker/markerview.h | 98 |
3 files changed, 0 insertions, 556 deletions
diff --git a/muse_qt4_evolution/muse/marker/CMakeLists.txt b/muse_qt4_evolution/muse/marker/CMakeLists.txt deleted file mode 100644 index d031533c..00000000 --- a/muse_qt4_evolution/muse/marker/CMakeLists.txt +++ /dev/null @@ -1,45 +0,0 @@ -# -# -# -# - -MACRO(WRAP_CPP outfiles ) - FOREACH(it ${ARGN}) - SET(${outfiles} ${${outfiles}} ${it}.cpp) - ENDFOREACH(it) - ENDMACRO(WRAP_CPP) - -MACRO(WRAP_H outfiles ) - FOREACH(it ${ARGN}) - SET(${outfiles} ${${outfiles}} ${it}.h) - ENDFOREACH(it) - ENDMACRO(WRAP_H) - -MACRO(WRAP_UI outfiles ) - FOREACH(it ${ARGN}) - SET(${outfiles} ${${outfiles}} ${it}.ui) - ENDFOREACH(it) - ENDMACRO(WRAP_UI) - -set(mocs - markerview - ) - -WRAP_H(mocH ${mocs}) -WRAP_CPP(mocCPP ${mocs}) - -QT4_WRAP_CPP (moc_headers ${mocH}) - -set (uics - ) - -WRAP_UI(uiUI ${uics}) -QT4_WRAP_UI (ui_headers ${uiUI}) - -set ( marker_src ${mocCPP} ${moc_headers}) - -add_library ( marker STATIC ${marker_src}) -set_target_properties( marker - PROPERTIES COMPILE_FLAGS "-include ${PROJECT_BINARY_DIR}/all.h" - ) - diff --git a/muse_qt4_evolution/muse/marker/markerview.cpp b/muse_qt4_evolution/muse/marker/markerview.cpp deleted file mode 100644 index 7cab2d02..00000000 --- a/muse_qt4_evolution/muse/marker/markerview.cpp +++ /dev/null @@ -1,413 +0,0 @@ -//============================================================================= -// MusE -// Linux Music Editor -// $Id:$ -// -// Copyright (C) 2002-2006 by Werner Schweer and others -// -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License version 2. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -//============================================================================= - -#include "markerview.h" -#include "globals.h" -#include "sync.h" -#include "icons.h" -#include "song.h" -#include "awl/posedit.h" -#include "al/al.h" -#include "al/xml.h" -#include "al/sig.h" -#include "al/tempo.h" -#include "al/marker.h" -#include "shortcuts.h" - -enum { COL_TICK = 0, COL_SMPTE, COL_LOCK, COL_NAME }; - -//--------------------------------------------------------- -// tick -//--------------------------------------------------------- - -unsigned MarkerItem::tick() const - { - return _marker->tick(); - } - -//--------------------------------------------------------- -// name -//--------------------------------------------------------- - -const QString MarkerItem::name() const - { - return _marker->name(); - } - -//--------------------------------------------------------- -// lock -//--------------------------------------------------------- - -bool MarkerItem::lock() const - { - return _marker->type() == AL::FRAMES; - } - -//--------------------------------------------------------- -// MarkerItem -//--------------------------------------------------------- - -MarkerItem::MarkerItem(QTreeWidget* parent, AL::Marker* m) - : QTreeWidgetItem(parent) - { - _marker = m; - setText(COL_NAME, m->name()); - setTick(m->tick()); - setIcon(COL_LOCK, m->type() == AL::FRAMES ? *lockIcon : QIcon()); - } - -//--------------------------------------------------------- -// setName -//--------------------------------------------------------- - -void MarkerItem::setName(const QString& s) - { - setText(COL_NAME, s); - _marker = song->setMarkerName(_marker, s); - } - -//--------------------------------------------------------- -// setLock -//--------------------------------------------------------- - -void MarkerItem::setLock(bool lck) - { - setIcon(COL_LOCK, lck ? *lockIcon : QIcon()); - _marker = song->setMarkerLock(_marker, lck); - } - -//--------------------------------------------------------- -// setTick -//--------------------------------------------------------- - -void MarkerItem::setTick(unsigned v) - { - if (_marker->tick() != v) - _marker = song->setMarkerTick(_marker, v); - QString s; - int bar, beat; - int tick; - _marker->mbt(&bar, &beat, &tick); - s.sprintf("%04d.%02d.%03d", bar+1, beat+1, tick); - setText(COL_TICK, s); - - int min, sec, frame, subframe; - _marker->msf(&min, &sec, &frame, &subframe); - - s.sprintf("%03d:%02d:%02d:%02d", min, sec, frame, subframe); - setText(COL_SMPTE, s); - } - -//--------------------------------------------------------- -// MarkerView -//--------------------------------------------------------- - -MarkerView::MarkerView() - : TopWin() - { - lockChange = false; - setWindowTitle(tr("MusE: Marker")); - - //---------Actions---------------------------- - QAction* markerAdd = new QAction(QIcon(*flagIcon), tr("add marker"), this); - markerAdd->setToolTip(tr("Add Marker")); - connect(markerAdd, SIGNAL(triggered()), SLOT(addMarker())); - - QAction* markerDelete = getAction("delete", this); - connect(markerDelete, SIGNAL(triggered()), SLOT(deleteMarker())); - - //---------Pulldown Menu---------------------------- - QMenuBar* mb = menuBar(); - - QMenu* editMenu = mb->addMenu(tr("&Edit")); - editMenu->addAction(markerAdd); - editMenu->addAction(markerDelete); - - //---------ToolBar---------------------------------- - QToolBar* tools = addToolBar(tr("marker-tools")); - tools->addAction(undoAction); - tools->addAction(redoAction); - - QToolBar* edit = addToolBar(tr("edit tools")); - edit->addAction(markerAdd); - edit->addAction(markerDelete); - - //--------------------------------------------------- - // master - //--------------------------------------------------- - - QWidget* w = new QWidget; - setCentralWidget(w); - QVBoxLayout* vbox = new QVBoxLayout; - w->setLayout(vbox); - - table = new QTreeWidget; - table->setUniformRowHeights(true); - table->setAlternatingRowColors(true); - table->setSelectionBehavior(QAbstractItemView::SelectRows); - table->setSelectionMode(QTreeWidget::SingleSelection); - table->setSortingEnabled(false); - table->setIndentation(0); - QStringList labels; - labels << tr("Bar:Beat:Tick") - << tr("Min:Sc:Fr:Sf") - << tr("Lock") - << tr("Text"); - table->setHeaderLabels(labels); - - table->header()->resizeSection(0, 120); - table->header()->resizeSection(1, 120); - table->header()->resizeSection(2, 50); - table->header()->resizeSection(3, 200); -// table->header()->resizeSection(mnWidthMode(3, QTreeWidget::Maximum); - connect(table, SIGNAL(currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)), SLOT(currentChanged(QTreeWidgetItem*))); - connect(table, SIGNAL(itemSelectionChanged()), SLOT(selectionChanged())); - connect(table, SIGNAL(itemClicked(QTreeWidgetItem*,int)), SLOT(clicked(QTreeWidgetItem*))); - - QGroupBox* props = new QGroupBox(tr("Marker Properties")); - QHBoxLayout* propsLayout = new QHBoxLayout; - props->setLayout(propsLayout); - - editTick = new Awl::PosEdit; - propsLayout->addWidget(editTick); - editTick->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, - QSizePolicy::Fixed)); - - editSMPTE = new Awl::PosEdit; - propsLayout->addWidget(editSMPTE); - editSMPTE->setSmpte(true); - editSMPTE->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, - QSizePolicy::Fixed)); - - lock = new QToolButton; - propsLayout->addWidget(lock); - lock->setIcon(*lockIcon); - lock->setCheckable(true); - - editName = new QLineEdit; - propsLayout->addWidget(editName); - editName->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, - QSizePolicy::Preferred)); - connect(editName, SIGNAL(textChanged(const QString&)), - SLOT(nameChanged(const QString&))); - connect(editTick, SIGNAL(valueChanged(const Pos&)), - SLOT(tickChanged(const Pos&))); - connect(editSMPTE, SIGNAL(valueChanged(const Pos&)), - SLOT(tickChanged(const Pos&))); - connect(editSMPTE, SIGNAL(valueChanged(const Pos&)), - editTick, SLOT(setValue(const Pos&))); - connect(editTick, SIGNAL(valueChanged(const Pos&)), - editSMPTE, SLOT(setValue(const Pos&))); - connect(lock, SIGNAL(toggled(bool)), - SLOT(lockChanged(bool))); - connect(song, SIGNAL(markerChanged(int)), SLOT(markerChanged(int))); - - vbox->addWidget(table); - vbox->addWidget(props); - - //--------------------------------------------------- - // Rest - //--------------------------------------------------- - -// connect(song, SIGNAL(songChanged(int)), SLOT(updateList())); - updateList(); - markerChanged(Song::MARKER_CUR); // select current marker - } - -//--------------------------------------------------------- -// addMarker -//--------------------------------------------------------- - -void MarkerView::addMarker() - { - addMarker(song->cPos()); - } - -void MarkerView::addMarker(const AL::Pos& pos) - { -// new MarkerItem(table, m); - song->addMarker(QString(""), pos); - table->sortItems(0, Qt::AscendingOrder); - } - -//--------------------------------------------------------- -// deleteMarker -//--------------------------------------------------------- - -void MarkerView::deleteMarker() - { - MarkerItem* item = (MarkerItem*)table->currentItem(); - if (item) { - AL::Marker* marker = item->marker(); - delete item; - song->removeMarker(marker); - } - } - -//--------------------------------------------------------- -// updateList -//--------------------------------------------------------- - -void MarkerView::updateList() - { - table->clear(); - AL::MarkerList* marker = song->marker(); - for (AL::iMarker i = marker->begin(); i != marker->end(); ++i) { - AL::Marker* m = &i->second; - new MarkerItem(table, m); - } - } - -//--------------------------------------------------------- -// currentChanged -//--------------------------------------------------------- - -void MarkerView::currentChanged(QTreeWidgetItem* i) - { - MarkerItem* item = (MarkerItem*)i; - if (item == 0) { // never triggered - editTick->setValue(0); - editSMPTE->setValue(0); - editName->setText(QString("")); - lock->setChecked(false); - editSMPTE->setEnabled(false); - editTick->setEnabled(false); - lock->setEnabled(false); - editName->setEnabled(false); - } - else { - editTick->setValue(item->tick()); - editSMPTE->setValue(item->tick()); - editName->setText(item->name()); - editName->setEnabled(true); - lock->setChecked(item->lock()); - lock->setEnabled(true); - editSMPTE->setEnabled(item->lock()); - editTick->setEnabled(!item->lock()); - } - } - -//--------------------------------------------------------- -// selectionChanged -//--------------------------------------------------------- - -void MarkerView::selectionChanged() - { -#if 0 - QList<QTreeWidgetItem*> sel = table->selectedItems(); - if (!sel.empty()) { - MarkerItem* item = (MarkerItem*)(sel[0]); - } -#endif - } - -//--------------------------------------------------------- -// clicked -//--------------------------------------------------------- - -void MarkerView::clicked(QTreeWidgetItem* i) - { - MarkerItem* item = (MarkerItem*)i; - if (item == 0) { - table->clearSelection(); - return; - } - Pos p(item->tick(), AL::TICKS); - song->setPos(0, p, true, true, false); - } - -//--------------------------------------------------------- -// nameChanged -//--------------------------------------------------------- - -void MarkerView::nameChanged(const QString& s) - { - MarkerItem* item = (MarkerItem*)table->currentItem(); - if (item) - item->setName(s); - } - -//--------------------------------------------------------- -// tickChanged -//--------------------------------------------------------- - -void MarkerView::tickChanged(const Pos& pos) - { - MarkerItem* item = (MarkerItem*)table->currentItem(); - if (item) { - lockChange = true; - item->setTick(pos.tick()); - Pos p(pos.tick(), AL::TICKS); - song->setPos(0, p, true, true, false); - lockChange = false; - } - } - -//--------------------------------------------------------- -// lockChanged -//--------------------------------------------------------- - -void MarkerView::lockChanged(bool lck) - { - MarkerItem* item = (MarkerItem*)table->currentItem(); - if (item) { - item->setLock(lck); - editSMPTE->setEnabled(item->lock()); - editTick->setEnabled(!item->lock()); - } - } - -//--------------------------------------------------------- -// markerChanged -//--------------------------------------------------------- - -void MarkerView::markerChanged(int val) - { - if (lockChange) - return; - switch (val) { - case Song::MARKER_ADD: - case Song::MARKER_REMOVE: - updateList(); - // fall through - case Song::MARKER_CUR: - { - AL::MarkerList* marker = song->marker(); - for (AL::iMarker i = marker->begin(); i != marker->end(); ++i) { - if (i->second.current()) { - int n = table->topLevelItemCount(); - for (int k = 0; k < n; ++k) { - MarkerItem* item = (MarkerItem*)(table->topLevelItem(k)); - if (item->marker() == &i->second) { - table->setCurrentItem(item); - return; - } - } - } - } - } - break; - case Song::MARKER_NAME: - case Song::MARKER_TICK: - case Song::MARKER_LOCK: - break; - } - } - diff --git a/muse_qt4_evolution/muse/marker/markerview.h b/muse_qt4_evolution/muse/marker/markerview.h deleted file mode 100644 index 53205e3d..00000000 --- a/muse_qt4_evolution/muse/marker/markerview.h +++ /dev/null @@ -1,98 +0,0 @@ -//============================================================================= -// MusE -// Linux Music Editor -// $Id:$ -// -// Copyright (C) 2002-2006 by Werner Schweer and others -// -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License version 2. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -//============================================================================= - -#ifndef __MARKERVIEW_H__ -#define __MARKERVIEW_H__ - -#include "cobject.h" - -namespace Awl { - class PosEdit; - }; - -namespace AL { - class Pos; - class Xml; - class Marker; - }; -using AL::Pos; -using AL::Xml; - - -//--------------------------------------------------------- -// MarkerItem -//--------------------------------------------------------- - -class MarkerItem : public QTreeWidgetItem { - AL::Marker* _marker; - - public: - MarkerItem(QTreeWidget* parent, AL::Marker* m); - AL::Marker* marker() const { return _marker; } - unsigned tick() const; - const QString name() const; - bool lock() const; - void setName(const QString& s); - void setTick(unsigned t); - void setLock(bool lck); - }; - -//--------------------------------------------------------- -// MarkerView -//--------------------------------------------------------- - -class MarkerView : public TopWin { - Q_OBJECT - - bool lockChange; - - QTreeWidget* table; - QLineEdit* editName; - Awl::PosEdit* editSMPTE; - Awl::PosEdit* editTick; - QToolButton* lock; - - void closeEvent(QCloseEvent* e) { - emit closed(); - QMainWindow::closeEvent(e); - } - - signals: - void closed(); - - private slots: - void addMarker(); - void addMarker(const AL::Pos&); - void deleteMarker(); - void currentChanged(QTreeWidgetItem*); - void selectionChanged(); - void nameChanged(const QString&); - void tickChanged(const Pos&); - void lockChanged(bool); - void markerChanged(int); - void clicked(QTreeWidgetItem*); - void updateList(); - - public: - MarkerView(); - }; - -#endif - |