Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

rtknamespace.h

00001 /*<<<<<COPYRIGHT*/
00002 /*
00003  * RTK The report toolkit
00004  * Copyright (C) 2003 Francisco Santiago Capel Torres
00005 
00006  * rtknamespace.h RTK namespace
00007  * 
00008  * This program is free software; you can redistribute it and/or modify
00009  * it under the terms of the GNU General Public License as published by
00010  * the Free Software Foundation; either version 2 of the License, or
00011  * (at your option) any later version.
00012  *
00013  * This program is distributed in the hope that it will be useful,
00014  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016  * GNU General Public License for more details.
00017  *
00018  */
00019 /*>>>>>COPYRIGHT*/
00020 #ifndef RTKNAMESPACE_H
00021 #define RTKNAMESPACE_H
00022 
00023 #include <qdatetime.h>
00024 #include <qcolor.h>
00025 #include <qstringlist.h>
00026 #include <qvaluelist.h>
00027 
00028 #include "rtkconfig.h"
00029 
00030 
00031 namespace RTK
00032 {
00033 
00034 typedef QDate Date;
00035 typedef QTime Time;
00036 typedef QDateTime DateTime;
00037 typedef QString String;
00038 typedef QColor Color;
00039 
00040 typedef double Measure;
00041 
00042 enum SectionType {
00043         SectionReportHeader,
00044         SectionReportFooter,
00045         SectionPageHeader,
00046         SectionPageFooter,
00047         SectionGroupHeader,
00048         SectionGroupFooter,
00049         SectionDetails
00050 };
00051 
00052 enum AggregateType {
00053         AggNone,
00054         AggCount,
00055         AggDistinctCount,
00056         AggSum,
00057         AggDistinctSum,
00058                 AggAvg,
00059                 AggDistinctAvg,
00060         AggStdDv,
00061         AggDistinctStdDv,
00062         AggDistinctVariance,
00063         AggVariance
00064 };
00065 
00066 enum AlignmentType {
00067         AlignAuto=0,
00068         AlignLeft,
00069         AlignCenter,
00070         AlignRight,
00071         AlignJustify,
00072                 AlignNoWordWrap,
00073         AlignTop,
00074         AlignMiddle,
00075         AlignBottom
00076 };
00077 
00078 enum BorderStyle {
00079         BorderNone = 0,
00080         BorderSolid,
00081         BorderDash,
00082         BorderDot,
00083         BorderDashDot,
00084         BorderDashDotDot,
00085         Raised3D,
00086         Lowered3D
00087 };
00088 
00089 enum AdjustmentType {
00090         AdjustTrim =       0,
00091         AdjustGrow =       1 << 1,
00092         AdjustNone =       1 << 2,
00093         AdjustReduceFont = 1 << 3,
00094         AdjustShrink     = 1 << 4
00095 };
00096 
00097 
00098 const Measure dotsperinch = 81;
00099 const Measure charsperinch = 10;
00100 const Measure cmperinch = 2.545;
00101 const Measure mmperinch = cmperinch*10;
00102 const Measure dotspercm = dotsperinch/cmperinch;
00103 const Measure dotsperchar = dotsperinch/charsperinch;
00104 
00105 typedef struct {
00106         const char *name;
00107         Measure sizex;
00108         Measure sizey;
00109 } PaperSize;
00110 
00111 
00112 enum UnitsType {
00113         chars=0,
00114         dots=1,
00115         inches=2,
00116         cm=3,
00117         mm=4,
00118         p100=5,
00119         defaultunit /*always the last one*/
00120 };
00121 
00122 enum PaperType {
00123         A4, B5, Letter, Legal, Executive,
00124         A0, A1, A2, A3, A5, A6, A7, A8, A9, B0, B1,
00125         B10, B2, B3, B4, B6, B7, B8, B9, C5E, Comm10E,
00126         DLE, Folio, Ledger, Tabloid, Custom, NPageSize = Custom
00127 };
00128 
00129 int tokenize( QStringList& tokens, const QString& str, const QString& delim );
00130 QString findInPath(const QString &path, const QString &file, const QString &cwd = QString::null);
00131 
00132 }; 
00133 #endif // RTKNAMESPACE_H

Generated on Tue Feb 22 14:44:37 2005 for RTK. Report ToolKit by  doxygen 1.3.9.1