This file is indexed.

/usr/include/KWWidgets/vtkKWLogWidget.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
/*=========================================================================

  Module:    $RCSfile: vtkKWLogWidget.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 vtkKWLogWidget - a log widget.
// .SECTION Description
// This widget can be used to display various types of records/events in the
// form of a multicolumn log. Each record is timestamped automatically, and 
/// the interface allow the user to sort the list by time, type, or 
// description.
// This widget can be inserted in any widget hierarchy, or used a standalone
// dialog through the vtkKWLogDialog class.
// .SECTION Thanks
// This work is part of the National Alliance for Medical Image
// Computing (NAMIC), funded by the National Institutes of Health
// through the NIH Roadmap for Medical Research, Grant U54 EB005149.
// Information on the National Centers for Biomedical Computing
// can be obtained from http://nihroadmap.nih.gov/bioinformatics.
// .SECTION See Also
// vtkKWLogDialog

#ifndef __vtkKWLogWidget_h
#define __vtkKWLogWidget_h

#include "vtkKWCompositeWidget.h"

class vtkKWMultiColumnListWithScrollbars;
class vtkKWLogWidgetInternals;
class vtkKWToolbar;
class vtkKWLoadSaveButton;
class vtkKWPushButton;
class vtkKWTextWithScrollbars;
class vtkKWFrameWithLabel;

class KWWidgets_EXPORT vtkKWLogWidget : public vtkKWCompositeWidget
{
public:
  static vtkKWLogWidget* New();
  vtkTypeRevisionMacro(vtkKWLogWidget,vtkKWCompositeWidget);
  void PrintSelf(ostream& os, vtkIndent indent);
  
  // Description:
  // Add a record.
  // Return a unique record ID, which can be used to retrieve later on.
  virtual int AddErrorRecord(const char *description);
  virtual int AddWarningRecord(const char *description);
  virtual int AddInformationRecord(const char *description);
  virtual int AddDebugRecord(const char *description);
  
  // Description:
  // Get number of records.
  virtual int GetNumberOfRecords();

  // Description:
  // Remove all records.
  virtual void RemoveAllRecords();

  // Description:
  // Set/Get the max number of records that will be stored. 
  virtual void SetMaximumNumberOfRecords(int);
  vtkGetMacro(MaximumNumberOfRecords, int);
  
  // Description:
  // Write all record to a stream or text file.
  // Return 1 on success, 0 otherwise
  virtual int WriteRecordsToStream(ostream& os);
  virtual int WriteRecordsToFile(const char *filename);
  
  // Description:
  // Email records.
  virtual int EmailRecords(const char *recipient);

  // Description:
  // Callback, do NOT use. 
  // When the time column is displayed, convert 
  // the cell text (time value in seconds) to ctime format.
  // Returns the formatted string that will be displayed.
  virtual char *GetFormatTimeStringCallback(const char *celltext);
  
  // Description:
  // Callback, do NOT use. 
  // Write all records to a text file
  virtual void WriteRecordsToFileCallback();
  
  // Description:
  // Callback, do NOT use. 
  // Remove selected or all records from the table.
  virtual void RemoveSelectedRecordsCallback();
  virtual void RemoveAllRecordsCallback();
  virtual void EmailRecordsCallback();

  // Description:
  // Callback, do NOT use. 
  // Invoked when selection is changed in the table.
  virtual void SelectionChangedCallback();
  
  // 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();
  virtual void Update();

  // Description:
  // Events. 
  // RecordsClearedEvent is called when all records have been cleared using
  // the "delete selected" or "delete all" button..
  //BTX
  enum
  {
    RecordsClearedEvent = 15000
  };
  //ETX

protected:
  vtkKWLogWidget();
  ~vtkKWLogWidget();

  // Description:
  // Create the widget.
  virtual void CreateWidget();
  
  // Description:
  // Define the record types with enumeration
  //BTX
  enum
  {
    ErrorType = 0,
    WarningType,
    InformationType,
    DebugType
  };
  //ETX
  
  // Description:
  // Create the log list.
  virtual void CreateRecordList();
  
  // Description:
  // Get current time in seconds.
  virtual unsigned int GetCurrentTimeInSeconds();
  
  // Description:
  // Remove the record from internal stored list.
  virtual void RemoveInternalRecord(int record_id);
  
  // Description:
  // Get the record description.
  virtual const char* GetRecordDescription(int record_id);
  
  // Description:
  // Add a record to the table and the stored list using the description 
  // and type.
  // Return a unique record ID.  
  virtual int AddRecord(const char *description, int type);
  
  // Description:
  // Check if the stored internal records number is greater than
  // MaximumNumberOfRecords. If yes, remove the oldest records
  // and corresponsing rows.  
  virtual void PruneRecords();
  
  // Description:
  // Remove the corresponding row from the record table given the 
  // record ID. 
  virtual void RemoveRowWithRecordId(int record_id);

  // Description:
  // Return the index of the row for the given record ID
  virtual int GetIndexOfRowWithRecordId(int record_id);
  
  // Description:
  // Member variables
  vtkKWLogWidgetInternals *Internals;
  vtkKWMultiColumnListWithScrollbars *RecordList;
  vtkKWToolbar *Toolbar;
  vtkKWLoadSaveButton *SaveButton;
  vtkKWPushButton *RemoveSelectedButton;
  vtkKWPushButton *RemoveAllButton;
  vtkKWPushButton *EmailButton;
  vtkKWFrameWithLabel *DescriptionFrame;
  vtkKWTextWithScrollbars *DescriptionText;

  int MaximumNumberOfRecords;
  
private:

  static vtkIdType IdCounter;

  vtkKWLogWidget(const vtkKWLogWidget&); // Not implemented
  void operator=(const vtkKWLogWidget&); // Not implemented
};
#endif