27 #ifndef __vtkKWParameterValueFunctionEditor_h
28 #define __vtkKWParameterValueFunctionEditor_h
34 #include <vtksys/ios/iosfwd>
37 class vtkCallbackCommand;
50 void PrintSelf(ostream& os, vtkIndent indent);
56 virtual double* GetWholeParameterRange();
57 virtual void SetWholeParameterRange(
double r0,
double r1);
58 virtual void GetWholeParameterRange(
double &r0,
double &r1);
59 virtual void GetWholeParameterRange(
double range[2]);
60 virtual void SetWholeParameterRange(
double range[2]);
66 virtual void SetWholeParameterRangeToFunctionRange();
72 virtual double* GetVisibleParameterRange();
73 virtual void SetVisibleParameterRange(
double r0,
double r1);
74 virtual void GetVisibleParameterRange(
double &r0,
double &r1);
75 virtual void GetVisibleParameterRange(
double range[2]);
76 virtual void SetVisibleParameterRange(
double range[2]);
80 virtual void SetVisibleParameterRangeToWholeParameterRange();
85 virtual void SetRelativeVisibleParameterRange(
double r0,
double r1);
86 virtual void GetRelativeVisibleParameterRange(
double &r0,
double &r1);
87 virtual void GetRelativeVisibleParameterRange(
double range[2]);
88 virtual void SetRelativeVisibleParameterRange(
double range[2]);
94 virtual double* GetWholeValueRange();
95 virtual void SetWholeValueRange(
double r0,
double r1);
96 virtual void GetWholeValueRange(
double &r0,
double &r1);
97 virtual void GetWholeValueRange(
double range[2]);
98 virtual void SetWholeValueRange(
double range[2]);
104 virtual double* GetVisibleValueRange();
105 virtual void SetVisibleValueRange(
double r0,
double r1);
106 virtual void GetVisibleValueRange(
double &r0,
double &r1);
107 virtual void GetVisibleValueRange(
double range[2]);
108 virtual void SetVisibleValueRange(
double range[2]);
113 virtual void SetRelativeVisibleValueRange(
double r0,
double r1);
114 virtual void GetRelativeVisibleValueRange(
double &r0,
double &r1);
115 virtual void GetRelativeVisibleValueRange(
double range[2]);
116 virtual void SetRelativeVisibleValueRange(
double range[2]);
134 vtkBooleanMacro(ParameterRangeVisibility,
int);
135 virtual void SetParameterRangeVisibility(
int);
136 vtkGetMacro(ParameterRangeVisibility,
int);
143 ParameterRangePositionTop = 0,
144 ParameterRangePositionBottom
147 virtual void SetParameterRangePosition(
int);
148 vtkGetMacro(ParameterRangePosition,
int);
149 virtual void SetParameterRangePositionToTop();
150 virtual void SetParameterRangePositionToBottom();
156 vtkBooleanMacro(ValueRangeVisibility,
int);
157 virtual void SetValueRangeVisibility(
int);
158 vtkGetMacro(ValueRangeVisibility,
int);
164 vtkGetObjectMacro(ParameterRange,
vtkKWRange);
188 vtkGetVector2Macro(DisplayedWholeParameterRange,
double);
189 virtual void SetDisplayedWholeParameterRange(
double r0,
double r1);
190 virtual void SetDisplayedWholeParameterRange(
double range[2]);
191 virtual void GetDisplayedVisibleParameterRange(
double &r0,
double &r1);
192 virtual void GetDisplayedVisibleParameterRange(
double range[2]);
193 virtual void MapParameterToDisplayedParameter(
double p,
double *displayed_p);
194 virtual void MapDisplayedParameterToParameter(
double displayed_p,
double *p);
195 virtual int GetFunctionPointDisplayedParameter(
int id,
double *displayed_p);
207 PointPositionValue = 0,
213 virtual void SetPointPositionInValueRange(
int);
214 vtkGetMacro(PointPositionInValueRange,
int);
215 virtual void SetPointPositionInValueRangeToValue();
216 virtual void SetPointPositionInValueRangeToTop();
217 virtual void SetPointPositionInValueRangeToBottom();
218 virtual void SetPointPositionInValueRangeToCenter();
224 vtkBooleanMacro(ParameterRangeLabelVisibility,
int);
225 virtual void SetParameterRangeLabelVisibility(
int);
226 vtkGetMacro(ParameterRangeLabelVisibility,
int);
232 vtkBooleanMacro(ValueRangeLabelVisibility,
int);
233 virtual void SetValueRangeLabelVisibility(
int);
234 vtkGetMacro(ValueRangeLabelVisibility,
int);
244 RangeLabelPositionDefault = 10,
245 RangeLabelPositionTop
248 virtual void SetRangeLabelPosition(
int);
249 vtkGetMacro(RangeLabelPosition,
int);
250 virtual void SetRangeLabelPositionToDefault();
251 virtual void SetRangeLabelPositionToTop();
261 PointEntriesPositionDefault = 10,
262 PointEntriesPositionRight
265 virtual void SetPointEntriesPosition(
int);
266 vtkGetMacro(PointEntriesPosition,
int);
267 virtual void SetPointEntriesPositionToDefault();
268 virtual void SetPointEntriesPositionToRight();
276 vtkBooleanMacro(PointEntriesVisibility,
int);
277 virtual void SetPointEntriesVisibility(
int);
278 vtkGetMacro(PointEntriesVisibility,
int);
285 vtkBooleanMacro(ParameterEntryVisibility,
int);
286 virtual void SetParameterEntryVisibility(
int);
287 vtkGetMacro(ParameterEntryVisibility,
int);
293 virtual void SetParameterEntryFormat(
const char *);
294 vtkGetStringMacro(ParameterEntryFormat);
304 vtkBooleanMacro(UserFrameVisibility,
int);
305 virtual void SetUserFrameVisibility(
int);
306 vtkGetMacro(UserFrameVisibility,
int);
321 virtual void SetCanvasHeight(
int);
322 virtual void SetCanvasWidth(
int);
323 virtual int GetCanvasHeight();
324 virtual int GetCanvasWidth();
325 vtkBooleanMacro(ExpandCanvasWidth,
int);
326 virtual void SetExpandCanvasWidth(
int);
327 vtkGetMacro(ExpandCanvasWidth,
int);
328 vtkGetMacro(CurrentCanvasHeight,
int);
329 vtkGetMacro(CurrentCanvasWidth,
int);
334 vtkBooleanMacro(CanvasVisibility,
int);
335 virtual void SetCanvasVisibility(
int);
336 vtkGetMacro(CanvasVisibility,
int);
341 vtkBooleanMacro(FunctionLineVisibility,
int);
342 virtual void SetFunctionLineVisibility(
int);
343 vtkGetMacro(FunctionLineVisibility,
int);
347 virtual void SetFunctionLineWidth(
int);
348 vtkGetMacro(FunctionLineWidth,
int);
359 virtual void SetFunctionLineStyle(
int);
360 vtkGetMacro(FunctionLineStyle,
int);
361 virtual void SetFunctionLineStyleToSolid();
362 virtual void SetFunctionLineStyleToDash();
366 vtkBooleanMacro(CanvasOutlineVisibility,
int);
367 virtual void SetCanvasOutlineVisibility(
int);
368 vtkGetMacro(CanvasOutlineVisibility,
int);
375 CanvasOutlineStyleLeftSide = 1,
376 CanvasOutlineStyleRightSide = 2,
377 CanvasOutlineStyleHorizontalSides = 3,
378 CanvasOutlineStyleTopSide = 4,
379 CanvasOutlineStyleBottomSide = 8,
380 CanvasOutlineStyleVerticalSides = 12,
381 CanvasOutlineStyleAllSides = 15
384 vtkBooleanMacro(CanvasOutlineStyle,
int);
385 virtual void SetCanvasOutlineStyle(
int);
386 vtkGetMacro(CanvasOutlineStyle,
int);
390 vtkBooleanMacro(CanvasBackgroundVisibility,
int);
391 virtual void SetCanvasBackgroundVisibility(
int);
392 vtkGetMacro(CanvasBackgroundVisibility,
int);
398 vtkBooleanMacro(ParameterCursorVisibility,
int);
399 virtual void SetParameterCursorVisibility(
int);
400 vtkGetMacro(ParameterCursorVisibility,
int);
404 virtual void SetParameterCursorPosition(
double);
405 vtkGetMacro(ParameterCursorPosition,
double);
409 vtkGetVector3Macro(ParameterCursorColor,
double);
410 virtual void SetParameterCursorColor(
double r,
double g,
double b);
411 virtual void SetParameterCursorColor(
double rgb[3]);
418 ParameterCursorInteractionStyleNone = 0,
419 ParameterCursorInteractionStyleDragWithLeftButton = 1,
420 ParameterCursorInteractionStyleSetWithRighButton = 2,
421 ParameterCursorInteractionStyleSetWithControlLeftButton = 4,
422 ParameterCursorInteractionStyleAll = 7
425 vtkBooleanMacro(ParameterCursorInteractionStyle,
int);
426 virtual void SetParameterCursorInteractionStyle(
int);
427 vtkGetMacro(ParameterCursorInteractionStyle,
int);
431 vtkBooleanMacro(ParameterTicksVisibility,
int);
432 virtual void SetParameterTicksVisibility(
int);
433 vtkGetMacro(ParameterTicksVisibility,
int);
437 virtual void SetNumberOfParameterTicks(
int);
438 vtkGetMacro(NumberOfParameterTicks,
int);
443 virtual void SetParameterTicksFormat(
const char *);
444 vtkGetStringMacro(ParameterTicksFormat);
448 vtkBooleanMacro(ValueTicksVisibility,
int);
449 virtual void SetValueTicksVisibility(
int);
450 vtkGetMacro(ValueTicksVisibility,
int);
454 virtual void SetNumberOfValueTicks(
int);
455 vtkGetMacro(NumberOfValueTicks,
int);
459 virtual void SetValueTicksCanvasWidth(
int);
460 vtkGetMacro(ValueTicksCanvasWidth,
int);
464 virtual void SetValueTicksFormat(
const char *);
465 vtkGetStringMacro(ValueTicksFormat);
469 vtkBooleanMacro(ComputeValueTicksFromHistogram,
int);
470 virtual void SetComputeValueTicksFromHistogram(
int);
471 vtkGetMacro(ComputeValueTicksFromHistogram,
int);
475 virtual void SetTicksLength(
int);
476 vtkGetMacro(TicksLength,
int);
481 virtual void SetLockPointsParameter(
int);
482 vtkBooleanMacro(LockPointsParameter,
int);
483 vtkGetMacro(LockPointsParameter,
int);
489 virtual void SetLockEndPointsParameter(
int);
490 vtkBooleanMacro(LockEndPointsParameter,
int);
491 vtkGetMacro(LockEndPointsParameter,
int);
497 virtual void SetLockPointsValue(
int);
498 vtkBooleanMacro(LockPointsValue,
int);
499 vtkGetMacro(LockPointsValue,
int);
503 vtkSetMacro(DisableAddAndRemove,
int);
504 vtkBooleanMacro(DisableAddAndRemove,
int);
505 vtkGetMacro(DisableAddAndRemove,
int);
511 vtkSetMacro(EnableDirectMove,
int);
512 vtkBooleanMacro(EnableDirectMove,
int);
513 vtkGetMacro(EnableDirectMove,
int);
518 virtual void SetReadOnly(
int);
519 vtkBooleanMacro(ReadOnly,
int);
527 vtkSetMacro(RescaleBetweenEndPoints,
int);
528 vtkBooleanMacro(RescaleBetweenEndPoints,
int);
529 vtkGetMacro(RescaleBetweenEndPoints,
int);
533 virtual void SetPointRadius(
int);
534 virtual void SetPointRadiusX(
int);
535 vtkGetMacro(PointRadiusX,
int);
536 virtual void SetPointRadiusY(
int);
537 vtkGetMacro(PointRadiusY,
int);
542 virtual void SetSelectedPointRadius(
double);
543 vtkGetMacro(SelectedPointRadius,
double);
549 virtual void SetSelectedPointText(
const char *);
550 vtkGetStringMacro(SelectedPointText);
551 virtual void SetSelectedPointTextToInt(
int);
562 PointStyleCursorDown,
564 PointStyleCursorLeft,
565 PointStyleCursorRight,
570 virtual void SetPointStyle(
int);
571 vtkGetMacro(PointStyle,
int);
572 virtual void SetPointStyleToDisc();
573 virtual void SetPointStyleToCursorDown();
574 virtual void SetPointStyleToCursorUp();
575 virtual void SetPointStyleToCursorLeft();
576 virtual void SetPointStyleToCursorRight();
577 virtual void SetPointStyleToRectangle();
578 virtual void SetPointStyleToDefault();
579 virtual void SetFirstPointStyle(
int);
580 vtkGetMacro(FirstPointStyle,
int);
581 virtual void SetLastPointStyle(
int);
582 vtkGetMacro(LastPointStyle,
int);
586 virtual void SetPointOutlineWidth(
int);
587 vtkGetMacro(PointOutlineWidth,
int);
601 PointMarginLeftSide = 1,
602 PointMarginRightSide = 2,
603 PointMarginHorizontalSides = 3,
604 PointMarginTopSide = 4,
605 PointMarginBottomSide = 8,
606 PointMarginVerticalSides = 12,
607 PointMarginAllSides = 15
610 vtkBooleanMacro(PointMarginToCanvas,
int);
611 virtual void SetPointMarginToCanvas(
int);
612 vtkGetMacro(PointMarginToCanvas,
int);
613 virtual void SetPointMarginToCanvasToNone();
614 virtual void SetPointMarginToCanvasToLeftSide();
615 virtual void SetPointMarginToCanvasToRightSide();
616 virtual void SetPointMarginToCanvasToHorizontalSides();
617 virtual void SetPointMarginToCanvasToTopSide();
618 virtual void SetPointMarginToCanvasToBottomSide();
619 virtual void SetPointMarginToCanvasToVerticalSides();
620 virtual void SetPointMarginToCanvasToAllSides();
624 vtkGetMacro(SelectedPoint,
int);
625 virtual void SelectPoint(
int id);
626 virtual void ClearSelection();
627 virtual int HasSelection();
628 virtual void SelectNextPoint();
629 virtual void SelectPreviousPoint();
630 virtual void SelectFirstPoint();
631 virtual void SelectLastPoint();
635 virtual int RemoveSelectedPoint();
636 virtual int RemovePoint(
int id);
637 virtual int RemovePointAtParameter(
double parameter);
641 virtual int AddPointAtCanvasCoordinates(
int x,
int y,
int *
id);
642 virtual int AddPointAtParameter(
double parameter,
int *
id);
655 vtkGetVector3Macro(FrameBackgroundColor,
double);
656 virtual void SetFrameBackgroundColor(
double r,
double g,
double b);
657 virtual void SetFrameBackgroundColor(
double rgb[3]);
664 vtkGetVector3Macro(PointColor,
double);
665 virtual void SetPointColor(
double r,
double g,
double b);
666 virtual void SetPointColor(
double rgb[3]);
671 vtkGetVector3Macro(SelectedPointColor,
double);
672 virtual void SetSelectedPointColor(
double r,
double g,
double b);
673 virtual void SetSelectedPointColor(
double rgb[3]);
679 vtkGetVector3Macro(SelectedPointColorInInteraction,
double);
680 virtual void SetSelectedPointColorInInteraction(
681 double r,
double g,
double b);
682 virtual void SetSelectedPointColorInInteraction(
double rgb[3]);
689 PointColorStyleFill = 0,
690 PointColorStyleOutline
693 virtual void SetPointColorStyle(
int);
694 vtkGetMacro(PointColorStyle,
int);
695 virtual void SetPointColorStyleToFill();
696 virtual void SetPointColorStyleToOutline();
701 vtkGetVector3Macro(PointTextColor,
double);
702 virtual void SetPointTextColor(
double r,
double g,
double b);
703 virtual void SetPointTextColor(
double rgb[3]);
708 vtkGetVector3Macro(SelectedPointTextColor,
double);
709 virtual void SetSelectedPointTextColor(
double r,
double g,
double b);
710 virtual void SetSelectedPointTextColor(
double rgb[3]);
715 vtkBooleanMacro(ComputePointColorFromValue,
int);
716 virtual void SetComputePointColorFromValue(
int);
717 vtkGetMacro(ComputePointColorFromValue,
int);
724 vtkBooleanMacro(PointVisibility,
int);
725 virtual void SetPointVisibility(
int);
726 vtkGetMacro(PointVisibility,
int);
730 vtkBooleanMacro(PointIndexVisibility,
int);
731 virtual void SetPointIndexVisibility(
int);
732 vtkGetMacro(PointIndexVisibility,
int);
736 vtkBooleanMacro(SelectedPointIndexVisibility,
int);
737 virtual void SetSelectedPointIndexVisibility(
int);
738 vtkGetMacro(SelectedPointIndexVisibility,
int);
743 vtkBooleanMacro(PointGuidelineVisibility,
int);
744 virtual void SetPointGuidelineVisibility(
int);
745 vtkGetMacro(PointGuidelineVisibility,
int);
750 virtual void SetPointGuidelineStyle(
int);
751 vtkGetMacro(PointGuidelineStyle,
int);
771 virtual void DisplayHistogramOnly();
776 vtkGetVector3Macro(HistogramColor,
double);
777 virtual void SetHistogramColor(
double r,
double g,
double b);
778 virtual void SetHistogramColor(
double rgb[3]);
779 vtkGetVector3Macro(SecondaryHistogramColor,
double);
780 virtual void SetSecondaryHistogramColor(
double r,
double g,
double b);
781 virtual void SetSecondaryHistogramColor(
double rgb[3]);
786 vtkBooleanMacro(ComputeHistogramColorFromValue,
int);
787 virtual void SetComputeHistogramColorFromValue(
int);
788 vtkGetMacro(ComputeHistogramColorFromValue,
int);
795 HistogramStyleBars = 0,
797 HistogramStylePolyLine
800 vtkGetMacro(HistogramStyle,
int);
801 virtual void SetHistogramStyle(
int);
802 virtual void SetHistogramStyleToBars();
803 virtual void SetHistogramStyleToDots();
804 virtual void SetHistogramStyleToPolyLine();
805 vtkGetMacro(SecondaryHistogramStyle,
int);
806 virtual void SetSecondaryHistogramStyle(
int);
807 virtual void SetSecondaryHistogramStyleToBars();
808 virtual void SetSecondaryHistogramStyleToDots();
809 virtual void SetSecondaryHistogramStyleToPolyLine();
813 virtual void SetHistogramPolyLineWidth(
int);
814 vtkGetMacro(HistogramPolyLineWidth,
int);
820 virtual void SetHistogramLogModeOptionMenuVisibility(
int);
821 vtkBooleanMacro(HistogramLogModeOptionMenuVisibility,
int);
822 vtkGetMacro(HistogramLogModeOptionMenuVisibility,
int);
833 virtual void SetHistogramLogModeChangedCommand(
834 vtkObject *
object,
const char *method);
839 vtkBooleanMacro(ChangeMouseCursor,
int);
840 vtkGetMacro(ChangeMouseCursor,
int);
841 vtkSetMacro(ChangeMouseCursor,
int);
867 virtual void SetFunctionStartChangingCommand(
868 vtkObject *
object,
const char *method);
869 virtual void SetFunctionChangedCommand(
870 vtkObject *
object,
const char *method);
871 virtual void SetFunctionChangingCommand(
872 vtkObject *
object,
const char *method);
906 virtual void SetPointAddedCommand(
907 vtkObject *
object,
const char *method);
908 virtual void SetPointChangingCommand(
909 vtkObject *
object,
const char *method);
910 virtual void SetPointChangedCommand(
911 vtkObject *
object,
const char *method);
912 virtual void SetDoubleClickOnPointCommand(
913 vtkObject *
object,
const char *method);
914 virtual void SetPointRemovedCommand(
915 vtkObject *
object,
const char *method);
925 virtual void SetSelectionChangedCommand(
926 vtkObject *
object,
const char *method);
950 virtual void SetVisibleRangeChangedCommand(
951 vtkObject *
object,
const char *method);
952 virtual void SetVisibleRangeChangingCommand(
953 vtkObject *
object,
const char *method);
967 virtual void SetParameterCursorMovingCommand(
968 vtkObject *
object,
const char *method);
969 virtual void SetParameterCursorMovedCommand(
970 vtkObject *
object,
const char *method);
976 vtkSetMacro(DisableCommands,
int);
977 vtkGetMacro(DisableCommands,
int);
978 vtkBooleanMacro(DisableCommands,
int);
991 FunctionChangedEvent = 10000,
992 FunctionStartChangingEvent,
993 FunctionChangingEvent,
998 SelectionChangedEvent,
999 VisibleParameterRangeChangedEvent,
1000 VisibleParameterRangeChangingEvent,
1001 VisibleValueRangeChangedEvent,
1002 VisibleValueRangeChangingEvent,
1003 VisibleRangeChangedEvent,
1004 VisibleRangeChangingEvent,
1005 RelativeVisibleRangeChangedEvent,
1006 RelativeVisibleRangeChangingEvent,
1007 ParameterCursorMovedEvent,
1008 ParameterCursorMovingEvent,
1009 DoubleClickOnPointEvent
1020 virtual int SynchronizeVisibleParameterRange(
1022 virtual int DoNotSynchronizeVisibleParameterRange(
1044 virtual int SynchronizeSingleSelection(
1046 virtual int DoNotSynchronizeSingleSelection(
1056 virtual int SynchronizeSameSelection(
1058 virtual int DoNotSynchronizeSameSelection(
1068 virtual void Update();
1082 static const char *FunctionTag;
1083 static const char *SelectedTag;
1084 static const char *PointTag;
1085 static const char *PointGuidelineTag;
1086 static const char *PointTextTag;
1087 static const char *LineTag;
1088 static const char *HistogramTag;
1089 static const char *SecondaryHistogramTag;
1090 static const char *FrameForegroundTag;
1091 static const char *FrameBackgroundTag;
1092 static const char *ParameterCursorTag;
1093 static const char *ParameterTicksTag;
1094 static const char *ValueTicksTag;
1107 virtual int MoveFunctionPoint(
int id,
double parameter,
const double *values);
1111 virtual void ConfigureCallback();
1112 virtual void VisibleParameterRangeChangingCallback(
double,
double);
1113 virtual void VisibleParameterRangeChangedCallback(
double,
double);
1114 virtual void VisibleValueRangeChangingCallback(
double,
double);
1115 virtual void VisibleValueRangeChangedCallback(
double,
double);
1116 virtual void StartInteractionCallback(
int x,
int y,
int shift);
1117 virtual void MovePointCallback(
int x,
int y,
int shift);
1118 virtual void EndInteractionCallback(
int x,
int y);
1119 virtual void ParameterCursorStartInteractionCallback(
int x);
1120 virtual void ParameterCursorEndInteractionCallback();
1121 virtual void ParameterCursorMoveCallback(
int x);
1122 virtual void ParameterEntryCallback(
const char*);
1123 virtual void HistogramLogModeCallback(
int mode);
1124 virtual void DoubleClickOnPointCallback(
int x,
int y);
1142 virtual int FunctionLineIsInVisibleRangeBetweenPoints(
int id1,
int id2);
1146 virtual int GetFunctionPointColorInCanvas(
int id,
double rgb[3]);
1147 virtual int GetFunctionPointTextColorInCanvas(
int id,
double rgb[3]);
1148 virtual int GetFunctionPointCanvasCoordinates(
int id,
int *x,
int *y);
1149 virtual int GetFunctionPointCanvasCoordinatesAtParameter(
1150 double parameter,
int *x,
int *y);
1151 virtual int AddFunctionPointAtCanvasCoordinates(
int x,
int y,
int *
id);
1152 virtual int AddFunctionPointAtParameter(
double parameter,
int *
id);
1153 virtual int MoveFunctionPointToCanvasCoordinates(
int id,
int x,
int y);
1154 virtual int MoveFunctionPointToParameter(
int id,
double parameter,
int i=0);
1155 virtual int EqualFunctionPointValues(
1156 const double *values1,
const double *values2);
1157 virtual int FindFunctionPointAtCanvasCoordinates(
1158 int x,
int y,
int *
id,
int *c_x,
int *c_y);
1160 virtual void UpdatePointEntries(
int id);
1168 virtual void RescaleFunctionBetweenEndPoints(
int id,
double old_parameter);
1172 vtkSetMacro(DisableRedraw,
int);
1173 vtkBooleanMacro(DisableRedraw,
int);
1174 vtkGetMacro(DisableRedraw,
int);
1181 virtual int MergePointFromEditor(
1189 virtual int CopyPointFromEditor(
1192 int ParameterRangeVisibility;
1193 int ValueRangeVisibility;
1194 int PointPositionInValueRange;
1195 int ParameterRangePosition;
1196 int PointColorStyle;
1197 int CurrentCanvasHeight;
1198 int CurrentCanvasWidth;
1199 int RequestedCanvasHeight;
1200 int RequestedCanvasWidth;
1201 int ExpandCanvasWidth;
1202 int LockPointsParameter;
1203 int LockEndPointsParameter;
1204 int LockPointsValue;
1205 int RescaleBetweenEndPoints;
1206 int DisableAddAndRemove;
1207 int EnableDirectMove;
1211 double SelectedPointRadius;
1212 int FunctionLineWidth;
1213 int FunctionLineStyle;
1214 int PointGuidelineStyle;
1215 int PointOutlineWidth;
1217 int FirstPointStyle;
1219 int DisableCommands;
1221 int CanvasOutlineVisibility;
1222 int CanvasOutlineStyle;
1223 int ParameterCursorInteractionStyle;
1224 int CanvasBackgroundVisibility;
1225 int ParameterCursorVisibility;
1226 int FunctionLineVisibility;
1227 int CanvasVisibility;
1228 int PointVisibility;
1229 int PointIndexVisibility;
1230 int PointGuidelineVisibility;
1231 int SelectedPointIndexVisibility;
1232 int ParameterRangeLabelVisibility;
1233 int ValueRangeLabelVisibility;
1234 int RangeLabelPosition;
1235 int PointEntriesPosition;
1236 int ParameterEntryVisibility;
1237 int PointEntriesVisibility;
1238 int UserFrameVisibility;
1239 int ParameterTicksVisibility;
1240 int ValueTicksVisibility;
1241 int ComputeValueTicksFromHistogram;
1242 int PointMarginToCanvas;
1244 int NumberOfParameterTicks;
1245 int NumberOfValueTicks;
1246 int ValueTicksCanvasWidth;
1247 int ChangeMouseCursor;
1248 char* ValueTicksFormat;
1249 char* ParameterTicksFormat;
1250 char* ParameterEntryFormat;
1251 double ParameterCursorPosition;
1252 char* SelectedPointText;
1254 double FrameBackgroundColor[3];
1255 double ParameterCursorColor[3];
1256 double PointColor[3];
1257 double SelectedPointColor[3];
1258 double SelectedPointColorInInteraction[3];
1259 double PointTextColor[3];
1260 double SelectedPointTextColor[3];
1261 int ComputePointColorFromValue;
1262 int InUserInteraction;
1266 char *PointAddedCommand;
1267 char *PointChangingCommand;
1268 char *PointChangedCommand;
1269 char *PointRemovedCommand;
1270 char *SelectionChangedCommand;
1271 char *FunctionChangedCommand;
1272 char *FunctionChangingCommand;
1273 char *FunctionStartChangingCommand;
1274 char *VisibleRangeChangedCommand;
1275 char *VisibleRangeChangingCommand;
1276 char *ParameterCursorMovingCommand;
1277 char *ParameterCursorMovedCommand;
1278 char *DoubleClickOnPointCommand;
1281 virtual void InvokeHistogramLogModeChangedCommand(
int mode);
1282 virtual void InvokePointCommand(
1283 const char *command,
int id,
const char *extra = 0);
1285 virtual void InvokePointAddedCommand(
int id);
1286 virtual void InvokePointChangingCommand(
int id);
1287 virtual void InvokePointChangedCommand(
int id);
1288 virtual void InvokePointRemovedCommand(
int id,
double parameter);
1289 virtual void InvokeDoubleClickOnPointCommand(
int id);
1290 virtual void InvokeSelectionChangedCommand();
1291 virtual void InvokeFunctionChangedCommand();
1292 virtual void InvokeFunctionChangingCommand();
1293 virtual void InvokeFunctionStartChangingCommand();
1294 virtual void InvokeVisibleRangeChangedCommand();
1295 virtual void InvokeVisibleRangeChangingCommand();
1296 virtual void InvokeParameterCursorMovingCommand(
double pos);
1297 virtual void InvokeParameterCursorMovedCommand(
double pos);
1319 vtkKWHistogram::ImageDescriptor *HistogramImageDescriptor;
1320 vtkKWHistogram::ImageDescriptor *SecondaryHistogramImageDescriptor;
1322 double HistogramColor[3];
1323 double SecondaryHistogramColor[3];
1324 int ComputeHistogramColorFromValue;
1326 int SecondaryHistogramStyle;
1327 unsigned long LastHistogramBuildTime;
1328 int HistogramLogModeOptionMenuVisibility;
1329 char *HistogramLogModeChangedCommand;
1330 int HistogramPolyLineWidth;
1333 virtual void CreateHistogramLogModeOptionMenu();
1334 virtual void UpdateHistogramLogModeOptionMenu();
1338 virtual void Bind();
1339 virtual void UnBind();
1345 virtual void CreateParameterRange();
1346 virtual void CreateValueRange();
1347 virtual void CreateRangeLabel();
1348 virtual void CreatePointEntriesFrame();
1349 virtual void CreateParameterEntry();
1350 virtual void CreateTopLeftContainer();
1351 virtual void CreateTopLeftFrame();
1352 virtual void CreateUserFrame();
1353 virtual void CreateValueTicksCanvas();
1354 virtual void CreateParameterTicksCanvas();
1355 virtual void CreateGuidelineValueCanvas();
1356 virtual int IsTopLeftFrameUsed();
1357 virtual int IsPointEntriesFrameUsed();
1358 virtual int IsGuidelineValueCanvasUsed();
1362 virtual void Pack();
1363 virtual void PackPointEntries();
1367 virtual void GetCanvasItemCenter(
int item_id,
int *x,
int *y);
1372 virtual void GetCanvasScalingFactors(
double factors[2]);
1373 virtual void GetCanvasMargin(
1374 int *margin_left,
int *margin_right,
int *margin_top,
int *margin_bottom);
1375 virtual void GetCanvasScrollRegion(
double *x,
double *y,
double *x2,
double *y2);
1376 virtual void GetCanvasHorizontalSlidingBounds(
1377 double p_v_range_ext[2],
int bounds[2],
int margins[2]);
1390 virtual unsigned long GetRedrawFunctionTime();
1391 virtual void Redraw();
1392 virtual void RedrawSizeDependentElements();
1393 virtual void RedrawPanOnlyDependentElements();
1394 virtual void RedrawFunctionDependentElements();
1395 virtual void RedrawSinglePointDependentElements(
int id);
1401 virtual void RedrawFunction();
1402 virtual void RedrawPoint(
int id, vtksys_ios::ostream *tk_cmd = 0);
1403 virtual void RedrawLine(
int id1,
int id2, vtksys_ios::ostream *tk_cmd = 0);
1404 virtual void GetLineCoordinates(
int id1,
int id2, vtksys_ios::ostream *tk_cmd);
1409 virtual void RedrawRangeFrame();
1413 virtual void RedrawRangeTicks();
1417 virtual void RedrawParameterCursor();
1421 virtual void RedrawHistogram();
1423 virtual void UpdateHistogramImageDescriptor(vtkKWHistogram::ImageDescriptor*);
1433 double WholeParameterRange[2];
1434 double VisibleParameterRange[2];
1435 double WholeValueRange[2];
1436 double VisibleValueRange[2];
1440 int HasSameWholeRangesComparedTo(Ranges*);
1441 int NeedResizeComparedTo(Ranges*);
1442 int NeedPanOnlyComparedTo(Ranges*);
1445 unsigned long LastRedrawFunctionTime;
1446 int LastRedrawFunctionSize;
1449 double DisplayedWholeParameterRange[2];
1454 ConstrainedMoveFree,
1455 ConstrainedMoveHorizontal,
1456 ConstrainedMoveVertical
1459 int LastSelectionCanvasCoordinateX;
1460 int LastSelectionCanvasCoordinateY;
1461 int LastConstrainedMove;
1466 virtual void UpdateRangeLabel();
1470 virtual void UpdateParameterEntry(
int id);
1476 virtual int CanvasHasTag(
1477 const char *tag,
int *suffix = 0,
vtkKWCanvas *canv = NULL);
1481 virtual void CanvasRemoveTag(
const char *tag,
const char *canv_name = NULL);
1482 virtual void CanvasRemoveTag(
1483 const char *prefix,
int id,
const char *canv_name = NULL);
1487 virtual int CanvasCheckTagType(
const char *prefix,
int id,
const char *type);
1493 int FindClosestItemWithTagAtCanvasCoordinates(
1494 int x,
int y,
int halo,
const char *tag,
int *c_x,
int *c_y,
char *found);
1498 vtkCallbackCommand *SynchronizeCallbackCommand;
1499 vtkCallbackCommand *SynchronizeCallbackCommand2;
1501 virtual int AddObserversList(
int nb_events,
int *events, vtkCommand *cmd);
1502 virtual int RemoveObserversList(
int nb_events,
int *events, vtkCommand *cmd);
1504 virtual void ProcessSynchronizationEvents(
1505 vtkObject *caller,
unsigned long event,
void *calldata);
1506 static void ProcessSynchronizationEventsFunction(
1507 vtkObject *
object,
unsigned long event,
void *clientdata,
void *calldata);
1509 virtual void ProcessSynchronizationEvents2(
1510 vtkObject *caller,
unsigned long event,
void *calldata);
1511 static void ProcessSynchronizationEventsFunction2(
1512 vtkObject *
object,
unsigned long event,
void *clientdata,
void *calldata);