00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00026 #ifndef __vtkKWWidgetSet_h
00027 #define __vtkKWWidgetSet_h
00028
00029 #include "vtkKWCompositeWidget.h"
00030
00031 class vtkKWApplication;
00032 class vtkKWWidget;
00033 class vtkKWWidgetSetInternals;
00034
00035 class KWWIDGETS_EXPORT vtkKWWidgetSet : public vtkKWCompositeWidget
00036 {
00037 public:
00038 vtkTypeRevisionMacro(vtkKWWidgetSet,vtkKWCompositeWidget);
00039 void PrintSelf(ostream& os, vtkIndent indent);
00040
00042 virtual void Create(vtkKWApplication *app);
00043
00045 virtual int GetNumberOfWidgets();
00046
00048 virtual int GetNthWidgetId(int rank);
00049
00052 virtual int HasWidget(int id);
00053
00055
00057 virtual void HideWidget(int id);
00058 virtual void ShowWidget(int id);
00059 virtual int GetWidgetVisibility(int id);
00060 virtual void SetWidgetVisibility(int id, int flag);
00061 virtual int GetNumberOfVisibleWidgets();
00063
00065 virtual void DeleteAllWidgets();
00066
00068
00069 virtual void SetPackHorizontally(int);
00070 vtkBooleanMacro(PackHorizontally, int);
00071 vtkGetMacro(PackHorizontally, int);
00073
00075
00080 virtual void SetMaximumNumberOfWidgetsInPackingDirection(int);
00081 vtkGetMacro(MaximumNumberOfWidgetsInPackingDirection, int);
00083
00085
00087 virtual void SetWidgetsPadX(int);
00088 vtkGetMacro(WidgetsPadX, int);
00089 virtual void SetWidgetsPadY(int);
00090 vtkGetMacro(WidgetsPadY, int);
00092
00094
00096 virtual void SetWidgetsInternalPadX(int);
00097 vtkGetMacro(WidgetsInternalPadX, int);
00098 virtual void SetWidgetsInternalPadY(int);
00099 vtkGetMacro(WidgetsInternalPadY, int);
00101
00103
00104 virtual void SetExpandWidgets(int);
00105 vtkBooleanMacro(ExpandWidgets, int);
00106 vtkGetMacro(ExpandWidgets, int);
00108
00115 virtual void UpdateEnableState();
00116
00117 protected:
00118 vtkKWWidgetSet();
00119 ~vtkKWWidgetSet();
00120
00121 int PackHorizontally;
00122 int MaximumNumberOfWidgetsInPackingDirection;
00123 int WidgetsPadX;
00124 int WidgetsPadY;
00125 int WidgetsInternalPadX;
00126 int WidgetsInternalPadY;
00127 int ExpandWidgets;
00128
00129
00132 virtual vtkKWWidget* AllocateAndCreateWidget() = 0;
00133
00134
00135
00136
00137 vtkKWWidgetSetInternals *Internals;
00138
00139
00140
00141
00142 virtual vtkKWWidget* GetWidgetInternal(int id);
00143 virtual vtkKWWidget* AddWidgetInternal(int id);
00144
00146 virtual void Pack();
00147
00148 private:
00149 vtkKWWidgetSet(const vtkKWWidgetSet&);
00150 void operator=(const vtkKWWidgetSet&);
00151 };
00152
00153 #endif