annotate widgets/ModelDataTableDialog.h @ 967:faa8532e4f02

Fix arithmetic precedence misreading goof which led to scrolling the wrong way when dragging past the right edge
author Chris Cannam
date Thu, 21 May 2015 14:41:28 +0100
parents 4a578a360011
children 0ded54e94332
rev   line source
Chris@392 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@392 2
Chris@392 3 /*
Chris@392 4 Sonic Visualiser
Chris@392 5 An audio file viewer and annotation editor.
Chris@392 6 Centre for Digital Music, Queen Mary, University of London.
Chris@392 7 This file copyright 2008 QMUL.
Chris@392 8
Chris@392 9 This program is free software; you can redistribute it and/or
Chris@392 10 modify it under the terms of the GNU General Public License as
Chris@392 11 published by the Free Software Foundation; either version 2 of the
Chris@392 12 License, or (at your option) any later version. See the file
Chris@392 13 COPYING included with this distribution for more information.
Chris@392 14 */
Chris@392 15
Chris@392 16 #ifndef _MODEL_DATA_TABLE_DIALOG_H_
Chris@392 17 #define _MODEL_DATA_TABLE_DIALOG_H_
Chris@392 18
Chris@396 19 #include <QMainWindow>
Chris@392 20
Chris@908 21 #include "base/BaseTypes.h"
Chris@908 22
Chris@395 23 class TabularModel;
Chris@392 24 class ModelDataTableModel;
Chris@392 25 class QTableView;
Chris@393 26 class QModelIndex;
Chris@393 27 class Command;
Chris@404 28 class QToolBar;
Chris@552 29 class QLineEdit;
Chris@392 30
Chris@396 31 class ModelDataTableDialog : public QMainWindow
Chris@392 32 {
Chris@392 33 Q_OBJECT
Chris@392 34
Chris@392 35 public:
Chris@404 36 ModelDataTableDialog(TabularModel *model,
Chris@404 37 QString title, QWidget *parent =0);
Chris@392 38 ~ModelDataTableDialog();
Chris@392 39
Chris@404 40 QToolBar *getPlayToolbar() { return m_playToolbar; }
Chris@404 41
Chris@394 42 signals:
Chris@908 43 void scrollToFrame(sv_frame_t frame);
Chris@394 44
Chris@393 45 public slots:
Chris@908 46 void userScrolledToFrame(sv_frame_t frame);
Chris@908 47 void playbackScrolledToFrame(sv_frame_t frame);
Chris@400 48 void addCommand(Command *);
Chris@393 49
Chris@393 50 protected slots:
Chris@393 51 void viewClicked(const QModelIndex &);
Chris@393 52 void viewPressed(const QModelIndex &);
Chris@400 53 void currentChanged(const QModelIndex &, const QModelIndex &);
Chris@401 54 void currentChangedThroughResort(const QModelIndex &);
Chris@552 55 void searchTextChanged(const QString &);
Chris@552 56 void searchRepeated();
Chris@399 57
Chris@399 58 void insertRow();
Chris@400 59 void deleteRows();
Chris@399 60 void editRow();
Chris@402 61 void togglePlayTracking();
Chris@393 62
Chris@428 63 void modelRemoved();
Chris@428 64
Chris@392 65 protected:
Chris@401 66 void makeCurrent(int row);
Chris@392 67 ModelDataTableModel *m_table;
Chris@404 68 QToolBar *m_playToolbar;
Chris@392 69 QTableView *m_tableView;
Chris@552 70 QLineEdit *m_find;
Chris@400 71 int m_currentRow;
Chris@401 72 bool m_trackPlayback;
Chris@392 73 };
Chris@392 74
Chris@392 75 #endif