00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00022 #ifndef __vtkKWPopupButton_h
00023 #define __vtkKWPopupButton_h
00024
00025 #include "vtkKWPushButton.h"
00026
00027 class vtkKWFrame;
00028 class vtkKWTopLevel;
00029
00030 class KWWIDGETS_EXPORT vtkKWPopupButton : public vtkKWPushButton
00031 {
00032 public:
00033 static vtkKWPopupButton* New();
00034 vtkTypeRevisionMacro(vtkKWPopupButton, vtkKWPushButton);
00035 void PrintSelf(ostream& os, vtkIndent indent);
00036
00038 virtual void Create(vtkKWApplication *app);
00039
00041
00043 vtkGetObjectMacro(PopupTopLevel, vtkKWTopLevel);
00044 vtkGetObjectMacro(PopupFrame, vtkKWFrame);
00045 vtkGetObjectMacro(PopupCloseButton, vtkKWPushButton);
00047
00049
00050 virtual void DisplayPopupCallback();
00051 virtual void WithdrawPopupCallback();
00053
00055 virtual void SetPopupTitle(const char* title);
00056
00063 virtual void UpdateEnableState();
00064
00066
00067 virtual void SetWithdrawCommand(vtkObject* obj, const char* command);
00068 vtkSetStringMacro(WithdrawCommand);
00069 vtkGetStringMacro(WithdrawCommand);
00071
00072 protected:
00073 vtkKWPopupButton();
00074 ~vtkKWPopupButton();
00075
00076 vtkKWTopLevel *PopupTopLevel;
00077 vtkKWFrame *PopupFrame;
00078 vtkKWPushButton *PopupCloseButton;
00079
00080 char* WithdrawCommand;
00081
00082 virtual void Bind();
00083 virtual void UnBind();
00084
00085 private:
00086 vtkKWPopupButton(const vtkKWPopupButton&);
00087 void operator=(const vtkKWPopupButton&);
00088 };
00089
00090 #endif
00091