diff options
Diffstat (limited to 'src/selection.h')
-rw-r--r-- | src/selection.h | 154 |
1 files changed, 65 insertions, 89 deletions
diff --git a/src/selection.h b/src/selection.h index c6c7ecc..7d4d677 100644 --- a/src/selection.h +++ b/src/selection.h @@ -24,112 +24,88 @@ * along with DrumGizmo; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#ifndef __DRUMGIZMO_SELECTION_H__ -#define __DRUMGIZMO_SELECTION_H__ +#pragma once #include <QObject> #include <QMap> #include <QVector> -class Selection { +class Selection +{ public: - Selection(int from = 0, int to = 0, int fadein = 0, int fadeout = 0) { - this->from = from; - this->to = to; - this->fadein = fadein; - this->fadeout = fadeout; - } - size_t from; - size_t to; - size_t fadein; - size_t fadeout; - - double energy; - - QString name; + Selection(int from = 0, int to = 0, int fadein = 0, int fadeout = 0) + { + this->from = from; + this->to = to; + this->fadein = fadein; + this->fadeout = fadeout; + } + size_t from; + size_t to; + size_t fadein; + size_t fadeout; + + double energy; + + QString name; }; typedef int sel_id_t; #define SEL_NONE -1 -class Selections : public QObject { -Q_OBJECT +class Selections + : public QObject +{ + Q_OBJECT public: - Selections(); - - /** - * Add a new selection object. The new id is returned. - * Adding a new selections will emit an added signal with the new id. - */ - sel_id_t add(Selection selection); - - /** - * Get a stack copy of a specific selection object, by id. - * NOTE: If id does not exist an empty selection (from = to = 0) is - * returned. - */ - Selection get(sel_id_t id); - - /** - * Return vector (unsorted) of all ids in the object. - */ - QVector<sel_id_t> ids(); - - /** - * Set active selection (to be rendered yellow) - */ - void setActive(sel_id_t id); - - /** - * Get active selection id. - */ - sel_id_t active(); + Selections(); + + //! Add a new selection object. The new id is returned. + //! Adding a new selections will emit an added signal with the new id. + sel_id_t add(Selection selection); + + //! Get a stack copy of a specific selection object, by id. + //! NOTE: If id does not exist an empty selection (from = to = 0) is + //! returned. + Selection get(sel_id_t id); + + //! Return vector (unsorted) of all ids in the object. + QVector<sel_id_t> ids(); + + //! Set active selection (to be rendered yellow) + void setActive(sel_id_t id); + + //! Get active selection id. + sel_id_t active(); public slots: - /** - * Update a selection by id. - * Updating a selection will emit a updated signal. - */ - void update(sel_id_t id, Selection selection); - - /** - * Delete a selection by id. - * Deleting a selection will emit a deleted signal. - */ - void remove(sel_id_t id); - - /** - * Delete all selections - */ - void clear(); + //! Update a selection by id. + //! Updating a selection will emit a updated signal. + void update(sel_id_t id, Selection selection); + + //! Delete a selection by id. + //! Deleting a selection will emit a deleted signal. + void remove(sel_id_t id); + + //! Delete all selections + void clear(); signals: - /** - * This signal is emitted when a new selection has been added. - */ - void added(sel_id_t id); - - /** - * This signal is emitted when an existing selection has been updated. - */ - void updated(sel_id_t id); - - /** - * This signal is emitted when a selection has been removed. - */ - void removed(sel_id_t id); - - /** - * The active selection changed. - */ - void activeChanged(sel_id_t id); + //! This signal is emitted when a new selection has been added. + void added(sel_id_t id); -private: - QMap<sel_id_t, Selection> sels; - sel_id_t nextid; - sel_id_t act; -}; + //! This signal is emitted when an existing selection has been updated. + void updated(sel_id_t id); + //! This signal is emitted when a selection has been removed. + void removed(sel_id_t id); -#endif/*__DRUMGIZMO_SELECTION_H__*/ + //! The active selection changed. + void activeChanged(sel_id_t id); + +private: + QMap<sel_id_t, Selection> sels; + sel_id_t nextid; + sel_id_t act; +}; |