You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
203 lines
4.9 KiB
203 lines
4.9 KiB
#ifndef KSPREAD_GLOBAL_H
|
|
#define KSPREAD_GLOBAL_H
|
|
|
|
#include <qdatetime.h>
|
|
|
|
#include <kdebug.h>
|
|
#include <kiconloader.h>
|
|
|
|
#include "kspread_factory.h"
|
|
|
|
/* Definition of maximal supported rows - please check kspread_util (columnName) and kspread_cluster also */
|
|
#define KS_rowMax 0x7FFF
|
|
/* Definition of maximal supported columns - please check kspread_util (columnName) and kspread_cluster also */
|
|
#define KS_colMax 0x7FFF
|
|
|
|
/* Definition of maximal supported columns/rows, which can be merged */
|
|
#define KS_spanMax 0xFFF
|
|
|
|
|
|
namespace KSpread
|
|
{
|
|
|
|
class ElapsedTime
|
|
{
|
|
public:
|
|
enum OutputMode { Default, PrintOnlyTime };
|
|
ElapsedTime()
|
|
{
|
|
m_time.start();
|
|
}
|
|
|
|
ElapsedTime( QString const & name, OutputMode mode = Default )
|
|
: m_name( name )
|
|
{
|
|
m_time.start();
|
|
if ( mode != PrintOnlyTime )
|
|
kdDebug() << "*** (" << name << ")... Starting measuring... " << endl;
|
|
}
|
|
|
|
~ElapsedTime()
|
|
{
|
|
uint milliSec = m_time.elapsed();
|
|
uint min = (uint) ( milliSec / ( 1000 * 60 ) );
|
|
milliSec -= ( min * 60 * 1000 );
|
|
uint sec = (uint) ( milliSec / 1000 );
|
|
milliSec -= sec * 1000;
|
|
|
|
if ( m_name.isNull() )
|
|
kdDebug() << "*** Elapsed time: " << min << " min, " << sec << " sec, " << milliSec << " msec" << endl;
|
|
else
|
|
kdDebug() << "*** (" << m_name << ") Elapsed time " << min << " min, " << sec << " sec, " << milliSec << " msec" << endl;
|
|
}
|
|
|
|
private:
|
|
QTime m_time;
|
|
QString m_name;
|
|
};
|
|
|
|
/**
|
|
* This namespace collects enumerations related to
|
|
* pasting operations.
|
|
*/
|
|
namespace Paste
|
|
{
|
|
/**
|
|
* The pasted content
|
|
*/
|
|
enum Mode
|
|
{
|
|
Normal /** Everything */,
|
|
Text /** Text only */,
|
|
Format /** Format only */,
|
|
NoBorder /** not the borders */,
|
|
Comment /** Comment only */,
|
|
Result /** Result only, no formula */,
|
|
NormalAndTranspose /** */,
|
|
TextAndTranspose /** */,
|
|
FormatAndTranspose /** */,
|
|
NoBorderAndTranspose /** */
|
|
};
|
|
/**
|
|
* The current cell value treatment.
|
|
*/
|
|
enum Operation
|
|
{
|
|
OverWrite /** Overwrite */,
|
|
Add /** Add */,
|
|
Mul /** Multiply */,
|
|
Sub /** Substract */,
|
|
Div /** Divide */
|
|
};
|
|
} // namespace Paste
|
|
|
|
/**
|
|
* This namespace collects enumerations related to
|
|
* cell content restrictions.
|
|
*/
|
|
namespace Restriction
|
|
{
|
|
/**
|
|
* The type of the restriction
|
|
*/
|
|
enum Type
|
|
{
|
|
None /** No restriction */,
|
|
Number /** Restrict to numbers */,
|
|
Text /** Restrict to texts */,
|
|
Time /** Restrict to times */,
|
|
Date /** Restrict to dates */,
|
|
Integer /** Restrict to integers */,
|
|
TextLength /** Restrict text length */,
|
|
List /** Restrict to lists */
|
|
};
|
|
} // namespace Restriction
|
|
|
|
namespace Action
|
|
{
|
|
enum Type
|
|
{
|
|
Stop,
|
|
Warning,
|
|
Information
|
|
};
|
|
}
|
|
|
|
enum Series { Column,Row,Linear,Geometric };
|
|
// necessary due to QDock* enums (Werner)
|
|
enum MoveTo { Bottom, Left, Top, Right, BottomFirst };
|
|
enum MethodOfCalc { SumOfNumber, Min, Max, Average, Count, NoneCalc, CountA };
|
|
|
|
enum FormatType {
|
|
Generic_format=0,
|
|
Number_format=1, Text_format=5, Money_format=10, Percentage_format=25,
|
|
Scientific_format=30,
|
|
ShortDate_format=35, TextDate_format=36, Time_format=50,
|
|
SecondeTime_format=51,
|
|
Time_format1=52, Time_format2=53, Time_format3=54, Time_format4=55,
|
|
Time_format5=56, Time_format6=57, Time_format7=58, Time_format8=59,
|
|
fraction_half=70,fraction_quarter=71,fraction_eighth=72,fraction_sixteenth=73,
|
|
fraction_tenth=74,fraction_hundredth=75,fraction_one_digit=76,
|
|
fraction_two_digits=77,fraction_three_digits=78,
|
|
date_format1=200,date_format2=201,date_format3=202,date_format4=203,
|
|
date_format5=204,date_format6=205,date_format7=206,date_format8=207,
|
|
date_format9=208,date_format10=209,date_format11=210,date_format12=211,
|
|
date_format13=212,date_format14=213,date_format15=214,date_format16=215,
|
|
date_format17=216,date_format18=217,date_format19=218,date_format20=219,
|
|
date_format21=220,date_format22=221,date_format23=222,date_format24=223,
|
|
date_format25=224,date_format26=225,
|
|
Custom_format = 300, No_format = 400
|
|
};
|
|
|
|
enum ModifyType {
|
|
MT_NONE = 0,
|
|
MT_MOVE,
|
|
MT_RESIZE_UP,
|
|
MT_RESIZE_DN,
|
|
MT_RESIZE_LF,
|
|
MT_RESIZE_RT,
|
|
MT_RESIZE_LU,
|
|
MT_RESIZE_LD,
|
|
MT_RESIZE_RU,
|
|
MT_RESIZE_RD
|
|
};
|
|
|
|
enum PropValue {
|
|
STATE_ON = 0,
|
|
STATE_OFF = 1,
|
|
STATE_UNDEF = 2
|
|
};
|
|
|
|
//TODO Implement all objects :)
|
|
enum ToolEditMode {
|
|
TEM_MOUSE = 0,
|
|
//INS_RECT = 1,
|
|
//INS_ELLIPSE = 2,
|
|
//INS_TEXT = 3,
|
|
//INS_PIE = 4,
|
|
INS_OBJECT = 5,
|
|
//INS_LINE = 6,
|
|
INS_DIAGRAMM = 7,
|
|
//INS_TABLE = 8,
|
|
//INS_FORMULA = 9,
|
|
//INS_AUTOFORM = 10,
|
|
//INS_FREEHAND = 11,
|
|
//INS_POLYLINE = 12,
|
|
//INS_QUADRICBEZIERCURVE = 13,
|
|
//INS_CUBICBEZIERCURVE = 14,
|
|
//INS_POLYGON = 15,
|
|
INS_PICTURE = 16
|
|
//INS_CLIPART = 17,
|
|
//TEM_ROTATE = 18,
|
|
//TEM_ZOOM = 19,
|
|
//INS_CLOSED_FREEHAND = 20,
|
|
//INS_CLOSED_POLYLINE = 21,
|
|
//INS_CLOSED_QUADRICBEZIERCURVE = 22,
|
|
//INS_CLOSED_CUBICBEZIERCURVE = 23
|
|
};
|
|
|
|
|
|
} // namespace KSpread
|
|
|
|
#endif
|