EasyAndFastMod/Fonts.mqh
2026-01-15 07:23:17 -05:00

266 lines
18 KiB
MQL5

//+------------------------------------------------------------------+
//| Fonts.mqh |
//| Copyright 2016, MetaQuotes Software Corp. |
//| http://www.mql5.com |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Класс для работы с шрифтом |
//+------------------------------------------------------------------+
class CFonts
{
private:
//--- Массив шрифотов
string m_fonts[];
//---
public:
CFonts(void);
~CFonts(void);
//--- Возвращает количество шрифтов
int FontsTotal(void) const { return(::ArraySize(m_fonts)); }
//--- Возвращает шрифт по индексу
string FontsByIndex(const uint index);
//---
private:
//--- Инициализация массива шрифтов
void InitializeFontsArray(void);
};
//+------------------------------------------------------------------+
//| Constructor |
//+------------------------------------------------------------------+
CFonts::CFonts(void)
{
//--- Инициализация массива шрифтов
InitializeFontsArray();
}
//+------------------------------------------------------------------+
//| Destructor |
//+------------------------------------------------------------------+
CFonts::~CFonts(void)
{
::ArrayFree(m_fonts);
}
//+------------------------------------------------------------------+
//| Возвращает шрифт по индексу |
//+------------------------------------------------------------------+
string CFonts::FontsByIndex(const uint index)
{
//--- Размер массива
uint array_size=FontsTotal();
//--- Корректировка в случае выхода из диапазона
uint i=(index>=array_size)? array_size-1 : index;
//--- Вернуть шрифт
return(m_fonts[i]);
}
//+------------------------------------------------------------------+
//| Инициализация массива шрифтов |
//+------------------------------------------------------------------+
void CFonts::InitializeFontsArray(void)
{
::ArrayResize(m_fonts,187);
m_fonts[0]="@Malgun Gothic";
m_fonts[1]="@Malgun Gothic Semilight";
m_fonts[2]="@Microsoft JhengHei";
m_fonts[3]="@Microsoft JhengHei Light";
m_fonts[4]="@Microsoft JhengHei UI";
m_fonts[5]="@Microsoft JhengHei UI Light";
m_fonts[6]="@Microsoft YaHei";
m_fonts[7]="@Microsoft YaHei Light";
m_fonts[8]="@Microsoft YaHei UI";
m_fonts[9]="@Microsoft YaHei UI Light";
//---
m_fonts[10]="@MingLiU_HKSCS-ExtB";
m_fonts[11]="@MingLiU-ExtB";
m_fonts[12]="@MS Gothic";
m_fonts[13]="@MS PGothic";
m_fonts[14]="@MS UI Gothic";
m_fonts[15]="@NSimSun";
m_fonts[16]="@PMingLiU-ExtB";
m_fonts[17]="@SimSun";
m_fonts[18]="@SimSun-ExtB";
m_fonts[19]="@Yu Gothic";
//---
m_fonts[20]="@Yu Gothic Light";
m_fonts[21]="@Yu Gothic Medium";
m_fonts[22]="@Yu Gothic UI";
m_fonts[23]="@Yu Gothic UI Light";
m_fonts[24]="@Yu Gothic UI Semibold";
m_fonts[25]="@Yu Gothic UI Semilight";
m_fonts[26]="Algerian";
m_fonts[27]="Arial";
m_fonts[28]="Arial Black";
m_fonts[29]="Arial Narrow";
//---
m_fonts[30]="Baskerville Old Face";
m_fonts[31]="Bauhaus 93";
m_fonts[32]="Bell MT";
m_fonts[33]="Berlin Sans FB";
m_fonts[34]="Berlin Sans FB Demi";
m_fonts[35]="Bernard MT Condensed";
m_fonts[36]="Bodoni MT Poster Compressed";
m_fonts[37]="Book Antiqua";
m_fonts[38]="Bookman Old Style";
m_fonts[39]="Bookshelf Symbol 7";
//---
m_fonts[40]="Britannic Bold";
m_fonts[41]="Broadway";
m_fonts[42]="Brush Script MT";
m_fonts[43]="Calibri";
m_fonts[44]="Calibri Light";
m_fonts[45]="Californian FB";
m_fonts[46]="Cambria";
m_fonts[47]="Cambria Math";
m_fonts[48]="Candara";
m_fonts[49]="Centaur";
//---
m_fonts[50]="Century";
m_fonts[51]="Century Gothic";
m_fonts[52]="Chiller";
m_fonts[53]="Colonna MT";
m_fonts[54]="Comic Sans MS";
m_fonts[55]="Consolas";
m_fonts[56]="Constantia";
m_fonts[57]="Cooper Black";
m_fonts[58]="Corbel";
m_fonts[59]="Courier";
//---
m_fonts[60]="Courier New";
m_fonts[61]="Ebrima";
m_fonts[62]="Fixedsys";
m_fonts[63]="Footlight MT Light";
m_fonts[64]="Franklin Gothic Medium";
m_fonts[65]="Freestyle Script";
m_fonts[66]="Gabriola";
m_fonts[67]="Gadugi";
m_fonts[68]="Garamond";
m_fonts[69]="Georgia";
//---
m_fonts[70]="Harlow Solid Italic";
m_fonts[71]="Harrington";
m_fonts[72]="High Tower Text";
m_fonts[73]="Impact";
m_fonts[74]="Informal Roman";
m_fonts[75]="Javanese Text";
m_fonts[76]="Jokerman";
m_fonts[77]="Juice ITC";
m_fonts[78]="Kristen ITC";
m_fonts[79]="Kunstler Script";
//---
m_fonts[80]="Leelawadee UI";
m_fonts[81]="Leelawadee UI Semilight";
m_fonts[82]="Lucida Bright";
m_fonts[83]="Lucida Calligraphy";
m_fonts[84]="Lucida Console";
m_fonts[85]="Lucida Fax";
m_fonts[86]="Lucida Handwriting";
m_fonts[87]="Lucida Sans Unicode";
m_fonts[88]="Magneto";
m_fonts[89]="Malgun Gothic";
//---
m_fonts[90]="Malgun Gothic Semilight";
m_fonts[91]="Marlett";
m_fonts[92]="Matura MT Script Capitals";
m_fonts[93]="Microsoft Himalaya";
m_fonts[94]="Microsoft JhengHei";
m_fonts[95]="Microsoft JhengHei Light";
m_fonts[96]="Microsoft JhengHei UI";
m_fonts[97]="Microsoft JhengHei UI Light";
m_fonts[98]="Microsoft New Tai Lue";
m_fonts[99]="Microsoft PhagsPa";
//---
m_fonts[100]="Microsoft Sans Serif";
m_fonts[101]="Microsoft Tai Le";
m_fonts[102]="Microsoft Uighur";
m_fonts[103]="Microsoft YaHei";
m_fonts[104]="Microsoft YaHei Light";
m_fonts[105]="Microsoft YaHei UI";
m_fonts[106]="Microsoft YaHei UI Light";
m_fonts[107]="Microsoft Yi Baiti";
m_fonts[108]="MingLiU_HKSCS-ExtB";
m_fonts[109]="MingLiU-ExtB";
//---
m_fonts[110]="Mistral";
m_fonts[111]="Modern";
m_fonts[112]="Modern No. 20";
m_fonts[113]="Mongolian Baiti";
m_fonts[114]="Monotype Corsiva";
m_fonts[115]="MS Gothic";
m_fonts[116]="MS PGothic";
m_fonts[117]="MS Reference Sans Serif";
m_fonts[118]="MS Reference Specialty";
m_fonts[119]="MS Sans Serif";
//---
m_fonts[120]="MS Serif";
m_fonts[121]="MS UI Gothic";
m_fonts[122]="MT Extra";
m_fonts[123]="MV Boli";
m_fonts[124]="Myanmar Text";
m_fonts[125]="Niagara Engraved";
m_fonts[126]="Niagara Solid";
m_fonts[127]="Niagara UI";
m_fonts[128]="Niagara UI Semilight";
m_fonts[129]="NSimSun";
//---
m_fonts[130]="Old English Text MT";
m_fonts[131]="Onix";
m_fonts[132]="Palatino Linotype";
m_fonts[133]="Parchment";
m_fonts[134]="Playbill";
m_fonts[135]="PMingLiU-ExtB";
m_fonts[136]="Poor Richard";
m_fonts[137]="Ravie";
m_fonts[138]="Roman";
m_fonts[139]="Script";
//---
m_fonts[140]="Segoe MDL2 Assets";
m_fonts[141]="Segoe Print";
m_fonts[142]="Segoe Script";
m_fonts[143]="Segoe UI";
m_fonts[144]="Segoe UI Black";
m_fonts[145]="Segoe UI Emoji";
m_fonts[146]="Segoe UI Historic";
m_fonts[147]="Segoe UI Light";
m_fonts[148]="Segoe UI Semibold";
m_fonts[149]="Segoe UI Semilight";
//---
m_fonts[150]="Segoe UI Symbol";
m_fonts[151]="Showcard Gothic";
m_fonts[152]="SimSun";
m_fonts[153]="SimSun-ExtB";
m_fonts[154]="Sitka Banner";
m_fonts[155]="Sitka Display";
m_fonts[156]="Sitka Heading";
m_fonts[157]="Sitka Small";
m_fonts[158]="Sitka Subheading";
m_fonts[159]="Sitka Text";
//---
m_fonts[160]="Small Fonts";
m_fonts[161]="Snap ITC";
m_fonts[162]="Stencil";
m_fonts[163]="Sylfaen";
m_fonts[164]="Symbol";
m_fonts[165]="System";
m_fonts[166]="Tahoma";
m_fonts[167]="Tempus Sans ITC";
m_fonts[168]="Terminal";
m_fonts[169]="Times New Roman";
//---
m_fonts[170]="Trebuchet MS";
m_fonts[171]="Verdana";
m_fonts[172]="Viner Hand ITC";
m_fonts[173]="Vivaldi";
m_fonts[174]="Vladimir Script";
m_fonts[175]="Webdings";
m_fonts[176]="Wide Latin";
m_fonts[177]="Wingdings";
m_fonts[178]="Wingdings 2";
m_fonts[179]="Wingdings 3";
//---
m_fonts[180]="Yu Gothic";
m_fonts[181]="Yu Gothic Light";
m_fonts[182]="Yu Gothic Medium";
m_fonts[183]="Yu Gothic UI";
m_fonts[184]="Yu Gothic UI Light";
m_fonts[185]="Yu Gothic UI Semibold";
m_fonts[186]="Yu Gothic UI Semilight";
}
//+------------------------------------------------------------------+