示例#1
0
		public static string CompareLogic(GKAdvancedLogic targetLogic)
		{
			var result ="";
			if (LogicToCopy.HasOnClause && !targetLogic.HasOnClause)
				result += "\nЦелевой объект не содержит \"Условие Включения\"";
			if (LogicToCopy.HasOnNowClause && !targetLogic.HasOnNowClause)
				result += "\nЦелевой объект не содержит \"Условие Включения Немедленно\"";
			if (LogicToCopy.HasOffClause && !targetLogic.HasOffClause)
				result += "\nЦелевой объект не содержит \"Условие Выключения\"";
			if (LogicToCopy.HasOffNowClause && !targetLogic.HasOffNowClause)
				result += "\nЦелевой объект не содержит \"Условие Выключения Немедленно\"";
			if (LogicToCopy.HasStopClause && !targetLogic.HasStopClause)
				result += "\nЦелевой объект не содержит \"Условие Останова\"";

			if (!LogicToCopy.HasOnClause && targetLogic.HasOnClause)
				result += "\nЦелевой объект дополнительно содержит \"Условие Включения\"";
			if (!LogicToCopy.HasOnNowClause && targetLogic.HasOnNowClause)
				result += "\nЦелевой объект дополнительно содержит \"Условие Включения Немедленно\"";
			if (!LogicToCopy.HasOffClause && targetLogic.HasOffClause)
				result += "\nЦелевой объект дополнительно содержит \"Условие Выключения\"";
			if (!LogicToCopy.HasOffNowClause && targetLogic.HasOffNowClause)
				result += "\nЦелевой объект дополнительно содержит \"Условие Выключения Немедленно\"";
			if (!LogicToCopy.HasStopClause && targetLogic.HasStopClause)
				result += "\nЦелевой объект дополнительно содержит \"Условие Останова\"";
			return result;
		}
示例#2
0
		public static GKLogic PasteLogic(GKAdvancedLogic targetLogic)
		{
			var gkLogic = new GKLogic();
			if (targetLogic.HasOnClause)
				gkLogic.OnClausesGroup = LogicToCopy.OnClausesGroup;
			if (targetLogic.HasOnNowClause)
				gkLogic.OnNowClausesGroup = LogicToCopy.OnNowClausesGroup;
			if (targetLogic.HasOffClause)
			{
				gkLogic.OffClausesGroup = LogicToCopy.OffClausesGroup;
				gkLogic.UseOffCounterLogic = LogicToCopy.UseOffCounterLogic;
			}
			if (targetLogic.HasOffNowClause)
				gkLogic.OffNowClausesGroup = LogicToCopy.OffNowClausesGroup;
			if (targetLogic.HasStopClause)
				gkLogic.StopClausesGroup = LogicToCopy.StopClausesGroup;
			return gkLogic;
		}
示例#3
0
		public static void CopyLogic(GKLogic sourceLogic, bool hasOnClause = false, bool hasOnNowClause = false, bool hasOffClause = false, bool hasOffNowClause = false, bool hasStopClause = false)
		{
			LogicToCopy = new GKAdvancedLogic(hasOnClause, hasOnNowClause, hasOffClause, hasOffNowClause, hasStopClause);
			if (hasOnClause)
				LogicToCopy.OnClausesGroup = sourceLogic.OnClausesGroup.Clone();
			if (hasOnNowClause)
				LogicToCopy.OnNowClausesGroup = sourceLogic.OnNowClausesGroup.Clone();
			if (hasOffClause)
			{
				LogicToCopy.OffClausesGroup = sourceLogic.OffClausesGroup.Clone();
				LogicToCopy.UseOffCounterLogic = sourceLogic.UseOffCounterLogic;
			}
			if (hasOffNowClause)
				LogicToCopy.OffNowClausesGroup = sourceLogic.OffNowClausesGroup.Clone();
			if (hasStopClause)
				LogicToCopy.StopClausesGroup = sourceLogic.StopClausesGroup.Clone();
			LogicToCopy.UseOffCounterLogic = sourceLogic.UseOffCounterLogic;
		}