From 566928c9cbdbf542f7ef31c6a7aeeceea5082272 Mon Sep 17 00:00:00 2001 From: shagu Date: Wed, 22 Nov 2017 20:14:52 +0100 Subject: [PATCH] map: add display for cursor coordinates --- modules/map.lua | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/modules/map.lua b/modules/map.lua index ef7e0b65..76c72fc3 100644 --- a/modules/map.lua +++ b/modules/map.lua @@ -63,10 +63,10 @@ pfUI:RegisterModule("map", function () WorldMapFrameCloseButton:SetPoint("TOPRIGHT", WorldMapFrame, "TOPRIGHT", 0, 0) CreateBackdrop(WorldMapFrame) - + WorldMapFrame:SetAlpha(c_position.alpha) WorldMapFrame:SetScale(c_position.scale) - + BlackoutWorld:Hide() for i,v in ipairs({WorldMapFrame:GetRegions()}) do @@ -79,5 +79,30 @@ pfUI:RegisterModule("map", function () end end end) + + -- coordinates + WorldMapButton.coords = CreateFrame("Frame", "pfWorldMapButtonCoords", WorldMapButton) + WorldMapButton.coords.text = WorldMapButton.coords:CreateFontString(nil, "OVERLAY") + WorldMapButton.coords.text:SetPoint("BOTTOMRIGHT", WorldMapButton, "BOTTOMRIGHT", -10, 10) + WorldMapButton.coords.text:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE") + WorldMapButton.coords.text:SetTextColor(1, 1, 1) + WorldMapButton.coords.text:SetJustifyH("RIGHT") + + WorldMapButton.coords:SetScript("OnUpdate", function() + local width = WorldMapButton:GetWidth() + local height = WorldMapButton:GetHeight() + local mx, my = WorldMapButton:GetCenter() + local scale = WorldMapButton:GetEffectiveScale() + local x, y = GetCursorPosition() + + mx = (( x / scale ) - ( mx - width / 2)) / width * 100 + my = (( my + height / 2 ) - ( y / scale )) / height * 100 + + if MouseIsOver(WorldMapButton) then + WorldMapButton.coords.text:SetText(string.format('%.1f / %.1f', mx, my)) + else + WorldMapButton.coords.text:SetText("") + end + end) end) end)