Code Monkey home page Code Monkey logo

neavui's Introduction

Neav UI

This is the development repository for Neav UI on WoWInterface.

Addons included

  • !Beautycase
  • !Colorz
  • evl_RaidStatus
  • nBuff
  • nChat
  • nCore
  • nMainbar
  • nMinimap
  • nPower
  • nPlates
  • nTooltip
  • oUF
  • oUF_Neav
  • oUF_NeavRaid

Credits

  • Neav for creating Neav UI.
  • Grimsbain for being a co-maintainer.

License

MIT

neavui's People

Contributors

grimsbain avatar jsimpson avatar kkthnx avatar lithammer avatar rainrider avatar srliao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

neavui's Issues

Grab mail attachments fails on last mail when they all have multiple attachments.

Reported by glupikreten:

maybe it was mentioned before ... can't find it...

If you have X mails with one or no attachments and press the button everything works fine
If you have X mails with multiple attachments and LAST mail with one or no attachments everything is fine

but...

If you have X mails ALL with multiple attachments pressing the button script retrieves just one attached thing from last mail and gets stucked... you have to manually click through all

thank you

how-to move player & tgt frames to center of screen?

we got in unit > player something like this:

position = {'TOPLEFT', UIParent, 34, -30},

how to do it on center of screen and player on left side of our character, and target on right side?

i tryed:

position = {'CENTER', UIParent, 34, -30}, < and tryed to change values but not working really, center value working - but numbers to move it - not.

Any ideas?

Right Bar doesn't hide when mouse leaves from the bottom of last button.

Noticed this while I was working on the other problems in mouseover.lua but I already worked out a fix. If you change the button OnLeave code to check if it is over f instead of bar it fixes the bug.

    button:HookScript('OnLeave', function() 
        if (not MouseIsOver(f)) then
            bar:SetAlpha(minAlpha)
        end
    end)

PlayerFrame switching isn't working correctly when entering vehicle

When entering a vehicle the moving of the player into the petframe and displaying the vehicle on the player frame isn't working as it should. The player frame disappears. Not sure if this is an issue with oUF_Neav, or oUF itself.

Here's some screenshots to demonstrate the issue:

This first screenshot is what the expected result should be (this is runnig with Blizzard's default frames)

Here's what happens when running oUF_Neav on oUF v1.6 commit 4fce51da62:

And as you can see, instead of replacing the player with the vehicle, the vehicle replaces the pet frame instead and the player frame disappears.

So trying to force the player frame with:

-- This is just a hack to stop it from automatically hiding itself
oUF_Neav_Player:HookScript('OnShow', function(self)
    self:Show()
end)
oUF_Neav_Player:Show()

Now the warlock power bar still shows, obviously you could hide it as well (but it's most likely not apart of the problem, merely a side-effect).

We've now almost reached the desired result, however the pet frame should show the player, and not the vehicle.

nMainbar shows the wrong keybinds Now!

nMainbar now shows the wrong keybinds.
the multibarleft and the multibarright and the multibarbottomleft and the multibarbottomright shows the same keybinds as mainbar.
image
image

Add banner trackers for Warriors

Also the reason I mention warrior , is because he also use that same exact frame to track Banners, if I have a banner down, it will show that same circle under my player frame with a timer under it. but with Neav I can't see that circle at all under my frame.

and please forgive me if that isn't a default WoW thing, because I have another unitframe that shows that, so I dunno, I just think it is a default WoW unitframe thingy.

issue with nMinimap

problem with tab.lua

Fix by changing line like 899 to
local bnt = ''
if BNTable[i][2] and BNTable[i][3] then
bnt = (BNTable[i][2]..' '..BNTable[i][3])
end
GameTooltip:AddDoubleLine(format('%s (|cff%02x%02x%02x%d|r |cff%02x%02x%02x%s|r%s) |cff%02x%02x%02x%s|r', BNTable[i][6], levelc.r_255, levelc.g_255, levelc.b_255, BNTable[i][16], classc.r_255, classc.g_255, classc.b_255, BNTable[i][4], groupedTable[grouped], 255, 0, 0, statusTable[status]),bnt, 238, 238, 238, 238, 238, 238)

problem with !Beautycase, SetBorderTexture()

There is an isssue with some addons (Archy, _MiniBlobs) and SetBorderTexture, I can see !Beautycase spilling out errors, and at the same time those 2 addons won't put quest and archaeology blobs on the minimap.

I looked in their source code and both call something equal to Blob:SetBorderTexture, I guess that it has something to do with minimap parenting blob frames.

Heal prediction misplaced

"I did however notice that the incoming heal stuff isnt working.. It shows on 1 frame only, but not on the frame but the one above it. And not at the end, but at the start of the frame.. So I think I'm just gonna code it out. Not like I ever used it."
-- Reported by Aschker

nMinimap suggestion

Addons like _NPCScan.Overlay call a function named GetMinimapShape() to determine the shape, may I suggest you add this function ? (dunno if its a good idea or not, just sayin')

Value returned should obviously be "SQUARE".

More info in _NPCScan.Overlay/Modules/Minimap.lua, line 416

MultiBarLeft mouseover

Having set both MultiBarLeft and MultiBarRight is causing some problems because as of 4.0.6 NultiBarLeft has NultiBarRight as parent as thus inherits its visibility.

So this means MultiBarRight has to be visible in order for MultiBarLeft to be visible.

Forcing Blizzard_GlyphUI to load ACTIVE_TALENT_GROUP_CHANGED caused errors on login

local f = CreateFrame('Frame')
f:RegisterEvent('PLAYER_LOGIN')
f:RegisterEvent('ACTIVE_TALENT_GROUP_CHANGED')
f:SetScript('OnEvent', function(_, event, ...)
    if (event == 'PLAYER_LOGIN') then
        SetCVar('ScreenshotQuality', 10)
    end

    if (event == 'ACTIVE_TALENT_GROUP_CHANGED') then
        LoadAddOn('Blizzard_GlyphUI') -- Error!
    end
end)

This is a hack needed on Live to because sometimes the GlyphUI didn't load properly after respeccing. However in MoP beta it causes an error on login because ACTIVE_TALENT_GROUP_CHANGED gets fired too early (or something like that).

Two possible solutions for this, either move the f:RegisterEvent call inside the PLAYER_LOGIN if-statement like so:

local f = CreateFrame('Frame')
f:RegisterEvent('PLAYER_LOGIN')
f:SetScript('OnEvent', function(_, event, ...)
    if (event == 'PLAYER_LOGIN') then
        SetCVar('ScreenshotQuality', 10)
        f:RegisterEvent('ACTIVE_TALENT_GROUP_CHANGED')
    end

    if (event == 'ACTIVE_TALENT_GROUP_CHANGED') then
        LoadAddOn('Blizzard_GlyphUI')
    end
end)

Or completely remove it and hope everything works as it should in MoP:

local f = CreateFrame('Frame')
f:RegisterEvent('PLAYER_LOGIN')
f:SetScript('OnEvent', function(_, event, ...)
    if (event == 'PLAYER_LOGIN') then
        SetCVar('ScreenshotQuality', 10)
    end
end)

Tooltip help showing how to move the watchframe

watchHead:SetScript('OnEnter', function()
    if (not InCombatLockdown()) then
        GameTooltip:SetOwner(watchHead, 'ANCHOR_TOPLEFT')
        GameTooltip:ClearLines()
        GameTooltip:AddLine('Shift + left-click to Drag')
        GameTooltip:Show()
    end
end)

watchHead:SetScript('OnLeave', GameTooltip:Hide())

PvP improvements

Suggestions from lasc321 over at WoWInterface:

  • Class icon, something that will work with LoseControl addon.
  • A type of whitelist for debuff/buffs.
  • Diminishing returns.
  • Scale up the raid frame icons (reference).
  • Extra corner icons.

Option for chat border

do  
    for i = 1, NUM_CHAT_WINDOWS do
        local cf = _G['ChatFrame'..i]
        if cf then
            cf:CreateBeautyBorder(10)
            cf:SetBeautyBorderPadding( 5, 5, 5, 5, 5, 8, 5, 8)
        end
    end

    local ct = _G['ChatFrame2']
    if ct then
        ct:CreateBeautyBorder(10)
        ct:SetBeautyBorderPadding(5, 29, 5, 29, 5, 8, 5, 8)
    end
end

Shaman dispel types

Shamans can only decurse, and dispel magic if resto. Right now they're set to poison, curse and disease.

nTooltip NPC error in scenarios

nTooltip keeps sending errors whenever you are in a scenario where you have helpers, if you mousehover on them, it will keep bringing lau errors, for example join proving ground, and try tank or healer. and put your mouse on the healer or any NPC Helpers in there.

Message: Interface\AddOns\nTooltip\core.lua:265: attempt to concatenate a nil value
Time: 12/11/13 23:17:38
Count: 11
Stack: Interface\AddOns\nTooltip\core.lua:265: in function <Interface\AddOns\nTooltip\core.lua:263>
Interface\AddOns\nTooltip\core.lua:419: in function <Interface\AddOns\nTooltip\core.lua:360>
[C]: ?
[C]: ?

Locals: unit = "party1"
specIcon = ""
(*temporary) = "91 "
(*temporary) = nil
(*temporary) = " Shado-Pan Defender"
(*temporary) = ""
(*temporary) = "attempt to concatenate a nil value"
GetFormattedUnitLevel = <function> defined @Interface\AddOns\nTooltip\core.lua:245
GetFormattedUnitClass = <function> defined @Interface\AddOns\nTooltip\core.lua:256
cfg = <table> {
 showPlayerTitles = true
 fontSize = 15
 showSpecializationIcon = true
 healthbar = <table> {
 }
 showPVPIcons = false
 itemqualityBorderColor = true
 showOnMouseover = true
 showMouseoverTarget = true
 abbrevRealmNames = false
 disableFade = false
 showUnitRole = true
 fontOutline = false
 showItemLevel = true
 hideInCombat = false
 reactionBorderColor = false
 position = <table> {
 }
}
GetFormattedUnitClassification = <function> defined @Interface\AddOns\nTooltip\core.lua:230
GetFormattedUnitType = <function> defined @Interface\AddOns\nTooltip\core.lua:221

nMinimap raid difficulty is displaying incorrect values.

The difficultyIndex value returned from GetInstanceInfo() now has 9 values to the previous 4(?).

Old

1 → In raids, this represents 10 Player. In instances, Normal.
2 → In raids, this represents 25 Player. In instances, Heroic.
3 → In raids, this represents 10 Player Heroic. In instances, Epic (unused for PvE instances but returned in some battlegrounds).
4 → In raids, this represents 25 Player Heroic.

New

0 → None
1 → 5 Player, Scenario
2 → 5 Player (Heroic)
3 → 10 Player
4 → 25 Player
5 → 10 Player (Heroic)
6 → 25 Player (Heroic)
7 → Raid Finder
8 → Challenge Mode
9 → 40 Player

Can't change glyph

An action was blocked because of taint from oUF_Neav - CastGlyph()
Interface\AddOns\Blizzard_GlyphUI\Blizzard_GlyphUI.lua:580 GlyphFrameSpell_OnClick()
GlyphFrameScrollFrameButton6:OnClick()

Seems to occur after talent wipe and then change glyphs.

Not even sure this is actually related to Neav UI, seems like a lot of addons can cause this problem :S

Taint from ActionButtonText

An action was blocked because of taint from ActionButtonText - CancelUnitBuff()
Interface\FrameXML\BuffFrame.lua:280 BuffButton_OnClick()
BuffButton11:OnClick()

Oculus

When on the Drakes party members portraits show them with a lightning bolt like they are DCed.

nMinimap

nMinimap_InstanceDifficulty.lua: line 50 : attempt to index field 'MouseOver' (a nil value)

oUF_neav

If using just the ouf layout (I like this UI, but it doesn't fit my needs), you have to use !Beautycase as well. You might need to add it to the RequiredDeps in the toc file.

Config variable sometimes nil

Message: Interface\AddOns\oUF_Neav\castbar.lua:6: attempt to index local 'config' (a nil value)
Time: 12/06/12 21:06:44
Count: 9
Stack: Interface\AddOns\oUF_Neav\castbar.lua:6: in function <Interface\AddOns\oUF_Neav\castbar.lua:4>
(tail call): ?
Interface\AddOns\oUF\events.lua:69: in function <Interface\AddOns\oUF\events.lua:62>

Locals: self = oUF_Neav_TargetCastbar {
 0 = <userdata>
 interrupt = true
 channeling = true
 beautyShadow = <table> {
 }
 duration = 1.1379999872297
 Time = <unnamed> {
 }
 CustomTimeText = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:11
 PostChannelStart = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:127
 __owner = oUF_Neav_Target {
 }
 IconOverlay = <unnamed> {
 }
 max = 1.5
 Text = <unnamed> {
 }
 beautyBorder = <table> {
 }
 PostCastStart = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:96
 PostCastNotInterruptible = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:4
 PostCastInterruptible = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:4
 ForceUpdate = <function> defined @Interface\AddOns\oUF\elements\castbar.lua:430
 CustomDelayText = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:15
 Background = <unnamed> {
 }
 delay = 0
 Icon = <unnamed> {
 }
}
unit = "target"
config = nil
(*temporary) = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:5
(*temporary) = oUF_Neav_TargetCastbar {
 0 = <userdata>
 interrupt = true
 channeling = true
 beautyShadow = <table> {
 }
 duration = 1.1379999872297
 Time = <unnamed> {
 }
 CustomTimeText = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:11
 PostChannelStart = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:127
 __owner = oUF_Neav_Target {
 }
 IconOverlay = <unnamed> {
 }
 max = 1.5
 Text = <unnamed> {
 }
 beautyBorder = <table> {
 }
 PostCastStart = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:96
 PostCastNotInterruptible = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:4
 PostCastInterruptible = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:4
 ForceUpdate = <function> defined @Interface\AddOns\oUF\elements\castbar.lua:430
 CustomDelayText = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:15
 Background = <unnamed> {
 }
 delay = 0
 Icon = <unnamed> {
 }
}
(*temporary) = "white"
(*temporary) = <function> defined =[C]:-1
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index local 'config' (a nil value)"
ns = <table> {
 ColorBorder = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:5
 UpdateAuraIcons = <function> defined @Interface\AddOns\oUF_Neav\func\aura.lua:101
 UpdateAuraTimer = <function> defined @Interface\AddOns\oUF_Neav\func\aura.lua:21
 CustomDelayText = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:15
 PortraitTimerDB = <table> {
 }
 CustomTimeText = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:11
 utf8sub = <function> defined @Interface\AddOns\oUF_Neav\func\func.lua:163
 PostUpdateIcon = <function> defined @Interface\AddOns\oUF_Neav\func\aura.lua:47
 GetPowerText = <function> defined @Interface\AddOns\oUF_Neav\func\func.lua:119
 StopFlash = <function> defined @Interface\AddOns\oUF_Neav\func\flash.lua:50
 CreateCastbars = <function> defined @Interface\AddOns\oUF_Neav\castbar.lua:22
 CreateCastbarStrings = <function> defined @Interface\AddOns\oUF_Neav\func\castbar.lua:19
 FormatTime = <function> defined @Interface\AddOns\oUF_Neav\func\func.lua:50
 IsFlashing = <function> defined @Interface\AddOns\oUF_Neav\func\flash.lua:40
 StartFlash = <function> defined @Interface\AddOns\oUF_Neav\func\flash.lua:56
 cUnit = <function> defined @Interface\AddOns\oUF_Neav\func\func.lua:36
 MultiCheck = <function> defined @Interface\AddOns\oUF_Neav\func\func.lua:153
 Config = <table> {
 }
 GetHealthText = <function> defined @Interface\AddOns\oUF_Neav\func\func.lua:93
}

when i have Sha of Fear targeted and she(he) is casting something..

last boss in terrace... will check rest of the bosses... but it happened every time in this scenario...

Sha of Fear as a target... boss casts some thing (prolly breath of fear - dunno)... error pops

Taint from oUF_Neav prevents right-click dismiss of pets.

Note: Not actually sure the taint originates from oUF_Neav since I can't enable the taintlog (yet) because of the crash issue.

Note2: Not even sure this was an issue. Haven't been able to re-produce, and was running without showing Lua errors at the time :/

Minimap LF{D,R}/PvP queue icon on Minimap

In MoP, MiniMapLFGFrame and MiniMapBattlefieldFrame got merged into QueueStatusMinimapButton. Need to add a new texture and/or text to object, as displaying "L" only isn't accurate anymore.

Change Wild Mushroom timers for Druids

I have another question in regard to the unitframes aswell, I play a warrior and druid. and both of them now have abilities of which shows a small circle icons underneath the "Player frame"

for druid, it's to keep track of "shrooms" you will see a circle and a timer under that circle indicating that you have a mushroom down, and if you have 3 mushrooms, you will see 3 circles under YOUR frame. it's with the default WoW and also another unitframe addons, but with NeaV I see that most of my circle is gone, and only a little timer at end of the player frame, which indicate to me that the author don't play druid and he didn't adjust the positioning of the wild mushrooms, if at all possible you take a look at that frame?

Taint in nMainbar

An action was blocked in combat because of taint from nMainbar - updateFunc()
Interface\FrameXML\AnimationSystem.lua:61 SetUpAnimation()
Interface\FrameXML\MainMenuBar.lua:282

An action was blocked in combat because of taint from nMainbar - updateFunc()
Interface\FrameXML\AnimationSystem.lua:61 SetUpAnimation()
Interface\FrameXML\PlayerFrame.lua:271 PlayerFrame_AnimateOut()
Interface\FrameXML\PlayerFrame.lua:224 OnEvent()
Interface\FrameXML\UnitFrame.lua:416

An action was blocked in combat because of taint from nMainbar - updateFunc()
Interface\FrameXML\AnimationSystem.lua:14 Animation_UpdateFrame()
Interface\FrameXML\AnimationSystem.lua:35

An action was blocked in combat because of taint from nMainbar - updateFunc()
Interface\FrameXML\AnimationSystem.lua:61 SetUpAnimation()
Interface\FrameXML\MainMenuBar.lua:116 MainMenuBar_ToPlayerArt()
Interface\FrameXML\MainMenuBar.lua:63 MainMenuBar_UpdateArt()
Interface\FrameXML\MainMenuBar.lua:246

An action was blocked in combat because of taint from nMainbar - PossessButton1:Hide()
Interface\FrameXML\BonusActionBarFrame.lua:476 PossessBar_UpdateState()
Interface\FrameXML\BonusActionBarFrame.lua:448 PossessBar_Update()
Interface\FrameXML\MainMenuBar.lua:127 MainMenuBar_ToPlayerArt()
Interface\FrameXML\MainMenuBar.lua:63 MainMenuBar_UpdateArt()
Interface\FrameXML\MainMenuBar.lua:246

An action was blocked in combat because of taint from nMainbar - updateFunc()
Interface\FrameXML\AnimationSystem.lua:61 SetUpAnimation()
Interface\FrameXML\PlayerFrame.lua:281 PlayerFrame_UpdateArt()
Interface\FrameXML\PlayerFrame.lua:230 OnEvent()
Interface\FrameXML\UnitFrame.lua:416

An action was blocked in combat because of taint from nMainbar - PlayerFrame:SetAttribute()
Interface\FrameXML\UnitFrame.lua:70 UnitFrame_SetUnit()
Interface\FrameXML\PlayerFrame.lua:341 PlayerFrame_ToPlayerArt()
Interface\FrameXML\PlayerFrame.lua:285 PlayerFrame_UpdateArt()
Interface\FrameXML\PlayerFrame.lua:230 OnEvent()
Interface\FrameXML\UnitFrame.lua:416

An action was blocked in combat because of taint from nMainbar - PetFrame:Hide()
Interface\FrameXML\PetFrame.lua:64 PetFrame_Update()
Interface\FrameXML\PlayerFrame.lua:292 animPostFunc()
Interface\FrameXML\AnimationSystem.lua:22 Animation_UpdateFrame()
Interface\FrameXML\AnimationSystem.lua:35

Guild entry on clock right click menu

As you probably know, there is a new Guild Frame thingie going on. Currently it is missing from the clock menu. What I have done is:

button[8] = {}
button[8].text = 'Guild'
button[8].func = function() ToggleGuildFrame() end
UIDropDownMenu_AddButton(button[8])

In nMinimap_Clock.lua. I have placed the Guild entry at number 8.

PS: Have not researched and have no idea how to localize the entry text.

Setting custom position for the tooltip doesn't work

Reported by Maxen over at Wowinterface:

Hello, in nTooltip, I had to add this line to put the tooltip in the top left corner correctly.

hooksecurefunc('GameTooltip_SetDefaultAnchor', function(self, parent)
    if (cfg.showOnMouseover) then
        self:SetOwner(parent, 'ANCHOR_CURSOR')
    else
        self:SetOwner(parent, 'ANCHOR_NONE') -- Add this line
        self:SetPoint(unpack(cfg.position))
    end
end)

Party memeber leaving group.

When a party member leaves group I have noticed that the names just shift upwards untill you /rl then they reset to whom they really are.

Class icon for nPlates

Would be awesome if you could add class icons to nPlates with a similar style to the casting icon to the left of the name plate <3

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.