]> git.cworth.org Git - vogl/blob - src/vogleditor/vogleditor_statetreearbprogramenvitem.h
Initial vogl checkin
[vogl] / src / vogleditor / vogleditor_statetreearbprogramenvitem.h
1 #ifndef VOGLEDITOR_STATETREEARBPROGRAMENVITEM_H
2 #define VOGLEDITOR_STATETREEARBPROGRAMENVITEM_H
3
4 #include "vogleditor_statetreeitem.h"
5
6 class vogl_arb_program_environment_state;
7
8 class vogleditor_stateTreeArbProgramEnvItem : public vogleditor_stateTreeItem
9 {
10 public:
11    vogleditor_stateTreeArbProgramEnvItem(QString name, unsigned int index, vogleditor_stateTreeItem* parent, vogl_arb_program_environment_state& state);
12    virtual ~vogleditor_stateTreeArbProgramEnvItem() { m_pState = NULL; m_pDiffBaseState = NULL; }
13
14    vogl_arb_program_environment_state* get_current_state() const { return m_pState; }
15    const vogl_arb_program_environment_state* get_base_state() const { return m_pDiffBaseState; }
16
17    virtual void set_diff_base_state(const vogl_arb_program_environment_state* pBaseState)
18    {
19        m_pDiffBaseState = pBaseState;
20    }
21
22    virtual bool hasChanged() const;
23
24 private:
25    unsigned int m_index;
26    vogl_arb_program_environment_state* m_pState;
27    const vogl_arb_program_environment_state* m_pDiffBaseState;
28 };
29
30 #endif // VOGLEDITOR_STATETREEARBPROGRAMENVITEM_H