10 #ifndef progressiveLineGraph_H_
11 #define progressiveLineGraph_H_
19 #include <QtGui/QWidget>
23 class QLinearGradient;
28 class DtLgrVerticalRangeSlider;
50 int verticalMargin()
const;
53 void setMargins(
int horizontalMargin,
int verticalMargin);
56 void addSet(
int set,QPen pen,
int initial,
bool valueCentered =
false);
59 void insertValue(
int set,
double percent,
int value);
62 virtual void resetAllValues(
int value);
65 virtual void resetValues(
int set,
int value);
68 virtual void clearValues(
int set);
71 virtual void clearAllValues();
75 virtual void offsetPercentages(
double percentOffset);
79 virtual void offsetPercentages(
int set,
double percentOffset);
83 virtual void setRange(
int min,
int max);
86 virtual int rangeMinimum()
const;
87 virtual int rangeMaximum()
const;
91 virtual bool autoScale()
const;
95 virtual void setAutoScale(
bool value);
98 virtual void setNegativeReflection(
bool positive);
101 virtual void useBackgroundGradient(
bool useIt);
104 virtual bool usesBackgroundGradient()
const;
107 virtual void useAlphaBlending(
bool useIt);
110 virtual bool usesAlphaBlending()
const;
113 void useBasicGui(
bool basic);
117 virtual void drawAsVerticalLines(
bool useVerticalLines);
121 virtual bool usesVerticalLines()
const;
124 virtual void setOffsets(
float left,
float right);
127 void forceUpdate(
bool widgetUpdate);
130 bool updateNeeded()
const;
138 virtual void enableZoom();
140 virtual void disableZoom();
143 virtual void initializeZoomSlider();
146 virtual void syncZoomSlider();
149 virtual void setZoomed(
bool zoom);
152 virtual bool isZoomed();
154 virtual bool isMoveValid(
int slideAmount);
157 void wheelMoved(
int);
160 void moveUp(
int steps);
162 void moveDown(
int steps);
164 void scrollBarMoved(
int action);
169 typedef std::map<int,Set*>
SetMap;
172 virtual double firstTime()
const;
175 virtual double lastTime()
const;
178 virtual double currentTime()
const;
181 virtual void resizeEvent( QResizeEvent* e);
184 virtual void paintEvent( QPaintEvent* );
187 virtual void draw(QPainter& painter,
const QRect& rect);
190 virtual void paintBackground(QPainter& painter);
193 virtual int getSeparation()
const;
196 virtual void paintLines(QPainter&,Set&
set);
199 virtual int desiredRange()
const;
203 int rangeHeight, QPainter &painter, QPen pen,
bool centered);
207 int rangeHeight, QPainter &painter, QPen pen );
210 int desiredMinimum()
const;
213 virtual void wheelEvent(QWheelEvent *event);
216 virtual void validateAndSetZoomedGraphRanges(
int zoomedMax,
int zoomedMin);
219 virtual void slideZoomedRangeDown(
int slideAmount);
220 virtual void slideZoomedRangeUp(
int slideAmount);
223 virtual void setScrollBarRange();
226 virtual void calibrateScrollBarPosition(
int jumpsToMax);