/usr/include/KWWidgets/vtkKWExtent.h is in libkwwidgets1-dev 1.0.0~cvs20100930-8.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 | /*=========================================================================
Module: $RCSfile: vtkKWExtent.h,v $
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkKWExtent - six sliders defining a (xmin,xmax,ymin,ymax,zmin,zmax) extent
// .SECTION Description
// vtkKWExtent is a widget containing six sliders which represent the
// xmin, xmax, ymin, ymax, zmin, zmax extent of a volume. It is a
// convinience object and has logic to keep the min values less than
// or equal to the max values.
#ifndef __vtkKWExtent_h
#define __vtkKWExtent_h
#include "vtkKWCompositeWidget.h"
#include "vtkKWRange.h" // Needed for some constants
class KWWidgets_EXPORT vtkKWExtent : public vtkKWCompositeWidget
{
public:
static vtkKWExtent* New();
vtkTypeRevisionMacro(vtkKWExtent,vtkKWCompositeWidget);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Set the Range of the Extent, this is the range of
// acceptable values for the sliders. Specified as
// minx maxx miny maxy minz maxz
virtual void SetExtentRange(const double extent[6]);
virtual void SetExtentRange(double, double, double, double, double, double);
virtual double* GetExtentRange();
virtual void GetExtentRange(
double&, double&, double&, double&, double&, double&);
virtual void GetExtentRange(double extent[6]);
// Description:
// Set/Get the Extent.
vtkGetVector6Macro(Extent,double);
virtual void SetExtent(const double extent[6]);
virtual void SetExtent(double, double, double, double, double, double);
// Description:
// Set/Get the visibility of the extent selectively (x, y, z).
virtual void SetExtentVisibility(int index, int arg);
vtkBooleanMacro(XExtentVisibility, int);
virtual int GetXExtentVisibility() { return this->ExtentVisibility[0]; };
virtual void SetXExtentVisibility(int arg)
{ this->SetExtentVisibility(0, arg); };
vtkBooleanMacro(YExtentVisibility, int);
virtual int GetYExtentVisibility() { return this->ExtentVisibility[1]; };
virtual void SetYExtentVisibility(int arg)
{ this->SetExtentVisibility(1, arg); };
vtkBooleanMacro(ZExtentVisibility, int);
virtual int GetZExtentVisibility() { return this->ExtentVisibility[2]; };
virtual void SetZExtentVisibility(int arg)
{ this->SetExtentVisibility(2, arg); };
// Description:
// Specifies commands to associate with the widget.
// 'Command' is invoked when the widget value is changing (i.e. during
// user interaction).
// 'StartCommand' is invoked at the beginning of a user interaction with
// the widget (when a mouse button is pressed over the widget for example).
// 'EndCommand' is invoked at the end of the user interaction with the
// widget (when the mouse button is released for example).
// The need for a 'Command', 'StartCommand' and 'EndCommand' can be
// explained as follows: 'EndCommand' can be used to be notified about any
// changes made to this widget *after* the corresponding user interaction has
// been performed (say, after releasing the mouse button that was dragging
// a slider, or after clicking on a checkbutton). 'Command' can be set
// *additionally* to be notified about the intermediate changes that
// occur *during* the corresponding user interaction (say, *while* dragging
// a slider). While setting 'EndCommand' is enough to be notified about
// any changes, setting 'Command' is an application-specific choice that
// is likely to depend on how fast you want (or can) answer to rapid changes
// occuring during a user interaction, if any. 'StartCommand' is rarely
// used but provides an opportunity for the application to modify its
// state and prepare itself for user-interaction; in that case, the
// 'EndCommand' is usually set in a symmetric fashion to set the application
// back to its previous state.
// The 'object' argument is the object that will have the method called on
// it. The 'method' argument is the name of the method to be called and any
// arguments in string form. If the object is NULL, the method is still
// evaluated as a simple command.
// The following parameters are also passed to the command:
// - the current extent: int, int, int, int, int, int (if the Resolution of
// all the visible ranges are integer); double, double, double, double,
// double, double otherwise.
// Note: the 'int' signature is for convenience, so that the command can
// be set to a callback accepting 'int'. In doubt, implement the callback
// using a 'double' signature that will accept both 'int' and 'double'.
virtual void SetCommand(vtkObject *object, const char *method);
virtual void SetStartCommand(vtkObject *object, const char *method);
virtual void SetEndCommand(vtkObject *object, const char *method);
// Description:
// Events. The events are triggered when the extent slider is changed.
//BTX
enum
{
ChangeEvent = 10000,
StartChangeEvent = 10001,
EndChangeEvent = 10002
};
//ETX
// Description:
// Set/Get whether the above commands should be called or not.
virtual void SetDisableCommands(int);
vtkBooleanMacro(DisableCommands, int);
// Description:
// Set the ranges orientations and item positions.
// This just propagates the same method to the internal ranges.
virtual void SetOrientation(int);
virtual void SetOrientationToHorizontal()
{ this->SetOrientation(vtkKWRange::OrientationHorizontal); };
virtual void SetOrientationToVertical()
{ this->SetOrientation(vtkKWRange::OrientationVertical); };
virtual void SetLabelPosition(int);
virtual void SetLabelPositionToDefault()
{ this->SetLabelPosition(vtkKWWidgetWithLabel::LabelPositionDefault); };
virtual void SetLabelPositionToTop()
{ this->SetLabelPosition(vtkKWWidgetWithLabel::LabelPositionTop); };
virtual void SetLabelPositionToBottom()
{ this->SetLabelPosition(vtkKWWidgetWithLabel::LabelPositionBottom); };
virtual void SetLabelPositionToLeft()
{ this->SetLabelPosition(vtkKWWidgetWithLabel::LabelPositionLeft); };
virtual void SetLabelPositionToRight()
{ this->SetLabelPosition(vtkKWWidgetWithLabel::LabelPositionRight); };
virtual void SetEntry1Position(int);
virtual void SetEntry1PositionToDefault()
{ this->SetEntry1Position(vtkKWRange::EntryPositionDefault); };
virtual void SetEntry1PositionToTop()
{ this->SetEntry1Position(vtkKWRange::EntryPositionTop); };
virtual void SetEntry1PositionToBottom()
{ this->SetEntry1Position(vtkKWRange::EntryPositionBottom); };
virtual void SetEntry1PositionToLeft()
{ this->SetEntry1Position(vtkKWRange::EntryPositionLeft); };
virtual void SetEntry1PositionToRight()
{ this->SetEntry1Position(vtkKWRange::EntryPositionRight); };
virtual void SetEntry2Position(int);
virtual void SetEntry2PositionToDefault()
{ this->SetEntry2Position(vtkKWRange::EntryPositionDefault); };
virtual void SetEntry2PositionToTop()
{ this->SetEntry2Position(vtkKWRange::EntryPositionTop); };
virtual void SetEntry2PositionToBottom()
{ this->SetEntry2Position(vtkKWRange::EntryPositionBottom); };
virtual void SetEntry2PositionToLeft()
{ this->SetEntry2Position(vtkKWRange::EntryPositionLeft); };
virtual void SetEntry2PositionToRight()
{ this->SetEntry2Position(vtkKWRange::EntryPositionRight); };
virtual void SetThickness(int);
virtual void SetInternalThickness(double);
virtual void SetRequestedLength(int);
virtual void SetSliderSize(int);
virtual void SetSliderCanPush(int);
vtkBooleanMacro(SliderCanPush, int);
// Description:
// Update the "enable" state of the object and its internal parts.
// Depending on different Ivars (this->Enabled, the application's
// Limited Edition Mode, etc.), the "enable" state of the object is updated
// and propagated to its internal parts/subwidgets. This will, for example,
// enable/disable parts of the widget UI, enable/disable the visibility
// of 3D widgets, etc.
virtual void UpdateEnableState();
// Description:
// Access the internal vtkKWRange's.
vtkKWRange* GetXRange() { return this->Range[0]; };
vtkKWRange* GetYRange() { return this->Range[1]; };
vtkKWRange* GetZRange() { return this->Range[2]; };
vtkKWRange* GetRange(int index);
// Description:
// Callbacks. Internal, do not use.
virtual void RangeCommandCallback(double r0, double r1);
virtual void RangeStartCommandCallback(double r0, double r1);
virtual void RangeEndCommandCallback(double r0, double r1);
virtual void RangeEntriesCommandCallback(double r0, double r1);
protected:
vtkKWExtent();
~vtkKWExtent();
// Description:
// Create the widget.
virtual void CreateWidget();
char *Command;
char *StartCommand;
char *EndCommand;
virtual void InvokeExtentCommand(
const char *command,
double x0, double x1, double y0, double y1, double z0, double z1);
virtual void InvokeCommand(
double x0, double x1, double y0, double y1, double z0, double z1);
virtual void InvokeStartCommand(
double x0, double x1, double y0, double y1, double z0, double z1);
virtual void InvokeEndCommand(
double x0, double x1, double y0, double y1, double z0, double z1);
double Extent[6];
vtkKWRange *Range[3];
int ExtentVisibility[3];
// Pack or repack the widget
virtual void Pack();
private:
// Temporary var for wrapping purposes
double ExtentRangeTemp[6];
vtkKWExtent(const vtkKWExtent&); // Not implemented
void operator=(const vtkKWExtent&); // Not implemented
};
#endif
|