/***************************************************************************
 * rythmer.h: implementation of Rythmer class
 *
 * This file is part of KTabEdit, a KDE tabulature editor
 *
 * copyright (C) 2003-2006 the KTabEdit development team <mrgwen@gmail.com>
 * copyright (C) 2002-2003 the KGuitar development team <mrgwen@gmail.com>
 ***************************************************************************/

/***************************************************************************
 * 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 for more information.
 ***************************************************************************/

#ifndef RHYTHMER_H
#define RHYTHMER_H

#include "global.h"

#include <QDialog>
#include <QWidget>
#include <QTreeWidget>
#include <QSpinBox>
#include <QCheckBox>
#include <QPushButton>
#include <QTime>

/*!
	This class allows the user to tap a rhythm.
*/
class Rhythmer: public QDialog {
    Q_OBJECT
public:
	/*!
		TODO
	*/
	Rhythmer(QWidget *parent);
	
	/*!
		TODO Private
	*/
	
public slots:
	/*!
		TODO
	*/
	void tap();
	
	/*!
		TODO
	*/
	void reset();
	
	/*!
		TODO
	*/
	void quantize();
	
	/*!
		TODO
	*/
	void tempoState(bool state);
private:
	QTreeWidget *quantized;
	QTreeWidget *original;
	QSpinBox *tempo;
	QCheckBox *temponew, *dotted, *triplet;

	QPushButton *resetButton, *tapButton, *quantizeButton;

	QTime time;
};

#endif
