Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

Axis.h

Go to the documentation of this file.
00001 //LabPlot: Axis.h
00002 
00003 #ifndef AXIS_H
00004 #define AXIS_H
00005 
00006 #include <qstring.h>
00007 #include <qfont.h>
00008 #include <qcolor.h>
00009 #include "Label.h"
00010 #include "scale.h"
00011 #include "tickformat.h"
00012 
00013 class Axis {
00014 public:
00015         Axis();
00016         QDomElement saveXML(QDomDocument doc, int id);
00017         void openXML(QDomNode node);
00018         void Enable(bool b=true) { enabled = b; }
00019         bool Enabled() { return enabled; }
00020         void setScale(TScale s) { scale=s; }
00021         TScale Scale() { return scale; }
00022         void setLabel(Label *l) { label = l; }
00023         Label *getLabel() { return label; }
00024         void setScaling(double s) { scaling=s; }
00025         double Scaling() { return scaling; }
00026         void setShift(double s) { shift=s; }
00027         double Shift() { return shift; }
00028         void setPosition(int p) { position = p; }
00029         int Position() { return position; }
00030         void centerX(int plotsize, double center);      
00031         void centerY(int plotsize, double center);      
00032 
00033         bool tickType() { return ticktype; }
00034         void setTickType(bool t) { ticktype = t; } 
00035         bool tickLabelEnabled() { return ticklabel_enabled; }
00036         void enableTickLabel(bool e=true) { ticklabel_enabled = e; } 
00037         void setTickLabelRotation(double r) { ticklabelrotation = r; }
00038         double TickLabelRotation() { return ticklabelrotation; }
00039         void setTickLabelPrefix(QString p) { ticklabelprefix=p; }
00040         QString TickLabelPrefix() { return ticklabelprefix; }
00041         void setTickLabelSuffix(QString s) { ticklabelsuffix=s; }
00042         QString TickLabelSuffix() { return ticklabelsuffix; }
00043         void setTickLabelFont(QFont a) { tickfont = a; }
00044         QFont TickLabelFont() { return tickfont; }
00045         void setTickColor(QColor col) { tickcolor = col; }
00046         QColor TickColor() { return tickcolor; }
00047         void setTickLabelColor(QColor col) { ticklabelcolor = col; }
00048         QColor TickLabelColor() { return ticklabelcolor; }
00049         void setTickLabelFormat(TFormat t) { ticklabelformat = t; }
00050         TFormat TickLabelFormat() { return ticklabelformat; }
00051         void setDateTimeFormat(QString f) { datetimeformat = f; }
00052         QString DateTimeFormat() { return datetimeformat; }
00053         void setTickLabelPrecision(int p) { ticklabelprecision = p; }
00054         int TickLabelPrecision() { return ticklabelprecision; }
00055         void setTickLabelPosition(int g) { gap=g; }
00056         int TickLabelPosition() { return gap; }
00057         
00058         void setMajorTicks(double t) { majorticks = t; }        
00059         double MajorTicks() { return majorticks; }              
00060         void setMinorTicks(int t) { minorticks = t; }   
00061         int MinorTicks() { return minorticks; }         
00062         void enableMajorTicks(bool b=true) { majorticks_enabled = b; }
00063         void enableMinorTicks(bool b=true) { minorticks_enabled = b; }
00064         bool MajorTicksEnabled() { return majorticks_enabled; }
00065         bool MinorTicksEnabled() { return minorticks_enabled; }
00066         void setTickPos(int tp) { tickpos = tp; }
00067         int TickPos() { return tickpos; }
00068         void setMajorTickWidth(int w) { majortickwidth = w; }
00069         int majorTickWidth() { return majortickwidth; }
00070         void setMinorTickWidth(int w) { minortickwidth = w; }
00071         int minorTickWidth() { return minortickwidth; }
00072         double majorTickLength() { return majorticklength; }
00073         void setMajorTickLength(double v) {majorticklength=v; }
00074         double minorTickLength() { return minorticklength; }
00075         void setMinorTickLength(double v) {minorticklength=v; }
00076         
00077         bool BorderEnabled() { return border_enabled; }
00078         void enableBorder(bool b=true) { border_enabled=b; }
00079         void setBorderColor(QColor c) { bordercolor = c; }
00080         QColor BorderColor() { return bordercolor; }
00081         void setBorderWidth(int b) { borderwidth = b; }
00082         int borderWidth() { return borderwidth; }
00083 
00084         bool MajorGridEnabled() { return majorgrid_enabled; }
00085         void enableMajorGrid(bool b=true) { majorgrid_enabled=b; }
00086         bool MinorGridEnabled() { return minorgrid_enabled; }
00087         void enableMinorGrid(bool b=true) { minorgrid_enabled=b; }
00088         void setMajorGridColor(QColor c) { majorgridcolor = c; }
00089         QColor majorGridColor() { return majorgridcolor; }
00090         void setMinorGridColor(QColor c) { minorgridcolor = c; }
00091         QColor minorGridColor() { return minorgridcolor; }
00092         void setMajorGridType(Qt::PenStyle t) { majorgridtype = t; }
00093         Qt::PenStyle MajorGridType() { return majorgridtype; }
00094         void setMinorGridType(Qt::PenStyle t) { minorgridtype = t; }
00095         Qt::PenStyle MinorGridType() { return minorgridtype; }
00096         void setMajorGridWidth(int w) { majorgridwidth = w; }
00097         int majorGridWidth() { return majorgridwidth; }
00098         void setMinorGridWidth(int w) { minorgridwidth = w; }
00099         int minorGridWidth() { return minorgridwidth; }
00100 private:
00101         bool enabled;                           
00102         Label *label;
00103         int position;                           
00104         TScale scale;
00105         double scaling, shift;  
00106         int ticktype;                   
00107         bool ticklabel_enabled;         
00108         double ticklabelrotation;       
00109         QString ticklabelprefix, ticklabelsuffix;       
00110         QFont tickfont;                 
00111         QColor tickcolor, ticklabelcolor;
00112         TFormat ticklabelformat;        
00113         QString datetimeformat;         
00114         int ticklabelprecision;         
00115         int tickpos;                    
00116         double majorticks;              
00117         int minorticks;                 
00118         bool majorticks_enabled;                
00119         bool minorticks_enabled;                
00120         int gap;                                
00121         bool border_enabled;                    
00122         QColor bordercolor;                     
00123         int borderwidth;
00124         bool majorgrid_enabled, minorgrid_enabled;      
00125         QColor majorgridcolor, minorgridcolor;  //<! major/minor grid color
00126         Qt::PenStyle majorgridtype;             
00127         Qt::PenStyle minorgridtype;             
00128         int majortickwidth, minortickwidth;
00129         int majorgridwidth, minorgridwidth;
00130         double majorticklength, minorticklength;
00131 };
00132 
00133 #endif  //AXIS_H

Generated on Sun Apr 2 02:05:09 2006 for LabPlot by  doxygen 1.4.4