public MemoryMeasurement(MemoryStruct.IMemoryMeasurement raw)
        {
            this.Raw = raw;

            if (null == raw)
            {
                return;
            }

            Culture.InvokeInParseCulture(() =>
            {
                Target = raw?.Target?.Select(ShipUiExtension.Parse)?.ToArray();

                ModuleButtonTooltip = raw?.ModuleButtonTooltip?.ParseAsModuleButtonTooltip();

                WindowOverview = raw?.WindowOverview?.Select(OverviewExtension.Parse)?.ToArray();

                WindowInventory = raw?.WindowInventory?.Select(InventoryExtension.Parse)?.ToArray();

                WindowAgentDialogue = raw?.WindowAgentDialogue?.Select(DialogueMissionExtension.Parse)?.ToArray();

                ShipUi = raw?.ShipUi?.Parse();

                var SetWindowStation = raw?.WindowStation;

                if (!SetWindowStation.IsNullOrEmpty())
                {
                    IsDocked = true;
                }

                if (null != ShipUi ||
                    (raw?.WindowOverview?.WhereNotDefault()?.Any() ?? false))
                {
                    IsDocked = false;
                }

                if (!(IsDocked ?? true))
                {
                    IsUnDocking = false;
                }

                if (SetWindowStation?.Any(windowStation => windowStation?.AboveServicesLabel?.Any(labelText =>
                                                                                                  labelText?.Text?.RegexMatchSuccessIgnoreCase(@"abort\s*undock|undocking") ?? false) ?? false) ?? false)
                {
                    IsUnDocking = true;
                }

                Neocom = raw?.Neocom?.Parse();

                Menu = raw?.Menu?.Select(menu => menu?.Parse())?.ToArrayIfNotEmpty();

                InfoPanelCurrentSystem = raw?.InfoPanelCurrentSystem?.Parse();
            });
        }
Example #2
0
        static public BotEngine.EveOnline.Interface.MemoryStruct.MemoryMeasurement AsOld(
            this Sanderling.Interface.MemoryStruct.IMemoryMeasurement memoryMeasurement,
            Func <object, object> mapDelegate)
        {
            var parsed = memoryMeasurement?.Parse();

            if (parsed == null)
            {
                return(null);
            }

            return(new BotEngine.EveOnline.Interface.MemoryStruct.MemoryMeasurement
            {
                SessionDurationRemaining = parsed?.SessionDurationRemaining,
                Menu = parsed?.Menu?.Select(AsOld)?.ToArray(),
                AbovemainMessage = parsed?.AbovemainMessage?.AsOldUIElementLabelString()?.ToArray(),
                AbovemainPanelEveMenu = parsed?.AbovemainPanelEveMenu?.Select(AsOld)?.ToArray(),
                AbovemainPanelGroup = parsed?.AbovemainPanelGroup?.Select(AsOld)?.ToArray(),
                InfoPanelButtonIncursions = parsed?.InfoPanelButtonIncursions?.AsOldUIElement(),
                InfoPanelButtonLocationInfo = parsed?.InfoPanelButtonCurrentSystem?.AsOldUIElement(),
                InfoPanelButtonRoute = parsed?.InfoPanelButtonRoute?.AsOldUIElement(),
                InfoPanelButtonMissions = parsed?.InfoPanelButtonMissions?.AsOldUIElement(),
                InfoPanelLocationInfo = parsed?.InfoPanelCurrentSystem?.AsOld(),
                InfoPanelRoute = parsed?.InfoPanelRoute?.AsOld(),
                InfoPanelMissions = parsed?.InfoPanelMissions?.AsOld(),
                ModuleButtonTooltip = parsed?.ModuleButtonTooltip?.AsOld(),
                Neocom = parsed?.Neocom?.AsOld(),
                ShipUi = parsed?.ShipUi?.AsOld(),
                SystemMenu = parsed?.SystemMenu?.AsOldSystemMenu(),
                Target = parsed?.Target?.Select(AsOld)?.ToArray(),
                UtilmenuMission = parsed?.Utilmenu?.Select(c => c.AsOldUtilmenuMission(parsed))?.WhereNotDefault()?.FirstOrDefault(),
                VersionString = parsed?.VersionString,

                WindowAgentBrowser = parsed?.WindowAgentBrowser?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowAgentBrowser>())?.ToArray(),
                WindowAgentDialogue = parsed?.WindowAgentDialogue?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowAgentDialogue>())?.ToArray(),
                WindowChatChannel = parsed?.WindowChatChannel?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowChatChannel>())?.ToArray(),
                WindowDroneView = parsed?.WindowDroneView?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowDroneView>())?.ToArray(),
                WindowFittingMgmt = parsed?.WindowFittingMgmt?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowFittingMgmt>())?.ToArray(),
                WindowFittingWindow = parsed?.WindowShipFitting?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowFittingWindow>())?.ToArray(),
                WindowInventory = parsed?.WindowInventory?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowInventory>())?.ToArray(),
                WindowItemSell = parsed?.WindowItemSell?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowItemSell>())?.ToArray(),
                WindowMarketAction = parsed?.WindowMarketAction?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowMarketAction>())?.ToArray(),
                WindowOverview = parsed?.WindowOverview?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowOverView>())?.ToArray(),
                WindowOther = parsed?.WindowOther?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.Window>())?.ToArray(),
                WindowRegionalMarket = parsed?.WindowRegionalMarket?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowRegionalMarket>())?.ToArray(),
                WindowSelectedItemView = parsed?.WindowSelectedItemView?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowSelectedItemView>())?.ToArray(),
                WindowStack = parsed?.WindowStack?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowStack>())?.ToArray(),
                WindowStationLobby = parsed?.WindowStation?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowStationLobby>())?.ToArray(),
                WindowSurveyScanView = parsed?.WindowSurveyScanView?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowSurveyScanView>())?.ToArray(),
                WindowTelecom = parsed?.WindowTelecom?.Select(mapDelegate.CastReturn <BotEngine.EveOnline.Interface.MemoryStruct.WindowTelecom>())?.ToArray(),
            });
        }
        public MemoryMeasurement(MemoryStruct.IMemoryMeasurement Raw)
        {
            this.Raw = Raw;

            if (null == Raw)
            {
                return;
            }

            Culture.InvokeInParseCulture(() =>
            {
                Target = Raw?.Target?.Select(ShipUiExtension.Parse)?.ToArray();

                ModuleButtonTooltip = Raw?.ModuleButtonTooltip?.ParseAsModuleButtonTooltip();

                WindowOverview = Raw?.WindowOverview?.Select(OverviewExtension.Parse)?.ToArray();

                WindowInventory = Raw?.WindowInventory?.Select(InventoryExtension.Parse)?.ToArray();

                WindowAgentDialogue = Raw?.WindowAgentDialogue?.Select(DialogueMissionExtension.Parse)?.ToArray();

                var ShipUi = Raw?.ShipUi;

                var SetWindowStation = Raw?.WindowStation;

                if (!SetWindowStation.IsNullOrEmpty())
                {
                    IsDocked = true;
                }

                if (null != ShipUi ||
                    (Raw?.WindowOverview?.WhereNotDefault()?.Any() ?? false))
                {
                    IsDocked = false;
                }

                if (!(IsDocked ?? true))
                {
                    IsUnDocking = false;
                }

                if (SetWindowStation?.Any(WindowStationLobby => WindowStationLobby?.LabelText?.Any(LabelText =>
                                                                                                   LabelText?.Text?.RegexMatchSuccess(@"abort\s*undock|undocking") ?? false) ?? false) ?? false)
                {
                    IsUnDocking = true;
                }

                Neocom = Raw?.Neocom?.Parse();
            });
        }
		public MemoryMeasurement(MemoryStruct.IMemoryMeasurement raw)
		{
			this.Raw = raw;

			if (null == raw)
				return;

			Culture.InvokeInParseCulture(() =>
			{
				Target = raw?.Target?.Select(ShipUiExtension.Parse)?.ToArray();

				ModuleButtonTooltip = raw?.ModuleButtonTooltip?.ParseAsModuleButtonTooltip();

				WindowOverview = raw?.WindowOverview?.Select(OverviewExtension.Parse)?.ToArray();

				WindowInventory = raw?.WindowInventory?.Select(InventoryExtension.Parse)?.ToArray();

				WindowAgentDialogue = raw?.WindowAgentDialogue?.Select(DialogueMissionExtension.Parse)?.ToArray();

				ShipUi = raw?.ShipUi?.Parse();

				var SetWindowStation = raw?.WindowStation;

				if (!SetWindowStation.IsNullOrEmpty())
				{
					IsDocked = true;
				}

				if (null != ShipUi ||
					(raw?.WindowOverview?.WhereNotDefault()?.Any() ?? false))
				{
					IsDocked = false;
				}

				if (!(IsDocked ?? true))
					IsUnDocking = false;

				if (SetWindowStation?.Any(windowStation => windowStation?.AboveServicesLabel?.Any(labelText =>
					labelText?.Text?.RegexMatchSuccessIgnoreCase(@"abort\s*undock|undocking") ?? false) ?? false) ?? false)
					IsUnDocking = true;

				Neocom = raw?.Neocom?.Parse();

				Menu = raw?.Menu?.Select(menu => menu?.Parse())?.ToArrayIfNotEmpty();

				InfoPanelCurrentSystem = raw?.InfoPanelCurrentSystem?.Parse();
			});
		}
Example #5
0
        static public BotEngine.EveOnline.Interface.MemoryStruct.MemoryMeasurement AsOld(
            this Sanderling.Interface.MemoryStruct.IMemoryMeasurement memoryMeasurement)
        {
            var parsed = memoryMeasurement?.Parse();

            if (parsed == null)
            {
                return(null);
            }

            var mappingContext = new MappingContext
            {
                GetMappingFuncFromTypeDelegate = type => MappingFuncFromTypeCache.ValueFürKey(type, MappingFuncFromType),
            };

            return((BotEngine.EveOnline.Interface.MemoryStruct.MemoryMeasurement)mappingContext.Map(memoryMeasurement));
        }
		public MemoryMeasurement(MemoryStruct.IMemoryMeasurement Raw)
		{
			this.Raw = Raw;

			if (null == Raw)
			{
				return;
			}

			Culture.InvokeInParseCulture(() =>
			{
				Target = Raw?.Target?.Select(ShipUiExtension.Parse)?.ToArray();

				ModuleButtonTooltip = Raw?.ModuleButtonTooltip?.ParseAsModuleButtonTooltip();

				WindowOverview = Raw?.WindowOverview?.Select(OverviewExtension.Parse)?.ToArray();

				WindowInventory = Raw?.WindowInventory?.Select(InventoryExtension.Parse)?.ToArray();

				WindowAgentDialogue = Raw?.WindowAgentDialogue?.Select(DialogueMissionExtension.Parse)?.ToArray();

				var ShipUi = Raw?.ShipUi;

				var SetWindowStation = Raw?.WindowStation;

				if (!SetWindowStation.IsNullOrEmpty())
				{
					IsDocked = true;
				}

				if (null != ShipUi ||
					(Raw?.WindowOverview?.WhereNotDefault()?.Any() ?? false))
				{
					IsDocked = false;
				}

				if (!(IsDocked ?? true))
				{
					IsUnDocking = false;
				}

				if (SetWindowStation?.Any(WindowStationLobby => WindowStationLobby?.LabelText?.Any(LabelText =>
					 LabelText?.Text?.RegexMatchSuccess(@"abort\s*undock|undocking") ?? false) ?? false) ?? false)
				{
					IsUnDocking = true;
				}

				Neocom = Raw?.Neocom?.Parse();
			});
		}
Example #7
0
 static public IMemoryMeasurement Parse(this MemoryStruct.IMemoryMeasurement memoryMeasurement) =>
 null == memoryMeasurement ? null : new Parse.MemoryMeasurement(memoryMeasurement);