Quantcast

Update Credits to show major help on new character frame from Arstraea... "Finished" Character frame and options...test now!

Repooc [02-25-14 - 03:50]
Update Credits to show major help on new character frame from Arstraea... "Finished" Character frame and options...test now!
Filename
ElvUI_SLE/config/profile.lua
ElvUI_SLE/locales/english.lua
ElvUI_SLE/modules/characterframe/characterframe.lua
ElvUI_SLE/modules/characterframe/options.lua
diff --git a/ElvUI_SLE/config/profile.lua b/ElvUI_SLE/config/profile.lua
index 3fd5703..a42ffcd 100755
--- a/ElvUI_SLE/config/profile.lua
+++ b/ElvUI_SLE/config/profile.lua
@@ -65,28 +65,25 @@ P['sle'] = {
 		['showerrorgradient'] = true,
 		['showimage'] = true,
 		['itemlevel'] = {
-			['enable'] = true,
-			["font"] = "ElvUI Font",
-			["fontSize"] = 12,
+			["font"] = "ElvUI Pixel",
+			["fontSize"] = 10,
 			["fontOutline"] = "OUTLINE",
 		},
 		['itemdurability'] = {
-			['enable'] = true,
-			["font"] = "ElvUI Font",
-			["fontSize"] = 12,
+			["font"] = "ElvUI Pixel",
+			["fontSize"] = 10,
 			["fontOutline"] = "OUTLINE",
 		},
 		['itemenchant'] = {
-			['font'] = "ElvUI Font",
-			['fontSize'] = 12,
+			['font'] = "Arial Narrow",
+			['fontSize'] = 10,
 			['fontOutline'] = "OUTLINE",
 			['showwarning'] = true,
 			['warningSize'] = 12,
 		},
 		['itemgem'] = {
-			['enable'] = true,
 			['showwarning'] = true,
-			['gemsize'] = 12,
+			['socketSize'] = 12,
 			['warningSize'] = 12,
 		},
 	},
diff --git a/ElvUI_SLE/locales/english.lua b/ElvUI_SLE/locales/english.lua
index c3614ef..bf73153 100755
--- a/ElvUI_SLE/locales/english.lua
+++ b/ElvUI_SLE/locales/english.lua
@@ -329,6 +329,7 @@ L["Submodules and Coding:"] = true
 L["ELVUI_SLE_CODERS"] = [=[Elv
 Tukz
 Affinitii
+Arstraea
 Azilroka
 Blazeflack
 Boradan
diff --git a/ElvUI_SLE/modules/characterframe/characterframe.lua b/ElvUI_SLE/modules/characterframe/characterframe.lua
index acbd3b7..313dc36 100755
--- a/ElvUI_SLE/modules/characterframe/characterframe.lua
+++ b/ElvUI_SLE/modules/characterframe/characterframe.lua
@@ -1,5 +1,6 @@
 local E, L, V, P, G, _ = unpack(ElvUI);
 local CFO = E:NewModule('CharacterFrameOptions', 'AceEvent-3.0');
+local LSM = LibStub("LibSharedMedia-3.0")

 local f = CreateFrame('Frame', 'KnightArmory', PaperDollFrame)
 local C = SLArmoryConstants
@@ -58,7 +59,6 @@ local function CreateArmoryFrame(self)
 	--<< Background >>--
 	self.BG = self:CreateTexture(nil, 'OVERLAY')
 	self.BG:SetInside()
-	--self.BG:SetTexture('Interface\\AddOns\\ElvUI_SLE\\media\\textures\\Space.tga')

 	--<< Change Model Frame's frameLevel >>--
 	CharacterModelFrame:SetFrameLevel(self:GetFrameLevel() + 2)
@@ -116,7 +116,7 @@ local function CreateArmoryFrame(self)
 			-- Gem Socket
 			for i = 1, MAX_NUM_SOCKETS do
 				Slot['Socket'..i] = CreateFrame('Frame', nil, Slot)
-				Slot['Socket'..i]:Size(E.db.sle.characterframeoptions.itemgem.gemsize)
+				Slot['Socket'..i]:Size(E.db.sle.characterframeoptions.itemgem.socketSize)
 				Slot['Socket'..i]:SetBackdrop({
 					bgFile = E.media.blankTex,
 					edgeFile = E.media.blankTex,
@@ -196,6 +196,9 @@ function CFO:ResizeErrorIcon()
 		if slotName ~= 'ShirtSlot' and slotName ~= 'TabardSlot' then
 			f[slotName].SocketWarning:Size(E.db.sle.characterframeoptions.itemgem.warningSize)
 			f[slotName].EnchantWarning:Size(E.db.sle.characterframeoptions.itemenchant.warningSize)
+			for i = 1, MAX_NUM_SOCKETS do
+				f[slotName]['Socket'..i]:Size(E.db.sle.characterframeoptions.itemgem.socketSize)
+			end
 		end
 	end
 end
@@ -230,6 +233,7 @@ function CFO:ArmoryFrame_DataSetting()
 				Slot.Durability:SetText('')
 				for i = 1, MAX_NUM_SOCKETS do
 					Slot['Socket'..i].Texture:SetTexture(nil)
+					Slot['Socket'..i].Socket.Link = nil
 					Slot['Socket'..i].GemItemID = nil
 					Slot['Socket'..i].GemType = nil
 					Slot['Socket'..i]:Hide()
@@ -303,6 +307,7 @@ function CFO:ArmoryFrame_DataSetting()
 								GemCount = GemCount + 1
 								Slot['Socket'..i].Texture:SetTexture(ItemTexture)
 								Slot['Socket'..i].GemItemID = GemID
+								Slot['Socket'..i].Socket.Link = select(2, GetItemInfo(GemID))
 							end
 						end
 					end
@@ -330,6 +335,7 @@ function CFO:ArmoryFrame_DataSetting()
 						CurrentLineText = gsub(CurrentLineText, ITEM_MOD_CRIT_RATING_SHORT, CRIT_ABBR) -- Critical is too long
 						CurrentLineText = gsub(CurrentLineText, ' + ', '+') -- Remove space

+						Slot.ItemEnchant:FontTemplate(LSM:Fetch("font", E.db.sle.characterframeoptions.itemenchant.font), E.db.sle.characterframeoptions.itemenchant.fontSize, E.db.sle.characterframeoptions.itemenchant.fontOutline)
 						Slot.ItemEnchant:SetText('|cffceff00'..CurrentLineText)

 						IsEnchanted = true
@@ -351,7 +357,7 @@ function CFO:ArmoryFrame_DataSetting()
 							ItemUpgradeID = TrueItemLevel - BasicItemLevel
 						end
 					end
-
+					Slot.ItemLevel:FontTemplate(LSM:Fetch("font", E.db.sle.characterframeoptions.itemlevel.font), E.db.sle.characterframeoptions.itemlevel.fontSize, E.db.sle.characterframeoptions.itemlevel.fontOutline)
 					Slot.ItemLevel:SetText((Slot.Direction == 'LEFT' and TrueItemLevel or '')..(ItemUpgradeID and (Slot.Direction == 'LEFT' and ' ' or '')..(C.UpgradeColor[ItemUpgradeID] or '|cffaaaaaa')..'(+'..ItemUpgradeID..')|r'..(Slot.Direction == 'RIGHT' and ' ' or '') or '')..(Slot.Direction == 'RIGHT' and TrueItemLevel or ''))
 				end

@@ -359,6 +365,7 @@ function CFO:ArmoryFrame_DataSetting()
 				CurrentDurability, MaxDurability = GetInventoryItemDurability(Slot.ID)
 				if CurrentDurability and MaxDurability then
 					r, g, b = E:ColorGradient((CurrentDurability / MaxDurability), 1, 0, 0, 1, 1, 0, 0, 1, 0)
+					Slot.Durability:FontTemplate(LSM:Fetch("font", E.db.sle.characterframeoptions.itemdurability.font), E.db.sle.characterframeoptions.itemdurability.fontSize, E.db.sle.characterframeoptions.itemdurability.fontOutline)
 					Slot.Durability:SetFormattedText("%s%.0f%%|r", E:RGBToHex(r, g, b), (CurrentDurability / MaxDurability) * 100)
 					Slot.Socket1:Point('BOTTOM'..Slot.Direction, Slot.Durability, 'BOTTOM'..(Slot.Direction == 'LEFT' and 'RIGHT' or 'LEFT'), Slot.Direction == 'LEFT' and 3 or -3, -2)
 				end
@@ -507,7 +514,6 @@ function CFO:StartArmoryFrame()

 	if CreateArmoryFrame then
 		CreateArmoryFrame(KnightArmory)
-		print("Test test");
 	end
 	CFO:ArmoryFrame_DataSetting()

diff --git a/ElvUI_SLE/modules/characterframe/options.lua b/ElvUI_SLE/modules/characterframe/options.lua
index 2c78f69..2d219c5 100755
--- a/ElvUI_SLE/modules/characterframe/options.lua
+++ b/ElvUI_SLE/modules/characterframe/options.lua
@@ -74,7 +74,7 @@ local function configTable()
 						desc = L["The font that the item level will use."],
 						values = AceGUIWidgetLSMlists.font,
 						get = function(info) return E.db.sle.characterframeoptions.itemlevel.font end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemlevel.font = value; CFO:UpdateItemLevelFont(); end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemlevel.font = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
 					fontSize = {
 						order = 2,
@@ -83,7 +83,7 @@ local function configTable()
 						type = "range",
 						min = 6, max = 22, step = 1,
 						get = function(info) return E.db.sle.characterframeoptions.itemlevel.fontSize end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemlevel.fontSize = value; CFO:UpdateItemLevelFont(); end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemlevel.fontSize = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
 					fontOutline = {
 						order = 3,
@@ -98,7 +98,7 @@ local function configTable()
 							['THICKOUTLINE'] = 'THICKOUTLINE',
 						},
 						get = function(info) return E.db.sle.characterframeoptions.itemlevel.fontOutline end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemlevel.fontOutline = value; CFO:UpdateItemLevelFont(); end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemlevel.fontOutline = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
 				},
 			},
@@ -117,7 +117,7 @@ local function configTable()
 						desc = L["The font that the item durability will use."],
 						values = AceGUIWidgetLSMlists.font,
 						get = function(info) return E.db.sle.characterframeoptions.itemdurability.font end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemdurability.font = value; CFO:UpdateItemDurabilityFont(); end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemdurability.font = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
 					fontSize = {
 						order = 2,
@@ -126,7 +126,7 @@ local function configTable()
 						type = "range",
 						min = 6, max = 22, step = 1,
 						get = function(info) return E.db.sle.characterframeoptions.itemdurability.fontSize end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemdurability.fontSize = value; CFO:UpdateItemDurabilityFont(); end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemdurability.fontSize = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
 					fontOutline = {
 						order = 3,
@@ -141,24 +141,37 @@ local function configTable()
 							['THICKOUTLINE'] = 'THICKOUTLINE',
 						},
 						get = function(info) return E.db.sle.characterframeoptions.itemdurability.fontOutline end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemdurability.fontOutline = value; CFO:UpdateItemDurabilityFont(); end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemdurability.fontOutline = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
 				},
 			},
 			itemenchant = {
 				type = "group",
 				name = L["Enchanting"],
-				--name = DURABILITY,
 				order = 88,
 				guiInline = true,
 				disabled = function() return not E.private.sle.characterframeoptions.enable end,
 				args = {
-					fontGroup = {
+					showwarning = {
+						order = 1,
+						type = "toggle",
+						name = L["Show Warning"],
+						get = function(info) return E.db.sle.characterframeoptions.itemenchant.showwarning end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemenchant.showwarning = value; CFO:ArmoryFrame_DataSetting(); end,
+					},
+					warningsize = {
 						order = 2,
+						name = L["Warning Size"],
+						desc = L["Set the icon size that the warning notification will use."],
+						type = "range",
+						min = 8, max = 18, step = 1,
+						get = function(info) return E.db.sle.characterframeoptions.itemenchant.warningSize end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemenchant.warningSize = value; CFO:ResizeErrorIcon(); end,
+					},
+					fontGroup = {
+						order = 3,
 						type = 'group',
 						guiInline = true,
-						disabled = true,
-						--disabled = function() return not E.db.sle.characterframeoptions.itemenchant.enable end,
 						name = L['Font'],
 						args = {
 							font = {
@@ -168,7 +181,7 @@ local function configTable()
 								desc = L["The font that the enchant notification will use."],
 								values = AceGUIWidgetLSMlists.font,
 								get = function(info) return E.db.sle.characterframeoptions.itemenchant.font end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.font = value; CFO:UpdateItemEnchantFont(); end,
+								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.font = value; CFO:ArmoryFrame_DataSetting(); end,
 							},
 							fontSize = {
 								order = 2,
@@ -177,7 +190,7 @@ local function configTable()
 								type = "range",
 								min = 6, max = 22, step = 1,
 								get = function(info) return E.db.sle.characterframeoptions.itemenchant.fontSize end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.fontSize = value; CFO:UpdateItemEnchantFont(); end,
+								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.fontSize = value; CFO:ArmoryFrame_DataSetting(); end,
 							},
 							fontOutline = {
 								order = 3,
@@ -192,32 +205,7 @@ local function configTable()
 									['THICKOUTLINE'] = 'THICKOUTLINE',
 								},
 								get = function(info) return E.db.sle.characterframeoptions.itemenchant.fontOutline end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.fontOutline = value; CFO:UpdateItemEnchantFont(); end,
-							},
-						},
-					},
-					warningGroup = {
-						order = 3,
-						type = 'group',
-						guiInline = true,
-						--disabled = function () return not E.db.sle.characterframeoptions.itemenchant.enable end,
-						name = L['Enchant Warning'],
-						args = {
-							showwarning = {
-								order = 1,
-								type = "toggle",
-								name = L["Show Enchant Warning"],
-								get = function(info) return E.db.sle.characterframeoptions.itemenchant.showwarning end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.showwarning = value; CFO:ArmoryFrame_DataSetting(); end,
-							},
-							warningsize = {
-								order = 2,
-								name = L["Warning Size"],
-								desc = L["Set the icon size that the warning notification will use."],
-								type = "range",
-								min = 8, max = 18, step = 1,
-								get = function(info) return E.db.sle.characterframeoptions.itemenchant.warningSize end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.warningSize = value; CFO:ResizeErrorIcon(); end,
+								set = function(info, value) E.db.sle.characterframeoptions.itemenchant.fontOutline = value; CFO:ArmoryFrame_DataSetting(); end,
 							},
 						},
 					},
@@ -230,38 +218,30 @@ local function configTable()
 				guiInline = true,
 				disabled = function() return not E.private.sle.characterframeoptions.enable end,
 				args = {
-					enable = {
+					showwarning = {
 						order = 1,
 						type = "toggle",
-						name = L["Enable"],
-						--desc = L["Show/Hide Item Durability"],
-						get = function(info) return E.db.sle.characterframeoptions.itemgem.enable end,
-						set = function(info, value) E.db.sle.characterframeoptions.itemgem.enable = value; --[[CFO:ToggleCFO()]] end,
+						name = L["Show Warning"],
+						get = function(info) return E.db.sle.characterframeoptions.itemgem.showwarning end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemgem.showwarning = value; CFO:ArmoryFrame_DataSetting(); end,
 					},
-					warningGroup = {
+					warningsize = {
 						order = 2,
-						type = 'group',
-						guiInline = true,
-						disabled = function () return not E.db.sle.characterframeoptions.itemgem.enable end,
-						name = L['Socket Warning'],
-						args = {
-							showwarning = {
-								order = 1,
-								type = "toggle",
-								name = L["Show Gem Warning"],
-								get = function(info) return E.db.sle.characterframeoptions.itemgem.showwarning end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemgem.showwarning = value; CFO:ArmoryFrame_DataSetting(); end,
-							},
-							warningsize = {
-								order = 2,
-								name = L["Warning Size"],
-								desc = L["Set the icon size that the warning notification will use."],
-								type = "range",
-								min = 8, max = 18, step = 1,
-								get = function(info) return E.db.sle.characterframeoptions.itemgem.warningSize end,
-								set = function(info, value) E.db.sle.characterframeoptions.itemgem.warningSize = value; CFO:ResizeErrorIcon(); end,
-							},
-						},
+						name = L["Warning Size"],
+						desc = L["Set the icon size that the warning notification will use."],
+						type = "range",
+						min = 8, max = 18, step = 1,
+						get = function(info) return E.db.sle.characterframeoptions.itemgem.warningSize end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemgem.warningSize = value; CFO:ResizeErrorIcon(); end,
+					},
+					socketsize = {
+						order = 3,
+						name = L["Socket Size"],
+						desc = L["Set the icon size that the warning notification will use."],
+						type = "range",
+						min = 10, max = 18, step = 1,
+						get = function(info) return E.db.sle.characterframeoptions.itemgem.socketSize end,
+						set = function(info, value) E.db.sle.characterframeoptions.itemgem.socketSize = value; CFO:ResizeErrorIcon(); end,
 					},
 				},
 			},