19 #ifndef __vtkKWNotebook_h
20 #define __vtkKWNotebook_h
29 class vtkKWNotebookInternals;
37 void PrintSelf(ostream& os, vtkIndent indent);
49 int AddPage(
const char *title,
const char* balloon,
vtkKWIcon *icon,
int tag);
50 int AddPage(
const char *title,
const char* balloon,
vtkKWIcon *icon);
51 int AddPage(
const char *title,
const char* balloon);
52 int AddPage(
const char *title);
57 int HasPage(
const char *title,
int tag);
58 int GetPageId(
const char *title,
int tag);
62 const char* GetPageTitle(
int id);
63 virtual void SetPageTitle(
int id,
const char *title);
67 const char* GetPageBalloonHelpString(
int id);
68 virtual void SetPageBalloonHelpString(
int id,
const char *str);
74 virtual void SetPageIcon(
int id,
vtkKWIcon *icon);
75 virtual void SetPageIconToPredefinedIcon(
int id,
int icon_index);
85 int GetPageSmallCounterValue(
int id);
86 virtual void SetPageSmallCounterValue(
int id,
int v);
90 unsigned int GetNumberOfPages();
91 unsigned int GetNumberOfPagesMatchingTag(
int tag);
99 void SetPageTag(
int id,
int tag);
100 void SetPageTag(
const char *title,
int tag);
101 int GetPageTag(
int id);
102 int GetPageTag(
const char *title);
112 void RaisePage(
int id);
113 void RaisePage(
const char *title);
114 void RaisePage(
const char *title,
int tag);
115 int GetRaisedPageId();
116 void RaiseFirstPageMatchingTag(
int tag);
127 vtkKWFrame *GetFrame(
const char *title,
int tag);
128 int GetPageIdFromFrameWidgetName(
const char *frame_wname);
137 int RemovePage(
int id);
138 int RemovePage(
const char *title);
142 void RemovePagesMatchingTag(
int tag);
155 void ShowPage(
int id);
156 void ShowPage(
const char *title);
157 void ShowPage(
const char *title,
int tag);
158 void HidePage(
int id);
159 void HidePage(
const char *title);
160 void HidePage(
const char *title,
int tag);
161 void SetPageVisibility(
int id,
int flag);
162 void SetPageVisibility(
const char *title,
int flag);
163 void SetPageVisibility(
const char *title,
int tag,
int flag);
164 int GetPageVisibility(
int id);
165 int GetPageVisibility(
const char *title);
166 int GetPageVisibility(
const char *title,
int tag);
167 void TogglePageVisibility(
int id);
168 void TogglePageVisibility(
const char *title);
169 void TogglePageVisibility(
const char *title,
int tag);
170 int CanBeHidden(
int id);
171 int CanBeHidden(
const char *title);
172 int CanBeHidden(
const char *title,
int tag);
182 void SetPageEnabled(
int id,
int flag);
183 void SetPageEnabled(
const char *title,
int flag);
184 void SetPageEnabled(
const char *title,
int tag,
int fkag);
188 unsigned int GetNumberOfVisiblePages();
189 unsigned int GetNumberOfVisiblePagesMatchingTag(
int tag);
197 int GetVisiblePageId(
int idx);
202 void HidePagesMatchingTag(
int tag);
203 void ShowPagesMatchingTag(
int tag);
204 void ShowPagesMatchingTagReverse(
int tag);
205 void HidePagesNotMatchingTag(
int tag);
206 void ShowPagesNotMatchingTag(
int tag);
211 virtual void SetShowAllPagesWithSameTag(
int);
212 vtkGetMacro(ShowAllPagesWithSameTag,
int);
213 vtkBooleanMacro(ShowAllPagesWithSameTag,
int);
219 virtual void SetShowOnlyPagesWithSameTag(
int);
220 vtkGetMacro(ShowOnlyPagesWithSameTag,
int);
221 vtkBooleanMacro(ShowOnlyPagesWithSameTag,
int);
229 virtual void SetShowOnlyMostRecentPages(
int);
230 vtkGetMacro(ShowOnlyMostRecentPages,
int);
231 vtkBooleanMacro(ShowOnlyMostRecentPages,
int);
232 vtkSetMacro(NumberOfMostRecentPages,
int);
233 vtkGetMacro(NumberOfMostRecentPages,
int);
240 int GetMostRecentPageId(
int idx);
247 void PinPage(
int id);
248 void PinPage(
const char *title);
249 void PinPage(
const char *title,
int tag);
250 void UnpinPage(
int id);
251 void UnpinPage(
const char *title);
252 void UnpinPage(
const char *title,
int tag);
253 void TogglePagePinned(
int id);
254 void TogglePagePinned(
const char *title);
255 void TogglePagePinned(
const char *title,
int tag);
256 int GetPagePinned(
int id);
257 int GetPagePinned(
const char *title);
258 int GetPagePinned(
const char *title,
int tag);
262 void PinPagesMatchingTag(
int tag);
263 void UnpinPagesMatchingTag(
int tag);
267 virtual void SetPagesCanBePinned(
int);
268 vtkGetMacro(PagesCanBePinned,
int);
269 vtkBooleanMacro(PagesCanBePinned,
int);
273 unsigned int GetNumberOfPinnedPages();
280 int GetPinnedPageId(
int idx);
289 vtkSetMacro(UseFrameWithScrollbars,
int);
290 vtkGetMacro(UseFrameWithScrollbars,
int);
291 vtkBooleanMacro(UseFrameWithScrollbars,
int);
299 virtual void SetMinimumWidth(
int);
300 vtkGetMacro(MinimumWidth,
int);
301 virtual void SetMinimumHeight(
int);
302 vtkGetMacro(MinimumHeight,
int);
307 virtual void SetAlwaysShowTabs(
int);
308 vtkGetMacro(AlwaysShowTabs,
int);
309 vtkBooleanMacro(AlwaysShowTabs,
int);
313 virtual void SetShowIcons(
int);
314 vtkGetMacro(ShowIcons,
int);
315 vtkBooleanMacro(ShowIcons,
int);
319 vtkSetMacro(EnablePageTabContextMenu,
int);
320 vtkGetMacro(EnablePageTabContextMenu,
int);
321 vtkBooleanMacro(EnablePageTabContextMenu,
int);
338 vtkGetVector3Macro(PageTabColor,
double);
339 virtual void SetPageTabColor(
double r,
double g,
double b);
340 virtual void SetPageTabColor(
double rgb[3])
342 vtkGetVector3Macro(SelectedPageTabColor,
double);
343 virtual void SetSelectedPageTabColor(
double r,
double g,
double b);
344 virtual void SetSelectedPageTabColor(
double rgb[3])
346 vtkGetVector3Macro(PinnedPageTabOutlineColor,
double);
347 virtual void SetPinnedPageTabOutlineColor(
double r,
double g,
double b);
348 virtual void SetPinnedPageTabOutlineColor(
double rgb[3])
350 vtkGetVector3Macro(PageTabTextColor,
double);
351 virtual void SetPageTabTextColor(
double r,
double g,
double b);
352 virtual void SetPageTabTextColor(
double rgb[3])
354 vtkGetVector3Macro(SelectedPageTabTextColor,
double);
355 virtual void SetSelectedPageTabTextColor(
double r,
double g,
double b);
356 virtual void SetSelectedPageTabTextColor(
double rgb[3])
363 vtkGetMacro(SelectedPageTabPadding,
int);
364 virtual void SetSelectedPageTabPadding(
int arg);
369 virtual int GetPageIdContainingCoordinatesInTab(
int x,
int y);
382 virtual void ScheduleResize();
383 virtual void Resize();
401 virtual void PageTabContextMenuCallback(
int id,
int x,
int y);
402 virtual void RaiseCallback(
int id);
403 virtual void TogglePagePinnedCallback(
int id);
404 virtual void TogglePageVisibilityCallback(
int id);
426 double PageTabColor[3];
427 double SelectedPageTabColor[3];
428 double PageTabTextColor[3];
429 double SelectedPageTabTextColor[3];
430 double PinnedPageTabOutlineColor[3];
447 void UpdateEnableState();
468 friend class vtkKWNotebookInternals;
475 Page* GetPage(
int id);
476 Page* GetPage(
const char *title);
477 Page* GetPage(
const char *title,
int tag);
483 Page* GetFirstVisiblePage();
484 Page* GetFirstPageMatchingTag(
int tag);
485 Page* GetFirstPackedPageNotMatchingTag(
int tag);
489 void SetPageTag(
Page*,
int tag);
490 void RaisePage(
Page*);
491 void ShowPageTab(
Page*);
492 void ShowPageTabAsLow(
Page*);
493 void LowerPage(
Page*);
494 int RemovePage(
Page*);
495 void ShowPage(
Page*);
496 void HidePage(
Page*);
498 void UnpinPage(
Page*);
499 void TogglePagePinned(
Page*);
500 int GetPageVisibility(
Page*);
501 void TogglePageVisibility(
Page*);
502 int CanBeHidden(
Page*);
503 int GetPageTag(
Page*);
504 int GetPagePinned(
Page*);
505 const char* GetPageTitle(
Page*);
506 const char* GetPageBalloonHelpString(
Page*);
508 void SetPageEnabled(
Page*,
int flag);
509 void BuildPage(
Page*,
const char *title,
const char* balloon,
vtkKWIcon *icon);
511 int AddToMostRecentPages(
Page*);
512 int RemoveFromMostRecentPages(
Page*);
513 int PutOnTopOfMostRecentPages(
Page*);
517 virtual void UpdatePageTabAspect(
Page*);
518 virtual void UpdateAllPagesTabAspect();
528 int AreTabsVisible();
532 void UpdateBodyPosition();
533 void UpdateMaskPosition();
540 void ConstrainVisiblePages();
544 void SendEventForPage(
unsigned long event,
int id);
549 virtual void UnBind();