lib/TrendLine.h

Go to the documentation of this file.
00001 /*
00002  *  Qtstalker stock charter
00003  *
00004  *  Copyright (C) 2001-2007 Stefan S. Stratigakos
00005  *
00006  *  This program is free software; you can redistribute it and/or modify
00007  *  it under the terms of the GNU General Public License as published by
00008  *  the Free Software Foundation; either version 2 of the License, or
00009  *  (at your option) any later version.
00010  *
00011  *  This program is distributed in the hope that it will be useful,
00012  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  *  GNU General Public License for more details.
00015  *
00016  *  You should have received a copy of the GNU General Public License
00017  *  along with this program; if not, write to the Free Software
00018  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
00019  *  USA.
00020  */
00021 
00022 #ifndef TRENDLINE_HPP
00023 #define TRENDLINE_HPP
00024 
00025 #include "COBase.h"
00026 #include "Setting.h"
00027 #include <qpointarray.h>
00028 #include <qpoint.h>
00029 #include <qdatetime.h>
00030 
00031 class TrendLine : public COBase
00032 {
00033   Q_OBJECT
00034 
00035   public:
00036     TrendLine ();
00037     ~TrendLine ();
00038     void draw (QPixmap &, Scaler &, int, int, int);
00039     void newObject (QString &, QString &);
00040     double getHigh ();
00041     double getLow ();
00042     void drawMovingPointer (QPixmap &, QPoint &);
00043     void loadDefaults ();
00044     void saveDefaults ();
00045     void getSettings (Setting &);
00046     void setSettings (Setting &);
00047     void setDate2 (QDateTime &);
00048     void getDate2 (QDateTime &);
00049     void setValue2 (double);
00050     double getValue2 ();
00051     int isGrabSelected (QPoint point);
00052     bool getUseBar ();
00053     void getBar (QString &);
00054     bool getExtend ();
00055     void adjustForSplit (QDateTime &, double);
00056     
00057   public slots:
00058     void prefDialog ();
00059     COBase::Status pointerClick (QPoint &, QDateTime &, double);
00060     void pointerMoving (QPixmap &, QPoint &, QDateTime &, double);
00061     
00062   protected:
00063     bool usebar;
00064     bool extend;
00065     QString bar;
00066     int moveFlag;
00067     QDateTime tx;
00068     double ty;
00069     int mpx, mpx2, mpy, mpy2;
00070     QDateTime date2;
00071     double value2;
00072     QString sdateLabel;
00073     QString edateLabel;
00074     QString svalueLabel;
00075     QString evalueLabel;
00076     QString fieldLabel;
00077     QString usebarLabel;
00078     QString extendLabel;
00079 
00080 };
00081 
00082 #endif
00083