Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef __vtkKWLogWidget_h
00032 #define __vtkKWLogWidget_h
00033
00034 #include "vtkKWCompositeWidget.h"
00035
00036 class vtkKWMultiColumnListWithScrollbars;
00037 class vtkKWLogWidgetInternals;
00038 class vtkKWToolbar;
00039 class vtkKWLoadSaveButton;
00040 class vtkKWPushButton;
00041 class vtkKWTextWithScrollbars;
00042 class vtkKWFrameWithLabel;
00043
00044 class KWWidgets_EXPORT vtkKWLogWidget : public vtkKWCompositeWidget
00045 {
00046 public:
00047 static vtkKWLogWidget* New();
00048 vtkTypeRevisionMacro(vtkKWLogWidget,vtkKWCompositeWidget);
00049 void PrintSelf(ostream& os, vtkIndent indent);
00050
00051
00052
00053
00054 virtual int AddErrorRecord(const char *description);
00055 virtual int AddWarningRecord(const char *description);
00056 virtual int AddInformationRecord(const char *description);
00057 virtual int AddDebugRecord(const char *description);
00058
00059
00060
00061 virtual int GetNumberOfRecords();
00062
00063
00064
00065 virtual void RemoveAllRecords();
00066
00067
00068
00069 virtual void SetMaximumNumberOfRecords(int);
00070 vtkGetMacro(MaximumNumberOfRecords, int);
00071
00072
00073
00074
00075 virtual int WriteRecordsToStream(ostream& os);
00076 virtual int WriteRecordsToFile(const char *filename);
00077
00078
00079
00080 virtual int EmailRecords(const char *recipient);
00081
00082
00083
00084
00085
00086
00087 virtual char *GetFormatTimeStringCallback(const char *celltext);
00088
00089
00090
00091
00092 virtual void WriteRecordsToFileCallback();
00093
00094
00095
00096
00097 virtual void RemoveSelectedRecordsCallback();
00098 virtual void RemoveAllRecordsCallback();
00099 virtual void EmailRecordsCallback();
00100
00101
00102
00103
00104 virtual void SelectionChangedCallback();
00105
00106
00107
00108
00109
00110
00111
00112
00113 virtual void UpdateEnableState();
00114 virtual void Update();
00115
00116
00117
00118
00119
00120
00121 enum
00122 {
00123 RecordsClearedEvent = 15000
00124 };
00125
00126
00127 protected:
00128 vtkKWLogWidget();
00129 ~vtkKWLogWidget();
00130
00131
00132
00133 virtual void CreateWidget();
00134
00135
00136
00137
00138 enum
00139 {
00140 ErrorType = 0,
00141 WarningType,
00142 InformationType,
00143 DebugType
00144 };
00145
00146
00147
00148
00149 virtual void CreateRecordList();
00150
00151
00152
00153 virtual unsigned int GetCurrentTimeInSeconds();
00154
00155
00156
00157 virtual void RemoveInternalRecord(int record_id);
00158
00159
00160
00161 virtual const char* GetRecordDescription(int record_id);
00162
00163
00164
00165
00166
00167 virtual int AddRecord(const char *description, int type);
00168
00169
00170
00171
00172
00173 virtual void PruneRecords();
00174
00175
00176
00177
00178 virtual void RemoveRowWithRecordId(int record_id);
00179
00180
00181
00182 virtual int GetIndexOfRowWithRecordId(int record_id);
00183
00184
00185
00186 vtkKWLogWidgetInternals *Internals;
00187 vtkKWMultiColumnListWithScrollbars *RecordList;
00188 vtkKWToolbar *Toolbar;
00189 vtkKWLoadSaveButton *SaveButton;
00190 vtkKWPushButton *RemoveSelectedButton;
00191 vtkKWPushButton *RemoveAllButton;
00192 vtkKWPushButton *EmailButton;
00193 vtkKWFrameWithLabel *DescriptionFrame;
00194 vtkKWTextWithScrollbars *DescriptionText;
00195
00196 int MaximumNumberOfRecords;
00197
00198 private:
00199
00200 static vtkIdType IdCounter;
00201
00202 vtkKWLogWidget(const vtkKWLogWidget&);
00203 void operator=(const vtkKWLogWidget&);
00204 };
00205 #endif