Author: Roll
0 Views
0 Downloads
0 Favorites
Clock_bar
//+------------------------------------------------------------------+
//|                                                    Clock_bar.mq4 |
//|                                                             Roll |
//+------------------------------------------------------------------+
#property copyright "Roll"
#property link      "http://www.mql4.com/ru/users/Roll"
#property show_inputs
/*Sources:1)Ñòðåëî÷íûå ÷àñû äëÿ ÌÒ4(Àâòîð:TheXpert)Âñå,÷òî íàäî,óñòàíîâèòü øðèôò.http://codebase.mql4.com/ru/7671
2)Clock v 1.3 èíäèêàòîð /Àâòîð Jerome.http://codebase.mql4.com/ru/3214
*/
#import "kernel32.dll"
int GetTimeZoneInformation(int& timez[]);
#import
extern string device="/============öèôåðáëàò=============/";
extern int    ClockSize=150;
extern color  Clockcolor=DeepSkyBlue;
extern string My_place="Ó íàñ";//Ìîå ìåñòî
extern bool   ShowClockTokyo=false;
extern bool   ShowClockLondon=false;
extern bool   ShowClockNewYork=false;
extern bool   ShowClockSydney=false;
extern bool   ShowClockBerlin=false; 
extern bool   ShowClockMoscow=false;
extern bool   ShowClockLocal=false;
extern string tab="/================tab==================/";
extern bool   Showtab=false;
extern int    corner=2;
extern int    topOff=140;
extern color  labelColor=Lime;
extern color  clockColor=Aqua;
extern bool   show12HourTime=false;
extern bool   ShowTokyo=true;
extern bool   ShowLondon=true;
extern bool   ShowNewYork=true;
extern bool   ShowSydney=true;
extern bool   ShowBerlin=true;
extern bool   ShowMoscow=true;
extern bool   ShowLocal=true;
int LondonTZ=0,TokyoTZ=10,NewYorkTZ=-4,SydneyTZ=11,MoscowTZ=3,BerlinTZ=1;
int init()
{int top=topOff;int left=90;if(show12HourTime)left=102;
 if(Showtab){if(ShowLocal){ObjectMakeLabel("locl",left,top);ObjectMakeLabel("loct",45,top);}int offset=15;
 if(ShowTokyo){ObjectMakeLabel("tokl",left,top-offset);ObjectMakeLabel("tokt",45,top-offset);offset+=15;}
 if(ShowSydney){ObjectMakeLabel("sydl",left,top-offset);ObjectMakeLabel("sydt",45,top-offset);offset+=15;}
 if(ShowBerlin){ObjectMakeLabel("berl",left,top-offset);ObjectMakeLabel("bert",45,top-offset);offset+=15;}
 if(ShowLondon){ObjectMakeLabel("lonl",left,top-offset);ObjectMakeLabel("lont",45,top-offset);offset+=15;}
 if(ShowNewYork){ObjectMakeLabel("nyl",left,top-offset);ObjectMakeLabel("nyt",45,top-offset);offset+=15;}
 if(ShowMoscow){ObjectMakeLabel("moscl",left,top-offset);ObjectMakeLabel("mosct",45,top-offset);offset+=15;}
 ObjectMakeLabel("brol",left,top-offset);ObjectMakeLabel("brot",45,top-offset);}return(0);}
int deinit()
{ObjectDelete("locl");ObjectDelete("loct");ObjectDelete("nyl");ObjectDelete("nyt");
 ObjectDelete("lonl");ObjectDelete("lont");ObjectDelete("tokl");ObjectDelete("tokt");
 ObjectDelete("sydl");ObjectDelete("sydt");ObjectDelete("berl");ObjectDelete("bert");
 ObjectDelete("moscl");ObjectDelete("mosct"); ObjectDelete("brol");ObjectDelete("brot");
 ObjectDelete("1 clock");ObjectDelete("2 hour");ObjectDelete("3 minute");
 ObjectDelete("4 second");ObjectDelete("5 zona");ObjectDelete("0 clock mover");return(0);}
//+------------------------------------------------------------------+
int start()
{int timez[43];GetTimeZoneInformation(timez);int gmt_shift=timez[0];
 while(!IsStopped())
 {datetime localTime=TimeLocal(),brokerTime=TimeCurrent(),GMT=localTime+gmt_shift*60,
  london=GMT+LondonTZ*3600,tokyo=GMT+TokyoTZ*3600,newyork=GMT+NewYorkTZ*3600,
  moscow=GMT+MoscowTZ*3600,sydney=GMT+SydneyTZ*3600,berlin=GMT+BerlinTZ*3600;
  string locals=TimeToString(localTime),londons=TimeToString(london),tokyos=TimeToString(tokyo),
  moscows=TimeToString(moscow),newyorks=TimeToString(newyork),sydneys=TimeToString(sydney),berlins=TimeToString(berlin),
  brokers=TimeToString(TimeCurrent());
  if(ShowClockLocal)ClockTest(localTime,"  "+My_place);if(ShowClockBerlin)ClockTest(berlin,"  Áåðëèí");
  if(ShowClockSydney)ClockTest(sydney,"  Ñèäíåé");if(ShowClockNewYork)ClockTest(newyork,"  Íüþ Éîðê");
  if(ShowClockLondon)ClockTest(london,"  Ëîíäîí");if(ShowClockTokyo)ClockTest(tokyo,"  Òîêèî");
  if(ShowClockMoscow)ClockTest(moscow,"  Ìîñêâà");
 if(Showtab){if(ShowLocal){ObjectSetText("locl","  "+My_place,11,"Arial",labelColor);ObjectSetText("loct",locals,11,"Arial",clockColor);}
  if(ShowBerlin){ObjectSetText("berl","  Áåðëèí",11,"Arial",labelColor);ObjectSetText("bert",berlins, 11, "Arial",clockColor);}
  if(ShowSydney){ObjectSetText("sydl","  Ñèäíåé",11,"Arial",labelColor);ObjectSetText("sydt",sydneys, 11, "Arial",clockColor);}
  if(ShowNewYork){ObjectSetText("nyl","  Íüþ Éîðê",11,"Arial",labelColor);ObjectSetText("nyt",newyorks, 11,"Arial",clockColor);}
  if(ShowLondon){ObjectSetText("lonl","  Ëîíäîí",11,"Arial",labelColor);ObjectSetText("lont",londons,11,"Arial",clockColor);}
  if(ShowTokyo){ObjectSetText("tokl","  Òîêèî",11,"Arial",labelColor);ObjectSetText("tokt", tokyos,11,"Arial",clockColor);}
  if(ShowMoscow){ObjectSetText("moscl","  Ìîñêâà",11,"Arial",labelColor);ObjectSetText("mosct", moscows,11,"Arial",clockColor);}
  ObjectSetText("brol","  Áðîêåð",11,"Arial",labelColor);ObjectSetText("brot", brokers,11,"Arial",clockColor);}
  WindowRedraw();Sleep(10);}return(0);}
//+------------------------------------------------------------------+
int ObjectMakeLabel(string n,int xoff,int yoff)
 {ObjectCreate(n,OBJ_LABEL,0,0,0);ObjectSet(n,OBJPROP_CORNER,corner);ObjectSet(n,OBJPROP_XDISTANCE,xoff);
  ObjectSet(n,OBJPROP_YDISTANCE,yoff);ObjectSet(n,OBJPROP_BACK,true);}
//+------------------------------------------------------------------+
string TimeToString(datetime when)
{if(!show12HourTime)return(TimeToStr(when,TIME_MINUTES));
 int hour=TimeHour(when);int minute=TimeMinute(when);string ampm=" AM",timeStr;
 if(hour>=12){hour=hour-12;ampm=" PM";}if(hour==0)hour=12;timeStr=DoubleToStr(hour,0)+":";
 if(minute<10)timeStr=timeStr+"0";timeStr=timeStr+DoubleToStr(minute,0);
 timeStr=timeStr+ampm;return(timeStr);}
//+------------------------------------------------------------------+ 
void ClockTest(datetime rez,string name)
{if(ObjectFind("0 clock mover")==-1)
 {ObjectCreate("0 clock mover",OBJ_LABEL,0,0,0);ObjectSetText("0 clock mover","*",20);
  ObjectSet("0 clock mover",OBJPROP_XDISTANCE,20);ObjectSet("0 clock mover",OBJPROP_YDISTANCE,20);
  ObjectSet("0 clock mover",OBJPROP_COLOR,White);}
  int x=ObjectGet("0 clock mover",OBJPROP_XDISTANCE);int y=ObjectGet("0 clock mover",OBJPROP_YDISTANCE);
  ObjectCreate("1 clock",OBJ_LABEL,0,0,0);ObjectCreate("2 hour",OBJ_LABEL,0,0,0);
  ObjectCreate("3 minute",OBJ_LABEL,0,0,0);ObjectCreate("4 second",OBJ_LABEL,0,0,0);
  ObjectCreate("5 zona",OBJ_LABEL,0,0,0);
  datetime local=rez;
  ObjectSetText("1 clock",CharToStr(32),ClockSize,"ClockBuilder by TheXpert");
  ObjectSet("1 clock",OBJPROP_XDISTANCE,x);ObjectSet("1 clock",OBJPROP_YDISTANCE,y);
  ObjectSet("1 clock",OBJPROP_COLOR,Clockcolor);
  int hours=TimeHour(local);
  if(hours<12)ObjectSetText("2 hour",CharToStr(105+hours*5+TimeMinute(local)/12),ClockSize,"ClockBuilder by TheXpert");
  if(hours>=12)ObjectSetText("2 hour",CharToStr(105+(hours-12)*5+TimeMinute(local)/12),ClockSize,"ClockBuilder by TheXpert");
  ObjectSet("2 hour",OBJPROP_XDISTANCE,x);ObjectSet("2 hour",OBJPROP_YDISTANCE,y);
  ObjectSet("2 hour",OBJPROP_COLOR,Clockcolor);
  int minutes=TimeMinute(local);
  ObjectSetText("3 minute",CharToStr(45+minutes),ClockSize,"ClockBuilder by TheXpert");
  ObjectSet("3 minute",OBJPROP_XDISTANCE,x);ObjectSet("3 minute",OBJPROP_YDISTANCE,y);
  ObjectSet("3 minute",OBJPROP_COLOR,Clockcolor);
  int seconds=TimeSeconds(local);
  ObjectSetText("4 second",CharToStr(105+seconds),ClockSize,"ClockBuilder by TheXpert");
  ObjectSet("4 second",OBJPROP_XDISTANCE,x);ObjectSet("4 second",OBJPROP_YDISTANCE,y);
  ObjectSet("4 second",OBJPROP_COLOR,Red);
  ObjectSetText("5 zona",name,ClockSize/11,"Arial Black");
  ObjectSet("5 zona",OBJPROP_XDISTANCE,x+50);ObjectSet("5 zona",OBJPROP_YDISTANCE,y+125);
  ObjectSet("5 zona",OBJPROP_COLOR,Clockcolor);}

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---