00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00057 #ifndef __vtkKWWidgetSet_h
00058 #define __vtkKWWidgetSet_h
00059
00060 #include "vtkKWCompositeWidget.h"
00061
00062 class vtkKWWidget;
00063 class vtkKWWidgetSetInternals;
00064
00065 class KWWidgets_EXPORT vtkKWWidgetSet : public vtkKWCompositeWidget
00066 {
00067
00068 public:
00069 vtkTypeRevisionMacro(vtkKWWidgetSet,vtkKWCompositeWidget);
00070 void PrintSelf(ostream& os, vtkIndent indent);
00071
00073 virtual int GetNumberOfWidgets();
00074
00076 virtual int GetIdOfNthWidget(int rank);
00077
00080 virtual int HasWidget(int id);
00081
00084 virtual int GetWidgetPosition(int id);
00085
00087
00091 virtual void HideWidget(int id);
00092 virtual void ShowWidget(int id);
00093 virtual int GetWidgetVisibility(int id);
00094 virtual void SetWidgetVisibility(int id, int flag);
00095 virtual int GetNumberOfVisibleWidgets();
00096 virtual int GetIdOfNthVisibleWidget(int rank);
00097 virtual void SetWidgetsVisibility(int nb_ids, int *ids, int *flags);
00099
00101 virtual void DeleteAllWidgets();
00102
00104
00105 virtual void SetPackHorizontally(int);
00106 vtkBooleanMacro(PackHorizontally, int);
00107 vtkGetMacro(PackHorizontally, int);
00109
00111
00116 virtual void SetMaximumNumberOfWidgetsInPackingDirection(int);
00117 vtkGetMacro(MaximumNumberOfWidgetsInPackingDirection, int);
00119
00121
00123 virtual void SetWidgetsPadX(int);
00124 vtkGetMacro(WidgetsPadX, int);
00125 virtual void SetWidgetsPadY(int);
00126 vtkGetMacro(WidgetsPadY, int);
00128
00130
00132 virtual void SetWidgetsInternalPadX(int);
00133 vtkGetMacro(WidgetsInternalPadX, int);
00134 virtual void SetWidgetsInternalPadY(int);
00135 vtkGetMacro(WidgetsInternalPadY, int);
00137
00139
00141 virtual void SetExpandWidgets(int);
00142 vtkBooleanMacro(ExpandWidgets, int);
00143 vtkGetMacro(ExpandWidgets, int);
00145
00147
00149 virtual void SetUniformColumns(int);
00150 vtkBooleanMacro(UniformColumns, int);
00151 vtkGetMacro(UniformColumns, int);
00152 virtual void SetUniformRows(int);
00153 vtkBooleanMacro(UniformRows, int);
00154 vtkGetMacro(UniformRows, int);
00156
00163 virtual void UpdateEnableState();
00164
00165
00166
00167 protected:
00168 vtkKWWidgetSet();
00169 ~vtkKWWidgetSet();
00170
00172 virtual void CreateWidget();
00173
00174 int PackHorizontally;
00175 int MaximumNumberOfWidgetsInPackingDirection;
00176 int WidgetsPadX;
00177 int WidgetsPadY;
00178 int WidgetsInternalPadX;
00179 int WidgetsInternalPadY;
00180 int ExpandWidgets;
00181 int UniformColumns;
00182 int UniformRows;
00183
00186 virtual vtkKWWidget* AllocateAndCreateWidget() = 0;
00187
00188
00189
00190
00191 vtkKWWidgetSetInternals *Internals;
00192
00193
00194
00195
00196 virtual vtkKWWidget* GetWidgetInternal(int id);
00197 virtual vtkKWWidget* InsertWidgetInternal(int id, int pos);
00198
00200 virtual void Pack();
00201
00202
00203
00204 private:
00205 vtkKWWidgetSet(const vtkKWWidgetSet&);
00206 void operator=(const vtkKWWidgetSet&);
00207 };
00208
00209 #endif
00210