deargui-vpl/ref/virtools/Includes/VIGdiManager.h

484 lines
18 KiB
C++

// CUIKGDIManager.h: interface for the CUIKFontManager class.
//////////////////////////////////////////////////////////////////////
#ifndef _VICONTROLGDIMANAGER_H_
#define _VICONTROLGDIMANAGER_H_
#include "XArray.h"
//GDI defines
#define VIFONT_NORMAL 0
#define VIFONT_BOLD 1
#define VIFONT_BOLDUNDERLINED 2
#define VIFONT_ITALIC 3
#define VIFONT_UNDERLINED 4
#define VIFONT_ITALICUNDERLINED 5
#define VIFONT_BIGUNDERLINED 6
#define VIFONT_SMALL 7
/*
#define COLOR_WHITE "color_white"
#define COLOR_WHITEGREY "color_whitegrey"
#define COLOR_LTLTGREY "color_ltltgrey"
#define COLOR_LTGREY "color_ltgrey"
#define COLOR_MEDGREY "color_medgrey"
#define COLOR_DKGREY "color_dkgrey"
#define COLOR_GREY "color_grey"
#define COLOR_BLACKGREY "color_blackgrey"
#define COLOR_LTLTBLACK "color_ltltblack"
#define COLOR_LTBLACK "color_ltblack"
#define COLOR_BLACK "color_black"
#define COLOR_RED "color_red"
#define COLOR_HALFRED "color_halfred"
#define COLOR_DYN "color_dynamic"
#define COLOR_DYNGRAYED "color_dynamic_grayed"
#define COLOR_DYNSELECT "color_dynamic_selected"
*/
/*
#define VICOLOR_WHITE 0
#define VICOLOR_WHITEGREY 1
#define VICOLOR_LTLTGREY 2
#define VICOLOR_LTGREY 3
#define VICOLOR_MEDGREY 4
#define VICOLOR_DKGREY 5
#define VICOLOR_GREY 6
#define VICOLOR_BLACKGREY 7
#define VICOLOR_LTLTBLACK 8
#define VICOLOR_LTBLACK 9
#define VICOLOR_BLACK 10
#define VICOLOR_RED 11
#define VICOLOR_HALFRED 12
#define VICOLOR_DYN 13
#define VICOLOR_DYNGRAYED 14
#define VICOLOR_DYNSELECT 15
*/
/*
color_white = 255 255 255
color_whitegrey = 225 225 225
color_ltltgrey = 200 200 200
color_ltgrey = 176 176 176
color_medgrey = 152 152 152
color_dkgrey = 128 128 128
color_grey = 96 96 96
color_blackgrey = 75 75 75
color_ltltblack = 64 64 64
color_ltblack = 32 32 32
color_black = 0 0 0
color_red = 255 0 0
color_halfred = 128 0 0
color_dynamic = 207 169 169
color_dynamic_grayed = 212 190 190
color_dynamic_selected = 173 109 109
*/
#define VICOLOR_BLACK 0
#define VICOLOR_51 1
#define VICOLOR_65 2
#define VICOLOR_100 3
#define VICOLOR_128 4
#define VICOLOR_152 5
#define VICOLOR_176 6
#define VICOLOR_200 7
#define VICOLOR_230 8
#define VICOLOR_WHITE 9
#define VICOLOR_RED 10
#define VICOLOR_HALFRED 11
#define VICOLOR_DYN 12
#define VICOLOR_DYNGRAYED 13
#define VICOLOR_DYNSELECT 14
#define VICOLOR_COUNT 15
#ifdef VI_CONTROL_API
#define VI_CONTROL_EXPORT __declspec(dllexport)
#else
#define VI_CONTROL_EXPORT __declspec(dllimport)
#endif
VI_CONTROL_EXPORT extern int ZC_MENUBACK;
VI_CONTROL_EXPORT extern int ZC_MENUBORDER;
VI_CONTROL_EXPORT extern int ZC_MENUTEXT;
VI_CONTROL_EXPORT extern int ZC_MAINBACK;
VI_CONTROL_EXPORT extern int ZC_CONTROLBACK;
VI_CONTROL_EXPORT extern int ZC_CONTROLBORDER;
VI_CONTROL_EXPORT extern int ZC_CONTROLTEXT;
VI_CONTROL_EXPORT extern int ZC_CONTROLBACKSELECT;
VI_CONTROL_EXPORT extern int ZC_CONTROLBORDERSELECT;
VI_CONTROL_EXPORT extern int ZC_CONTROLTEXTSELECT;
VI_CONTROL_EXPORT extern int ZC_CONTROLBACKFOCUS;
VI_CONTROL_EXPORT extern int ZC_CONTROLBORDERFOCUS;
VI_CONTROL_EXPORT extern int ZC_CONTROLTEXTFOCUS;
//buttons
VI_CONTROL_EXPORT extern int ZC_N_BUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_N_BUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_N_BUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_P_BUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_P_BUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_P_BUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_F_BUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_F_BUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_F_BUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_NR_BUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_NR_BUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_NR_BUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_PR_BUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_PR_BUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_PR_BUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_D_BUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_D_BUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_D_BUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_N_DIALOGBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_N_DIALOGBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_N_DIALOGBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_P_DIALOGBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_P_DIALOGBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_P_DIALOGBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_F_DIALOGBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_F_DIALOGBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_F_DIALOGBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_NR_DIALOGBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_NR_DIALOGBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_NR_DIALOGBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_PR_DIALOGBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_PR_DIALOGBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_PR_DIALOGBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_D_DIALOGBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_D_DIALOGBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_D_DIALOGBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_N_TOOLBARBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_N_TOOLBARBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_N_TOOLBARBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_P_TOOLBARBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_P_TOOLBARBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_P_TOOLBARBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_F_TOOLBARBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_F_TOOLBARBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_F_TOOLBARBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_NR_TOOLBARBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_NR_TOOLBARBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_NR_TOOLBARBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_PR_TOOLBARBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_PR_TOOLBARBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_PR_TOOLBARBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_D_TOOLBARBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_D_TOOLBARBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_D_TOOLBARBUTTONBORDER;
//end buttons
VI_CONTROL_EXPORT extern int ZC_TABBUTTONBACK;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONTEXT;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONBORDER;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONBACKSELECTED;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONTEXTSELECTED;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONBORDERSELECTED;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONBACKFOCUS;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONTEXTFOCUS;
VI_CONTROL_EXPORT extern int ZC_TABBUTTONBORDERFOCUS;
VI_CONTROL_EXPORT extern int ZC_TOOLBARBACK;
VI_CONTROL_EXPORT extern int ZC_TOOLBARBORDER;
VI_CONTROL_EXPORT extern int ZC_EDITORVIEWBORDER;
VI_CONTROL_EXPORT extern int ZC_EDITORVIEWBORDERFOCUS;
VI_CONTROL_EXPORT extern int ZC_EDITORLEFTBARBACK;
VI_CONTROL_EXPORT extern int ZC_EDITORVIEWBACKLIGHT;
VI_CONTROL_EXPORT extern int ZC_EDITORVIEWBACKDARK;
VI_CONTROL_EXPORT extern int ZC_DIALOGTITLETEXTCOLOR;
VI_CONTROL_EXPORT extern int ZC_DIALOGTITLEBACKCOLOR;
VI_CONTROL_EXPORT extern int ZC_DIALOGTITLETEXTCOLORFOCUS;
VI_CONTROL_EXPORT extern int ZC_DIALOGTITLEBACKCOLORFOCUS;
VI_CONTROL_EXPORT extern int ZC_DIALOGTITLEBORDER;
VI_CONTROL_EXPORT extern int ZC_DIALOGTITLEBORDERFOCUS;
VI_CONTROL_EXPORT extern int ZC_DIALOGBORDER;
VI_CONTROL_EXPORT extern int ZC_DIALOGBORDERFOCUS;
VI_CONTROL_EXPORT extern int ZC_DIALOGBACKLIGHT;
VI_CONTROL_EXPORT extern int ZC_DIALOGBACKDARK;
VI_CONTROL_EXPORT extern int ZC_STATUSBARBACK;
VI_CONTROL_EXPORT extern int ZC_SEPARATORCOLOR;
VI_CONTROL_EXPORT extern int ZC_MAINTEXTCOLOR ;
VI_CONTROL_EXPORT extern int ZC_VERTICALLINECOLOR;
////////////////////////////////////////////////////////MACROS/////////////////////
#define CZC_BLACK GetVIColor(VICOLOR_BLACK )
#define CZC_51 GetVIColor(VICOLOR_51 )
#define CZC_65 GetVIColor(VICOLOR_65 )
#define CZC_100 GetVIColor(VICOLOR_100 )
#define CZC_128 GetVIColor(VICOLOR_128 )
#define CZC_152 GetVIColor(VICOLOR_152 )
#define CZC_176 GetVIColor(VICOLOR_176 )
#define CZC_200 GetVIColor(VICOLOR_200 )
#define CZC_230 GetVIColor(VICOLOR_230 )
#define CZC_WHITE GetVIColor(VICOLOR_WHITE )
#define CZC_RED GetVIColor(VICOLOR_RED )
#define CZC_HALFRED GetVIColor(VICOLOR_HALFRED )
#define CZC_DYN GetVIColor(VICOLOR_DYN )
#define CZC_DYNGRAYED GetVIColor(VICOLOR_DYNGRAYED)
#define CZC_DYNSELECT GetVIColor(VICOLOR_DYNSELECT)
#define CZC_MENUBACK GetVIColor(ZC_MENUBACK )
#define CZC_MENUBORDER GetVIColor(ZC_MENUBORDER )
#define CZC_MENUTEXT GetVIColor(ZC_MENUTEXT )
#define CZC_MAINBACK GetVIColor(ZC_MAINBACK )
#define CZC_CONTROLBACK GetVIColor(ZC_CONTROLBACK )
#define CZC_CONTROLBORDER GetVIColor(ZC_CONTROLBORDER )
#define CZC_CONTROLTEXT GetVIColor(ZC_CONTROLTEXT )
#define CZC_CONTROLBACKSELECT GetVIColor(ZC_CONTROLBACKSELECT )
#define CZC_CONTROLBORDERSELECT GetVIColor(ZC_CONTROLBORDERSELECT )
#define CZC_CONTROLTEXTSELECT GetVIColor(ZC_CONTROLTEXTSELECT )
#define CZC_CONTROLBACKFOCUS GetVIColor(ZC_CONTROLBACKFOCUS )
#define CZC_CONTROLBORDERFOCUS GetVIColor(ZC_CONTROLBORDERFOCUS )
#define CZC_CONTROLTEXTFOCUS GetVIColor(ZC_CONTROLTEXTFOCUS )
#define CZC_N_BUTTONBACK GetVIColor(ZC_N_BUTTONBACK )
#define CZC_N_BUTTONTEXT GetVIColor(ZC_N_BUTTONTEXT )
#define CZC_N_BUTTONBORDER GetVIColor(ZC_N_BUTTONBORDER )
#define CZC_P_BUTTONBACK GetVIColor(ZC_P_BUTTONBACK )
#define CZC_P_BUTTONTEXT GetVIColor(ZC_P_BUTTONTEXT )
#define CZC_P_BUTTONBORDER GetVIColor(ZC_P_BUTTONBORDER )
#define CZC_F_BUTTONBACK GetVIColor(ZC_F_BUTTONBACK )
#define CZC_F_BUTTONTEXT GetVIColor(ZC_F_BUTTONTEXT )
#define CZC_F_BUTTONBORDER GetVIColor(ZC_F_BUTTONBORDER )
#define CZC_NR_BUTTONBACK GetVIColor(ZC_NR_BUTTONBACK )
#define CZC_NR_BUTTONTEXT GetVIColor(ZC_NR_BUTTONTEXT )
#define CZC_NR_BUTTONBORDER GetVIColor(ZC_NR_BUTTONBORDER )
#define CZC_PR_BUTTONBACK GetVIColor(ZC_PR_BUTTONBACK )
#define CZC_PR_BUTTONTEXT GetVIColor(ZC_PR_BUTTONTEXT )
#define CZC_PR_BUTTONBORDER GetVIColor(ZC_PR_BUTTONBORDER )
#define CZC_D_BUTTONBACK GetVIColor(ZC_D_BUTTONBACK )
#define CZC_D_BUTTONTEXT GetVIColor(ZC_D_BUTTONTEXT )
#define CZC_D_BUTTONBORDER GetVIColor(ZC_D_BUTTONBORDER )
#define CZC_N_TOOLBARBUTTONBACK GetVIColor(ZC_N_TOOLBARBUTTONBACK )
#define CZC_N_TOOLBARBUTTONTEXT GetVIColor(ZC_N_TOOLBARBUTTONTEXT )
#define CZC_N_TOOLBARBUTTONBORDER GetVIColor(ZC_N_TOOLBARBUTTONBORDER )
#define CZC_P_TOOLBARBUTTONBACK GetVIColor(ZC_P_TOOLBARBUTTONBACK )
#define CZC_P_TOOLBARBUTTONTEXT GetVIColor(ZC_P_TOOLBARBUTTONTEXT )
#define CZC_P_TOOLBARBUTTONBORDER GetVIColor(ZC_P_TOOLBARBUTTONBORDER )
#define CZC_F_TOOLBARBUTTONBACK GetVIColor(ZC_F_TOOLBARBUTTONBACK )
#define CZC_F_TOOLBARBUTTONTEXT GetVIColor(ZC_F_TOOLBARBUTTONTEXT )
#define CZC_F_TOOLBARBUTTONBORDER GetVIColor(ZC_F_TOOLBARBUTTONBORDER )
#define CZC_NR_TOOLBARBUTTONBACK GetVIColor(ZC_NR_TOOLBARBUTTONBACK )
#define CZC_NR_TOOLBARBUTTONTEXT GetVIColor(ZC_NR_TOOLBARBUTTONTEXT )
#define CZC_NR_TOOLBARBUTTONBORDER GetVIColor(ZC_NR_TOOLBARBUTTONBORDER )
#define CZC_PR_TOOLBARBUTTONBACK GetVIColor(ZC_PR_TOOLBARBUTTONBACK )
#define CZC_PR_TOOLBARBUTTONTEXT GetVIColor(ZC_PR_TOOLBARBUTTONTEXT )
#define CZC_PR_TOOLBARBUTTONBORDER GetVIColor(ZC_PR_TOOLBARBUTTONBORDER )
#define CZC_D_TOOLBARBUTTONBACK GetVIColor(ZC_D_TOOLBARBUTTONBACK )
#define CZC_D_TOOLBARBUTTONTEXT GetVIColor(ZC_D_TOOLBARBUTTONTEXT )
#define CZC_D_TOOLBARBUTTONBORDER GetVIColor(ZC_D_TOOLBARBUTTONBORDER )
#define CZC_N_DIALOGBUTTONBACK GetVIColor(ZC_N_DIALOGBUTTONBACK )
#define CZC_N_DIALOGBUTTONTEXT GetVIColor(ZC_N_DIALOGBUTTONTEXT )
#define CZC_N_DIALOGBUTTONBORDER GetVIColor(ZC_N_DIALOGBUTTONBORDER )
#define CZC_P_DIALOGBUTTONBACK GetVIColor(ZC_P_DIALOGBUTTONBACK )
#define CZC_P_DIALOGBUTTONTEXT GetVIColor(ZC_P_DIALOGBUTTONTEXT )
#define CZC_P_DIALOGBUTTONBORDER GetVIColor(ZC_P_DIALOGBUTTONBORDER )
#define CZC_F_DIALOGBUTTONBACK GetVIColor(ZC_F_DIALOGBUTTONBACK )
#define CZC_F_DIALOGBUTTONTEXT GetVIColor(ZC_F_DIALOGBUTTONTEXT )
#define CZC_F_DIALOGBUTTONBORDER GetVIColor(ZC_F_DIALOGBUTTONBORDER )
#define CZC_NR_DIALOGBUTTONBACK GetVIColor(ZC_NR_DIALOGBUTTONBACK )
#define CZC_NR_DIALOGBUTTONTEXT GetVIColor(ZC_NR_DIALOGBUTTONTEXT )
#define CZC_NR_DIALOGBUTTONBORDER GetVIColor(ZC_NR_DIALOGBUTTONBORDER )
#define CZC_PR_DIALOGBUTTONBACK GetVIColor(ZC_PR_DIALOGBUTTONBACK )
#define CZC_PR_DIALOGBUTTONTEXT GetVIColor(ZC_PR_DIALOGBUTTONTEXT )
#define CZC_PR_DIALOGBUTTONBORDER GetVIColor(ZC_PR_DIALOGBUTTONBORDER )
#define CZC_D_DIALOGBUTTONBACK GetVIColor(ZC_D_DIALOGBUTTONBACK )
#define CZC_D_DIALOGBUTTONTEXT GetVIColor(ZC_D_DIALOGBUTTONTEXT )
#define CZC_D_DIALOGBUTTONBORDER GetVIColor(ZC_D_DIALOGBUTTONBORDER )
#define CZC_TABBUTTONBACK GetVIColor(ZC_TABBUTTONBACK )
#define CZC_TABBUTTONTEXT GetVIColor(ZC_TABBUTTONTEXT )
#define CZC_TABBUTTONBORDER GetVIColor(ZC_TABBUTTONBORDER )
#define CZC_TABBUTTONBACKSELECTED GetVIColor(ZC_TABBUTTONBACKSELECTED )
#define CZC_TABBUTTONTEXTSELECTED GetVIColor(ZC_TABBUTTONTEXTSELECTED )
#define CZC_TABBUTTONBORDERSELECTED GetVIColor(ZC_TABBUTTONBORDERSELECTED )
#define CZC_TABBUTTONBACKFOCUS GetVIColor(ZC_TABBUTTONBACKFOCUS )
#define CZC_TABBUTTONTEXTFOCUS GetVIColor(ZC_TABBUTTONTEXTFOCUS )
#define CZC_TABBUTTONBORDERFOCUS GetVIColor(ZC_TABBUTTONBORDERFOCUS )
#define CZC_TOOLBARBACK GetVIColor(ZC_TOOLBARBACK )
#define CZC_TOOLBARBORDER GetVIColor(ZC_TOOLBARBORDER )
#define CZC_EDITORVIEWBORDER GetVIColor(ZC_EDITORVIEWBORDER )
#define CZC_EDITORVIEWBORDERFOCUS GetVIColor(ZC_EDITORVIEWBORDERFOCUS )
#define CZC_EDITORLEFTBARBACK GetVIColor(ZC_EDITORLEFTBARBACK )
#define CZC_EDITORVIEWBACKLIGHT GetVIColor(ZC_EDITORVIEWBACKLIGHT )
#define CZC_EDITORVIEWBACKDARK GetVIColor(ZC_EDITORVIEWBACKDARK )
#define CZC_DIALOGTITLETEXTCOLOR GetVIColor(ZC_DIALOGTITLETEXTCOLOR )
#define CZC_DIALOGTITLEBACKCOLOR GetVIColor(ZC_DIALOGTITLEBACKCOLOR )
#define CZC_DIALOGTITLETEXTCOLORFOCUS GetVIColor(ZC_DIALOGTITLETEXTCOLORFOCUS)
#define CZC_DIALOGTITLEBACKCOLORFOCUS GetVIColor(ZC_DIALOGTITLEBACKCOLORFOCUS)
#define CZC_DIALOGTITLEBORDER GetVIColor(ZC_DIALOGTITLEBORDER )
#define CZC_DIALOGTITLEBORDERFOCUS GetVIColor(ZC_DIALOGTITLEBORDERFOCUS )
#define CZC_DIALOGBORDER GetVIColor(ZC_DIALOGBORDER )
#define CZC_DIALOGBORDERFOCUS GetVIColor(ZC_DIALOGBORDERFOCUS )
#define CZC_DIALOGBACKLIGHT GetVIColor(ZC_DIALOGBACKLIGHT )
#define CZC_DIALOGBACKDARK GetVIColor(ZC_DIALOGBACKDARK )
#define CZC_STATUSBARBACK GetVIColor(ZC_STATUSBARBACK )
#define CZC_SEPARATORCOLOR GetVIColor(ZC_SEPARATORCOLOR )
#define CZC_MAINTEXTCOLOR GetVIColor(ZC_MAINTEXTCOLOR )
#define CZC_VERTICALLINECOLOR GetVIColor(ZC_VERTICALLINECOLOR )
////////////////////////////////////////////////////////MACROS/////////////////////
// Interface Zones Colors Index
//.ini file
#define INI_FILENAME "virtools.ini"
//fields names
#define BUTTON_OK_SIZE "button_ok_size"
#define BUTTON_APPLY_SIZE "button_apply_size"
#define BUTTON_CANCEL_SIZE "button_cancel_size"
#define DIALOG_MARGIN_LEFT "dialog_margin_left"
#define DIALOG_MARGIN_RIGHT "dialog_margin_right"
#define DIALOG_MARGIN_TOP "dialog_margin_top"
#define DIALOG_MARGIN_BOTTOM "dialog_margin_bottom"
#define DIALOG_MARGIN_INSIDE "dialog_margin_inside"
#define DIALOG_ITEMHEIGHT "dialog_itemheight"
#define DIALOG_LINEJUMP "dialog_linejump"
#define DIALOG_BUTTONXFREESPACE "dialog_buttonxfreespace"
#define DIALOG_BUTTONSEPARATION "dialog_button_separation"
#define COLOR_BLACK "color_black"
#define COLOR_51 "color_51"
#define COLOR_65 "color_65"
#define COLOR_100 "color_100"
#define COLOR_128 "color_128"
#define COLOR_152 "color_152"
#define COLOR_176 "color_176"
#define COLOR_200 "color_200"
#define COLOR_230 "color_230"
#define COLOR_WHITE "color_white"
#define COLOR_RED "color_red"
#define COLOR_HALFRED "color_halfred"
#define COLOR_DYN "color_dyn"
#define COLOR_DYNGRAYED "color_dyngrayed"
#define COLOR_DYNSELECT "color_dynselect"
typedef struct VIInterfaceData{
CSize button_ok_size;
CSize button_apply_size;
CSize button_cancel_size;
int dialog_margin_left;
int dialog_margin_right;
int dialog_margin_top;
int dialog_margin_bottom;
int dialog_margin_inside;
int dialog_item_height;
int dialog_line_jump;
int dialog_button_xfreespace;
int dialog_button_separation;
//constructor
VIInterfaceData()
{
button_ok_size.cx=60;
button_ok_size.cy=18;
button_apply_size.cx=60;
button_apply_size.cy=18;
button_cancel_size.cx=60;
button_cancel_size.cy=18;
dialog_margin_inside=6;
dialog_item_height=16;
dialog_line_jump=5;
dialog_button_xfreespace=4; //both side, free space in button
dialog_button_separation=10;
dialog_margin_left=10;
dialog_margin_right=10;
dialog_margin_top=5;
dialog_margin_bottom=24;
}
}VIInterfaceData ;
// End Defines
class VIGDIManager
{
public:
VIGDIManager();
~VIGDIManager();
BOOL InitGDIManager();
void LoadDefaultInterfaceData();
void SaveDefaultInterfaceData();
CFont *GetVIFont(int VIFontIndex);
CBrush *GetVIBrush(COLORREF clr);
CBrush *GetVIBrush(int VIColorIndex);
COLORREF SetVIBrush(int VIColorIndex,COLORREF newColor);
COLORREF GetVIColor(int VIColorIndex);
COLORREF SetVIColor(int VIColorIndex,COLORREF newColor);
VIInterfaceData * GetVIInterfaceData();
//return value : color index
int RegisterVIColor(COLORREF clr,BOOL forceCreate=TRUE);
//return value : brush index
int RegisterVIBrush(COLORREF clr,BOOL forceCreate=TRUE);
//return value : font index
int RegisterVIFont( int nHeight=12,
int nWidth=5,
int nEscapement=0,
int nOrientation=0,
int nWeight=0,
BYTE bItalic=0,
BYTE bUnderline=0,
BYTE cStrikeOut=0,
BYTE nCharSet=0,
BYTE nOutPrecision=OUT_DEFAULT_PRECIS,
BYTE nClipPrecision=CLIP_DEFAULT_PRECIS,
BYTE nQuality=DEFAULT_QUALITY,
BYTE nPitchAndFamily=DEFAULT_PITCH,
LPCTSTR lpszFacename="Arial");
protected :
void InitFonts();
void InitColors();
void InitBrush();
VIInterfaceData m_interfaceData;
XArray<CFont*> m_CFontArray;
XArray<CBrush*> m_CBrushArray;
XArray<COLORREF> m_ColorArray;
};
#endif