Download
(64Kb)
Download
Updated: 07-31-18 11:24 AM
Pictures
File Info
Compatibility:
Battle for Azeroth (8.0.1)
Updated:07-31-18 11:24 AM
Created:08-10-13 04:39 AM
Downloads:16,041
Favorites:62
MD5:

!SyLevel  Popular! (More than 5000 hits)

Version: 3.0.2-Alpha
by: suicidalkatt [More]

!SyLevel

Is a lightweight addon which displays item level text on your item slots. It offers support for addon authors wanting to include functionality in their addons.

AddOns currently using this framework:
Features:
  • Customizable display locations (listed below)
  • Customizable filter to limit display on item levels below a level you set.
  • Chose from one of four possible coloring options.
  • Embedded LibItemUpgradeInfo-1.0 to ensure accurate item levels are displayed.
  • Expandable to your addon (aimed at addon authors if you are one).

Display Locations:
  • Bags
  • Bank Window
  • Character
  • Character Equipment Flyout
  • Guild Bank Window
  • Inspect Window
  • Loot Window
  • Mail Window
  • Merchant Window
  • Profession Window
  • Trade Window
  • Void Storage Window

This is an initial version so please feel free to leave any feedback in the comments and I'll be sure to respond!

A special thanks to haste for allowing me to use the framework of his addon oGlow

v3.0.2-Alpha
  • Addressed issue with tradeskill pipe not passing "self" on update.

v3.0.1-Alpha
  • Forgot updates with Tradeskill pipe.

v3.0.0-Alpha
  • TOC Bump
  • LibItemUpgradeInfo-1.0 library updated.

v2.001
  • Typo fix.

v2.0
  • Updated the internal ace libraries
  • Changed some values to be more reasonable item level ranges.
  • Added a new "Class Coloring" option.

v1.9
  • Lib updated.

v1.8
  • Added 2 new coloring functions to the color function list. Items less than 450 item level will be colored grey and any items above will gradient from green to red or visa versa.

v1.7
  • Fixed issue with all pipes being automatically re-enabled on login. This will all be changed on a rewrite of this addon.

v1.6
  • Made adjustments to function calls for void storage as well as hooked a function to update on tab change.

v1.5
  • Updated ToC to 6.0.2
  • Updated included LibItemUpgradeInfo library.
  • Updated included LibSharedMedia library.

v1.4
  • Updated ToC to 5.4
  • Updated included LibItemUpgradeInfo library.

v1.1
  • Removed alphabetizing function for options tables. Caused issues with returning name values for pipes.
Optional Files (3)
File Name
Version
Size
Author
Date
Type
v1.1
3kB
10-27-14 08:26 PM
Addon
v1.3
3kB
08-19-13 03:16 AM
Addon
v1.2
2kB
08-19-13 12:45 AM
Addon


Post A Reply Comment Options
Unread 11-04-22, 05:17 AM  
darklimpan
Premium Member
Premium Member

Forum posts: 1
File comments: 12
Uploads: 0
Hello Suicidal_Katt!

Pre-patch 10.0 has caused !SyLevel to stop working. Below are the lua errors I'm getting.

I get the first error on login, and I think the other two when I go into the settings menu.


Code:
BugGrabberDB = {
	["lastSanitation"] = 3,
	["session"] = 3,
	["errors"] = {
		{
			["message"] = "Interface/AddOns/SyLevel/pipes/bags.lua:37: hooksecurefunc(): ContainerFrame_Update is not a function",
			["time"] = "2022/11/03 12:14:32",
			["locals"] = "",
			["stack"] = "[string \"=[C]\"]: in function `hooksecurefunc'\n[string \"@Interface/AddOns/SyLevel/pipes/bags.lua\"]:37: in function `enable'\n[string \"@Interface/AddOns/SyLevel/pipe.lua\"]:53: in function `EnablePipe'\n[string \"@Interface/AddOns/SyLevel/sylevel.lua\"]:115: in function `RegisterAllPipesAndFilters'\n[string \"@Interface/AddOns/SyLevel/sylevel.lua\"]:82: in function <Interface/AddOns/SyLevel/sylevel.lua:62>\n[string \"=(tail call)\"]: ?",
			["session"] = 3,
			["counter"] = 3,
		}, -- [1]
		{
			["message"] = "Interface/AddOns/SyLevel/ui/pipes.lua:213: attempt to index local 'filterFrame' (a nil value)",
			["time"] = "2022/11/03 18:08:43",
			["stack"] = "[string \"@Interface/AddOns/SyLevel/ui/pipes.lua\"]:213: in function `OnRefresh'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:9: in function <...erface/SharedXML/Settings/Blizzard_SettingsPanel.lua:7>\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:538: in function <...erface/SharedXML/Settings/Blizzard_SettingsPanel.lua:537>\n[string \"=[C]\"]: in function `xpcall'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:501: in function <...erface/SharedXML/Settings/Blizzard_SettingsPanel.lua:498>\n[string \"=[C]\"]: in function `secureexecuterange'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:509: in function `ForEachCanvas'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:537: in function `CallRefreshOnCanvases'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:222: in function <...erface/SharedXML/Settings/Blizzard_SettingsPanel.lua:190>\n[string \"=[C]\"]: in function `Show'\n[string \"@Interface/FrameXML/UIParent.lua\"]:2844: in function `SetUIPanel'\n[string \"@Interface/FrameXML/UIParent.lua\"]:2648: in function `ShowUIPanel'\n[string \"@Interface/FrameXML/UIParent.lua\"]:2552: in function <Interface/FrameXML/UIParent.lua:2548>\n[string \"=[C]\"]: in function `SetAttribute'\n[string \"@Interface/FrameXML/UIParent.lua\"]:3150: in function `ShowUIPanel'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:299: in function `Open'\n[string \"*GameMenuFrame.xml:80_OnClick\"]:2: in function <[string \"*GameMenuFrame.xml:80_OnClick\"]:1>",
			["session"] = 3,
			["counter"] = 2,
		}, -- [2]
		{
			["message"] = "Interface/AddOns/SyLevel/ui/pipes.lua:150: attempt to call method 'SetBackdrop' (a nil value)",
			["time"] = "2022/11/03 18:08:45",
			["locals"] = "parent = Frame {\n 0 = <userdata>\n rows = <table> {\n }\n}\ni = 1\nrow = Button {\n 0 = <userdata>\n}\n(*temporary) = nil\n(*temporary) = Button {\n 0 = <userdata>\n}\n(*temporary) = <table> {\n bgFile = \"Interface\\Tooltips\\UI-Tooltip-Background\"\n tileSize = 8\n edgeFile = \"Interface\\Tooltips\\UI-Tooltip-Border\"\n tile = true\n edgeSize = 16\n insets = <table> {\n }\n}\n(*temporary) = \"attempt to call method 'SetBackdrop' (a nil value)\"\n_BACKDROP = <table> {\n bgFile = \"Interface\\Tooltips\\UI-Tooltip-Background\"\n tileSize = 8\n edgeFile = \"Interface\\Tooltips\\UI-Tooltip-Border\"\n tile = true\n edgeSize = 16\n insets = <table> {\n }\n}\nRow_OnEnter = <function> defined @Interface/AddOns/SyLevel/ui/pipes.lua:132\nRow_OnLeave = <function> defined @Interface/AddOns/SyLevel/ui/pipes.lua:139\nRow_OnClick = <function> defined @Interface/AddOns/SyLevel/ui/pipes.lua:92\ncreateCheckBox = <function> defined @Interface/AddOns/SyLevel/ui/pipes.lua:20\nCheckBox_OnClick = <function> defined @Interface/AddOns/SyLevel/ui/pipes.lua:70\nns = <table> {\n Hex = <function> defined @Interface/AddOns/SyLevel/ui/helpers.lua:24\n activeFilters = <table> {\n }\n displaysTable = <table> {\n }\n SyLevel = <table> {\n }\n FontStyle = <table> {\n }\n createFontString = <function> defined @Interface/AddOns/SyLevel/ui/helpers.lua:4\n createSlider = <function> defined @Interface/AddOns/SyLevel/ui/helpers.lua:115\n createColorSwatch = <function> defined @Interface/AddOns/SyLevel/ui/helpers.lua:133\n createEditBox = <function> defined @Interface/AddOns/SyLevel/ui/helpers.lua:85\n pipesTable = <table> {\n }\n FullAlign = <table> {\n }\n filtersTable = <table> {\n }\n}\n",
			["stack"] = "[string \"@Interface/AddOns/SyLevel/ui/pipes.lua\"]:150: in function <Interface/AddOns/SyLevel/ui/pipes.lua:147>\n[string \"@Interface/AddOns/SyLevel/ui/pipes.lua\"]:288: in function `refresh'\n[string \"@Interface/AddOns/SyLevel/ui/pipes.lua\"]:66: in function `CreateOptions'\n[string \"@Interface/AddOns/SyLevel/ui/pipes.lua\"]:9: in function <Interface/AddOns/SyLevel/ui/pipes.lua:8>\n[string \"=[C]\"]: in function `Show'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:803: in function `DisplayLayout'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:758: in function `DisplayCategory'\n[string \"@Interface/SharedXML/Settings/Blizzard_SettingsPanel.lua\"]:725: in function <...erface/SharedXML/Settings/Blizzard_SettingsPanel.lua:721>\n[string \"=[C]\"]: ?\n[string \"@Interface/SharedXML/CallbackRegistry.lua\"]:143: in function <Interface/SharedXML/CallbackRegistry.lua:142>\n[string \"=[C]\"]: ?\n[string \"@Interface/SharedXML/CallbackRegistry.lua\"]:146: in function `TriggerEvent'\n[string \"@Interface/SharedXML/Settings/Blizzard_CategoryList.lua\"]:136: in function <...terface/SharedXML/Settings/Blizzard_CategoryList.lua:134>",
			["session"] = 3,
			["counter"] = 1,
		}, -- [3]
	},
}

Also, I wanted to ask whether it is possible to have !SyLevel display the current item level of heirlooms on low level characters? Before the pre-patch, it was only showing the max-level item level on any character that wasn't level 60.

//DarkLimpan
Report comment to moderator  
Reply With Quote
Unread 07-23-18, 11:25 AM  
suicidalkatt
A Rage Talon Dragon Guard
 
suicidalkatt's Avatar
AddOn Author - Click to view AddOns

Forum posts: 331
File comments: 1467
Uploads: 50
Originally Posted by Trommy
Originally Posted by Cherry17
Is there any possibility we could get text colours based on item quality, and filters for restricting item level display to armour/weapons/jewlery/trinkets of uncommon quality and above added? Sorta like this: https://i.imgur.com/s4HpCE3.png
The same ask.
It is a possibility.

I'm looking for a better overall implementation of the addon.

As it stands now, easy modifications take a lot more time than I'd like to with this engine design.
Report comment to moderator  
Reply With Quote
Unread 07-02-18, 10:40 AM  
Trommy
A Fallenroot Satyr
 
Trommy's Avatar

Forum posts: 23
File comments: 106
Uploads: 0
Originally Posted by Cherry17
Is there any possibility we could get text colours based on item quality, and filters for restricting item level display to armour/weapons/jewlery/trinkets of uncommon quality and above added? Sorta like this: https://i.imgur.com/s4HpCE3.png
The same ask.
Report comment to moderator  
Reply With Quote
Unread 06-01-18, 08:48 PM  
Cherry17
A Kobold Labourer

Forum posts: 0
File comments: 1
Uploads: 0
Is there any possibility we could get text colours based on item quality, and filters for restricting item level display to armour/weapons/jewlery/trinkets of uncommon quality and above added? Sorta like this: https://i.imgur.com/s4HpCE3.png
Last edited by Cherry17 : 06-01-18 at 08:51 PM.
Report comment to moderator  
Reply With Quote
Unread 10-03-16, 08:08 PM  
laukond
A Black Drake

Forum posts: 87
File comments: 77
Uploads: 0
Could you possibly make the AddOn work on boss loot drop? The one that pops up after each boss kill.
Report comment to moderator  
Reply With Quote
Unread 09-01-16, 08:39 PM  
griddark
A Defias Bandit
 
griddark's Avatar
AddOn Author - Click to view AddOns

Forum posts: 2
File comments: 119
Uploads: 7
Re: SyLevel\pipes\tradeskill.lua

Originally Posted by binul
I temporarily fixed the errors related to tradeskill (exactly, occurs in file SyLevel\pipes\tradeskill.lua)
I'm a noob on wow api so I'm not sure whether it's a proper way or not.
but... it's working anyway.
[/code]
Your code worked no more errors from sylevel. Thankyou.
Report comment to moderator  
Reply With Quote
Unread 08-23-16, 01:36 PM  
adawong
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 4
File comments: 73
Uploads: 1
any chance i can make this work with combuctor?
Report comment to moderator  
Reply With Quote
Unread 07-25-16, 03:30 PM  
binul
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
SyLevel\pipes\tradeskill.lua

I temporarily fixed the errors related to tradeskill (exactly, occurs in file SyLevel\pipes\tradeskill.lua)
I'm a noob on wow api so I'm not sure whether it's a proper way or not.
but... it's working anyway.

SyLevel\pipes\tradeskill.lua
Code:
local _E
local hook
local selectedRecipeID

local pipe = function(self, ...)
	local recipeID = self.RecipeList:GetSelectedRecipeID()
	selectedRecipeID = recipeID and recipeID or nil
	if not selectedRecipeID then return end

	local itemLink = C_TradeSkillUI.GetRecipeItemLink(selectedRecipeID)
	if(itemLink) then
		SyLevel:CallFilters('tradeskill', TradeSkillFrame.DetailsFrame.Contents.ResultIcon, _E and itemLink)
	end

	local numReagents = C_TradeSkillUI.GetRecipeNumReagents(selectedRecipeID)
	for reagentIndex = 1, numReagents do
		local reagentFrame = TradeSkillFrame.DetailsFrame.Contents.Reagents[reagentIndex]
		local reagentLink = C_TradeSkillUI.GetRecipeReagentItemLink(selectedRecipeID, reagentIndex)

		SyLevel:CallFilters('tradeskill', reagentFrame, _E and reagentLink)
	end
end

local doHook = function()
	if(not hook) then
		hook = function(...)
			if(_E) then return pipe(...) end
		end

		hooksecurefunc(TradeSkillFrame, 'OnRecipeChanged', hook)
	end
end

local function ADDON_LOADED(self, event, addon)
	if(addon == 'Blizzard_TradeSkillUI') then
		doHook()
		self:UnregisterEvent(event, ADDON_LOADED)
	end
end

local update = function(self)
	if(selectedRecipeID and IsAddOnLoaded('Blizzard_TradeSkillUI')) then
		return pipe(selectedRecipeID)
	end
end

local enable = function(self)
	_E = true

	if(IsAddOnLoaded("Blizzard_TradeSkillUI")) then
		doHook()
	else
		self:RegisterEvent("ADDON_LOADED", ADDON_LOADED)
	end
end

local disable = function(self)
	_E = nil

	self:UnregisterEvent('ADDON_LOADED', ADDON_LOADED)
end

SyLevel:RegisterPipe('tradeskill', enable, disable, update, 'Profession Window', nil)
Report comment to moderator  
Reply With Quote
Unread 07-25-16, 12:04 PM  
samvx
A Defias Bandit
 
samvx's Avatar
AddOn Author - Click to view AddOns

Forum posts: 3
File comments: 118
Uploads: 3
Re: Legion quick fix!

Originally Posted by bazelle
Do like ceylina said...

Edit line 40 in SyLevel\pipes\tradeskill.lua to...

local id = C_TradeSkillUI.GetTradeSkillLine()

...then delete old libaray... SyLevel\libs\LibItemUpgradeInfo-1.0

Install update version found here. http://www.wowace.com/addons/libitemupgradeinfo-1-0/

good to go!
works like a charm...I hope author update it ! ty again. BTW !SyLevel Bagnon no working, any temp fix?
Last edited by samvx : 07-25-16 at 12:06 PM.
Report comment to moderator  
Reply With Quote
Unread 07-24-16, 07:38 AM  
bazelle
A Kobold Labourer
 
bazelle's Avatar
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 25
Uploads: 3
Legion quick fix!

Do like ceylina said...

Edit line 40 in SyLevel\pipes\tradeskill.lua to...

local id = C_TradeSkillUI.GetTradeSkillLine()

...then delete old libaray... SyLevel\libs\LibItemUpgradeInfo-1.0

Install update version found here. http://www.wowace.com/addons/libitemupgradeinfo-1-0/

good to go!
Last edited by bazelle : 07-24-16 at 07:40 AM.
Report comment to moderator  
Reply With Quote
Unread 07-21-16, 02:16 PM  
Kylaraa
A Kobold Labourer
 
Kylaraa's Avatar

Forum posts: 0
File comments: 8
Uploads: 0
Would love an update to this one! Thanks as always Sir Katt!
Report comment to moderator  
Reply With Quote
Unread 07-21-16, 01:26 PM  
samvx
A Defias Bandit
 
samvx's Avatar
AddOn Author - Click to view AddOns

Forum posts: 3
File comments: 118
Uploads: 3
Originally Posted by lina22
Any change to get an update for legion? :P
I really hope so ...

A suggestion ... look this improve
BoE or BoP text
Last edited by samvx : 07-23-16 at 11:19 PM.
Report comment to moderator  
Reply With Quote
Unread 07-20-16, 02:04 PM  
lina22
A Kobold Labourer

Forum posts: 0
File comments: 19
Uploads: 0
Any change to get an update for legion? :P
Report comment to moderator  
Reply With Quote
Unread 05-16-16, 11:35 AM  
ceylina
A Wyrmkin Dreamwalker

Forum posts: 50
File comments: 93
Uploads: 0
Looks like GetTradeSkillSelectionIndex has changed in legion to C_TradeSkillUI.GetTradeSkillLine

Full arguments are

local tradeSkillID, skillLineName, skillLineRank, skillLineMaxRank, skillLineModifier = C_TradeSkillUI.GetTradeSkillLine();

so in pipes\tradeskill.lua changing line 40 got sylevel working.
Last edited by ceylina : 05-16-16 at 11:36 AM.
Report comment to moderator  
Reply With Quote
Unread 01-25-16, 10:50 AM  
suicidalkatt
A Rage Talon Dragon Guard
 
suicidalkatt's Avatar
AddOn Author - Click to view AddOns

Forum posts: 331
File comments: 1467
Uploads: 50
Re: Inventorian Support

Originally Posted by Ginji
Hello, is there any way to add support for Inventorian?
Please have the author of inventorian provide support.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.