1 /***************************************************************************
2 effecstackview.h - description
5 copyright : (C) 2008 by Marco Gittler
6 email : g.marco@freenet.de
7 ***************************************************************************/
9 /***************************************************************************
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
16 ***************************************************************************/
19 * @class EffectStackView
20 * @brief View part of the EffectStack
21 * @author Marco Gittler
24 #ifndef EFFECTSTACKVIEW_H
25 #define EFFECTSTACKVIEW_H
27 #include "ui_effectstack_ui.h"
28 #include "effectstackedit.h"
32 class MltVideoProfile;
34 class EffectStackView : public QWidget
39 EffectStackView(QWidget *parent = 0);
40 virtual ~EffectStackView();
41 void raiseWindow(QWidget*);
43 void setMenu(QMenu *menu);
44 void updateProjectFormat(MltVideoProfile profile, Timecode t);
45 void updateTimecodeFormat();
48 Ui::EffectStack_UI m_ui;
50 QMap<QString, EffectsList*> m_effectLists;
51 EffectStackEdit* m_effectedit;
52 void setupListView(int ix);
53 //void updateButtonStatus();
56 void slotClipItemSelected(ClipItem*, int ix);
57 void slotUpdateEffectParams(const QDomElement, const QDomElement);
58 /** @brief Remove selected effect. */
62 void slotItemSelectionChanged(bool update = true);
65 void slotResetEffect();
66 void slotItemChanged(QListWidgetItem *item);
67 void slotSaveEffect();
68 void slotSeekTimeline(int pos);
71 void removeEffect(ClipItem*, QDomElement);
72 /** Parameters for an effect changed, update the filter in playlist */
73 void updateClipEffect(ClipItem*, QDomElement, QDomElement, int);
74 /** An effect in stack was moved, we need to regenerate
75 all effects for this clip in the playlist */
76 void refreshEffectStack(ClipItem *);
77 /** Enable or disable an effect */
78 void changeEffectState(ClipItem*, int, bool);
79 /** An effect in stack was moved */
80 void changeEffectPosition(ClipItem*, int, int);
81 /** an effect was saved, reload list */
83 /** An effect with position parameter was changed, seek */
84 void seekTimeline(int);