00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00027 #ifndef __vtkKWChangeColorButton_h
00028 #define __vtkKWChangeColorButton_h
00029
00030 #include "vtkKWWidgetWithLabel.h"
00031
00032 class vtkKWFrame;
00033
00034 class KWWIDGETS_EXPORT vtkKWChangeColorButton : public vtkKWWidgetWithLabel
00035 {
00036 public:
00037 static vtkKWChangeColorButton* New();
00038 vtkTypeRevisionMacro(vtkKWChangeColorButton,vtkKWWidgetWithLabel);
00039 void PrintSelf(ostream& os, vtkIndent indent);
00040
00042 virtual void Create(vtkKWApplication *app);
00043
00045
00046 virtual void SetColor(double c[3]) {this->SetColor(c[0], c[1], c[2]);};
00047 virtual void SetColor(double r, double g, double b);
00048 virtual double *GetColor() {return this->Color;};
00050
00052
00054 vtkSetStringMacro(DialogTitle);
00055 vtkGetStringMacro(DialogTitle);
00057
00060 virtual void SetCommand(vtkObject *obj, const char *method);
00061
00064 virtual void SetBalloonHelpString(const char *str);
00065
00067
00068 virtual void SetLabelOutsideButton(int);
00069 vtkGetMacro(LabelOutsideButton, int);
00070 vtkBooleanMacro(LabelOutsideButton, int);
00072
00074
00075 virtual void ButtonPressCallback();
00076 virtual void ButtonReleaseCallback();
00078
00085 virtual void UpdateEnableState();
00086
00087 protected:
00088 vtkKWChangeColorButton();
00089 ~vtkKWChangeColorButton();
00090
00091 vtkKWLabel *ColorButton;
00092 vtkKWFrame *ButtonFrame;
00093
00094 char *Command;
00095 char *DialogTitle;
00096 double Color[3];
00097 int LabelOutsideButton;
00098
00100
00101 virtual void Bind();
00102 virtual void UnBind();
00104
00107 virtual void UpdateColorButton();
00108
00110 virtual void QueryUserForColor();
00111
00113 virtual void Pack();
00114
00116 virtual void CreateLabel(vtkKWApplication *app);
00117
00119 virtual void CreateButtonFrame(vtkKWApplication *app);
00120
00121 private:
00122
00123 int ButtonDown;
00124
00125 vtkKWChangeColorButton(const vtkKWChangeColorButton&);
00126 void operator=(const vtkKWChangeColorButton&);
00127 };
00128
00129 #endif
00130