38 #ifndef __vtkKWPresetSelector_h
39 #define __vtkKWPresetSelector_h
46 class vtkKWPresetSelectorInternals;
48 class vtkRenderWindow;
58 void PrintSelf(ostream& os, vtkIndent indent);
65 virtual int AddPreset();
66 virtual int InsertPreset(
int id);
71 virtual int HasPreset(
int id);
81 virtual int SetPresetGroup(
int id,
const char *group);
82 virtual const char* GetPresetGroup(
int id);
87 virtual void SetGroupColumnVisibility(
int);
88 virtual int GetGroupColumnVisibility();
89 vtkBooleanMacro(GroupColumnVisibility,
int);
94 virtual void SetGroupColumnTitle(
const char *);
95 virtual const char* GetGroupColumnTitle();
106 virtual int SetPresetComment(
int id,
const char *comment);
107 virtual const char* GetPresetComment(
int id);
112 virtual void SetCommentColumnVisibility(
int);
113 virtual int GetCommentColumnVisibility();
114 vtkBooleanMacro(CommentColumnVisibility,
int);
125 virtual int SetPresetFileName(
int id,
const char *filename);
126 virtual const char* GetPresetFileName(
int id);
127 virtual int GetIdOfPresetWithFileName(
const char *filename);
136 virtual vtkTypeInt64 GetPresetCreationTime(
int id);
147 virtual vtkKWIcon* GetPresetThumbnail(
int id);
148 virtual int SetPresetThumbnail(
int id,
vtkKWIcon *icon);
149 virtual vtkKWIcon* GetPresetScreenshot(
int id);
150 virtual int SetPresetScreenshot(
int id,
vtkKWIcon *icon);
155 virtual void SetThumbnailColumnVisibility(
int);
156 virtual int GetThumbnailColumnVisibility();
157 vtkBooleanMacro(ThumbnailColumnVisibility,
int);
171 virtual int BuildPresetThumbnailAndScreenshotFromImage(
172 int id, vtkImageData *image);
173 virtual int BuildPresetThumbnailAndScreenshotFromRenderWindow(
174 int id, vtkRenderWindow *win);
179 virtual int FlipPresetThumbnailAndScreenshotVertically(
int id);
186 vtkSetClampMacro(ThumbnailSize,
int,8,512);
187 vtkGetMacro(ThumbnailSize,
int);
195 vtkSetClampMacro(ScreenshotSize,
int,8,2048);
196 vtkGetMacro(ScreenshotSize,
int);
214 UserSlotDoubleType = 0,
224 virtual int HasPresetUserSlot(
225 int id,
const char *slot_name);
226 virtual int GetPresetUserSlotType(
227 int id,
const char *slot_name);
228 virtual int DeletePresetUserSlot(
229 int id,
const char *slot_name);
230 virtual int SetPresetUserSlotAsDouble(
231 int id,
const char *slot_name,
double value);
232 virtual double GetPresetUserSlotAsDouble(
233 int id,
const char *slot_name);
234 virtual int SetPresetUserSlotAsInt(
235 int id,
const char *slot_name,
int value);
236 virtual int GetPresetUserSlotAsInt(
237 int id,
const char *slot_name);
238 virtual int SetPresetUserSlotAsUnsignedLong(
239 int id,
const char *slot_name,
unsigned long value);
240 virtual unsigned long GetPresetUserSlotAsUnsignedLong(
241 int id,
const char *slot_name);
242 virtual int SetPresetUserSlotAsInt64(
243 int id,
const char *slot_name, vtkTypeInt64 value);
244 virtual vtkTypeInt64 GetPresetUserSlotAsInt64(
245 int id,
const char *slot_name);
246 virtual int SetPresetUserSlotAsString(
247 int id,
const char *slot_name,
const char *value);
248 virtual const char* GetPresetUserSlotAsString(
249 int id,
const char *slot_name);
250 virtual int SetPresetUserSlotAsPointer(
251 int id,
const char *slot_name,
void *ptr);
252 virtual void* GetPresetUserSlotAsPointer(
253 int id,
const char *slot_name);
254 virtual int SetPresetUserSlotAsObject(
255 int id,
const char *slot_name, vtkObject *obj);
256 virtual vtkObject* GetPresetUserSlotAsObject(
257 int id,
const char *slot_name);
270 virtual void SetPresetGroupSlotName(
const char *);
271 virtual const char* GetPresetGroupSlotName();
272 virtual void SetPresetCommentSlotName(
const char *);
273 virtual const char* GetPresetCommentSlotName();
274 virtual void SetPresetFileNameSlotName(
const char *);
275 virtual const char* GetPresetFileNameSlotName();
276 virtual void SetPresetCreationTimeSlotName(
const char *);
277 virtual const char* GetPresetCreationTimeSlotName();
278 virtual void SetPresetThumbnailSlotName(
const char *);
279 virtual const char* GetPresetThumbnailSlotName();
280 virtual void SetPresetScreenshotSlotName(
const char *);
281 virtual const char* GetPresetScreenshotSlotName();
302 virtual void ClearPresetFilter();
303 virtual void SetPresetFilterUserSlotConstraint(
304 const char *slot_name,
const char *value);
305 virtual const char* GetPresetFilterUserSlotConstraint(
306 const char *slot_name);
307 virtual void DeletePresetFilterUserSlotConstraint(
const char *slot_name);
308 virtual void SetPresetFilterUserSlotConstraintToRegularExpression(
309 const char *slot_name);
310 virtual void SetPresetFilterUserSlotConstraintToString(
311 const char *slot_name);
315 virtual void SetPresetFilterGroupConstraint(
const char *value);
316 virtual const char* GetPresetFilterGroupConstraint();
321 virtual int IsPresetFiltered(
int id);
327 virtual int GetNumberOfPresets();
328 virtual int GetNumberOfPresetsWithGroup(
const char *group);
329 virtual int GetNumberOfVisiblePresets();
336 vtkGetMacro(MaximumNumberOfPresets,
int);
337 virtual void SetMaximumNumberOfPresets(
int);
343 virtual int GetPresetVisibility(
int id);
349 virtual int GetIdOfNthPreset(
int index);
350 virtual int GetIdOfNthPresetWithGroup(
int index,
const char *group);
356 virtual int GetIdOfPresetAtRow(
int row_index);
357 virtual int GetPresetRow(
int id);
365 virtual int GetRankOfNthPresetWithGroup(
int index,
const char *group);
371 virtual int RemovePreset(
int id);
372 virtual int RemoveAllPresets();
373 virtual int RemoveAllPresetsWithGroup(
const char *group);
377 virtual void SelectPreset(
int id);
378 virtual void SelectPreviousPreset();
379 virtual void SelectNextPreset();
380 virtual void ClearSelection();
381 virtual int GetIdOfSelectedPreset();
386 virtual void SetListHeight(
int);
387 virtual int GetListHeight();
388 virtual void SetListWidth(
int);
389 virtual int GetListWidth();
397 vtkGetObjectMacro(PresetButtonsBaseIcon,
vtkKWIcon);
398 virtual void SetPresetButtonsBaseIcon(
vtkKWIcon *icon);
399 virtual void SetPresetButtonsBaseIconToPredefinedIcon(
int icon_index);
408 virtual void SetSelectSpinButtonsVisibility(
int);
409 vtkGetMacro(SelectSpinButtonsVisibility,
int);
410 vtkBooleanMacro(SelectSpinButtonsVisibility,
int);
419 virtual void SetLocateButtonVisibility(
int);
420 vtkGetMacro(LocateButtonVisibility,
int);
421 vtkBooleanMacro(LocateButtonVisibility,
int);
422 vtkSetMacro(LocateMenuEntryVisibility,
int);
423 vtkGetMacro(LocateMenuEntryVisibility,
int);
424 vtkBooleanMacro(LocateMenuEntryVisibility,
int);
432 virtual void SetEmailButtonVisibility(
int);
433 vtkGetMacro(EmailButtonVisibility,
int);
434 vtkBooleanMacro(EmailButtonVisibility,
int);
435 vtkSetMacro(EmailMenuEntryVisibility,
int);
436 vtkGetMacro(EmailMenuEntryVisibility,
int);
437 vtkBooleanMacro(EmailMenuEntryVisibility,
int);
445 vtkSetStringMacro(EmailBody);
446 vtkGetStringMacro(EmailBody);
453 virtual void SetRemoveButtonVisibility(
int);
454 vtkGetMacro(RemoveButtonVisibility,
int);
455 vtkBooleanMacro(RemoveButtonVisibility,
int);
456 vtkGetMacro(RemoveMenuEntryVisibility,
int);
457 vtkSetMacro(RemoveMenuEntryVisibility,
int);
458 vtkBooleanMacro(RemoveMenuEntryVisibility,
int);
467 virtual void SetFilterButtonVisibility(
int);
468 vtkGetMacro(FilterButtonVisibility,
int);
469 vtkBooleanMacro(FilterButtonVisibility,
int);
470 vtkSetStringMacro(FilterButtonSlotName);
471 vtkGetStringMacro(FilterButtonSlotName);
475 virtual void SetHelpLabelVisibility(
int);
476 vtkGetMacro(HelpLabelVisibility,
int);
477 vtkBooleanMacro(HelpLabelVisibility,
int);
479 virtual void SetHelpLabelText(
const char *);
497 virtual void SetPresetAddCommand(vtkObject *
object,
const char *method);
516 virtual void SetPresetUpdateCommand(vtkObject *
object,
const char *method);
536 virtual void SetPresetApplyCommand(vtkObject *
object,
const char *method);
544 virtual void SetApplyPresetOnSelection(
int);
545 vtkGetMacro(ApplyPresetOnSelection,
int);
546 vtkBooleanMacro(ApplyPresetOnSelection,
int);
565 virtual void SetPresetRemoveCommand(vtkObject *
object,
const char *method);
580 virtual void SetPresetRemovedCommand(vtkObject *
object,
const char *method);
585 vtkSetMacro(PromptBeforeRemovePreset,
int);
586 vtkGetMacro(PromptBeforeRemovePreset,
int);
587 vtkBooleanMacro(PromptBeforeRemovePreset,
int);
605 virtual void SetPresetHasChangedCommand(
606 vtkObject *
object,
const char *method);
625 virtual void SetPresetLoadCommand(vtkObject *
object,
const char *method);
636 virtual void SetPresetFilteringHasChangedCommand(
637 vtkObject *
object,
const char *method);
641 virtual void Update();
654 virtual void PresetCellThumbnailCallback(
const char*,
int,
int,
const char*);
663 virtual const char* PresetCellEditStartCallback(
664 int row,
int col,
const char *text);
674 virtual const char* PresetCellEditEndCallback(
675 int row,
int col,
const char *text);
681 virtual void PresetCellUpdatedCallback(
int row,
int col,
const char *text);
693 virtual void CreateToolbar();
706 virtual int PresetAddCallback();
707 virtual void PresetApplyCallback();
708 virtual void PresetApplyCallback(
int id);
709 virtual void PresetUpdateCallback();
710 virtual void PresetUpdateCallback(
int id);
711 virtual void PresetRemoveCallback();
712 virtual void PresetRemoveAllCallback();
713 virtual void PresetRemoveCallback(
int id);
714 virtual void PresetEmailCallback();
715 virtual void PresetEmailCallback(
int id);
716 virtual void PresetLocateCallback();
717 virtual void PresetLocateCallback(
int id);
718 virtual void PresetSelectionCallback();
719 virtual void PresetSelectionChangedCallback();
720 virtual void PresetRightClickCallback(
int row,
int col,
int x,
int y);
721 virtual int PresetLoadCallback();
722 virtual void PresetFilterCallback();
723 virtual void PresetFilterApplyCallback(
const char *regexp);
724 virtual void UpdatePresetRowCallback(
int id);
725 virtual void UpdatePresetRowsCallback();
726 virtual void ColumnSortedCallback();
727 virtual void RowMovedCallback();
728 virtual void SchedulePresetSelectionCallback();
729 virtual void SchedulePresetSelectionChangedCallback();
749 virtual void SetCreateUserPresetButtonsCommand(
750 vtkObject *
object,
const char *method);
751 virtual void SetUpdateUserPresetButtonsCommand(
752 vtkObject *
object,
const char *method);
753 virtual void SetSetUserPresetButtonsIconsCommand(
754 vtkObject *
object,
const char *method);
755 virtual void SetSetUserPresetButtonsHelpStringsCommand(
756 vtkObject *
object,
const char *method);
771 virtual void CreateColumns();
777 virtual void CreateToolbarPresetButtons(
vtkKWToolbar*,
int use_separators);
787 virtual void SetToolbarPresetButtonsIcons(
vtkKWToolbar*);
793 virtual void SetToolbarPresetButtonsHelpStrings(
vtkKWToolbar*);
800 virtual void ConfigureNewPreset(
int id);
807 virtual void DeAllocatePreset(
int id);
817 virtual int UpdatePresetRow(
int id);
818 virtual void ScheduleUpdatePresetRow(
int id);
827 virtual int UpdatePresetRowInMultiColumnList(
int id,
int is_new = 0);
865 virtual void NumberOfPresetsHasChanged();
871 virtual void PresetFilteringHasChanged();
878 virtual void PresetFilteringMayHaveChanged();
887 virtual void UpdatePresetRows();
888 virtual void ScheduleUpdatePresetRows();
889 virtual void CancelScheduleUpdatePresetRows();
892 virtual int InvokePresetAddCommand();
895 virtual void InvokePresetUpdateCommand(
int id);
898 virtual void InvokePresetApplyCommand(
int id);
901 virtual int InvokePresetRemoveCommand(
int id);
904 virtual void InvokePresetRemovedCommand();
907 virtual void InvokePresetHasChangedCommand(
int id);
910 virtual int InvokePresetLoadCommand();
913 virtual void InvokePresetFilteringHasChangedCommand();
916 virtual void InvokeCreateUserPresetButtonsCommand(
vtkKWToolbar *,
int);
919 virtual void InvokeUpdateUserPresetButtonsCommand(
vtkKWToolbar *);
922 virtual void InvokeSetUserPresetButtonsIconsCommand(
vtkKWToolbar *);
925 virtual void InvokeSetUserPresetButtonsHelpStringsCommand(
vtkKWToolbar *);
929 virtual int GetIdColumnIndex();
930 virtual int GetThumbnailColumnIndex();
931 virtual int GetGroupColumnIndex();
932 virtual int GetCommentColumnIndex();
942 virtual void PopulatePresetContextMenu(
vtkKWMenu *menu,
int id);
961 virtual const char* GetSelectPreviousButtonLabel();
962 virtual const char* GetSelectNextButtonLabel();
963 virtual const char* GetAddButtonLabel();
964 virtual const char* GetApplyButtonLabel();
965 virtual const char* GetUpdateButtonLabel();
966 virtual const char* GetRemoveButtonLabel();
967 virtual const char* GetRemoveAllButtonLabel();
968 virtual const char* GetLocateButtonLabel();
969 virtual const char* GetEmailButtonLabel();
970 virtual const char* GetLoadButtonLabel();
971 virtual const char* GetFilterButtonLabel();
978 virtual int DeleteAllPresets();
982 virtual int GetNumberOfSelectedPresetsWithFileName();
986 virtual void SetPresetIdToRowIndexCacheEntry(
int id,
int row_index);
987 virtual int GetPresetIdToRowIndexCacheEntry(
int id);
988 virtual void InvalidatePresetIdToRowIndexCache();
992 virtual void SetRowIndexToPresetIdCacheEntry(
int row_index,
int id);
993 virtual int GetRowIndexToPresetIdCacheEntry(
int row_index);
994 virtual void InvalidateRowIndexToPresetIdCache();
1001 vtkObject *caller,
unsigned long event,
void *calldata);
1005 virtual void ConstrainNumberOfPresets();
1013 virtual int SetPresetCreationTime(
int id, vtkTypeInt64 value);