Ejemplo n.º 1
0
        private static async void TriggerItemFetch()
        {
            Logger.Log("Hotkey pressed.");

            // Trigger copy action.
            SendKeys.SendWait("^{c}");
            // Retrieve clipboard.
            var itemText = ClipboardHelper.GetText();
            // Parse item.
            var item = ItemParser.ParseItem(itemText);

            if (item != null)
            {
                OverlayController.SetPosition(Cursor.Position.X, Cursor.Position.Y);
                OverlayController.Show();

                var queryResult = await TradeClient.GetListings(item);

                if (queryResult != null)
                {
                    OverlayController.SetQueryResult(queryResult);
                    return;
                }
            }

            OverlayController.Hide();
        }
Ejemplo n.º 2
0
        public static void Initialize()
        {
            Legacy.KeybindEvents.OnCloseWindow += () =>
            {
                var handled = false;

                if (OverlayController.IsDisplayed)
                {
                    OverlayController.Hide();
                    handled = true;
                }

                if (LeagueOverlayController.IsDisplayed)
                {
                    LeagueOverlayController.Hide();
                    handled = true;
                }

                return(Task.FromResult(handled));
            };

            Legacy.KeybindEvents.OnPriceCheck         += TriggerItemFetch;
            Legacy.KeybindEvents.OnItemWiki           += TriggerItemWiki;
            Legacy.KeybindEvents.OnHideout            += TriggerHideout;
            Legacy.KeybindEvents.OnFindItems          += TriggerFindItem;
            Legacy.KeybindEvents.OnLeaveParty         += TriggerLeaveParty;
            Legacy.KeybindEvents.OnOpenSearch         += TriggerOpenSearch;
            Legacy.KeybindEvents.OnOpenLeagueOverview += TriggerLeagueOverlay;
            Legacy.KeybindEvents.OnWhisperReply       += TriggerReplyToLatestWhisper;
            Legacy.KeybindEvents.OnMouseClick         += MouseClicked;
        }
Ejemplo n.º 3
0
        private static async Task <bool> TriggerItemFetch()
        {
            Legacy.Logger.Log("Hotkey for pricing item triggered.");

            var item = await TriggerCopyAction();

            if (item != null)
            {
                OverlayController.Open();

                var queryResult = await Legacy.TradeClient.GetListings(item);

                if (queryResult != null)
                {
                    var poeNinjaItem = Legacy.PoeNinjaCache.GetItem(item);
                    if (poeNinjaItem != null)
                    {
                        queryResult.PoeNinjaItem         = poeNinjaItem;
                        queryResult.LastRefreshTimestamp = Legacy.PoeNinjaCache.LastRefreshTimestamp;
                    }
                    OverlayController.SetQueryResult(queryResult);
                    return(true);
                }

                OverlayController.Hide();
                return(true);
            }

            return(false);
        }
Ejemplo n.º 4
0
        private static void GlobalHookKeyPressHandler(object sender, KeyEventArgs e)
        {
            if (!TradeClient.IsReady)
            {
                return;
            }

            if (OverlayController.IsDisplayed && e.KeyCode == Keys.Escape)
            {
                e.Handled = true;
                OverlayController.Hide();
            }
            else if (ProcessHelper.IsPathOfExileInFocus())
            {
                if (!OverlayController.IsDisplayed && e.Modifiers == Keys.Control && e.KeyCode == Keys.D)
                {
                    e.Handled = true;
                    Task.Run(TriggerItemFetch);
                }
                else if (e.Modifiers == Keys.Alt && e.KeyCode == Keys.W)
                {
                    e.Handled = true;
                    Task.Run(TriggerItemWiki);
                }
                else if (e.Modifiers == Keys.None && e.KeyCode == Keys.F5)
                {
                    e.Handled = true;
                    Task.Run(TriggerHideout);
                }
            }
        }
Ejemplo n.º 5
0
        private static Task MouseClicked(int x, int y)
        {
            if (!OverlayController.IsDisplayed || !Legacy.Settings.CloseOverlayWithMouse)
            {
                return(Task.CompletedTask);
            }

            var overlayPos  = OverlayController.GetOverlayPosition();
            var overlaySize = OverlayController.GetOverlaySize();

            if (x < overlayPos.X || x > overlayPos.X + overlaySize.Width ||
                y < overlayPos.Y || y > overlayPos.Y + overlaySize.Height)
            {
                OverlayController.Hide();
            }

            return(Task.CompletedTask);
        }
Ejemplo n.º 6
0
        private static async void TriggerItemFetch()
        {
            Logger.Log("Hotkey for pricing item triggered.");

            Item item = await TriggerCopyAction();

            if (item != null)
            {
                OverlayController.Open();

                var queryResult = await TradeClient.GetListings(item);

                if (queryResult != null)
                {
                    OverlayController.SetQueryResult(queryResult);
                    return;
                }
            }

            OverlayController.Hide();
        }