152 lines
3.3 KiB
Plaintext
152 lines
3.3 KiB
Plaintext
#include <Controls/CheckBox.mqh>
|
|
#include <Controls/Label.mqh>
|
|
#include <Arrays/List.mqh>
|
|
|
|
|
|
enum TYPE_THEMES
|
|
{
|
|
Dark,
|
|
Light
|
|
};
|
|
enum SET_COLOR_THEMES
|
|
{
|
|
SET_COLOR_THEMES_ABSENT, // Absent
|
|
SET_COLOR_THEMES_BANNER, // Banner
|
|
SET_COLOR_THEMES_BRAVE, // Brave
|
|
SET_COLOR_THEMES_BLINK, // Blink
|
|
SET_COLOR_THEMES_CODECOURSE, // Codecourse
|
|
SET_COLOR_THEMES_DOWNPOUR, // Downpour
|
|
SET_COLOR_THEMES_FODDER, // Fodder
|
|
SET_COLOR_THEMES_MUD, // Mud
|
|
SET_COLOR_THEMES_VIOLACEOUS, // Violaceous
|
|
SET_COLOR_THEMES_VISION, // Vision
|
|
};
|
|
|
|
|
|
enum SYMBOL_CHART_CHANGE_REACTION
|
|
{
|
|
SYMBOL_CHART_CHANGE_EACH_OWN, // Each symbol - own settings
|
|
SYMBOL_CHART_CHANGE_HARD_RESET, // Reset to defaults on symbol change
|
|
};
|
|
|
|
|
|
enum TABS
|
|
{
|
|
OverviewTab,
|
|
SettingTab,
|
|
SettingInputsEATab,
|
|
SettingPanelEATab,
|
|
PerformanceTab,
|
|
GlobalMetricsTab,
|
|
OptimizerTab,
|
|
LogsTab,
|
|
SecurityTab,
|
|
PerformanceSummaryTab,
|
|
PerformanceEquityTab,
|
|
PerformanceDayTab,
|
|
PerformanceWeekTab,
|
|
PerformanceMonthTab,
|
|
PerformanceYearTab,
|
|
PerformanceReturnTab
|
|
};
|
|
|
|
struct Coordinates
|
|
{
|
|
int x1;
|
|
int y1;
|
|
int x2;
|
|
int y2;
|
|
};
|
|
|
|
struct Settings
|
|
{
|
|
// panel
|
|
SYMBOL_CHART_CHANGE_REACTION symbolchange;
|
|
bool IsPanelMinimized;
|
|
TABS SelectedTab;
|
|
uint LastRecalc;
|
|
long TimFrames;
|
|
long Streak;
|
|
long Condition;
|
|
long MaxBuy;
|
|
long MaxSell;
|
|
long TypePositions;
|
|
long RiskReward;
|
|
long Expiryations;
|
|
double RiskManagments;
|
|
double LotSize;
|
|
double MaximumRiskAouto;
|
|
long InpSl;
|
|
long SlEntry;
|
|
long Telorance;
|
|
long ZeroLots;
|
|
long StrategyRisk;
|
|
long SaveProfit;
|
|
long SaveType;
|
|
long SaveTrigger;
|
|
long SaveValue;
|
|
long Tls;
|
|
long TlsType;
|
|
long TlsTrigger;
|
|
long TlsValue;
|
|
long ComisionInOut;
|
|
long ComisionMethod;
|
|
double ComisionFirstInput;
|
|
double ComisionFirstInput2;
|
|
double ComisionFirstValue;
|
|
double ComisionSecondInput;
|
|
double ComisionSecondInput2;
|
|
double ComisionSecondValue;
|
|
long SymbolChange;
|
|
long Minimized;
|
|
long Privacy;
|
|
long TesterHide;
|
|
long TesterReport;
|
|
long FontName;
|
|
long Themes;
|
|
// License
|
|
string LoginUserID;
|
|
string LoginExpiry;
|
|
bool CheckVerifyLicense;
|
|
string SHowExpiry;
|
|
string ShowDaysLeft;
|
|
}Sets;
|
|
|
|
enum ControlType { Label, EditText, Button, ComboBox, Progrees, Graphic, Pictur};
|
|
|
|
struct ControlLayout {
|
|
ControlType type;
|
|
int width;
|
|
int height;
|
|
int xOffset;
|
|
int yOffset;
|
|
string text;
|
|
};
|
|
|
|
|
|
struct TooltipMapping {
|
|
int labelIndex; // The index of the label
|
|
string tooltip; // Tooltip text
|
|
};
|
|
|
|
// An object class for a list of panel objects with their names for fields located on a given tab of the panel. There will be one list per tab.
|
|
class CStringForList : public CObject
|
|
{
|
|
public:
|
|
string Name;
|
|
CWnd* Obj;
|
|
bool Hidden; // Used only in the Trading tab to avoid deleting the extra TPs but keep them hidden after removal.
|
|
CStringForList() {Hidden = false;}
|
|
};
|
|
|
|
class CPanelList : public CList
|
|
{
|
|
public:
|
|
void DeleteListElementByName(const string name);
|
|
void MoveListElementByName(const string name, const int index);
|
|
void CreateListElementByName(CObject &obj, const string name);
|
|
void SetHiddenByName(const string name, const bool hidden);
|
|
};
|
|
|
|
|