00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00009 00010 #ifndef lgrRangeAnnotation_H_ 00011 #define lgrRangeAnnotation_H_ 00012 00013 #include "lgrAnn.h" 00014 #include "lgrAnnotation.h" 00015 #include "lgrAnnotationFactory.h" 00016 00017 #include "absoluteTime.h" 00018 #include <vlutil/vlString.h> 00019 00020 class QPainter; 00021 00022 namespace MAKLogger 00023 { 00024 struct RectF; 00025 00028 class DT_DLL_LGRANN DtLgrRangeAnnotation : public DtLgrAnnotation 00029 { 00030 public: 00031 00032 DtLgrRangeAnnotation(const DtString& name,const DtString& description, 00033 DtAbsoluteTime startTime,DtAbsoluteTime endTime); 00034 00035 virtual ~DtLgrRangeAnnotation(); 00036 00037 private: 00039 DtLgrRangeAnnotation(const DtLgrRangeAnnotation&); 00041 DtLgrRangeAnnotation& operator=(const DtLgrRangeAnnotation&); 00042 public: 00043 00045 virtual const DtString& type() const; 00046 00048 virtual void setName(const DtString& name); 00049 00051 virtual const DtString& name() const; 00052 00054 virtual void setText(const DtString& name); 00055 00057 virtual const DtString& text() const; 00058 00060 virtual void setStartTime(const DtAbsoluteTime& time); 00061 00063 virtual const DtAbsoluteTime& startTime() const; 00064 00066 virtual void setEndTime(const DtAbsoluteTime& time); 00067 00069 virtual const DtAbsoluteTime& endTime() const; 00070 00072 virtual DtRelativeTime duration() const; 00073 00075 virtual void initializeFromObject(const DtEnvObject* annotationObject); 00076 00078 virtual void createObject(DtEnvironment environment); 00079 00081 static DtLgrAnnotationDefinition theDefinition; 00082 00083 protected: 00084 00086 static DtLgrAnnotation* load(const DtEnvObject*); 00087 00089 static DtLgrAnnotationSliderBar* createBar(DtLgrAnnotation*); 00090 00091 DtString myName; 00092 DtString myText; 00093 00094 DtAbsoluteTime myStartTime; 00095 DtAbsoluteTime myEndTime; 00096 00097 }; 00098 00099 } 00100 00101 #endif