/*--------------------------------------------------------------------------
 * oxdraw.h - definitions/declarations for Ox drawinglibrary
 *
 *       (C) Jurgen Doornik 1995-2000
 *
 *--------------------------------------------------------------------------*/

#ifndef OXDRAW_INCLUDED
#define OXDRAW_INCLUDED

SetTextWindow(const sTitle);

SaveDrawWindow(const sFileName);
SetDrawWindow(const sTitle);
ShowDrawWindow();
CloseDrawWindow();
DrawCorrelogram(const iArea, const vY, const sY, const cLag);
DrawSpectrum(const iArea, const vY, const sY, const iOrder);
DrawDensity(const iArea, const vY, const sY, ...);
DrawQQ(const iArea, const vY, const sY, const iDens, const df1, const df2);
DrawBoxPlot(const iArea, const vY, const sY);

DrawMatrix(const iArea, const mYt, const asY, const dXfirst, const dXstep, ...);
DrawTMatrix(const iArea, const mYt, const asY, ...);
DrawXMatrix(const iArea, const mYt, const asY, const vX, const sX, ...);

Draw(const iArea, const mYt, ...);
DrawT(const iArea, const mYt, const mnYear, const mnPeriod, const iFreq);
DrawX(const iArea, const mYt, const vX);

SetDraw(const iOption, ...);
DrawLine(const iArea, const dX1, const dY1, const dX2, const dY2, const iIndex, ...);
DrawPLine(const iArea, const iX1, const iY1, const iX2, const iY2, const iIndex);
DrawSymbol(const iArea, const dX1, const dY1, const dX2, const dY2,
	const iSymType, const iIndex, ...);
DrawPSymbol(const iArea, const iX1, const iY1, const iX2, const iY2,
	const iSymType, const iIndex);
DrawTitle(const iArea, const sText);
DrawPText(const iArea, const sText, const iPx1, const iPy1, ...);
DrawText(const iArea, const sText, const dX1, const dY1, ...);
DrawLegend(const iArea, const iOffsX, const iOffsY, const fHidden);
DrawAxis(const iArea, const fIsXaxis, const dAnchor,
	const dAxmin, const dAxmax, const dFirstLarge, const dLargeStep,
	const dSmallStep, const iFreq);
DrawAxisAuto(const iArea, const fIsXaxis, ...);
DrawAdjust(const iType, ...);
DrawZ(const vZ, ...);
DrawXYZ(const iArea, const vX, const vY, const mZ, ...);
DrawHistogram(const iArea, const vBar, ...);
DrawAcf(const iArea, const vY, const sY, const cLag, ...);


enum
{   QQ_CHI, QQ_F, QQ_N, QQ_T, QQ_U
};
enum
{
	SET_DEFAULT,		SET_MARGIN,			SET_BOX,
	SET_FONT,			SET_AXIS,			SET_AXISLINE,
	SET_GRID,			SET_LEGEND,			SET_LEGENDHIDE,
	SET_HISTOGRAM,		SET_COLOR,			SET_SYMBOL,
	SET_LINE,			SET_COLORMODEL,		SET_PRINTPAGE,
	SET_PALETTE_MAX,	SET_PALETTE_MIN,	SET_XYSTYLE,
	SET_PAPERCOLOR,		SET_BWG,			SET_LINEBWG,
	SET_AXISZEROS,		SET_AXISFORMAT,		SET_LEGENDRESIZE,
	SET_LEGENDFONTSIZE
};
enum
{
	PAGE_A4 = 0,		PAGE_LETTER = 1,	PAGE_USER = 2,
	PAGE_PORTRAIT = 0,	PAGE_LANDSCAPE = 1
};
enum
{
    PL_FILLBOX,                                               /* filled box */
    PL_BOX,                                                     /* open box */
    PL_PLUS,                                                        /* plus */
    PL_DASH,                                                        /* dash */
    PL_CIRCLE,                                                    /* circle */
    PL_NOSYMBOL,			/* leave at value 5 for backwards compatibility */
	PL_LINE = PL_NOSYMBOL,
    PL_FILLCIRCLE,
    PL_TRIANGLE,
    PL_FILLTRIANGLE,
    PL_DIAMOND,
    PL_FILLDIAMOND,
    PL_CROSS,
	PL_CNTSYMBOL
};
enum
{
	TP_SOLID,
	TP_DOTTED,
	TP_DASHED,
	TP_LDASHED,
	TP_USER
};
enum
{
	AXIS_LINEAR,
	AXIS_LOG,
	AXIS_LOG10,
	AXIS_SCALED,
	AXIS_DATE
};	
enum
{
	TEXT_TEXT,
	TEXT_TITLE,
	TEXT_XLABEL,
	TEXT_YLABEL,
	TEXT_ZLABEL
};
enum
{	ANCHOR_MIN, ANCHOR_MAX, ANCHOR_USER
};
enum
{	ZMODE_NONE = 0, ZMODE_SYMBOL, ZMODE_VALUE, ZMODE_BAR, ZMODE_BAND,
	ZMODE_HILO, ZMODE_3D, ZMODE_FAN,
	ZMODE_MESH = 256, ZMODE_TRIANGLE
};
enum
{
	ADJ_COLOR,		ADJ_SYMBOL, 	ADJ_INDEX,
	ADJ_SCALE,		ADJ_MINMAX, 	ADJ_AXISHIDE,
	ADJ_AXISLINE,	ADJ_AXISGRID,	ADJ_SYMBOLUSE,
	ADJ_AREA_X,     ADJ_AREA_Y,     ADJ_AREA_P,
	ADJ_AREAMATRIX, ADJ_TEXTANGLE,	ADJ_AXISLABEL,
	ADJ_AREA_3D,	ADJ_3D_ROTATE,	ADJ_3D_RESET,
	ADJ_AREA_Z,     ADJ_AXISSCALE,	ADJ_AXISCENTRE,
	ADJ_AREA_3DSET, ADJ_PAPERSCALE, ADJ_LEGEND,
	ADJ_COLORMODEL, ADJ_PAPERCOLOR, ADJ_AREASCOLOR
};

#endif /* OXDRAW_INCLUDED */


