00001 #ifndef TRANSFERFUNCTIONEDITORIMPL_H
00002 #define TRANSFERFUNCTIONEDITORIMPL_H
00003
00004 #include <qwidget.h>
00005
00006 #include "transferFunction.h"
00007 #include "transferFunctionEditor.h"
00008
00009
00010
00012
00016 class transferFunctionEditorImpl : public transferFunctionEditor
00017 {
00018
00019 public:
00021
00024 transferFunctionEditorImpl (QWidget* parent, const char* name, bool modal, unsigned int histo [256]);
00026
00029 transferFunctionEditorImpl (QWidget* parent, const char* name, bool modal, unsigned int histo [256], transferFunction transFunction);
00031 ~transferFunctionEditorImpl ();
00032 void functionSelectorPressed (QListBoxItem *item);
00033 void nameChanged (const QString &newName);
00034 void colorButtonPressed ();
00035 void opacityChanged (int value);
00036 void beginChanged (int value);
00037 void endChanged (int value);
00038 void slope_leftChanged (int value);
00039 void slope_rightChanged (int value);
00040 void newButtonPressed ();
00041 void deleteButtonPressed ();
00042 void saveButtonPressed ();
00043 void loadButtonPressed ();
00044 void okayButtonPressed ();
00045
00047
00050 bool getExitStatus ();
00052
00055 bool getChanges ();
00057
00060 transferFunction* getTransferFunction ();
00061
00062 private:
00063 void setEnableElements (bool enable);
00064 void setEditorFields ();
00065 void setCurrentValues (transfer_element element);
00066 bool nameChangedExit ();
00067
00068 bool changes, exitStatus, beginChange, endChange, nameChange, deleteChange;
00069 transferFunction *transFunc;
00070 };
00071
00072 #endif // TRANSFERFUNCTIONEDITORIMPL_H